From d106cc2b11c1ebd94ea41b7a4e0adccdfdcfa4db Mon Sep 17 00:00:00 2001 From: Stephan Lo Date: Fri, 19 Dec 2025 13:16:01 +0100 Subject: [PATCH] docs(documentation): finished documentation entry point 'Edge Connect Cloud' --- content/en/docs/edgeconnect/_index.md | 22 +++-- .../models/containers/edgeconnect.c4 | 40 +++++++- resources/edp-likec4/models/context/actors.c4 | 4 + resources/edp-likec4/models/context/edp.c4 | 1 + .../high-level-concept/edgeconnect-context.c4 | 30 ++++++ static/js/likec4-webcomponent.js | 98 +++++++++---------- 6 files changed, 138 insertions(+), 57 deletions(-) create mode 100644 resources/edp-likec4/views/high-level-concept/edgeconnect-context.c4 diff --git a/content/en/docs/edgeconnect/_index.md b/content/en/docs/edgeconnect/_index.md index 54ad6b1..97cc64c 100644 --- a/content/en/docs/edgeconnect/_index.md +++ b/content/en/docs/edgeconnect/_index.md @@ -3,25 +3,35 @@ title: EdgeConnect linkTitle: EdgeConnect Cloud weight: 20 description: > - Secure connectivity solution for edge devices and environments + Sovereign edge cloud for running applications --- ## Overview EdgeConnect is a custom cloud provided by the project as a whole. It has several goals, including retaining sovereign control over cloud compute resources, and supporting sustainability-aware infrastructure choices. -While EdgeConnect is managed outwith our Edge Developer Platform, we have produced a number of tools to facilitate its use and broaden its applicability. These are an [SDK](/docs/components/deployments/edgeconnect/edgeconnect-sdk/), command-line [client](/docs/components/deployments/edgeconnect/edgeconnect-client/), bespoke [provider](/docs/components/orchestration/infrastructure/provider/) for [Terraform](https://developer.hashicorp.com/terraform), and tailormade [Forgejo Actions](/docs/edgeconnect/edgeconnect-actions/). +While EdgeConnect is managed outwith our Edge Developer Platform, we have produced a number of tools to facilitate its use and broaden its applicability. These are an [SDK](/docs/components/deployments/edgeconnect/edgeconnect-sdk/), command-line [client](/docs/components/deployments/edgeconnect/edgeconnect-client/), bespoke [provider](/docs/components/orchestration/infrastructure/provider/) for [Terraform](https://developer.hashicorp.com/terraform), and tailor-made [Forgejo Actions](/docs/edgeconnect/edgeconnect-actions/). + +{{< likec4-view view="edgeconnect-context" project="architecture" title="EdgeConnect Context View: Users, Tooling and Control Plane" >}} + +The diagram summarizes how EdgeConnect is typically consumed and operated. Developers and automation do not interact with edge clusters directly; instead they use stable entry points (CLI, SDK, Terraform) that talk to the EdgeConnect API. + +EdgeConnect itself is shown as a single cloud boundary that contains the control plane (API + controllers) and the managed resource model (e.g., App, AppInstance). Controllers continuously reconcile the desired state expressed via the API and drive deployments into the runtime. + +EDP appears here as an external consumer: it can automate provisioning and deployment workflows (for example via Terraform) while EdgeConnect remains a separately managed cloud. This separation clarifies responsibilities: EDP orchestrates delivery processes, EdgeConnect provides the target runtime and lifecycle management. ## Key Features -* Managed by broader project, not specifically EDP +* Managed by the broader project, not specifically by EDP * Focus on sovereignty and sustainability -* Utilities such as [CLI](docs/components/deployments/edgeconnect/edgeconnect-client/) and [Terraform provider](/docs/components/orchestration/infrastructure/provider/) encourage widespread platform use +* Utilities such as [CLI](/docs/components/deployments/edgeconnect/edgeconnect-client/) and [Terraform provider](/docs/components/orchestration/infrastructure/provider/) encourage widespread platform use * [EDP](/docs/edp/) products such as [Forgejo](/docs/components/forgejo/) are hosted on [OTC](/docs/components/deployments/otc/) rather than EdgeConnect ## Purpose in EDP -Working with EdgeConnect allows us to ensure our work supports that of our colleagues, ultimately leading to a platform that is as broadly and deeply usable as possible. By working in a sovereign system we are encouraging European development, while sustainability features are offered by very few other clouds. It also gives us possibilities to work closely with other teams, ensuring both teams' work is better than would be possible otherwise. +EdgeConnect is documented here because it is a key deployment target and integration point for the broader platform. Even though EdgeConnect is operated separately from EDP (and core EDP services are hosted on OTC), EDP tooling and automation frequently needs to provision or deploy workloads into EdgeConnect in a consistent, repeatable way. + +Working with EdgeConnect also helps ensure that our developer workflows and platform components remain portable and “cloud-ready” beyond a single environment. By integrating with a sovereign system and making sustainability-aware choices visible in practice, we align platform engineering with the project’s wider goals and enable closer collaboration with the teams operating the EdgeConnect cloud. ### Access @@ -33,4 +43,4 @@ Working with EdgeConnect allows us to ensure our work supports that of our colle ### Notes -Documentation for Edge Connect is provided using other systems, including Confluence. \ No newline at end of file +Documentation for EdgeConnect is provided using other systems, including Confluence. \ No newline at end of file diff --git a/resources/edp-likec4/models/containers/edgeconnect.c4 b/resources/edp-likec4/models/containers/edgeconnect.c4 index 10c7615..5e39a06 100644 --- a/resources/edp-likec4/models/containers/edgeconnect.c4 +++ b/resources/edp-likec4/models/containers/edgeconnect.c4 @@ -1,5 +1,41 @@ model { - component edgeConnect 'Edge Connect' { - description 'Provides an API to run applications on the edge' + system edgeConnect 'EdgeConnect Cloud' { + description 'Provides an API and control plane to run applications on the edge' + + container api 'Edge Cloud API' { + description 'Single entry point for provisioning and lifecycle management' + } + + container resources 'Edge Resources' { + description 'Managed resources such as App, AppInstance, etc.' + } + + container controllers 'Controllers / Scheduler' { + description 'Reconciles desired state and drives deployments' + } + + container runtime 'Edge Clusters' { + description 'Runtime where applications actually run' + } + + api -> resources 'creates/updates' + controllers -> resources 'reconciles' + controllers -> runtime 'deploys' } + + component edgeCli 'EdgeConnect CLI' { + description 'Command-line client for interactive usage' + } + + component edgeSdk 'EdgeConnect SDK' { + description 'SDK for programmatic integration' + } + + component edgeTerraformProvider 'Terraform Edge provider' { + description 'Terraform provider enabling declarative provisioning' + } + + edgeCli -> edgeConnect.api 'calls' + edgeSdk -> edgeConnect.api 'calls' + edgeTerraformProvider -> edgeConnect.api 'provisions via' } diff --git a/resources/edp-likec4/models/context/actors.c4 b/resources/edp-likec4/models/context/actors.c4 index 46e2ff4..cb8071d 100644 --- a/resources/edp-likec4/models/context/actors.c4 +++ b/resources/edp-likec4/models/context/actors.c4 @@ -3,6 +3,9 @@ model { description 'The regular user of the platform' -> localbox 'inner loop' -> edp 'outer loop' + -> edgeCli 'uses' + -> edgeSdk 'uses' + -> edgeTerraformProvider 'uses' -> edp.ui 'manages project' -> edp.forgejo 'manages code' -> edp.keycloak 'authenticates' @@ -19,6 +22,7 @@ model { color gray shape person } + -> edgeConnect 'operates' } otherProductLifecycleRoles = actor 'Reviewer, Tester, Auditors, Operators' { description 'Coworking roles in the outer loop' diff --git a/resources/edp-likec4/models/context/edp.c4 b/resources/edp-likec4/models/context/edp.c4 index 8c71546..5ee6d85 100644 --- a/resources/edp-likec4/models/context/edp.c4 +++ b/resources/edp-likec4/models/context/edp.c4 @@ -5,6 +5,7 @@ model { icon tech:kubernetes -> enterprise 'integrates' -> cloud 'deploy & observe' + -> edgeTerraformProvider 'automates' -> localbox // inner-outer loop synchronization application = schema 'application' { diff --git a/resources/edp-likec4/views/high-level-concept/edgeconnect-context.c4 b/resources/edp-likec4/views/high-level-concept/edgeconnect-context.c4 new file mode 100644 index 0000000..bfc44f5 --- /dev/null +++ b/resources/edp-likec4/views/high-level-concept/edgeconnect-context.c4 @@ -0,0 +1,30 @@ +views { + view edgeconnect-context { + title 'EdgeConnect Context' + autoLayout LeftRight 180 140 + + include developer + include platformdeveloper with { + title 'Platform / Cloud Operator' + } + include edp with { + title 'EDP / CI Automation' + } + + include edgeCli + include edgeSdk + include edgeTerraformProvider + + include edgeConnect + include edgeConnect.* + + style edgeConnect, edp { + color magenta + } + + style developer, platformdeveloper { + size xsmall + textSize small + } + } +} diff --git a/static/js/likec4-webcomponent.js b/static/js/likec4-webcomponent.js index 0ea0c59..5a15ffb 100644 --- a/static/js/likec4-webcomponent.js +++ b/static/js/likec4-webcomponent.js @@ -7,7 +7,7 @@ var LikeC4Views=(function(Y6){"use strict";/* prettier-ignore-start */ ******************************************************************************/ -function Lge(e,r){for(var n=0;no[a]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}function LN(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var X6={exports:{}},Xg={};var FN;function Fge(){if(FN)return Xg;FN=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function n(o,a,i){var l=null;if(i!==void 0&&(l=""+i),a.key!==void 0&&(l=""+a.key),"key"in a){i={};for(var s in a)s!=="key"&&(i[s]=a[s])}else i=a;return a=i.ref,{$$typeof:e,type:o,key:l,ref:a!==void 0?a:null,props:i}}return Xg.Fragment=r,Xg.jsx=n,Xg.jsxs=n,Xg}var VN;function Vge(){return VN||(VN=1,X6.exports=Fge()),X6.exports}var y=Vge(),Z6={exports:{}},$t={};var qN;function qge(){if(qN)return $t;qN=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),i=Symbol.for("react.consumer"),l=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),u=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),f=Symbol.iterator;function g(Y){return Y===null||typeof Y!="object"?null:(Y=f&&Y[f]||Y["@@iterator"],typeof Y=="function"?Y:null)}var v={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},w=Object.assign,x={};function k(Y,Z,O){this.props=Y,this.context=Z,this.refs=x,this.updater=O||v}k.prototype.isReactComponent={},k.prototype.setState=function(Y,Z){if(typeof Y!="object"&&typeof Y!="function"&&Y!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,Y,Z,"setState")},k.prototype.forceUpdate=function(Y){this.updater.enqueueForceUpdate(this,Y,"forceUpdate")};function C(){}C.prototype=k.prototype;function _(Y,Z,O){this.props=Y,this.context=Z,this.refs=x,this.updater=O||v}var $=_.prototype=new C;$.constructor=_,w($,k.prototype),$.isPureReactComponent=!0;var z=Array.isArray;function T(){}var A={H:null,A:null,T:null,S:null},R=Object.prototype.hasOwnProperty;function j(Y,Z,O){var W=O.ref;return{$$typeof:e,type:Y,key:Z,ref:W!==void 0?W:null,props:O}}function I(Y,Z){return j(Y.type,Z,Y.props)}function P(Y){return typeof Y=="object"&&Y!==null&&Y.$$typeof===e}function L(Y){var Z={"=":"=0",":":"=2"};return"$"+Y.replace(/[=:]/g,function(O){return Z[O]})}var H=/\/+/g;function M(Y,Z){return typeof Y=="object"&&Y!==null&&Y.key!=null?L(""+Y.key):Z.toString(36)}function V(Y){switch(Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason;default:switch(typeof Y.status=="string"?Y.then(T,T):(Y.status="pending",Y.then(function(Z){Y.status==="pending"&&(Y.status="fulfilled",Y.value=Z)},function(Z){Y.status==="pending"&&(Y.status="rejected",Y.reason=Z)})),Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason}}throw Y}function B(Y,Z,O,W,K){var Q=typeof Y;(Q==="undefined"||Q==="boolean")&&(Y=null);var ae=!1;if(Y===null)ae=!0;else switch(Q){case"bigint":case"string":case"number":ae=!0;break;case"object":switch(Y.$$typeof){case e:case r:ae=!0;break;case u:return ae=Y._init,B(ae(Y._payload),Z,O,W,K)}}if(ae)return K=K(Y),ae=W===""?"."+M(Y,0):W,z(K)?(O="",ae!=null&&(O=ae.replace(H,"$&/")+"/"),B(K,Z,O,"",function(ue){return ue})):K!=null&&(P(K)&&(K=I(K,O+(K.key==null||Y&&Y.key===K.key?"":(""+K.key).replace(H,"$&/")+"/")+ae)),Z.push(K)),1;ae=0;var te=W===""?".":W+":";if(z(Y))for(var re=0;re"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(r){console.error(r)}}return e(),Q6.exports=Hge(),Q6.exports}var Vi=GN();const YN=LN(Vi);function ir(e,r,n){const o=typeof r=="symbol"?r:Symbol.for(r);return e.hasOwnProperty(o)||Object.defineProperty(e,o,{enumerable:!1,writable:!1,value:n()}),e[o]}function J6(e){if(e===null||typeof e!="object")return!1;const r=Object.getPrototypeOf(e);return r!==null&&r!==Object.prototype&&Object.getPrototypeOf(r)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function e_(e,r,n=".",o){if(!J6(r))return e_(e,{},n);const a=Object.assign({},r);for(const i in e){if(i==="__proto__"||i==="constructor")continue;const l=e[i];l!=null&&(Array.isArray(l)&&Array.isArray(a[i])?a[i]=[...l,...a[i]]:J6(l)&&J6(a[i])?a[i]=e_(l,a[i],(n?`${n}.`:"")+i.toString()):a[i]=l)}return a}function Uge(e){return(...r)=>r.reduce((n,o)=>e_(n,o,""),{})}const XN=Uge();function Wge(e,r,n){let o=a=>e(a,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function io(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return Wge(e,r,n);throw Error("Wrong number of arguments")}function Ll(...e){return io(Gge,e)}const Gge=(e,r)=>e.length>=r;function mt(e,r){if(typeof e>"u"||e==null){const n=typeof r=="function"?r():r;throw new Error(n??`Expected defined value, but received ${e}`)}return e}function He(e,r){if(!e)throw new Error(r??"Invariant failed")}function Qo(e){throw new Error(`NonExhaustive value: ${e}`)}function Yge(...e){return io(Xge,e)}function Xge(e,r){let n={};for(let[o,a]of e.entries())n[a]=r(a,o,e);return n}function yb(...e){return io(Zg,e)}function Zg(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(r))return!1;if(Array.isArray(e))return Zge(e,r);if(e instanceof Map)return Kge(e,r);if(e instanceof Set)return Qge(e,r);if(e instanceof Date)return e.getTime()===r.getTime();if(e instanceof RegExp)return e.toString()===r.toString();if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let[n,o]of Object.entries(e))if(!(n in r)||!Zg(o,r[n]))return!1;return!0}function Zge(e,r){if(e.length!==r.length)return!1;for(let[n,o]of e.entries())if(!Zg(o,r[n]))return!1;return!0}function Kge(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e.entries())if(!r.has(n)||!Zg(o,r.get(n)))return!1;return!0}function Qge(e,r){if(e.size!==r.size)return!1;let n=[...r];for(let o of e){let a=!1;for(let[i,l]of n.entries())if(Zg(o,l)){a=!0,n.splice(i,1);break}if(!a)return!1}return!0}const{min:Jge,max:e1e}=Math,Au=(e,r=0,n=1)=>Jge(e1e(r,e),n),t_=e=>{e._clipped=!1,e._unclipped=e.slice(0);for(let r=0;r<=3;r++)r<3?((e[r]<0||e[r]>255)&&(e._clipped=!0),e[r]=Au(e[r],0,255)):r===3&&(e[r]=Au(e[r],0,1));return e},ZN={};for(let e of["Boolean","Number","String","Function","Array","Date","RegExp","Undefined","Null"])ZN[`[object ${e}]`]=e.toLowerCase();function Ft(e){return ZN[Object.prototype.toString.call(e)]||"object"}const jt=(e,r=null)=>e.length>=3?Array.prototype.slice.call(e):Ft(e[0])=="object"&&r?r.split("").filter(n=>e[0][n]!==void 0).map(n=>e[0][n]):e[0].slice(0),zh=e=>{if(e.length<2)return null;const r=e.length-1;return Ft(e[r])=="string"?e[r].toLowerCase():null},{PI:vb,min:KN,max:QN}=Math,Za=e=>Math.round(e*100)/100,r_=e=>Math.round(e*100)/100,As=vb*2,n_=vb/3,t1e=vb/180,r1e=180/vb;function JN(e){return[...e.slice(0,3).reverse(),...e.slice(3)]}const zt={format:{},autodetect:[]};let Ne=class{constructor(...r){const n=this;if(Ft(r[0])==="object"&&r[0].constructor&&r[0].constructor===this.constructor)return r[0];let o=zh(r),a=!1;if(!o){a=!0,zt.sorted||(zt.autodetect=zt.autodetect.sort((i,l)=>l.p-i.p),zt.sorted=!0);for(let i of zt.autodetect)if(o=i.test(...r),o)break}if(zt.format[o]){const i=zt.format[o].apply(null,a?r:r.slice(0,-1));n._rgb=t_(i)}else throw new Error("unknown format: "+r);n._rgb.length===3&&n._rgb.push(1)}toString(){return Ft(this.hex)=="function"?this.hex():`[${this._rgb.join(",")}]`}};const n1e="3.2.0",Rt=(...e)=>new Ne(...e);Rt.version=n1e;const Rh={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",laserlemon:"#ffff54",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrod:"#fafad2",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",maroon2:"#7f0000",maroon3:"#b03060",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",purple2:"#7f007f",purple3:"#a020f0",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o1e=/^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,a1e=/^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/,eP=e=>{if(e.match(o1e)){(e.length===4||e.length===7)&&(e=e.substr(1)),e.length===3&&(e=e.split(""),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);const r=parseInt(e,16),n=r>>16,o=r>>8&255,a=r&255;return[n,o,a,1]}if(e.match(a1e)){(e.length===5||e.length===9)&&(e=e.substr(1)),e.length===4&&(e=e.split(""),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);const r=parseInt(e,16),n=r>>24&255,o=r>>16&255,a=r>>8&255,i=Math.round((r&255)/255*100)/100;return[n,o,a,i]}throw new Error(`unknown hex color: ${e}`)},{round:bb}=Math,tP=(...e)=>{let[r,n,o,a]=jt(e,"rgba"),i=zh(e)||"auto";a===void 0&&(a=1),i==="auto"&&(i=a<1?"rgba":"rgb"),r=bb(r),n=bb(n),o=bb(o);let s="000000"+(r<<16|n<<8|o).toString(16);s=s.substr(s.length-6);let c="0"+bb(a*255).toString(16);switch(c=c.substr(c.length-2),i.toLowerCase()){case"rgba":return`#${s}${c}`;case"argb":return`#${c}${s}`;default:return`#${s}`}};Ne.prototype.name=function(){const e=tP(this._rgb,"rgb");for(let r of Object.keys(Rh))if(Rh[r]===e)return r.toLowerCase();return e},zt.format.named=e=>{if(e=e.toLowerCase(),Rh[e])return eP(Rh[e]);throw new Error("unknown color name: "+e)},zt.autodetect.push({p:5,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&Rh[e.toLowerCase()])return"named"}}),Ne.prototype.alpha=function(e,r=!1){return e!==void 0&&Ft(e)==="number"?r?(this._rgb[3]=e,this):new Ne([this._rgb[0],this._rgb[1],this._rgb[2],e],"rgb"):this._rgb[3]},Ne.prototype.clipped=function(){return this._rgb._clipped||!1};const Fl={Kn:18,labWhitePoint:"d65",Xn:.95047,Yn:1,Zn:1.08883,kE:216/24389,kKE:8,kK:24389/27,RefWhiteRGB:{X:.95047,Y:1,Z:1.08883},MtxRGB2XYZ:{m00:.4124564390896922,m01:.21267285140562253,m02:.0193338955823293,m10:.357576077643909,m11:.715152155287818,m12:.11919202588130297,m20:.18043748326639894,m21:.07217499330655958,m22:.9503040785363679},MtxXYZ2RGB:{m00:3.2404541621141045,m01:-.9692660305051868,m02:.055643430959114726,m10:-1.5371385127977166,m11:1.8760108454466942,m12:-.2040259135167538,m20:-.498531409556016,m21:.041556017530349834,m22:1.0572251882231791},As:.9414285350000001,Bs:1.040417467,Cs:1.089532651,MtxAdaptMa:{m00:.8951,m01:-.7502,m02:.0389,m10:.2664,m11:1.7135,m12:-.0685,m20:-.1614,m21:.0367,m22:1.0296},MtxAdaptMaI:{m00:.9869929054667123,m01:.43230526972339456,m02:-.008528664575177328,m10:-.14705425642099013,m11:.5183602715367776,m12:.04004282165408487,m20:.15996265166373125,m21:.0492912282128556,m22:.9684866957875502}},i1e=new Map([["a",[1.0985,.35585]],["b",[1.0985,.35585]],["c",[.98074,1.18232]],["d50",[.96422,.82521]],["d55",[.95682,.92149]],["d65",[.95047,1.08883]],["e",[1,1,1]],["f2",[.99186,.67393]],["f7",[.95041,1.08747]],["f11",[1.00962,.6435]],["icc",[.96422,.82521]]]);function Ds(e){const r=i1e.get(String(e).toLowerCase());if(!r)throw new Error("unknown Lab illuminant "+e);Fl.labWhitePoint=e,Fl.Xn=r[0],Fl.Zn=r[1]}function Kg(){return Fl.labWhitePoint}const o_=(...e)=>{e=jt(e,"lab");const[r,n,o]=e,[a,i,l]=l1e(r,n,o),[s,c,d]=rP(a,i,l);return[s,c,d,e.length>3?e[3]:1]},l1e=(e,r,n)=>{const{kE:o,kK:a,kKE:i,Xn:l,Yn:s,Zn:c}=Fl,d=(e+16)/116,u=.002*r+d,p=d-.005*n,f=u*u*u,g=p*p*p,v=f>o?f:(116*u-16)/a,w=e>i?Math.pow((e+16)/116,3):e/a,x=g>o?g:(116*p-16)/a,k=v*l,C=w*s,_=x*c;return[k,C,_]},a_=e=>{const r=Math.sign(e);return e=Math.abs(e),(e<=.0031308?e*12.92:1.055*Math.pow(e,1/2.4)-.055)*r},rP=(e,r,n)=>{const{MtxAdaptMa:o,MtxAdaptMaI:a,MtxXYZ2RGB:i,RefWhiteRGB:l,Xn:s,Yn:c,Zn:d}=Fl,u=s*o.m00+c*o.m10+d*o.m20,p=s*o.m01+c*o.m11+d*o.m21,f=s*o.m02+c*o.m12+d*o.m22,g=l.X*o.m00+l.Y*o.m10+l.Z*o.m20,v=l.X*o.m01+l.Y*o.m11+l.Z*o.m21,w=l.X*o.m02+l.Y*o.m12+l.Z*o.m22,x=(e*o.m00+r*o.m10+n*o.m20)*(g/u),k=(e*o.m01+r*o.m11+n*o.m21)*(v/p),C=(e*o.m02+r*o.m12+n*o.m22)*(w/f),_=x*a.m00+k*a.m10+C*a.m20,$=x*a.m01+k*a.m11+C*a.m21,z=x*a.m02+k*a.m12+C*a.m22,T=a_(_*i.m00+$*i.m10+z*i.m20),A=a_(_*i.m01+$*i.m11+z*i.m21),R=a_(_*i.m02+$*i.m12+z*i.m22);return[T*255,A*255,R*255]},i_=(...e)=>{const[r,n,o,...a]=jt(e,"rgb"),[i,l,s]=nP(r,n,o),[c,d,u]=s1e(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]};function s1e(e,r,n){const{Xn:o,Yn:a,Zn:i,kE:l,kK:s}=Fl,c=e/o,d=r/a,u=n/i,p=c>l?Math.pow(c,1/3):(s*c+16)/116,f=d>l?Math.pow(d,1/3):(s*d+16)/116,g=u>l?Math.pow(u,1/3):(s*u+16)/116;return[116*f-16,500*(p-f),200*(f-g)]}function l_(e){const r=Math.sign(e);return e=Math.abs(e),(e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4))*r}const nP=(e,r,n)=>{e=l_(e/255),r=l_(r/255),n=l_(n/255);const{MtxRGB2XYZ:o,MtxAdaptMa:a,MtxAdaptMaI:i,Xn:l,Yn:s,Zn:c,As:d,Bs:u,Cs:p}=Fl;let f=e*o.m00+r*o.m10+n*o.m20,g=e*o.m01+r*o.m11+n*o.m21,v=e*o.m02+r*o.m12+n*o.m22;const w=l*a.m00+s*a.m10+c*a.m20,x=l*a.m01+s*a.m11+c*a.m21,k=l*a.m02+s*a.m12+c*a.m22;let C=f*a.m00+g*a.m10+v*a.m20,_=f*a.m01+g*a.m11+v*a.m21,$=f*a.m02+g*a.m12+v*a.m22;return C*=w/d,_*=x/u,$*=k/p,f=C*i.m00+_*i.m10+$*i.m20,g=C*i.m01+_*i.m11+$*i.m21,v=C*i.m02+_*i.m12+$*i.m22,[f,g,v]};Ne.prototype.lab=function(){return i_(this._rgb)},Object.assign(Rt,{lab:(...e)=>new Ne(...e,"lab"),getLabWhitePoint:Kg,setLabWhitePoint:Ds}),zt.format.lab=o_,zt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"lab"),Ft(e)==="array"&&e.length===3)return"lab"}}),Ne.prototype.darken=function(e=1){const r=this,n=r.lab();return n[0]-=Fl.Kn*e,new Ne(n,"lab").alpha(r.alpha(),!0)},Ne.prototype.brighten=function(e=1){return this.darken(-e)},Ne.prototype.darker=Ne.prototype.darken,Ne.prototype.brighter=Ne.prototype.brighten,Ne.prototype.get=function(e){const[r,n]=e.split("."),o=this[r]();if(n){const a=r.indexOf(n)-(r.substr(0,2)==="ok"?2:0);if(a>-1)return o[a];throw new Error(`unknown channel ${n} in mode ${r}`)}else return o};const{pow:c1e}=Math,d1e=1e-7,u1e=20;Ne.prototype.luminance=function(e,r="rgb"){if(e!==void 0&&Ft(e)==="number"){if(e===0)return new Ne([0,0,0,this._rgb[3]],"rgb");if(e===1)return new Ne([255,255,255,this._rgb[3]],"rgb");let n=this.luminance(),o=u1e;const a=(l,s)=>{const c=l.interpolate(s,.5,r),d=c.luminance();return Math.abs(e-d)e?a(l,c):a(c,s)},i=(n>e?a(new Ne([0,0,0]),this):a(this,new Ne([255,255,255]))).rgb();return new Ne([...i,this._rgb[3]])}return p1e(...this._rgb.slice(0,3))};const p1e=(e,r,n)=>(e=s_(e),r=s_(r),n=s_(n),.2126*e+.7152*r+.0722*n),s_=e=>(e/=255,e<=.03928?e/12.92:c1e((e+.055)/1.055,2.4)),bo={},Th=(e,r,n=.5,...o)=>{let a=o[0]||"lrgb";if(!bo[a]&&!o.length&&(a=Object.keys(bo)[0]),!bo[a])throw new Error(`interpolation mode ${a} is not defined`);return Ft(e)!=="object"&&(e=new Ne(e)),Ft(r)!=="object"&&(r=new Ne(r)),bo[a](e,r,n).alpha(e.alpha()+n*(r.alpha()-e.alpha()))};Ne.prototype.mix=Ne.prototype.interpolate=function(e,r=.5,...n){return Th(this,e,r,...n)},Ne.prototype.premultiply=function(e=!1){const r=this._rgb,n=r[3];return e?(this._rgb=[r[0]*n,r[1]*n,r[2]*n,n],this):new Ne([r[0]*n,r[1]*n,r[2]*n,n],"rgb")};const{sin:h1e,cos:f1e}=Math,oP=(...e)=>{let[r,n,o]=jt(e,"lch");return isNaN(o)&&(o=0),o=o*t1e,[r,f1e(o)*n,h1e(o)*n]},c_=(...e)=>{e=jt(e,"lch");const[r,n,o]=e,[a,i,l]=oP(r,n,o),[s,c,d]=o_(a,i,l);return[s,c,d,e.length>3?e[3]:1]},m1e=(...e)=>{const r=JN(jt(e,"hcl"));return c_(...r)},{sqrt:g1e,atan2:y1e,round:v1e}=Math,aP=(...e)=>{const[r,n,o]=jt(e,"lab"),a=g1e(n*n+o*o);let i=(y1e(o,n)*r1e+360)%360;return v1e(a*1e4)===0&&(i=Number.NaN),[r,a,i]},d_=(...e)=>{const[r,n,o,...a]=jt(e,"rgb"),[i,l,s]=i_(r,n,o),[c,d,u]=aP(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]};Ne.prototype.lch=function(){return d_(this._rgb)},Ne.prototype.hcl=function(){return JN(d_(this._rgb))},Object.assign(Rt,{lch:(...e)=>new Ne(...e,"lch"),hcl:(...e)=>new Ne(...e,"hcl")}),zt.format.lch=c_,zt.format.hcl=m1e,["lch","hcl"].forEach(e=>zt.autodetect.push({p:2,test:(...r)=>{if(r=jt(r,e),Ft(r)==="array"&&r.length===3)return e}})),Ne.prototype.saturate=function(e=1){const r=this,n=r.lch();return n[1]+=Fl.Kn*e,n[1]<0&&(n[1]=0),new Ne(n,"lch").alpha(r.alpha(),!0)},Ne.prototype.desaturate=function(e=1){return this.saturate(-e)},Ne.prototype.set=function(e,r,n=!1){const[o,a]=e.split("."),i=this[o]();if(a){const l=o.indexOf(a)-(o.substr(0,2)==="ok"?2:0);if(l>-1){if(Ft(r)=="string")switch(r.charAt(0)){case"+":i[l]+=+r;break;case"-":i[l]+=+r;break;case"*":i[l]*=+r.substr(1);break;case"/":i[l]/=+r.substr(1);break;default:i[l]=+r}else if(Ft(r)==="number")i[l]=r;else throw new Error("unsupported value for Color.set");const s=new Ne(i,o);return n?(this._rgb=s._rgb,this):s}throw new Error(`unknown channel ${a} in mode ${o}`)}else return i},Ne.prototype.tint=function(e=.5,...r){return Th(this,"white",e,...r)},Ne.prototype.shade=function(e=.5,...r){return Th(this,"black",e,...r)};const b1e=(e,r,n)=>{const o=e._rgb,a=r._rgb;return new Ne(o[0]+n*(a[0]-o[0]),o[1]+n*(a[1]-o[1]),o[2]+n*(a[2]-o[2]),"rgb")};bo.rgb=b1e;const{sqrt:u_,pow:jh}=Math,x1e=(e,r,n)=>{const[o,a,i]=e._rgb,[l,s,c]=r._rgb;return new Ne(u_(jh(o,2)*(1-n)+jh(l,2)*n),u_(jh(a,2)*(1-n)+jh(s,2)*n),u_(jh(i,2)*(1-n)+jh(c,2)*n),"rgb")};bo.lrgb=x1e;const w1e=(e,r,n)=>{const o=e.lab(),a=r.lab();return new Ne(o[0]+n*(a[0]-o[0]),o[1]+n*(a[1]-o[1]),o[2]+n*(a[2]-o[2]),"lab")};bo.lab=w1e;const Ah=(e,r,n,o)=>{let a,i;o==="hsl"?(a=e.hsl(),i=r.hsl()):o==="hsv"?(a=e.hsv(),i=r.hsv()):o==="hcg"?(a=e.hcg(),i=r.hcg()):o==="hsi"?(a=e.hsi(),i=r.hsi()):o==="lch"||o==="hcl"?(o="hcl",a=e.hcl(),i=r.hcl()):o==="oklch"&&(a=e.oklch().reverse(),i=r.oklch().reverse());let l,s,c,d,u,p;(o.substr(0,1)==="h"||o==="oklch")&&([l,c,u]=a,[s,d,p]=i);let f,g,v,w;return!isNaN(l)&&!isNaN(s)?(s>l&&s-l>180?w=s-(l+360):s180?w=s+360-l:w=s-l,g=l+n*w):isNaN(l)?isNaN(s)?g=Number.NaN:(g=s,(u==1||u==0)&&o!="hsv"&&(f=d)):(g=l,(p==1||p==0)&&o!="hsv"&&(f=c)),f===void 0&&(f=c+n*(d-c)),v=u+n*(p-u),o==="oklch"?new Ne([v,f,g],o):new Ne([g,f,v],o)},iP=(e,r,n)=>Ah(e,r,n,"lch");bo.lch=iP,bo.hcl=iP;const k1e=e=>{if(Ft(e)=="number"&&e>=0&&e<=16777215){const r=e>>16,n=e>>8&255,o=e&255;return[r,n,o,1]}throw new Error("unknown num color: "+e)},_1e=(...e)=>{const[r,n,o]=jt(e,"rgb");return(r<<16)+(n<<8)+o};Ne.prototype.num=function(){return _1e(this._rgb)},Object.assign(Rt,{num:(...e)=>new Ne(...e,"num")}),zt.format.num=k1e,zt.autodetect.push({p:5,test:(...e)=>{if(e.length===1&&Ft(e[0])==="number"&&e[0]>=0&&e[0]<=16777215)return"num"}});const S1e=(e,r,n)=>{const o=e.num(),a=r.num();return new Ne(o+n*(a-o),"num")};bo.num=S1e;const{floor:E1e}=Math,C1e=(...e)=>{e=jt(e,"hcg");let[r,n,o]=e,a,i,l;o=o*255;const s=n*255;if(n===0)a=i=l=o;else{r===360&&(r=0),r>360&&(r-=360),r<0&&(r+=360),r/=60;const c=E1e(r),d=r-c,u=o*(1-n),p=u+s*(1-d),f=u+s*d,g=u+s;switch(c){case 0:[a,i,l]=[g,f,u];break;case 1:[a,i,l]=[p,g,u];break;case 2:[a,i,l]=[u,g,f];break;case 3:[a,i,l]=[u,p,g];break;case 4:[a,i,l]=[f,u,g];break;case 5:[a,i,l]=[g,u,p];break}}return[a,i,l,e.length>3?e[3]:1]},$1e=(...e)=>{const[r,n,o]=jt(e,"rgb"),a=KN(r,n,o),i=QN(r,n,o),l=i-a,s=l*100/255,c=a/(255-l)*100;let d;return l===0?d=Number.NaN:(r===i&&(d=(n-o)/l),n===i&&(d=2+(o-r)/l),o===i&&(d=4+(r-n)/l),d*=60,d<0&&(d+=360)),[d,s,c]};Ne.prototype.hcg=function(){return $1e(this._rgb)};const z1e=(...e)=>new Ne(...e,"hcg");Rt.hcg=z1e,zt.format.hcg=C1e,zt.autodetect.push({p:1,test:(...e)=>{if(e=jt(e,"hcg"),Ft(e)==="array"&&e.length===3)return"hcg"}});const R1e=(e,r,n)=>Ah(e,r,n,"hcg");bo.hcg=R1e;const{cos:Dh}=Math,T1e=(...e)=>{e=jt(e,"hsi");let[r,n,o]=e,a,i,l;return isNaN(r)&&(r=0),isNaN(n)&&(n=0),r>360&&(r-=360),r<0&&(r+=360),r/=360,r<1/3?(l=(1-n)/3,a=(1+n*Dh(As*r)/Dh(n_-As*r))/3,i=1-(l+a)):r<2/3?(r-=1/3,a=(1-n)/3,i=(1+n*Dh(As*r)/Dh(n_-As*r))/3,l=1-(a+i)):(r-=2/3,i=(1-n)/3,l=(1+n*Dh(As*r)/Dh(n_-As*r))/3,a=1-(i+l)),a=Au(o*a*3),i=Au(o*i*3),l=Au(o*l*3),[a*255,i*255,l*255,e.length>3?e[3]:1]},{min:j1e,sqrt:A1e,acos:D1e}=Math,M1e=(...e)=>{let[r,n,o]=jt(e,"rgb");r/=255,n/=255,o/=255;let a;const i=j1e(r,n,o),l=(r+n+o)/3,s=l>0?1-i/l:0;return s===0?a=NaN:(a=(r-n+(r-o))/2,a/=A1e((r-n)*(r-n)+(r-o)*(n-o)),a=D1e(a),o>n&&(a=As-a),a/=As),[a*360,s,l]};Ne.prototype.hsi=function(){return M1e(this._rgb)};const N1e=(...e)=>new Ne(...e,"hsi");Rt.hsi=N1e,zt.format.hsi=T1e,zt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsi"),Ft(e)==="array"&&e.length===3)return"hsi"}});const P1e=(e,r,n)=>Ah(e,r,n,"hsi");bo.hsi=P1e;const p_=(...e)=>{e=jt(e,"hsl");const[r,n,o]=e;let a,i,l;if(n===0)a=i=l=o*255;else{const s=[0,0,0],c=[0,0,0],d=o<.5?o*(1+n):o+n-o*n,u=2*o-d,p=r/360;s[0]=p+1/3,s[1]=p,s[2]=p-1/3;for(let f=0;f<3;f++)s[f]<0&&(s[f]+=1),s[f]>1&&(s[f]-=1),6*s[f]<1?c[f]=u+(d-u)*6*s[f]:2*s[f]<1?c[f]=d:3*s[f]<2?c[f]=u+(d-u)*(2/3-s[f])*6:c[f]=u;[a,i,l]=[c[0]*255,c[1]*255,c[2]*255]}return e.length>3?[a,i,l,e[3]]:[a,i,l,1]},lP=(...e)=>{e=jt(e,"rgba");let[r,n,o]=e;r/=255,n/=255,o/=255;const a=KN(r,n,o),i=QN(r,n,o),l=(i+a)/2;let s,c;return i===a?(s=0,c=Number.NaN):s=l<.5?(i-a)/(i+a):(i-a)/(2-i-a),r==i?c=(n-o)/(i-a):n==i?c=2+(o-r)/(i-a):o==i&&(c=4+(r-n)/(i-a)),c*=60,c<0&&(c+=360),e.length>3&&e[3]!==void 0?[c,s,l,e[3]]:[c,s,l]};Ne.prototype.hsl=function(){return lP(this._rgb)};const B1e=(...e)=>new Ne(...e,"hsl");Rt.hsl=B1e,zt.format.hsl=p_,zt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsl"),Ft(e)==="array"&&e.length===3)return"hsl"}});const I1e=(e,r,n)=>Ah(e,r,n,"hsl");bo.hsl=I1e;const{floor:O1e}=Math,L1e=(...e)=>{e=jt(e,"hsv");let[r,n,o]=e,a,i,l;if(o*=255,n===0)a=i=l=o;else{r===360&&(r=0),r>360&&(r-=360),r<0&&(r+=360),r/=60;const s=O1e(r),c=r-s,d=o*(1-n),u=o*(1-n*c),p=o*(1-n*(1-c));switch(s){case 0:[a,i,l]=[o,p,d];break;case 1:[a,i,l]=[u,o,d];break;case 2:[a,i,l]=[d,o,p];break;case 3:[a,i,l]=[d,u,o];break;case 4:[a,i,l]=[p,d,o];break;case 5:[a,i,l]=[o,d,u];break}}return[a,i,l,e.length>3?e[3]:1]},{min:F1e,max:V1e}=Math,q1e=(...e)=>{e=jt(e,"rgb");let[r,n,o]=e;const a=F1e(r,n,o),i=V1e(r,n,o),l=i-a;let s,c,d;return d=i/255,i===0?(s=Number.NaN,c=0):(c=l/i,r===i&&(s=(n-o)/l),n===i&&(s=2+(o-r)/l),o===i&&(s=4+(r-n)/l),s*=60,s<0&&(s+=360)),[s,c,d]};Ne.prototype.hsv=function(){return q1e(this._rgb)};const H1e=(...e)=>new Ne(...e,"hsv");Rt.hsv=H1e,zt.format.hsv=L1e,zt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsv"),Ft(e)==="array"&&e.length===3)return"hsv"}});const U1e=(e,r,n)=>Ah(e,r,n,"hsv");bo.hsv=U1e;function xb(e,r){let n=e.length;Array.isArray(e[0])||(e=[e]),Array.isArray(r[0])||(r=r.map(l=>[l]));let o=r[0].length,a=r[0].map((l,s)=>r.map(c=>c[s])),i=e.map(l=>a.map(s=>Array.isArray(l)?l.reduce((c,d,u)=>c+d*(s[u]||0),0):s.reduce((c,d)=>c+d*l,0)));return n===1&&(i=i[0]),o===1?i.map(l=>l[0]):i}const h_=(...e)=>{e=jt(e,"lab");const[r,n,o,...a]=e,[i,l,s]=W1e([r,n,o]),[c,d,u]=rP(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]};function W1e(e){var r=[[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],n=[[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]],o=xb(n,e);return xb(r,o.map(a=>a**3))}const f_=(...e)=>{const[r,n,o,...a]=jt(e,"rgb"),i=nP(r,n,o);return[...G1e(i),...a.length>0&&a[0]<1?[a[0]]:[]]};function G1e(e){const r=[[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],n=[[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],o=xb(r,e);return xb(n,o.map(a=>Math.cbrt(a)))}Ne.prototype.oklab=function(){return f_(this._rgb)},Object.assign(Rt,{oklab:(...e)=>new Ne(...e,"oklab")}),zt.format.oklab=h_,zt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"oklab"),Ft(e)==="array"&&e.length===3)return"oklab"}});const Y1e=(e,r,n)=>{const o=e.oklab(),a=r.oklab();return new Ne(o[0]+n*(a[0]-o[0]),o[1]+n*(a[1]-o[1]),o[2]+n*(a[2]-o[2]),"oklab")};bo.oklab=Y1e;const X1e=(e,r,n)=>Ah(e,r,n,"oklch");bo.oklch=X1e;const{pow:m_,sqrt:g_,PI:y_,cos:sP,sin:cP,atan2:Z1e}=Math,K1e=(e,r="lrgb",n=null)=>{const o=e.length;n||(n=Array.from(new Array(o)).map(()=>1));const a=o/n.reduce(function(p,f){return p+f});if(n.forEach((p,f)=>{n[f]*=a}),e=e.map(p=>new Ne(p)),r==="lrgb")return Q1e(e,n);const i=e.shift(),l=i.get(r),s=[];let c=0,d=0;for(let p=0;p{const g=p.get(r);u+=p.alpha()*n[f+1];for(let v=0;v=360;)f-=360;l[p]=f}else l[p]=l[p]/s[p];return u/=o,new Ne(l,r).alpha(u>.99999?1:u,!0)},Q1e=(e,r)=>{const n=e.length,o=[0,0,0,0];for(let a=0;a.9999999&&(o[3]=1),new Ne(t_(o))},{pow:J1e}=Math;function wb(e){let r="rgb",n=Rt("#ccc"),o=0,a=[0,1],i=[0,1],l=[],s=[0,0],c=!1,d=[],u=!1,p=0,f=1,g=!1,v={},w=!0,x=1;const k=function(R){if(R=R||["#fff","#000"],R&&Ft(R)==="string"&&Rt.brewer&&Rt.brewer[R.toLowerCase()]&&(R=Rt.brewer[R.toLowerCase()]),Ft(R)==="array"){R.length===1&&(R=[R[0],R[0]]),R=R.slice(0);for(let j=0;j=c[I];)I++;return I-1}return 0};let _=R=>R,$=R=>R;const z=function(R,j){let I,P;if(j==null&&(j=!1),isNaN(R)||R===null)return n;j?P=R:c&&c.length>2?P=C(R)/(c.length-2):f!==p?P=(R-p)/(f-p):P=1,P=$(P),j||(P=_(P)),x!==1&&(P=J1e(P,x)),P=s[0]+P*(1-s[0]-s[1]),P=Au(P,0,1);const L=Math.floor(P*1e4);if(w&&v[L])I=v[L];else{if(Ft(d)==="array")for(let H=0;H=M&&H===l.length-1){I=d[H];break}if(P>M&&Pv={};k(e);const A=function(R){const j=Rt(z(R));return u&&j[u]?j[u]():j};return A.classes=function(R){if(R!=null){if(Ft(R)==="array")c=R,a=[R[0],R[R.length-1]];else{const j=Rt.analyze(a);R===0?c=[j.min,j.max]:c=Rt.limits(j,"e",R)}return A}return c},A.domain=function(R){if(!arguments.length)return i;i=R.slice(0),p=R[0],f=R[R.length-1],l=[];const j=d.length;if(R.length===j&&p!==f)for(let I of Array.from(R))l.push((I-p)/(f-p));else{for(let I=0;I2){const I=R.map((L,H)=>H/(R.length-1)),P=R.map(L=>(L-p)/(f-p));P.every((L,H)=>I[H]===L)||($=L=>{if(L<=0||L>=1)return L;let H=0;for(;L>=P[H+1];)H++;const M=(L-P[H])/(P[H+1]-P[H]);return I[H]+M*(I[H+1]-I[H])})}}return a=[p,f],A},A.mode=function(R){return arguments.length?(r=R,T(),A):r},A.range=function(R,j){return k(R),A},A.out=function(R){return u=R,A},A.spread=function(R){return arguments.length?(o=R,A):o},A.correctLightness=function(R){return R==null&&(R=!0),g=R,T(),g?_=function(j){const I=z(0,!0).lab()[0],P=z(1,!0).lab()[0],L=I>P;let H=z(j,!0).lab()[0];const M=I+(P-I)*j;let V=H-M,B=0,F=1,q=20;for(;Math.abs(V)>.01&&q-- >0;)(function(){return L&&(V*=-1),V<0?(B=j,j+=(F-j)*.5):(F=j,j+=(B-j)*.5),H=z(j,!0).lab()[0],V=H-M})();return j}:_=j=>j,A},A.padding=function(R){return R!=null?(Ft(R)==="number"&&(R=[R,R]),s=R,A):s},A.colors=function(R,j){arguments.length<2&&(j="hex");let I=[];if(arguments.length===0)I=d.slice(0);else if(R===1)I=[A(.5)];else if(R>1){const P=a[0],L=a[1]-P;I=eye(0,R).map(H=>A(P+H/(R-1)*L))}else{e=[];let P=[];if(c&&c.length>2)for(let L=1,H=c.length,M=1<=H;M?LH;M?L++:L--)P.push((c[L-1]+c[L])*.5);else P=a;I=P.map(L=>A(L))}return Rt[j]&&(I=I.map(P=>P[j]())),I},A.cache=function(R){return R!=null?(w=R,A):w},A.gamma=function(R){return R!=null?(x=R,A):x},A.nodata=function(R){return R!=null?(n=Rt(R),A):n},A}function eye(e,r,n){let o=[],a=ei;a?l++:l--)o.push(l);return o}const tye=function(e){let r=[1,1];for(let n=1;nnew Ne(i)),e.length===2)[n,o]=e.map(i=>i.lab()),r=function(i){const l=[0,1,2].map(s=>n[s]+i*(o[s]-n[s]));return new Ne(l,"lab")};else if(e.length===3)[n,o,a]=e.map(i=>i.lab()),r=function(i){const l=[0,1,2].map(s=>(1-i)*(1-i)*n[s]+2*(1-i)*i*o[s]+i*i*a[s]);return new Ne(l,"lab")};else if(e.length===4){let i;[n,o,a,i]=e.map(l=>l.lab()),r=function(l){const s=[0,1,2].map(c=>(1-l)*(1-l)*(1-l)*n[c]+3*(1-l)*(1-l)*l*o[c]+3*(1-l)*l*l*a[c]+l*l*l*i[c]);return new Ne(s,"lab")}}else if(e.length>=5){let i,l,s;i=e.map(c=>c.lab()),s=e.length-1,l=tye(s),r=function(c){const d=1-c,u=[0,1,2].map(p=>i.reduce((f,g,v)=>f+l[v]*d**(s-v)*c**v*g[p],0));return new Ne(u,"lab")}}else throw new RangeError("No point in running bezier with only one color.");return r},nye=e=>{const r=rye(e);return r.scale=()=>wb(r),r},{round:dP}=Math;Ne.prototype.rgb=function(e=!0){return e===!1?this._rgb.slice(0,3):this._rgb.slice(0,3).map(dP)},Ne.prototype.rgba=function(e=!0){return this._rgb.slice(0,4).map((r,n)=>n<3?e===!1?r:dP(r):r)},Object.assign(Rt,{rgb:(...e)=>new Ne(...e,"rgb")}),zt.format.rgb=(...e)=>{const r=jt(e,"rgba");return r[3]===void 0&&(r[3]=1),r},zt.autodetect.push({p:3,test:(...e)=>{if(e=jt(e,"rgba"),Ft(e)==="array"&&(e.length===3||e.length===4&&Ft(e[3])=="number"&&e[3]>=0&&e[3]<=1))return"rgb"}});const qi=(e,r,n)=>{if(!qi[n])throw new Error("unknown blend mode "+n);return qi[n](e,r)},Zc=e=>(r,n)=>{const o=Rt(n).rgb(),a=Rt(r).rgb();return Rt.rgb(e(o,a))},Kc=e=>(r,n)=>{const o=[];return o[0]=e(r[0],n[0]),o[1]=e(r[1],n[1]),o[2]=e(r[2],n[2]),o},oye=e=>e,aye=(e,r)=>e*r/255,iye=(e,r)=>e>r?r:e,lye=(e,r)=>e>r?e:r,sye=(e,r)=>255*(1-(1-e/255)*(1-r/255)),cye=(e,r)=>r<128?2*e*r/255:255*(1-2*(1-e/255)*(1-r/255)),dye=(e,r)=>255*(1-(1-r/255)/(e/255)),uye=(e,r)=>e===255?255:(e=255*(r/255)/(1-e/255),e>255?255:e);qi.normal=Zc(Kc(oye)),qi.multiply=Zc(Kc(aye)),qi.screen=Zc(Kc(sye)),qi.overlay=Zc(Kc(cye)),qi.darken=Zc(Kc(iye)),qi.lighten=Zc(Kc(lye)),qi.dodge=Zc(Kc(uye)),qi.burn=Zc(Kc(dye));const{pow:pye,sin:hye,cos:fye}=Math;function mye(e=300,r=-1.5,n=1,o=1,a=[0,1]){let i=0,l;Ft(a)==="array"?l=a[1]-a[0]:(l=0,a=[a,a]);const s=function(c){const d=As*((e+120)/360+r*c),u=pye(a[0]+l*c,o),f=(i!==0?n[0]+c*i:n)*u*(1-u)/2,g=fye(d),v=hye(d),w=u+f*(-.14861*g+1.78277*v),x=u+f*(-.29227*g-.90649*v),k=u+f*(1.97294*g);return Rt(t_([w*255,x*255,k*255,1]))};return s.start=function(c){return c==null?e:(e=c,s)},s.rotations=function(c){return c==null?r:(r=c,s)},s.gamma=function(c){return c==null?o:(o=c,s)},s.hue=function(c){return c==null?n:(n=c,Ft(n)==="array"?(i=n[1]-n[0],i===0&&(n=n[1])):i=0,s)},s.lightness=function(c){return c==null?a:(Ft(c)==="array"?(a=c,l=c[1]-c[0]):(a=[c,c],l=0),s)},s.scale=()=>Rt.scale(s),s.hue(n),s}const gye="0123456789abcdef",{floor:yye,random:vye}=Math,bye=(e=vye)=>{let r="#";for(let n=0;n<6;n++)r+=gye.charAt(yye(e()*16));return new Ne(r,"hex")},{log:uP,pow:xye,floor:wye,abs:kye}=Math;function pP(e,r=null){const n={min:Number.MAX_VALUE,max:Number.MAX_VALUE*-1,sum:0,values:[],count:0};return Ft(e)==="object"&&(e=Object.values(e)),e.forEach(o=>{r&&Ft(o)==="object"&&(o=o[r]),o!=null&&!isNaN(o)&&(n.values.push(o),n.sum+=o,on.max&&(n.max=o),n.count+=1)}),n.domain=[n.min,n.max],n.limits=(o,a)=>hP(n,o,a),n}function hP(e,r="equal",n=7){Ft(e)=="array"&&(e=pP(e));const{min:o,max:a}=e,i=e.values.sort((s,c)=>s-c);if(n===1)return[o,a];const l=[];if(r.substr(0,1)==="c"&&(l.push(o),l.push(a)),r.substr(0,1)==="e"){l.push(o);for(let s=1;s 0");const s=Math.LOG10E*uP(o),c=Math.LOG10E*uP(a);l.push(o);for(let d=1;d200&&(p=!1)}const v={};for(let x=0;xx-k),l.push(w[0]);for(let x=1;x{e=new Ne(e),r=new Ne(r);const n=e.luminance(),o=r.luminance();return n>o?(n+.05)/(o+.05):(o+.05)/(n+.05)};const fP=.027,Sye=5e-4,Eye=.1,mP=1.14,kb=.022,gP=1.414,Cye=(e,r)=>{e=new Ne(e),r=new Ne(r),e.alpha()<1&&(e=Th(r,e,e.alpha(),"rgb"));const n=yP(...e.rgb()),o=yP(...r.rgb()),a=n>=kb?n:n+Math.pow(kb-n,gP),i=o>=kb?o:o+Math.pow(kb-o,gP),l=Math.pow(i,.56)-Math.pow(a,.57),s=Math.pow(i,.65)-Math.pow(a,.62),c=Math.abs(i-a)0?c-fP:c+fP)*100};function yP(e,r,n){return .2126729*Math.pow(e/255,2.4)+.7151522*Math.pow(r/255,2.4)+.072175*Math.pow(n/255,2.4)}const{sqrt:Ms,pow:yn,min:$ye,max:zye,atan2:vP,abs:bP,cos:_b,sin:xP,exp:Rye,PI:wP}=Math;function Tye(e,r,n=1,o=1,a=1){var i=function(O){return 360*O/(2*wP)},l=function(O){return 2*wP*O/360};e=new Ne(e),r=new Ne(r);const[s,c,d]=Array.from(e.lab()),[u,p,f]=Array.from(r.lab()),g=(s+u)/2,v=Ms(yn(c,2)+yn(d,2)),w=Ms(yn(p,2)+yn(f,2)),x=(v+w)/2,k=.5*(1-Ms(yn(x,7)/(yn(x,7)+yn(25,7)))),C=c*(1+k),_=p*(1+k),$=Ms(yn(C,2)+yn(d,2)),z=Ms(yn(_,2)+yn(f,2)),T=($+z)/2,A=i(vP(d,C)),R=i(vP(f,_)),j=A>=0?A:A+360,I=R>=0?R:R+360,P=bP(j-I)>180?(j+I+360)/2:(j+I)/2,L=1-.17*_b(l(P-30))+.24*_b(l(2*P))+.32*_b(l(3*P+6))-.2*_b(l(4*P-63));let H=I-j;H=bP(H)<=180?H:I<=j?H+360:H-360,H=2*Ms($*z)*xP(l(H)/2);const M=u-s,V=z-$,B=1+.015*yn(g-50,2)/Ms(20+yn(g-50,2)),F=1+.045*T,q=1+.015*T*L,G=30*Rye(-yn((P-275)/25,2)),Y=-(2*Ms(yn(T,7)/(yn(T,7)+yn(25,7))))*xP(2*l(G)),Z=Ms(yn(M/(n*B),2)+yn(V/(o*F),2)+yn(H/(a*q),2)+Y*(V/(o*F))*(H/(a*q)));return zye(0,$ye(100,Z))}function jye(e,r,n="lab"){e=new Ne(e),r=new Ne(r);const o=e.get(n),a=r.get(n);let i=0;for(let l in o){const s=(o[l]||0)-(a[l]||0);i+=s*s}return Math.sqrt(i)}const Aye=(...e)=>{try{return new Ne(...e),!0}catch{return!1}},Dye={cool(){return wb([Rt.hsl(180,1,.9),Rt.hsl(250,.7,.4)])},hot(){return wb(["#000","#f00","#ff0","#fff"]).mode("rgb")}},v_={OrRd:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"],PuBu:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"],BuPu:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"],Oranges:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"],BuGn:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"],YlOrBr:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"],YlGn:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"],Reds:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"],RdPu:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"],Greens:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"],YlGnBu:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"],Purples:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"],GnBu:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"],Greys:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"],YlOrRd:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"],PuRd:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"],Blues:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"],PuBuGn:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"],Viridis:["#440154","#482777","#3f4a8a","#31678e","#26838f","#1f9d8a","#6cce5a","#b6de2b","#fee825"],Spectral:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],RdYlGn:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],RdBu:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],PiYG:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],PRGn:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],RdYlBu:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],BrBG:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],RdGy:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],PuOr:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],Set2:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"],Accent:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"],Set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],Set3:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"],Dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],Paired:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"],Pastel2:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"],Pastel1:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},kP=Object.keys(v_),_P=new Map(kP.map(e=>[e.toLowerCase(),e])),Mye=typeof Proxy=="function"?new Proxy(v_,{get(e,r){const n=r.toLowerCase();if(_P.has(n))return e[_P.get(n)]},getOwnPropertyNames(){return Object.getOwnPropertyNames(kP)}}):v_,Nye=(...e)=>{e=jt(e,"cmyk");const[r,n,o,a]=e,i=e.length>4?e[4]:1;return a===1?[0,0,0,i]:[r>=1?0:255*(1-r)*(1-a),n>=1?0:255*(1-n)*(1-a),o>=1?0:255*(1-o)*(1-a),i]},{max:SP}=Math,Pye=(...e)=>{let[r,n,o]=jt(e,"rgb");r=r/255,n=n/255,o=o/255;const a=1-SP(r,SP(n,o)),i=a<1?1/(1-a):0,l=(1-r-a)*i,s=(1-n-a)*i,c=(1-o-a)*i;return[l,s,c,a]};Ne.prototype.cmyk=function(){return Pye(this._rgb)},Object.assign(Rt,{cmyk:(...e)=>new Ne(...e,"cmyk")}),zt.format.cmyk=Nye,zt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"cmyk"),Ft(e)==="array"&&e.length===4)return"cmyk"}});const Bye=(...e)=>{const r=jt(e,"hsla");let n=zh(e)||"lsa";return r[0]=Za(r[0]||0)+"deg",r[1]=Za(r[1]*100)+"%",r[2]=Za(r[2]*100)+"%",n==="hsla"||r.length>3&&r[3]<1?(r[3]="/ "+(r.length>3?r[3]:1),n="hsla"):r.length=3,`${n.substr(0,3)}(${r.join(" ")})`},Iye=(...e)=>{const r=jt(e,"lab");let n=zh(e)||"lab";return r[0]=Za(r[0])+"%",r[1]=Za(r[1]),r[2]=Za(r[2]),n==="laba"||r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`lab(${r.join(" ")})`},Oye=(...e)=>{const r=jt(e,"lch");let n=zh(e)||"lab";return r[0]=Za(r[0])+"%",r[1]=Za(r[1]),r[2]=isNaN(r[2])?"none":Za(r[2])+"deg",n==="lcha"||r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`lch(${r.join(" ")})`},Lye=(...e)=>{const r=jt(e,"lab");return r[0]=Za(r[0]*100)+"%",r[1]=r_(r[1]),r[2]=r_(r[2]),r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`oklab(${r.join(" ")})`},EP=(...e)=>{const[r,n,o,...a]=jt(e,"rgb"),[i,l,s]=f_(r,n,o),[c,d,u]=aP(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]},Fye=(...e)=>{const r=jt(e,"lch");return r[0]=Za(r[0]*100)+"%",r[1]=r_(r[1]),r[2]=isNaN(r[2])?"none":Za(r[2])+"deg",r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`oklch(${r.join(" ")})`},{round:b_}=Math,Vye=(...e)=>{const r=jt(e,"rgba");let n=zh(e)||"rgb";if(n.substr(0,3)==="hsl")return Bye(lP(r),n);if(n.substr(0,3)==="lab"){const o=Kg();Ds("d50");const a=Iye(i_(r),n);return Ds(o),a}if(n.substr(0,3)==="lch"){const o=Kg();Ds("d50");const a=Oye(d_(r),n);return Ds(o),a}return n.substr(0,5)==="oklab"?Lye(f_(r)):n.substr(0,5)==="oklch"?Fye(EP(r)):(r[0]=b_(r[0]),r[1]=b_(r[1]),r[2]=b_(r[2]),(n==="rgba"||r.length>3&&r[3]<1)&&(r[3]="/ "+(r.length>3?r[3]:1),n="rgba"),`${n.substr(0,3)}(${r.slice(0,n==="rgb"?3:4).join(" ")})`)},CP=(...e)=>{e=jt(e,"lch");const[r,n,o,...a]=e,[i,l,s]=oP(r,n,o),[c,d,u]=h_(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]},Ns=/((?:-?\d+)|(?:-?\d+(?:\.\d+)?)%|none)/.source,Hi=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%?)|none)/.source,Sb=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%)|none)/.source,Ka=/\s*/.source,Mh=/\s+/.source,x_=/\s*,\s*/.source,Eb=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)(?:deg)?)|none)/.source,Nh=/\s*(?:\/\s*((?:[01]|[01]?\.\d+)|\d+(?:\.\d+)?%))?/.source,$P=new RegExp("^rgba?\\("+Ka+[Ns,Ns,Ns].join(Mh)+Nh+"\\)$"),zP=new RegExp("^rgb\\("+Ka+[Ns,Ns,Ns].join(x_)+Ka+"\\)$"),RP=new RegExp("^rgba\\("+Ka+[Ns,Ns,Ns,Hi].join(x_)+Ka+"\\)$"),TP=new RegExp("^hsla?\\("+Ka+[Eb,Sb,Sb].join(Mh)+Nh+"\\)$"),jP=new RegExp("^hsl?\\("+Ka+[Eb,Sb,Sb].join(x_)+Ka+"\\)$"),AP=/^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/,DP=new RegExp("^lab\\("+Ka+[Hi,Hi,Hi].join(Mh)+Nh+"\\)$"),MP=new RegExp("^lch\\("+Ka+[Hi,Hi,Eb].join(Mh)+Nh+"\\)$"),NP=new RegExp("^oklab\\("+Ka+[Hi,Hi,Hi].join(Mh)+Nh+"\\)$"),PP=new RegExp("^oklch\\("+Ka+[Hi,Hi,Eb].join(Mh)+Nh+"\\)$"),{round:BP}=Math,Ph=e=>e.map((r,n)=>n<=2?Au(BP(r),0,255):r),vn=(e,r=0,n=100,o=!1)=>(typeof e=="string"&&e.endsWith("%")&&(e=parseFloat(e.substring(0,e.length-1))/100,o?e=r+(e+1)*.5*(n-r):e=r+e*(n-r)),+e),Po=(e,r)=>e==="none"?r:e,w_=e=>{if(e=e.toLowerCase().trim(),e==="transparent")return[0,0,0,0];let r;if(zt.format.named)try{return zt.format.named(e)}catch{}if((r=e.match($P))||(r=e.match(zP))){let n=r.slice(1,4);for(let a=0;a<3;a++)n[a]=+vn(Po(n[a],0),0,255);n=Ph(n);const o=r[4]!==void 0?+vn(r[4],0,1):1;return n[3]=o,n}if(r=e.match(RP)){const n=r.slice(1,5);for(let o=0;o<4;o++)n[o]=+vn(n[o],0,255);return n}if((r=e.match(TP))||(r=e.match(jP))){const n=r.slice(1,4);n[0]=+Po(n[0].replace("deg",""),0),n[1]=+vn(Po(n[1],0),0,100)*.01,n[2]=+vn(Po(n[2],0),0,100)*.01;const o=Ph(p_(n)),a=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=a,o}if(r=e.match(AP)){const n=r.slice(1,4);n[1]*=.01,n[2]*=.01;const o=p_(n);for(let a=0;a<3;a++)o[a]=BP(o[a]);return o[3]=+r[4],o}if(r=e.match(DP)){const n=r.slice(1,4);n[0]=vn(Po(n[0],0),0,100),n[1]=vn(Po(n[1],0),-125,125,!0),n[2]=vn(Po(n[2],0),-125,125,!0);const o=Kg();Ds("d50");const a=Ph(o_(n));Ds(o);const i=r[4]!==void 0?+vn(r[4],0,1):1;return a[3]=i,a}if(r=e.match(MP)){const n=r.slice(1,4);n[0]=vn(n[0],0,100),n[1]=vn(Po(n[1],0),0,150,!1),n[2]=+Po(n[2].replace("deg",""),0);const o=Kg();Ds("d50");const a=Ph(c_(n));Ds(o);const i=r[4]!==void 0?+vn(r[4],0,1):1;return a[3]=i,a}if(r=e.match(NP)){const n=r.slice(1,4);n[0]=vn(Po(n[0],0),0,1),n[1]=vn(Po(n[1],0),-.4,.4,!0),n[2]=vn(Po(n[2],0),-.4,.4,!0);const o=Ph(h_(n)),a=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=a,o}if(r=e.match(PP)){const n=r.slice(1,4);n[0]=vn(Po(n[0],0),0,1),n[1]=vn(Po(n[1],0),0,.4,!1),n[2]=+Po(n[2].replace("deg",""),0);const o=Ph(CP(n)),a=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=a,o}};w_.test=e=>$P.test(e)||TP.test(e)||DP.test(e)||MP.test(e)||NP.test(e)||PP.test(e)||zP.test(e)||RP.test(e)||jP.test(e)||AP.test(e)||e==="transparent",Ne.prototype.css=function(e){return Vye(this._rgb,e)};const qye=(...e)=>new Ne(...e,"css");Rt.css=qye,zt.format.css=w_,zt.autodetect.push({p:5,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&w_.test(e))return"css"}}),zt.format.gl=(...e)=>{const r=jt(e,"rgba");return r[0]*=255,r[1]*=255,r[2]*=255,r};const Hye=(...e)=>new Ne(...e,"gl");Rt.gl=Hye,Ne.prototype.gl=function(){const e=this._rgb;return[e[0]/255,e[1]/255,e[2]/255,e[3]]},Ne.prototype.hex=function(e){return tP(this._rgb,e)};const Uye=(...e)=>new Ne(...e,"hex");Rt.hex=Uye,zt.format.hex=eP,zt.autodetect.push({p:4,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&[3,4,5,6,7,8,9].indexOf(e.length)>=0)return"hex"}});const{log:Cb}=Math,IP=e=>{const r=e/100;let n,o,a;return r<66?(n=255,o=r<6?0:-155.25485562709179-.44596950469579133*(o=r-2)+104.49216199393888*Cb(o),a=r<20?0:-254.76935184120902+.8274096064007395*(a=r-10)+115.67994401066147*Cb(a)):(n=351.97690566805693+.114206453784165*(n=r-55)-40.25366309332127*Cb(n),o=325.4494125711974+.07943456536662342*(o=r-50)-28.0852963507957*Cb(o),a=255),[n,o,a,1]},{round:Wye}=Math,Gye=(...e)=>{const r=jt(e,"rgb"),n=r[0],o=r[2];let a=1e3,i=4e4;const l=.4;let s;for(;i-a>l;){s=(i+a)*.5;const c=IP(s);c[2]/c[0]>=o/n?i=s:a=s}return Wye(s)};Ne.prototype.temp=Ne.prototype.kelvin=Ne.prototype.temperature=function(){return Gye(this._rgb)};const k_=(...e)=>new Ne(...e,"temp");Object.assign(Rt,{temp:k_,kelvin:k_,temperature:k_}),zt.format.temp=zt.format.kelvin=zt.format.temperature=IP,Ne.prototype.oklch=function(){return EP(this._rgb)},Object.assign(Rt,{oklch:(...e)=>new Ne(...e,"oklch")}),zt.format.oklch=CP,zt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"oklch"),Ft(e)==="array"&&e.length===3)return"oklch"}}),Object.assign(Rt,{analyze:pP,average:K1e,bezier:nye,blend:qi,brewer:Mye,Color:Ne,colors:Rh,contrast:_ye,contrastAPCA:Cye,cubehelix:mye,deltaE:Tye,distance:jye,input:zt,interpolate:Th,limits:hP,mix:Th,random:bye,scale:wb,scales:Dye,valid:Aye});const __=[.96,.907,.805,.697,.605,.547,.518,.445,.395,.34],OP=[.32,.16,.08,.04,0,0,.04,.08,.16,.32];function Yye(e){const r=e.get("hsl.l");return __.reduce((n,o)=>Math.abs(o-r)i===n),a=__.map(i=>r.set("hsl.l",i)).map(i=>Rt(i)).map((i,l)=>{const s=OP[l]-OP[o];return s>=0?i.saturate(s):i.desaturate(s*-1)});return a[o]=Rt(e),{baseColorIndex:o,colors:a}}function Zye(e){return Xye(e).colors.map(r=>r.hex())}const LP={fill:"#3b82f6",stroke:"#2563eb",hiContrast:"#eff6ff",loContrast:"#bfdbfe"},FP={fill:"#0284c7",stroke:"#0369a1",hiContrast:"#f0f9ff",loContrast:"#B6ECF7"},VP={fill:"#64748b",stroke:"#475569",hiContrast:"#f8fafc",loContrast:"#cbd5e1"},Kye={primary:LP,blue:LP,secondary:FP,sky:FP,muted:VP,slate:VP,gray:{fill:"#737373",stroke:"#525252",hiContrast:"#fafafa",loContrast:"#d4d4d4"},red:{fill:"#AC4D39",stroke:"#853A2D",hiContrast:"#FBD3CB",loContrast:"#f5b2a3"},green:{fill:"#428a4f",stroke:"#2d5d39",hiContrast:"#f8fafc",loContrast:"#c2f0c2"},amber:{fill:"#A35829",stroke:"#7E451D",hiContrast:"#FFE0C2",loContrast:"#f9b27c"},indigo:{fill:"#6366f1",stroke:"#4f46e5",hiContrast:"#eef2ff",loContrast:"#c7d2fe"}},Qye={line:"#8D8D8D",labelBg:"#18191B",label:"#C9C9C9"},qP={line:"#64748b",labelBg:"#0f172a",label:"#cbd5e1"},HP={line:"#3b82f6",labelBg:"#172554",label:"#60a5fa"},UP={line:"#0ea5e9",labelBg:"#082f49",label:"#38bdf8"},Jye={amber:{line:"#b45309",labelBg:"#78350f",label:"#FFE0C2"},blue:HP,gray:Qye,green:{line:"#15803d",labelBg:"#052e16",label:"#22c55e"},indigo:{line:"#6366f1",labelBg:"#1e1b4b",label:"#818cf8"},muted:qP,primary:HP,red:{line:"#AC4D39",labelBg:"#b91c1c",label:"#f5b2a3"},secondary:UP,sky:UP,slate:qP},WP=60,GP=2,YP=1;function e0e(e){He(Rt.valid(e),`Invalid color: ${e}`);const r=Zye(e),n=r[6],o=t0e(n);return{elements:{fill:n,stroke:r[7],hiContrast:o[0],loContrast:o[1]},relationships:{line:r[4],label:r[3],labelBg:r[9]}}}function t0e(e){const r=Rt(e);let n=r.brighten(GP),o=r.darken(GP),a,i,l,s;do a=n,i=o,n=n.brighten(YP),o=o.darken(YP),l=Rt.contrastAPCA(r,n),s=Rt.contrastAPCA(r,o);while(Math.abs(l)Math.abs(s)?[n.brighten(.4).hex(),n.hex()]:[o.darken(.4).hex(),o.hex()]}const r0e={color:"primary",size:"md",opacity:15,shape:"rectangle",group:{opacity:15,border:"dashed"},relationship:{color:"gray",line:"dashed",arrow:"normal"}},n0e=["rectangle","person","browser","mobile","cylinder","storage","queue"],o0e={colors:Yge(["amber","blue","gray","slate","green","indigo","muted","primary","red","secondary","sky"],e=>({elements:Kye[e],relationships:Jye[e]})),sizes:{xs:{width:180,height:100},sm:{width:240,height:135},md:{width:320,height:180},lg:{width:420,height:234},xl:{width:520,height:290}},spacing:{xs:8,sm:10,md:16,lg:24,xl:32},textSizes:{xs:13.33,sm:16,md:19.2,lg:23.04,xl:27.65}};function $b({size:e,padding:r,textSize:n,...o},a=S_.defaults.size){return e??=a,n??=e,r??=e,{...o,size:e,padding:r,textSize:n}}const S_={theme:o0e,defaults:r0e};let XP=class ON{constructor(r){this.config=r,this.theme=r.theme,this.defaults=r.defaults}theme;defaults;static DEFAULT=new ON(S_);static from(...r){return Ll(r,1)?new ON(XN(...r,S_)):this.DEFAULT}get elementColors(){return this.theme.colors[this.defaults.color].elements}get relationshipColors(){return this.theme.colors[this.defaults.relationship.color].relationships}get groupColors(){const r=this.defaults.group?.color;return r?ir(this,"defaultGroup",()=>({...this.elementColors,...this.theme.colors[r].elements})):this.elementColors}isDefaultColor(r){return r===this.defaults.color}colors(r){if(r??=this.defaults.color,this.isThemeColor(r))return this.theme.colors[r];throw new Error(`Unknown color: ${r}`)}fontSize(r){return r??=this.defaults.text??this.defaults.size,this.theme.textSizes[r]}padding(r){return r??=this.defaults.padding??this.defaults.size,this.theme.spacing[r]}isThemeColor(r){return r in this.theme.colors}nodeSizes(r){const n=$b(r,this.defaults.size);return{sizes:n,values:{sizes:this.theme.sizes[n.size],padding:this.padding(n.padding),textSize:this.fontSize(n.textSize)}}}computeFrom(r){return this.isThemeColor(r)?this.theme.colors[r]:ir(this,`compute-${r}`,()=>{if(!Rt.valid(r))throw new Error(`Invalid color value: "${r}"`);return e0e(r)})}equals(r){return r===this?!0:yb(this.config,r.config)}};function Qg(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Qc(e){return typeof e=="string"}const E_={done:!1,hasNext:!1};function Ps(e,...r){let n=e,o=r.map(i=>"lazy"in i?a0e(i):void 0),a=0;for(;a65;)++o;return+u.slice(p-1,o)}return f=c&&c.indexOf(u.charAt(p)),f>-1?f+76:(f=u.charCodeAt(p)||0,f<45||f>127?f:f<46?65:f<48?f-1:f<58?f+18:f<65?f-11:f<91?f+11:f<97?f-37:f<123?f+5:f-63)}if((r+="")!=(n+="")){for(;i;)if(a=d(r,l++),i=d(n,s++),a<76&&i<76&&a>66&&i>66&&(a=d(r,l,l),i=d(n,s,l=o),s=o),a!=i)return a{if(n===o)return 0;if(!n)return-1;if(!o)return 1;const a=n.split(e),i=o.split(e),l=Math.min(a.length,i.length);for(let c=0;c0?e.slice(0,r):null}function Jg(e){const r=e.lastIndexOf(".");return r>0?e.slice(r+1):e}const e1=e=>$_(e)?e:e.id;function Yn(e,r){const n=e1(e);return r?e1(r).startsWith(n+"."):o=>{const a=e1(o);return n.startsWith(a+".")}}function eB(e,r){if(!r)return a=>eB(e,a);const n=e1(e),o=e1(r);return n===o||o.startsWith(n+".")||n.startsWith(o+".")}function tB(e,r){return n=>Yn(e,n)}function Tb(e){return($_(e)?e:e.id).split(".").length}function t1(e,r){const n=e.split(".");if(n.length<2)return null;const o=r.split(".");if(o.length<2)return null;let a=[];for(let i=0;ia===0?(n.push(o),n):(n.unshift(`${n[0]}.${o}`),n),[])}function c0e(e,r){let n=r;for(const o of e)Yn(o,n)&&(n=o);return n!==r?n:null}function Jc(e){const r=[],n=[...e];let o;for(;o=n.shift();){let a;for(;a=c0e(n,o);)r.push(n.splice(n.indexOf(a),1)[0]);r.push(o)}return r}function rB(e,r){if(!e||$_(e)){const o=e??"asc";return a=>rB(a,o)}const n=r==="desc"?-1:1;return e.map(o=>({item:o,fqn:o.id.split(".")})).sort((o,a)=>{if(o.fqn.length!==a.fqn.length)return(o.fqn.length-a.fqn.length)*n;for(let i=0;io)}var jb={},nB;function d0e(){return nB||(nB=1,jb.ARRAY_BUFFER_SUPPORT=typeof ArrayBuffer<"u",jb.SYMBOL_SUPPORT=typeof Symbol<"u"),jb}var z_,oB;function Ab(){if(oB)return z_;oB=1;var e=d0e(),r=e.ARRAY_BUFFER_SUPPORT,n=e.SYMBOL_SUPPORT;return z_=function(a,i){var l,s,c,d,u;if(!a)throw new Error("obliterator/forEach: invalid iterable.");if(typeof i!="function")throw new Error("obliterator/forEach: expecting a callback.");if(Array.isArray(a)||r&&ArrayBuffer.isView(a)||typeof a=="string"||a.toString()==="[object Arguments]"){for(c=0,d=a.length;c=n?{done:!0}:{done:!1,value:r[o++]}})},e.empty=function(){var r=new e(function(){return{done:!0}});return r},e.fromSequence=function(r){var n=0,o=r.length;return new e(function(){return n>=o?{done:!0}:{done:!1,value:r[n++]}})},e.is=function(r){return r instanceof e?!0:typeof r=="object"&&r!==null&&typeof r.next=="function"},R_=e,R_}const lB=-1,Db=0,r1=1,Mb=2,T_=3,j_=4,A_=5,D_=6,sB=7,cB=8,dB=typeof self=="object"?self:globalThis,u0e=(e,r)=>{const n=(a,i)=>(e.set(i,a),a),o=a=>{if(e.has(a))return e.get(a);const[i,l]=r[a];switch(i){case Db:case lB:return n(l,a);case r1:{const s=n([],a);for(const c of l)s.push(o(c));return s}case Mb:{const s=n({},a);for(const[c,d]of l)s[o(c)]=o(d);return s}case T_:return n(new Date(l),a);case j_:{const{source:s,flags:c}=l;return n(new RegExp(s,c),a)}case A_:{const s=n(new Map,a);for(const[c,d]of l)s.set(o(c),o(d));return s}case D_:{const s=n(new Set,a);for(const c of l)s.add(o(c));return s}case sB:{const{name:s,message:c}=l;return n(new dB[s](c),a)}case cB:return n(BigInt(l),a);case"BigInt":return n(Object(BigInt(l)),a);case"ArrayBuffer":return n(new Uint8Array(l).buffer,l);case"DataView":{const{buffer:s}=new Uint8Array(l);return n(new DataView(s),l)}}return n(new dB[i](l),a)};return o},uB=e=>u0e(new Map,e)(0),Bh="",{toString:p0e}={},{keys:h0e}=Object,n1=e=>{const r=typeof e;if(r!=="object"||!e)return[Db,r];const n=p0e.call(e).slice(8,-1);switch(n){case"Array":return[r1,Bh];case"Object":return[Mb,Bh];case"Date":return[T_,Bh];case"RegExp":return[j_,Bh];case"Map":return[A_,Bh];case"Set":return[D_,Bh];case"DataView":return[r1,n]}return n.includes("Array")?[r1,n]:n.includes("Error")?[sB,n]:[Mb,n]},Nb=([e,r])=>e===Db&&(r==="function"||r==="symbol"),f0e=(e,r,n,o)=>{const a=(l,s)=>{const c=o.push(l)-1;return n.set(s,c),c},i=l=>{if(n.has(l))return n.get(l);let[s,c]=n1(l);switch(s){case Db:{let u=l;switch(c){case"bigint":s=cB,u=l.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);u=null;break;case"undefined":return a([lB],l)}return a([s,u],l)}case r1:{if(c){let f=l;return c==="DataView"?f=new Uint8Array(l.buffer):c==="ArrayBuffer"&&(f=new Uint8Array(l)),a([c,[...f]],l)}const u=[],p=a([s,u],l);for(const f of l)u.push(i(f));return p}case Mb:{if(c)switch(c){case"BigInt":return a([c,l.toString()],l);case"Boolean":case"Number":case"String":return a([c,l.valueOf()],l)}if(r&&"toJSON"in l)return i(l.toJSON());const u=[],p=a([s,u],l);for(const f of h0e(l))(e||!Nb(n1(l[f])))&&u.push([i(f),i(l[f])]);return p}case T_:return a([s,l.toISOString()],l);case j_:{const{source:u,flags:p}=l;return a([s,{source:u,flags:p}],l)}case A_:{const u=[],p=a([s,u],l);for(const[f,g]of l)(e||!(Nb(n1(f))||Nb(n1(g))))&&u.push([i(f),i(g)]);return p}case D_:{const u=[],p=a([s,u],l);for(const f of l)(e||!Nb(n1(f)))&&u.push(i(f));return p}}const{message:d}=l;return a([s,{name:c,message:d}],l)};return i},pB=(e,{json:r,lossy:n}={})=>{const o=[];return f0e(!(r||n),!!r,new Map,o)(e),o},o1=typeof structuredClone=="function"?(e,r)=>r&&("json"in r||"lossy"in r)?uB(pB(e,r)):structuredClone(e):(e,r)=>uB(pB(e,r)),hB=mB("end"),fB=mB("start");function mB(e){return r;function r(n){const o=n&&n.position&&n.position[e]||{};if(typeof o.line=="number"&&o.line>0&&typeof o.column=="number"&&o.column>0)return{line:o.line,column:o.column,offset:typeof o.offset=="number"&&o.offset>-1?o.offset:void 0}}}function gB(e){const r=fB(e),n=hB(e);if(r&&n)return{start:r,end:n}}const Mu=["ariaDescribedBy","ariaLabel","ariaLabelledBy"],M_={ancestors:{tbody:["table"],td:["table"],th:["table"],thead:["table"],tfoot:["table"],tr:["table"]},attributes:{a:[...Mu,"dataFootnoteBackref","dataFootnoteRef",["className","data-footnote-backref"],"href"],blockquote:["cite"],code:[["className",/^language-./]],del:["cite"],div:["itemScope","itemType"],dl:[...Mu],h2:[["className","sr-only"]],img:[...Mu,"longDesc","src"],input:[["disabled",!0],["type","checkbox"]],ins:["cite"],li:[["className","task-list-item"]],ol:[...Mu,["className","contains-task-list"]],q:["cite"],section:["dataFootnotes",["className","footnotes"]],source:["srcSet"],summary:[...Mu],table:[...Mu],ul:[...Mu,["className","contains-task-list"]],"*":["abbr","accept","acceptCharset","accessKey","action","align","alt","axis","border","cellPadding","cellSpacing","char","charOff","charSet","checked","clear","colSpan","color","cols","compact","coords","dateTime","dir","encType","frame","hSpace","headers","height","hrefLang","htmlFor","id","isMap","itemProp","label","lang","maxLength","media","method","multiple","name","noHref","noShade","noWrap","open","prompt","readOnly","rev","rowSpan","rows","rules","scope","selected","shape","size","span","start","summary","tabIndex","title","useMap","vAlign","value","width"]},clobber:["ariaDescribedBy","ariaLabelledBy","id","name"],clobberPrefix:"user-content-",protocols:{cite:["http","https"],href:["http","https","irc","ircs","mailto","xmpp"],longDesc:["http","https"],src:["http","https"]},required:{input:{disabled:!0,type:"checkbox"}},strip:["script"],tagNames:["a","b","blockquote","br","code","dd","del","details","div","dl","dt","em","h1","h2","h3","h4","h5","h6","hr","i","img","input","ins","kbd","li","ol","p","picture","pre","q","rp","rt","ruby","s","samp","section","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","tr","tt","ul","var"]},ed={}.hasOwnProperty;function m0e(e,r){let n={type:"root",children:[]};const o={schema:r?{...M_,...r}:M_,stack:[]},a=yB(o,e);return a&&(Array.isArray(a)?a.length===1?n=a[0]:n.children=a:n=a),n}function yB(e,r){if(r&&typeof r=="object"){const n=r;switch(typeof n.type=="string"?n.type:""){case"comment":return g0e(e,n);case"doctype":return y0e(e,n);case"element":return v0e(e,n);case"root":return b0e(e,n);case"text":return x0e(e,n)}}}function g0e(e,r){if(e.schema.allowComments){const n=typeof r.value=="string"?r.value:"",o=n.indexOf("-->"),i={type:"comment",value:o<0?n:n.slice(0,o)};return a1(i,r),i}}function y0e(e,r){if(e.schema.allowDoctypes){const n={type:"doctype"};return a1(n,r),n}}function v0e(e,r){const n=typeof r.tagName=="string"?r.tagName:"";e.stack.push(n);const o=vB(e,r.children),a=w0e(e,r.properties);e.stack.pop();let i=!1;if(n&&n!=="*"&&(!e.schema.tagNames||e.schema.tagNames.includes(n))&&(i=!0,e.schema.ancestors&&ed.call(e.schema.ancestors,n))){const s=e.schema.ancestors[n];let c=-1;for(i=!1;++c1){let a=!1,i=0;for(;++i-1&&i>c||l>-1&&i>l||s>-1&&i>s)return!0;let d=-1;for(;++d4&&r.slice(0,4).toLowerCase()==="data")return n}function S0e(e){return function(r){return m0e(r,e)}}const E0e=["area","base","basefont","bgsound","br","col","command","embed","frame","hr","image","img","input","keygen","link","meta","param","source","track","wbr"];class i1{constructor(r,n,o){this.normal=n,this.property=r,o&&(this.space=o)}}i1.prototype.normal={},i1.prototype.property={},i1.prototype.space=void 0;function kB(e,r){const n={},o={};for(const a of e)Object.assign(n,a.property),Object.assign(o,a.normal);return new i1(n,o,r)}function N_(e){return e.toLowerCase()}class Jo{constructor(r,n){this.attribute=n,this.property=r}}Jo.prototype.attribute="",Jo.prototype.booleanish=!1,Jo.prototype.boolean=!1,Jo.prototype.commaOrSpaceSeparated=!1,Jo.prototype.commaSeparated=!1,Jo.prototype.defined=!1,Jo.prototype.mustUseProperty=!1,Jo.prototype.number=!1,Jo.prototype.overloadedBoolean=!1,Jo.prototype.property="",Jo.prototype.spaceSeparated=!1,Jo.prototype.space=void 0;let C0e=0;const At=Nu(),bn=Nu(),_B=Nu(),Ie=Nu(),Cr=Nu(),Ih=Nu(),ba=Nu();function Nu(){return 2**++C0e}const P_={__proto__:null,boolean:At,booleanish:bn,commaOrSpaceSeparated:ba,commaSeparated:Ih,number:Ie,overloadedBoolean:_B,spaceSeparated:Cr},B_=Object.keys(P_);class I_ extends Jo{constructor(r,n,o,a){let i=-1;if(super(r,n),SB(this,"space",a),typeof o=="number")for(;++i4&&n.slice(0,4)==="data"&&T0e.test(r)){if(r.charAt(4)==="-"){const i=r.slice(5).replace(jB,D0e);o="data"+i.charAt(0).toUpperCase()+i.slice(1)}else{const i=r.slice(4);if(!jB.test(i)){let l=i.replace(R0e,A0e);l.charAt(0)!=="-"&&(l="-"+l),r="data"+l}}a=I_}return new a(o,r)}function A0e(e){return"-"+e.toLowerCase()}function D0e(e){return e.charAt(1).toUpperCase()}const M0e=kB([EB,$0e,zB,RB,TB],"html"),AB=kB([EB,z0e,zB,RB,TB],"svg"),DB={}.hasOwnProperty;function N0e(e,r){const n=r||{};function o(a,...i){let l=o.invalid;const s=o.handlers;if(a&&DB.call(a,e)){const c=String(a[e]);l=DB.call(s,c)?s[c]:o.unknown}if(l)return l.call(this,a,...i)}return o.handlers=n.handlers||{},o.invalid=n.invalid,o.unknown=n.unknown,o}const P0e=/["&'<>`]/g,B0e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,I0e=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,O0e=/[|\\{}()[\]^$+*?.]/g,MB=new WeakMap;function L0e(e,r){if(e=e.replace(r.subset?F0e(r.subset):P0e,o),r.subset||r.escapeOnly)return e;return e.replace(B0e,n).replace(I0e,o);function n(a,i,l){return r.format((a.charCodeAt(0)-55296)*1024+a.charCodeAt(1)-56320+65536,l.charCodeAt(i+2),r)}function o(a,i,l){return r.format(a.charCodeAt(0),l.charCodeAt(i+1),r)}}function F0e(e){let r=MB.get(e);return r||(r=V0e(e),MB.set(e,r)),r}function V0e(e){const r=[];let n=-1;for(;++n",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",permil:"‰",lsaquo:"‹",rsaquo:"›",euro:"€"},Y0e=["cent","copy","divide","gt","lt","not","para","times"],NB={}.hasOwnProperty,L_={};let Pb;for(Pb in O_)NB.call(O_,Pb)&&(L_[O_[Pb]]=Pb);const X0e=/[^\dA-Za-z]/;function Z0e(e,r,n,o){const a=String.fromCharCode(e);if(NB.call(L_,a)){const i=L_[a],l="&"+i;return n&&G0e.includes(i)&&!Y0e.includes(i)&&(!o||r&&r!==61&&X0e.test(String.fromCharCode(r)))?l:l+";"}return""}function K0e(e,r,n){let o=H0e(e,r,n.omitOptionalSemicolons),a;if((n.useNamedReferences||n.useShortestReferences)&&(a=Z0e(e,r,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!a)&&n.useShortestReferences){const i=W0e(e,r,n.omitOptionalSemicolons);i.length|^->||--!>|"],eve=["<",">"];function tve(e,r,n,o){return o.settings.bogusComments?"":"";function a(i){return Lh(i,Object.assign({},o.settings.characterReferences,{subset:eve}))}}function rve(e,r,n,o){return""}function Bb(e,r){const n=String(e);if(typeof r!="string")throw new TypeError("Expected character");let o=0,a=n.indexOf(r);for(;a!==-1;)o++,a=n.indexOf(r,a+r.length);return o}function nve(e,r){const n=r||{};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}function ove(e){return e.join(" ").trim()}const ave=/[ \t\n\f\r]/g;function F_(e){return typeof e=="object"?e.type==="text"?PB(e.value):!1:PB(e)}function PB(e){return e.replace(ave,"")===""}const On=IB(1),BB=IB(-1),ive=[];function IB(e){return r;function r(n,o,a){const i=n?n.children:ive;let l=(o||0)+e,s=i[l];if(!a)for(;s&&F_(s);)l+=e,s=i[l];return s}}const lve={}.hasOwnProperty;function OB(e){return r;function r(n,o,a){return lve.call(e,n.tagName)&&e[n.tagName](n,o,a)}}const V_=OB({body:cve,caption:q_,colgroup:q_,dd:hve,dt:pve,head:q_,html:sve,li:uve,optgroup:fve,option:mve,p:dve,rp:LB,rt:LB,tbody:yve,td:FB,tfoot:vve,th:FB,thead:gve,tr:bve});function q_(e,r,n){const o=On(n,r,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&F_(o.value.charAt(0)))}function sve(e,r,n){const o=On(n,r);return!o||o.type!=="comment"}function cve(e,r,n){const o=On(n,r);return!o||o.type!=="comment"}function dve(e,r,n){const o=On(n,r);return o?o.type==="element"&&(o.tagName==="address"||o.tagName==="article"||o.tagName==="aside"||o.tagName==="blockquote"||o.tagName==="details"||o.tagName==="div"||o.tagName==="dl"||o.tagName==="fieldset"||o.tagName==="figcaption"||o.tagName==="figure"||o.tagName==="footer"||o.tagName==="form"||o.tagName==="h1"||o.tagName==="h2"||o.tagName==="h3"||o.tagName==="h4"||o.tagName==="h5"||o.tagName==="h6"||o.tagName==="header"||o.tagName==="hgroup"||o.tagName==="hr"||o.tagName==="main"||o.tagName==="menu"||o.tagName==="nav"||o.tagName==="ol"||o.tagName==="p"||o.tagName==="pre"||o.tagName==="section"||o.tagName==="table"||o.tagName==="ul"):!n||!(n.type==="element"&&(n.tagName==="a"||n.tagName==="audio"||n.tagName==="del"||n.tagName==="ins"||n.tagName==="map"||n.tagName==="noscript"||n.tagName==="video"))}function uve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="li"}function pve(e,r,n){const o=On(n,r);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function hve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function LB(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function fve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="optgroup"}function mve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function gve(e,r,n){const o=On(n,r);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function yve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function vve(e,r,n){return!On(n,r)}function bve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="tr"}function FB(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}const xve=OB({body:_ve,colgroup:Sve,head:kve,html:wve,tbody:Eve});function wve(e){const r=On(e,-1);return!r||r.type!=="comment"}function kve(e){const r=new Set;for(const o of e.children)if(o.type==="element"&&(o.tagName==="base"||o.tagName==="title")){if(r.has(o.tagName))return!1;r.add(o.tagName)}const n=e.children[0];return!n||n.type==="element"}function _ve(e){const r=On(e,-1,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&F_(r.value.charAt(0)))&&!(r.type==="element"&&(r.tagName==="meta"||r.tagName==="link"||r.tagName==="script"||r.tagName==="style"||r.tagName==="template"))}function Sve(e,r,n){const o=BB(n,r),a=On(e,-1,!0);return n&&o&&o.type==="element"&&o.tagName==="colgroup"&&V_(o,n.children.indexOf(o),n)?!1:!!(a&&a.type==="element"&&a.tagName==="col")}function Eve(e,r,n){const o=BB(n,r),a=On(e,-1);return n&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&V_(o,n.children.indexOf(o),n)?!1:!!(a&&a.type==="element"&&a.tagName==="tr")}const Ib={name:[[` +function Lge(e,r){for(var n=0;no[a]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}function LN(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var X6={exports:{}},Xg={};var FN;function Fge(){if(FN)return Xg;FN=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function n(o,a,i){var l=null;if(i!==void 0&&(l=""+i),a.key!==void 0&&(l=""+a.key),"key"in a){i={};for(var s in a)s!=="key"&&(i[s]=a[s])}else i=a;return a=i.ref,{$$typeof:e,type:o,key:l,ref:a!==void 0?a:null,props:i}}return Xg.Fragment=r,Xg.jsx=n,Xg.jsxs=n,Xg}var VN;function Vge(){return VN||(VN=1,X6.exports=Fge()),X6.exports}var y=Vge(),Z6={exports:{}},$t={};var qN;function qge(){if(qN)return $t;qN=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),i=Symbol.for("react.consumer"),l=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),u=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),f=Symbol.iterator;function g(Y){return Y===null||typeof Y!="object"?null:(Y=f&&Y[f]||Y["@@iterator"],typeof Y=="function"?Y:null)}var v={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},w=Object.assign,x={};function k(Y,Z,O){this.props=Y,this.context=Z,this.refs=x,this.updater=O||v}k.prototype.isReactComponent={},k.prototype.setState=function(Y,Z){if(typeof Y!="object"&&typeof Y!="function"&&Y!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,Y,Z,"setState")},k.prototype.forceUpdate=function(Y){this.updater.enqueueForceUpdate(this,Y,"forceUpdate")};function C(){}C.prototype=k.prototype;function _(Y,Z,O){this.props=Y,this.context=Z,this.refs=x,this.updater=O||v}var $=_.prototype=new C;$.constructor=_,w($,k.prototype),$.isPureReactComponent=!0;var R=Array.isArray;function T(){}var A={H:null,A:null,T:null,S:null},z=Object.prototype.hasOwnProperty;function j(Y,Z,O){var W=O.ref;return{$$typeof:e,type:Y,key:Z,ref:W!==void 0?W:null,props:O}}function I(Y,Z){return j(Y.type,Z,Y.props)}function P(Y){return typeof Y=="object"&&Y!==null&&Y.$$typeof===e}function L(Y){var Z={"=":"=0",":":"=2"};return"$"+Y.replace(/[=:]/g,function(O){return Z[O]})}var H=/\/+/g;function M(Y,Z){return typeof Y=="object"&&Y!==null&&Y.key!=null?L(""+Y.key):Z.toString(36)}function V(Y){switch(Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason;default:switch(typeof Y.status=="string"?Y.then(T,T):(Y.status="pending",Y.then(function(Z){Y.status==="pending"&&(Y.status="fulfilled",Y.value=Z)},function(Z){Y.status==="pending"&&(Y.status="rejected",Y.reason=Z)})),Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason}}throw Y}function B(Y,Z,O,W,K){var Q=typeof Y;(Q==="undefined"||Q==="boolean")&&(Y=null);var ae=!1;if(Y===null)ae=!0;else switch(Q){case"bigint":case"string":case"number":ae=!0;break;case"object":switch(Y.$$typeof){case e:case r:ae=!0;break;case u:return ae=Y._init,B(ae(Y._payload),Z,O,W,K)}}if(ae)return K=K(Y),ae=W===""?"."+M(Y,0):W,R(K)?(O="",ae!=null&&(O=ae.replace(H,"$&/")+"/"),B(K,Z,O,"",function(ue){return ue})):K!=null&&(P(K)&&(K=I(K,O+(K.key==null||Y&&Y.key===K.key?"":(""+K.key).replace(H,"$&/")+"/")+ae)),Z.push(K)),1;ae=0;var te=W===""?".":W+":";if(R(Y))for(var re=0;re"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(r){console.error(r)}}return e(),Q6.exports=Hge(),Q6.exports}var Vi=GN();const YN=LN(Vi);function ir(e,r,n){const o=typeof r=="symbol"?r:Symbol.for(r);return e.hasOwnProperty(o)||Object.defineProperty(e,o,{enumerable:!1,writable:!1,value:n()}),e[o]}function J6(e){if(e===null||typeof e!="object")return!1;const r=Object.getPrototypeOf(e);return r!==null&&r!==Object.prototype&&Object.getPrototypeOf(r)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function e_(e,r,n=".",o){if(!J6(r))return e_(e,{},n);const a=Object.assign({},r);for(const i in e){if(i==="__proto__"||i==="constructor")continue;const l=e[i];l!=null&&(Array.isArray(l)&&Array.isArray(a[i])?a[i]=[...l,...a[i]]:J6(l)&&J6(a[i])?a[i]=e_(l,a[i],(n?`${n}.`:"")+i.toString()):a[i]=l)}return a}function Uge(e){return(...r)=>r.reduce((n,o)=>e_(n,o,""),{})}const XN=Uge();function Wge(e,r,n){let o=a=>e(a,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function io(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return Wge(e,r,n);throw Error("Wrong number of arguments")}function Ll(...e){return io(Gge,e)}const Gge=(e,r)=>e.length>=r;function mt(e,r){if(typeof e>"u"||e==null){const n=typeof r=="function"?r():r;throw new Error(n??`Expected defined value, but received ${e}`)}return e}function He(e,r){if(!e)throw new Error(r??"Invariant failed")}function Qo(e){throw new Error(`NonExhaustive value: ${e}`)}function Yge(...e){return io(Xge,e)}function Xge(e,r){let n={};for(let[o,a]of e.entries())n[a]=r(a,o,e);return n}function yb(...e){return io(Zg,e)}function Zg(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(r))return!1;if(Array.isArray(e))return Zge(e,r);if(e instanceof Map)return Kge(e,r);if(e instanceof Set)return Qge(e,r);if(e instanceof Date)return e.getTime()===r.getTime();if(e instanceof RegExp)return e.toString()===r.toString();if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let[n,o]of Object.entries(e))if(!(n in r)||!Zg(o,r[n]))return!1;return!0}function Zge(e,r){if(e.length!==r.length)return!1;for(let[n,o]of e.entries())if(!Zg(o,r[n]))return!1;return!0}function Kge(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e.entries())if(!r.has(n)||!Zg(o,r.get(n)))return!1;return!0}function Qge(e,r){if(e.size!==r.size)return!1;let n=[...r];for(let o of e){let a=!1;for(let[i,l]of n.entries())if(Zg(o,l)){a=!0,n.splice(i,1);break}if(!a)return!1}return!0}const{min:Jge,max:e1e}=Math,Au=(e,r=0,n=1)=>Jge(e1e(r,e),n),t_=e=>{e._clipped=!1,e._unclipped=e.slice(0);for(let r=0;r<=3;r++)r<3?((e[r]<0||e[r]>255)&&(e._clipped=!0),e[r]=Au(e[r],0,255)):r===3&&(e[r]=Au(e[r],0,1));return e},ZN={};for(let e of["Boolean","Number","String","Function","Array","Date","RegExp","Undefined","Null"])ZN[`[object ${e}]`]=e.toLowerCase();function Ft(e){return ZN[Object.prototype.toString.call(e)]||"object"}const jt=(e,r=null)=>e.length>=3?Array.prototype.slice.call(e):Ft(e[0])=="object"&&r?r.split("").filter(n=>e[0][n]!==void 0).map(n=>e[0][n]):e[0].slice(0),Rh=e=>{if(e.length<2)return null;const r=e.length-1;return Ft(e[r])=="string"?e[r].toLowerCase():null},{PI:vb,min:KN,max:QN}=Math,Za=e=>Math.round(e*100)/100,r_=e=>Math.round(e*100)/100,As=vb*2,n_=vb/3,t1e=vb/180,r1e=180/vb;function JN(e){return[...e.slice(0,3).reverse(),...e.slice(3)]}const Rt={format:{},autodetect:[]};let Ne=class{constructor(...r){const n=this;if(Ft(r[0])==="object"&&r[0].constructor&&r[0].constructor===this.constructor)return r[0];let o=Rh(r),a=!1;if(!o){a=!0,Rt.sorted||(Rt.autodetect=Rt.autodetect.sort((i,l)=>l.p-i.p),Rt.sorted=!0);for(let i of Rt.autodetect)if(o=i.test(...r),o)break}if(Rt.format[o]){const i=Rt.format[o].apply(null,a?r:r.slice(0,-1));n._rgb=t_(i)}else throw new Error("unknown format: "+r);n._rgb.length===3&&n._rgb.push(1)}toString(){return Ft(this.hex)=="function"?this.hex():`[${this._rgb.join(",")}]`}};const n1e="3.2.0",zt=(...e)=>new Ne(...e);zt.version=n1e;const zh={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",laserlemon:"#ffff54",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrod:"#fafad2",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",maroon2:"#7f0000",maroon3:"#b03060",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",purple2:"#7f007f",purple3:"#a020f0",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o1e=/^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,a1e=/^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/,eP=e=>{if(e.match(o1e)){(e.length===4||e.length===7)&&(e=e.substr(1)),e.length===3&&(e=e.split(""),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);const r=parseInt(e,16),n=r>>16,o=r>>8&255,a=r&255;return[n,o,a,1]}if(e.match(a1e)){(e.length===5||e.length===9)&&(e=e.substr(1)),e.length===4&&(e=e.split(""),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);const r=parseInt(e,16),n=r>>24&255,o=r>>16&255,a=r>>8&255,i=Math.round((r&255)/255*100)/100;return[n,o,a,i]}throw new Error(`unknown hex color: ${e}`)},{round:bb}=Math,tP=(...e)=>{let[r,n,o,a]=jt(e,"rgba"),i=Rh(e)||"auto";a===void 0&&(a=1),i==="auto"&&(i=a<1?"rgba":"rgb"),r=bb(r),n=bb(n),o=bb(o);let s="000000"+(r<<16|n<<8|o).toString(16);s=s.substr(s.length-6);let c="0"+bb(a*255).toString(16);switch(c=c.substr(c.length-2),i.toLowerCase()){case"rgba":return`#${s}${c}`;case"argb":return`#${c}${s}`;default:return`#${s}`}};Ne.prototype.name=function(){const e=tP(this._rgb,"rgb");for(let r of Object.keys(zh))if(zh[r]===e)return r.toLowerCase();return e},Rt.format.named=e=>{if(e=e.toLowerCase(),zh[e])return eP(zh[e]);throw new Error("unknown color name: "+e)},Rt.autodetect.push({p:5,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&zh[e.toLowerCase()])return"named"}}),Ne.prototype.alpha=function(e,r=!1){return e!==void 0&&Ft(e)==="number"?r?(this._rgb[3]=e,this):new Ne([this._rgb[0],this._rgb[1],this._rgb[2],e],"rgb"):this._rgb[3]},Ne.prototype.clipped=function(){return this._rgb._clipped||!1};const Fl={Kn:18,labWhitePoint:"d65",Xn:.95047,Yn:1,Zn:1.08883,kE:216/24389,kKE:8,kK:24389/27,RefWhiteRGB:{X:.95047,Y:1,Z:1.08883},MtxRGB2XYZ:{m00:.4124564390896922,m01:.21267285140562253,m02:.0193338955823293,m10:.357576077643909,m11:.715152155287818,m12:.11919202588130297,m20:.18043748326639894,m21:.07217499330655958,m22:.9503040785363679},MtxXYZ2RGB:{m00:3.2404541621141045,m01:-.9692660305051868,m02:.055643430959114726,m10:-1.5371385127977166,m11:1.8760108454466942,m12:-.2040259135167538,m20:-.498531409556016,m21:.041556017530349834,m22:1.0572251882231791},As:.9414285350000001,Bs:1.040417467,Cs:1.089532651,MtxAdaptMa:{m00:.8951,m01:-.7502,m02:.0389,m10:.2664,m11:1.7135,m12:-.0685,m20:-.1614,m21:.0367,m22:1.0296},MtxAdaptMaI:{m00:.9869929054667123,m01:.43230526972339456,m02:-.008528664575177328,m10:-.14705425642099013,m11:.5183602715367776,m12:.04004282165408487,m20:.15996265166373125,m21:.0492912282128556,m22:.9684866957875502}},i1e=new Map([["a",[1.0985,.35585]],["b",[1.0985,.35585]],["c",[.98074,1.18232]],["d50",[.96422,.82521]],["d55",[.95682,.92149]],["d65",[.95047,1.08883]],["e",[1,1,1]],["f2",[.99186,.67393]],["f7",[.95041,1.08747]],["f11",[1.00962,.6435]],["icc",[.96422,.82521]]]);function Ds(e){const r=i1e.get(String(e).toLowerCase());if(!r)throw new Error("unknown Lab illuminant "+e);Fl.labWhitePoint=e,Fl.Xn=r[0],Fl.Zn=r[1]}function Kg(){return Fl.labWhitePoint}const o_=(...e)=>{e=jt(e,"lab");const[r,n,o]=e,[a,i,l]=l1e(r,n,o),[s,c,d]=rP(a,i,l);return[s,c,d,e.length>3?e[3]:1]},l1e=(e,r,n)=>{const{kE:o,kK:a,kKE:i,Xn:l,Yn:s,Zn:c}=Fl,d=(e+16)/116,u=.002*r+d,p=d-.005*n,f=u*u*u,g=p*p*p,v=f>o?f:(116*u-16)/a,w=e>i?Math.pow((e+16)/116,3):e/a,x=g>o?g:(116*p-16)/a,k=v*l,C=w*s,_=x*c;return[k,C,_]},a_=e=>{const r=Math.sign(e);return e=Math.abs(e),(e<=.0031308?e*12.92:1.055*Math.pow(e,1/2.4)-.055)*r},rP=(e,r,n)=>{const{MtxAdaptMa:o,MtxAdaptMaI:a,MtxXYZ2RGB:i,RefWhiteRGB:l,Xn:s,Yn:c,Zn:d}=Fl,u=s*o.m00+c*o.m10+d*o.m20,p=s*o.m01+c*o.m11+d*o.m21,f=s*o.m02+c*o.m12+d*o.m22,g=l.X*o.m00+l.Y*o.m10+l.Z*o.m20,v=l.X*o.m01+l.Y*o.m11+l.Z*o.m21,w=l.X*o.m02+l.Y*o.m12+l.Z*o.m22,x=(e*o.m00+r*o.m10+n*o.m20)*(g/u),k=(e*o.m01+r*o.m11+n*o.m21)*(v/p),C=(e*o.m02+r*o.m12+n*o.m22)*(w/f),_=x*a.m00+k*a.m10+C*a.m20,$=x*a.m01+k*a.m11+C*a.m21,R=x*a.m02+k*a.m12+C*a.m22,T=a_(_*i.m00+$*i.m10+R*i.m20),A=a_(_*i.m01+$*i.m11+R*i.m21),z=a_(_*i.m02+$*i.m12+R*i.m22);return[T*255,A*255,z*255]},i_=(...e)=>{const[r,n,o,...a]=jt(e,"rgb"),[i,l,s]=nP(r,n,o),[c,d,u]=s1e(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]};function s1e(e,r,n){const{Xn:o,Yn:a,Zn:i,kE:l,kK:s}=Fl,c=e/o,d=r/a,u=n/i,p=c>l?Math.pow(c,1/3):(s*c+16)/116,f=d>l?Math.pow(d,1/3):(s*d+16)/116,g=u>l?Math.pow(u,1/3):(s*u+16)/116;return[116*f-16,500*(p-f),200*(f-g)]}function l_(e){const r=Math.sign(e);return e=Math.abs(e),(e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4))*r}const nP=(e,r,n)=>{e=l_(e/255),r=l_(r/255),n=l_(n/255);const{MtxRGB2XYZ:o,MtxAdaptMa:a,MtxAdaptMaI:i,Xn:l,Yn:s,Zn:c,As:d,Bs:u,Cs:p}=Fl;let f=e*o.m00+r*o.m10+n*o.m20,g=e*o.m01+r*o.m11+n*o.m21,v=e*o.m02+r*o.m12+n*o.m22;const w=l*a.m00+s*a.m10+c*a.m20,x=l*a.m01+s*a.m11+c*a.m21,k=l*a.m02+s*a.m12+c*a.m22;let C=f*a.m00+g*a.m10+v*a.m20,_=f*a.m01+g*a.m11+v*a.m21,$=f*a.m02+g*a.m12+v*a.m22;return C*=w/d,_*=x/u,$*=k/p,f=C*i.m00+_*i.m10+$*i.m20,g=C*i.m01+_*i.m11+$*i.m21,v=C*i.m02+_*i.m12+$*i.m22,[f,g,v]};Ne.prototype.lab=function(){return i_(this._rgb)},Object.assign(zt,{lab:(...e)=>new Ne(...e,"lab"),getLabWhitePoint:Kg,setLabWhitePoint:Ds}),Rt.format.lab=o_,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"lab"),Ft(e)==="array"&&e.length===3)return"lab"}}),Ne.prototype.darken=function(e=1){const r=this,n=r.lab();return n[0]-=Fl.Kn*e,new Ne(n,"lab").alpha(r.alpha(),!0)},Ne.prototype.brighten=function(e=1){return this.darken(-e)},Ne.prototype.darker=Ne.prototype.darken,Ne.prototype.brighter=Ne.prototype.brighten,Ne.prototype.get=function(e){const[r,n]=e.split("."),o=this[r]();if(n){const a=r.indexOf(n)-(r.substr(0,2)==="ok"?2:0);if(a>-1)return o[a];throw new Error(`unknown channel ${n} in mode ${r}`)}else return o};const{pow:c1e}=Math,d1e=1e-7,u1e=20;Ne.prototype.luminance=function(e,r="rgb"){if(e!==void 0&&Ft(e)==="number"){if(e===0)return new Ne([0,0,0,this._rgb[3]],"rgb");if(e===1)return new Ne([255,255,255,this._rgb[3]],"rgb");let n=this.luminance(),o=u1e;const a=(l,s)=>{const c=l.interpolate(s,.5,r),d=c.luminance();return Math.abs(e-d)e?a(l,c):a(c,s)},i=(n>e?a(new Ne([0,0,0]),this):a(this,new Ne([255,255,255]))).rgb();return new Ne([...i,this._rgb[3]])}return p1e(...this._rgb.slice(0,3))};const p1e=(e,r,n)=>(e=s_(e),r=s_(r),n=s_(n),.2126*e+.7152*r+.0722*n),s_=e=>(e/=255,e<=.03928?e/12.92:c1e((e+.055)/1.055,2.4)),bo={},Th=(e,r,n=.5,...o)=>{let a=o[0]||"lrgb";if(!bo[a]&&!o.length&&(a=Object.keys(bo)[0]),!bo[a])throw new Error(`interpolation mode ${a} is not defined`);return Ft(e)!=="object"&&(e=new Ne(e)),Ft(r)!=="object"&&(r=new Ne(r)),bo[a](e,r,n).alpha(e.alpha()+n*(r.alpha()-e.alpha()))};Ne.prototype.mix=Ne.prototype.interpolate=function(e,r=.5,...n){return Th(this,e,r,...n)},Ne.prototype.premultiply=function(e=!1){const r=this._rgb,n=r[3];return e?(this._rgb=[r[0]*n,r[1]*n,r[2]*n,n],this):new Ne([r[0]*n,r[1]*n,r[2]*n,n],"rgb")};const{sin:h1e,cos:f1e}=Math,oP=(...e)=>{let[r,n,o]=jt(e,"lch");return isNaN(o)&&(o=0),o=o*t1e,[r,f1e(o)*n,h1e(o)*n]},c_=(...e)=>{e=jt(e,"lch");const[r,n,o]=e,[a,i,l]=oP(r,n,o),[s,c,d]=o_(a,i,l);return[s,c,d,e.length>3?e[3]:1]},m1e=(...e)=>{const r=JN(jt(e,"hcl"));return c_(...r)},{sqrt:g1e,atan2:y1e,round:v1e}=Math,aP=(...e)=>{const[r,n,o]=jt(e,"lab"),a=g1e(n*n+o*o);let i=(y1e(o,n)*r1e+360)%360;return v1e(a*1e4)===0&&(i=Number.NaN),[r,a,i]},d_=(...e)=>{const[r,n,o,...a]=jt(e,"rgb"),[i,l,s]=i_(r,n,o),[c,d,u]=aP(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]};Ne.prototype.lch=function(){return d_(this._rgb)},Ne.prototype.hcl=function(){return JN(d_(this._rgb))},Object.assign(zt,{lch:(...e)=>new Ne(...e,"lch"),hcl:(...e)=>new Ne(...e,"hcl")}),Rt.format.lch=c_,Rt.format.hcl=m1e,["lch","hcl"].forEach(e=>Rt.autodetect.push({p:2,test:(...r)=>{if(r=jt(r,e),Ft(r)==="array"&&r.length===3)return e}})),Ne.prototype.saturate=function(e=1){const r=this,n=r.lch();return n[1]+=Fl.Kn*e,n[1]<0&&(n[1]=0),new Ne(n,"lch").alpha(r.alpha(),!0)},Ne.prototype.desaturate=function(e=1){return this.saturate(-e)},Ne.prototype.set=function(e,r,n=!1){const[o,a]=e.split("."),i=this[o]();if(a){const l=o.indexOf(a)-(o.substr(0,2)==="ok"?2:0);if(l>-1){if(Ft(r)=="string")switch(r.charAt(0)){case"+":i[l]+=+r;break;case"-":i[l]+=+r;break;case"*":i[l]*=+r.substr(1);break;case"/":i[l]/=+r.substr(1);break;default:i[l]=+r}else if(Ft(r)==="number")i[l]=r;else throw new Error("unsupported value for Color.set");const s=new Ne(i,o);return n?(this._rgb=s._rgb,this):s}throw new Error(`unknown channel ${a} in mode ${o}`)}else return i},Ne.prototype.tint=function(e=.5,...r){return Th(this,"white",e,...r)},Ne.prototype.shade=function(e=.5,...r){return Th(this,"black",e,...r)};const b1e=(e,r,n)=>{const o=e._rgb,a=r._rgb;return new Ne(o[0]+n*(a[0]-o[0]),o[1]+n*(a[1]-o[1]),o[2]+n*(a[2]-o[2]),"rgb")};bo.rgb=b1e;const{sqrt:u_,pow:jh}=Math,x1e=(e,r,n)=>{const[o,a,i]=e._rgb,[l,s,c]=r._rgb;return new Ne(u_(jh(o,2)*(1-n)+jh(l,2)*n),u_(jh(a,2)*(1-n)+jh(s,2)*n),u_(jh(i,2)*(1-n)+jh(c,2)*n),"rgb")};bo.lrgb=x1e;const w1e=(e,r,n)=>{const o=e.lab(),a=r.lab();return new Ne(o[0]+n*(a[0]-o[0]),o[1]+n*(a[1]-o[1]),o[2]+n*(a[2]-o[2]),"lab")};bo.lab=w1e;const Ah=(e,r,n,o)=>{let a,i;o==="hsl"?(a=e.hsl(),i=r.hsl()):o==="hsv"?(a=e.hsv(),i=r.hsv()):o==="hcg"?(a=e.hcg(),i=r.hcg()):o==="hsi"?(a=e.hsi(),i=r.hsi()):o==="lch"||o==="hcl"?(o="hcl",a=e.hcl(),i=r.hcl()):o==="oklch"&&(a=e.oklch().reverse(),i=r.oklch().reverse());let l,s,c,d,u,p;(o.substr(0,1)==="h"||o==="oklch")&&([l,c,u]=a,[s,d,p]=i);let f,g,v,w;return!isNaN(l)&&!isNaN(s)?(s>l&&s-l>180?w=s-(l+360):s180?w=s+360-l:w=s-l,g=l+n*w):isNaN(l)?isNaN(s)?g=Number.NaN:(g=s,(u==1||u==0)&&o!="hsv"&&(f=d)):(g=l,(p==1||p==0)&&o!="hsv"&&(f=c)),f===void 0&&(f=c+n*(d-c)),v=u+n*(p-u),o==="oklch"?new Ne([v,f,g],o):new Ne([g,f,v],o)},iP=(e,r,n)=>Ah(e,r,n,"lch");bo.lch=iP,bo.hcl=iP;const k1e=e=>{if(Ft(e)=="number"&&e>=0&&e<=16777215){const r=e>>16,n=e>>8&255,o=e&255;return[r,n,o,1]}throw new Error("unknown num color: "+e)},_1e=(...e)=>{const[r,n,o]=jt(e,"rgb");return(r<<16)+(n<<8)+o};Ne.prototype.num=function(){return _1e(this._rgb)},Object.assign(zt,{num:(...e)=>new Ne(...e,"num")}),Rt.format.num=k1e,Rt.autodetect.push({p:5,test:(...e)=>{if(e.length===1&&Ft(e[0])==="number"&&e[0]>=0&&e[0]<=16777215)return"num"}});const S1e=(e,r,n)=>{const o=e.num(),a=r.num();return new Ne(o+n*(a-o),"num")};bo.num=S1e;const{floor:E1e}=Math,C1e=(...e)=>{e=jt(e,"hcg");let[r,n,o]=e,a,i,l;o=o*255;const s=n*255;if(n===0)a=i=l=o;else{r===360&&(r=0),r>360&&(r-=360),r<0&&(r+=360),r/=60;const c=E1e(r),d=r-c,u=o*(1-n),p=u+s*(1-d),f=u+s*d,g=u+s;switch(c){case 0:[a,i,l]=[g,f,u];break;case 1:[a,i,l]=[p,g,u];break;case 2:[a,i,l]=[u,g,f];break;case 3:[a,i,l]=[u,p,g];break;case 4:[a,i,l]=[f,u,g];break;case 5:[a,i,l]=[g,u,p];break}}return[a,i,l,e.length>3?e[3]:1]},$1e=(...e)=>{const[r,n,o]=jt(e,"rgb"),a=KN(r,n,o),i=QN(r,n,o),l=i-a,s=l*100/255,c=a/(255-l)*100;let d;return l===0?d=Number.NaN:(r===i&&(d=(n-o)/l),n===i&&(d=2+(o-r)/l),o===i&&(d=4+(r-n)/l),d*=60,d<0&&(d+=360)),[d,s,c]};Ne.prototype.hcg=function(){return $1e(this._rgb)};const R1e=(...e)=>new Ne(...e,"hcg");zt.hcg=R1e,Rt.format.hcg=C1e,Rt.autodetect.push({p:1,test:(...e)=>{if(e=jt(e,"hcg"),Ft(e)==="array"&&e.length===3)return"hcg"}});const z1e=(e,r,n)=>Ah(e,r,n,"hcg");bo.hcg=z1e;const{cos:Dh}=Math,T1e=(...e)=>{e=jt(e,"hsi");let[r,n,o]=e,a,i,l;return isNaN(r)&&(r=0),isNaN(n)&&(n=0),r>360&&(r-=360),r<0&&(r+=360),r/=360,r<1/3?(l=(1-n)/3,a=(1+n*Dh(As*r)/Dh(n_-As*r))/3,i=1-(l+a)):r<2/3?(r-=1/3,a=(1-n)/3,i=(1+n*Dh(As*r)/Dh(n_-As*r))/3,l=1-(a+i)):(r-=2/3,i=(1-n)/3,l=(1+n*Dh(As*r)/Dh(n_-As*r))/3,a=1-(i+l)),a=Au(o*a*3),i=Au(o*i*3),l=Au(o*l*3),[a*255,i*255,l*255,e.length>3?e[3]:1]},{min:j1e,sqrt:A1e,acos:D1e}=Math,M1e=(...e)=>{let[r,n,o]=jt(e,"rgb");r/=255,n/=255,o/=255;let a;const i=j1e(r,n,o),l=(r+n+o)/3,s=l>0?1-i/l:0;return s===0?a=NaN:(a=(r-n+(r-o))/2,a/=A1e((r-n)*(r-n)+(r-o)*(n-o)),a=D1e(a),o>n&&(a=As-a),a/=As),[a*360,s,l]};Ne.prototype.hsi=function(){return M1e(this._rgb)};const N1e=(...e)=>new Ne(...e,"hsi");zt.hsi=N1e,Rt.format.hsi=T1e,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsi"),Ft(e)==="array"&&e.length===3)return"hsi"}});const P1e=(e,r,n)=>Ah(e,r,n,"hsi");bo.hsi=P1e;const p_=(...e)=>{e=jt(e,"hsl");const[r,n,o]=e;let a,i,l;if(n===0)a=i=l=o*255;else{const s=[0,0,0],c=[0,0,0],d=o<.5?o*(1+n):o+n-o*n,u=2*o-d,p=r/360;s[0]=p+1/3,s[1]=p,s[2]=p-1/3;for(let f=0;f<3;f++)s[f]<0&&(s[f]+=1),s[f]>1&&(s[f]-=1),6*s[f]<1?c[f]=u+(d-u)*6*s[f]:2*s[f]<1?c[f]=d:3*s[f]<2?c[f]=u+(d-u)*(2/3-s[f])*6:c[f]=u;[a,i,l]=[c[0]*255,c[1]*255,c[2]*255]}return e.length>3?[a,i,l,e[3]]:[a,i,l,1]},lP=(...e)=>{e=jt(e,"rgba");let[r,n,o]=e;r/=255,n/=255,o/=255;const a=KN(r,n,o),i=QN(r,n,o),l=(i+a)/2;let s,c;return i===a?(s=0,c=Number.NaN):s=l<.5?(i-a)/(i+a):(i-a)/(2-i-a),r==i?c=(n-o)/(i-a):n==i?c=2+(o-r)/(i-a):o==i&&(c=4+(r-n)/(i-a)),c*=60,c<0&&(c+=360),e.length>3&&e[3]!==void 0?[c,s,l,e[3]]:[c,s,l]};Ne.prototype.hsl=function(){return lP(this._rgb)};const B1e=(...e)=>new Ne(...e,"hsl");zt.hsl=B1e,Rt.format.hsl=p_,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsl"),Ft(e)==="array"&&e.length===3)return"hsl"}});const I1e=(e,r,n)=>Ah(e,r,n,"hsl");bo.hsl=I1e;const{floor:O1e}=Math,L1e=(...e)=>{e=jt(e,"hsv");let[r,n,o]=e,a,i,l;if(o*=255,n===0)a=i=l=o;else{r===360&&(r=0),r>360&&(r-=360),r<0&&(r+=360),r/=60;const s=O1e(r),c=r-s,d=o*(1-n),u=o*(1-n*c),p=o*(1-n*(1-c));switch(s){case 0:[a,i,l]=[o,p,d];break;case 1:[a,i,l]=[u,o,d];break;case 2:[a,i,l]=[d,o,p];break;case 3:[a,i,l]=[d,u,o];break;case 4:[a,i,l]=[p,d,o];break;case 5:[a,i,l]=[o,d,u];break}}return[a,i,l,e.length>3?e[3]:1]},{min:F1e,max:V1e}=Math,q1e=(...e)=>{e=jt(e,"rgb");let[r,n,o]=e;const a=F1e(r,n,o),i=V1e(r,n,o),l=i-a;let s,c,d;return d=i/255,i===0?(s=Number.NaN,c=0):(c=l/i,r===i&&(s=(n-o)/l),n===i&&(s=2+(o-r)/l),o===i&&(s=4+(r-n)/l),s*=60,s<0&&(s+=360)),[s,c,d]};Ne.prototype.hsv=function(){return q1e(this._rgb)};const H1e=(...e)=>new Ne(...e,"hsv");zt.hsv=H1e,Rt.format.hsv=L1e,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsv"),Ft(e)==="array"&&e.length===3)return"hsv"}});const U1e=(e,r,n)=>Ah(e,r,n,"hsv");bo.hsv=U1e;function xb(e,r){let n=e.length;Array.isArray(e[0])||(e=[e]),Array.isArray(r[0])||(r=r.map(l=>[l]));let o=r[0].length,a=r[0].map((l,s)=>r.map(c=>c[s])),i=e.map(l=>a.map(s=>Array.isArray(l)?l.reduce((c,d,u)=>c+d*(s[u]||0),0):s.reduce((c,d)=>c+d*l,0)));return n===1&&(i=i[0]),o===1?i.map(l=>l[0]):i}const h_=(...e)=>{e=jt(e,"lab");const[r,n,o,...a]=e,[i,l,s]=W1e([r,n,o]),[c,d,u]=rP(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]};function W1e(e){var r=[[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],n=[[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]],o=xb(n,e);return xb(r,o.map(a=>a**3))}const f_=(...e)=>{const[r,n,o,...a]=jt(e,"rgb"),i=nP(r,n,o);return[...G1e(i),...a.length>0&&a[0]<1?[a[0]]:[]]};function G1e(e){const r=[[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],n=[[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],o=xb(r,e);return xb(n,o.map(a=>Math.cbrt(a)))}Ne.prototype.oklab=function(){return f_(this._rgb)},Object.assign(zt,{oklab:(...e)=>new Ne(...e,"oklab")}),Rt.format.oklab=h_,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"oklab"),Ft(e)==="array"&&e.length===3)return"oklab"}});const Y1e=(e,r,n)=>{const o=e.oklab(),a=r.oklab();return new Ne(o[0]+n*(a[0]-o[0]),o[1]+n*(a[1]-o[1]),o[2]+n*(a[2]-o[2]),"oklab")};bo.oklab=Y1e;const X1e=(e,r,n)=>Ah(e,r,n,"oklch");bo.oklch=X1e;const{pow:m_,sqrt:g_,PI:y_,cos:sP,sin:cP,atan2:Z1e}=Math,K1e=(e,r="lrgb",n=null)=>{const o=e.length;n||(n=Array.from(new Array(o)).map(()=>1));const a=o/n.reduce(function(p,f){return p+f});if(n.forEach((p,f)=>{n[f]*=a}),e=e.map(p=>new Ne(p)),r==="lrgb")return Q1e(e,n);const i=e.shift(),l=i.get(r),s=[];let c=0,d=0;for(let p=0;p{const g=p.get(r);u+=p.alpha()*n[f+1];for(let v=0;v=360;)f-=360;l[p]=f}else l[p]=l[p]/s[p];return u/=o,new Ne(l,r).alpha(u>.99999?1:u,!0)},Q1e=(e,r)=>{const n=e.length,o=[0,0,0,0];for(let a=0;a.9999999&&(o[3]=1),new Ne(t_(o))},{pow:J1e}=Math;function wb(e){let r="rgb",n=zt("#ccc"),o=0,a=[0,1],i=[0,1],l=[],s=[0,0],c=!1,d=[],u=!1,p=0,f=1,g=!1,v={},w=!0,x=1;const k=function(z){if(z=z||["#fff","#000"],z&&Ft(z)==="string"&&zt.brewer&&zt.brewer[z.toLowerCase()]&&(z=zt.brewer[z.toLowerCase()]),Ft(z)==="array"){z.length===1&&(z=[z[0],z[0]]),z=z.slice(0);for(let j=0;j=c[I];)I++;return I-1}return 0};let _=z=>z,$=z=>z;const R=function(z,j){let I,P;if(j==null&&(j=!1),isNaN(z)||z===null)return n;j?P=z:c&&c.length>2?P=C(z)/(c.length-2):f!==p?P=(z-p)/(f-p):P=1,P=$(P),j||(P=_(P)),x!==1&&(P=J1e(P,x)),P=s[0]+P*(1-s[0]-s[1]),P=Au(P,0,1);const L=Math.floor(P*1e4);if(w&&v[L])I=v[L];else{if(Ft(d)==="array")for(let H=0;H=M&&H===l.length-1){I=d[H];break}if(P>M&&Pv={};k(e);const A=function(z){const j=zt(R(z));return u&&j[u]?j[u]():j};return A.classes=function(z){if(z!=null){if(Ft(z)==="array")c=z,a=[z[0],z[z.length-1]];else{const j=zt.analyze(a);z===0?c=[j.min,j.max]:c=zt.limits(j,"e",z)}return A}return c},A.domain=function(z){if(!arguments.length)return i;i=z.slice(0),p=z[0],f=z[z.length-1],l=[];const j=d.length;if(z.length===j&&p!==f)for(let I of Array.from(z))l.push((I-p)/(f-p));else{for(let I=0;I2){const I=z.map((L,H)=>H/(z.length-1)),P=z.map(L=>(L-p)/(f-p));P.every((L,H)=>I[H]===L)||($=L=>{if(L<=0||L>=1)return L;let H=0;for(;L>=P[H+1];)H++;const M=(L-P[H])/(P[H+1]-P[H]);return I[H]+M*(I[H+1]-I[H])})}}return a=[p,f],A},A.mode=function(z){return arguments.length?(r=z,T(),A):r},A.range=function(z,j){return k(z),A},A.out=function(z){return u=z,A},A.spread=function(z){return arguments.length?(o=z,A):o},A.correctLightness=function(z){return z==null&&(z=!0),g=z,T(),g?_=function(j){const I=R(0,!0).lab()[0],P=R(1,!0).lab()[0],L=I>P;let H=R(j,!0).lab()[0];const M=I+(P-I)*j;let V=H-M,B=0,F=1,q=20;for(;Math.abs(V)>.01&&q-- >0;)(function(){return L&&(V*=-1),V<0?(B=j,j+=(F-j)*.5):(F=j,j+=(B-j)*.5),H=R(j,!0).lab()[0],V=H-M})();return j}:_=j=>j,A},A.padding=function(z){return z!=null?(Ft(z)==="number"&&(z=[z,z]),s=z,A):s},A.colors=function(z,j){arguments.length<2&&(j="hex");let I=[];if(arguments.length===0)I=d.slice(0);else if(z===1)I=[A(.5)];else if(z>1){const P=a[0],L=a[1]-P;I=eye(0,z).map(H=>A(P+H/(z-1)*L))}else{e=[];let P=[];if(c&&c.length>2)for(let L=1,H=c.length,M=1<=H;M?LH;M?L++:L--)P.push((c[L-1]+c[L])*.5);else P=a;I=P.map(L=>A(L))}return zt[j]&&(I=I.map(P=>P[j]())),I},A.cache=function(z){return z!=null?(w=z,A):w},A.gamma=function(z){return z!=null?(x=z,A):x},A.nodata=function(z){return z!=null?(n=zt(z),A):n},A}function eye(e,r,n){let o=[],a=ei;a?l++:l--)o.push(l);return o}const tye=function(e){let r=[1,1];for(let n=1;nnew Ne(i)),e.length===2)[n,o]=e.map(i=>i.lab()),r=function(i){const l=[0,1,2].map(s=>n[s]+i*(o[s]-n[s]));return new Ne(l,"lab")};else if(e.length===3)[n,o,a]=e.map(i=>i.lab()),r=function(i){const l=[0,1,2].map(s=>(1-i)*(1-i)*n[s]+2*(1-i)*i*o[s]+i*i*a[s]);return new Ne(l,"lab")};else if(e.length===4){let i;[n,o,a,i]=e.map(l=>l.lab()),r=function(l){const s=[0,1,2].map(c=>(1-l)*(1-l)*(1-l)*n[c]+3*(1-l)*(1-l)*l*o[c]+3*(1-l)*l*l*a[c]+l*l*l*i[c]);return new Ne(s,"lab")}}else if(e.length>=5){let i,l,s;i=e.map(c=>c.lab()),s=e.length-1,l=tye(s),r=function(c){const d=1-c,u=[0,1,2].map(p=>i.reduce((f,g,v)=>f+l[v]*d**(s-v)*c**v*g[p],0));return new Ne(u,"lab")}}else throw new RangeError("No point in running bezier with only one color.");return r},nye=e=>{const r=rye(e);return r.scale=()=>wb(r),r},{round:dP}=Math;Ne.prototype.rgb=function(e=!0){return e===!1?this._rgb.slice(0,3):this._rgb.slice(0,3).map(dP)},Ne.prototype.rgba=function(e=!0){return this._rgb.slice(0,4).map((r,n)=>n<3?e===!1?r:dP(r):r)},Object.assign(zt,{rgb:(...e)=>new Ne(...e,"rgb")}),Rt.format.rgb=(...e)=>{const r=jt(e,"rgba");return r[3]===void 0&&(r[3]=1),r},Rt.autodetect.push({p:3,test:(...e)=>{if(e=jt(e,"rgba"),Ft(e)==="array"&&(e.length===3||e.length===4&&Ft(e[3])=="number"&&e[3]>=0&&e[3]<=1))return"rgb"}});const qi=(e,r,n)=>{if(!qi[n])throw new Error("unknown blend mode "+n);return qi[n](e,r)},Zc=e=>(r,n)=>{const o=zt(n).rgb(),a=zt(r).rgb();return zt.rgb(e(o,a))},Kc=e=>(r,n)=>{const o=[];return o[0]=e(r[0],n[0]),o[1]=e(r[1],n[1]),o[2]=e(r[2],n[2]),o},oye=e=>e,aye=(e,r)=>e*r/255,iye=(e,r)=>e>r?r:e,lye=(e,r)=>e>r?e:r,sye=(e,r)=>255*(1-(1-e/255)*(1-r/255)),cye=(e,r)=>r<128?2*e*r/255:255*(1-2*(1-e/255)*(1-r/255)),dye=(e,r)=>255*(1-(1-r/255)/(e/255)),uye=(e,r)=>e===255?255:(e=255*(r/255)/(1-e/255),e>255?255:e);qi.normal=Zc(Kc(oye)),qi.multiply=Zc(Kc(aye)),qi.screen=Zc(Kc(sye)),qi.overlay=Zc(Kc(cye)),qi.darken=Zc(Kc(iye)),qi.lighten=Zc(Kc(lye)),qi.dodge=Zc(Kc(uye)),qi.burn=Zc(Kc(dye));const{pow:pye,sin:hye,cos:fye}=Math;function mye(e=300,r=-1.5,n=1,o=1,a=[0,1]){let i=0,l;Ft(a)==="array"?l=a[1]-a[0]:(l=0,a=[a,a]);const s=function(c){const d=As*((e+120)/360+r*c),u=pye(a[0]+l*c,o),f=(i!==0?n[0]+c*i:n)*u*(1-u)/2,g=fye(d),v=hye(d),w=u+f*(-.14861*g+1.78277*v),x=u+f*(-.29227*g-.90649*v),k=u+f*(1.97294*g);return zt(t_([w*255,x*255,k*255,1]))};return s.start=function(c){return c==null?e:(e=c,s)},s.rotations=function(c){return c==null?r:(r=c,s)},s.gamma=function(c){return c==null?o:(o=c,s)},s.hue=function(c){return c==null?n:(n=c,Ft(n)==="array"?(i=n[1]-n[0],i===0&&(n=n[1])):i=0,s)},s.lightness=function(c){return c==null?a:(Ft(c)==="array"?(a=c,l=c[1]-c[0]):(a=[c,c],l=0),s)},s.scale=()=>zt.scale(s),s.hue(n),s}const gye="0123456789abcdef",{floor:yye,random:vye}=Math,bye=(e=vye)=>{let r="#";for(let n=0;n<6;n++)r+=gye.charAt(yye(e()*16));return new Ne(r,"hex")},{log:uP,pow:xye,floor:wye,abs:kye}=Math;function pP(e,r=null){const n={min:Number.MAX_VALUE,max:Number.MAX_VALUE*-1,sum:0,values:[],count:0};return Ft(e)==="object"&&(e=Object.values(e)),e.forEach(o=>{r&&Ft(o)==="object"&&(o=o[r]),o!=null&&!isNaN(o)&&(n.values.push(o),n.sum+=o,on.max&&(n.max=o),n.count+=1)}),n.domain=[n.min,n.max],n.limits=(o,a)=>hP(n,o,a),n}function hP(e,r="equal",n=7){Ft(e)=="array"&&(e=pP(e));const{min:o,max:a}=e,i=e.values.sort((s,c)=>s-c);if(n===1)return[o,a];const l=[];if(r.substr(0,1)==="c"&&(l.push(o),l.push(a)),r.substr(0,1)==="e"){l.push(o);for(let s=1;s 0");const s=Math.LOG10E*uP(o),c=Math.LOG10E*uP(a);l.push(o);for(let d=1;d200&&(p=!1)}const v={};for(let x=0;xx-k),l.push(w[0]);for(let x=1;x{e=new Ne(e),r=new Ne(r);const n=e.luminance(),o=r.luminance();return n>o?(n+.05)/(o+.05):(o+.05)/(n+.05)};const fP=.027,Sye=5e-4,Eye=.1,mP=1.14,kb=.022,gP=1.414,Cye=(e,r)=>{e=new Ne(e),r=new Ne(r),e.alpha()<1&&(e=Th(r,e,e.alpha(),"rgb"));const n=yP(...e.rgb()),o=yP(...r.rgb()),a=n>=kb?n:n+Math.pow(kb-n,gP),i=o>=kb?o:o+Math.pow(kb-o,gP),l=Math.pow(i,.56)-Math.pow(a,.57),s=Math.pow(i,.65)-Math.pow(a,.62),c=Math.abs(i-a)0?c-fP:c+fP)*100};function yP(e,r,n){return .2126729*Math.pow(e/255,2.4)+.7151522*Math.pow(r/255,2.4)+.072175*Math.pow(n/255,2.4)}const{sqrt:Ms,pow:yn,min:$ye,max:Rye,atan2:vP,abs:bP,cos:_b,sin:xP,exp:zye,PI:wP}=Math;function Tye(e,r,n=1,o=1,a=1){var i=function(O){return 360*O/(2*wP)},l=function(O){return 2*wP*O/360};e=new Ne(e),r=new Ne(r);const[s,c,d]=Array.from(e.lab()),[u,p,f]=Array.from(r.lab()),g=(s+u)/2,v=Ms(yn(c,2)+yn(d,2)),w=Ms(yn(p,2)+yn(f,2)),x=(v+w)/2,k=.5*(1-Ms(yn(x,7)/(yn(x,7)+yn(25,7)))),C=c*(1+k),_=p*(1+k),$=Ms(yn(C,2)+yn(d,2)),R=Ms(yn(_,2)+yn(f,2)),T=($+R)/2,A=i(vP(d,C)),z=i(vP(f,_)),j=A>=0?A:A+360,I=z>=0?z:z+360,P=bP(j-I)>180?(j+I+360)/2:(j+I)/2,L=1-.17*_b(l(P-30))+.24*_b(l(2*P))+.32*_b(l(3*P+6))-.2*_b(l(4*P-63));let H=I-j;H=bP(H)<=180?H:I<=j?H+360:H-360,H=2*Ms($*R)*xP(l(H)/2);const M=u-s,V=R-$,B=1+.015*yn(g-50,2)/Ms(20+yn(g-50,2)),F=1+.045*T,q=1+.015*T*L,G=30*zye(-yn((P-275)/25,2)),Y=-(2*Ms(yn(T,7)/(yn(T,7)+yn(25,7))))*xP(2*l(G)),Z=Ms(yn(M/(n*B),2)+yn(V/(o*F),2)+yn(H/(a*q),2)+Y*(V/(o*F))*(H/(a*q)));return Rye(0,$ye(100,Z))}function jye(e,r,n="lab"){e=new Ne(e),r=new Ne(r);const o=e.get(n),a=r.get(n);let i=0;for(let l in o){const s=(o[l]||0)-(a[l]||0);i+=s*s}return Math.sqrt(i)}const Aye=(...e)=>{try{return new Ne(...e),!0}catch{return!1}},Dye={cool(){return wb([zt.hsl(180,1,.9),zt.hsl(250,.7,.4)])},hot(){return wb(["#000","#f00","#ff0","#fff"]).mode("rgb")}},v_={OrRd:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"],PuBu:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"],BuPu:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"],Oranges:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"],BuGn:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"],YlOrBr:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"],YlGn:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"],Reds:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"],RdPu:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"],Greens:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"],YlGnBu:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"],Purples:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"],GnBu:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"],Greys:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"],YlOrRd:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"],PuRd:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"],Blues:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"],PuBuGn:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"],Viridis:["#440154","#482777","#3f4a8a","#31678e","#26838f","#1f9d8a","#6cce5a","#b6de2b","#fee825"],Spectral:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],RdYlGn:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],RdBu:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],PiYG:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],PRGn:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],RdYlBu:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],BrBG:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],RdGy:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],PuOr:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],Set2:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"],Accent:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"],Set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],Set3:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"],Dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],Paired:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"],Pastel2:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"],Pastel1:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},kP=Object.keys(v_),_P=new Map(kP.map(e=>[e.toLowerCase(),e])),Mye=typeof Proxy=="function"?new Proxy(v_,{get(e,r){const n=r.toLowerCase();if(_P.has(n))return e[_P.get(n)]},getOwnPropertyNames(){return Object.getOwnPropertyNames(kP)}}):v_,Nye=(...e)=>{e=jt(e,"cmyk");const[r,n,o,a]=e,i=e.length>4?e[4]:1;return a===1?[0,0,0,i]:[r>=1?0:255*(1-r)*(1-a),n>=1?0:255*(1-n)*(1-a),o>=1?0:255*(1-o)*(1-a),i]},{max:SP}=Math,Pye=(...e)=>{let[r,n,o]=jt(e,"rgb");r=r/255,n=n/255,o=o/255;const a=1-SP(r,SP(n,o)),i=a<1?1/(1-a):0,l=(1-r-a)*i,s=(1-n-a)*i,c=(1-o-a)*i;return[l,s,c,a]};Ne.prototype.cmyk=function(){return Pye(this._rgb)},Object.assign(zt,{cmyk:(...e)=>new Ne(...e,"cmyk")}),Rt.format.cmyk=Nye,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"cmyk"),Ft(e)==="array"&&e.length===4)return"cmyk"}});const Bye=(...e)=>{const r=jt(e,"hsla");let n=Rh(e)||"lsa";return r[0]=Za(r[0]||0)+"deg",r[1]=Za(r[1]*100)+"%",r[2]=Za(r[2]*100)+"%",n==="hsla"||r.length>3&&r[3]<1?(r[3]="/ "+(r.length>3?r[3]:1),n="hsla"):r.length=3,`${n.substr(0,3)}(${r.join(" ")})`},Iye=(...e)=>{const r=jt(e,"lab");let n=Rh(e)||"lab";return r[0]=Za(r[0])+"%",r[1]=Za(r[1]),r[2]=Za(r[2]),n==="laba"||r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`lab(${r.join(" ")})`},Oye=(...e)=>{const r=jt(e,"lch");let n=Rh(e)||"lab";return r[0]=Za(r[0])+"%",r[1]=Za(r[1]),r[2]=isNaN(r[2])?"none":Za(r[2])+"deg",n==="lcha"||r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`lch(${r.join(" ")})`},Lye=(...e)=>{const r=jt(e,"lab");return r[0]=Za(r[0]*100)+"%",r[1]=r_(r[1]),r[2]=r_(r[2]),r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`oklab(${r.join(" ")})`},EP=(...e)=>{const[r,n,o,...a]=jt(e,"rgb"),[i,l,s]=f_(r,n,o),[c,d,u]=aP(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]},Fye=(...e)=>{const r=jt(e,"lch");return r[0]=Za(r[0]*100)+"%",r[1]=r_(r[1]),r[2]=isNaN(r[2])?"none":Za(r[2])+"deg",r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`oklch(${r.join(" ")})`},{round:b_}=Math,Vye=(...e)=>{const r=jt(e,"rgba");let n=Rh(e)||"rgb";if(n.substr(0,3)==="hsl")return Bye(lP(r),n);if(n.substr(0,3)==="lab"){const o=Kg();Ds("d50");const a=Iye(i_(r),n);return Ds(o),a}if(n.substr(0,3)==="lch"){const o=Kg();Ds("d50");const a=Oye(d_(r),n);return Ds(o),a}return n.substr(0,5)==="oklab"?Lye(f_(r)):n.substr(0,5)==="oklch"?Fye(EP(r)):(r[0]=b_(r[0]),r[1]=b_(r[1]),r[2]=b_(r[2]),(n==="rgba"||r.length>3&&r[3]<1)&&(r[3]="/ "+(r.length>3?r[3]:1),n="rgba"),`${n.substr(0,3)}(${r.slice(0,n==="rgb"?3:4).join(" ")})`)},CP=(...e)=>{e=jt(e,"lch");const[r,n,o,...a]=e,[i,l,s]=oP(r,n,o),[c,d,u]=h_(i,l,s);return[c,d,u,...a.length>0&&a[0]<1?[a[0]]:[]]},Ns=/((?:-?\d+)|(?:-?\d+(?:\.\d+)?)%|none)/.source,Hi=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%?)|none)/.source,Sb=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%)|none)/.source,Ka=/\s*/.source,Mh=/\s+/.source,x_=/\s*,\s*/.source,Eb=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)(?:deg)?)|none)/.source,Nh=/\s*(?:\/\s*((?:[01]|[01]?\.\d+)|\d+(?:\.\d+)?%))?/.source,$P=new RegExp("^rgba?\\("+Ka+[Ns,Ns,Ns].join(Mh)+Nh+"\\)$"),RP=new RegExp("^rgb\\("+Ka+[Ns,Ns,Ns].join(x_)+Ka+"\\)$"),zP=new RegExp("^rgba\\("+Ka+[Ns,Ns,Ns,Hi].join(x_)+Ka+"\\)$"),TP=new RegExp("^hsla?\\("+Ka+[Eb,Sb,Sb].join(Mh)+Nh+"\\)$"),jP=new RegExp("^hsl?\\("+Ka+[Eb,Sb,Sb].join(x_)+Ka+"\\)$"),AP=/^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/,DP=new RegExp("^lab\\("+Ka+[Hi,Hi,Hi].join(Mh)+Nh+"\\)$"),MP=new RegExp("^lch\\("+Ka+[Hi,Hi,Eb].join(Mh)+Nh+"\\)$"),NP=new RegExp("^oklab\\("+Ka+[Hi,Hi,Hi].join(Mh)+Nh+"\\)$"),PP=new RegExp("^oklch\\("+Ka+[Hi,Hi,Eb].join(Mh)+Nh+"\\)$"),{round:BP}=Math,Ph=e=>e.map((r,n)=>n<=2?Au(BP(r),0,255):r),vn=(e,r=0,n=100,o=!1)=>(typeof e=="string"&&e.endsWith("%")&&(e=parseFloat(e.substring(0,e.length-1))/100,o?e=r+(e+1)*.5*(n-r):e=r+e*(n-r)),+e),Po=(e,r)=>e==="none"?r:e,w_=e=>{if(e=e.toLowerCase().trim(),e==="transparent")return[0,0,0,0];let r;if(Rt.format.named)try{return Rt.format.named(e)}catch{}if((r=e.match($P))||(r=e.match(RP))){let n=r.slice(1,4);for(let a=0;a<3;a++)n[a]=+vn(Po(n[a],0),0,255);n=Ph(n);const o=r[4]!==void 0?+vn(r[4],0,1):1;return n[3]=o,n}if(r=e.match(zP)){const n=r.slice(1,5);for(let o=0;o<4;o++)n[o]=+vn(n[o],0,255);return n}if((r=e.match(TP))||(r=e.match(jP))){const n=r.slice(1,4);n[0]=+Po(n[0].replace("deg",""),0),n[1]=+vn(Po(n[1],0),0,100)*.01,n[2]=+vn(Po(n[2],0),0,100)*.01;const o=Ph(p_(n)),a=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=a,o}if(r=e.match(AP)){const n=r.slice(1,4);n[1]*=.01,n[2]*=.01;const o=p_(n);for(let a=0;a<3;a++)o[a]=BP(o[a]);return o[3]=+r[4],o}if(r=e.match(DP)){const n=r.slice(1,4);n[0]=vn(Po(n[0],0),0,100),n[1]=vn(Po(n[1],0),-125,125,!0),n[2]=vn(Po(n[2],0),-125,125,!0);const o=Kg();Ds("d50");const a=Ph(o_(n));Ds(o);const i=r[4]!==void 0?+vn(r[4],0,1):1;return a[3]=i,a}if(r=e.match(MP)){const n=r.slice(1,4);n[0]=vn(n[0],0,100),n[1]=vn(Po(n[1],0),0,150,!1),n[2]=+Po(n[2].replace("deg",""),0);const o=Kg();Ds("d50");const a=Ph(c_(n));Ds(o);const i=r[4]!==void 0?+vn(r[4],0,1):1;return a[3]=i,a}if(r=e.match(NP)){const n=r.slice(1,4);n[0]=vn(Po(n[0],0),0,1),n[1]=vn(Po(n[1],0),-.4,.4,!0),n[2]=vn(Po(n[2],0),-.4,.4,!0);const o=Ph(h_(n)),a=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=a,o}if(r=e.match(PP)){const n=r.slice(1,4);n[0]=vn(Po(n[0],0),0,1),n[1]=vn(Po(n[1],0),0,.4,!1),n[2]=+Po(n[2].replace("deg",""),0);const o=Ph(CP(n)),a=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=a,o}};w_.test=e=>$P.test(e)||TP.test(e)||DP.test(e)||MP.test(e)||NP.test(e)||PP.test(e)||RP.test(e)||zP.test(e)||jP.test(e)||AP.test(e)||e==="transparent",Ne.prototype.css=function(e){return Vye(this._rgb,e)};const qye=(...e)=>new Ne(...e,"css");zt.css=qye,Rt.format.css=w_,Rt.autodetect.push({p:5,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&w_.test(e))return"css"}}),Rt.format.gl=(...e)=>{const r=jt(e,"rgba");return r[0]*=255,r[1]*=255,r[2]*=255,r};const Hye=(...e)=>new Ne(...e,"gl");zt.gl=Hye,Ne.prototype.gl=function(){const e=this._rgb;return[e[0]/255,e[1]/255,e[2]/255,e[3]]},Ne.prototype.hex=function(e){return tP(this._rgb,e)};const Uye=(...e)=>new Ne(...e,"hex");zt.hex=Uye,Rt.format.hex=eP,Rt.autodetect.push({p:4,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&[3,4,5,6,7,8,9].indexOf(e.length)>=0)return"hex"}});const{log:Cb}=Math,IP=e=>{const r=e/100;let n,o,a;return r<66?(n=255,o=r<6?0:-155.25485562709179-.44596950469579133*(o=r-2)+104.49216199393888*Cb(o),a=r<20?0:-254.76935184120902+.8274096064007395*(a=r-10)+115.67994401066147*Cb(a)):(n=351.97690566805693+.114206453784165*(n=r-55)-40.25366309332127*Cb(n),o=325.4494125711974+.07943456536662342*(o=r-50)-28.0852963507957*Cb(o),a=255),[n,o,a,1]},{round:Wye}=Math,Gye=(...e)=>{const r=jt(e,"rgb"),n=r[0],o=r[2];let a=1e3,i=4e4;const l=.4;let s;for(;i-a>l;){s=(i+a)*.5;const c=IP(s);c[2]/c[0]>=o/n?i=s:a=s}return Wye(s)};Ne.prototype.temp=Ne.prototype.kelvin=Ne.prototype.temperature=function(){return Gye(this._rgb)};const k_=(...e)=>new Ne(...e,"temp");Object.assign(zt,{temp:k_,kelvin:k_,temperature:k_}),Rt.format.temp=Rt.format.kelvin=Rt.format.temperature=IP,Ne.prototype.oklch=function(){return EP(this._rgb)},Object.assign(zt,{oklch:(...e)=>new Ne(...e,"oklch")}),Rt.format.oklch=CP,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"oklch"),Ft(e)==="array"&&e.length===3)return"oklch"}}),Object.assign(zt,{analyze:pP,average:K1e,bezier:nye,blend:qi,brewer:Mye,Color:Ne,colors:zh,contrast:_ye,contrastAPCA:Cye,cubehelix:mye,deltaE:Tye,distance:jye,input:Rt,interpolate:Th,limits:hP,mix:Th,random:bye,scale:wb,scales:Dye,valid:Aye});const __=[.96,.907,.805,.697,.605,.547,.518,.445,.395,.34],OP=[.32,.16,.08,.04,0,0,.04,.08,.16,.32];function Yye(e){const r=e.get("hsl.l");return __.reduce((n,o)=>Math.abs(o-r)i===n),a=__.map(i=>r.set("hsl.l",i)).map(i=>zt(i)).map((i,l)=>{const s=OP[l]-OP[o];return s>=0?i.saturate(s):i.desaturate(s*-1)});return a[o]=zt(e),{baseColorIndex:o,colors:a}}function Zye(e){return Xye(e).colors.map(r=>r.hex())}const LP={fill:"#3b82f6",stroke:"#2563eb",hiContrast:"#eff6ff",loContrast:"#bfdbfe"},FP={fill:"#0284c7",stroke:"#0369a1",hiContrast:"#f0f9ff",loContrast:"#B6ECF7"},VP={fill:"#64748b",stroke:"#475569",hiContrast:"#f8fafc",loContrast:"#cbd5e1"},Kye={primary:LP,blue:LP,secondary:FP,sky:FP,muted:VP,slate:VP,gray:{fill:"#737373",stroke:"#525252",hiContrast:"#fafafa",loContrast:"#d4d4d4"},red:{fill:"#AC4D39",stroke:"#853A2D",hiContrast:"#FBD3CB",loContrast:"#f5b2a3"},green:{fill:"#428a4f",stroke:"#2d5d39",hiContrast:"#f8fafc",loContrast:"#c2f0c2"},amber:{fill:"#A35829",stroke:"#7E451D",hiContrast:"#FFE0C2",loContrast:"#f9b27c"},indigo:{fill:"#6366f1",stroke:"#4f46e5",hiContrast:"#eef2ff",loContrast:"#c7d2fe"}},Qye={line:"#8D8D8D",labelBg:"#18191B",label:"#C9C9C9"},qP={line:"#64748b",labelBg:"#0f172a",label:"#cbd5e1"},HP={line:"#3b82f6",labelBg:"#172554",label:"#60a5fa"},UP={line:"#0ea5e9",labelBg:"#082f49",label:"#38bdf8"},Jye={amber:{line:"#b45309",labelBg:"#78350f",label:"#FFE0C2"},blue:HP,gray:Qye,green:{line:"#15803d",labelBg:"#052e16",label:"#22c55e"},indigo:{line:"#6366f1",labelBg:"#1e1b4b",label:"#818cf8"},muted:qP,primary:HP,red:{line:"#AC4D39",labelBg:"#b91c1c",label:"#f5b2a3"},secondary:UP,sky:UP,slate:qP},WP=60,GP=2,YP=1;function e0e(e){He(zt.valid(e),`Invalid color: ${e}`);const r=Zye(e),n=r[6],o=t0e(n);return{elements:{fill:n,stroke:r[7],hiContrast:o[0],loContrast:o[1]},relationships:{line:r[4],label:r[3],labelBg:r[9]}}}function t0e(e){const r=zt(e);let n=r.brighten(GP),o=r.darken(GP),a,i,l,s;do a=n,i=o,n=n.brighten(YP),o=o.darken(YP),l=zt.contrastAPCA(r,n),s=zt.contrastAPCA(r,o);while(Math.abs(l)Math.abs(s)?[n.brighten(.4).hex(),n.hex()]:[o.darken(.4).hex(),o.hex()]}const r0e={color:"primary",size:"md",opacity:15,shape:"rectangle",group:{opacity:15,border:"dashed"},relationship:{color:"gray",line:"dashed",arrow:"normal"}},n0e=["rectangle","person","browser","mobile","cylinder","storage","queue"],o0e={colors:Yge(["amber","blue","gray","slate","green","indigo","muted","primary","red","secondary","sky"],e=>({elements:Kye[e],relationships:Jye[e]})),sizes:{xs:{width:180,height:100},sm:{width:240,height:135},md:{width:320,height:180},lg:{width:420,height:234},xl:{width:520,height:290}},spacing:{xs:8,sm:10,md:16,lg:24,xl:32},textSizes:{xs:13.33,sm:16,md:19.2,lg:23.04,xl:27.65}};function $b({size:e,padding:r,textSize:n,...o},a=S_.defaults.size){return e??=a,n??=e,r??=e,{...o,size:e,padding:r,textSize:n}}const S_={theme:o0e,defaults:r0e};let XP=class ON{constructor(r){this.config=r,this.theme=r.theme,this.defaults=r.defaults}theme;defaults;static DEFAULT=new ON(S_);static from(...r){return Ll(r,1)?new ON(XN(...r,S_)):this.DEFAULT}get elementColors(){return this.theme.colors[this.defaults.color].elements}get relationshipColors(){return this.theme.colors[this.defaults.relationship.color].relationships}get groupColors(){const r=this.defaults.group?.color;return r?ir(this,"defaultGroup",()=>({...this.elementColors,...this.theme.colors[r].elements})):this.elementColors}isDefaultColor(r){return r===this.defaults.color}colors(r){if(r??=this.defaults.color,this.isThemeColor(r))return this.theme.colors[r];throw new Error(`Unknown color: ${r}`)}fontSize(r){return r??=this.defaults.text??this.defaults.size,this.theme.textSizes[r]}padding(r){return r??=this.defaults.padding??this.defaults.size,this.theme.spacing[r]}isThemeColor(r){return r in this.theme.colors}nodeSizes(r){const n=$b(r,this.defaults.size);return{sizes:n,values:{sizes:this.theme.sizes[n.size],padding:this.padding(n.padding),textSize:this.fontSize(n.textSize)}}}computeFrom(r){return this.isThemeColor(r)?this.theme.colors[r]:ir(this,`compute-${r}`,()=>{if(!zt.valid(r))throw new Error(`Invalid color value: "${r}"`);return e0e(r)})}equals(r){return r===this?!0:yb(this.config,r.config)}};function Qg(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Qc(e){return typeof e=="string"}const E_={done:!1,hasNext:!1};function Ps(e,...r){let n=e,o=r.map(i=>"lazy"in i?a0e(i):void 0),a=0;for(;a65;)++o;return+u.slice(p-1,o)}return f=c&&c.indexOf(u.charAt(p)),f>-1?f+76:(f=u.charCodeAt(p)||0,f<45||f>127?f:f<46?65:f<48?f-1:f<58?f+18:f<65?f-11:f<91?f+11:f<97?f-37:f<123?f+5:f-63)}if((r+="")!=(n+="")){for(;i;)if(a=d(r,l++),i=d(n,s++),a<76&&i<76&&a>66&&i>66&&(a=d(r,l,l),i=d(n,s,l=o),s=o),a!=i)return a{if(n===o)return 0;if(!n)return-1;if(!o)return 1;const a=n.split(e),i=o.split(e),l=Math.min(a.length,i.length);for(let c=0;c0?e.slice(0,r):null}function Jg(e){const r=e.lastIndexOf(".");return r>0?e.slice(r+1):e}const e1=e=>$_(e)?e:e.id;function Yn(e,r){const n=e1(e);return r?e1(r).startsWith(n+"."):o=>{const a=e1(o);return n.startsWith(a+".")}}function eB(e,r){if(!r)return a=>eB(e,a);const n=e1(e),o=e1(r);return n===o||o.startsWith(n+".")||n.startsWith(o+".")}function tB(e,r){return n=>Yn(e,n)}function Tb(e){return($_(e)?e:e.id).split(".").length}function t1(e,r){const n=e.split(".");if(n.length<2)return null;const o=r.split(".");if(o.length<2)return null;let a=[];for(let i=0;ia===0?(n.push(o),n):(n.unshift(`${n[0]}.${o}`),n),[])}function c0e(e,r){let n=r;for(const o of e)Yn(o,n)&&(n=o);return n!==r?n:null}function Jc(e){const r=[],n=[...e];let o;for(;o=n.shift();){let a;for(;a=c0e(n,o);)r.push(n.splice(n.indexOf(a),1)[0]);r.push(o)}return r}function rB(e,r){if(!e||$_(e)){const o=e??"asc";return a=>rB(a,o)}const n=r==="desc"?-1:1;return e.map(o=>({item:o,fqn:o.id.split(".")})).sort((o,a)=>{if(o.fqn.length!==a.fqn.length)return(o.fqn.length-a.fqn.length)*n;for(let i=0;io)}var jb={},nB;function d0e(){return nB||(nB=1,jb.ARRAY_BUFFER_SUPPORT=typeof ArrayBuffer<"u",jb.SYMBOL_SUPPORT=typeof Symbol<"u"),jb}var R_,oB;function Ab(){if(oB)return R_;oB=1;var e=d0e(),r=e.ARRAY_BUFFER_SUPPORT,n=e.SYMBOL_SUPPORT;return R_=function(a,i){var l,s,c,d,u;if(!a)throw new Error("obliterator/forEach: invalid iterable.");if(typeof i!="function")throw new Error("obliterator/forEach: expecting a callback.");if(Array.isArray(a)||r&&ArrayBuffer.isView(a)||typeof a=="string"||a.toString()==="[object Arguments]"){for(c=0,d=a.length;c=n?{done:!0}:{done:!1,value:r[o++]}})},e.empty=function(){var r=new e(function(){return{done:!0}});return r},e.fromSequence=function(r){var n=0,o=r.length;return new e(function(){return n>=o?{done:!0}:{done:!1,value:r[n++]}})},e.is=function(r){return r instanceof e?!0:typeof r=="object"&&r!==null&&typeof r.next=="function"},z_=e,z_}const lB=-1,Db=0,r1=1,Mb=2,T_=3,j_=4,A_=5,D_=6,sB=7,cB=8,dB=typeof self=="object"?self:globalThis,u0e=(e,r)=>{const n=(a,i)=>(e.set(i,a),a),o=a=>{if(e.has(a))return e.get(a);const[i,l]=r[a];switch(i){case Db:case lB:return n(l,a);case r1:{const s=n([],a);for(const c of l)s.push(o(c));return s}case Mb:{const s=n({},a);for(const[c,d]of l)s[o(c)]=o(d);return s}case T_:return n(new Date(l),a);case j_:{const{source:s,flags:c}=l;return n(new RegExp(s,c),a)}case A_:{const s=n(new Map,a);for(const[c,d]of l)s.set(o(c),o(d));return s}case D_:{const s=n(new Set,a);for(const c of l)s.add(o(c));return s}case sB:{const{name:s,message:c}=l;return n(new dB[s](c),a)}case cB:return n(BigInt(l),a);case"BigInt":return n(Object(BigInt(l)),a);case"ArrayBuffer":return n(new Uint8Array(l).buffer,l);case"DataView":{const{buffer:s}=new Uint8Array(l);return n(new DataView(s),l)}}return n(new dB[i](l),a)};return o},uB=e=>u0e(new Map,e)(0),Bh="",{toString:p0e}={},{keys:h0e}=Object,n1=e=>{const r=typeof e;if(r!=="object"||!e)return[Db,r];const n=p0e.call(e).slice(8,-1);switch(n){case"Array":return[r1,Bh];case"Object":return[Mb,Bh];case"Date":return[T_,Bh];case"RegExp":return[j_,Bh];case"Map":return[A_,Bh];case"Set":return[D_,Bh];case"DataView":return[r1,n]}return n.includes("Array")?[r1,n]:n.includes("Error")?[sB,n]:[Mb,n]},Nb=([e,r])=>e===Db&&(r==="function"||r==="symbol"),f0e=(e,r,n,o)=>{const a=(l,s)=>{const c=o.push(l)-1;return n.set(s,c),c},i=l=>{if(n.has(l))return n.get(l);let[s,c]=n1(l);switch(s){case Db:{let u=l;switch(c){case"bigint":s=cB,u=l.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);u=null;break;case"undefined":return a([lB],l)}return a([s,u],l)}case r1:{if(c){let f=l;return c==="DataView"?f=new Uint8Array(l.buffer):c==="ArrayBuffer"&&(f=new Uint8Array(l)),a([c,[...f]],l)}const u=[],p=a([s,u],l);for(const f of l)u.push(i(f));return p}case Mb:{if(c)switch(c){case"BigInt":return a([c,l.toString()],l);case"Boolean":case"Number":case"String":return a([c,l.valueOf()],l)}if(r&&"toJSON"in l)return i(l.toJSON());const u=[],p=a([s,u],l);for(const f of h0e(l))(e||!Nb(n1(l[f])))&&u.push([i(f),i(l[f])]);return p}case T_:return a([s,l.toISOString()],l);case j_:{const{source:u,flags:p}=l;return a([s,{source:u,flags:p}],l)}case A_:{const u=[],p=a([s,u],l);for(const[f,g]of l)(e||!(Nb(n1(f))||Nb(n1(g))))&&u.push([i(f),i(g)]);return p}case D_:{const u=[],p=a([s,u],l);for(const f of l)(e||!Nb(n1(f)))&&u.push(i(f));return p}}const{message:d}=l;return a([s,{name:c,message:d}],l)};return i},pB=(e,{json:r,lossy:n}={})=>{const o=[];return f0e(!(r||n),!!r,new Map,o)(e),o},o1=typeof structuredClone=="function"?(e,r)=>r&&("json"in r||"lossy"in r)?uB(pB(e,r)):structuredClone(e):(e,r)=>uB(pB(e,r)),hB=mB("end"),fB=mB("start");function mB(e){return r;function r(n){const o=n&&n.position&&n.position[e]||{};if(typeof o.line=="number"&&o.line>0&&typeof o.column=="number"&&o.column>0)return{line:o.line,column:o.column,offset:typeof o.offset=="number"&&o.offset>-1?o.offset:void 0}}}function gB(e){const r=fB(e),n=hB(e);if(r&&n)return{start:r,end:n}}const Mu=["ariaDescribedBy","ariaLabel","ariaLabelledBy"],M_={ancestors:{tbody:["table"],td:["table"],th:["table"],thead:["table"],tfoot:["table"],tr:["table"]},attributes:{a:[...Mu,"dataFootnoteBackref","dataFootnoteRef",["className","data-footnote-backref"],"href"],blockquote:["cite"],code:[["className",/^language-./]],del:["cite"],div:["itemScope","itemType"],dl:[...Mu],h2:[["className","sr-only"]],img:[...Mu,"longDesc","src"],input:[["disabled",!0],["type","checkbox"]],ins:["cite"],li:[["className","task-list-item"]],ol:[...Mu,["className","contains-task-list"]],q:["cite"],section:["dataFootnotes",["className","footnotes"]],source:["srcSet"],summary:[...Mu],table:[...Mu],ul:[...Mu,["className","contains-task-list"]],"*":["abbr","accept","acceptCharset","accessKey","action","align","alt","axis","border","cellPadding","cellSpacing","char","charOff","charSet","checked","clear","colSpan","color","cols","compact","coords","dateTime","dir","encType","frame","hSpace","headers","height","hrefLang","htmlFor","id","isMap","itemProp","label","lang","maxLength","media","method","multiple","name","noHref","noShade","noWrap","open","prompt","readOnly","rev","rowSpan","rows","rules","scope","selected","shape","size","span","start","summary","tabIndex","title","useMap","vAlign","value","width"]},clobber:["ariaDescribedBy","ariaLabelledBy","id","name"],clobberPrefix:"user-content-",protocols:{cite:["http","https"],href:["http","https","irc","ircs","mailto","xmpp"],longDesc:["http","https"],src:["http","https"]},required:{input:{disabled:!0,type:"checkbox"}},strip:["script"],tagNames:["a","b","blockquote","br","code","dd","del","details","div","dl","dt","em","h1","h2","h3","h4","h5","h6","hr","i","img","input","ins","kbd","li","ol","p","picture","pre","q","rp","rt","ruby","s","samp","section","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","tr","tt","ul","var"]},ed={}.hasOwnProperty;function m0e(e,r){let n={type:"root",children:[]};const o={schema:r?{...M_,...r}:M_,stack:[]},a=yB(o,e);return a&&(Array.isArray(a)?a.length===1?n=a[0]:n.children=a:n=a),n}function yB(e,r){if(r&&typeof r=="object"){const n=r;switch(typeof n.type=="string"?n.type:""){case"comment":return g0e(e,n);case"doctype":return y0e(e,n);case"element":return v0e(e,n);case"root":return b0e(e,n);case"text":return x0e(e,n)}}}function g0e(e,r){if(e.schema.allowComments){const n=typeof r.value=="string"?r.value:"",o=n.indexOf("-->"),i={type:"comment",value:o<0?n:n.slice(0,o)};return a1(i,r),i}}function y0e(e,r){if(e.schema.allowDoctypes){const n={type:"doctype"};return a1(n,r),n}}function v0e(e,r){const n=typeof r.tagName=="string"?r.tagName:"";e.stack.push(n);const o=vB(e,r.children),a=w0e(e,r.properties);e.stack.pop();let i=!1;if(n&&n!=="*"&&(!e.schema.tagNames||e.schema.tagNames.includes(n))&&(i=!0,e.schema.ancestors&&ed.call(e.schema.ancestors,n))){const s=e.schema.ancestors[n];let c=-1;for(i=!1;++c1){let a=!1,i=0;for(;++i-1&&i>c||l>-1&&i>l||s>-1&&i>s)return!0;let d=-1;for(;++d4&&r.slice(0,4).toLowerCase()==="data")return n}function S0e(e){return function(r){return m0e(r,e)}}const E0e=["area","base","basefont","bgsound","br","col","command","embed","frame","hr","image","img","input","keygen","link","meta","param","source","track","wbr"];class i1{constructor(r,n,o){this.normal=n,this.property=r,o&&(this.space=o)}}i1.prototype.normal={},i1.prototype.property={},i1.prototype.space=void 0;function kB(e,r){const n={},o={};for(const a of e)Object.assign(n,a.property),Object.assign(o,a.normal);return new i1(n,o,r)}function N_(e){return e.toLowerCase()}class Jo{constructor(r,n){this.attribute=n,this.property=r}}Jo.prototype.attribute="",Jo.prototype.booleanish=!1,Jo.prototype.boolean=!1,Jo.prototype.commaOrSpaceSeparated=!1,Jo.prototype.commaSeparated=!1,Jo.prototype.defined=!1,Jo.prototype.mustUseProperty=!1,Jo.prototype.number=!1,Jo.prototype.overloadedBoolean=!1,Jo.prototype.property="",Jo.prototype.spaceSeparated=!1,Jo.prototype.space=void 0;let C0e=0;const At=Nu(),bn=Nu(),_B=Nu(),Ie=Nu(),Cr=Nu(),Ih=Nu(),ba=Nu();function Nu(){return 2**++C0e}const P_={__proto__:null,boolean:At,booleanish:bn,commaOrSpaceSeparated:ba,commaSeparated:Ih,number:Ie,overloadedBoolean:_B,spaceSeparated:Cr},B_=Object.keys(P_);class I_ extends Jo{constructor(r,n,o,a){let i=-1;if(super(r,n),SB(this,"space",a),typeof o=="number")for(;++i4&&n.slice(0,4)==="data"&&T0e.test(r)){if(r.charAt(4)==="-"){const i=r.slice(5).replace(jB,D0e);o="data"+i.charAt(0).toUpperCase()+i.slice(1)}else{const i=r.slice(4);if(!jB.test(i)){let l=i.replace(z0e,A0e);l.charAt(0)!=="-"&&(l="-"+l),r="data"+l}}a=I_}return new a(o,r)}function A0e(e){return"-"+e.toLowerCase()}function D0e(e){return e.charAt(1).toUpperCase()}const M0e=kB([EB,$0e,RB,zB,TB],"html"),AB=kB([EB,R0e,RB,zB,TB],"svg"),DB={}.hasOwnProperty;function N0e(e,r){const n=r||{};function o(a,...i){let l=o.invalid;const s=o.handlers;if(a&&DB.call(a,e)){const c=String(a[e]);l=DB.call(s,c)?s[c]:o.unknown}if(l)return l.call(this,a,...i)}return o.handlers=n.handlers||{},o.invalid=n.invalid,o.unknown=n.unknown,o}const P0e=/["&'<>`]/g,B0e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,I0e=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,O0e=/[|\\{}()[\]^$+*?.]/g,MB=new WeakMap;function L0e(e,r){if(e=e.replace(r.subset?F0e(r.subset):P0e,o),r.subset||r.escapeOnly)return e;return e.replace(B0e,n).replace(I0e,o);function n(a,i,l){return r.format((a.charCodeAt(0)-55296)*1024+a.charCodeAt(1)-56320+65536,l.charCodeAt(i+2),r)}function o(a,i,l){return r.format(a.charCodeAt(0),l.charCodeAt(i+1),r)}}function F0e(e){let r=MB.get(e);return r||(r=V0e(e),MB.set(e,r)),r}function V0e(e){const r=[];let n=-1;for(;++n",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",permil:"‰",lsaquo:"‹",rsaquo:"›",euro:"€"},Y0e=["cent","copy","divide","gt","lt","not","para","times"],NB={}.hasOwnProperty,L_={};let Pb;for(Pb in O_)NB.call(O_,Pb)&&(L_[O_[Pb]]=Pb);const X0e=/[^\dA-Za-z]/;function Z0e(e,r,n,o){const a=String.fromCharCode(e);if(NB.call(L_,a)){const i=L_[a],l="&"+i;return n&&G0e.includes(i)&&!Y0e.includes(i)&&(!o||r&&r!==61&&X0e.test(String.fromCharCode(r)))?l:l+";"}return""}function K0e(e,r,n){let o=H0e(e,r,n.omitOptionalSemicolons),a;if((n.useNamedReferences||n.useShortestReferences)&&(a=Z0e(e,r,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!a)&&n.useShortestReferences){const i=W0e(e,r,n.omitOptionalSemicolons);i.length|^->||--!>|"],eve=["<",">"];function tve(e,r,n,o){return o.settings.bogusComments?"":"";function a(i){return Lh(i,Object.assign({},o.settings.characterReferences,{subset:eve}))}}function rve(e,r,n,o){return""}function Bb(e,r){const n=String(e);if(typeof r!="string")throw new TypeError("Expected character");let o=0,a=n.indexOf(r);for(;a!==-1;)o++,a=n.indexOf(r,a+r.length);return o}function nve(e,r){const n=r||{};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}function ove(e){return e.join(" ").trim()}const ave=/[ \t\n\f\r]/g;function F_(e){return typeof e=="object"?e.type==="text"?PB(e.value):!1:PB(e)}function PB(e){return e.replace(ave,"")===""}const On=IB(1),BB=IB(-1),ive=[];function IB(e){return r;function r(n,o,a){const i=n?n.children:ive;let l=(o||0)+e,s=i[l];if(!a)for(;s&&F_(s);)l+=e,s=i[l];return s}}const lve={}.hasOwnProperty;function OB(e){return r;function r(n,o,a){return lve.call(e,n.tagName)&&e[n.tagName](n,o,a)}}const V_=OB({body:cve,caption:q_,colgroup:q_,dd:hve,dt:pve,head:q_,html:sve,li:uve,optgroup:fve,option:mve,p:dve,rp:LB,rt:LB,tbody:yve,td:FB,tfoot:vve,th:FB,thead:gve,tr:bve});function q_(e,r,n){const o=On(n,r,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&F_(o.value.charAt(0)))}function sve(e,r,n){const o=On(n,r);return!o||o.type!=="comment"}function cve(e,r,n){const o=On(n,r);return!o||o.type!=="comment"}function dve(e,r,n){const o=On(n,r);return o?o.type==="element"&&(o.tagName==="address"||o.tagName==="article"||o.tagName==="aside"||o.tagName==="blockquote"||o.tagName==="details"||o.tagName==="div"||o.tagName==="dl"||o.tagName==="fieldset"||o.tagName==="figcaption"||o.tagName==="figure"||o.tagName==="footer"||o.tagName==="form"||o.tagName==="h1"||o.tagName==="h2"||o.tagName==="h3"||o.tagName==="h4"||o.tagName==="h5"||o.tagName==="h6"||o.tagName==="header"||o.tagName==="hgroup"||o.tagName==="hr"||o.tagName==="main"||o.tagName==="menu"||o.tagName==="nav"||o.tagName==="ol"||o.tagName==="p"||o.tagName==="pre"||o.tagName==="section"||o.tagName==="table"||o.tagName==="ul"):!n||!(n.type==="element"&&(n.tagName==="a"||n.tagName==="audio"||n.tagName==="del"||n.tagName==="ins"||n.tagName==="map"||n.tagName==="noscript"||n.tagName==="video"))}function uve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="li"}function pve(e,r,n){const o=On(n,r);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function hve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function LB(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function fve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="optgroup"}function mve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function gve(e,r,n){const o=On(n,r);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function yve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function vve(e,r,n){return!On(n,r)}function bve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="tr"}function FB(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}const xve=OB({body:_ve,colgroup:Sve,head:kve,html:wve,tbody:Eve});function wve(e){const r=On(e,-1);return!r||r.type!=="comment"}function kve(e){const r=new Set;for(const o of e.children)if(o.type==="element"&&(o.tagName==="base"||o.tagName==="title")){if(r.has(o.tagName))return!1;r.add(o.tagName)}const n=e.children[0];return!n||n.type==="element"}function _ve(e){const r=On(e,-1,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&F_(r.value.charAt(0)))&&!(r.type==="element"&&(r.tagName==="meta"||r.tagName==="link"||r.tagName==="script"||r.tagName==="style"||r.tagName==="template"))}function Sve(e,r,n){const o=BB(n,r),a=On(e,-1,!0);return n&&o&&o.type==="element"&&o.tagName==="colgroup"&&V_(o,n.children.indexOf(o),n)?!1:!!(a&&a.type==="element"&&a.tagName==="col")}function Eve(e,r,n){const o=BB(n,r),a=On(e,-1);return n&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&V_(o,n.children.indexOf(o),n)?!1:!!(a&&a.type==="element"&&a.tagName==="tr")}const Ib={name:[[` \f\r &/=>`.split(""),` \f\r "&'/=>\``.split("")],[`\0 \f\r "&'/<=>`.split(""),`\0 @@ -15,8 +15,8 @@ function Lge(e,r){for(var n=0;n`.split(""),`\0 \f\r "&'<=>\``.split("")],[`\0 \f\r "&'<=>\``.split(""),`\0 -\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Cve(e,r,n,o){const a=o.schema,i=a.space==="svg"?!1:o.settings.omitOptionalTags;let l=a.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase());const s=[];let c;a.space==="html"&&e.tagName==="svg"&&(o.schema=AB);const d=$ve(o,e.properties),u=o.all(a.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=a,u&&(l=!1),(d||!i||!xve(e,r,n))&&(s.push("<",e.tagName,d?" "+d:""),l&&(a.space==="svg"||o.settings.closeSelfClosing)&&(c=d.charAt(d.length-1),(!o.settings.tightSelfClosing||c==="/"||c&&c!=='"'&&c!=="'")&&s.push(" "),s.push("/")),s.push(">")),s.push(u),!l&&(!i||!V_(e,r,n))&&s.push(""),s.join("")}function $ve(e,r){const n=[];let o=-1,a;if(r){for(a in r)if(r[a]!==null&&r[a]!==void 0){const i=zve(e,a,r[a]);i&&n.push(i)}}for(;++oBb(n,e.alternative)&&(l=e.alternative),s=l+Lh(n,Object.assign({},e.settings.characterReferences,{subset:(l==="'"?Ib.single:Ib.double)[a][i],attribute:!0}))+l),c+(s&&"="+s))}const Rve=["<","&"];function VB(e,r,n,o){return n&&n.type==="element"&&(n.tagName==="script"||n.tagName==="style")?e.value:Lh(e.value,Object.assign({},o.settings.characterReferences,{subset:Rve}))}function Tve(e,r,n,o){return o.settings.allowDangerousHtml?e.value:VB(e,r,n,o)}function jve(e,r,n,o){return o.all(e)}const Ave=N0e("type",{invalid:Dve,unknown:Mve,handlers:{comment:tve,doctype:rve,element:Cve,raw:Tve,root:jve,text:VB}});function Dve(e){throw new Error("Expected node, not `"+e+"`")}function Mve(e){const r=e;throw new Error("Cannot compile unknown node `"+r.type+"`")}const Nve={},Pve={},Bve=[];function Ive(e,r){const n=r||Nve,o=n.quote||'"',a=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:Ove,all:Lve,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||E0e,characterReferences:n.characterReferences||Pve,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space==="svg"?AB:M0e,quote:o,alternative:a}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Ove(e,r,n){return Ave(e,r,n,this)}function Lve(e){const r=[],n=e&&e.children||Bve;let o=-1;for(;++o-1&&e.test(String.fromCharCode(n))}}function Uve(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const Fb=(function(e){if(e==null)return Xve;if(typeof e=="function")return Vb(e);if(typeof e=="object")return Array.isArray(e)?Wve(e):Gve(e);if(typeof e=="string")return Yve(e);throw new Error("Expected function, string, or object as test")});function Wve(e){const r=[];let n=-1;for(;++n":""))+")"})}return f;function f(){let g=qB,v,w,x;if((!r||i(c,d,u[u.length-1]||void 0))&&(g=Jve(n(c,u)),g[0]===U_))return g;if("children"in c&&c.children){const k=c;if(k.children&&g[0]!==Qve)for(w=(o?k.children.length:-1)+l,x=u.concat(k);w>-1&&w0?{type:"text",value:T}:void 0),T===!1?f.lastIndex=$+1:(v!==$&&C.push({type:"text",value:d.value.slice(v,$)}),Array.isArray(T)?C.push(...T):T&&C.push(T),v=$+_[0].length,k=!0),!f.global)break;_=f.exec(d.value)}return k?(v?\]}]+$/.exec(e);if(!r)return[e,void 0];e=e.slice(0,r.index);let n=r[0],o=n.indexOf(")");const a=Bb(e,"(");let i=Bb(e,")");for(;o!==-1&&a>i;)e+=n.slice(0,o+1),n=n.slice(o+1),o=n.indexOf(")"),i++;return[e,n]}function UB(e,r){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Pu(n)||Lb(n))&&(!r||n!==47)}function Ui(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}WB.peek=Sbe;function gbe(){this.buffer()}function ybe(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function vbe(){this.buffer()}function bbe(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function xbe(e){const r=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ui(this.sliceSerialize(e)).toLowerCase(),n.label=r}function wbe(e){this.exit(e)}function kbe(e){const r=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ui(this.sliceSerialize(e)).toLowerCase(),n.label=r}function _be(e){this.exit(e)}function Sbe(){return"["}function WB(e,r,n,o){const a=n.createTracker(o);let i=a.move("[^");const l=n.enter("footnoteReference"),s=n.enter("reference");return i+=a.move(n.safe(n.associationId(e),{after:"]",before:i})),s(),l(),i+=a.move("]"),i}function Ebe(){return{enter:{gfmFootnoteCallString:gbe,gfmFootnoteCall:ybe,gfmFootnoteDefinitionLabelString:vbe,gfmFootnoteDefinition:bbe},exit:{gfmFootnoteCallString:xbe,gfmFootnoteCall:wbe,gfmFootnoteDefinitionLabelString:kbe,gfmFootnoteDefinition:_be}}}function Cbe(e){let r=!1;return e&&e.firstLineBlank&&(r=!0),{handlers:{footnoteDefinition:n,footnoteReference:WB},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(o,a,i,l){const s=i.createTracker(l);let c=s.move("[^");const d=i.enter("footnoteDefinition"),u=i.enter("label");return c+=s.move(i.safe(i.associationId(o),{before:c,after:"]"})),u(),c+=s.move("]:"),o.children&&o.children.length>0&&(s.shift(4),c+=s.move((r?` -`:" ")+i.indentLines(i.containerFlow(o,s.current()),r?GB:$be))),d(),c}}function $be(e,r,n){return r===0?e:GB(e,r,n)}function GB(e,r,n){return(n?"":" ")+e}const zbe=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];YB.peek=Dbe;function Rbe(){return{canContainEols:["delete"],enter:{strikethrough:jbe},exit:{strikethrough:Abe}}}function Tbe(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:zbe}],handlers:{delete:YB}}}function jbe(e){this.enter({type:"delete",children:[]},e)}function Abe(e){this.exit(e)}function YB(e,r,n,o){const a=n.createTracker(o),i=n.enter("strikethrough");let l=a.move("~~");return l+=n.containerPhrasing(e,{...a.current(),before:l,after:"~"}),l+=a.move("~~"),i(),l}function Dbe(){return"~"}function Mbe(e){return e.length}function Nbe(e,r){const n=r||{},o=(n.align||[]).concat(),a=n.stringLength||Mbe,i=[],l=[],s=[],c=[];let d=0,u=-1;for(;++ud&&(d=e[u].length);++kc[k])&&(c[k]=_)}w.push(C)}l[u]=w,s[u]=x}let p=-1;if(typeof o=="object"&&"length"in o)for(;++pc[p]&&(c[p]=C),g[p]=C),f[p]=_}l.splice(1,0,f),s.splice(1,0,g),u=-1;const v=[];for(;++u\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Cve(e,r,n,o){const a=o.schema,i=a.space==="svg"?!1:o.settings.omitOptionalTags;let l=a.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase());const s=[];let c;a.space==="html"&&e.tagName==="svg"&&(o.schema=AB);const d=$ve(o,e.properties),u=o.all(a.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=a,u&&(l=!1),(d||!i||!xve(e,r,n))&&(s.push("<",e.tagName,d?" "+d:""),l&&(a.space==="svg"||o.settings.closeSelfClosing)&&(c=d.charAt(d.length-1),(!o.settings.tightSelfClosing||c==="/"||c&&c!=='"'&&c!=="'")&&s.push(" "),s.push("/")),s.push(">")),s.push(u),!l&&(!i||!V_(e,r,n))&&s.push(""),s.join("")}function $ve(e,r){const n=[];let o=-1,a;if(r){for(a in r)if(r[a]!==null&&r[a]!==void 0){const i=Rve(e,a,r[a]);i&&n.push(i)}}for(;++oBb(n,e.alternative)&&(l=e.alternative),s=l+Lh(n,Object.assign({},e.settings.characterReferences,{subset:(l==="'"?Ib.single:Ib.double)[a][i],attribute:!0}))+l),c+(s&&"="+s))}const zve=["<","&"];function VB(e,r,n,o){return n&&n.type==="element"&&(n.tagName==="script"||n.tagName==="style")?e.value:Lh(e.value,Object.assign({},o.settings.characterReferences,{subset:zve}))}function Tve(e,r,n,o){return o.settings.allowDangerousHtml?e.value:VB(e,r,n,o)}function jve(e,r,n,o){return o.all(e)}const Ave=N0e("type",{invalid:Dve,unknown:Mve,handlers:{comment:tve,doctype:rve,element:Cve,raw:Tve,root:jve,text:VB}});function Dve(e){throw new Error("Expected node, not `"+e+"`")}function Mve(e){const r=e;throw new Error("Cannot compile unknown node `"+r.type+"`")}const Nve={},Pve={},Bve=[];function Ive(e,r){const n=r||Nve,o=n.quote||'"',a=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:Ove,all:Lve,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||E0e,characterReferences:n.characterReferences||Pve,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space==="svg"?AB:M0e,quote:o,alternative:a}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Ove(e,r,n){return Ave(e,r,n,this)}function Lve(e){const r=[],n=e&&e.children||Bve;let o=-1;for(;++o-1&&e.test(String.fromCharCode(n))}}function Uve(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const Fb=(function(e){if(e==null)return Xve;if(typeof e=="function")return Vb(e);if(typeof e=="object")return Array.isArray(e)?Wve(e):Gve(e);if(typeof e=="string")return Yve(e);throw new Error("Expected function, string, or object as test")});function Wve(e){const r=[];let n=-1;for(;++n":""))+")"})}return f;function f(){let g=qB,v,w,x;if((!r||i(c,d,u[u.length-1]||void 0))&&(g=Jve(n(c,u)),g[0]===U_))return g;if("children"in c&&c.children){const k=c;if(k.children&&g[0]!==Qve)for(w=(o?k.children.length:-1)+l,x=u.concat(k);w>-1&&w0?{type:"text",value:T}:void 0),T===!1?f.lastIndex=$+1:(v!==$&&C.push({type:"text",value:d.value.slice(v,$)}),Array.isArray(T)?C.push(...T):T&&C.push(T),v=$+_[0].length,k=!0),!f.global)break;_=f.exec(d.value)}return k?(v?\]}]+$/.exec(e);if(!r)return[e,void 0];e=e.slice(0,r.index);let n=r[0],o=n.indexOf(")");const a=Bb(e,"(");let i=Bb(e,")");for(;o!==-1&&a>i;)e+=n.slice(0,o+1),n=n.slice(o+1),o=n.indexOf(")"),i++;return[e,n]}function UB(e,r){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Pu(n)||Lb(n))&&(!r||n!==47)}function Ui(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}WB.peek=Sbe;function gbe(){this.buffer()}function ybe(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function vbe(){this.buffer()}function bbe(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function xbe(e){const r=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ui(this.sliceSerialize(e)).toLowerCase(),n.label=r}function wbe(e){this.exit(e)}function kbe(e){const r=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ui(this.sliceSerialize(e)).toLowerCase(),n.label=r}function _be(e){this.exit(e)}function Sbe(){return"["}function WB(e,r,n,o){const a=n.createTracker(o);let i=a.move("[^");const l=n.enter("footnoteReference"),s=n.enter("reference");return i+=a.move(n.safe(n.associationId(e),{after:"]",before:i})),s(),l(),i+=a.move("]"),i}function Ebe(){return{enter:{gfmFootnoteCallString:gbe,gfmFootnoteCall:ybe,gfmFootnoteDefinitionLabelString:vbe,gfmFootnoteDefinition:bbe},exit:{gfmFootnoteCallString:xbe,gfmFootnoteCall:wbe,gfmFootnoteDefinitionLabelString:kbe,gfmFootnoteDefinition:_be}}}function Cbe(e){let r=!1;return e&&e.firstLineBlank&&(r=!0),{handlers:{footnoteDefinition:n,footnoteReference:WB},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(o,a,i,l){const s=i.createTracker(l);let c=s.move("[^");const d=i.enter("footnoteDefinition"),u=i.enter("label");return c+=s.move(i.safe(i.associationId(o),{before:c,after:"]"})),u(),c+=s.move("]:"),o.children&&o.children.length>0&&(s.shift(4),c+=s.move((r?` +`:" ")+i.indentLines(i.containerFlow(o,s.current()),r?GB:$be))),d(),c}}function $be(e,r,n){return r===0?e:GB(e,r,n)}function GB(e,r,n){return(n?"":" ")+e}const Rbe=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];YB.peek=Dbe;function zbe(){return{canContainEols:["delete"],enter:{strikethrough:jbe},exit:{strikethrough:Abe}}}function Tbe(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Rbe}],handlers:{delete:YB}}}function jbe(e){this.enter({type:"delete",children:[]},e)}function Abe(e){this.exit(e)}function YB(e,r,n,o){const a=n.createTracker(o),i=n.enter("strikethrough");let l=a.move("~~");return l+=n.containerPhrasing(e,{...a.current(),before:l,after:"~"}),l+=a.move("~~"),i(),l}function Dbe(){return"~"}function Mbe(e){return e.length}function Nbe(e,r){const n=r||{},o=(n.align||[]).concat(),a=n.stringLength||Mbe,i=[],l=[],s=[],c=[];let d=0,u=-1;for(;++ud&&(d=e[u].length);++kc[k])&&(c[k]=_)}w.push(C)}l[u]=w,s[u]=x}let p=-1;if(typeof o=="object"&&"length"in o)for(;++pc[p]&&(c[p]=C),g[p]=C),f[p]=_}l.splice(1,0,f),s.splice(1,0,g),u=-1;const v=[];for(;++u "),i.shift(2);const l=n.indentLines(n.containerFlow(e,i.current()),Ibe);return a(),l}function Ibe(e,r,n){return">"+(n?"":" ")+e}function Obe(e,r){return ZB(e,r.inConstruct,!0)&&!ZB(e,r.notInConstruct,!1)}function ZB(e,r,n){if(typeof r=="string"&&(r=[r]),!r||r.length===0)return n;let o=-1;for(;++ol&&(l=i):i=1,a=o+r.length,o=n.indexOf(r,a);return l}function Fbe(e,r){return!!(r.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function Vbe(e){const r=e.options.fence||"`";if(r!=="`"&&r!=="~")throw new Error("Cannot serialize code with `"+r+"` for `options.fence`, expected `` ` `` or `~`");return r}function qbe(e,r,n,o){const a=Vbe(n),i=e.value||"",l=a==="`"?"GraveAccent":"Tilde";if(Fbe(e,n)){const p=n.enter("codeIndented"),f=n.indentLines(i,Hbe);return p(),f}const s=n.createTracker(o),c=a.repeat(Math.max(Lbe(i,a)+1,3)),d=n.enter("codeFenced");let u=s.move(c);if(e.lang){const p=n.enter(`codeFencedLang${l}`);u+=s.move(n.safe(e.lang,{before:u,after:" ",encode:["`"],...s.current()})),p()}if(e.lang&&e.meta){const p=n.enter(`codeFencedMeta${l}`);u+=s.move(" "),u+=s.move(n.safe(e.meta,{before:u,after:` @@ -31,30 +31,30 @@ function Lge(e,r){for(var n=0;n",...c.current()})),d+=c.move(">")):(s=n.enter("destinationRaw"),d+=c.move(n.safe(e.url,{before:d,after:e.title?" ":")",...c.current()}))),s(),e.title&&(s=n.enter(`title${i}`),d+=c.move(" "+a),d+=c.move(n.safe(e.title,{before:d,after:a,...c.current()})),d+=c.move(a),s()),d+=c.move(")"),l(),d}function Jbe(){return"!"}nI.peek=exe;function nI(e,r,n,o){const a=e.referenceType,i=n.enter("imageReference");let l=n.enter("label");const s=n.createTracker(o);let c=s.move("![");const d=n.safe(e.alt,{before:c,after:"]",...s.current()});c+=s.move(d+"]["),l();const u=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...s.current()});return l(),n.stack=u,i(),a==="full"||!d||d!==p?c+=s.move(p+"]"):a==="shortcut"?c=c.slice(0,-1):c+=s.move("]"),c}function exe(){return"!"}oI.peek=txe;function oI(e,r,n){let o=e.value||"",a="`",i=-1;for(;new RegExp("(^|[^`])"+a+"([^`]|$)").test(o);)a+="`";for(/[^ \r\n]/.test(o)&&(/^[ \r\n]/.test(o)&&/[ \r\n]$/.test(o)||/^`|`$/.test(o))&&(o=" "+o+" ");++i\u007F]/.test(e.url))}iI.peek=rxe;function iI(e,r,n,o){const a=X_(n),i=a==='"'?"Quote":"Apostrophe",l=n.createTracker(o);let s,c;if(aI(e,n)){const u=n.stack;n.stack=[],s=n.enter("autolink");let p=l.move("<");return p+=l.move(n.containerPhrasing(e,{before:p,after:">",...l.current()})),p+=l.move(">"),s(),n.stack=u,p}s=n.enter("link"),c=n.enter("label");let d=l.move("[");return d+=l.move(n.containerPhrasing(e,{before:d,after:"](",...l.current()})),d+=l.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),d+=l.move("<"),d+=l.move(n.safe(e.url,{before:d,after:">",...l.current()})),d+=l.move(">")):(c=n.enter("destinationRaw"),d+=l.move(n.safe(e.url,{before:d,after:e.title?" ":")",...l.current()}))),c(),e.title&&(c=n.enter(`title${i}`),d+=l.move(" "+a),d+=l.move(n.safe(e.title,{before:d,after:a,...l.current()})),d+=l.move(a),c()),d+=l.move(")"),s(),d}function rxe(e,r,n){return aI(e,n)?"<":"["}lI.peek=nxe;function lI(e,r,n,o){const a=e.referenceType,i=n.enter("linkReference");let l=n.enter("label");const s=n.createTracker(o);let c=s.move("[");const d=n.containerPhrasing(e,{before:c,after:"]",...s.current()});c+=s.move(d+"]["),l();const u=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...s.current()});return l(),n.stack=u,i(),a==="full"||!d||d!==p?c+=s.move(p+"]"):a==="shortcut"?c=c.slice(0,-1):c+=s.move("]"),c}function nxe(){return"["}function K_(e){const r=e.options.bullet||"*";if(r!=="*"&&r!=="+"&&r!=="-")throw new Error("Cannot serialize items with `"+r+"` for `options.bullet`, expected `*`, `+`, or `-`");return r}function oxe(e){const r=K_(e),n=e.options.bulletOther;if(!n)return r==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===r)throw new Error("Expected `bullet` (`"+r+"`) and `bulletOther` (`"+n+"`) to be different");return n}function axe(e){const r=e.options.bulletOrdered||".";if(r!=="."&&r!==")")throw new Error("Cannot serialize items with `"+r+"` for `options.bulletOrdered`, expected `.` or `)`");return r}function sI(e){const r=e.options.rule||"*";if(r!=="*"&&r!=="-"&&r!=="_")throw new Error("Cannot serialize rules with `"+r+"` for `options.rule`, expected `*`, `-`, or `_`");return r}function ixe(e,r,n,o){const a=n.enter("list"),i=n.bulletCurrent;let l=e.ordered?axe(n):K_(n);const s=e.ordered?l==="."?")":".":oxe(n);let c=r&&n.bulletLastUsed?l===n.bulletLastUsed:!1;if(!e.ordered){const u=e.children?e.children[0]:void 0;if((l==="*"||l==="-")&&u&&(!u.children||!u.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),sI(n)===l&&u){let p=-1;for(;++p-1?r.start:1)+(n.options.incrementListMarker===!1?0:r.children.indexOf(e))+i);let l=i.length+1;(a==="tab"||a==="mixed"&&(r&&r.type==="list"&&r.spread||e.spread))&&(l=Math.ceil(l/4)*4);const s=n.createTracker(o);s.move(i+" ".repeat(l-i.length)),s.shift(l);const c=n.enter("listItem"),d=n.indentLines(n.containerFlow(e,s.current()),u);return c(),d;function u(p,f,g){return f?(g?"":" ".repeat(l))+p:(g?i:i+" ".repeat(l-i.length))+p}}function cxe(e,r,n,o){const a=n.enter("paragraph"),i=n.enter("phrasing"),l=n.containerPhrasing(e,o);return i(),a(),l}const dxe=Fb(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function uxe(e,r,n,o){return(e.children.some(function(l){return dxe(l)})?n.containerPhrasing:n.containerFlow).call(n,e,o)}function pxe(e){const r=e.options.strong||"*";if(r!=="*"&&r!=="_")throw new Error("Cannot serialize strong with `"+r+"` for `options.strong`, expected `*`, or `_`");return r}cI.peek=hxe;function cI(e,r,n,o){const a=pxe(n),i=n.enter("strong"),l=n.createTracker(o),s=l.move(a+a);let c=l.move(n.containerPhrasing(e,{after:a,before:s,...l.current()}));const d=c.charCodeAt(0),u=qb(o.before.charCodeAt(o.before.length-1),d,a);u.inside&&(c=l1(d)+c.slice(1));const p=c.charCodeAt(c.length-1),f=qb(o.after.charCodeAt(0),p,a);f.inside&&(c=c.slice(0,-1)+l1(p));const g=l.move(a+a);return i(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},s+c+g}function hxe(e,r,n){return n.options.strong||"*"}function fxe(e,r,n,o){return n.safe(e.value,o)}function mxe(e){const r=e.options.ruleRepetition||3;if(r<3)throw new Error("Cannot serialize rules with repetition `"+r+"` for `options.ruleRepetition`, expected `3` or more");return r}function gxe(e,r,n){const o=(sI(n)+(n.options.ruleSpaces?" ":"")).repeat(mxe(n));return n.options.ruleSpaces?o.slice(0,-1):o}const dI={blockquote:Bbe,break:KB,code:qbe,definition:Ube,emphasis:QB,hardBreak:KB,heading:Kbe,html:tI,image:rI,imageReference:nI,inlineCode:oI,link:iI,linkReference:lI,list:ixe,listItem:sxe,paragraph:cxe,root:uxe,strong:cI,text:fxe,thematicBreak:gxe},uI={AElig:"Æ",AMP:"&",Aacute:"Á",Abreve:"Ă",Acirc:"Â",Acy:"А",Afr:"𝔄",Agrave:"À",Alpha:"Α",Amacr:"Ā",And:"⩓",Aogon:"Ą",Aopf:"𝔸",ApplyFunction:"⁡",Aring:"Å",Ascr:"𝒜",Assign:"≔",Atilde:"Ã",Auml:"Ä",Backslash:"∖",Barv:"⫧",Barwed:"⌆",Bcy:"Б",Because:"∵",Bernoullis:"ℬ",Beta:"Β",Bfr:"𝔅",Bopf:"𝔹",Breve:"˘",Bscr:"ℬ",Bumpeq:"≎",CHcy:"Ч",COPY:"©",Cacute:"Ć",Cap:"⋒",CapitalDifferentialD:"ⅅ",Cayleys:"ℭ",Ccaron:"Č",Ccedil:"Ç",Ccirc:"Ĉ",Cconint:"∰",Cdot:"Ċ",Cedilla:"¸",CenterDot:"·",Cfr:"ℭ",Chi:"Χ",CircleDot:"⊙",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",Colon:"∷",Colone:"⩴",Congruent:"≡",Conint:"∯",ContourIntegral:"∮",Copf:"ℂ",Coproduct:"∐",CounterClockwiseContourIntegral:"∳",Cross:"⨯",Cscr:"𝒞",Cup:"⋓",CupCap:"≍",DD:"ⅅ",DDotrahd:"⤑",DJcy:"Ђ",DScy:"Ѕ",DZcy:"Џ",Dagger:"‡",Darr:"↡",Dashv:"⫤",Dcaron:"Ď",Dcy:"Д",Del:"∇",Delta:"Δ",Dfr:"𝔇",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",Diamond:"⋄",DifferentialD:"ⅆ",Dopf:"𝔻",Dot:"¨",DotDot:"⃜",DotEqual:"≐",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",DownBreve:"̑",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",DownTeeArrow:"↧",Downarrow:"⇓",Dscr:"𝒟",Dstrok:"Đ",ENG:"Ŋ",ETH:"Ð",Eacute:"É",Ecaron:"Ě",Ecirc:"Ê",Ecy:"Э",Edot:"Ė",Efr:"𝔈",Egrave:"È",Element:"∈",Emacr:"Ē",EmptySmallSquare:"◻",EmptyVerySmallSquare:"▫",Eogon:"Ę",Eopf:"𝔼",Epsilon:"Ε",Equal:"⩵",EqualTilde:"≂",Equilibrium:"⇌",Escr:"ℰ",Esim:"⩳",Eta:"Η",Euml:"Ë",Exists:"∃",ExponentialE:"ⅇ",Fcy:"Ф",Ffr:"𝔉",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",Fopf:"𝔽",ForAll:"∀",Fouriertrf:"ℱ",Fscr:"ℱ",GJcy:"Ѓ",GT:">",Gamma:"Γ",Gammad:"Ϝ",Gbreve:"Ğ",Gcedil:"Ģ",Gcirc:"Ĝ",Gcy:"Г",Gdot:"Ġ",Gfr:"𝔊",Gg:"⋙",Gopf:"𝔾",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",Gt:"≫",HARDcy:"Ъ",Hacek:"ˇ",Hat:"^",Hcirc:"Ĥ",Hfr:"ℌ",HilbertSpace:"ℋ",Hopf:"ℍ",HorizontalLine:"─",Hscr:"ℋ",Hstrok:"Ħ",HumpDownHump:"≎",HumpEqual:"≏",IEcy:"Е",IJlig:"IJ",IOcy:"Ё",Iacute:"Í",Icirc:"Î",Icy:"И",Idot:"İ",Ifr:"ℑ",Igrave:"Ì",Im:"ℑ",Imacr:"Ī",ImaginaryI:"ⅈ",Implies:"⇒",Int:"∬",Integral:"∫",Intersection:"⋂",InvisibleComma:"⁣",InvisibleTimes:"⁢",Iogon:"Į",Iopf:"𝕀",Iota:"Ι",Iscr:"ℐ",Itilde:"Ĩ",Iukcy:"І",Iuml:"Ï",Jcirc:"Ĵ",Jcy:"Й",Jfr:"𝔍",Jopf:"𝕁",Jscr:"𝒥",Jsercy:"Ј",Jukcy:"Є",KHcy:"Х",KJcy:"Ќ",Kappa:"Κ",Kcedil:"Ķ",Kcy:"К",Kfr:"𝔎",Kopf:"𝕂",Kscr:"𝒦",LJcy:"Љ",LT:"<",Lacute:"Ĺ",Lambda:"Λ",Lang:"⟪",Laplacetrf:"ℒ",Larr:"↞",Lcaron:"Ľ",Lcedil:"Ļ",Lcy:"Л",LeftAngleBracket:"⟨",LeftArrow:"←",LeftArrowBar:"⇤",LeftArrowRightArrow:"⇆",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",LeftRightArrow:"↔",LeftRightVector:"⥎",LeftTee:"⊣",LeftTeeArrow:"↤",LeftTeeVector:"⥚",LeftTriangle:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",LeftVectorBar:"⥒",Leftarrow:"⇐",Leftrightarrow:"⇔",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",LessLess:"⪡",LessSlantEqual:"⩽",LessTilde:"≲",Lfr:"𝔏",Ll:"⋘",Lleftarrow:"⇚",Lmidot:"Ŀ",LongLeftArrow:"⟵",LongLeftRightArrow:"⟷",LongRightArrow:"⟶",Longleftarrow:"⟸",Longleftrightarrow:"⟺",Longrightarrow:"⟹",Lopf:"𝕃",LowerLeftArrow:"↙",LowerRightArrow:"↘",Lscr:"ℒ",Lsh:"↰",Lstrok:"Ł",Lt:"≪",Map:"⤅",Mcy:"М",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",MinusPlus:"∓",Mopf:"𝕄",Mscr:"ℳ",Mu:"Μ",NJcy:"Њ",Nacute:"Ń",Ncaron:"Ň",Ncedil:"Ņ",Ncy:"Н",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:` `,Nfr:"𝔑",NoBreak:"⁠",NonBreakingSpace:" ",Nopf:"ℕ",Not:"⫬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",NotLeftTriangle:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangle:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",Nscr:"𝒩",Ntilde:"Ñ",Nu:"Ν",OElig:"Œ",Oacute:"Ó",Ocirc:"Ô",Ocy:"О",Odblac:"Ő",Ofr:"𝔒",Ograve:"Ò",Omacr:"Ō",Omega:"Ω",Omicron:"Ο",Oopf:"𝕆",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",Or:"⩔",Oscr:"𝒪",Oslash:"Ø",Otilde:"Õ",Otimes:"⨷",Ouml:"Ö",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",PartialD:"∂",Pcy:"П",Pfr:"𝔓",Phi:"Φ",Pi:"Π",PlusMinus:"±",Poincareplane:"ℌ",Popf:"ℙ",Pr:"⪻",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",Prime:"″",Product:"∏",Proportion:"∷",Proportional:"∝",Pscr:"𝒫",Psi:"Ψ",QUOT:'"',Qfr:"𝔔",Qopf:"ℚ",Qscr:"𝒬",RBarr:"⤐",REG:"®",Racute:"Ŕ",Rang:"⟫",Rarr:"↠",Rarrtl:"⤖",Rcaron:"Ř",Rcedil:"Ŗ",Rcy:"Р",Re:"ℜ",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",Rfr:"ℜ",Rho:"Ρ",RightAngleBracket:"⟩",RightArrow:"→",RightArrowBar:"⇥",RightArrowLeftArrow:"⇄",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVector:"⇂",RightDownVectorBar:"⥕",RightFloor:"⌋",RightTee:"⊢",RightTeeArrow:"↦",RightTeeVector:"⥛",RightTriangle:"⊳",RightTriangleBar:"⧐",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVector:"↾",RightUpVectorBar:"⥔",RightVector:"⇀",RightVectorBar:"⥓",Rightarrow:"⇒",Ropf:"ℝ",RoundImplies:"⥰",Rrightarrow:"⇛",Rscr:"ℛ",Rsh:"↱",RuleDelayed:"⧴",SHCHcy:"Щ",SHcy:"Ш",SOFTcy:"Ь",Sacute:"Ś",Sc:"⪼",Scaron:"Š",Scedil:"Ş",Scirc:"Ŝ",Scy:"С",Sfr:"𝔖",ShortDownArrow:"↓",ShortLeftArrow:"←",ShortRightArrow:"→",ShortUpArrow:"↑",Sigma:"Σ",SmallCircle:"∘",Sopf:"𝕊",Sqrt:"√",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",Sscr:"𝒮",Star:"⋆",Sub:"⋐",Subset:"⋐",SubsetEqual:"⊆",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",SuchThat:"∋",Sum:"∑",Sup:"⋑",Superset:"⊃",SupersetEqual:"⊇",Supset:"⋑",THORN:"Þ",TRADE:"™",TSHcy:"Ћ",TScy:"Ц",Tab:" ",Tau:"Τ",Tcaron:"Ť",Tcedil:"Ţ",Tcy:"Т",Tfr:"𝔗",Therefore:"∴",Theta:"Θ",ThickSpace:"  ",ThinSpace:" ",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",Topf:"𝕋",TripleDot:"⃛",Tscr:"𝒯",Tstrok:"Ŧ",Uacute:"Ú",Uarr:"↟",Uarrocir:"⥉",Ubrcy:"Ў",Ubreve:"Ŭ",Ucirc:"Û",Ucy:"У",Udblac:"Ű",Ufr:"𝔘",Ugrave:"Ù",Umacr:"Ū",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",Uopf:"𝕌",UpArrow:"↑",UpArrowBar:"⤒",UpArrowDownArrow:"⇅",UpDownArrow:"↕",UpEquilibrium:"⥮",UpTee:"⊥",UpTeeArrow:"↥",Uparrow:"⇑",Updownarrow:"⇕",UpperLeftArrow:"↖",UpperRightArrow:"↗",Upsi:"ϒ",Upsilon:"Υ",Uring:"Ů",Uscr:"𝒰",Utilde:"Ũ",Uuml:"Ü",VDash:"⊫",Vbar:"⫫",Vcy:"В",Vdash:"⊩",Vdashl:"⫦",Vee:"⋁",Verbar:"‖",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",Vopf:"𝕍",Vscr:"𝒱",Vvdash:"⊪",Wcirc:"Ŵ",Wedge:"⋀",Wfr:"𝔚",Wopf:"𝕎",Wscr:"𝒲",Xfr:"𝔛",Xi:"Ξ",Xopf:"𝕏",Xscr:"𝒳",YAcy:"Я",YIcy:"Ї",YUcy:"Ю",Yacute:"Ý",Ycirc:"Ŷ",Ycy:"Ы",Yfr:"𝔜",Yopf:"𝕐",Yscr:"𝒴",Yuml:"Ÿ",ZHcy:"Ж",Zacute:"Ź",Zcaron:"Ž",Zcy:"З",Zdot:"Ż",ZeroWidthSpace:"​",Zeta:"Ζ",Zfr:"ℨ",Zopf:"ℤ",Zscr:"𝒵",aacute:"á",abreve:"ă",ac:"∾",acE:"∾̳",acd:"∿",acirc:"â",acute:"´",acy:"а",aelig:"æ",af:"⁡",afr:"𝔞",agrave:"à",alefsym:"ℵ",aleph:"ℵ",alpha:"α",amacr:"ā",amalg:"⨿",amp:"&",and:"∧",andand:"⩕",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsd:"∡",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",aogon:"ą",aopf:"𝕒",ap:"≈",apE:"⩰",apacir:"⩯",ape:"≊",apid:"≋",apos:"'",approx:"≈",approxeq:"≊",aring:"å",ascr:"𝒶",ast:"*",asymp:"≈",asympeq:"≍",atilde:"ã",auml:"ä",awconint:"∳",awint:"⨑",bNot:"⫭",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",barvee:"⊽",barwed:"⌅",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",bcy:"б",bdquo:"„",becaus:"∵",because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",beta:"β",beth:"ℶ",between:"≬",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bnot:"⌐",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxDL:"╗",boxDR:"╔",boxDl:"╖",boxDr:"╓",boxH:"═",boxHD:"╦",boxHU:"╩",boxHd:"╤",boxHu:"╧",boxUL:"╝",boxUR:"╚",boxUl:"╜",boxUr:"╙",boxV:"║",boxVH:"╬",boxVL:"╣",boxVR:"╠",boxVh:"╫",boxVl:"╢",boxVr:"╟",boxbox:"⧉",boxdL:"╕",boxdR:"╒",boxdl:"┐",boxdr:"┌",boxh:"─",boxhD:"╥",boxhU:"╨",boxhd:"┬",boxhu:"┴",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxuL:"╛",boxuR:"╘",boxul:"┘",boxur:"└",boxv:"│",boxvH:"╪",boxvL:"╡",boxvR:"╞",boxvh:"┼",boxvl:"┤",boxvr:"├",bprime:"‵",breve:"˘",brvbar:"¦",bscr:"𝒷",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsol:"\\",bsolb:"⧅",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",bumpeq:"≏",cacute:"ć",cap:"∩",capand:"⩄",capbrcup:"⩉",capcap:"⩋",capcup:"⩇",capdot:"⩀",caps:"∩︀",caret:"⁁",caron:"ˇ",ccaps:"⩍",ccaron:"č",ccedil:"ç",ccirc:"ĉ",ccups:"⩌",ccupssm:"⩐",cdot:"ċ",cedil:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",cfr:"𝔠",chcy:"ч",check:"✓",checkmark:"✓",chi:"χ",cir:"○",cirE:"⧃",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledR:"®",circledS:"Ⓢ",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",clubs:"♣",clubsuit:"♣",colon:":",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",conint:"∮",copf:"𝕔",coprod:"∐",copy:"©",copysr:"℗",crarr:"↵",cross:"✗",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cup:"∪",cupbrcap:"⩈",cupcap:"⩆",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dArr:"⇓",dHar:"⥥",dagger:"†",daleth:"ℸ",darr:"↓",dash:"‐",dashv:"⊣",dbkarow:"⤏",dblac:"˝",dcaron:"ď",dcy:"д",dd:"ⅆ",ddagger:"‡",ddarr:"⇊",ddotseq:"⩷",deg:"°",delta:"δ",demptyv:"⦱",dfisht:"⥿",dfr:"𝔡",dharl:"⇃",dharr:"⇂",diam:"⋄",diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",dopf:"𝕕",dot:"˙",doteq:"≐",doteqdot:"≑",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",downarrow:"↓",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",dscr:"𝒹",dscy:"ѕ",dsol:"⧶",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",dzcy:"џ",dzigrarr:"⟿",eDDot:"⩷",eDot:"≑",eacute:"é",easter:"⩮",ecaron:"ě",ecir:"≖",ecirc:"ê",ecolon:"≕",ecy:"э",edot:"ė",ee:"ⅇ",efDot:"≒",efr:"𝔢",eg:"⪚",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",emacr:"ē",empty:"∅",emptyset:"∅",emptyv:"∅",emsp13:" ",emsp14:" ",emsp:" ",eng:"ŋ",ensp:" ",eogon:"ę",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",equals:"=",equest:"≟",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erDot:"≓",erarr:"⥱",escr:"ℯ",esdot:"≐",esim:"≂",eta:"η",eth:"ð",euml:"ë",euro:"€",excl:"!",exist:"∃",expectation:"ℰ",exponentiale:"ⅇ",fallingdotseq:"≒",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",ffr:"𝔣",filig:"fi",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",fopf:"𝕗",forall:"∀",fork:"⋔",forkv:"⫙",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",gE:"≧",gEl:"⪌",gacute:"ǵ",gamma:"γ",gammad:"ϝ",gap:"⪆",gbreve:"ğ",gcirc:"ĝ",gcy:"г",gdot:"ġ",ge:"≥",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",ges:"⩾",gescc:"⪩",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",gfr:"𝔤",gg:"≫",ggg:"⋙",gimel:"ℷ",gjcy:"ѓ",gl:"≷",glE:"⪒",gla:"⪥",glj:"⪤",gnE:"≩",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gneq:"⪈",gneqq:"≩",gnsim:"⋧",gopf:"𝕘",grave:"`",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",gt:">",gtcc:"⪧",gtcir:"⩺",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",hArr:"⇔",hairsp:" ",half:"½",hamilt:"ℋ",hardcy:"ъ",harr:"↔",harrcir:"⥈",harrw:"↭",hbar:"ℏ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",horbar:"―",hscr:"𝒽",hslash:"ℏ",hstrok:"ħ",hybull:"⁃",hyphen:"‐",iacute:"í",ic:"⁣",icirc:"î",icy:"и",iecy:"е",iexcl:"¡",iff:"⇔",ifr:"𝔦",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",ijlig:"ij",imacr:"ī",image:"ℑ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",imof:"⊷",imped:"Ƶ",in:"∈",incare:"℅",infin:"∞",infintie:"⧝",inodot:"ı",int:"∫",intcal:"⊺",integers:"ℤ",intercal:"⊺",intlarhk:"⨗",intprod:"⨼",iocy:"ё",iogon:"į",iopf:"𝕚",iota:"ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",isin:"∈",isinE:"⋹",isindot:"⋵",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"⁢",itilde:"ĩ",iukcy:"і",iuml:"ï",jcirc:"ĵ",jcy:"й",jfr:"𝔧",jmath:"ȷ",jopf:"𝕛",jscr:"𝒿",jsercy:"ј",jukcy:"є",kappa:"κ",kappav:"ϰ",kcedil:"ķ",kcy:"к",kfr:"𝔨",kgreen:"ĸ",khcy:"х",kjcy:"ќ",kopf:"𝕜",kscr:"𝓀",lAarr:"⇚",lArr:"⇐",lAtail:"⤛",lBarr:"⤎",lE:"≦",lEg:"⪋",lHar:"⥢",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",lambda:"λ",lang:"⟨",langd:"⦑",langle:"⟨",lap:"⪅",laquo:"«",larr:"←",larrb:"⇤",larrbfs:"⤟",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",lat:"⪫",latail:"⤙",late:"⪭",lates:"⪭︀",lbarr:"⤌",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",lcaron:"ľ",lcedil:"ļ",lceil:"⌈",lcub:"{",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",leftarrow:"←",leftarrowtail:"↢",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",leftthreetimes:"⋋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",les:"⩽",lescc:"⪨",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",lessgtr:"≶",lesssim:"≲",lfisht:"⥼",lfloor:"⌊",lfr:"𝔩",lg:"≶",lgE:"⪑",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",ljcy:"љ",ll:"≪",llarr:"⇇",llcorner:"⌞",llhard:"⥫",lltri:"◺",lmidot:"ŀ",lmoust:"⎰",lmoustache:"⎰",lnE:"≨",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",longleftrightarrow:"⟷",longmapsto:"⟼",longrightarrow:"⟶",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",lstrok:"ł",lt:"<",ltcc:"⪦",ltcir:"⩹",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltrPar:"⦖",ltri:"◃",ltrie:"⊴",ltrif:"◂",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",mDDot:"∺",macr:"¯",male:"♂",malt:"✠",maltese:"✠",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",mcy:"м",mdash:"—",measuredangle:"∡",mfr:"𝔪",mho:"℧",micro:"µ",mid:"∣",midast:"*",midcir:"⫰",middot:"·",minus:"−",minusb:"⊟",minusd:"∸",minusdu:"⨪",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",mopf:"𝕞",mp:"∓",mscr:"𝓂",mstpos:"∾",mu:"μ",multimap:"⊸",mumap:"⊸",nGg:"⋙̸",nGt:"≫⃒",nGtv:"≫̸",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nLl:"⋘̸",nLt:"≪⃒",nLtv:"≪̸",nRightarrow:"⇏",nVDash:"⊯",nVdash:"⊮",nabla:"∇",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natur:"♮",natural:"♮",naturals:"ℕ",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",ncaron:"ň",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",ncy:"н",ndash:"–",ne:"≠",neArr:"⇗",nearhk:"⤤",nearr:"↗",nearrow:"↗",nedot:"≐̸",nequiv:"≢",nesear:"⤨",nesim:"≂̸",nexist:"∄",nexists:"∄",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",ngsim:"≵",ngt:"≯",ngtr:"≯",nhArr:"⇎",nharr:"↮",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",njcy:"њ",nlArr:"⇍",nlE:"≦̸",nlarr:"↚",nldr:"‥",nle:"≰",nleftarrow:"↚",nleftrightarrow:"↮",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nlsim:"≴",nlt:"≮",nltri:"⋪",nltrie:"⋬",nmid:"∤",nopf:"𝕟",not:"¬",notin:"∉",notinE:"⋹̸",notindot:"⋵̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",npar:"∦",nparallel:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",npre:"⪯̸",nprec:"⊀",npreceq:"⪯̸",nrArr:"⇏",nrarr:"↛",nrarrc:"⤳̸",nrarrw:"↝̸",nrightarrow:"↛",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",nu:"ν",num:"#",numero:"№",numsp:" ",nvDash:"⊭",nvHarr:"⤄",nvap:"≍⃒",nvdash:"⊬",nvge:"≥⃒",nvgt:">⃒",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwArr:"⇖",nwarhk:"⤣",nwarr:"↖",nwarrow:"↖",nwnear:"⤧",oS:"Ⓢ",oacute:"ó",oast:"⊛",ocir:"⊚",ocirc:"ô",ocy:"о",odash:"⊝",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",oelig:"œ",ofcir:"⦿",ofr:"𝔬",ogon:"˛",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",omacr:"ō",omega:"ω",omicron:"ο",omid:"⦶",ominus:"⊖",oopf:"𝕠",opar:"⦷",operp:"⦹",oplus:"⊕",or:"∨",orarr:"↻",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oscr:"ℴ",oslash:"ø",osol:"⊘",otilde:"õ",otimes:"⊗",otimesas:"⨶",ouml:"ö",ovbar:"⌽",par:"∥",para:"¶",parallel:"∥",parsim:"⫳",parsl:"⫽",part:"∂",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",pfr:"𝔭",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plus:"+",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plusdo:"∔",plusdu:"⨥",pluse:"⩲",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",pointint:"⨕",popf:"𝕡",pound:"£",pr:"≺",prE:"⪳",prap:"⪷",prcue:"≼",pre:"⪯",prec:"≺",precapprox:"⪷",preccurlyeq:"≼",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",precsim:"≾",prime:"′",primes:"ℙ",prnE:"⪵",prnap:"⪹",prnsim:"⋨",prod:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",propto:"∝",prsim:"≾",prurel:"⊰",pscr:"𝓅",psi:"ψ",puncsp:" ",qfr:"𝔮",qint:"⨌",qopf:"𝕢",qprime:"⁗",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',rAarr:"⇛",rArr:"⇒",rAtail:"⤜",rBarr:"⤏",rHar:"⥤",race:"∽̱",racute:"ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarr:"→",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",rarrtl:"↣",rarrw:"↝",ratail:"⤚",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",rcaron:"ř",rcedil:"ŗ",rceil:"⌉",rcub:"}",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",rect:"▭",reg:"®",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",rhard:"⇁",rharu:"⇀",rharul:"⥬",rho:"ρ",rhov:"ϱ",rightarrow:"→",rightarrowtail:"↣",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",rightthreetimes:"⋌",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"‏",rmoust:"⎱",rmoustache:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",roplus:"⨮",rotimes:"⨵",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",rsaquo:"›",rscr:"𝓇",rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",ruluhar:"⥨",rx:"℞",sacute:"ś",sbquo:"‚",sc:"≻",scE:"⪴",scap:"⪸",scaron:"š",sccue:"≽",sce:"⪰",scedil:"ş",scirc:"ŝ",scnE:"⪶",scnap:"⪺",scnsim:"⋩",scpolint:"⨓",scsim:"≿",scy:"с",sdot:"⋅",sdotb:"⊡",sdote:"⩦",seArr:"⇘",searhk:"⤥",searr:"↘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",sfr:"𝔰",sfrown:"⌢",sharp:"♯",shchcy:"щ",shcy:"ш",shortmid:"∣",shortparallel:"∥",shy:"­",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",softcy:"ь",sol:"/",solb:"⧄",solbar:"⌿",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",squ:"□",square:"□",squarf:"▪",squf:"▪",srarr:"→",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",subE:"⫅",subdot:"⪽",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",subset:"⊂",subseteq:"⊆",subseteqq:"⫅",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succ:"≻",succapprox:"⪸",succcurlyeq:"≽",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",sum:"∑",sung:"♪",sup1:"¹",sup2:"²",sup3:"³",sup:"⊃",supE:"⫆",supdot:"⪾",supdsub:"⫘",supe:"⊇",supedot:"⫄",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",supset:"⊃",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swArr:"⇙",swarhk:"⤦",swarr:"↙",swarrow:"↙",swnwar:"⤪",szlig:"ß",target:"⌖",tau:"τ",tbrk:"⎴",tcaron:"ť",tcedil:"ţ",tcy:"т",tdot:"⃛",telrec:"⌕",tfr:"𝔱",there4:"∴",therefore:"∴",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",thinsp:" ",thkap:"≈",thksim:"∼",thorn:"þ",tilde:"˜",times:"×",timesb:"⊠",timesbar:"⨱",timesd:"⨰",tint:"∭",toea:"⤨",top:"⊤",topbot:"⌶",topcir:"⫱",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",tscr:"𝓉",tscy:"ц",tshcy:"ћ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",uArr:"⇑",uHar:"⥣",uacute:"ú",uarr:"↑",ubrcy:"ў",ubreve:"ŭ",ucirc:"û",ucy:"у",udarr:"⇅",udblac:"ű",udhar:"⥮",ufisht:"⥾",ufr:"𝔲",ugrave:"ù",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",umacr:"ū",uml:"¨",uogon:"ų",uopf:"𝕦",uparrow:"↑",updownarrow:"↕",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",upsi:"υ",upsih:"ϒ",upsilon:"υ",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",uring:"ů",urtri:"◹",uscr:"𝓊",utdot:"⋰",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",uuml:"ü",uwangle:"⦧",vArr:"⇕",vBar:"⫨",vBarv:"⫩",vDash:"⊨",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vcy:"в",vdash:"⊢",vee:"∨",veebar:"⊻",veeeq:"≚",vellip:"⋮",verbar:"|",vert:"|",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",vopf:"𝕧",vprop:"∝",vrtri:"⊳",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",vzigzag:"⦚",wcirc:"ŵ",wedbar:"⩟",wedge:"∧",wedgeq:"≙",weierp:"℘",wfr:"𝔴",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",xfr:"𝔵",xhArr:"⟺",xharr:"⟷",xi:"ξ",xlArr:"⟸",xlarr:"⟵",xmap:"⟼",xnis:"⋻",xodot:"⨀",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrArr:"⟹",xrarr:"⟶",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",yacute:"ý",yacy:"я",ycirc:"ŷ",ycy:"ы",yen:"¥",yfr:"𝔶",yicy:"ї",yopf:"𝕪",yscr:"𝓎",yucy:"ю",yuml:"ÿ",zacute:"ź",zcaron:"ž",zcy:"з",zdot:"ż",zeetrf:"ℨ",zeta:"ζ",zfr:"𝔷",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",zscr:"𝓏",zwj:"‍",zwnj:"‌"},yxe={}.hasOwnProperty;function Q_(e){return yxe.call(uI,e)?uI[e]:!1}function pI(e,r){const n=Number.parseInt(e,r);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}const vxe=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function bxe(e){return e.replace(vxe,xxe)}function xxe(e,r,n){if(r)return r;if(n.charCodeAt(0)===35){const a=n.charCodeAt(1),i=a===120||a===88;return pI(n.slice(i?2:1),i?16:10)}return Q_(n)||e}function wxe(){return{enter:{table:kxe,tableData:hI,tableHeader:hI,tableRow:Sxe},exit:{codeText:Exe,table:_xe,tableData:J_,tableHeader:J_,tableRow:J_}}}function kxe(e){const r=e._align;this.enter({type:"table",align:r.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function _xe(e){this.exit(e),this.data.inTable=void 0}function Sxe(e){this.enter({type:"tableRow",children:[]},e)}function J_(e){this.exit(e)}function hI(e){this.enter({type:"tableCell",children:[]},e)}function Exe(e){let r=this.resume();this.data.inTable&&(r=r.replace(/\\([\\|])/g,Cxe));const n=this.stack[this.stack.length-1];n.type,n.value=r,this.exit(e)}function Cxe(e,r){return r==="|"?r:e}function $xe(e){const r=e||{},n=r.tableCellPadding,o=r.tablePipeAlign,a=r.stringLength,i=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` `,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:f,table:l,tableCell:c,tableRow:s}};function l(g,v,w,x){return d(u(g,w,x),g.align)}function s(g,v,w,x){const k=p(g,w,x),C=d([k]);return C.slice(0,C.indexOf(` -`))}function c(g,v,w,x){const k=w.enter("tableCell"),C=w.enter("phrasing"),_=w.containerPhrasing(g,{...x,before:i,after:i});return C(),k(),_}function d(g,v){return Nbe(g,{align:v,alignDelimiters:o,padding:n,stringLength:a})}function u(g,v,w){const x=g.children;let k=-1;const C=[],_=v.enter("table");for(;++ka?0:a+r:r=r>a?a:r,n=n>0?n:0,o.length<1e4)l=Array.from(o),l.unshift(r,n),e.splice(...l);else for(n&&e.splice(r,n);i0?(xa(e,e.length,0,r),e):r}const mI={}.hasOwnProperty;function gI(e){const r={};let n=-1;for(;++n0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}function Vh(e){const r=[];let n=-1,o=0,a=0;for(;++n55295&&i<57344){const s=e.charCodeAt(n+1);i<56320&&s>56319&&s<57344?(l=String.fromCharCode(i,s),a=1):l="�"}else l=String.fromCharCode(i);l&&(r.push(e.slice(o,n),encodeURIComponent(l)),o=n+a+1,l=""),a&&(n+=a,a=0)}return r.join("")+e.slice(o)}function Ub(e,r,n){const o=[];let a=-1;for(;++a1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const p={...e[o][1].end},f={...e[n][1].start};EI(p,-c),EI(f,c),l={type:c>1?"strongSequence":"emphasisSequence",start:p,end:{...e[o][1].end}},s={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:f},i={type:c>1?"strongText":"emphasisText",start:{...e[o][1].end},end:{...e[n][1].start}},a={type:c>1?"strong":"emphasis",start:{...l.start},end:{...s.end}},e[o][1].end={...l.start},e[n][1].start={...s.end},d=[],e[o][1].end.offset-e[o][1].start.offset&&(d=Qa(d,[["enter",e[o][1],r],["exit",e[o][1],r]])),d=Qa(d,[["enter",a,r],["enter",l,r],["exit",l,r],["enter",i,r]]),d=Qa(d,Ub(r.parser.constructs.insideSpan.null,e.slice(o+1,n),r)),d=Qa(d,[["exit",i,r],["enter",s,r],["exit",s,r],["exit",a,r]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,d=Qa(d,[["enter",e[n][1],r],["exit",e[n][1],r]])):u=0,xa(e,o-1,n-o+3,d),n=o+d.length-u-2;break}}for(n=-1;++n0&&Vt(T)?Kt(e,C,"linePrefix",i+1)(T):C(T)}function C(T){return T===null||gt(T)?e.check(RI,w,$)(T):(e.enter("codeFlowValue"),_(T))}function _(T){return T===null||gt(T)?(e.exit("codeFlowValue"),C(T)):(e.consume(T),_)}function $(T){return e.exit("codeFenced"),r(T)}function z(T,A,R){let j=0;return I;function I(V){return T.enter("lineEnding"),T.consume(V),T.exit("lineEnding"),P}function P(V){return T.enter("codeFencedFence"),Vt(V)?Kt(T,L,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(V):L(V)}function L(V){return V===s?(T.enter("codeFencedFenceSequence"),H(V)):R(V)}function H(V){return V===s?(j++,T.consume(V),H):j>=l?(T.exit("codeFencedFenceSequence"),Vt(V)?Kt(T,M,"whitespace")(V):M(V)):R(V)}function M(V){return V===null||gt(V)?(T.exit("codeFencedFence"),A(V)):R(V)}}}function owe(e,r,n){const o=this;return a;function a(l){return l===null?n(l):(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i)}function i(l){return o.parser.lazy[o.now().line]?n(l):r(l)}}const n8={name:"codeIndented",tokenize:iwe},awe={partial:!0,tokenize:lwe};function iwe(e,r,n){const o=this;return a;function a(d){return e.enter("codeIndented"),Kt(e,i,"linePrefix",5)(d)}function i(d){const u=o.events[o.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?l(d):n(d)}function l(d){return d===null?c(d):gt(d)?e.attempt(awe,l,c)(d):(e.enter("codeFlowValue"),s(d))}function s(d){return d===null||gt(d)?(e.exit("codeFlowValue"),l(d)):(e.consume(d),s)}function c(d){return e.exit("codeIndented"),r(d)}}function lwe(e,r,n){const o=this;return a;function a(l){return o.parser.lazy[o.now().line]?n(l):gt(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a):Kt(e,i,"linePrefix",5)(l)}function i(l){const s=o.events[o.events.length-1];return s&&s[1].type==="linePrefix"&&s[2].sliceSerialize(s[1],!0).length>=4?r(l):gt(l)?a(l):n(l)}}const swe={name:"codeText",previous:dwe,resolve:cwe,tokenize:uwe};function cwe(e){let r=e.length-4,n=3,o,a;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[r][1].type==="lineEnding"||e[r][1].type==="space")){for(o=n;++o=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+r+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return rthis.left.length?this.right.slice(this.right.length-o+this.left.length,this.right.length-r+this.left.length).reverse():this.left.slice(r).concat(this.right.slice(this.right.length-o+this.left.length).reverse())}splice(r,n,o){const a=n||0;this.setCursor(Math.trunc(r));const i=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return o&&c1(this.left,o),i.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(r){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(r)}pushMany(r){this.setCursor(Number.POSITIVE_INFINITY),c1(this.left,r)}unshift(r){this.setCursor(0),this.right.push(r)}unshiftMany(r){this.setCursor(0),c1(this.right,r.reverse())}setCursor(r){if(!(r===this.left.length||r>this.left.length&&this.right.length===0||r<0&&this.left.length===0))if(r=4?r(l):e.interrupt(o.parser.constructs.flow,n,r)(l)}}function AI(e,r,n,o,a,i,l,s,c){const d=c||Number.POSITIVE_INFINITY;let u=0;return p;function p(k){return k===60?(e.enter(o),e.enter(a),e.enter(i),e.consume(k),e.exit(i),f):k===null||k===32||k===41||Ob(k)?n(k):(e.enter(o),e.enter(l),e.enter(s),e.enter("chunkString",{contentType:"string"}),w(k))}function f(k){return k===62?(e.enter(i),e.consume(k),e.exit(i),e.exit(a),e.exit(o),r):(e.enter(s),e.enter("chunkString",{contentType:"string"}),g(k))}function g(k){return k===62?(e.exit("chunkString"),e.exit(s),f(k)):k===null||k===60||gt(k)?n(k):(e.consume(k),k===92?v:g)}function v(k){return k===60||k===62||k===92?(e.consume(k),g):g(k)}function w(k){return!u&&(k===null||k===41||Sr(k))?(e.exit("chunkString"),e.exit(s),e.exit(l),e.exit(o),r(k)):u999||g===null||g===91||g===93&&!c||g===94&&!s&&"_hiddenFootnoteSupport"in l.parser.constructs?n(g):g===93?(e.exit(i),e.enter(a),e.consume(g),e.exit(a),e.exit(o),r):gt(g)?(e.enter("lineEnding"),e.consume(g),e.exit("lineEnding"),u):(e.enter("chunkString",{contentType:"string"}),p(g))}function p(g){return g===null||g===91||g===93||gt(g)||s++>999?(e.exit("chunkString"),u(g)):(e.consume(g),c||(c=!Vt(g)),g===92?f:p)}function f(g){return g===91||g===92||g===93?(e.consume(g),s++,p):p(g)}}function MI(e,r,n,o,a,i){let l;return s;function s(f){return f===34||f===39||f===40?(e.enter(o),e.enter(a),e.consume(f),e.exit(a),l=f===40?41:f,c):n(f)}function c(f){return f===l?(e.enter(a),e.consume(f),e.exit(a),e.exit(o),r):(e.enter(i),d(f))}function d(f){return f===l?(e.exit(i),c(l)):f===null?n(f):gt(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),Kt(e,d,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),u(f))}function u(f){return f===l||f===null||gt(f)?(e.exit("chunkString"),d(f)):(e.consume(f),f===92?p:u)}function p(f){return f===l||f===92?(e.consume(f),u):u(f)}}function d1(e,r){let n;return o;function o(a){return gt(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),n=!0,o):Vt(a)?Kt(e,o,n?"linePrefix":"lineSuffix")(a):r(a)}}const bwe={name:"definition",tokenize:wwe},xwe={partial:!0,tokenize:kwe};function wwe(e,r,n){const o=this;let a;return i;function i(g){return e.enter("definition"),l(g)}function l(g){return DI.call(o,e,s,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(g)}function s(g){return a=Ui(o.sliceSerialize(o.events[o.events.length-1][1]).slice(1,-1)),g===58?(e.enter("definitionMarker"),e.consume(g),e.exit("definitionMarker"),c):n(g)}function c(g){return Sr(g)?d1(e,d)(g):d(g)}function d(g){return AI(e,u,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(g)}function u(g){return e.attempt(xwe,p,p)(g)}function p(g){return Vt(g)?Kt(e,f,"whitespace")(g):f(g)}function f(g){return g===null||gt(g)?(e.exit("definition"),o.parser.defined.push(a),r(g)):n(g)}}function kwe(e,r,n){return o;function o(s){return Sr(s)?d1(e,a)(s):n(s)}function a(s){return MI(e,i,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(s)}function i(s){return Vt(s)?Kt(e,l,"whitespace")(s):l(s)}function l(s){return s===null||gt(s)?r(s):n(s)}}const _we={name:"hardBreakEscape",tokenize:Swe};function Swe(e,r,n){return o;function o(i){return e.enter("hardBreakEscape"),e.consume(i),a}function a(i){return gt(i)?(e.exit("hardBreakEscape"),r(i)):n(i)}}const Ewe={name:"headingAtx",resolve:Cwe,tokenize:$we};function Cwe(e,r){let n=e.length-2,o=3,a,i;return e[o][1].type==="whitespace"&&(o+=2),n-2>o&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(o===n-1||n-4>o&&e[n-2][1].type==="whitespace")&&(n-=o+1===n?2:4),n>o&&(a={type:"atxHeadingText",start:e[o][1].start,end:e[n][1].end},i={type:"chunkText",start:e[o][1].start,end:e[n][1].end,contentType:"text"},xa(e,o,n-o+1,[["enter",a,r],["enter",i,r],["exit",i,r],["exit",a,r]])),e}function $we(e,r,n){let o=0;return a;function a(u){return e.enter("atxHeading"),i(u)}function i(u){return e.enter("atxHeadingSequence"),l(u)}function l(u){return u===35&&o++<6?(e.consume(u),l):u===null||Sr(u)?(e.exit("atxHeadingSequence"),s(u)):n(u)}function s(u){return u===35?(e.enter("atxHeadingSequence"),c(u)):u===null||gt(u)?(e.exit("atxHeading"),r(u)):Vt(u)?Kt(e,s,"whitespace")(u):(e.enter("atxHeadingText"),d(u))}function c(u){return u===35?(e.consume(u),c):(e.exit("atxHeadingSequence"),s(u))}function d(u){return u===null||u===35||Sr(u)?(e.exit("atxHeadingText"),s(u)):(e.consume(u),d)}}const zwe=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],NI=["pre","script","style","textarea"],Rwe={concrete:!0,name:"htmlFlow",resolveTo:Awe,tokenize:Dwe},Twe={partial:!0,tokenize:Nwe},jwe={partial:!0,tokenize:Mwe};function Awe(e){let r=e.length;for(;r--&&!(e[r][0]==="enter"&&e[r][1].type==="htmlFlow"););return r>1&&e[r-2][1].type==="linePrefix"&&(e[r][1].start=e[r-2][1].start,e[r+1][1].start=e[r-2][1].start,e.splice(r-2,2)),e}function Dwe(e,r,n){const o=this;let a,i,l,s,c;return d;function d(O){return u(O)}function u(O){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(O),p}function p(O){return O===33?(e.consume(O),f):O===47?(e.consume(O),i=!0,w):O===63?(e.consume(O),a=3,o.interrupt?r:U):Bo(O)?(e.consume(O),l=String.fromCharCode(O),x):n(O)}function f(O){return O===45?(e.consume(O),a=2,g):O===91?(e.consume(O),a=5,s=0,v):Bo(O)?(e.consume(O),a=4,o.interrupt?r:U):n(O)}function g(O){return O===45?(e.consume(O),o.interrupt?r:U):n(O)}function v(O){const W="CDATA[";return O===W.charCodeAt(s++)?(e.consume(O),s===W.length?o.interrupt?r:L:v):n(O)}function w(O){return Bo(O)?(e.consume(O),l=String.fromCharCode(O),x):n(O)}function x(O){if(O===null||O===47||O===62||Sr(O)){const W=O===47,K=l.toLowerCase();return!W&&!i&&NI.includes(K)?(a=1,o.interrupt?r(O):L(O)):zwe.includes(l.toLowerCase())?(a=6,W?(e.consume(O),k):o.interrupt?r(O):L(O)):(a=7,o.interrupt&&!o.parser.lazy[o.now().line]?n(O):i?C(O):_(O))}return O===45||xo(O)?(e.consume(O),l+=String.fromCharCode(O),x):n(O)}function k(O){return O===62?(e.consume(O),o.interrupt?r:L):n(O)}function C(O){return Vt(O)?(e.consume(O),C):I(O)}function _(O){return O===47?(e.consume(O),I):O===58||O===95||Bo(O)?(e.consume(O),$):Vt(O)?(e.consume(O),_):I(O)}function $(O){return O===45||O===46||O===58||O===95||xo(O)?(e.consume(O),$):z(O)}function z(O){return O===61?(e.consume(O),T):Vt(O)?(e.consume(O),z):_(O)}function T(O){return O===null||O===60||O===61||O===62||O===96?n(O):O===34||O===39?(e.consume(O),c=O,A):Vt(O)?(e.consume(O),T):R(O)}function A(O){return O===c?(e.consume(O),c=null,j):O===null||gt(O)?n(O):(e.consume(O),A)}function R(O){return O===null||O===34||O===39||O===47||O===60||O===61||O===62||O===96||Sr(O)?z(O):(e.consume(O),R)}function j(O){return O===47||O===62||Vt(O)?_(O):n(O)}function I(O){return O===62?(e.consume(O),P):n(O)}function P(O){return O===null||gt(O)?L(O):Vt(O)?(e.consume(O),P):n(O)}function L(O){return O===45&&a===2?(e.consume(O),B):O===60&&a===1?(e.consume(O),F):O===62&&a===4?(e.consume(O),Y):O===63&&a===3?(e.consume(O),U):O===93&&a===5?(e.consume(O),G):gt(O)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(Twe,Z,H)(O)):O===null||gt(O)?(e.exit("htmlFlowData"),H(O)):(e.consume(O),L)}function H(O){return e.check(jwe,M,Z)(O)}function M(O){return e.enter("lineEnding"),e.consume(O),e.exit("lineEnding"),V}function V(O){return O===null||gt(O)?H(O):(e.enter("htmlFlowData"),L(O))}function B(O){return O===45?(e.consume(O),U):L(O)}function F(O){return O===47?(e.consume(O),l="",q):L(O)}function q(O){if(O===62){const W=l.toLowerCase();return NI.includes(W)?(e.consume(O),Y):L(O)}return Bo(O)&&l.length<8?(e.consume(O),l+=String.fromCharCode(O),q):L(O)}function G(O){return O===93?(e.consume(O),U):L(O)}function U(O){return O===62?(e.consume(O),Y):O===45&&a===2?(e.consume(O),U):L(O)}function Y(O){return O===null||gt(O)?(e.exit("htmlFlowData"),Z(O)):(e.consume(O),Y)}function Z(O){return e.exit("htmlFlow"),r(O)}}function Mwe(e,r,n){const o=this;return a;function a(l){return gt(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i):n(l)}function i(l){return o.parser.lazy[o.now().line]?n(l):r(l)}}function Nwe(e,r,n){return o;function o(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(s1,r,n)}}const Pwe={name:"htmlText",tokenize:Bwe};function Bwe(e,r,n){const o=this;let a,i,l;return s;function s(U){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(U),c}function c(U){return U===33?(e.consume(U),d):U===47?(e.consume(U),z):U===63?(e.consume(U),_):Bo(U)?(e.consume(U),R):n(U)}function d(U){return U===45?(e.consume(U),u):U===91?(e.consume(U),i=0,v):Bo(U)?(e.consume(U),C):n(U)}function u(U){return U===45?(e.consume(U),g):n(U)}function p(U){return U===null?n(U):U===45?(e.consume(U),f):gt(U)?(l=p,F(U)):(e.consume(U),p)}function f(U){return U===45?(e.consume(U),g):p(U)}function g(U){return U===62?B(U):U===45?f(U):p(U)}function v(U){const Y="CDATA[";return U===Y.charCodeAt(i++)?(e.consume(U),i===Y.length?w:v):n(U)}function w(U){return U===null?n(U):U===93?(e.consume(U),x):gt(U)?(l=w,F(U)):(e.consume(U),w)}function x(U){return U===93?(e.consume(U),k):w(U)}function k(U){return U===62?B(U):U===93?(e.consume(U),k):w(U)}function C(U){return U===null||U===62?B(U):gt(U)?(l=C,F(U)):(e.consume(U),C)}function _(U){return U===null?n(U):U===63?(e.consume(U),$):gt(U)?(l=_,F(U)):(e.consume(U),_)}function $(U){return U===62?B(U):_(U)}function z(U){return Bo(U)?(e.consume(U),T):n(U)}function T(U){return U===45||xo(U)?(e.consume(U),T):A(U)}function A(U){return gt(U)?(l=A,F(U)):Vt(U)?(e.consume(U),A):B(U)}function R(U){return U===45||xo(U)?(e.consume(U),R):U===47||U===62||Sr(U)?j(U):n(U)}function j(U){return U===47?(e.consume(U),B):U===58||U===95||Bo(U)?(e.consume(U),I):gt(U)?(l=j,F(U)):Vt(U)?(e.consume(U),j):B(U)}function I(U){return U===45||U===46||U===58||U===95||xo(U)?(e.consume(U),I):P(U)}function P(U){return U===61?(e.consume(U),L):gt(U)?(l=P,F(U)):Vt(U)?(e.consume(U),P):j(U)}function L(U){return U===null||U===60||U===61||U===62||U===96?n(U):U===34||U===39?(e.consume(U),a=U,H):gt(U)?(l=L,F(U)):Vt(U)?(e.consume(U),L):(e.consume(U),M)}function H(U){return U===a?(e.consume(U),a=void 0,V):U===null?n(U):gt(U)?(l=H,F(U)):(e.consume(U),H)}function M(U){return U===null||U===34||U===39||U===60||U===61||U===96?n(U):U===47||U===62||Sr(U)?j(U):(e.consume(U),M)}function V(U){return U===47||U===62||Sr(U)?j(U):n(U)}function B(U){return U===62?(e.consume(U),e.exit("htmlTextData"),e.exit("htmlText"),r):n(U)}function F(U){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(U),e.exit("lineEnding"),q}function q(U){return Vt(U)?Kt(e,G,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(U):G(U)}function G(U){return e.enter("htmlTextData"),l(U)}}const o8={name:"labelEnd",resolveAll:Fwe,resolveTo:Vwe,tokenize:qwe},Iwe={tokenize:Hwe},Owe={tokenize:Uwe},Lwe={tokenize:Wwe};function Fwe(e){let r=-1;const n=[];for(;++r=3&&(d===null||gt(d))?(e.exit("thematicBreak"),r(d)):n(d)}function c(d){return d===a?(e.consume(d),o++,c):(e.exit("thematicBreakSequence"),Vt(d)?Kt(e,s,"whitespace")(d):s(d))}}const ea={continuation:{tokenize:r3e},exit:o3e,name:"list",tokenize:t3e},Jwe={partial:!0,tokenize:a3e},e3e={partial:!0,tokenize:n3e};function t3e(e,r,n){const o=this,a=o.events[o.events.length-1];let i=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,l=0;return s;function s(g){const v=o.containerState.type||(g===42||g===43||g===45?"listUnordered":"listOrdered");if(v==="listUnordered"?!o.containerState.marker||g===o.containerState.marker:H_(g)){if(o.containerState.type||(o.containerState.type=v,e.enter(v,{_container:!0})),v==="listUnordered")return e.enter("listItemPrefix"),g===42||g===45?e.check(Wb,n,d)(g):d(g);if(!o.interrupt||g===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(g)}return n(g)}function c(g){return H_(g)&&++l<10?(e.consume(g),c):(!o.interrupt||l<2)&&(o.containerState.marker?g===o.containerState.marker:g===41||g===46)?(e.exit("listItemValue"),d(g)):n(g)}function d(g){return e.enter("listItemMarker"),e.consume(g),e.exit("listItemMarker"),o.containerState.marker=o.containerState.marker||g,e.check(s1,o.interrupt?n:u,e.attempt(Jwe,f,p))}function u(g){return o.containerState.initialBlankLine=!0,i++,f(g)}function p(g){return Vt(g)?(e.enter("listItemPrefixWhitespace"),e.consume(g),e.exit("listItemPrefixWhitespace"),f):n(g)}function f(g){return o.containerState.size=i+o.sliceSerialize(e.exit("listItemPrefix"),!0).length,r(g)}}function r3e(e,r,n){const o=this;return o.containerState._closeFlow=void 0,e.check(s1,a,i);function a(s){return o.containerState.furtherBlankLines=o.containerState.furtherBlankLines||o.containerState.initialBlankLine,Kt(e,r,"listItemIndent",o.containerState.size+1)(s)}function i(s){return o.containerState.furtherBlankLines||!Vt(s)?(o.containerState.furtherBlankLines=void 0,o.containerState.initialBlankLine=void 0,l(s)):(o.containerState.furtherBlankLines=void 0,o.containerState.initialBlankLine=void 0,e.attempt(e3e,r,l)(s))}function l(s){return o.containerState._closeFlow=!0,o.interrupt=void 0,Kt(e,e.attempt(ea,r,n),"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s)}}function n3e(e,r,n){const o=this;return Kt(e,a,"listItemIndent",o.containerState.size+1);function a(i){const l=o.events[o.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===o.containerState.size?r(i):n(i)}}function o3e(e){e.exit(this.containerState.type)}function a3e(e,r,n){const o=this;return Kt(e,a,"listItemPrefixWhitespace",o.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(i){const l=o.events[o.events.length-1];return!Vt(i)&&l&&l[1].type==="listItemPrefixWhitespace"?r(i):n(i)}}const PI={name:"setextUnderline",resolveTo:i3e,tokenize:l3e};function i3e(e,r){let n=e.length,o,a,i;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){o=n;break}e[n][1].type==="paragraph"&&(a=n)}else e[n][1].type==="content"&&e.splice(n,1),!i&&e[n][1].type==="definition"&&(i=n);const l={type:"setextHeading",start:{...e[o][1].start},end:{...e[e.length-1][1].end}};return e[a][1].type="setextHeadingText",i?(e.splice(a,0,["enter",l,r]),e.splice(i+1,0,["exit",e[o][1],r]),e[o][1].end={...e[i][1].end}):e[o][1]=l,e.push(["exit",l,r]),e}function l3e(e,r,n){const o=this;let a;return i;function i(d){let u=o.events.length,p;for(;u--;)if(o.events[u][1].type!=="lineEnding"&&o.events[u][1].type!=="linePrefix"&&o.events[u][1].type!=="content"){p=o.events[u][1].type==="paragraph";break}return!o.parser.lazy[o.now().line]&&(o.interrupt||p)?(e.enter("setextHeadingLine"),a=d,l(d)):n(d)}function l(d){return e.enter("setextHeadingLineSequence"),s(d)}function s(d){return d===a?(e.consume(d),s):(e.exit("setextHeadingLineSequence"),Vt(d)?Kt(e,c,"lineSuffix")(d):c(d))}function c(d){return d===null||gt(d)?(e.exit("setextHeadingLine"),r(d)):n(d)}}const s3e={tokenize:g3e,partial:!0};function c3e(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:h3e,continuation:{tokenize:f3e},exit:m3e}},text:{91:{name:"gfmFootnoteCall",tokenize:p3e},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:d3e,resolveTo:u3e}}}}function d3e(e,r,n){const o=this;let a=o.events.length;const i=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let l;for(;a--;){const c=o.events[a][1];if(c.type==="labelImage"){l=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return s;function s(c){if(!l||!l._balanced)return n(c);const d=Ui(o.sliceSerialize({start:l.end,end:o.now()}));return d.codePointAt(0)!==94||!i.includes(d.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),r(c))}}function u3e(e,r){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const o={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},a={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};a.end.column++,a.end.offset++,a.end._bufferIndex++;const i={type:"gfmFootnoteCallString",start:Object.assign({},a.end),end:Object.assign({},e[e.length-1][1].start)},l={type:"chunkString",contentType:"string",start:Object.assign({},i.start),end:Object.assign({},i.end)},s=[e[n+1],e[n+2],["enter",o,r],e[n+3],e[n+4],["enter",a,r],["exit",a,r],["enter",i,r],["enter",l,r],["exit",l,r],["exit",i,r],e[e.length-2],e[e.length-1],["exit",o,r]];return e.splice(n,e.length-n+1,...s),e}function p3e(e,r,n){const o=this,a=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let i=0,l;return s;function s(p){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),c}function c(p){return p!==94?n(p):(e.enter("gfmFootnoteCallMarker"),e.consume(p),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",d)}function d(p){if(i>999||p===93&&!l||p===null||p===91||Sr(p))return n(p);if(p===93){e.exit("chunkString");const f=e.exit("gfmFootnoteCallString");return a.includes(Ui(o.sliceSerialize(f)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),r):n(p)}return Sr(p)||(l=!0),i++,e.consume(p),p===92?u:d}function u(p){return p===91||p===92||p===93?(e.consume(p),i++,d):d(p)}}function h3e(e,r,n){const o=this,a=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let i,l=0,s;return c;function c(v){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionLabelMarker"),d}function d(v){return v===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",u):n(v)}function u(v){if(l>999||v===93&&!s||v===null||v===91||Sr(v))return n(v);if(v===93){e.exit("chunkString");const w=e.exit("gfmFootnoteDefinitionLabelString");return i=Ui(o.sliceSerialize(w)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),f}return Sr(v)||(s=!0),l++,e.consume(v),v===92?p:u}function p(v){return v===91||v===92||v===93?(e.consume(v),l++,u):u(v)}function f(v){return v===58?(e.enter("definitionMarker"),e.consume(v),e.exit("definitionMarker"),a.includes(i)||a.push(i),Kt(e,g,"gfmFootnoteDefinitionWhitespace")):n(v)}function g(v){return r(v)}}function f3e(e,r,n){return e.check(s1,r,e.attempt(s3e,r,n))}function m3e(e){e.exit("gfmFootnoteDefinition")}function g3e(e,r,n){const o=this;return Kt(e,a,"gfmFootnoteDefinitionIndent",5);function a(i){const l=o.events[o.events.length-1];return l&&l[1].type==="gfmFootnoteDefinitionIndent"&&l[2].sliceSerialize(l[1],!0).length===4?r(i):n(i)}}function y3e(e){let n=(e||{}).singleTilde;const o={name:"strikethrough",tokenize:i,resolveAll:a};return n==null&&(n=!0),{text:{126:o},insideSpan:{null:[o]},attentionMarkers:{null:[126]}};function a(l,s){let c=-1;for(;++c1?c(v):(l.consume(v),p++,g);if(p<2&&!n)return c(v);const x=l.exit("strikethroughSequenceTemporary"),k=Fh(v);return x._open=!k||k===2&&!!w,x._close=!w||w===2&&!!k,s(v)}}}class v3e{constructor(){this.map=[]}add(r,n,o){b3e(this,r,n,o)}consume(r){if(this.map.sort(function(i,l){return i[0]-l[0]}),this.map.length===0)return;let n=this.map.length;const o=[];for(;n>0;)n-=1,o.push(r.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),r.length=this.map[n][0];o.push(r.slice()),r.length=0;let a=o.pop();for(;a;){for(const i of a)r.push(i);a=o.pop()}this.map.length=0}}function b3e(e,r,n,o){let a=0;if(!(n===0&&o.length===0)){for(;a-1;){const M=o.events[P][1].type;if(M==="lineEnding"||M==="linePrefix")P--;else break}const L=P>-1?o.events[P][1].type:null,H=L==="tableHead"||L==="tableRow"?T:c;return H===T&&o.parser.lazy[o.now().line]?n(I):H(I)}function c(I){return e.enter("tableHead"),e.enter("tableRow"),d(I)}function d(I){return I===124||(l=!0,i+=1),u(I)}function u(I){return I===null?n(I):gt(I)?i>1?(i=0,o.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(I),e.exit("lineEnding"),g):n(I):Vt(I)?Kt(e,u,"whitespace")(I):(i+=1,l&&(l=!1,a+=1),I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),l=!0,u):(e.enter("data"),p(I)))}function p(I){return I===null||I===124||Sr(I)?(e.exit("data"),u(I)):(e.consume(I),I===92?f:p)}function f(I){return I===92||I===124?(e.consume(I),p):p(I)}function g(I){return o.interrupt=!1,o.parser.lazy[o.now().line]?n(I):(e.enter("tableDelimiterRow"),l=!1,Vt(I)?Kt(e,v,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(I):v(I))}function v(I){return I===45||I===58?x(I):I===124?(l=!0,e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),w):z(I)}function w(I){return Vt(I)?Kt(e,x,"whitespace")(I):x(I)}function x(I){return I===58?(i+=1,l=!0,e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),k):I===45?(i+=1,k(I)):I===null||gt(I)?$(I):z(I)}function k(I){return I===45?(e.enter("tableDelimiterFiller"),C(I)):z(I)}function C(I){return I===45?(e.consume(I),C):I===58?(l=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),_):(e.exit("tableDelimiterFiller"),_(I))}function _(I){return Vt(I)?Kt(e,$,"whitespace")(I):$(I)}function $(I){return I===124?v(I):I===null||gt(I)?!l||a!==i?z(I):(e.exit("tableDelimiterRow"),e.exit("tableHead"),r(I)):z(I)}function z(I){return n(I)}function T(I){return e.enter("tableRow"),A(I)}function A(I){return I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),A):I===null||gt(I)?(e.exit("tableRow"),r(I)):Vt(I)?Kt(e,A,"whitespace")(I):(e.enter("data"),R(I))}function R(I){return I===null||I===124||Sr(I)?(e.exit("data"),A(I)):(e.consume(I),I===92?j:R)}function j(I){return I===92||I===124?(e.consume(I),R):R(I)}}function _3e(e,r){let n=-1,o=!0,a=0,i=[0,0,0,0],l=[0,0,0,0],s=!1,c=0,d,u,p;const f=new v3e;for(;++nn[2]+1){const v=n[2]+1,w=n[3]-n[2]-1;e.add(v,w,[])}}e.add(n[3]+1,0,[["exit",p,r]])}return a!==void 0&&(i.end=Object.assign({},qh(r.events,a)),e.add(a,0,[["exit",i,r]]),i=void 0),i}function BI(e,r,n,o,a){const i=[],l=qh(r.events,n);a&&(a.end=Object.assign({},l),i.push(["exit",a,r])),o.end=Object.assign({},l),i.push(["exit",o,r]),e.add(n+1,0,i)}function qh(e,r){const n=e[r],o=n[0]==="enter"?"start":"end";return n[1][o]}const S3e={name:"tasklistCheck",tokenize:C3e};function E3e(){return{text:{91:S3e}}}function C3e(e,r,n){const o=this;return a;function a(c){return o.previous!==null||!o._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),i)}function i(c){return Sr(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),l):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),l):n(c)}function l(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),s):n(c)}function s(c){return gt(c)?r(c):Vt(c)?e.check({tokenize:$3e},r,n)(c):n(c)}}function $3e(e,r,n){return Kt(e,o,"whitespace");function o(a){return a===null?n(a):r(a)}}function z3e(e){return gI([Ixe(),c3e(),y3e(e),w3e(),E3e()])}const R3e={};function T3e(e){const r=this,n=e||R3e,o=r.data(),a=o.micromarkExtensions||(o.micromarkExtensions=[]),i=o.fromMarkdownExtensions||(o.fromMarkdownExtensions=[]),l=o.toMarkdownExtensions||(o.toMarkdownExtensions=[]);a.push(z3e(n)),i.push(Axe()),l.push(Dxe(n))}const j3e=/^\[!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]/i,A3e=/^\[!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)(\/.*)?\]/i,D3e=({legacyTitle:e=!1,tagName:r="div"}={})=>n=>{Z_(n,"blockquote",(o,a,i)=>{let l="",s="",c=!0,d=o.children.map(u=>{if(c&&u.type==="paragraph"){const p=u.children[0],f=p.type==="text"?p.value:"",g=e?A3e:j3e,v=f.match(g);if(v&&(c=!1,l=v[1].toLocaleLowerCase(),s=e&&v[2]||l.toLocaleUpperCase(),f.includes(` +`))}function c(g,v,w,x){const k=w.enter("tableCell"),C=w.enter("phrasing"),_=w.containerPhrasing(g,{...x,before:i,after:i});return C(),k(),_}function d(g,v){return Nbe(g,{align:v,alignDelimiters:o,padding:n,stringLength:a})}function u(g,v,w){const x=g.children;let k=-1;const C=[],_=v.enter("table");for(;++ka?0:a+r:r=r>a?a:r,n=n>0?n:0,o.length<1e4)l=Array.from(o),l.unshift(r,n),e.splice(...l);else for(n&&e.splice(r,n);i0?(xa(e,e.length,0,r),e):r}const mI={}.hasOwnProperty;function gI(e){const r={};let n=-1;for(;++n0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}function Vh(e){const r=[];let n=-1,o=0,a=0;for(;++n55295&&i<57344){const s=e.charCodeAt(n+1);i<56320&&s>56319&&s<57344?(l=String.fromCharCode(i,s),a=1):l="�"}else l=String.fromCharCode(i);l&&(r.push(e.slice(o,n),encodeURIComponent(l)),o=n+a+1,l=""),a&&(n+=a,a=0)}return r.join("")+e.slice(o)}function Ub(e,r,n){const o=[];let a=-1;for(;++a1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const p={...e[o][1].end},f={...e[n][1].start};EI(p,-c),EI(f,c),l={type:c>1?"strongSequence":"emphasisSequence",start:p,end:{...e[o][1].end}},s={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:f},i={type:c>1?"strongText":"emphasisText",start:{...e[o][1].end},end:{...e[n][1].start}},a={type:c>1?"strong":"emphasis",start:{...l.start},end:{...s.end}},e[o][1].end={...l.start},e[n][1].start={...s.end},d=[],e[o][1].end.offset-e[o][1].start.offset&&(d=Qa(d,[["enter",e[o][1],r],["exit",e[o][1],r]])),d=Qa(d,[["enter",a,r],["enter",l,r],["exit",l,r],["enter",i,r]]),d=Qa(d,Ub(r.parser.constructs.insideSpan.null,e.slice(o+1,n),r)),d=Qa(d,[["exit",i,r],["enter",s,r],["exit",s,r],["exit",a,r]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,d=Qa(d,[["enter",e[n][1],r],["exit",e[n][1],r]])):u=0,xa(e,o-1,n-o+3,d),n=o+d.length-u-2;break}}for(n=-1;++n0&&Vt(T)?Kt(e,C,"linePrefix",i+1)(T):C(T)}function C(T){return T===null||gt(T)?e.check(zI,w,$)(T):(e.enter("codeFlowValue"),_(T))}function _(T){return T===null||gt(T)?(e.exit("codeFlowValue"),C(T)):(e.consume(T),_)}function $(T){return e.exit("codeFenced"),r(T)}function R(T,A,z){let j=0;return I;function I(V){return T.enter("lineEnding"),T.consume(V),T.exit("lineEnding"),P}function P(V){return T.enter("codeFencedFence"),Vt(V)?Kt(T,L,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(V):L(V)}function L(V){return V===s?(T.enter("codeFencedFenceSequence"),H(V)):z(V)}function H(V){return V===s?(j++,T.consume(V),H):j>=l?(T.exit("codeFencedFenceSequence"),Vt(V)?Kt(T,M,"whitespace")(V):M(V)):z(V)}function M(V){return V===null||gt(V)?(T.exit("codeFencedFence"),A(V)):z(V)}}}function owe(e,r,n){const o=this;return a;function a(l){return l===null?n(l):(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i)}function i(l){return o.parser.lazy[o.now().line]?n(l):r(l)}}const n8={name:"codeIndented",tokenize:iwe},awe={partial:!0,tokenize:lwe};function iwe(e,r,n){const o=this;return a;function a(d){return e.enter("codeIndented"),Kt(e,i,"linePrefix",5)(d)}function i(d){const u=o.events[o.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?l(d):n(d)}function l(d){return d===null?c(d):gt(d)?e.attempt(awe,l,c)(d):(e.enter("codeFlowValue"),s(d))}function s(d){return d===null||gt(d)?(e.exit("codeFlowValue"),l(d)):(e.consume(d),s)}function c(d){return e.exit("codeIndented"),r(d)}}function lwe(e,r,n){const o=this;return a;function a(l){return o.parser.lazy[o.now().line]?n(l):gt(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a):Kt(e,i,"linePrefix",5)(l)}function i(l){const s=o.events[o.events.length-1];return s&&s[1].type==="linePrefix"&&s[2].sliceSerialize(s[1],!0).length>=4?r(l):gt(l)?a(l):n(l)}}const swe={name:"codeText",previous:dwe,resolve:cwe,tokenize:uwe};function cwe(e){let r=e.length-4,n=3,o,a;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[r][1].type==="lineEnding"||e[r][1].type==="space")){for(o=n;++o=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+r+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return rthis.left.length?this.right.slice(this.right.length-o+this.left.length,this.right.length-r+this.left.length).reverse():this.left.slice(r).concat(this.right.slice(this.right.length-o+this.left.length).reverse())}splice(r,n,o){const a=n||0;this.setCursor(Math.trunc(r));const i=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return o&&c1(this.left,o),i.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(r){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(r)}pushMany(r){this.setCursor(Number.POSITIVE_INFINITY),c1(this.left,r)}unshift(r){this.setCursor(0),this.right.push(r)}unshiftMany(r){this.setCursor(0),c1(this.right,r.reverse())}setCursor(r){if(!(r===this.left.length||r>this.left.length&&this.right.length===0||r<0&&this.left.length===0))if(r=4?r(l):e.interrupt(o.parser.constructs.flow,n,r)(l)}}function AI(e,r,n,o,a,i,l,s,c){const d=c||Number.POSITIVE_INFINITY;let u=0;return p;function p(k){return k===60?(e.enter(o),e.enter(a),e.enter(i),e.consume(k),e.exit(i),f):k===null||k===32||k===41||Ob(k)?n(k):(e.enter(o),e.enter(l),e.enter(s),e.enter("chunkString",{contentType:"string"}),w(k))}function f(k){return k===62?(e.enter(i),e.consume(k),e.exit(i),e.exit(a),e.exit(o),r):(e.enter(s),e.enter("chunkString",{contentType:"string"}),g(k))}function g(k){return k===62?(e.exit("chunkString"),e.exit(s),f(k)):k===null||k===60||gt(k)?n(k):(e.consume(k),k===92?v:g)}function v(k){return k===60||k===62||k===92?(e.consume(k),g):g(k)}function w(k){return!u&&(k===null||k===41||Sr(k))?(e.exit("chunkString"),e.exit(s),e.exit(l),e.exit(o),r(k)):u999||g===null||g===91||g===93&&!c||g===94&&!s&&"_hiddenFootnoteSupport"in l.parser.constructs?n(g):g===93?(e.exit(i),e.enter(a),e.consume(g),e.exit(a),e.exit(o),r):gt(g)?(e.enter("lineEnding"),e.consume(g),e.exit("lineEnding"),u):(e.enter("chunkString",{contentType:"string"}),p(g))}function p(g){return g===null||g===91||g===93||gt(g)||s++>999?(e.exit("chunkString"),u(g)):(e.consume(g),c||(c=!Vt(g)),g===92?f:p)}function f(g){return g===91||g===92||g===93?(e.consume(g),s++,p):p(g)}}function MI(e,r,n,o,a,i){let l;return s;function s(f){return f===34||f===39||f===40?(e.enter(o),e.enter(a),e.consume(f),e.exit(a),l=f===40?41:f,c):n(f)}function c(f){return f===l?(e.enter(a),e.consume(f),e.exit(a),e.exit(o),r):(e.enter(i),d(f))}function d(f){return f===l?(e.exit(i),c(l)):f===null?n(f):gt(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),Kt(e,d,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),u(f))}function u(f){return f===l||f===null||gt(f)?(e.exit("chunkString"),d(f)):(e.consume(f),f===92?p:u)}function p(f){return f===l||f===92?(e.consume(f),u):u(f)}}function d1(e,r){let n;return o;function o(a){return gt(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),n=!0,o):Vt(a)?Kt(e,o,n?"linePrefix":"lineSuffix")(a):r(a)}}const bwe={name:"definition",tokenize:wwe},xwe={partial:!0,tokenize:kwe};function wwe(e,r,n){const o=this;let a;return i;function i(g){return e.enter("definition"),l(g)}function l(g){return DI.call(o,e,s,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(g)}function s(g){return a=Ui(o.sliceSerialize(o.events[o.events.length-1][1]).slice(1,-1)),g===58?(e.enter("definitionMarker"),e.consume(g),e.exit("definitionMarker"),c):n(g)}function c(g){return Sr(g)?d1(e,d)(g):d(g)}function d(g){return AI(e,u,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(g)}function u(g){return e.attempt(xwe,p,p)(g)}function p(g){return Vt(g)?Kt(e,f,"whitespace")(g):f(g)}function f(g){return g===null||gt(g)?(e.exit("definition"),o.parser.defined.push(a),r(g)):n(g)}}function kwe(e,r,n){return o;function o(s){return Sr(s)?d1(e,a)(s):n(s)}function a(s){return MI(e,i,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(s)}function i(s){return Vt(s)?Kt(e,l,"whitespace")(s):l(s)}function l(s){return s===null||gt(s)?r(s):n(s)}}const _we={name:"hardBreakEscape",tokenize:Swe};function Swe(e,r,n){return o;function o(i){return e.enter("hardBreakEscape"),e.consume(i),a}function a(i){return gt(i)?(e.exit("hardBreakEscape"),r(i)):n(i)}}const Ewe={name:"headingAtx",resolve:Cwe,tokenize:$we};function Cwe(e,r){let n=e.length-2,o=3,a,i;return e[o][1].type==="whitespace"&&(o+=2),n-2>o&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(o===n-1||n-4>o&&e[n-2][1].type==="whitespace")&&(n-=o+1===n?2:4),n>o&&(a={type:"atxHeadingText",start:e[o][1].start,end:e[n][1].end},i={type:"chunkText",start:e[o][1].start,end:e[n][1].end,contentType:"text"},xa(e,o,n-o+1,[["enter",a,r],["enter",i,r],["exit",i,r],["exit",a,r]])),e}function $we(e,r,n){let o=0;return a;function a(u){return e.enter("atxHeading"),i(u)}function i(u){return e.enter("atxHeadingSequence"),l(u)}function l(u){return u===35&&o++<6?(e.consume(u),l):u===null||Sr(u)?(e.exit("atxHeadingSequence"),s(u)):n(u)}function s(u){return u===35?(e.enter("atxHeadingSequence"),c(u)):u===null||gt(u)?(e.exit("atxHeading"),r(u)):Vt(u)?Kt(e,s,"whitespace")(u):(e.enter("atxHeadingText"),d(u))}function c(u){return u===35?(e.consume(u),c):(e.exit("atxHeadingSequence"),s(u))}function d(u){return u===null||u===35||Sr(u)?(e.exit("atxHeadingText"),s(u)):(e.consume(u),d)}}const Rwe=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],NI=["pre","script","style","textarea"],zwe={concrete:!0,name:"htmlFlow",resolveTo:Awe,tokenize:Dwe},Twe={partial:!0,tokenize:Nwe},jwe={partial:!0,tokenize:Mwe};function Awe(e){let r=e.length;for(;r--&&!(e[r][0]==="enter"&&e[r][1].type==="htmlFlow"););return r>1&&e[r-2][1].type==="linePrefix"&&(e[r][1].start=e[r-2][1].start,e[r+1][1].start=e[r-2][1].start,e.splice(r-2,2)),e}function Dwe(e,r,n){const o=this;let a,i,l,s,c;return d;function d(O){return u(O)}function u(O){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(O),p}function p(O){return O===33?(e.consume(O),f):O===47?(e.consume(O),i=!0,w):O===63?(e.consume(O),a=3,o.interrupt?r:U):Bo(O)?(e.consume(O),l=String.fromCharCode(O),x):n(O)}function f(O){return O===45?(e.consume(O),a=2,g):O===91?(e.consume(O),a=5,s=0,v):Bo(O)?(e.consume(O),a=4,o.interrupt?r:U):n(O)}function g(O){return O===45?(e.consume(O),o.interrupt?r:U):n(O)}function v(O){const W="CDATA[";return O===W.charCodeAt(s++)?(e.consume(O),s===W.length?o.interrupt?r:L:v):n(O)}function w(O){return Bo(O)?(e.consume(O),l=String.fromCharCode(O),x):n(O)}function x(O){if(O===null||O===47||O===62||Sr(O)){const W=O===47,K=l.toLowerCase();return!W&&!i&&NI.includes(K)?(a=1,o.interrupt?r(O):L(O)):Rwe.includes(l.toLowerCase())?(a=6,W?(e.consume(O),k):o.interrupt?r(O):L(O)):(a=7,o.interrupt&&!o.parser.lazy[o.now().line]?n(O):i?C(O):_(O))}return O===45||xo(O)?(e.consume(O),l+=String.fromCharCode(O),x):n(O)}function k(O){return O===62?(e.consume(O),o.interrupt?r:L):n(O)}function C(O){return Vt(O)?(e.consume(O),C):I(O)}function _(O){return O===47?(e.consume(O),I):O===58||O===95||Bo(O)?(e.consume(O),$):Vt(O)?(e.consume(O),_):I(O)}function $(O){return O===45||O===46||O===58||O===95||xo(O)?(e.consume(O),$):R(O)}function R(O){return O===61?(e.consume(O),T):Vt(O)?(e.consume(O),R):_(O)}function T(O){return O===null||O===60||O===61||O===62||O===96?n(O):O===34||O===39?(e.consume(O),c=O,A):Vt(O)?(e.consume(O),T):z(O)}function A(O){return O===c?(e.consume(O),c=null,j):O===null||gt(O)?n(O):(e.consume(O),A)}function z(O){return O===null||O===34||O===39||O===47||O===60||O===61||O===62||O===96||Sr(O)?R(O):(e.consume(O),z)}function j(O){return O===47||O===62||Vt(O)?_(O):n(O)}function I(O){return O===62?(e.consume(O),P):n(O)}function P(O){return O===null||gt(O)?L(O):Vt(O)?(e.consume(O),P):n(O)}function L(O){return O===45&&a===2?(e.consume(O),B):O===60&&a===1?(e.consume(O),F):O===62&&a===4?(e.consume(O),Y):O===63&&a===3?(e.consume(O),U):O===93&&a===5?(e.consume(O),G):gt(O)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(Twe,Z,H)(O)):O===null||gt(O)?(e.exit("htmlFlowData"),H(O)):(e.consume(O),L)}function H(O){return e.check(jwe,M,Z)(O)}function M(O){return e.enter("lineEnding"),e.consume(O),e.exit("lineEnding"),V}function V(O){return O===null||gt(O)?H(O):(e.enter("htmlFlowData"),L(O))}function B(O){return O===45?(e.consume(O),U):L(O)}function F(O){return O===47?(e.consume(O),l="",q):L(O)}function q(O){if(O===62){const W=l.toLowerCase();return NI.includes(W)?(e.consume(O),Y):L(O)}return Bo(O)&&l.length<8?(e.consume(O),l+=String.fromCharCode(O),q):L(O)}function G(O){return O===93?(e.consume(O),U):L(O)}function U(O){return O===62?(e.consume(O),Y):O===45&&a===2?(e.consume(O),U):L(O)}function Y(O){return O===null||gt(O)?(e.exit("htmlFlowData"),Z(O)):(e.consume(O),Y)}function Z(O){return e.exit("htmlFlow"),r(O)}}function Mwe(e,r,n){const o=this;return a;function a(l){return gt(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i):n(l)}function i(l){return o.parser.lazy[o.now().line]?n(l):r(l)}}function Nwe(e,r,n){return o;function o(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(s1,r,n)}}const Pwe={name:"htmlText",tokenize:Bwe};function Bwe(e,r,n){const o=this;let a,i,l;return s;function s(U){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(U),c}function c(U){return U===33?(e.consume(U),d):U===47?(e.consume(U),R):U===63?(e.consume(U),_):Bo(U)?(e.consume(U),z):n(U)}function d(U){return U===45?(e.consume(U),u):U===91?(e.consume(U),i=0,v):Bo(U)?(e.consume(U),C):n(U)}function u(U){return U===45?(e.consume(U),g):n(U)}function p(U){return U===null?n(U):U===45?(e.consume(U),f):gt(U)?(l=p,F(U)):(e.consume(U),p)}function f(U){return U===45?(e.consume(U),g):p(U)}function g(U){return U===62?B(U):U===45?f(U):p(U)}function v(U){const Y="CDATA[";return U===Y.charCodeAt(i++)?(e.consume(U),i===Y.length?w:v):n(U)}function w(U){return U===null?n(U):U===93?(e.consume(U),x):gt(U)?(l=w,F(U)):(e.consume(U),w)}function x(U){return U===93?(e.consume(U),k):w(U)}function k(U){return U===62?B(U):U===93?(e.consume(U),k):w(U)}function C(U){return U===null||U===62?B(U):gt(U)?(l=C,F(U)):(e.consume(U),C)}function _(U){return U===null?n(U):U===63?(e.consume(U),$):gt(U)?(l=_,F(U)):(e.consume(U),_)}function $(U){return U===62?B(U):_(U)}function R(U){return Bo(U)?(e.consume(U),T):n(U)}function T(U){return U===45||xo(U)?(e.consume(U),T):A(U)}function A(U){return gt(U)?(l=A,F(U)):Vt(U)?(e.consume(U),A):B(U)}function z(U){return U===45||xo(U)?(e.consume(U),z):U===47||U===62||Sr(U)?j(U):n(U)}function j(U){return U===47?(e.consume(U),B):U===58||U===95||Bo(U)?(e.consume(U),I):gt(U)?(l=j,F(U)):Vt(U)?(e.consume(U),j):B(U)}function I(U){return U===45||U===46||U===58||U===95||xo(U)?(e.consume(U),I):P(U)}function P(U){return U===61?(e.consume(U),L):gt(U)?(l=P,F(U)):Vt(U)?(e.consume(U),P):j(U)}function L(U){return U===null||U===60||U===61||U===62||U===96?n(U):U===34||U===39?(e.consume(U),a=U,H):gt(U)?(l=L,F(U)):Vt(U)?(e.consume(U),L):(e.consume(U),M)}function H(U){return U===a?(e.consume(U),a=void 0,V):U===null?n(U):gt(U)?(l=H,F(U)):(e.consume(U),H)}function M(U){return U===null||U===34||U===39||U===60||U===61||U===96?n(U):U===47||U===62||Sr(U)?j(U):(e.consume(U),M)}function V(U){return U===47||U===62||Sr(U)?j(U):n(U)}function B(U){return U===62?(e.consume(U),e.exit("htmlTextData"),e.exit("htmlText"),r):n(U)}function F(U){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(U),e.exit("lineEnding"),q}function q(U){return Vt(U)?Kt(e,G,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(U):G(U)}function G(U){return e.enter("htmlTextData"),l(U)}}const o8={name:"labelEnd",resolveAll:Fwe,resolveTo:Vwe,tokenize:qwe},Iwe={tokenize:Hwe},Owe={tokenize:Uwe},Lwe={tokenize:Wwe};function Fwe(e){let r=-1;const n=[];for(;++r=3&&(d===null||gt(d))?(e.exit("thematicBreak"),r(d)):n(d)}function c(d){return d===a?(e.consume(d),o++,c):(e.exit("thematicBreakSequence"),Vt(d)?Kt(e,s,"whitespace")(d):s(d))}}const ea={continuation:{tokenize:r3e},exit:o3e,name:"list",tokenize:t3e},Jwe={partial:!0,tokenize:a3e},e3e={partial:!0,tokenize:n3e};function t3e(e,r,n){const o=this,a=o.events[o.events.length-1];let i=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,l=0;return s;function s(g){const v=o.containerState.type||(g===42||g===43||g===45?"listUnordered":"listOrdered");if(v==="listUnordered"?!o.containerState.marker||g===o.containerState.marker:H_(g)){if(o.containerState.type||(o.containerState.type=v,e.enter(v,{_container:!0})),v==="listUnordered")return e.enter("listItemPrefix"),g===42||g===45?e.check(Wb,n,d)(g):d(g);if(!o.interrupt||g===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(g)}return n(g)}function c(g){return H_(g)&&++l<10?(e.consume(g),c):(!o.interrupt||l<2)&&(o.containerState.marker?g===o.containerState.marker:g===41||g===46)?(e.exit("listItemValue"),d(g)):n(g)}function d(g){return e.enter("listItemMarker"),e.consume(g),e.exit("listItemMarker"),o.containerState.marker=o.containerState.marker||g,e.check(s1,o.interrupt?n:u,e.attempt(Jwe,f,p))}function u(g){return o.containerState.initialBlankLine=!0,i++,f(g)}function p(g){return Vt(g)?(e.enter("listItemPrefixWhitespace"),e.consume(g),e.exit("listItemPrefixWhitespace"),f):n(g)}function f(g){return o.containerState.size=i+o.sliceSerialize(e.exit("listItemPrefix"),!0).length,r(g)}}function r3e(e,r,n){const o=this;return o.containerState._closeFlow=void 0,e.check(s1,a,i);function a(s){return o.containerState.furtherBlankLines=o.containerState.furtherBlankLines||o.containerState.initialBlankLine,Kt(e,r,"listItemIndent",o.containerState.size+1)(s)}function i(s){return o.containerState.furtherBlankLines||!Vt(s)?(o.containerState.furtherBlankLines=void 0,o.containerState.initialBlankLine=void 0,l(s)):(o.containerState.furtherBlankLines=void 0,o.containerState.initialBlankLine=void 0,e.attempt(e3e,r,l)(s))}function l(s){return o.containerState._closeFlow=!0,o.interrupt=void 0,Kt(e,e.attempt(ea,r,n),"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s)}}function n3e(e,r,n){const o=this;return Kt(e,a,"listItemIndent",o.containerState.size+1);function a(i){const l=o.events[o.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===o.containerState.size?r(i):n(i)}}function o3e(e){e.exit(this.containerState.type)}function a3e(e,r,n){const o=this;return Kt(e,a,"listItemPrefixWhitespace",o.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(i){const l=o.events[o.events.length-1];return!Vt(i)&&l&&l[1].type==="listItemPrefixWhitespace"?r(i):n(i)}}const PI={name:"setextUnderline",resolveTo:i3e,tokenize:l3e};function i3e(e,r){let n=e.length,o,a,i;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){o=n;break}e[n][1].type==="paragraph"&&(a=n)}else e[n][1].type==="content"&&e.splice(n,1),!i&&e[n][1].type==="definition"&&(i=n);const l={type:"setextHeading",start:{...e[o][1].start},end:{...e[e.length-1][1].end}};return e[a][1].type="setextHeadingText",i?(e.splice(a,0,["enter",l,r]),e.splice(i+1,0,["exit",e[o][1],r]),e[o][1].end={...e[i][1].end}):e[o][1]=l,e.push(["exit",l,r]),e}function l3e(e,r,n){const o=this;let a;return i;function i(d){let u=o.events.length,p;for(;u--;)if(o.events[u][1].type!=="lineEnding"&&o.events[u][1].type!=="linePrefix"&&o.events[u][1].type!=="content"){p=o.events[u][1].type==="paragraph";break}return!o.parser.lazy[o.now().line]&&(o.interrupt||p)?(e.enter("setextHeadingLine"),a=d,l(d)):n(d)}function l(d){return e.enter("setextHeadingLineSequence"),s(d)}function s(d){return d===a?(e.consume(d),s):(e.exit("setextHeadingLineSequence"),Vt(d)?Kt(e,c,"lineSuffix")(d):c(d))}function c(d){return d===null||gt(d)?(e.exit("setextHeadingLine"),r(d)):n(d)}}const s3e={tokenize:g3e,partial:!0};function c3e(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:h3e,continuation:{tokenize:f3e},exit:m3e}},text:{91:{name:"gfmFootnoteCall",tokenize:p3e},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:d3e,resolveTo:u3e}}}}function d3e(e,r,n){const o=this;let a=o.events.length;const i=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let l;for(;a--;){const c=o.events[a][1];if(c.type==="labelImage"){l=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return s;function s(c){if(!l||!l._balanced)return n(c);const d=Ui(o.sliceSerialize({start:l.end,end:o.now()}));return d.codePointAt(0)!==94||!i.includes(d.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),r(c))}}function u3e(e,r){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const o={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},a={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};a.end.column++,a.end.offset++,a.end._bufferIndex++;const i={type:"gfmFootnoteCallString",start:Object.assign({},a.end),end:Object.assign({},e[e.length-1][1].start)},l={type:"chunkString",contentType:"string",start:Object.assign({},i.start),end:Object.assign({},i.end)},s=[e[n+1],e[n+2],["enter",o,r],e[n+3],e[n+4],["enter",a,r],["exit",a,r],["enter",i,r],["enter",l,r],["exit",l,r],["exit",i,r],e[e.length-2],e[e.length-1],["exit",o,r]];return e.splice(n,e.length-n+1,...s),e}function p3e(e,r,n){const o=this,a=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let i=0,l;return s;function s(p){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),c}function c(p){return p!==94?n(p):(e.enter("gfmFootnoteCallMarker"),e.consume(p),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",d)}function d(p){if(i>999||p===93&&!l||p===null||p===91||Sr(p))return n(p);if(p===93){e.exit("chunkString");const f=e.exit("gfmFootnoteCallString");return a.includes(Ui(o.sliceSerialize(f)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),r):n(p)}return Sr(p)||(l=!0),i++,e.consume(p),p===92?u:d}function u(p){return p===91||p===92||p===93?(e.consume(p),i++,d):d(p)}}function h3e(e,r,n){const o=this,a=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let i,l=0,s;return c;function c(v){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionLabelMarker"),d}function d(v){return v===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",u):n(v)}function u(v){if(l>999||v===93&&!s||v===null||v===91||Sr(v))return n(v);if(v===93){e.exit("chunkString");const w=e.exit("gfmFootnoteDefinitionLabelString");return i=Ui(o.sliceSerialize(w)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),f}return Sr(v)||(s=!0),l++,e.consume(v),v===92?p:u}function p(v){return v===91||v===92||v===93?(e.consume(v),l++,u):u(v)}function f(v){return v===58?(e.enter("definitionMarker"),e.consume(v),e.exit("definitionMarker"),a.includes(i)||a.push(i),Kt(e,g,"gfmFootnoteDefinitionWhitespace")):n(v)}function g(v){return r(v)}}function f3e(e,r,n){return e.check(s1,r,e.attempt(s3e,r,n))}function m3e(e){e.exit("gfmFootnoteDefinition")}function g3e(e,r,n){const o=this;return Kt(e,a,"gfmFootnoteDefinitionIndent",5);function a(i){const l=o.events[o.events.length-1];return l&&l[1].type==="gfmFootnoteDefinitionIndent"&&l[2].sliceSerialize(l[1],!0).length===4?r(i):n(i)}}function y3e(e){let n=(e||{}).singleTilde;const o={name:"strikethrough",tokenize:i,resolveAll:a};return n==null&&(n=!0),{text:{126:o},insideSpan:{null:[o]},attentionMarkers:{null:[126]}};function a(l,s){let c=-1;for(;++c1?c(v):(l.consume(v),p++,g);if(p<2&&!n)return c(v);const x=l.exit("strikethroughSequenceTemporary"),k=Fh(v);return x._open=!k||k===2&&!!w,x._close=!w||w===2&&!!k,s(v)}}}class v3e{constructor(){this.map=[]}add(r,n,o){b3e(this,r,n,o)}consume(r){if(this.map.sort(function(i,l){return i[0]-l[0]}),this.map.length===0)return;let n=this.map.length;const o=[];for(;n>0;)n-=1,o.push(r.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),r.length=this.map[n][0];o.push(r.slice()),r.length=0;let a=o.pop();for(;a;){for(const i of a)r.push(i);a=o.pop()}this.map.length=0}}function b3e(e,r,n,o){let a=0;if(!(n===0&&o.length===0)){for(;a-1;){const M=o.events[P][1].type;if(M==="lineEnding"||M==="linePrefix")P--;else break}const L=P>-1?o.events[P][1].type:null,H=L==="tableHead"||L==="tableRow"?T:c;return H===T&&o.parser.lazy[o.now().line]?n(I):H(I)}function c(I){return e.enter("tableHead"),e.enter("tableRow"),d(I)}function d(I){return I===124||(l=!0,i+=1),u(I)}function u(I){return I===null?n(I):gt(I)?i>1?(i=0,o.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(I),e.exit("lineEnding"),g):n(I):Vt(I)?Kt(e,u,"whitespace")(I):(i+=1,l&&(l=!1,a+=1),I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),l=!0,u):(e.enter("data"),p(I)))}function p(I){return I===null||I===124||Sr(I)?(e.exit("data"),u(I)):(e.consume(I),I===92?f:p)}function f(I){return I===92||I===124?(e.consume(I),p):p(I)}function g(I){return o.interrupt=!1,o.parser.lazy[o.now().line]?n(I):(e.enter("tableDelimiterRow"),l=!1,Vt(I)?Kt(e,v,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(I):v(I))}function v(I){return I===45||I===58?x(I):I===124?(l=!0,e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),w):R(I)}function w(I){return Vt(I)?Kt(e,x,"whitespace")(I):x(I)}function x(I){return I===58?(i+=1,l=!0,e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),k):I===45?(i+=1,k(I)):I===null||gt(I)?$(I):R(I)}function k(I){return I===45?(e.enter("tableDelimiterFiller"),C(I)):R(I)}function C(I){return I===45?(e.consume(I),C):I===58?(l=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),_):(e.exit("tableDelimiterFiller"),_(I))}function _(I){return Vt(I)?Kt(e,$,"whitespace")(I):$(I)}function $(I){return I===124?v(I):I===null||gt(I)?!l||a!==i?R(I):(e.exit("tableDelimiterRow"),e.exit("tableHead"),r(I)):R(I)}function R(I){return n(I)}function T(I){return e.enter("tableRow"),A(I)}function A(I){return I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),A):I===null||gt(I)?(e.exit("tableRow"),r(I)):Vt(I)?Kt(e,A,"whitespace")(I):(e.enter("data"),z(I))}function z(I){return I===null||I===124||Sr(I)?(e.exit("data"),A(I)):(e.consume(I),I===92?j:z)}function j(I){return I===92||I===124?(e.consume(I),z):z(I)}}function _3e(e,r){let n=-1,o=!0,a=0,i=[0,0,0,0],l=[0,0,0,0],s=!1,c=0,d,u,p;const f=new v3e;for(;++nn[2]+1){const v=n[2]+1,w=n[3]-n[2]-1;e.add(v,w,[])}}e.add(n[3]+1,0,[["exit",p,r]])}return a!==void 0&&(i.end=Object.assign({},qh(r.events,a)),e.add(a,0,[["exit",i,r]]),i=void 0),i}function BI(e,r,n,o,a){const i=[],l=qh(r.events,n);a&&(a.end=Object.assign({},l),i.push(["exit",a,r])),o.end=Object.assign({},l),i.push(["exit",o,r]),e.add(n+1,0,i)}function qh(e,r){const n=e[r],o=n[0]==="enter"?"start":"end";return n[1][o]}const S3e={name:"tasklistCheck",tokenize:C3e};function E3e(){return{text:{91:S3e}}}function C3e(e,r,n){const o=this;return a;function a(c){return o.previous!==null||!o._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),i)}function i(c){return Sr(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),l):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),l):n(c)}function l(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),s):n(c)}function s(c){return gt(c)?r(c):Vt(c)?e.check({tokenize:$3e},r,n)(c):n(c)}}function $3e(e,r,n){return Kt(e,o,"whitespace");function o(a){return a===null?n(a):r(a)}}function R3e(e){return gI([Ixe(),c3e(),y3e(e),w3e(),E3e()])}const z3e={};function T3e(e){const r=this,n=e||z3e,o=r.data(),a=o.micromarkExtensions||(o.micromarkExtensions=[]),i=o.fromMarkdownExtensions||(o.fromMarkdownExtensions=[]),l=o.toMarkdownExtensions||(o.toMarkdownExtensions=[]);a.push(R3e(n)),i.push(Axe()),l.push(Dxe(n))}const j3e=/^\[!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]/i,A3e=/^\[!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)(\/.*)?\]/i,D3e=({legacyTitle:e=!1,tagName:r="div"}={})=>n=>{Z_(n,"blockquote",(o,a,i)=>{let l="",s="",c=!0,d=o.children.map(u=>{if(c&&u.type==="paragraph"){const p=u.children[0],f=p.type==="text"?p.value:"",g=e?A3e:j3e,v=f.match(g);if(v&&(c=!1,l=v[1].toLocaleLowerCase(),s=e&&v[2]||l.toLocaleUpperCase(),f.includes(` `)&&(u.children[0]={type:"text",value:f.replace(g,"").replace(/^\n+/,"")}),!f.includes(` -`))){const w=[];u.children.forEach((x,k)=>{k!=0&&(k==1&&x.type==="break"||w.push(x))}),u.children=[...w]}}return u});l&&(o.data={hName:r,hProperties:{className:["markdown-alert",`markdown-alert-${l}`],dir:"auto"}},d.unshift({type:"paragraph",children:[M3e(l),{type:"text",value:s.replace(/^\//,"")}],data:{hProperties:{className:"markdown-alert-title",dir:"auto"}}})),o.children=[...d]})};function M3e(e){let r=N3e[e]??"";return{type:"emphasis",data:{hName:"svg",hProperties:{className:["octicon"],viewBox:"0 0 16 16",width:"16",height:"16",ariaHidden:"true"}},children:[{type:"emphasis",data:{hName:"path",hProperties:{d:r}},children:[]}]}}const N3e={note:"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z",tip:"M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z",important:"M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",warning:"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",caution:"M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"},P3e={tokenize:B3e};function B3e(e){const r=e.attempt(this.parser.constructs.contentInitial,o,a);let n;return r;function o(s){if(s===null){e.consume(s);return}return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),Kt(e,r,"linePrefix")}function a(s){return e.enter("paragraph"),i(s)}function i(s){const c=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=c),n=c,l(s)}function l(s){if(s===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(s);return}return gt(s)?(e.consume(s),e.exit("chunkText"),i):(e.consume(s),l)}}const I3e={tokenize:O3e},II={tokenize:L3e};function O3e(e){const r=this,n=[];let o=0,a,i,l;return s;function s(_){if(ol))return;const A=r.events.length;let R=A,j,I;for(;R--;)if(r.events[R][0]==="exit"&&r.events[R][1].type==="chunkFlow"){if(j){I=r.events[R][1].end;break}j=!0}for(k(o),T=A;T_;){const z=n[$];r.containerState=z[1],z[0].exit.call(r,e)}n.length=_}function C(){a.write([null]),i=void 0,a=void 0,r.containerState._closeFlow=void 0}}function L3e(e,r,n){return Kt(e,e.attempt(this.parser.constructs.document,r,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}const F3e={tokenize:V3e};function V3e(e){const r=this,n=e.attempt(s1,o,e.attempt(this.parser.constructs.flowInitial,a,Kt(e,e.attempt(this.parser.constructs.flow,a,e.attempt(fwe,a)),"linePrefix")));return n;function o(i){if(i===null){e.consume(i);return}return e.enter("lineEndingBlank"),e.consume(i),e.exit("lineEndingBlank"),r.currentConstruct=void 0,n}function a(i){if(i===null){e.consume(i);return}return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),r.currentConstruct=void 0,n}}const q3e={resolveAll:LI()},H3e=OI("string"),U3e=OI("text");function OI(e){return{resolveAll:LI(e==="text"?W3e:void 0),tokenize:r};function r(n){const o=this,a=this.parser.constructs[e],i=n.attempt(a,l,s);return l;function l(u){return d(u)?i(u):s(u)}function s(u){if(u===null){n.consume(u);return}return n.enter("data"),n.consume(u),c}function c(u){return d(u)?(n.exit("data"),i(u)):(n.consume(u),c)}function d(u){if(u===null)return!0;const p=a[u];let f=-1;if(p)for(;++f-1){const s=l[0];typeof s=="string"?l[0]=s.slice(o):l.shift()}i>0&&l.push(e[a].slice(0,i))}return l}function Z3e(e,r){let n=-1;const o=[];let a;for(;++n{k!=0&&(k==1&&x.type==="break"||w.push(x))}),u.children=[...w]}}return u});l&&(o.data={hName:r,hProperties:{className:["markdown-alert",`markdown-alert-${l}`],dir:"auto"}},d.unshift({type:"paragraph",children:[M3e(l),{type:"text",value:s.replace(/^\//,"")}],data:{hProperties:{className:"markdown-alert-title",dir:"auto"}}})),o.children=[...d]})};function M3e(e){let r=N3e[e]??"";return{type:"emphasis",data:{hName:"svg",hProperties:{className:["octicon"],viewBox:"0 0 16 16",width:"16",height:"16",ariaHidden:"true"}},children:[{type:"emphasis",data:{hName:"path",hProperties:{d:r}},children:[]}]}}const N3e={note:"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z",tip:"M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z",important:"M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",warning:"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",caution:"M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"},P3e={tokenize:B3e};function B3e(e){const r=e.attempt(this.parser.constructs.contentInitial,o,a);let n;return r;function o(s){if(s===null){e.consume(s);return}return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),Kt(e,r,"linePrefix")}function a(s){return e.enter("paragraph"),i(s)}function i(s){const c=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=c),n=c,l(s)}function l(s){if(s===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(s);return}return gt(s)?(e.consume(s),e.exit("chunkText"),i):(e.consume(s),l)}}const I3e={tokenize:O3e},II={tokenize:L3e};function O3e(e){const r=this,n=[];let o=0,a,i,l;return s;function s(_){if(ol))return;const A=r.events.length;let z=A,j,I;for(;z--;)if(r.events[z][0]==="exit"&&r.events[z][1].type==="chunkFlow"){if(j){I=r.events[z][1].end;break}j=!0}for(k(o),T=A;T_;){const R=n[$];r.containerState=R[1],R[0].exit.call(r,e)}n.length=_}function C(){a.write([null]),i=void 0,a=void 0,r.containerState._closeFlow=void 0}}function L3e(e,r,n){return Kt(e,e.attempt(this.parser.constructs.document,r,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}const F3e={tokenize:V3e};function V3e(e){const r=this,n=e.attempt(s1,o,e.attempt(this.parser.constructs.flowInitial,a,Kt(e,e.attempt(this.parser.constructs.flow,a,e.attempt(fwe,a)),"linePrefix")));return n;function o(i){if(i===null){e.consume(i);return}return e.enter("lineEndingBlank"),e.consume(i),e.exit("lineEndingBlank"),r.currentConstruct=void 0,n}function a(i){if(i===null){e.consume(i);return}return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),r.currentConstruct=void 0,n}}const q3e={resolveAll:LI()},H3e=OI("string"),U3e=OI("text");function OI(e){return{resolveAll:LI(e==="text"?W3e:void 0),tokenize:r};function r(n){const o=this,a=this.parser.constructs[e],i=n.attempt(a,l,s);return l;function l(u){return d(u)?i(u):s(u)}function s(u){if(u===null){n.consume(u);return}return n.enter("data"),n.consume(u),c}function c(u){return d(u)?(n.exit("data"),i(u)):(n.consume(u),c)}function d(u){if(u===null)return!0;const p=a[u];let f=-1;if(p)for(;++f-1){const s=l[0];typeof s=="string"?l[0]=s.slice(o):l.shift()}i>0&&l.push(e[a].slice(0,i))}return l}function Z3e(e,r){let n=-1;const o=[];let a;for(;++n0){const Tr=Ye.tokenStack[Ye.tokenStack.length-1];(Tr[1]||GI).call(Ye,void 0,Tr[0])}for(ke.position={start:rd(be.length>0?be[0][1].start:{line:1,column:1,offset:0}),end:rd(be.length>0?be[be.length-2][1].end:{line:1,column:1,offset:0})},xt=-1;++xt0){const Tr=Ye.tokenStack[Ye.tokenStack.length-1];(Tr[1]||GI).call(Ye,void 0,Tr[0])}for(ke.position={start:rd(be.length>0?be[0][1].start:{line:1,column:1,offset:0}),end:rd(be.length>0?be[be.length-2][1].end:{line:1,column:1,offset:0})},xt=-1;++xt1?"-"+s:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(l)}]};e.patch(r,c);const d={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(r,d),e.applyData(r,d)}function c2e(e,r){const n={type:"element",tagName:"h"+r.depth,properties:{},children:e.all(r)};return e.patch(r,n),e.applyData(r,n)}function d2e(e,r){if(e.options.allowDangerousHtml){const n={type:"raw",value:r.value};return e.patch(r,n),e.applyData(r,n)}}function YI(e,r){const n=r.referenceType;let o="]";if(n==="collapsed"?o+="[]":n==="full"&&(o+="["+(r.label||r.identifier)+"]"),r.type==="imageReference")return[{type:"text",value:"!["+r.alt+o}];const a=e.all(r),i=a[0];i&&i.type==="text"?i.value="["+i.value:a.unshift({type:"text",value:"["});const l=a[a.length-1];return l&&l.type==="text"?l.value+=o:a.push({type:"text",value:o}),a}function u2e(e,r){const n=String(r.identifier).toUpperCase(),o=e.definitionById.get(n);if(!o)return YI(e,r);const a={src:Vh(o.url||""),alt:r.alt};o.title!==null&&o.title!==void 0&&(a.title=o.title);const i={type:"element",tagName:"img",properties:a,children:[]};return e.patch(r,i),e.applyData(r,i)}function p2e(e,r){const n={src:Vh(r.url)};r.alt!==null&&r.alt!==void 0&&(n.alt=r.alt),r.title!==null&&r.title!==void 0&&(n.title=r.title);const o={type:"element",tagName:"img",properties:n,children:[]};return e.patch(r,o),e.applyData(r,o)}function h2e(e,r){const n={type:"text",value:r.value.replace(/\r?\n|\r/g," ")};e.patch(r,n);const o={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(r,o),e.applyData(r,o)}function f2e(e,r){const n=String(r.identifier).toUpperCase(),o=e.definitionById.get(n);if(!o)return YI(e,r);const a={href:Vh(o.url||"")};o.title!==null&&o.title!==void 0&&(a.title=o.title);const i={type:"element",tagName:"a",properties:a,children:e.all(r)};return e.patch(r,i),e.applyData(r,i)}function m2e(e,r){const n={href:Vh(r.url)};r.title!==null&&r.title!==void 0&&(n.title=r.title);const o={type:"element",tagName:"a",properties:n,children:e.all(r)};return e.patch(r,o),e.applyData(r,o)}function g2e(e,r,n){const o=e.all(r),a=n?y2e(n):XI(r),i={},l=[];if(typeof r.checked=="boolean"){const u=o[0];let p;u&&u.type==="element"&&u.tagName==="p"?p=u:(p={type:"element",tagName:"p",properties:{},children:[]},o.unshift(p)),p.children.length>0&&p.children.unshift({type:"text",value:" "}),p.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:r.checked,disabled:!0},children:[]}),i.className=["task-list-item"]}let s=-1;for(;++s1}function v2e(e,r){const n={},o=e.all(r);let a=-1;for(typeof r.start=="number"&&r.start!==1&&(n.start=r.start);++a0){const l={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},s=fB(r.children[1]),c=hB(r.children[r.children.length-1]);s&&c&&(l.position={start:s,end:c}),a.push(l)}const i={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(r,i),e.applyData(r,i)}function _2e(e,r,n){const o=n?n.children:void 0,i=(o?o.indexOf(r):1)===0?"th":"td",l=n&&n.type==="table"?n.align:void 0,s=l?l.length:r.children.length;let c=-1;const d=[];for(;++c0,!0),o[0]),a=o.index+o[0].length,o=n.exec(r);return i.push(QI(r.slice(a),a>0,!1)),i.join("")}function QI(e,r,n){let o=0,a=e.length;if(r){let i=e.codePointAt(o);for(;i===ZI||i===KI;)o++,i=e.codePointAt(o)}if(n){let i=e.codePointAt(a-1);for(;i===ZI||i===KI;)a--,i=e.codePointAt(a-1)}return a>o?e.slice(o,a):""}function C2e(e,r){const n={type:"text",value:E2e(String(r.value))};return e.patch(r,n),e.applyData(r,n)}function $2e(e,r){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(r,n),e.applyData(r,n)}const z2e={blockquote:n2e,break:o2e,code:a2e,delete:i2e,emphasis:l2e,footnoteReference:s2e,heading:c2e,html:d2e,imageReference:u2e,image:p2e,inlineCode:h2e,linkReference:f2e,link:m2e,listItem:g2e,list:v2e,paragraph:b2e,root:x2e,strong:w2e,table:k2e,tableCell:S2e,tableRow:_2e,text:C2e,thematicBreak:$2e,toml:Yb,yaml:Yb,definition:Yb,footnoteDefinition:Yb};function Yb(){}function R2e(e,r){const n=[{type:"text",value:"↩"}];return r>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(r)}]}),n}function T2e(e,r){return"Back to reference "+(e+1)+(r>1?"-"+r:"")}function j2e(e){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||R2e,o=e.options.footnoteBackLabel||T2e,a=e.options.footnoteLabel||"Footnotes",i=e.options.footnoteLabelTagName||"h2",l=e.options.footnoteLabelProperties||{className:["sr-only"]},s=[];let c=-1;for(;++c0&&v.push({type:"text",value:" "});let C=typeof n=="string"?n:n(c,g);typeof C=="string"&&(C={type:"text",value:C}),v.push({type:"element",tagName:"a",properties:{href:"#"+r+"fnref-"+f+(g>1?"-"+g:""),dataFootnoteBackref:"",ariaLabel:typeof o=="string"?o:o(c,g),className:["data-footnote-backref"]},children:Array.isArray(C)?C:[C]})}const x=u[u.length-1];if(x&&x.type==="element"&&x.tagName==="p"){const C=x.children[x.children.length-1];C&&C.type==="text"?C.value+=" ":x.children.push({type:"text",value:" "}),x.children.push(...v)}else u.push(...v);const k={type:"element",tagName:"li",properties:{id:r+"fn-"+f},children:e.wrap(u,!0)};e.patch(d,k),s.push(k)}if(s.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:i,properties:{...o1(l),id:"footnote-label"},children:[{type:"text",value:a}]},{type:"text",value:` +`});const d={type:"element",tagName:"li",properties:i,children:l};return e.patch(r,d),e.applyData(r,d)}function y2e(e){let r=!1;if(e.type==="list"){r=e.spread||!1;const n=e.children;let o=-1;for(;!r&&++o1}function v2e(e,r){const n={},o=e.all(r);let a=-1;for(typeof r.start=="number"&&r.start!==1&&(n.start=r.start);++a0){const l={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},s=fB(r.children[1]),c=hB(r.children[r.children.length-1]);s&&c&&(l.position={start:s,end:c}),a.push(l)}const i={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(r,i),e.applyData(r,i)}function _2e(e,r,n){const o=n?n.children:void 0,i=(o?o.indexOf(r):1)===0?"th":"td",l=n&&n.type==="table"?n.align:void 0,s=l?l.length:r.children.length;let c=-1;const d=[];for(;++c0,!0),o[0]),a=o.index+o[0].length,o=n.exec(r);return i.push(QI(r.slice(a),a>0,!1)),i.join("")}function QI(e,r,n){let o=0,a=e.length;if(r){let i=e.codePointAt(o);for(;i===ZI||i===KI;)o++,i=e.codePointAt(o)}if(n){let i=e.codePointAt(a-1);for(;i===ZI||i===KI;)a--,i=e.codePointAt(a-1)}return a>o?e.slice(o,a):""}function C2e(e,r){const n={type:"text",value:E2e(String(r.value))};return e.patch(r,n),e.applyData(r,n)}function $2e(e,r){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(r,n),e.applyData(r,n)}const R2e={blockquote:n2e,break:o2e,code:a2e,delete:i2e,emphasis:l2e,footnoteReference:s2e,heading:c2e,html:d2e,imageReference:u2e,image:p2e,inlineCode:h2e,linkReference:f2e,link:m2e,listItem:g2e,list:v2e,paragraph:b2e,root:x2e,strong:w2e,table:k2e,tableCell:S2e,tableRow:_2e,text:C2e,thematicBreak:$2e,toml:Yb,yaml:Yb,definition:Yb,footnoteDefinition:Yb};function Yb(){}function z2e(e,r){const n=[{type:"text",value:"↩"}];return r>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(r)}]}),n}function T2e(e,r){return"Back to reference "+(e+1)+(r>1?"-"+r:"")}function j2e(e){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||z2e,o=e.options.footnoteBackLabel||T2e,a=e.options.footnoteLabel||"Footnotes",i=e.options.footnoteLabelTagName||"h2",l=e.options.footnoteLabelProperties||{className:["sr-only"]},s=[];let c=-1;for(;++c0&&v.push({type:"text",value:" "});let C=typeof n=="string"?n:n(c,g);typeof C=="string"&&(C={type:"text",value:C}),v.push({type:"element",tagName:"a",properties:{href:"#"+r+"fnref-"+f+(g>1?"-"+g:""),dataFootnoteBackref:"",ariaLabel:typeof o=="string"?o:o(c,g),className:["data-footnote-backref"]},children:Array.isArray(C)?C:[C]})}const x=u[u.length-1];if(x&&x.type==="element"&&x.tagName==="p"){const C=x.children[x.children.length-1];C&&C.type==="text"?C.value+=" ":x.children.push({type:"text",value:" "}),x.children.push(...v)}else u.push(...v);const k={type:"element",tagName:"li",properties:{id:r+"fn-"+f},children:e.wrap(u,!0)};e.patch(d,k),s.push(k)}if(s.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:i,properties:{...o1(l),id:"footnote-label"},children:[{type:"text",value:a}]},{type:"text",value:` `},{type:"element",tagName:"ol",properties:{},children:e.wrap(s,!0)},{type:"text",value:` -`}]}}const l8={}.hasOwnProperty,A2e={};function D2e(e,r){const n=r||A2e,o=new Map,a=new Map,i=new Map,l={...z2e,...n.handlers},s={all:d,applyData:N2e,definitionById:o,footnoteById:a,footnoteCounts:i,footnoteOrder:[],handlers:l,one:c,options:n,patch:M2e,wrap:B2e};return Z_(e,function(u){if(u.type==="definition"||u.type==="footnoteDefinition"){const p=u.type==="definition"?o:a,f=String(u.identifier).toUpperCase();p.has(f)||p.set(f,u)}}),s;function c(u,p){const f=u.type,g=s.handlers[f];if(l8.call(s.handlers,f)&&g)return g(s,u,p);if(s.options.passThrough&&s.options.passThrough.includes(f)){if("children"in u){const{children:w,...x}=u,k=o1(x);return k.children=s.all(u),k}return o1(u)}return(s.options.unknownHandler||P2e)(s,u,p)}function d(u){const p=[];if("children"in u){const f=u.children;let g=-1;for(;++g0&&n.push({type:"text",value:` `}),n}function JI(e){let r=0,n=e.charCodeAt(r);for(;n===9||n===32;)r++,n=e.charCodeAt(r);return e.slice(r)}function eO(e,r){const n=D2e(e,r),o=n.one(e,void 0),a=j2e(n),i=Array.isArray(o)?{type:"root",children:o}:o||{type:"root",children:[]};return a&&i.children.push({type:"text",value:` -`},a),i}function I2e(e,r){return e&&"run"in e?async function(n,o){const a=eO(n,{file:o,...r});await e.run(a,o)}:function(n,o){return eO(n,{file:o,...e||r})}}function tO(e){if(e)throw e}var s8,rO;function O2e(){if(rO)return s8;rO=1;var e=Object.prototype.hasOwnProperty,r=Object.prototype.toString,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,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 s8=function c(){var d,u,p,f,g,v,w=arguments[0],x=1,k=arguments.length,C=!1;for(typeof w=="boolean"&&(C=w,w=arguments[1]||{},x=2),(w==null||typeof w!="object"&&typeof w!="function")&&(w={});xl.length;let c;s&&l.push(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 ta 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=u1(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}}ta.prototype.file="",ta.prototype.name="",ta.prototype.reason="",ta.prototype.message="",ta.prototype.stack="",ta.prototype.column=void 0,ta.prototype.line=void 0,ta.prototype.ancestors=void 0,ta.prototype.cause=void 0,ta.prototype.fatal=void 0,ta.prototype.place=void 0,ta.prototype.ruleId=void 0,ta.prototype.source=void 0;const ql={basename:q2e,dirname:H2e,extname:U2e,join:W2e,sep:"/"};function q2e(e,r){if(r!==void 0&&typeof r!="string")throw new TypeError('"ext" argument must be a string');p1(e);let n=0,o=-1,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 H2e(e){if(p1(e),e.length===0)return".";let r=-1,n=e.length,o;for(;--n;)if(e.codePointAt(n)===47){if(o){r=n;break}}else o||(o=!0);return r<0?e.codePointAt(0)===47?"/":".":r===1&&e.codePointAt(0)===47?"//":e.slice(0,r)}function U2e(e){p1(e);let r=e.length,n=-1,o=0,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 W2e(...e){let r=-1,n;for(;++r0&&e.codePointAt(e.length-1)===47&&(n+="/"),r?"/"+n:n}function Y2e(e,r){let n="",o=0,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 p1(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const X2e={cwd:Z2e};function Z2e(){return"/"}function u8(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function K2e(e){if(typeof e=="string")e=new URL(e);else if(!u8(e)){const r=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw r.code="ERR_INVALID_ARG_TYPE",r}if(e.protocol!=="file:"){const r=new TypeError("The URL must be of scheme file");throw r.code="ERR_INVALID_URL_SCHEME",r}return Q2e(e)}function Q2e(e){if(e.hostname!==""){const o=new TypeError('File URL host must be "localhost" or empty on darwin');throw o.code="ERR_INVALID_FILE_URL_HOST",o}const r=e.pathname;let n=-1;for(;++n0){let[g,...v]=u;const w=o[f][1];d8(w)&&d8(g)&&(g=c8(!0,w,g)),o[f]=[d,g,...v]}}}}const n4e=new m8().freeze();function g8(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function y8(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function v8(e,r){if(r)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function oO(e){if(!d8(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function aO(e,r,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+r+"` instead")}function Xb(e){return o4e(e)?e:new J2e(e)}function o4e(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function a4e(e){return typeof e=="string"||i4e(e)}function i4e(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}function l4e(){return n4e().use(r2e).use(T3e).use(D3e).use(I2e,{allowDangerousHtml:!0}).use(S0e,XN({attributes:{"*":["className"],svg:["width","height","viewBox","fill","ariaHidden"],path:["d","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin"]},tagNames:["svg","g","path","div"]},M_)).use(Fve,{allowDangerousHtml:!0})}function s4e(e){return(""+l4e().processSync(e)).trim()}function c4e(e){return Hb(UI(e),{includeHtml:!1,includeImageAlt:!1})}var b8,iO;function d4e(){if(iO)return b8;iO=1;var e=iB(),r=Ab();function n(){this.clear()}return n.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},n.prototype.enqueue=function(o){return this.items.push(o),++this.size},n.prototype.dequeue=function(){if(this.size){var o=this.items[this.offset];return++this.offset*2>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,o}},n.prototype.peek=function(){if(this.size)return this.items[this.offset]},n.prototype.forEach=function(o,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)},b8=n,b8}var u4e=d4e();const x8=Qg(u4e);var w8,lO;function p4e(){if(lO)return w8;lO=1;function e(r){if(typeof r!="function")throw new Error("mnemonist/DefaultMap.constructor: expecting a function.");this.items=new Map,this.factory=r,this.size=0}return e.prototype.clear=function(){this.items.clear(),this.size=0},e.prototype.get=function(r){var n=this.items.get(r);return typeof n>"u"&&(n=this.factory(r,this.size),this.items.set(r,n),this.size++),n},e.prototype.peek=function(r){return this.items.get(r)},e.prototype.set=function(r,n){return this.items.set(r,n),this.size=this.items.size,this},e.prototype.has=function(r){return this.items.has(r)},e.prototype.delete=function(r){var n=this.items.delete(r);return this.size=this.items.size,n},e.prototype.forEach=function(r,n){n=arguments.length>1?n:this,this.items.forEach(r,n)},e.prototype.entries=function(){return this.items.entries()},e.prototype.keys=function(){return this.items.keys()},e.prototype.values=function(){return this.items.values()},typeof Symbol<"u"&&(e.prototype[Symbol.iterator]=e.prototype.entries),e.prototype.inspect=function(){return this.items},typeof Symbol<"u"&&(e.prototype[Symbol.for("nodejs.util.inspect.custom")]=e.prototype.inspect),e.autoIncrement=function(){var r=0;return function(){return r++}},w8=e,w8}var h4e=p4e();const Ln=Qg(h4e);function Ja(e){return!!e}function sO(e){return r=>!e(r)}function f4e(...e){return io(m4e,e)}const m4e=(e,r)=>r.every(n=>n(e));function g4e(...e){return io(y4e,e)}const y4e=(e,r)=>r.some(n=>n(e));function Xn(e){return e==null}function cO(e,r){return e[Iu]===r}const Iu="_stage",h1="_type",k8="_layout";function v4e(e){return Ja(e.kind)&&!Ja(e.element)}function b4e(e){return"tag"in e}function x4e(e){return"kind"in e}function w4e(e){return"participant"in e}function k4e(e){return"not"in e}function _4e(e){return"and"in e}function S4e(e){return"or"in e}function Ou(e){switch(!0){case w4e(e):{const r=e.participant,n=Ou(e.operator);return E4e(r,n)}case b4e(e):{if(Qc(e.tag)||"eq"in e.tag){const n=Qc(e.tag)?e.tag:e.tag.eq;return o=>Array.isArray(o.tags)&&o.tags.includes(n)}const r=e.tag.neq;return n=>!Array.isArray(n.tags)||!n.tags.includes(r)}case x4e(e):{if(Qc(e.kind)||"eq"in e.kind){const n=Qc(e.kind)?e.kind:e.kind.eq;return o=>o.kind===n}const r=e.kind.neq;return n=>Xn(n.kind)||n.kind!==r}case k4e(e):{const r=Ou(e.not);return sO(r)}case _4e(e):{const r=e.and.map(Ou);return f4e(r)}case S4e(e):{const r=e.or.map(Ou);return g4e(r)}default:Qo(e)}}function E4e(e,r){return n=>{if(!n.source||!n.target)return!1;switch(e){case"source":return r(n.source);case"target":return r(n.target)}}}function C4e(e){return e._type==="dynamic"}function f1(...e){return io(Object.entries,e)}function Lu(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>dO(n,e,...r):dO(e,...r)}function dO(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function Zb(...e){return io($4e,e,z4e)}const $4e=(e,r)=>e.map(r),z4e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function R4e(e,r){let n=r.length-e.length;if(n===1){let[o,...a]=r;return Ps(o,{lazy:e,lazyArgs:a})}if(n===0){let o={lazy:e,lazyArgs:r};return Object.assign(a=>Ps(a,o),o)}throw Error("Wrong number of arguments")}function Kb(...e){return R4e(T4e,e)}function T4e(){let e=new Set;return r=>e.has(r)?E_:(e.add(r),{done:!1,hasNext:!0,next:r})}var _8={},uO;function j4e(){return uO||(uO=1,(function(e){e.intersection=function(){if(arguments.length<2)throw new Error("mnemonist/Set.intersection: needs at least two arguments.");var r=new Set,n=1/0,o=null,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)}})(_8)),_8}var pO=j4e();function S8(...e){let r=new Set;for(const n of e)for(const o of n)r.add(o);return r}function Hh(e,...r){let n=new Set;if(e.size===0)return n;let o=Ll(r,2)?pO.intersection(...r):r[0];if(o.size===0)return n;for(const a of e)o.has(a)&&n.add(a);return n}function E8(e,r){if(e.size===0)return new Set;if(r.size===0)return new Set(e);let n=new Set;for(const o of e)r.has(o)||n.add(o);return n}function A4e(e,r){return e.size===r.size&&[...e].every(n=>r.has(n))}function D4e(e,r){return pO.symmetricDifference(e,r)}function m1(e){return e?hO(e):hO}function hO(e){const r=e[Symbol.iterator](),{value:n}=r.next();return n}const Qb=e=>typeof e=="function";function Is(e,r){const n=r??e;He(Qb(n));function*o(a){for(const i of a)n(i)&&(yield i)}return r?o(e):o}const fO={asc:(e,r)=>e>r,desc:(e,r)=>ee(i,a)}function C8(e,r,...n){let o=typeof e=="function"?e:e[0],a=typeof e=="function"?"asc":e[1],{[a]:i}=fO,l=r===void 0?void 0:C8(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 N4e(e){if(mO(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return mO(r)&&typeof n=="string"&&n in fO&&o.length===0}const mO=e=>typeof e=="function"&&e.length===1;function P4e(...e){return io(B4e,e,I4e)}const B4e=(e,r)=>e.filter(r),I4e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:E_;function gO(...e){return io(O4e,e,L4e)}const O4e=(e,r)=>e.flatMap(r),L4e=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 $8(...e){return io(F4e,e)}const F4e=(e,r)=>{let n=Object.create(null);for(let o=0;oPs(r,...e)}function vO(...e){return M4e(U4e,e)}const U4e=(e,r)=>[...e].sort(r);var bO=Symbol.for("immer-nothing"),xO=Symbol.for("immer-draftable"),Io=Symbol.for("immer-state");function Wi(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var wa=Object,Uh=wa.getPrototypeOf,Jb="constructor",ex="prototype",T8="configurable",tx="enumerable",rx="writable",g1="value",nd=e=>!!e&&!!e[Io];function Os(e){return e?kO(e)||ox(e)||!!e[xO]||!!e[Jb]?.[xO]||ax(e)||ix(e):!1}var W4e=wa[ex][Jb].toString(),wO=new WeakMap;function kO(e){if(!e||!A8(e))return!1;const r=Uh(e);if(r===null||r===wa[ex])return!0;const n=wa.hasOwnProperty.call(r,Jb)&&r[Jb];if(n===Object)return!0;if(!Wh(n))return!1;let o=wO.get(n);return o===void 0&&(o=Function.toString.call(n),wO.set(n,o)),o===W4e}function y1(e,r,n=!0){v1(e)===0?(n?Reflect.ownKeys(e):wa.keys(e)).forEach(a=>{r(a,e[a],e)}):e.forEach((o,a)=>r(a,o,e))}function v1(e){const r=e[Io];return r?r.type_:ox(e)?1:ax(e)?2:ix(e)?3:0}var _O=(e,r,n=v1(e))=>n===2?e.has(r):wa[ex].hasOwnProperty.call(e,r),j8=(e,r,n=v1(e))=>n===2?e.get(r):e[r],nx=(e,r,n,o=v1(e))=>{o===2?e.set(r,n):o===3?e.add(n):e[r]=n};function G4e(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}var ox=Array.isArray,ax=e=>e instanceof Map,ix=e=>e instanceof Set,A8=e=>typeof e=="object",Wh=e=>typeof e=="function",D8=e=>typeof e=="boolean",Ls=e=>e.copy_||e.base_,M8=e=>e.modified_?e.copy_:e.base_;function N8(e,r){if(ax(e))return new Map(e);if(ix(e))return new Set(e);if(ox(e))return Array[ex].slice.call(e);const n=kO(e);if(r===!0||r==="class_only"&&!n){const o=wa.getOwnPropertyDescriptors(e);delete o[Io];let a=Reflect.ownKeys(o);for(let i=0;i1&&wa.defineProperties(e,{set:lx,add:lx,clear:lx,delete:lx}),wa.freeze(e),r&&y1(e,(n,o)=>{P8(o,!0)},!1)),e}function Y4e(){Wi(2)}var lx={[g1]:Y4e};function sx(e){return e===null||!A8(e)?!0:wa.isFrozen(e)}var cx="MapSet",B8="Patches",SO={};function Gh(e){const r=SO[e];return r||Wi(0,e),r}var X4e=e=>!!SO[e],b1,EO=()=>b1,Z4e=(e,r)=>({drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:X4e(cx)?Gh(cx):void 0});function CO(e,r){r&&(e.patchPlugin_=Gh(B8),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function I8(e){O8(e),e.drafts_.forEach(K4e),e.drafts_=null}function O8(e){e===b1&&(b1=e.parent_)}var $O=e=>b1=Z4e(b1,e);function K4e(e){const r=e[Io];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function zO(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];if(e!==void 0&&e!==n){n[Io].modified_&&(I8(r),Wi(4)),Os(e)&&(e=RO(r,e));const{patchPlugin_:a}=r;a&&a.generateReplacementPatches_(n[Io].base_,e,r)}else e=RO(r,n);return Q4e(r,e,!0),I8(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==bO?e:void 0}function RO(e,r){if(sx(r))return r;const n=r[Io];if(!n)return L8(r,e.handledSet_,e);if(!dx(n,e))return r;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:o}=n;if(o)for(;o.length>0;)o.pop()(e);AO(n,e)}return n.copy_}function Q4e(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&P8(r,n)}function TO(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var dx=(e,r)=>e.scope_===r,J4e=[];function jO(e,r,n,o){const a=Ls(e),i=e.type_;if(o!==void 0&&j8(a,o,i)===r){nx(a,o,n,i);return}if(!e.draftLocations_){const s=e.draftLocations_=new Map;y1(a,(c,d)=>{if(nd(d)){const u=s.get(d)||[];u.push(c),s.set(d,u)}})}const l=e.draftLocations_.get(r)??J4e;for(const s of l)nx(a,s,n,i)}function eke(e,r,n){e.callbacks_.push(function(a){const i=r;if(!i||!dx(i,a))return;a.mapSetPlugin_?.fixSetContents(i);const l=M8(i);jO(e,i.draft_??i,l,n),AO(i,a)})}function AO(e,r){if(e.modified_&&!e.finalized_&&(e.type_===3||(e.assigned_?.size??0)>0)){const{patchPlugin_:o}=r;if(o){const a=o.getPath(e);a&&o.generatePatches_(e,a,r)}TO(e)}}function tke(e,r,n){const{scope_:o}=e;if(nd(n)){const a=n[Io];dx(a,o)&&a.callbacks_.push(function(){ux(e);const l=M8(a);jO(e,n,l,r)})}else Os(n)&&e.callbacks_.push(function(){const i=Ls(e);j8(i,r,e.type_)===n&&o.drafts_.length>1&&(e.assigned_.get(r)??!1)===!0&&e.copy_&&L8(j8(e.copy_,r,e.type_),o.handledSet_,o)})}function L8(e,r,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||nd(e)||r.has(e)||!Os(e)||sx(e)||(r.add(e),y1(e,(o,a)=>{if(nd(a)){const i=a[Io];if(dx(i,n)){const l=M8(i);nx(e,o,l,e.type_),TO(i)}}else Os(a)&&L8(a,r,n)})),e}function rke(e,r){const n=ox(e),o={type_:n?1:0,scope_:r?r.scope_:EO(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let a=o,i=F8;n&&(a=[o],i=x1);const{revoke:l,proxy:s}=Proxy.revocable(a,i);return o.draft_=s,o.revoke_=l,[s,o]}var F8={get(e,r){if(r===Io)return e;const n=Ls(e);if(!_O(n,r,e.type_))return nke(e,n,r);const o=n[r];if(e.finalized_||!Os(o))return o;if(o===V8(e.base_,r)){ux(e);const a=e.type_===1?+r:r,i=H8(e.scope_,o,e,a);return e.copy_[a]=i}return o},has(e,r){return r in Ls(e)},ownKeys(e){return Reflect.ownKeys(Ls(e))},set(e,r,n){const o=DO(Ls(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const a=V8(Ls(e),r),i=a?.[Io];if(i&&i.base_===n)return e.copy_[r]=n,e.assigned_.set(r,!1),!0;if(G4e(n,a)&&(n!==void 0||_O(e.base_,r,e.type_)))return!0;ux(e),q8(e)}return e.copy_[r]===n&&(n!==void 0||r in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[r])||(e.copy_[r]=n,e.assigned_.set(r,!0),tke(e,r,n)),!0},deleteProperty(e,r){return ux(e),V8(e.base_,r)!==void 0||r in e.base_?(e.assigned_.set(r,!1),q8(e)):e.assigned_.delete(r),e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=Ls(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{[rx]:!0,[T8]:e.type_!==1||r!=="length",[tx]:o[tx],[g1]:n[r]}},defineProperty(){Wi(11)},getPrototypeOf(e){return Uh(e.base_)},setPrototypeOf(){Wi(12)}},x1={};y1(F8,(e,r)=>{x1[e]=function(){const n=arguments;return n[0]=n[0][0],r.apply(this,n)}}),x1.deleteProperty=function(e,r){return x1.set.call(this,e,r,void 0)},x1.set=function(e,r,n){return F8.set.call(this,e[0],r,n,e[0])};function V8(e,r){const n=e[Io];return(n?Ls(n):e)[r]}function nke(e,r,n){const o=DO(r,n);return o?g1 in o?o[g1]:o.get?.call(e.draft_):void 0}function DO(e,r){if(!(r in e))return;let n=Uh(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=Uh(n)}}function q8(e){e.modified_||(e.modified_=!0,e.parent_&&q8(e.parent_))}function ux(e){e.copy_||(e.assigned_=new Map,e.copy_=N8(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var oke=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,o,a)=>{if(Wh(n)&&!Wh(o)){const l=o;o=n;const s=this;return function(d=l,...u){return s.produce(d,p=>o.call(this,p,...u))}}Wh(o)||Wi(6),a!==void 0&&!Wh(a)&&Wi(7);let i;if(Os(n)){const l=$O(this),s=H8(l,n,void 0);let c=!0;try{i=o(s),c=!1}finally{c?I8(l):O8(l)}return CO(l,a),zO(i,l)}else if(!n||!A8(n)){if(i=o(n),i===void 0&&(i=n),i===bO&&(i=void 0),this.autoFreeze_&&P8(i,!0),a){const l=[],s=[];Gh(B8).generateReplacementPatches_(n,i,{patches_:l,inversePatches_:s}),a(l,s)}return i}else Wi(1,n)},this.produceWithPatches=(n,o)=>{if(Wh(n))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]},D8(r?.autoFreeze)&&this.setAutoFreeze(r.autoFreeze),D8(r?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),D8(r?.useStrictIteration)&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){Os(r)||Wi(8),nd(r)&&(r=ake(r));const n=$O(this),o=H8(n,r,void 0);return o[Io].isManual_=!0,O8(n),o}finishDraft(r,n){const o=r&&r[Io];(!o||!o.isManual_)&&Wi(9);const{scope_:a}=o;return CO(a,n),zO(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=Gh(B8).applyPatches_;return nd(r)?a(r,n):this.produce(r,i=>a(i,n))}};function H8(e,r,n,o){const[a,i]=ax(r)?Gh(cx).proxyMap_(r,n):ix(r)?Gh(cx).proxySet_(r,n):rke(r,n);return(n?.scope_??EO()).drafts_.push(a),i.callbacks_=n?.callbacks_??[],i.key_=o,n&&o!==void 0?eke(n,i,o):i.callbacks_.push(function(c){c.mapSetPlugin_?.fixSetContents(i);const{patchPlugin_:d}=c;i.modified_&&d&&d.generatePatches_(i,[],c)}),a}function ake(e){return nd(e)||Wi(10,e),MO(e)}function MO(e){if(!Os(e)||sx(e))return e;const r=e[Io];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=N8(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=N8(e,!0);return y1(n,(a,i)=>{nx(n,a,MO(i))},o),r&&(r.finalized_=!1),n}var ike=new oke,Yh=ike.produce,NO=e=>e;function lke(e){return Ps(e,P4e(r=>!!r.notation),$8(Lu("notation")),z8(R8($8(Lu("shape")),z8(R8($8(Lu("color")),z8(R8(Zb(Lu("kind")),Kb())),f1(),Zb(([r,n])=>({kinds:n,color:r})))),f1(),gO(([r,n])=>n.map(({color:o,kinds:a})=>({shape:r,color:o,kinds:a}))))),f1(),gO(([r,n])=>n.map(({shape:o,color:a,kinds:i})=>({title:r,shape:o,color:a,kinds:i}))),vO(Lu("shape"),Lu("title"),[r=>r.kinds.length,"desc"]))}const wo=(e,r)=>e===r||Xn(e)&&Xn(r)?!1:!yb(e,r),px=5;function ske(e,r){e.color=r.color,e.kind=r.kind,e.navigateTo=r.navigateTo??null,e.links=r.links?[...r.links]:null,e.tags=[...r.tags],Xn(r.style.border)?delete e.style.border:e.style.border=r.style.border,V4e(r.style.opacity)?e.style.opacity=r.style.opacity:delete e.style.opacity,Xn(r.style.multiple)?delete e.style.multiple:e.style.multiple=r.style.multiple}function cke(e,r,n){if(wo(r.icon??"none",e.icon??"none")){const o=Ja(e.icon)&&e.icon!=="none";switch(!0){case(o&&Ja(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&&Ja(r.icon)&&r.icon!=="none"):return n?(e.icon=r.icon,!0):!1}}return!0}function U8(e,r){return e?"md"in r?(e.md=r.md,delete e.txt,e):("txt"in r&&(e.txt=r.txt,delete e.md),e):r}function dke(e,r,n){let o=!0;return wo(e.title,r.title)&&(n?e.title=r.title:o=!1),wo(e.description,r.description)&&(Xn(r.description)?delete e.description:n?e.description=U8(e.description,r.description):o=!1),wo(e.technology,r.technology)&&(Xn(r.technology)?delete e.technology:n?e.technology=r.technology:o=!1),o}function uke(e,r,n){return e.title=r.title,Xn(r.description)?delete e.description:e.description=U8(e.description,r.description),Xn(r.technology)?delete e.technology:e.technology=r.technology,!0}function PO(e,r){He(e.id===r.id,"applyManualLayout: view ids do not match"),He(e._stage==="layouted","applyManualLayout: expected layouted view"),He(r._stage==="layouted","applyManualLayout: expected layouted snapshot"),He(e._layout!=="manual","applyManualLayout: expected auto-layouted view");const n=new Set;e._type!==r._type&&n.add("type-changed");const o=new Map(e.nodes.map(u=>[u.id,u])),a=new Map(e.edges.map(u=>[u.id,u])),i=pke(r.nodes,o,n),l=hke(r.edges,a,n),s=lke(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,[k8]:"manual",...s&&s.length>0?{notation:{nodes:s}}:{},nodes:i,edges:l});C4e(e)&&c._type==="dynamic"&&(c.variant=e.variant);const d=[...n];return Ll(d,1)?c.drifts=d:"drifts"in c&&delete c.drifts,c}function pke(e,r,n){const o=e.map(a=>{const i=r.get(a.id);return i&&r.delete(i.id),Yh(a,l=>{if(!i){l.drifts=["removed"],n.add("nodes-removed");return}ske(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+px>=i.width&&l.height+px>=i.height;wo(l.shape,i.shape)&&(u?l.shape=i.shape:s.add("shape-changed")),cke(l,i,u&&d===c)||s.add("label-changed"),(c?uke:dke)(l,i,u)||s.add("label-changed"),wo(a.notation,i.notation)&&(l.notation=i.notation??null),c&&d&&D4e(new Set(a.children),new Set(i.children)).size>0&&s.add("children-changed");const f=[...s];Ll(f,1)?(n.add("nodes-drift"),l.drifts=f):delete l.drifts})});return r.size>0&&n.add("nodes-added"),o}function hke(e,r,n){const o=e.map(a=>{let i=r.get(a.id)??Ps(r.values(),Is(l=>l.source===a.source&&l.target===a.target),m1());return i&&r.delete(i.id),Yh(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=yO(a,["label","description","technology","labelBBox"]),u=yO(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+px)*(a.labelBBox.height+px)&&(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=U8(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];Ll(p,1)?(n.add("edges-drift"),l.drifts=p):delete l.drifts})});return r.size>0&&n.add("edges-added"),o}function fke(e,r){const{drifts:n,...o}=PO(e,r);if(n){const 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),Yh(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)??Ps(l.values(),Is(f=>f.source===u.source&&f.target===u.target),m1());return p&&l.delete(p.id),Yh(u,f=>{if(!p){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 Yh(e,u=>{Ll(d,1)?u.drifts=d:delete u.drifts,u.nodes=NO(s),u.edges=NO(c),u[k8]="auto"})}return Yh(e,a=>{delete a.drifts,a[k8]="auto"})}function Fs(e){return e.summary??e.description}function Xh(e){return e.description??e.summary}const w1="@group";function mke(e){return e.kind===w1}function BO(e,r){return He(typeof e=="string"&&e!=""),"@"+e+"."+r}function gke(e){return e.startsWith("@")}function yke(e){if(!e.startsWith("@"))return[null,e];const r=e.indexOf(".");if(r<2)throw new Error("Invalid global FQN");const n=e.slice(1,r),o=e.slice(r+1);return[n,o]}function k1(e){return e.startsWith("step-")}function IO(e){if(!k1(e))throw new Error(`Invalid step edge id: ${e}`);return parseFloat(e.slice(5))}function vke(...e){return io(bke,e)}function bke(e,r){let n={...e};for(let[o,a]of Object.entries(n))r(a,o,e)&&delete n[o];return n}var W8={},OO;function G8(){return OO||(OO=1,(function(e){var r=Math.pow(2,8)-1,n=Math.pow(2,16)-1,o=Math.pow(2,32)-1,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},X8=a,X8}var kke=wke();const HO=Qg(kke);function _1(e){return vke(e,r=>r===void 0)}const _ke=Symbol.for("text"),Ske=Symbol.for("html"),Vs="",UO=new HO(500),WO=new HO(500);class ur{static getOrCreateFromText(r){if(r.trim()===Vs)return ur.EMPTY;let n=WO.get(r);return n||(n=new ur({txt:r}),WO.set(r,n),n)}static getOrCreateFromMarkdown(r){if(r.trim()===Vs)return ur.EMPTY;let n=UO.get(r);return n||(n=new ur({md:r}),UO.set(r,n),n)}static memoize(r,n,o){return 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:Vs})}get text(){return null}get md(){return null}get html(){return null}};$source;isEmpty;nonEmpty;isMarkdown;constructor(r){this.isMarkdown=!1,typeof r=="string"?(this.$source={txt:r},this.isEmpty=r.trim()===Vs):(this.$source=r,this.isEmpty=!0,"md"in r?(this.isEmpty=r.md===Vs,this.isMarkdown=!0):this.isEmpty=r.txt===Vs),this.nonEmpty=!this.isEmpty}get text(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;return"txt"in r?r.txt:ir(this,_ke,()=>c4e(r.md))}get md(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;if("md"in r)return r.md;if("txt"in r)return r.txt;Qo(r)}get html(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;return"txt"in r?r.txt:ir(this,Ske,()=>s4e(r.md))}equals(r){return this===r?!0:r instanceof ur?this.isEmpty&&r.isEmpty?!0:this.isEmpty!==r.isEmpty||this.isMarkdown!==r.isMarkdown?!1:this.isMarkdown?this.$source?.md===r.$source?.md:this.$source?.txt===r.$source?.txt:!1}}var S1;(e=>{function r(c){return"model"in c&&!("project"in c)}e.isElementRef=r;function n(c){return"project"in c&&"model"in c}e.isImportRef=n;function o(c){if(Qc(c))throw new Error(`Expected FqnRef, got: "${c}"`);if(n(c))return BO(c.project,c.model);if(r(c))return c.model;throw new Error("Expected FqnRef.ModelRef or FqnRef.ImportRef")}e.flatten=o;function 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})(S1||(S1={}));var ko;(e=>{function r({x:u,y:p,width:f,height:g}){return{x:u+f/2,y:p+g/2}}e.center=r;function n({x:u,y:p,width:f,height:g}){return[{x:u,y:p},{x:u+f,y:p},{x:u+f,y:p+g},{x:u,y:p+g}]}e.toPoints=n;function o(u){const{x1:p,y1:f,x2:g,y2:v}=Z8.fromPoints(u);return{x:p,y:f,width:g-p,height:v-f}}e.fromPoints=o;function a(...u){if(He(Ll(u,1),"No boxes provided"),u.length===1)return u[0];let p=u[0].x,f=u[0].y,g=u[0].x+u[0].width,v=u[0].y+u[0].height;for(let w=1;w=p.x+p.width&&u.y+u.height>=p.y+p.height}e.includes=d})(ko||(ko={}));var Z8;(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})(Z8||(Z8={}));class ka{constructor(r,n){this.x=r,this.y=n}static create(...r){return r.length===2?new ka(r[0],r[1]):new ka(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 ka(this.x+r.x,this.y+r.y)}subtract(r){return new ka(this.x-r.x,this.y-r.y)}multiply(r){return new ka(this.x*r,this.y*r)}divide(r){return new ka(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 ka(0,0):new ka(this.x/r,this.y/r)}round(){return new ka(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 ka?e[0]:e.length===2?new ka(e[0],e[1]):new ka(e[0].x,e[0].y)}function K8(e){return k1(e)&&e.includes(".")?e.slice(0,e.indexOf(".")+1):null}function GO(e){const r=typeof e=="string"?e:e.color;return r.startsWith("#")||r.startsWith("rgb")}function Q8(...e){return io(Eke,e)}function Eke(e,r){let n=[...e];return n.sort(r),n}const Cke=["tomato","grass","blue","ruby","orange","indigo","pink","teal","purple","amber","crimson","red","lime","yellow","violet"];function $ke(e,r,n){let o=e.get(r);return o||(o=n(r),e.set(r,o)),o}function zke(e){let r=5381;const n=e.length;He(n>0,"stringHash: empty string");for(let o=0;o>>0).toString(36)}function E1(e,r){const n=r??e;He(Qb(n));function o(a){for(const i of a)if(n(i))return i}return r?o(e):o}function Rke(e,r){const n=e;He(Qb(n));function*o(a){for(const i of a)yield n(i)}return o}function C1(e){return e?Array.from(e):r=>Array.from(r)}function Tke(e){return e?new Set(e):r=>new Set(r)}function YO(e,r){const n=r??e;He(Qb(n));function o(a){for(const i of a)if(n(i))return!0;return!1}return r?o(e):o}function jke(e,r){const n=e;He(n>=0,"Count must be a non-negative number");function*o(a){let i=0;for(const l of a){if(i>=n)break;yield l,i++}}return a=>o(a)}function Ake(e,r){let n=Math.ceil(e),o=Math.floor(r);if(o{setTimeout(()=>{n(Dke)},r??100)})}function hx(e){const r=Jc([...e]),n=new Set(r),o=new Map(r.map(l=>[l._literalId,l])),a=new Ln(()=>null),i=r.reduce((l,s,c,d)=>(l.set(s,d.slice(c+1).filter(tB(s)).map(u=>(n.delete(u),u)).reduce((u,p)=>(u.some(Yn(p))||(u.push(p),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 J8=(e,r)=>e.size>2&&r.size!==e.size?new Set(Jc([...hx(e).flatten(),...r])):e.size>1?new Set(Jc([...e])):e;function ZO(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:J8(l,i.incomers),incoming:new Set(n.incoming),subjects:J8(a,i.subjects),outgoing:new Set(n.outgoing),outgoers:J8(s,i.outgoers)}}function KO(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"'),Mke(e,a,r);const i=r.element(e),l=Tke(i.ascendingSiblings());return ZO(i,l,{incoming:[...i.incoming()],outgoing:[...i.outgoing()]})}function Mke(e,r,n){const o=n.element(e);let a={incoming:C1(Is(o.incoming(),s=>r.includesRelation(s.id))),outgoing:C1(Is(o.outgoing(),s=>r.includesRelation(s.id)))};const i=tB(o),l=new Set([...o.ascendingSiblings(),...Ps(r.elements(),Rke(s=>s.element),Is(s=>s!==o&&i(s)))]);return ZO(o,l,a)}var QO;(e=>{e.isInside=r=>n=>Yn(r,n.source.id)&&Yn(r,n.target.id),e.isDirectedBetween=(r,n)=>o=>(o.source.id===r||Yn(r,o.source.id))&&(o.target.id===n||Yn(n,o.target.id)),e.isAnyBetween=(r,n)=>{const o=(0,e.isDirectedBetween)(r,n),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)}})(QO||(QO={}));const Nke=Symbol.for("nodejs.util.inspect.custom");function $1(e){return e===""||e===void 0?!0:Array.isArray(e)?e.length===0:Object.keys(e).length===0}function e7(...e){return io(Pke,e)}function Pke(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||!e||typeof r!="object"||!r)return!1;if(e instanceof Map&&r instanceof Map)return Bke(e,r);if(e instanceof Set&&r instanceof Set)return Ike(e,r);let n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(let o of n){if(!Object.hasOwn(r,o))return!1;let{[o]:a}=e,{[o]:i}=r;if(a!==i||!Object.is(a,i))return!1}return!0}function Bke(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 Ike(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}class JO{Aux;get style(){return ir(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.$node.style}))}get name(){return Jg(this.id)}get shape(){return this.style.shape}get color(){return this.style.color}get icon(){return this.style.icon??null}get summary(){return ur.memoize(this,"summary",Fs(this.$node))}get description(){return ur.memoize(this,"description",Xh(this.$node))}get technology(){return this.$node.technology??null}get links(){return this.$node.links??[]}ancestors(){return this.$model.ancestors(this)}commonAncestor(r){const n=t1(this.id,r.id);return n?this.$model.node(n):null}siblings(){return this.$model.siblings(this)}isSibling(r){return this.parent===r.parent}*ascendingSiblings(){yield*this.siblings();for(const r of this.ancestors())yield*r.siblings()}*descendingSiblings(){for(const r of[...this.ancestors()].reverse())yield*r.siblings();yield*this.siblings()}incoming(r="all"){return this.$model.incoming(this,r)}outgoing(r="all"){return this.$model.outgoing(this,r)}*incomers(r="all"){const n=new Set;for(const o of this.incoming(r))n.has(o.source.id)||(n.add(o.source.id),yield o.source)}*outgoers(r="all"){const n=new Set;for(const o of this.outgoing(r))n.has(o.target.id)||(n.add(o.target.id),yield o.target)}*views(){for(const r of this.$model.views())r._type==="deployment"&&r.includesDeployment(this.id)&&(yield r)}isDeploymentNode(){return!1}isInstance(){return!1}get allOutgoing(){return ir(this,Symbol.for("allOutgoing"),()=>od.from(new Set(this.outgoingModelRelationships()),new Set(this.outgoing())))}get allIncoming(){return ir(this,Symbol.for("allIncoming"),()=>od.from(new Set(this.incomingModelRelationships()),new Set(this.incoming())))}hasMetadata(){return!!this.$node.metadata&&!$1(this.$node.metadata)}getMetadata(r){return r?this.$node.metadata?.[r]:this.$node.metadata??{}}isTagged(r){return this.tags.includes(r)}}class eL extends JO{constructor(r,n){super(),this.$model=r,this.$node=n,this.id=n.id,this._literalId=n.id,this.title=n.title,this.hierarchyLevel=Tb(n.id)}id;_literalId;title;hierarchyLevel;get parent(){return this.$model.parent(this)}get kind(){return this.$node.kind}get tags(){return ir(this,Symbol.for("tags"),()=>Kb([...this.$node.tags??[],...this.$model.$model.specification.deployments[this.kind]?.tags??[]]))}children(){return this.$model.children(this)}descendants(r="desc"){return this.$model.descendants(this,r)}isDeploymentNode(){return!0}*instances(){for(const r of this.descendants("desc"))r.isInstance()&&(yield r)}onlyOneInstance(){const r=this.children();if(r.size!==1)return null;const n=m1(r);return n?n.isInstance()?n:n.onlyOneInstance():null}_relationshipsFromInstances=null;relationshipsFromInstances(){if(this._relationshipsFromInstances)return this._relationshipsFromInstances;const{outgoing:r,incoming:n}=this._relationshipsFromInstances={outgoing:new Set,incoming:new Set};for(const o of this.instances()){for(const 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 Hh(n,r)}}class tL extends JO{constructor(r,n,o){super(),this.$model=r,this.$instance=n,this.element=o,this.id=n.id,this._literalId=n.id,this.title=n.title??o.title,this.hierarchyLevel=Tb(n.id)}id;_literalId;title;hierarchyLevel;get $node(){return this.$instance}get parent(){return mt(this.$model.parent(this),`Parent of ${this.id} not found`)}get style(){return ir(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.element.$element.style,...this.$instance.style}))}get tags(){return ir(this,Symbol.for("tags"),()=>Kb([...this.$instance.tags??[],...this.element.tags]))}get kind(){return this.element.kind}get summary(){return ur.memoize(this,"summary",Fs(this.$instance)??Fs(this.element.$element))}get description(){return ur.memoize(this,"description",Xh(this.$instance)??Xh(this.element.$element))}get technology(){return this.$instance.technology??this.element.technology??null}get links(){return this.$instance.links??this.element.links}isInstance(){return!0}outgoingModelRelationships(){return this.element.outgoing()}incomingModelRelationships(){return this.element.incoming()}*views(){for(const r of this.$model.views())if(r._type==="deployment"){if(r.includesDeployment(this.id)){yield r;continue}r.includesDeployment(this.parent.id)&&this.parent.onlyOneInstance()&&(yield r)}}}class Oke{constructor(r,n){this.instance=r,this.element=n}get id(){return this.instance.id}get _literalId(){return this.instance.id}get style(){return 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 Lke{constructor(r,n){this.$model=r,this.$relationship=n,this.source=r.deploymentRef(n.source),this.target=r.deploymentRef(n.target);const o=t1(this.source.id,this.target.id);this.boundary=o?this.$model.node(o):null}boundary;source;target;get id(){return this.$relationship.id}get expression(){return`${this.source.id} -> ${this.target.id}`}get title(){return Ja(this.$relationship.title)?this.$relationship.title:null}get technology(){return this.$relationship.technology??null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!e7(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$relationship))}get description(){return ur.memoize(this,"description",Xh(this.$relationship))}get tags(){return this.$relationship.tags??[]}get kind(){return this.$relationship.kind??null}get navigateTo(){return this.$relationship.navigateTo?this.$model.$model.view(this.$relationship.navigateTo):null}get links(){return this.$relationship.links??[]}get color(){return this.$relationship.color??this.$model.$styles.defaults.relationship.color}get line(){return this.$relationship.line??this.$model.$styles.defaults.relationship.line}get head(){return this.$relationship.head??this.$model.$styles.defaults.relationship.arrow}get tail(){return this.$relationship.tail}*views(){for(const r of this.$model.views())r.includesRelation(this.id)&&(yield r)}isDeploymentRelation(){return!0}isModelRelation(){return!1}hasMetadata(){return!!this.$relationship.metadata&&!$1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class od{constructor(r=new Set,n=new Set){this.model=r,this.deployment=n}static empty(){return new od}static from(r,n){return new od(new Set(r),new Set(n))}get isEmpty(){return this.model.size===0&&this.deployment.size===0}get nonEmpty(){return this.model.size>0||this.deployment.size>0}get size(){return this.model.size+this.deployment.size}intersect(r){return od.from(Hh(this.model,r.model),Hh(this.deployment,r.deployment))}difference(r){return od.from(E8(this.model,r.model),E8(this.deployment,r.deployment))}union(r){return od.from(S8(this.model,r.model),S8(this.deployment,r.deployment))}}function rL(e,r){return n=>e.source===n.source&&e.target===n.target}function t7(e,r,n="directed"){if(e===r)return[];if(eB(e,r))return[];const o=Hh(e.allOutgoing,r.allIncoming),a=o.size>0?new ei(e,r,o):null;if(n==="directed")return a?[a]:[];const i=Hh(e.allIncoming,r.allOutgoing),l=i.size>0?new ei(r,e,i):null;return a&&l?[a,l]:a?[a]:l?[l]:[]}function nL(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 t7(e,i,n))l.source===e?o.push(l):a.push(l);return[...o,...a]}function Fke(e){return[...e].reduce((r,n,o,a)=>(o===a.length-1||r.push(...nL(n,a.slice(o+1),"both")),r),[])}const Vke={__proto__:null,findConnection:t7,findConnectionsBetween:nL,findConnectionsWithin:Fke};class ei{constructor(r,n,o=new Set){this.source=r,this.target=n,this.relations=o,this.id=zke(`model:${r.id}:${n.id}`)}id;_boundary;get boundary(){return this._boundary??=this.source.commonAncestor(this.target)}get expression(){return`${this.source.id} -> ${this.target.id}`}get isDirect(){return this.nonEmpty()&&!this.isImplicit}get isImplicit(){return this.nonEmpty()&&YO(this.relations,sO(rL(this)))}get directRelations(){return new Set(Is(this.relations,rL(this)))}nonEmpty(){return this.relations.size>0}mergeWith(r){return He(this.source.id===r.source.id,"Cannot merge connections with different sources"),He(this.target.id===r.target.id,"Cannot merge connections with different targets"),new ei(this.source,this.target,S8(this.relations,r.relations))}difference(r){return new ei(this.source,this.target,E8(this.relations,r.relations))}intersect(r){return He(r instanceof ei,"Cannot intersect connection with different type"),new ei(this.source,this.target,Hh(this.relations,r.relations))}equals(r){He(r instanceof ei,"Cannot merge connection with different type");const n=r;return this.id===n.id&&this.source.id===n.source.id&&this.target.id===n.target.id&&A4e(this.relations,n.relations)}update(r){return new ei(this.source,this.target,r)}[Nke](r,n,o){const a=this.toString();return Object.defineProperty(a,"constructor",{value:ei,enumerable:!1}),a}toString(){return[this.expression,this.relations.size?" relations:":" relations: [ ]",...[...this.relations].map(r=>" "+r.expression)].join(` +`},a),i}function I2e(e,r){return e&&"run"in e?async function(n,o){const a=eO(n,{file:o,...r});await e.run(a,o)}:function(n,o){return eO(n,{file:o,...e||r})}}function tO(e){if(e)throw e}var s8,rO;function O2e(){if(rO)return s8;rO=1;var e=Object.prototype.hasOwnProperty,r=Object.prototype.toString,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,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 s8=function c(){var d,u,p,f,g,v,w=arguments[0],x=1,k=arguments.length,C=!1;for(typeof w=="boolean"&&(C=w,w=arguments[1]||{},x=2),(w==null||typeof w!="object"&&typeof w!="function")&&(w={});xl.length;let c;s&&l.push(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 ta 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=u1(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}}ta.prototype.file="",ta.prototype.name="",ta.prototype.reason="",ta.prototype.message="",ta.prototype.stack="",ta.prototype.column=void 0,ta.prototype.line=void 0,ta.prototype.ancestors=void 0,ta.prototype.cause=void 0,ta.prototype.fatal=void 0,ta.prototype.place=void 0,ta.prototype.ruleId=void 0,ta.prototype.source=void 0;const ql={basename:q2e,dirname:H2e,extname:U2e,join:W2e,sep:"/"};function q2e(e,r){if(r!==void 0&&typeof r!="string")throw new TypeError('"ext" argument must be a string');p1(e);let n=0,o=-1,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 H2e(e){if(p1(e),e.length===0)return".";let r=-1,n=e.length,o;for(;--n;)if(e.codePointAt(n)===47){if(o){r=n;break}}else o||(o=!0);return r<0?e.codePointAt(0)===47?"/":".":r===1&&e.codePointAt(0)===47?"//":e.slice(0,r)}function U2e(e){p1(e);let r=e.length,n=-1,o=0,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 W2e(...e){let r=-1,n;for(;++r0&&e.codePointAt(e.length-1)===47&&(n+="/"),r?"/"+n:n}function Y2e(e,r){let n="",o=0,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 p1(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const X2e={cwd:Z2e};function Z2e(){return"/"}function u8(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function K2e(e){if(typeof e=="string")e=new URL(e);else if(!u8(e)){const r=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw r.code="ERR_INVALID_ARG_TYPE",r}if(e.protocol!=="file:"){const r=new TypeError("The URL must be of scheme file");throw r.code="ERR_INVALID_URL_SCHEME",r}return Q2e(e)}function Q2e(e){if(e.hostname!==""){const o=new TypeError('File URL host must be "localhost" or empty on darwin');throw o.code="ERR_INVALID_FILE_URL_HOST",o}const r=e.pathname;let n=-1;for(;++n0){let[g,...v]=u;const w=o[f][1];d8(w)&&d8(g)&&(g=c8(!0,w,g)),o[f]=[d,g,...v]}}}}const n4e=new m8().freeze();function g8(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function y8(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function v8(e,r){if(r)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function oO(e){if(!d8(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function aO(e,r,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+r+"` instead")}function Xb(e){return o4e(e)?e:new J2e(e)}function o4e(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function a4e(e){return typeof e=="string"||i4e(e)}function i4e(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}function l4e(){return n4e().use(r2e).use(T3e).use(D3e).use(I2e,{allowDangerousHtml:!0}).use(S0e,XN({attributes:{"*":["className"],svg:["width","height","viewBox","fill","ariaHidden"],path:["d","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin"]},tagNames:["svg","g","path","div"]},M_)).use(Fve,{allowDangerousHtml:!0})}function s4e(e){return(""+l4e().processSync(e)).trim()}function c4e(e){return Hb(UI(e),{includeHtml:!1,includeImageAlt:!1})}var b8,iO;function d4e(){if(iO)return b8;iO=1;var e=iB(),r=Ab();function n(){this.clear()}return n.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},n.prototype.enqueue=function(o){return this.items.push(o),++this.size},n.prototype.dequeue=function(){if(this.size){var o=this.items[this.offset];return++this.offset*2>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,o}},n.prototype.peek=function(){if(this.size)return this.items[this.offset]},n.prototype.forEach=function(o,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)},b8=n,b8}var u4e=d4e();const x8=Qg(u4e);var w8,lO;function p4e(){if(lO)return w8;lO=1;function e(r){if(typeof r!="function")throw new Error("mnemonist/DefaultMap.constructor: expecting a function.");this.items=new Map,this.factory=r,this.size=0}return e.prototype.clear=function(){this.items.clear(),this.size=0},e.prototype.get=function(r){var n=this.items.get(r);return typeof n>"u"&&(n=this.factory(r,this.size),this.items.set(r,n),this.size++),n},e.prototype.peek=function(r){return this.items.get(r)},e.prototype.set=function(r,n){return this.items.set(r,n),this.size=this.items.size,this},e.prototype.has=function(r){return this.items.has(r)},e.prototype.delete=function(r){var n=this.items.delete(r);return this.size=this.items.size,n},e.prototype.forEach=function(r,n){n=arguments.length>1?n:this,this.items.forEach(r,n)},e.prototype.entries=function(){return this.items.entries()},e.prototype.keys=function(){return this.items.keys()},e.prototype.values=function(){return this.items.values()},typeof Symbol<"u"&&(e.prototype[Symbol.iterator]=e.prototype.entries),e.prototype.inspect=function(){return this.items},typeof Symbol<"u"&&(e.prototype[Symbol.for("nodejs.util.inspect.custom")]=e.prototype.inspect),e.autoIncrement=function(){var r=0;return function(){return r++}},w8=e,w8}var h4e=p4e();const Ln=Qg(h4e);function Ja(e){return!!e}function sO(e){return r=>!e(r)}function f4e(...e){return io(m4e,e)}const m4e=(e,r)=>r.every(n=>n(e));function g4e(...e){return io(y4e,e)}const y4e=(e,r)=>r.some(n=>n(e));function Xn(e){return e==null}function cO(e,r){return e[Iu]===r}const Iu="_stage",h1="_type",k8="_layout";function v4e(e){return Ja(e.kind)&&!Ja(e.element)}function b4e(e){return"tag"in e}function x4e(e){return"kind"in e}function w4e(e){return"participant"in e}function k4e(e){return"not"in e}function _4e(e){return"and"in e}function S4e(e){return"or"in e}function Ou(e){switch(!0){case w4e(e):{const r=e.participant,n=Ou(e.operator);return E4e(r,n)}case b4e(e):{if(Qc(e.tag)||"eq"in e.tag){const n=Qc(e.tag)?e.tag:e.tag.eq;return o=>Array.isArray(o.tags)&&o.tags.includes(n)}const r=e.tag.neq;return n=>!Array.isArray(n.tags)||!n.tags.includes(r)}case x4e(e):{if(Qc(e.kind)||"eq"in e.kind){const n=Qc(e.kind)?e.kind:e.kind.eq;return o=>o.kind===n}const r=e.kind.neq;return n=>Xn(n.kind)||n.kind!==r}case k4e(e):{const r=Ou(e.not);return sO(r)}case _4e(e):{const r=e.and.map(Ou);return f4e(r)}case S4e(e):{const r=e.or.map(Ou);return g4e(r)}default:Qo(e)}}function E4e(e,r){return n=>{if(!n.source||!n.target)return!1;switch(e){case"source":return r(n.source);case"target":return r(n.target)}}}function C4e(e){return e._type==="dynamic"}function f1(...e){return io(Object.entries,e)}function Lu(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>dO(n,e,...r):dO(e,...r)}function dO(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function Zb(...e){return io($4e,e,R4e)}const $4e=(e,r)=>e.map(r),R4e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function z4e(e,r){let n=r.length-e.length;if(n===1){let[o,...a]=r;return Ps(o,{lazy:e,lazyArgs:a})}if(n===0){let o={lazy:e,lazyArgs:r};return Object.assign(a=>Ps(a,o),o)}throw Error("Wrong number of arguments")}function Kb(...e){return z4e(T4e,e)}function T4e(){let e=new Set;return r=>e.has(r)?E_:(e.add(r),{done:!1,hasNext:!0,next:r})}var _8={},uO;function j4e(){return uO||(uO=1,(function(e){e.intersection=function(){if(arguments.length<2)throw new Error("mnemonist/Set.intersection: needs at least two arguments.");var r=new Set,n=1/0,o=null,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)}})(_8)),_8}var pO=j4e();function S8(...e){let r=new Set;for(const n of e)for(const o of n)r.add(o);return r}function Hh(e,...r){let n=new Set;if(e.size===0)return n;let o=Ll(r,2)?pO.intersection(...r):r[0];if(o.size===0)return n;for(const a of e)o.has(a)&&n.add(a);return n}function E8(e,r){if(e.size===0)return new Set;if(r.size===0)return new Set(e);let n=new Set;for(const o of e)r.has(o)||n.add(o);return n}function A4e(e,r){return e.size===r.size&&[...e].every(n=>r.has(n))}function D4e(e,r){return pO.symmetricDifference(e,r)}function m1(e){return e?hO(e):hO}function hO(e){const r=e[Symbol.iterator](),{value:n}=r.next();return n}const Qb=e=>typeof e=="function";function Is(e,r){const n=r??e;He(Qb(n));function*o(a){for(const i of a)n(i)&&(yield i)}return r?o(e):o}const fO={asc:(e,r)=>e>r,desc:(e,r)=>ee(i,a)}function C8(e,r,...n){let o=typeof e=="function"?e:e[0],a=typeof e=="function"?"asc":e[1],{[a]:i}=fO,l=r===void 0?void 0:C8(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 N4e(e){if(mO(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return mO(r)&&typeof n=="string"&&n in fO&&o.length===0}const mO=e=>typeof e=="function"&&e.length===1;function P4e(...e){return io(B4e,e,I4e)}const B4e=(e,r)=>e.filter(r),I4e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:E_;function gO(...e){return io(O4e,e,L4e)}const O4e=(e,r)=>e.flatMap(r),L4e=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 $8(...e){return io(F4e,e)}const F4e=(e,r)=>{let n=Object.create(null);for(let o=0;oPs(r,...e)}function vO(...e){return M4e(U4e,e)}const U4e=(e,r)=>[...e].sort(r);var bO=Symbol.for("immer-nothing"),xO=Symbol.for("immer-draftable"),Io=Symbol.for("immer-state");function Wi(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var wa=Object,Uh=wa.getPrototypeOf,Jb="constructor",ex="prototype",T8="configurable",tx="enumerable",rx="writable",g1="value",nd=e=>!!e&&!!e[Io];function Os(e){return e?kO(e)||ox(e)||!!e[xO]||!!e[Jb]?.[xO]||ax(e)||ix(e):!1}var W4e=wa[ex][Jb].toString(),wO=new WeakMap;function kO(e){if(!e||!A8(e))return!1;const r=Uh(e);if(r===null||r===wa[ex])return!0;const n=wa.hasOwnProperty.call(r,Jb)&&r[Jb];if(n===Object)return!0;if(!Wh(n))return!1;let o=wO.get(n);return o===void 0&&(o=Function.toString.call(n),wO.set(n,o)),o===W4e}function y1(e,r,n=!0){v1(e)===0?(n?Reflect.ownKeys(e):wa.keys(e)).forEach(a=>{r(a,e[a],e)}):e.forEach((o,a)=>r(a,o,e))}function v1(e){const r=e[Io];return r?r.type_:ox(e)?1:ax(e)?2:ix(e)?3:0}var _O=(e,r,n=v1(e))=>n===2?e.has(r):wa[ex].hasOwnProperty.call(e,r),j8=(e,r,n=v1(e))=>n===2?e.get(r):e[r],nx=(e,r,n,o=v1(e))=>{o===2?e.set(r,n):o===3?e.add(n):e[r]=n};function G4e(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}var ox=Array.isArray,ax=e=>e instanceof Map,ix=e=>e instanceof Set,A8=e=>typeof e=="object",Wh=e=>typeof e=="function",D8=e=>typeof e=="boolean",Ls=e=>e.copy_||e.base_,M8=e=>e.modified_?e.copy_:e.base_;function N8(e,r){if(ax(e))return new Map(e);if(ix(e))return new Set(e);if(ox(e))return Array[ex].slice.call(e);const n=kO(e);if(r===!0||r==="class_only"&&!n){const o=wa.getOwnPropertyDescriptors(e);delete o[Io];let a=Reflect.ownKeys(o);for(let i=0;i1&&wa.defineProperties(e,{set:lx,add:lx,clear:lx,delete:lx}),wa.freeze(e),r&&y1(e,(n,o)=>{P8(o,!0)},!1)),e}function Y4e(){Wi(2)}var lx={[g1]:Y4e};function sx(e){return e===null||!A8(e)?!0:wa.isFrozen(e)}var cx="MapSet",B8="Patches",SO={};function Gh(e){const r=SO[e];return r||Wi(0,e),r}var X4e=e=>!!SO[e],b1,EO=()=>b1,Z4e=(e,r)=>({drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:X4e(cx)?Gh(cx):void 0});function CO(e,r){r&&(e.patchPlugin_=Gh(B8),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function I8(e){O8(e),e.drafts_.forEach(K4e),e.drafts_=null}function O8(e){e===b1&&(b1=e.parent_)}var $O=e=>b1=Z4e(b1,e);function K4e(e){const r=e[Io];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function RO(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];if(e!==void 0&&e!==n){n[Io].modified_&&(I8(r),Wi(4)),Os(e)&&(e=zO(r,e));const{patchPlugin_:a}=r;a&&a.generateReplacementPatches_(n[Io].base_,e,r)}else e=zO(r,n);return Q4e(r,e,!0),I8(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==bO?e:void 0}function zO(e,r){if(sx(r))return r;const n=r[Io];if(!n)return L8(r,e.handledSet_,e);if(!dx(n,e))return r;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:o}=n;if(o)for(;o.length>0;)o.pop()(e);AO(n,e)}return n.copy_}function Q4e(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&P8(r,n)}function TO(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var dx=(e,r)=>e.scope_===r,J4e=[];function jO(e,r,n,o){const a=Ls(e),i=e.type_;if(o!==void 0&&j8(a,o,i)===r){nx(a,o,n,i);return}if(!e.draftLocations_){const s=e.draftLocations_=new Map;y1(a,(c,d)=>{if(nd(d)){const u=s.get(d)||[];u.push(c),s.set(d,u)}})}const l=e.draftLocations_.get(r)??J4e;for(const s of l)nx(a,s,n,i)}function eke(e,r,n){e.callbacks_.push(function(a){const i=r;if(!i||!dx(i,a))return;a.mapSetPlugin_?.fixSetContents(i);const l=M8(i);jO(e,i.draft_??i,l,n),AO(i,a)})}function AO(e,r){if(e.modified_&&!e.finalized_&&(e.type_===3||(e.assigned_?.size??0)>0)){const{patchPlugin_:o}=r;if(o){const a=o.getPath(e);a&&o.generatePatches_(e,a,r)}TO(e)}}function tke(e,r,n){const{scope_:o}=e;if(nd(n)){const a=n[Io];dx(a,o)&&a.callbacks_.push(function(){ux(e);const l=M8(a);jO(e,n,l,r)})}else Os(n)&&e.callbacks_.push(function(){const i=Ls(e);j8(i,r,e.type_)===n&&o.drafts_.length>1&&(e.assigned_.get(r)??!1)===!0&&e.copy_&&L8(j8(e.copy_,r,e.type_),o.handledSet_,o)})}function L8(e,r,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||nd(e)||r.has(e)||!Os(e)||sx(e)||(r.add(e),y1(e,(o,a)=>{if(nd(a)){const i=a[Io];if(dx(i,n)){const l=M8(i);nx(e,o,l,e.type_),TO(i)}}else Os(a)&&L8(a,r,n)})),e}function rke(e,r){const n=ox(e),o={type_:n?1:0,scope_:r?r.scope_:EO(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let a=o,i=F8;n&&(a=[o],i=x1);const{revoke:l,proxy:s}=Proxy.revocable(a,i);return o.draft_=s,o.revoke_=l,[s,o]}var F8={get(e,r){if(r===Io)return e;const n=Ls(e);if(!_O(n,r,e.type_))return nke(e,n,r);const o=n[r];if(e.finalized_||!Os(o))return o;if(o===V8(e.base_,r)){ux(e);const a=e.type_===1?+r:r,i=H8(e.scope_,o,e,a);return e.copy_[a]=i}return o},has(e,r){return r in Ls(e)},ownKeys(e){return Reflect.ownKeys(Ls(e))},set(e,r,n){const o=DO(Ls(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const a=V8(Ls(e),r),i=a?.[Io];if(i&&i.base_===n)return e.copy_[r]=n,e.assigned_.set(r,!1),!0;if(G4e(n,a)&&(n!==void 0||_O(e.base_,r,e.type_)))return!0;ux(e),q8(e)}return e.copy_[r]===n&&(n!==void 0||r in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[r])||(e.copy_[r]=n,e.assigned_.set(r,!0),tke(e,r,n)),!0},deleteProperty(e,r){return ux(e),V8(e.base_,r)!==void 0||r in e.base_?(e.assigned_.set(r,!1),q8(e)):e.assigned_.delete(r),e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=Ls(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{[rx]:!0,[T8]:e.type_!==1||r!=="length",[tx]:o[tx],[g1]:n[r]}},defineProperty(){Wi(11)},getPrototypeOf(e){return Uh(e.base_)},setPrototypeOf(){Wi(12)}},x1={};y1(F8,(e,r)=>{x1[e]=function(){const n=arguments;return n[0]=n[0][0],r.apply(this,n)}}),x1.deleteProperty=function(e,r){return x1.set.call(this,e,r,void 0)},x1.set=function(e,r,n){return F8.set.call(this,e[0],r,n,e[0])};function V8(e,r){const n=e[Io];return(n?Ls(n):e)[r]}function nke(e,r,n){const o=DO(r,n);return o?g1 in o?o[g1]:o.get?.call(e.draft_):void 0}function DO(e,r){if(!(r in e))return;let n=Uh(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=Uh(n)}}function q8(e){e.modified_||(e.modified_=!0,e.parent_&&q8(e.parent_))}function ux(e){e.copy_||(e.assigned_=new Map,e.copy_=N8(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var oke=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,o,a)=>{if(Wh(n)&&!Wh(o)){const l=o;o=n;const s=this;return function(d=l,...u){return s.produce(d,p=>o.call(this,p,...u))}}Wh(o)||Wi(6),a!==void 0&&!Wh(a)&&Wi(7);let i;if(Os(n)){const l=$O(this),s=H8(l,n,void 0);let c=!0;try{i=o(s),c=!1}finally{c?I8(l):O8(l)}return CO(l,a),RO(i,l)}else if(!n||!A8(n)){if(i=o(n),i===void 0&&(i=n),i===bO&&(i=void 0),this.autoFreeze_&&P8(i,!0),a){const l=[],s=[];Gh(B8).generateReplacementPatches_(n,i,{patches_:l,inversePatches_:s}),a(l,s)}return i}else Wi(1,n)},this.produceWithPatches=(n,o)=>{if(Wh(n))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]},D8(r?.autoFreeze)&&this.setAutoFreeze(r.autoFreeze),D8(r?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),D8(r?.useStrictIteration)&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){Os(r)||Wi(8),nd(r)&&(r=ake(r));const n=$O(this),o=H8(n,r,void 0);return o[Io].isManual_=!0,O8(n),o}finishDraft(r,n){const o=r&&r[Io];(!o||!o.isManual_)&&Wi(9);const{scope_:a}=o;return CO(a,n),RO(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=Gh(B8).applyPatches_;return nd(r)?a(r,n):this.produce(r,i=>a(i,n))}};function H8(e,r,n,o){const[a,i]=ax(r)?Gh(cx).proxyMap_(r,n):ix(r)?Gh(cx).proxySet_(r,n):rke(r,n);return(n?.scope_??EO()).drafts_.push(a),i.callbacks_=n?.callbacks_??[],i.key_=o,n&&o!==void 0?eke(n,i,o):i.callbacks_.push(function(c){c.mapSetPlugin_?.fixSetContents(i);const{patchPlugin_:d}=c;i.modified_&&d&&d.generatePatches_(i,[],c)}),a}function ake(e){return nd(e)||Wi(10,e),MO(e)}function MO(e){if(!Os(e)||sx(e))return e;const r=e[Io];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=N8(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=N8(e,!0);return y1(n,(a,i)=>{nx(n,a,MO(i))},o),r&&(r.finalized_=!1),n}var ike=new oke,Yh=ike.produce,NO=e=>e;function lke(e){return Ps(e,P4e(r=>!!r.notation),$8(Lu("notation")),R8(z8($8(Lu("shape")),R8(z8($8(Lu("color")),R8(z8(Zb(Lu("kind")),Kb())),f1(),Zb(([r,n])=>({kinds:n,color:r})))),f1(),gO(([r,n])=>n.map(({color:o,kinds:a})=>({shape:r,color:o,kinds:a}))))),f1(),gO(([r,n])=>n.map(({shape:o,color:a,kinds:i})=>({title:r,shape:o,color:a,kinds:i}))),vO(Lu("shape"),Lu("title"),[r=>r.kinds.length,"desc"]))}const wo=(e,r)=>e===r||Xn(e)&&Xn(r)?!1:!yb(e,r),px=5;function ske(e,r){e.color=r.color,e.kind=r.kind,e.navigateTo=r.navigateTo??null,e.links=r.links?[...r.links]:null,e.tags=[...r.tags],Xn(r.style.border)?delete e.style.border:e.style.border=r.style.border,V4e(r.style.opacity)?e.style.opacity=r.style.opacity:delete e.style.opacity,Xn(r.style.multiple)?delete e.style.multiple:e.style.multiple=r.style.multiple}function cke(e,r,n){if(wo(r.icon??"none",e.icon??"none")){const o=Ja(e.icon)&&e.icon!=="none";switch(!0){case(o&&Ja(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&&Ja(r.icon)&&r.icon!=="none"):return n?(e.icon=r.icon,!0):!1}}return!0}function U8(e,r){return e?"md"in r?(e.md=r.md,delete e.txt,e):("txt"in r&&(e.txt=r.txt,delete e.md),e):r}function dke(e,r,n){let o=!0;return wo(e.title,r.title)&&(n?e.title=r.title:o=!1),wo(e.description,r.description)&&(Xn(r.description)?delete e.description:n?e.description=U8(e.description,r.description):o=!1),wo(e.technology,r.technology)&&(Xn(r.technology)?delete e.technology:n?e.technology=r.technology:o=!1),o}function uke(e,r,n){return e.title=r.title,Xn(r.description)?delete e.description:e.description=U8(e.description,r.description),Xn(r.technology)?delete e.technology:e.technology=r.technology,!0}function PO(e,r){He(e.id===r.id,"applyManualLayout: view ids do not match"),He(e._stage==="layouted","applyManualLayout: expected layouted view"),He(r._stage==="layouted","applyManualLayout: expected layouted snapshot"),He(e._layout!=="manual","applyManualLayout: expected auto-layouted view");const n=new Set;e._type!==r._type&&n.add("type-changed");const o=new Map(e.nodes.map(u=>[u.id,u])),a=new Map(e.edges.map(u=>[u.id,u])),i=pke(r.nodes,o,n),l=hke(r.edges,a,n),s=lke(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,[k8]:"manual",...s&&s.length>0?{notation:{nodes:s}}:{},nodes:i,edges:l});C4e(e)&&c._type==="dynamic"&&(c.variant=e.variant);const d=[...n];return Ll(d,1)?c.drifts=d:"drifts"in c&&delete c.drifts,c}function pke(e,r,n){const o=e.map(a=>{const i=r.get(a.id);return i&&r.delete(i.id),Yh(a,l=>{if(!i){l.drifts=["removed"],n.add("nodes-removed");return}ske(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+px>=i.width&&l.height+px>=i.height;wo(l.shape,i.shape)&&(u?l.shape=i.shape:s.add("shape-changed")),cke(l,i,u&&d===c)||s.add("label-changed"),(c?uke:dke)(l,i,u)||s.add("label-changed"),wo(a.notation,i.notation)&&(l.notation=i.notation??null),c&&d&&D4e(new Set(a.children),new Set(i.children)).size>0&&s.add("children-changed");const f=[...s];Ll(f,1)?(n.add("nodes-drift"),l.drifts=f):delete l.drifts})});return r.size>0&&n.add("nodes-added"),o}function hke(e,r,n){const o=e.map(a=>{let i=r.get(a.id)??Ps(r.values(),Is(l=>l.source===a.source&&l.target===a.target),m1());return i&&r.delete(i.id),Yh(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=yO(a,["label","description","technology","labelBBox"]),u=yO(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+px)*(a.labelBBox.height+px)&&(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=U8(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];Ll(p,1)?(n.add("edges-drift"),l.drifts=p):delete l.drifts})});return r.size>0&&n.add("edges-added"),o}function fke(e,r){const{drifts:n,...o}=PO(e,r);if(n){const 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),Yh(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)??Ps(l.values(),Is(f=>f.source===u.source&&f.target===u.target),m1());return p&&l.delete(p.id),Yh(u,f=>{if(!p){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 Yh(e,u=>{Ll(d,1)?u.drifts=d:delete u.drifts,u.nodes=NO(s),u.edges=NO(c),u[k8]="auto"})}return Yh(e,a=>{delete a.drifts,a[k8]="auto"})}function Fs(e){return e.summary??e.description}function Xh(e){return e.description??e.summary}const w1="@group";function mke(e){return e.kind===w1}function BO(e,r){return He(typeof e=="string"&&e!=""),"@"+e+"."+r}function gke(e){return e.startsWith("@")}function yke(e){if(!e.startsWith("@"))return[null,e];const r=e.indexOf(".");if(r<2)throw new Error("Invalid global FQN");const n=e.slice(1,r),o=e.slice(r+1);return[n,o]}function k1(e){return e.startsWith("step-")}function IO(e){if(!k1(e))throw new Error(`Invalid step edge id: ${e}`);return parseFloat(e.slice(5))}function vke(...e){return io(bke,e)}function bke(e,r){let n={...e};for(let[o,a]of Object.entries(n))r(a,o,e)&&delete n[o];return n}var W8={},OO;function G8(){return OO||(OO=1,(function(e){var r=Math.pow(2,8)-1,n=Math.pow(2,16)-1,o=Math.pow(2,32)-1,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},X8=a,X8}var kke=wke();const HO=Qg(kke);function _1(e){return vke(e,r=>r===void 0)}const _ke=Symbol.for("text"),Ske=Symbol.for("html"),Vs="",UO=new HO(500),WO=new HO(500);class ur{static getOrCreateFromText(r){if(r.trim()===Vs)return ur.EMPTY;let n=WO.get(r);return n||(n=new ur({txt:r}),WO.set(r,n),n)}static getOrCreateFromMarkdown(r){if(r.trim()===Vs)return ur.EMPTY;let n=UO.get(r);return n||(n=new ur({md:r}),UO.set(r,n),n)}static memoize(r,n,o){return 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:Vs})}get text(){return null}get md(){return null}get html(){return null}};$source;isEmpty;nonEmpty;isMarkdown;constructor(r){this.isMarkdown=!1,typeof r=="string"?(this.$source={txt:r},this.isEmpty=r.trim()===Vs):(this.$source=r,this.isEmpty=!0,"md"in r?(this.isEmpty=r.md===Vs,this.isMarkdown=!0):this.isEmpty=r.txt===Vs),this.nonEmpty=!this.isEmpty}get text(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;return"txt"in r?r.txt:ir(this,_ke,()=>c4e(r.md))}get md(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;if("md"in r)return r.md;if("txt"in r)return r.txt;Qo(r)}get html(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;return"txt"in r?r.txt:ir(this,Ske,()=>s4e(r.md))}equals(r){return this===r?!0:r instanceof ur?this.isEmpty&&r.isEmpty?!0:this.isEmpty!==r.isEmpty||this.isMarkdown!==r.isMarkdown?!1:this.isMarkdown?this.$source?.md===r.$source?.md:this.$source?.txt===r.$source?.txt:!1}}var S1;(e=>{function r(c){return"model"in c&&!("project"in c)}e.isElementRef=r;function n(c){return"project"in c&&"model"in c}e.isImportRef=n;function o(c){if(Qc(c))throw new Error(`Expected FqnRef, got: "${c}"`);if(n(c))return BO(c.project,c.model);if(r(c))return c.model;throw new Error("Expected FqnRef.ModelRef or FqnRef.ImportRef")}e.flatten=o;function 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})(S1||(S1={}));var ko;(e=>{function r({x:u,y:p,width:f,height:g}){return{x:u+f/2,y:p+g/2}}e.center=r;function n({x:u,y:p,width:f,height:g}){return[{x:u,y:p},{x:u+f,y:p},{x:u+f,y:p+g},{x:u,y:p+g}]}e.toPoints=n;function o(u){const{x1:p,y1:f,x2:g,y2:v}=Z8.fromPoints(u);return{x:p,y:f,width:g-p,height:v-f}}e.fromPoints=o;function a(...u){if(He(Ll(u,1),"No boxes provided"),u.length===1)return u[0];let p=u[0].x,f=u[0].y,g=u[0].x+u[0].width,v=u[0].y+u[0].height;for(let w=1;w=p.x+p.width&&u.y+u.height>=p.y+p.height}e.includes=d})(ko||(ko={}));var Z8;(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})(Z8||(Z8={}));class ka{constructor(r,n){this.x=r,this.y=n}static create(...r){return r.length===2?new ka(r[0],r[1]):new ka(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 ka(this.x+r.x,this.y+r.y)}subtract(r){return new ka(this.x-r.x,this.y-r.y)}multiply(r){return new ka(this.x*r,this.y*r)}divide(r){return new ka(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 ka(0,0):new ka(this.x/r,this.y/r)}round(){return new ka(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 ka?e[0]:e.length===2?new ka(e[0],e[1]):new ka(e[0].x,e[0].y)}function K8(e){return k1(e)&&e.includes(".")?e.slice(0,e.indexOf(".")+1):null}function GO(e){const r=typeof e=="string"?e:e.color;return r.startsWith("#")||r.startsWith("rgb")}function Q8(...e){return io(Eke,e)}function Eke(e,r){let n=[...e];return n.sort(r),n}const Cke=["tomato","grass","blue","ruby","orange","indigo","pink","teal","purple","amber","crimson","red","lime","yellow","violet"];function $ke(e,r,n){let o=e.get(r);return o||(o=n(r),e.set(r,o)),o}function Rke(e){let r=5381;const n=e.length;He(n>0,"stringHash: empty string");for(let o=0;o>>0).toString(36)}function E1(e,r){const n=r??e;He(Qb(n));function o(a){for(const i of a)if(n(i))return i}return r?o(e):o}function zke(e,r){const n=e;He(Qb(n));function*o(a){for(const i of a)yield n(i)}return o}function C1(e){return e?Array.from(e):r=>Array.from(r)}function Tke(e){return e?new Set(e):r=>new Set(r)}function YO(e,r){const n=r??e;He(Qb(n));function o(a){for(const i of a)if(n(i))return!0;return!1}return r?o(e):o}function jke(e,r){const n=e;He(n>=0,"Count must be a non-negative number");function*o(a){let i=0;for(const l of a){if(i>=n)break;yield l,i++}}return a=>o(a)}function Ake(e,r){let n=Math.ceil(e),o=Math.floor(r);if(o{setTimeout(()=>{n(Dke)},r??100)})}function hx(e){const r=Jc([...e]),n=new Set(r),o=new Map(r.map(l=>[l._literalId,l])),a=new Ln(()=>null),i=r.reduce((l,s,c,d)=>(l.set(s,d.slice(c+1).filter(tB(s)).map(u=>(n.delete(u),u)).reduce((u,p)=>(u.some(Yn(p))||(u.push(p),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 J8=(e,r)=>e.size>2&&r.size!==e.size?new Set(Jc([...hx(e).flatten(),...r])):e.size>1?new Set(Jc([...e])):e;function ZO(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:J8(l,i.incomers),incoming:new Set(n.incoming),subjects:J8(a,i.subjects),outgoing:new Set(n.outgoing),outgoers:J8(s,i.outgoers)}}function KO(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"'),Mke(e,a,r);const i=r.element(e),l=Tke(i.ascendingSiblings());return ZO(i,l,{incoming:[...i.incoming()],outgoing:[...i.outgoing()]})}function Mke(e,r,n){const o=n.element(e);let a={incoming:C1(Is(o.incoming(),s=>r.includesRelation(s.id))),outgoing:C1(Is(o.outgoing(),s=>r.includesRelation(s.id)))};const i=tB(o),l=new Set([...o.ascendingSiblings(),...Ps(r.elements(),zke(s=>s.element),Is(s=>s!==o&&i(s)))]);return ZO(o,l,a)}var QO;(e=>{e.isInside=r=>n=>Yn(r,n.source.id)&&Yn(r,n.target.id),e.isDirectedBetween=(r,n)=>o=>(o.source.id===r||Yn(r,o.source.id))&&(o.target.id===n||Yn(n,o.target.id)),e.isAnyBetween=(r,n)=>{const o=(0,e.isDirectedBetween)(r,n),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)}})(QO||(QO={}));const Nke=Symbol.for("nodejs.util.inspect.custom");function $1(e){return e===""||e===void 0?!0:Array.isArray(e)?e.length===0:Object.keys(e).length===0}function e7(...e){return io(Pke,e)}function Pke(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||!e||typeof r!="object"||!r)return!1;if(e instanceof Map&&r instanceof Map)return Bke(e,r);if(e instanceof Set&&r instanceof Set)return Ike(e,r);let n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(let o of n){if(!Object.hasOwn(r,o))return!1;let{[o]:a}=e,{[o]:i}=r;if(a!==i||!Object.is(a,i))return!1}return!0}function Bke(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 Ike(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}class JO{Aux;get style(){return ir(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.$node.style}))}get name(){return Jg(this.id)}get shape(){return this.style.shape}get color(){return this.style.color}get icon(){return this.style.icon??null}get summary(){return ur.memoize(this,"summary",Fs(this.$node))}get description(){return ur.memoize(this,"description",Xh(this.$node))}get technology(){return this.$node.technology??null}get links(){return this.$node.links??[]}ancestors(){return this.$model.ancestors(this)}commonAncestor(r){const n=t1(this.id,r.id);return n?this.$model.node(n):null}siblings(){return this.$model.siblings(this)}isSibling(r){return this.parent===r.parent}*ascendingSiblings(){yield*this.siblings();for(const r of this.ancestors())yield*r.siblings()}*descendingSiblings(){for(const r of[...this.ancestors()].reverse())yield*r.siblings();yield*this.siblings()}incoming(r="all"){return this.$model.incoming(this,r)}outgoing(r="all"){return this.$model.outgoing(this,r)}*incomers(r="all"){const n=new Set;for(const o of this.incoming(r))n.has(o.source.id)||(n.add(o.source.id),yield o.source)}*outgoers(r="all"){const n=new Set;for(const o of this.outgoing(r))n.has(o.target.id)||(n.add(o.target.id),yield o.target)}*views(){for(const r of this.$model.views())r._type==="deployment"&&r.includesDeployment(this.id)&&(yield r)}isDeploymentNode(){return!1}isInstance(){return!1}get allOutgoing(){return ir(this,Symbol.for("allOutgoing"),()=>od.from(new Set(this.outgoingModelRelationships()),new Set(this.outgoing())))}get allIncoming(){return ir(this,Symbol.for("allIncoming"),()=>od.from(new Set(this.incomingModelRelationships()),new Set(this.incoming())))}hasMetadata(){return!!this.$node.metadata&&!$1(this.$node.metadata)}getMetadata(r){return r?this.$node.metadata?.[r]:this.$node.metadata??{}}isTagged(r){return this.tags.includes(r)}}class eL extends JO{constructor(r,n){super(),this.$model=r,this.$node=n,this.id=n.id,this._literalId=n.id,this.title=n.title,this.hierarchyLevel=Tb(n.id)}id;_literalId;title;hierarchyLevel;get parent(){return this.$model.parent(this)}get kind(){return this.$node.kind}get tags(){return ir(this,Symbol.for("tags"),()=>Kb([...this.$node.tags??[],...this.$model.$model.specification.deployments[this.kind]?.tags??[]]))}children(){return this.$model.children(this)}descendants(r="desc"){return this.$model.descendants(this,r)}isDeploymentNode(){return!0}*instances(){for(const r of this.descendants("desc"))r.isInstance()&&(yield r)}onlyOneInstance(){const r=this.children();if(r.size!==1)return null;const n=m1(r);return n?n.isInstance()?n:n.onlyOneInstance():null}_relationshipsFromInstances=null;relationshipsFromInstances(){if(this._relationshipsFromInstances)return this._relationshipsFromInstances;const{outgoing:r,incoming:n}=this._relationshipsFromInstances={outgoing:new Set,incoming:new Set};for(const o of this.instances()){for(const 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 Hh(n,r)}}class tL extends JO{constructor(r,n,o){super(),this.$model=r,this.$instance=n,this.element=o,this.id=n.id,this._literalId=n.id,this.title=n.title??o.title,this.hierarchyLevel=Tb(n.id)}id;_literalId;title;hierarchyLevel;get $node(){return this.$instance}get parent(){return mt(this.$model.parent(this),`Parent of ${this.id} not found`)}get style(){return ir(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.element.$element.style,...this.$instance.style}))}get tags(){return ir(this,Symbol.for("tags"),()=>Kb([...this.$instance.tags??[],...this.element.tags]))}get kind(){return this.element.kind}get summary(){return ur.memoize(this,"summary",Fs(this.$instance)??Fs(this.element.$element))}get description(){return ur.memoize(this,"description",Xh(this.$instance)??Xh(this.element.$element))}get technology(){return this.$instance.technology??this.element.technology??null}get links(){return this.$instance.links??this.element.links}isInstance(){return!0}outgoingModelRelationships(){return this.element.outgoing()}incomingModelRelationships(){return this.element.incoming()}*views(){for(const r of this.$model.views())if(r._type==="deployment"){if(r.includesDeployment(this.id)){yield r;continue}r.includesDeployment(this.parent.id)&&this.parent.onlyOneInstance()&&(yield r)}}}class Oke{constructor(r,n){this.instance=r,this.element=n}get id(){return this.instance.id}get _literalId(){return this.instance.id}get style(){return 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 Lke{constructor(r,n){this.$model=r,this.$relationship=n,this.source=r.deploymentRef(n.source),this.target=r.deploymentRef(n.target);const o=t1(this.source.id,this.target.id);this.boundary=o?this.$model.node(o):null}boundary;source;target;get id(){return this.$relationship.id}get expression(){return`${this.source.id} -> ${this.target.id}`}get title(){return Ja(this.$relationship.title)?this.$relationship.title:null}get technology(){return this.$relationship.technology??null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!e7(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$relationship))}get description(){return ur.memoize(this,"description",Xh(this.$relationship))}get tags(){return this.$relationship.tags??[]}get kind(){return this.$relationship.kind??null}get navigateTo(){return this.$relationship.navigateTo?this.$model.$model.view(this.$relationship.navigateTo):null}get links(){return this.$relationship.links??[]}get color(){return this.$relationship.color??this.$model.$styles.defaults.relationship.color}get line(){return this.$relationship.line??this.$model.$styles.defaults.relationship.line}get head(){return this.$relationship.head??this.$model.$styles.defaults.relationship.arrow}get tail(){return this.$relationship.tail}*views(){for(const r of this.$model.views())r.includesRelation(this.id)&&(yield r)}isDeploymentRelation(){return!0}isModelRelation(){return!1}hasMetadata(){return!!this.$relationship.metadata&&!$1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class od{constructor(r=new Set,n=new Set){this.model=r,this.deployment=n}static empty(){return new od}static from(r,n){return new od(new Set(r),new Set(n))}get isEmpty(){return this.model.size===0&&this.deployment.size===0}get nonEmpty(){return this.model.size>0||this.deployment.size>0}get size(){return this.model.size+this.deployment.size}intersect(r){return od.from(Hh(this.model,r.model),Hh(this.deployment,r.deployment))}difference(r){return od.from(E8(this.model,r.model),E8(this.deployment,r.deployment))}union(r){return od.from(S8(this.model,r.model),S8(this.deployment,r.deployment))}}function rL(e,r){return n=>e.source===n.source&&e.target===n.target}function t7(e,r,n="directed"){if(e===r)return[];if(eB(e,r))return[];const o=Hh(e.allOutgoing,r.allIncoming),a=o.size>0?new ei(e,r,o):null;if(n==="directed")return a?[a]:[];const i=Hh(e.allIncoming,r.allOutgoing),l=i.size>0?new ei(r,e,i):null;return a&&l?[a,l]:a?[a]:l?[l]:[]}function nL(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 t7(e,i,n))l.source===e?o.push(l):a.push(l);return[...o,...a]}function Fke(e){return[...e].reduce((r,n,o,a)=>(o===a.length-1||r.push(...nL(n,a.slice(o+1),"both")),r),[])}const Vke={__proto__:null,findConnection:t7,findConnectionsBetween:nL,findConnectionsWithin:Fke};class ei{constructor(r,n,o=new Set){this.source=r,this.target=n,this.relations=o,this.id=Rke(`model:${r.id}:${n.id}`)}id;_boundary;get boundary(){return this._boundary??=this.source.commonAncestor(this.target)}get expression(){return`${this.source.id} -> ${this.target.id}`}get isDirect(){return this.nonEmpty()&&!this.isImplicit}get isImplicit(){return this.nonEmpty()&&YO(this.relations,sO(rL(this)))}get directRelations(){return new Set(Is(this.relations,rL(this)))}nonEmpty(){return this.relations.size>0}mergeWith(r){return He(this.source.id===r.source.id,"Cannot merge connections with different sources"),He(this.target.id===r.target.id,"Cannot merge connections with different targets"),new ei(this.source,this.target,S8(this.relations,r.relations))}difference(r){return new ei(this.source,this.target,E8(this.relations,r.relations))}intersect(r){return He(r instanceof ei,"Cannot intersect connection with different type"),new ei(this.source,this.target,Hh(this.relations,r.relations))}equals(r){He(r instanceof ei,"Cannot merge connection with different type");const n=r;return this.id===n.id&&this.source.id===n.source.id&&this.target.id===n.target.id&&A4e(this.relations,n.relations)}update(r){return new ei(this.source,this.target,r)}[Nke](r,n,o){const a=this.toString();return Object.defineProperty(a,"constructor",{value:ei,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 ei(this.target,this.source);const[n]=t7(this.target,this.source,"directed");return n??new ei(this.target,this.source,new Set)}}function qke(e){if(e==null||e==="")return!0;if(typeof e!="object")return!1;if("length"in e&&typeof e.length=="number")return e.length===0;if("size"in e&&typeof e.size=="number")return e.size===0;for(let r in e)return!1;return Object.getOwnPropertySymbols(e).length===0}function Hke(...e){return io(Uke,e)}const Uke=e=>e.at(-1);function oL(e,r,n){return typeof r=="number"||r===void 0?o=>o.split(e,r):e.split(r,n)}function fx(...e){return io(Object.values,e)}class mx{constructor(r,n){this.$model=r,this.$element=n,this.id=this.$element.id,this._literalId=this.$element.id;const[o,a]=yke(this.id);o?(this.imported={from:o,fqn:a},this.hierarchyLevel=Tb(a)):(this.imported=null,this.hierarchyLevel=Tb(this.id))}Aux;id;_literalId;hierarchyLevel;imported;get name(){return Jg(this.id)}get parent(){return this.$model.parent(this)}get kind(){return this.$element.kind}get shape(){return this.style.shape}get color(){return this.style.color}get icon(){return this.style.icon??null}get tags(){return ir(this,Symbol.for("tags"),()=>Kb([...this.$element.tags??[],...this.$model.specification.elements[this.$element.kind]?.tags??[]]))}get title(){return this.$element.title}get hasSummary(){return!!this.$element.summary&&!!this.$element.description&&!e7(this.$element.summary,this.$element.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$element))}get description(){return ur.memoize(this,"description",Xh(this.$element))}get technology(){return this.$element.technology??null}get links(){return this.$element.links??[]}get defaultView(){return ir(this,Symbol.for("defaultView"),()=>m1(this.scopedViews())??null)}get isRoot(){return this.parent===null}get style(){return ir(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.$element.style}))}isAncestorOf(r){return Yn(this,r)}isDescendantOf(r){return Yn(r,this)}ancestors(){return this.$model.ancestors(this)}commonAncestor(r){const n=t1(this.id,r.id);return n?this.$model.element(n):null}children(){return this.$model.children(this)}descendants(r){return r?rB([...this.$model.descendants(this)],r)[Symbol.iterator]():this.$model.descendants(this)}siblings(){return this.$model.siblings(this)}*ascendingSiblings(){yield*this.siblings();for(const r of this.ancestors())yield*r.siblings()}*descendingSiblings(){for(const r of[...this.ancestors()].reverse())yield*r.siblings();yield*this.siblings()}incoming(r="all"){return this.$model.incoming(this,r)}*incomers(r="all"){const n=new Set;for(const o of this.incoming(r))n.has(o.source.id)||(n.add(o.source.id),yield o.source)}outgoing(r="all"){return this.$model.outgoing(this,r)}*outgoers(r="all"){const n=new Set;for(const o of this.outgoing(r))n.has(o.target.id)||(n.add(o.target.id),yield o.target)}get allOutgoing(){return 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 Ja(m1(this.deployments()))}deployments(){return this.$model.deployment.instancesOf(this)}hasMetadata(){return!!this.$element.metadata&&!$1(this.$element.metadata)}getMetadata(r){return r?this.$element.metadata?.[r]:this.$element.metadata??{}}isTagged(r){return this.tags.includes(r)}}const yr=e=>typeof e=="string"?e:e.id,_a="/",r7=e=>{if(He(!e.includes(` -`),"View title cannot contain newlines"),e.includes(_a)){const r=e.split(_a).map(n=>n.trim()).filter(n=>n.length>0);return Ll(r,1)?r:[""]}return[e.trim()]},gx=e=>r7(e).join(_a),Wke=e=>{const r=r7(e);return Ll(r,2)?r.slice(0,-1).join(_a):null},n7=e=>e.includes(_a)?r7(e).pop()??e:e.trim();class Gke{constructor(r){this.$model=r;const n=this.$deployments=r.$data.deployments,o=fx(n.elements);for(const a of Jc(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 fx(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 eL||r instanceof tL)return r;const n=yr(r);return mt(this.#e.get(n),`Element ${n} not found`)}findElement(r){return this.#e.get(r)??null}node(r){const n=this.element(r);return He(n.isDeploymentNode(),`Element ${n.id} is not a deployment node`),n}findNode(r){const n=this.findElement(r);return n?(He(n.isDeploymentNode(),`Element ${n?.id} is not a deployment node`),n):null}instance(r){const n=this.element(r);return He(n.isInstance(),`Element ${n.id} is not a deployed instance`),n}findInstance(r){const n=this.findElement(r);return n?(He(n.isInstance(),`Element ${n?.id} is not a deployed instance`),n):null}roots(){return this.#l.values()}elements(){return this.#e.values()}*nodes(){for(const r of this.#e.values())r.isDeploymentNode()&&(yield r)}*nodesOfKind(r){for(const n of this.#e.values())n.isDeploymentNode()&&n.kind===r&&(yield n)}*instances(){for(const r of this.#e.values())r.isInstance()&&(yield r)}*instancesOf(r){const n=yr(r),o=this.#r.get(n);o&&(yield*o)}deploymentRef(r){if(S1.isInsideInstanceRef(r)){const{deployment:n,element:o}=r;return $ke(this.#d,`${n}@${o}`,()=>new Oke(this.instance(n),this.$model.element(o)))}return this.element(r.deployment)}relationships(){return this.#n.values()}relationship(r){const n=yr(r);return mt(this.#n.get(n),`DeploymentRelationModel ${n} not found`)}findRelationship(r){return this.#n.get(r)??null}*views(){for(const r of this.$model.views())r.isDeploymentView()&&(yield r)}parent(r){const n=yr(r);return this.#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=v4e(r)?new eL(this,Object.freeze(r)):new tL(this,Object.freeze(r),this.$model.element(r.element));this.#e.set(n.id,n);const o=Rb(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 Lke(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,...Du(o)])this.#o.get(a).add(n);for(const a of Du(n.source.id)){if(a===o)break;this.#a.get(a).add(n)}for(const a of Du(n.target.id)){if(a===o)break;this.#s.get(a).add(n)}return n}}class aL{constructor(r,n){this.model=r,this.$relationship=n,this.source=r.element(S1.flatten(n.source)),this.target=r.element(S1.flatten(n.target));const o=t1(this.source.id,this.target.id);this.boundary=o?this.model.element(o):null}source;target;boundary;get id(){return this.$relationship.id}get expression(){return`${this.source.id} -> ${this.target.id}`}get title(){return Ja(this.$relationship.title)?this.$relationship.title:null}get technology(){return Ja(this.$relationship.technology)?this.$relationship.technology:null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!e7(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$relationship))}get description(){return ur.memoize(this,"description",Xh(this.$relationship))}get navigateTo(){return this.$relationship.navigateTo?this.model.view(this.$relationship.navigateTo):null}get tags(){return this.$relationship.tags??[]}get kind(){return this.$relationship.kind??null}get links(){return this.$relationship.links??[]}get color(){return this.$relationship.color??this.model.$styles.defaults.relationship.color}get line(){return this.$relationship.line??this.model.$styles.defaults.relationship.line}get head(){return this.$relationship.head??this.model.$styles.defaults.relationship.arrow}get tail(){return this.$relationship.tail}*views(){for(const r of this.model.views())r.includesRelation(this.id)&&(yield r)}isDeploymentRelation(){return!1}isModelRelation(){return!0}hasMetadata(){return!!this.$relationship.metadata&&!$1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class Yke{constructor(r,n,o,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()?IO(this.id):null}get navigateTo(){return this.$edge.navigateTo?this.$viewModel.$model.view(this.$edge.navigateTo):null}get color(){return this.$edge.color}get line(){return this.$edge.line??this.$viewModel.$styles.defaults.relationship.line}get head(){return this.$edge.head??this.$viewModel.$styles.defaults.relationship.arrow}get tail(){return this.$edge.tail}isStep(){return k1(this.id)}*relationships(r){for(const n of this.$edge.relations)if(r){const o=this.$viewModel.$model.findRelationship(n,r);o&&(yield o)}else yield this.$viewModel.$model.relationship(n)}includesRelation(r){const n=typeof r=="string"?r:r.id;return this.$edge.relations.includes(n)}isTagged(r){return this.tags.includes(r)}}class Xke{Aux;$viewModel;$view;$node;constructor(r,n){this.$viewModel=r,this.$view=r.$view,this.$node=n}get id(){return this.$node.id}get title(){return this.$node.title}get kind(){return this.$node.kind}get description(){return ur.memoize(this,"description",this.$node.description)}get technology(){return this.$node.technology??null}get parent(){return this.$node.parent?this.$viewModel.node(this.$node.parent):null}get element(){const r=this.$node.modelRef;return r?this.$viewModel.$model.element(r):null}get deployment(){const r=this.$node.deploymentRef;return r?this.$viewModel.$model.deployment.element(r):null}get shape(){return this.$node.shape}get color(){return this.$node.color}get icon(){return this.$node.icon??null}get tags(){return this.$node.tags}get links(){return this.$node.links??[]}get navigateTo(){return this.$node.navigateTo?this.$viewModel.$model.view(this.$node.navigateTo):null}get style(){return this.$node.style}get x(){return"x"in this.$node?this.$node.x:void 0}get y(){return"y"in this.$node?this.$node.y:void 0}get width(){return"width"in this.$node?this.$node.width:void 0}get height(){return"height"in this.$node?this.$node.height:void 0}children(){return 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 Ja(this.$node.modelRef)}hasDeployment(){return Ja(this.$node.deploymentRef)}hasDeployedInstance(){return this.hasElement()&&this.hasDeployment()}isGroup(){return mke(this.$node)}isTagged(r){return this.tags.includes(r)}}class o7{Aux;#e;#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 Xke(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 Yke(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?n7(o.title):null,this.viewPath=o.title?gx(o.title):o.id}get $styles(){return this.$model.$styles}get _type(){return this.#e[h1]}get stage(){return this.#e[Iu]}get bounds(){if("bounds"in this.#e)return this.#e.bounds;if(this.#o)return this.#o.bounds;throw new Error("View is not layouted")}get titleOrId(){return this.title??this.viewOf?.title??this.id}get titleOrUntitled(){return this.title??"Untitled"}get breadcrumbs(){return 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",()=>fke(this.#e,r)):this.#e}get $layouted(){if(!this.isLayouted())throw new Error("View is not layouted");return this.$manual??this.#e}get hasManualLayout(){return this.#o!==void 0}get hasLayoutDrifts(){if(!this.isLayouted())return!1;const r=this.$manual;return!!r?.drifts&&r.drifts.length>0}get $manual(){if(!this.isLayouted())return null;const r=this.#o;return r?ir(this,"snapshotWithManualLayout",()=>PO(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)?E1(this.#t.values(),o=>o.hasElement()&&o.element.id===n)??null:null}nodes(){return this.#t.values()}edge(r){const n=yr(r);return mt(this.#r.get(n),`Edge ${n} not found in view ${this.#e.id}`)}findEdge(r){return this.#r.get(yr(r))??null}edges(){return this.#r.values()}*edgesWithRelation(r){for(const n of this.#r.values())n.includesRelation(r)&&(yield n)}*elements(){for(const r of this.#t.values())r.hasElement()&&(yield r)}isTagged(r){return this.tags.includes(r)}includesElement(r){return this.#l.has(yr(r))}includesDeployment(r){return this.#n.has(yr(r))}includesRelation(r){return this.#s.has(yr(r))}isComputed(){return this.#e[Iu]==="computed"}isLayouted(){return this.#e[Iu]==="layouted"}isDiagram(){return this.#e[Iu]==="layouted"}isElementView(){return this.#e[h1]==="element"}isScopedElementView(){return this.#e[h1]==="element"&&Ja(this.#e.viewOf)}isDeploymentView(){return this.#e[h1]==="deployment"}isDynamicView(){return this.#e[h1]==="dynamic"}}class yx{$model;path;title;isRoot;parentPath;defaultViewId;constructor(r,n,o){this.$model=r,this.path=n.join("/"),this.isRoot=this.path==="",this.title=Hke(n),this.isRoot?this.parentPath=void 0:this.parentPath=n.slice(0,-1).join("/"),this.defaultViewId=o}get defaultView(){return this.defaultViewId?this.$model.view(this.defaultViewId):null}get breadcrumbs(){return He(!this.isRoot,"Root view folder has no breadcrumbs"),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"),qke(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 yx&&r.push(n);return r})}get views(){return ir(this,"views",()=>{const r=[];for(const n of this.children)n instanceof o7&&r.push(n);return r})}}class Fu{Aux;_elements=new Map;_parents=new Map;_children=new Ln(()=>new Set);_rootElements=new Set;_relations=new Map;_incoming=new Ln(()=>new Set);_outgoing=new Ln(()=>new Set);_internal=new Ln(()=>new Set);_views=new Map;_rootViewFolder;_viewFolders=new Map;_viewFolderItems=new Ln(()=>new Set);_allTags=new Ln(()=>new Set);static fromParsed(r){return new Fu(r)}static create(r){return new Fu(r)}static fromDump(r){const{_stage:n="layouted",projectId:o="unknown",project:a,globals:i,imports:l,deployments:s,views:c,relations:d,elements:u,specification:p}=r;return new Fu({[Iu]: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 f1(r.elements)){const o=this.addElement(n);for(const a of o.tags)this._allTags.get(a).add(o)}for(const[n,o]of f1(r.imports??{}))for(const a of Jc(o)){const i=this.addImportedElement(n,a);for(const l of i.tags)this._allTags.get(l).add(i)}for(const n of fx(r.relations)){const o=this.addRelation(n);for(const a of o.tags)this._allTags.get(a).add(o)}if(this.deployment=new Gke(this),cO(r,"computed")||cO(r,"layouted")){const n=JP(_a),o=Ps(fx(r.views),Zb(i=>({view:i,path:gx(i.title??i.id),folderPath:i.title&&Wke(i.title)||""})),Q8((i,l)=>n(i.folderPath,l.folderPath))),a=i=>{let l=this._viewFolders.get(i);if(!l){const s=oL(i,_a);He(Ll(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 yx(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)||oL(i,_a).reduce((l,s)=>{const c=l.join(_a),d=$1(c)?s:c+_a+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 o7(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 yx(this,[""],void 0),this._viewFolders.set(this._rootViewFolder.path,this._rootViewFolder)}get asParsed(){return this}get asComputed(){return this}get asLayouted(){return this}get $styles(){return ir(this,"styles",()=>XP.from(this.$data.project.styles,this.$data.specification.customColors?{theme:{colors:this.$data.specification.customColors}}:void 0))}isParsed(){return this.stage==="parsed"}isLayouted(){return this.stage==="layouted"}isComputed(){return this.stage==="computed"}get $model(){return this.$data}get stage(){return this.$data[Iu]}get projectId(){return this.$data.projectId??"default"}get project(){return this.$data.project??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 mx)return r;const n=yr(r);return mt(this._elements.get(n),`Element ${n} not found`)}findElement(r){return this._elements.get(yr(r))??null}roots(){return this._rootElements.values()}elements(){return this._elements.values()}relationships(){return this._relations.values()}relationship(r,n){if(n==="deployment")return this.deployment.relationship(r);const o=yr(r);let 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",()=>Q8([...this._allTags.keys()],zb))}get tagsSortedByUsage(){return ir(this,"tagsSortedByUsage",()=>Ps([...this._allTags.entries()],Zb(([r,n])=>({tag:r,count:n.size,tagged:n})),Q8((r,n)=>zb(r.tag,n.tag)),vO([Lu("count"),"desc"])))}findByTag(r,n){return Is(this._allTags.get(r),o=>n==="elements"?o instanceof mx:n==="views"?o instanceof o7:n==="relationships"?o instanceof aL:!0)}*elementsOfKind(r){for(const n of this._elements.values())n.kind===r&&(yield n)}*elementsWhere(r){const n=Ou(r);for(const o of this._elements.values())n(o)&&(yield o)}*relationshipsWhere(r){const n=Ou(r);for(const o of this._relations.values())n(o)&&(yield o)}addElement(r){if(this._elements.has(r.id))throw new Error(`Element ${r.id} already exists`);const n=new mx(this,Object.freeze(r));this._elements.set(n.id,n);const o=Rb(n.id);return o?(He(this._elements.has(o),`Parent ${o} of ${n.id} not found`),this._parents.set(n.id,this.element(o)),this._children.get(o).add(n)):this._rootElements.add(n),n}addImportedElement(r,n){He(!gke(n.id),"Imported element already has global FQN");const o=BO(r,n.id);if(this._elements.has(o))throw new Error(`Element ${o} already exists`);const a=new mx(this,Object.freeze({...n,id:o}));this._elements.set(a.id,a);let i=Rb(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=Rb(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 aL(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=t1(o.id,a.id);if(i)for(const l of[i,...Du(i)])this._internal.get(l).add(n);for(const l of Du(o.id)){if(l===i)break;this._outgoing.get(l).add(n)}for(const l of Du(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:{}})})(Fu||(Fu={}));function vx(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var Zke=e=>typeof e=="object"&&e!==null;function Vu(e){return Object.fromEntries(Object.entries(e??{}).filter(([r,n])=>n!==void 0))}var Kke=e=>e==="base";function Qke(e){return e.slice().filter(r=>!Kke(r))}function iL(e){return String.fromCharCode(e+(e>25?39:97))}function Jke(e){let r="",n;for(n=Math.abs(e);n>52;n=n/52|0)r=iL(n%52)+r;return iL(n%52)+r}function e5e(e,r){let n=r.length;for(;n;)e=e*33^r.charCodeAt(--n);return e}function t5e(e){return Jke(e5e(5381,e)>>>0)}var lL=/\s*!(important)?/i;function r5e(e){return typeof e=="string"?lL.test(e):!1}function n5e(e){return typeof e=="string"?e.replace(lL,"").trim():e}function a7(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}},o5e=new Set(["__proto__","constructor","prototype"]);function i7(...e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{if(o5e.has(o))return;const a=r[o],i=n[o];vx(a)&&vx(i)?r[o]=i7(a,i):r[o]=i}),r),{})}var a5e=e=>e!=null;function l7(e,r,n={}){const{stop:o,getKey:a}=n;function i(l,s=[]){if(Zke(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);a5e(g)&&(c[p]=g)}return c}return r(l,s)}return i(e)}function i5e(e,r){return Array.isArray(e)?e.map(n=>r(n)):vx(e)?l7(e,n=>r(n)):r(e)}function l5e(e,r){return e.reduce((n,o,a)=>{const i=r[a];return o!=null&&(n[i]=o),n},{})}function sL(e,r,n=!0){const{utility:o,conditions:a}=r,{hasShorthand:i,resolveShorthand:l}=o;return l7(e,s=>Array.isArray(s)?l5e(s,a.breakpoints.keys):s,{stop:s=>Array.isArray(s),getKey:n?s=>i?l(s):s:void 0})}var s5e={shift:e=>e,finalize:e=>e,breakpoints:{keys:[]}},c5e=e=>typeof e=="string"?e.replaceAll(/[\n\s]+/g," "):e;function cL(e){const{utility:r,hash:n,conditions:o=s5e}=e,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,t5e))}else c=[...o.finalize(l),a(s)].join(":");return c};return Zn(({base:l,...s}={})=>{const c=Object.assign(s,l),d=sL(c,e),u=new Set;return l7(d,(p,f)=>{if(p==null)return;const g=r5e(p),[v,...w]=o.shift(f),x=Qke(w),k=r.transform(v,n5e(c5e(p)));let C=i(x,k.className);g&&(C=`${C}!`),u.add(C)}),Array.from(u).join(" ")})}function d5e(...e){return e.flat().filter(r=>vx(r)&&Object.keys(Vu(r)).length>0)}function u5e(e){function r(a){const i=d5e(...a);return i.length===1?i:i.map(l=>sL(l,e))}function n(...a){return i7(...r(a))}function o(...a){return Object.assign({},...r(a))}return{mergeCss:Zn(n),assignCss:o}}var p5e=/([A-Z])/g,h5e=/^ms-/,f5e=Zn(e=>e.startsWith("--")?e:e.replace(p5e,"-$1").replace(h5e,"-ms-").toLowerCase()),m5e=["min","max","clamp","calc"],g5e=new RegExp(`^(${m5e.join("|")})\\(.*\\)`),y5e=e=>typeof e=="string"&&g5e.test(e),v5e="cm,mm,Q,in,pc,pt,px,em,ex,ch,rem,lh,rlh,vw,vh,vmin,vmax,vb,vi,svw,svh,lvw,lvh,dvw,dvh,cqw,cqh,cqi,cqb,cqmin,cqmax,%",b5e=`(?:${v5e.split(",").join("|")})`,x5e=new RegExp(`^[+-]?[0-9]*.?[0-9]+(?:[eE][+-]?[0-9]+)?${b5e}$`),w5e=e=>typeof e=="string"&&x5e.test(e),k5e=e=>typeof e=="string"&&/^var\(--.+\)$/.test(e),z1={map:i5e,isCssFunction:y5e,isCssVar:k5e,isCssUnit:w5e},R1=(e,r)=>{if(!e?.defaultValues)return r;const n=typeof e.defaultValues=="function"?e.defaultValues(r):e.defaultValues;return Object.assign({},n,Vu(r))},_5e=(e={})=>{const r=o=>({className:[e.className,o].filter(Boolean).join("__"),base:e.base?.[o]??{},variants:{},defaultVariants:e.defaultVariants??{},compoundVariants:e.compoundVariants?s7(e.compoundVariants,o):[]}),n=(e.slots??[]).map(o=>[o,r(o)]);for(const[o,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)},s7=(e,r)=>e.filter(n=>n.css[r]).map(n=>({...n,css:n.css[r]}));function Fn(e,...r){const n=Object.getOwnPropertyDescriptors(e),o=Object.keys(n),a=l=>{const s={};for(let c=0;ca(Array.isArray(l)?l:o.filter(l));return r.map(i).concat(a(o))}var c7=(...e)=>{const r=e.reduce((n,o)=>(o&&o.forEach(a=>n.add(a)),n),new Set([]));return Array.from(r)},dL=["htmlSize","htmlTranslate","htmlWidth","htmlHeight"];function S5e(e){return dL.includes(e)?e.replace("html","").toLowerCase():e}function d7(e){return Object.fromEntries(Object.entries(e).map(([r,n])=>[S5e(r),n]))}d7.keys=dL;const E5e="_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_complete,_incomplete,_dragging,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_grabbed,_underValue,_overValue,_atValue,_default,_optional,_open,_closed,_fullscreen,_loading,_hidden,_current,_currentPage,_currentStep,_today,_unavailable,_rangeStart,_rangeEnd,_now,_topmost,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_icon,_starting,_noscript,_invertedColors,_shapeSizeXs,_shapeSizeSm,_shapeSizeMd,_shapeSizeLg,_shapeSizeXl,_shapeRectangle,_shapePerson,_shapeBrowser,_shapeMobile,_shapeCylinder,_shapeStorage,_shapeQueue,_notDisabled,_reduceGraphics,_reduceGraphicsOnPan,_noReduceGraphics,_whenPanning,_smallZoom,_compoundTransparent,_edgeActive,_whenHovered,_whenSelectable,_whenSelected,_whenDimmed,_whenFocused,_p3,_srgb,_rec2020,xs,xsOnly,xsDown,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,xsToSm,xsToMd,xsToLg,xsToXl,smToMd,smToLg,smToXl,mdToLg,mdToXl,lgToXl,@/xs,@/sm,@/md,@/lg,@likec4-root/xs,@likec4-root/sm,@likec4-root/md,@likec4-root/lg,@likec4-dialog/xs,@likec4-dialog/sm,@likec4-dialog/md,@likec4-dialog/lg,base",uL=new Set(E5e.split(",")),C5e=/^@|&|&$/;function pL(e){return uL.has(e)||C5e.test(e)}const $5e=/^_/,z5e=/&|@/;function hL(e){return e.map(r=>uL.has(r)?r.replace($5e,""):z5e.test(r)?`[${a7(r.trim())}]`:r)}function fL(e){return e.sort((r,n)=>{const o=pL(r),a=pL(n);return o&&!a?1:!o&&a?-1:0})}const R5e="aspectRatio:asp,boxDecorationBreak:bx-db,zIndex:z,boxSizing:bx-s,objectPosition:obj-p,objectFit:obj-f,overscrollBehavior:ovs-b,overscrollBehaviorX:ovs-bx,overscrollBehaviorY:ovs-by,position:pos/1,top:top,left:left,inset:inset,insetInline:inset-x/insetX,insetBlock:inset-y/insetY,insetBlockEnd:inset-be,insetBlockStart:inset-bs,insetInlineEnd:inset-e/insetEnd/end,insetInlineStart:inset-s/insetStart/start,right:right,bottom:bottom,float:float,visibility:vis,display:d,hideFrom:hide,hideBelow:show,flexBasis:flex-b,flex:flex,flexDirection:flex-d/flexDir,flexGrow:flex-g,flexShrink:flex-sh,gridTemplateColumns:grid-tc,gridTemplateRows:grid-tr,gridColumn:grid-c,gridRow:grid-r,gridColumnStart:grid-cs,gridColumnEnd:grid-ce,gridAutoFlow:grid-af,gridAutoColumns:grid-ac,gridAutoRows:grid-ar,gap:gap,gridGap:grid-g,gridRowGap:grid-rg,gridColumnGap:grid-cg,rowGap:rg,columnGap:cg,justifyContent:jc,alignContent:ac,alignItems:ai,alignSelf:as,padding:p/1,paddingLeft:pl/1,paddingRight:pr/1,paddingTop:pt/1,paddingBottom:pb/1,paddingBlock:py/1/paddingY,paddingBlockEnd:pbe,paddingBlockStart:pbs,paddingInline:px/paddingX/1,paddingInlineEnd:pe/1/paddingEnd,paddingInlineStart:ps/1/paddingStart,marginLeft:ml/1,marginRight:mr/1,marginTop:mt/1,marginBottom:mb/1,margin:m/1,marginBlock:my/1/marginY,marginBlockEnd:mbe,marginBlockStart:mbs,marginInline:mx/1/marginX,marginInlineEnd:me/1/marginEnd,marginInlineStart:ms/1/marginStart,spaceX:sx,spaceY:sy,outlineWidth:ring-w/ringWidth,outlineColor:ring-c/ringColor,outline:ring/1,outlineOffset:ring-o/ringOffset,focusRing:focus-ring,focusVisibleRing:focus-v-ring,focusRingColor:focus-ring-c,focusRingOffset:focus-ring-o,focusRingWidth:focus-ring-w,focusRingStyle:focus-ring-s,divideX:dvd-x,divideY:dvd-y,divideColor:dvd-c,divideStyle:dvd-s,width:w/1,inlineSize:w-is,minWidth:min-w/minW,minInlineSize:min-w-is,maxWidth:max-w/maxW,maxInlineSize:max-w-is,height:h/1,blockSize:h-bs,minHeight:min-h/minH,minBlockSize:min-h-bs,maxHeight:max-h/maxH,maxBlockSize:max-b,boxSize:size,color:c,fontFamily:ff,fontSize:fs,fontSizeAdjust:fs-a,fontPalette:fp,fontKerning:fk,fontFeatureSettings:ff-s,fontWeight:fw,fontSmoothing:fsmt,fontVariant:fv,fontVariantAlternates:fv-alt,fontVariantCaps:fv-caps,fontVariationSettings:fv-s,fontVariantNumeric:fv-num,letterSpacing:ls,lineHeight:lh,textAlign:ta,textDecoration:td,textDecorationColor:td-c,textEmphasisColor:te-c,textDecorationStyle:td-s,textDecorationThickness:td-t,textUnderlineOffset:tu-o,textTransform:tt,textIndent:ti,textShadow:tsh,textShadowColor:tsh-c/textShadowColor,WebkitTextFillColor:wktf-c,textOverflow:tov,verticalAlign:va,wordBreak:wb,textWrap:tw,truncate:trunc,lineClamp:lc,listStyleType:li-t,listStylePosition:li-pos,listStyleImage:li-img,listStyle:li-s,backgroundPosition:bg-p/bgPosition,backgroundPositionX:bg-p-x/bgPositionX,backgroundPositionY:bg-p-y/bgPositionY,backgroundAttachment:bg-a/bgAttachment,backgroundClip:bg-cp/bgClip,background:bg/1,backgroundColor:bg-c/bgColor,backgroundOrigin:bg-o/bgOrigin,backgroundImage:bg-i/bgImage,backgroundRepeat:bg-r/bgRepeat,backgroundBlendMode:bg-bm/bgBlendMode,backgroundSize:bg-s/bgSize,backgroundGradient:bg-grad/bgGradient,backgroundLinear:bg-linear/bgLinear,backgroundRadial:bg-radial/bgRadial,backgroundConic:bg-conic/bgConic,textGradient:txt-grad,gradientFromPosition:grad-from-pos,gradientToPosition:grad-to-pos,gradientFrom:grad-from,gradientTo:grad-to,gradientVia:grad-via,gradientViaPosition:grad-via-pos,borderRadius:bdr/rounded,borderTopLeftRadius:bdr-tl/roundedTopLeft,borderTopRightRadius:bdr-tr/roundedTopRight,borderBottomRightRadius:bdr-br/roundedBottomRight,borderBottomLeftRadius:bdr-bl/roundedBottomLeft,borderTopRadius:bdr-t/roundedTop,borderRightRadius:bdr-r/roundedRight,borderBottomRadius:bdr-b/roundedBottom,borderLeftRadius:bdr-l/roundedLeft,borderStartStartRadius:bdr-ss/roundedStartStart,borderStartEndRadius:bdr-se/roundedStartEnd,borderStartRadius:bdr-s/roundedStart,borderEndStartRadius:bdr-es/roundedEndStart,borderEndEndRadius:bdr-ee/roundedEndEnd,borderEndRadius:bdr-e/roundedEnd,border:bd,borderWidth:bd-w,borderTopWidth:bd-t-w,borderLeftWidth:bd-l-w,borderRightWidth:bd-r-w,borderBottomWidth:bd-b-w,borderBlockStartWidth:bd-bs-w,borderBlockEndWidth:bd-be-w,borderColor:bd-c,borderInline:bd-x/borderX,borderInlineWidth:bd-x-w/borderXWidth,borderInlineColor:bd-x-c/borderXColor,borderBlock:bd-y/borderY,borderBlockWidth:bd-y-w/borderYWidth,borderBlockColor:bd-y-c/borderYColor,borderLeft:bd-l,borderLeftColor:bd-l-c,borderInlineStart:bd-s/borderStart,borderInlineStartWidth:bd-s-w/borderStartWidth,borderInlineStartColor:bd-s-c/borderStartColor,borderRight:bd-r,borderRightColor:bd-r-c,borderInlineEnd:bd-e/borderEnd,borderInlineEndWidth:bd-e-w/borderEndWidth,borderInlineEndColor:bd-e-c/borderEndColor,borderTop:bd-t,borderTopColor:bd-t-c,borderBottom:bd-b,borderBottomColor:bd-b-c,borderBlockEnd:bd-be,borderBlockEndColor:bd-be-c,borderBlockStart:bd-bs,borderBlockStartColor:bd-bs-c,opacity:op,boxShadow:bx-sh/shadow,boxShadowColor:bx-sh-c/shadowColor,mixBlendMode:mix-bm,filter:filter,brightness:brightness,contrast:contrast,grayscale:grayscale,hueRotate:hue-rotate,invert:invert,saturate:saturate,sepia:sepia,dropShadow:drop-shadow,blur:blur,backdropFilter:bkdp,backdropBlur:bkdp-blur,backdropBrightness:bkdp-brightness,backdropContrast:bkdp-contrast,backdropGrayscale:bkdp-grayscale,backdropHueRotate:bkdp-hue-rotate,backdropInvert:bkdp-invert,backdropOpacity:bkdp-opacity,backdropSaturate:bkdp-saturate,backdropSepia:bkdp-sepia,borderCollapse:bd-cl,borderSpacing:bd-sp,borderSpacingX:bd-sx,borderSpacingY:bd-sy,tableLayout:tbl,transitionTimingFunction:trs-tmf,transitionDelay:trs-dly,transitionDuration:trs-dur,transitionProperty:trs-prop,transition:transition,animation:anim,animationName:anim-n,animationTimingFunction:anim-tmf,animationDuration:anim-dur,animationDelay:anim-dly,animationPlayState:anim-ps,animationComposition:anim-comp,animationFillMode:anim-fm,animationDirection:anim-dir,animationIterationCount:anim-ic,animationRange:anim-r,animationState:anim-s,animationRangeStart:anim-rs,animationRangeEnd:anim-re,animationTimeline:anim-tl,transformOrigin:trf-o,transformBox:trf-b,transformStyle:trf-s,transform:trf,rotate:rotate,rotateX:rotate-x,rotateY:rotate-y,rotateZ:rotate-z,scale:scale,scaleX:scale-x,scaleY:scale-y,translate:translate,translateX:translate-x/x,translateY:translate-y/y,translateZ:translate-z/z,accentColor:ac-c,caretColor:ca-c,scrollBehavior:scr-bhv,scrollbar:scr-bar,scrollbarColor:scr-bar-c,scrollbarGutter:scr-bar-g,scrollbarWidth:scr-bar-w,scrollMargin:scr-m,scrollMarginLeft:scr-ml,scrollMarginRight:scr-mr,scrollMarginTop:scr-mt,scrollMarginBottom:scr-mb,scrollMarginBlock:scr-my/scrollMarginY,scrollMarginBlockEnd:scr-mbe,scrollMarginBlockStart:scr-mbt,scrollMarginInline:scr-mx/scrollMarginX,scrollMarginInlineEnd:scr-me,scrollMarginInlineStart:scr-ms,scrollPadding:scr-p,scrollPaddingBlock:scr-py/scrollPaddingY,scrollPaddingBlockStart:scr-pbs,scrollPaddingBlockEnd:scr-pbe,scrollPaddingInline:scr-px/scrollPaddingX,scrollPaddingInlineEnd:scr-pe,scrollPaddingInlineStart:scr-ps,scrollPaddingLeft:scr-pl,scrollPaddingRight:scr-pr,scrollPaddingTop:scr-pt,scrollPaddingBottom:scr-pb,scrollSnapAlign:scr-sa,scrollSnapStop:scrs-s,scrollSnapType:scrs-t,scrollSnapStrictness:scrs-strt,scrollSnapMargin:scrs-m,scrollSnapMarginTop:scrs-mt,scrollSnapMarginBottom:scrs-mb,scrollSnapMarginLeft:scrs-ml,scrollSnapMarginRight:scrs-mr,scrollSnapCoordinate:scrs-c,scrollSnapDestination:scrs-d,scrollSnapPointsX:scrs-px,scrollSnapPointsY:scrs-py,scrollSnapTypeX:scrs-tx,scrollSnapTypeY:scrs-ty,scrollTimeline:scrtl,scrollTimelineAxis:scrtl-a,scrollTimelineName:scrtl-n,touchAction:tch-a,userSelect:us,overflow:ov,overflowWrap:ov-wrap,overflowX:ov-x,overflowY:ov-y,overflowAnchor:ov-a,overflowBlock:ov-b,overflowInline:ov-i,overflowClipBox:ovcp-bx,overflowClipMargin:ovcp-m,overscrollBehaviorBlock:ovs-bb,overscrollBehaviorInline:ovs-bi,fill:fill,stroke:stk,strokeWidth:stk-w,strokeDasharray:stk-dsh,strokeDashoffset:stk-do,strokeLinecap:stk-lc,strokeLinejoin:stk-lj,strokeMiterlimit:stk-ml,strokeOpacity:stk-op,srOnly:sr,debug:debug,appearance:ap,backfaceVisibility:bfv,clipPath:cp-path,hyphens:hy,mask:msk,maskImage:msk-i,maskSize:msk-s,textSizeAdjust:txt-adj,container:cq,containerName:cq-n,containerType:cq-t,cursor:cursor,textStyle:textStyle,layerStyle:layerStyle,animationStyle:animationStyle",mL=new Map,gL=new Map;R5e.split(",").forEach(e=>{const[r,n]=e.split(":"),[o,...a]=n.split("/");mL.set(r,o),a.length&&a.forEach(i=>{gL.set(i==="1"?o:i,r)})});const yL=e=>gL.get(e)||e,vL={conditions:{shift:fL,finalize:hL,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{transform:(e,r)=>{const n=yL(e);return{className:`${mL.get(n)||f5e(n)}_${a7(r)}`}},hasShorthand:!0,toHash:(e,r)=>r(e.join(":")),resolveShorthand:yL}},T5e=cL(vL),fe=(...e)=>T5e(qu(...e));fe.raw=(...e)=>qu(...e);const{mergeCss:qu}=u5e(vL);function Ge(){let e="",r=0,n;for(;r({base:{},variants:{},defaultVariants:{},compoundVariants:[],...e});function T1(e){const{base:r,variants:n,defaultVariants:o,compoundVariants:a}=bL(e),i=f=>({...o,...Vu(f)});function l(f={}){const g=i(f);let v={...r};for(const[x,k]of Object.entries(g))n[x]?.[k]&&(v=qu(v,n[x][k]));const w=u7(a,g);return qu(v,w)}function s(f){const g=bL(f.config),v=c7(f.variantKeys,Object.keys(n));return T1({base:qu(r,g.base),variants:Object.fromEntries(v.map(w=>[w,qu(n[w],g.variants[w])])),defaultVariants:i7(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 u7(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=qu(n,o.css))}),n}function j5e(e,r,n,o){if(r.length>0&&typeof n?.[o]=="object")throw new Error(`[recipe:${e}:${o}] Conditions are not supported when using compound variants.`)}function A5e(e){const r=Object.entries(_5e(e)).map(([p,f])=>[p,T1(f)]),n=e.defaultVariants??{},o=r.reduce((p,[f,g])=>(e.className&&(p[f]=g.config.className),p),{});function 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,...Vu(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 D5e={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};const wt=(e,r,n,o)=>{const 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,...D5e[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},M5e=[["path",{d:"M12 6m-7 0a7 3 0 1 0 14 0a7 3 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M5 6v12c0 1.657 3.134 3 7 3s7 -1.343 7 -3v-12",key:"svg-1"}]],xL=wt("outline","cylinder","Cylinder",M5e),N5e=[["path",{d:"M21 14.008v-5.018a1.98 1.98 0 0 0 -1 -1.717l-4 -2.008a2.016 2.016 0 0 0 -2 0l-10 5.008c-.619 .355 -1 1.01 -1 1.718v5.018c0 .709 .381 1.363 1 1.717l4 2.008a2.016 2.016 0 0 0 2 0l10 -5.008c.619 -.355 1 -1.01 1 -1.718z",key:"svg-0"}],["path",{d:"M9 21v-7.5",key:"svg-1"}],["path",{d:"M9 13.5l11.5 -5.5",key:"svg-2"}],["path",{d:"M3.5 11l5.5 2.5",key:"svg-3"}]],P5e=wt("outline","rectangular-prism","RectangularPrism",N5e),B5e=[["path",{d:"M3 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-0"}],["path",{d:"M10 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-1"}],["path",{d:"M17 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-2"}],["path",{d:"M5 11v-3a3 3 0 0 1 3 -3h8a3 3 0 0 1 3 3v3",key:"svg-3"}],["path",{d:"M16.5 8.5l2.5 2.5l2.5 -2.5",key:"svg-4"}]],I5e=wt("outline","reorder","Reorder",B5e),O5e=[["path",{d:"M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0",key:"svg-0"}],["path",{d:"M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2",key:"svg-1"}]],L5e=wt("outline","user","User",O5e),F5e=[["path",{d:"M6 5a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2v-14z",key:"svg-0"}],["path",{d:"M11 4h2",key:"svg-1"}],["path",{d:"M12 17v.01",key:"svg-2"}]],V5e=wt("outline","device-mobile","DeviceMobile",F5e),q5e=[["path",{d:"M4 8h16",key:"svg-0"}],["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-1"}],["path",{d:"M8 4v4",key:"svg-2"}]],H5e=wt("outline","browser","Browser",q5e),p7=S.createContext(null);function U5e({value:e,children:r}){return S.useContext(p7)?y.jsx(y.Fragment,{children:r}):y.jsx(p7.Provider,{value:e,children:r})}function bx({element:e,className:r,style:n}){const o=S.useContext(p7);if(!e||!e.icon||e.icon==="none")return null;let 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 W5e={browser:H5e,cylinder:xL,mobile:V5e,person:L5e,queue:I5e,rectangle:P5e,storage:xL};function G5e({element:e,className:r}){const n=y.jsx(bx,{element:e,className:r});if(n)return n;const o=W5e[e.shape];return y.jsx("div",{className:Ge(r,"likec4-shape-icon"),children:y.jsx(o,{})})}function Kh(e){const r=S.useRef(e);return r.current=e,S.useMemo(()=>Object.freeze({get current(){return r.current}}),[])}function wL(e){const r=Kh(e);S.useEffect(()=>()=>{r.current()},[])}function h7(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 wL(c),S.useEffect(()=>{l.current=e},r),S.useMemo(()=>{const d=()=>{if(c(),!s.current)return;const p=s.current;s.current=void 0,l.current.apply(p.this,p.args)},u=function(...p){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 Y5e=()=>{},xx=typeof globalThis<"u"&&typeof navigator<"u"&&typeof document<"u";function X5e(e){const r=Kh(e),n=S.useRef(0),o=S.useCallback(()=>{xx&&n.current&&(cancelAnimationFrame(n.current),n.current=0)},[]);return wL(o),[S.useMemo(()=>{const a=(...i)=>{xx&&(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 Z5e=(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 K5e(e,r,n=Z5e,o=S.useEffect,...a){const i=S.useRef(void 0);(i.current===void 0||xx&&!n(i.current,r))&&(i.current=r),o(e,i.current,...a)}function kL(){const e=S.useRef(!0);return S.useEffect(()=>{e.current=!1},[]),e.current}const f7=xx?S.useLayoutEffect:S.useEffect;function Q5e(e){S.useEffect(()=>{e()},[])}function _L(e,r){const[n,o]=X5e(e);S.useEffect(()=>(n(),o),r)}const J5e=e=>(e+1)%Number.MAX_SAFE_INTEGER;function e6e(){const[,e]=S.useState(0);return S.useCallback(()=>{e(J5e)},[])}function t6e(e,r){const n=kL();S.useEffect(n?Y5e:e,r)}const r6e=e=>{e&&clearTimeout(e)};function wx(e,r){const n=Kh(e),o=Kh(r),a=S.useRef(null),i=S.useCallback(()=>{r6e(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 SL=(e,r,n)=>{const o=S.useRef(void 0);return(o.current===void 0||!n(o.current,r))&&(o.current=r),S.useMemo(e,o.current)};function dn(e){if(typeof e=="string"||typeof e=="number")return""+e;let r="";if(Array.isArray(e))for(let n=0,o;n{}};function kx(){for(var e=0,r=arguments.length,n={},o;e=0&&(o=n.slice(a+1),n=n.slice(0,a)),n&&!r.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:o}})}_x.prototype=kx.prototype={constructor:_x,on:function(e,r){var n=this._,o=o6e(e+"",n),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)),CL.hasOwnProperty(r)?{space:CL[r],local:e}:e}function i6e(e){return function(){var r=this.ownerDocument,n=this.namespaceURI;return n===m7&&r.documentElement.namespaceURI===m7?r.createElement(e):r.createElementNS(n,e)}}function l6e(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function $L(e){var r=Sx(e);return(r.local?l6e:i6e)(r)}function s6e(){}function g7(e){return e==null?s6e:function(){return this.querySelector(e)}}function c6e(e){typeof e!="function"&&(e=g7(e));for(var r=this._groups,n=r.length,o=new Array(n),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 M6e(e){e||(e=N6e);function r(p,f){return p&&f?e(p.__data__,f.__data__):!p-!f}for(var n=this._groups,o=n.length,a=new Array(o),i=0;ir?1:e>=r?0:NaN}function P6e(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function B6e(){return Array.from(this)}function I6e(){for(var e=this._groups,r=0,n=e.length;r1?this.each((r==null?X6e:typeof r=="function"?K6e:Z6e)(e,r,n??"")):Qh(this.node(),e)}function Qh(e,r){return e.style.getPropertyValue(r)||AL(e).getComputedStyle(e,null).getPropertyValue(r)}function J6e(e){return function(){delete this[e]}}function e_e(e,r){return function(){this[e]=r}}function t_e(e,r){return function(){var n=r.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function r_e(e,r){return arguments.length>1?this.each((r==null?J6e:typeof r=="function"?t_e:e_e)(e,r)):this.node()[e]}function DL(e){return e.trim().split(/^|\s+/)}function y7(e){return e.classList||new ML(e)}function ML(e){this._node=e,this._names=DL(e.getAttribute("class")||"")}ML.prototype={add:function(e){var r=this._names.indexOf(e);r<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var r=this._names.indexOf(e);r>=0&&(this._names.splice(r,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function NL(e,r){for(var n=y7(e),o=-1,a=r.length;++o=0&&(n=r.slice(o+1),r=r.slice(0,o)),{type:r,name:n}})}function T_e(e){return function(){var r=this.__on;if(r){for(var n=0,o=-1,a=r.length,i;n()=>e;function b7(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}})}b7.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function L_e(e){return!e.ctrlKey&&!e.button}function F_e(){return this.parentNode}function V_e(e,r){return r??{x:e.x,y:e.y}}function q_e(){return navigator.maxTouchPoints||"ontouchstart"in this}function FL(){var e=L_e,r=F_e,n=V_e,o=q_e,a={},i=kx("start","drag","end"),l=0,s,c,d,u,p=0;function f($){$.on("mousedown.drag",g).filter(o).on("touchstart.drag",x).on("touchmove.drag",k,O_e).on("touchend.drag touchcancel.drag",C).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g($,z){if(!(u||!e.call(this,$,z))){var T=_(this,r.call(this,$,z),$,z,"mouse");T&&(Ea($.view).on("mousemove.drag",v,A1).on("mouseup.drag",w,A1),OL($.view),v7($),d=!1,s=$.clientX,c=$.clientY,T("start",$))}}function v($){if(Jh($),!d){var z=$.clientX-s,T=$.clientY-c;d=z*z+T*T>p}a.mouse("drag",$)}function w($){Ea($.view).on("mousemove.drag mouseup.drag",null),LL($.view,d),Jh($),a.mouse("end",$)}function x($,z){if(e.call(this,$,z)){var T=$.changedTouches,A=r.call(this,$,z),R=T.length,j,I;for(j=0;j>8&15|r>>4&240,r>>4&15|r&240,(r&15)<<4|r&15,1):n===8?zx(r>>24&255,r>>16&255,r>>8&255,(r&255)/255):n===4?zx(r>>12&15|r>>8&240,r>>8&15|r>>4&240,r>>4&15|r&240,((r&15)<<4|r&15)/255):null):(r=U_e.exec(e))?new ra(r[1],r[2],r[3],1):(r=W_e.exec(e))?new ra(r[1]*255/100,r[2]*255/100,r[3]*255/100,1):(r=G_e.exec(e))?zx(r[1],r[2],r[3],r[4]):(r=Y_e.exec(e))?zx(r[1]*255/100,r[2]*255/100,r[3]*255/100,r[4]):(r=X_e.exec(e))?XL(r[1],r[2]/100,r[3]/100,1):(r=Z_e.exec(e))?XL(r[1],r[2]/100,r[3]/100,r[4]):qL.hasOwnProperty(e)?WL(qL[e]):e==="transparent"?new ra(NaN,NaN,NaN,0):null}function WL(e){return new ra(e>>16&255,e>>8&255,e&255,1)}function zx(e,r,n,o){return o<=0&&(e=r=n=NaN),new ra(e,r,n,o)}function J_e(e){return e instanceof D1||(e=Hu(e)),e?(e=e.rgb(),new ra(e.r,e.g,e.b,e.opacity)):new ra}function w7(e,r,n,o){return arguments.length===1?J_e(e):new ra(e,r,n,o??1)}function ra(e,r,n,o){this.r=+e,this.g=+r,this.b=+n,this.opacity=+o}x7(ra,w7,VL(D1,{brighter(e){return e=e==null?$x:Math.pow($x,e),new ra(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?M1:Math.pow(M1,e),new ra(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ra(Uu(this.r),Uu(this.g),Uu(this.b),Rx(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:GL,formatHex:GL,formatHex8:e8e,formatRgb:YL,toString:YL}));function GL(){return`#${Wu(this.r)}${Wu(this.g)}${Wu(this.b)}`}function e8e(){return`#${Wu(this.r)}${Wu(this.g)}${Wu(this.b)}${Wu((isNaN(this.opacity)?1:this.opacity)*255)}`}function YL(){const e=Rx(this.opacity);return`${e===1?"rgb(":"rgba("}${Uu(this.r)}, ${Uu(this.g)}, ${Uu(this.b)}${e===1?")":`, ${e})`}`}function Rx(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Uu(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Wu(e){return e=Uu(e),(e<16?"0":"")+e.toString(16)}function XL(e,r,n,o){return o<=0?e=r=n=NaN:n<=0||n>=1?e=r=NaN:r<=0&&(e=NaN),new Yi(e,r,n,o)}function ZL(e){if(e instanceof Yi)return new Yi(e.h,e.s,e.l,e.opacity);if(e instanceof D1||(e=Hu(e)),!e)return new Yi;if(e instanceof Yi)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 Yi(l,s,c,e.opacity)}function t8e(e,r,n,o){return arguments.length===1?ZL(e):new Yi(e,r,n,o??1)}function Yi(e,r,n,o){this.h=+e,this.s=+r,this.l=+n,this.opacity=+o}x7(Yi,t8e,VL(D1,{brighter(e){return e=e==null?$x:Math.pow($x,e),new Yi(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?M1:Math.pow(M1,e),new Yi(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 ra(k7(e>=240?e-240:e+120,a,o),k7(e,a,o),k7(e<120?e+240:e-120,a,o),this.opacity)},clamp(){return new Yi(KL(this.h),Tx(this.s),Tx(this.l),Rx(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=Rx(this.opacity);return`${e===1?"hsl(":"hsla("}${KL(this.h)}, ${Tx(this.s)*100}%, ${Tx(this.l)*100}%${e===1?")":`, ${e})`}`}}));function KL(e){return e=(e||0)%360,e<0?e+360:e}function Tx(e){return Math.max(0,Math.min(1,e||0))}function k7(e,r,n){return(e<60?r+(n-r)*e/60:e<180?n:e<240?r+(n-r)*(240-e)/60:r)*255}const _7=e=>()=>e;function r8e(e,r){return function(n){return e+n*r}}function n8e(e,r,n){return e=Math.pow(e,n),r=Math.pow(r,n)-e,n=1/n,function(o){return Math.pow(e+o*r,n)}}function o8e(e){return(e=+e)==1?QL:function(r,n){return n-r?n8e(r,n,e):_7(isNaN(r)?n:r)}}function QL(e,r){var n=r-e;return n?r8e(e,n):_7(isNaN(e)?r:e)}const jx=(function e(r){var n=o8e(r);function o(a,i){var l=n((a=w7(a)).r,(i=w7(i)).r),s=n(a.g,i.g),c=n(a.b,i.b),d=QL(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 a8e(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:Ul(o,a)})),n=E7.lastIndex;return n180?u+=360:u-d>180&&(d+=360),f.push({i:p.push(a(p)+"rotate(",null,o)-2,x:Ul(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:Ul(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:Ul(d,p)},{i:w-2,x:Ul(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;--tf}function sF(){Gu=(Nx=L1.now())+Px,tf=B1=0;try{x8e()}finally{tf=0,k8e(),Gu=0}}function w8e(){var e=L1.now(),r=e-Nx;r>aF&&(Px-=r,Nx=e)}function k8e(){for(var e,r=Mx,n,o=1/0;r;)r._call?(o>r._time&&(o=r._time),e=r,r=r._next):(n=r._next,r._next=null,r=e?e._next=n:Mx=n);O1=e,$7(o)}function $7(e){if(!tf){B1&&(B1=clearTimeout(B1));var r=e-Gu;r>24?(e<1/0&&(B1=setTimeout(sF,e-L1.now()-Px)),I1&&(I1=clearInterval(I1))):(I1||(Nx=L1.now(),I1=setInterval(w8e,aF)),tf=1,iF(sF))}}function cF(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 _8e=kx("start","end","cancel","interrupt"),S8e=[],dF=0,uF=1,z7=2,Ix=3,pF=4,R7=5,Ox=6;function Lx(e,r,n,o,a,i){var l=e.__transition;if(!l)e.__transition={};else if(n in l)return;E8e(e,n,{name:r,index:o,group:a,on:_8e,tween:S8e,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:dF})}function T7(e,r){var n=Xi(e,r);if(n.state>dF)throw new Error("too late; already scheduled");return n}function Wl(e,r){var n=Xi(e,r);if(n.state>Ix)throw new Error("too late; already running");return n}function Xi(e,r){var n=e.__transition;if(!n||!(n=n[r]))throw new Error("transition not found");return n}function E8e(e,r,n){var o=e.__transition,a;o[r]=n,n.timer=lF(i,0,n.time);function i(d){n.state=uF,n.timer.restart(l,n.delay,n.time),n.delay<=d&&l(d-n.delay)}function l(d){var u,p,f,g;if(n.state!==uF)return c();for(u in o)if(g=o[u],g.name===n.name){if(g.state===Ix)return cF(l);g.state===pF?(g.state=Ox,g.timer.stop(),g.on.call("interrupt",e,e.__data__,g.index,g.group),delete o[u]):+uz7&&o.state=0&&(r=r.slice(0,n)),!r||r==="start"})}function t7e(e,r,n){var o,a,i=e7e(r)?T7:Wl;return function(){var l=i(this,e),s=l.on;s!==o&&(a=(o=s).copy()).on(r,n),l.on=a}}function r7e(e,r){var n=this._id;return arguments.length<2?Xi(this.node(),n).on.on(e):this.each(t7e(n,e,r))}function n7e(e){return function(){var r=this.parentNode;for(var n in this.__transition)if(+n!==e)return;r&&r.removeChild(this)}}function o7e(){return this.on("end.remove",n7e(this._id))}function a7e(e){var r=this._name,n=this._id;typeof e!="function"&&(e=g7(e));for(var o=this._groups,a=o.length,i=new Array(a),l=0;l()=>e;function T7e(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 Us(e,r,n){this.k=e,this.x=r,this.y=n}Us.prototype={constructor:Us,scale:function(e){return e===1?this:new Us(this.k*e,this.x,this.y)},translate:function(e,r){return e===0&r===0?this:new Us(this.k,this.x+this.k*e,this.y+this.k*r)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var qx=new Us(1,0,0);gF.prototype=Us.prototype;function gF(e){for(;!e.__zoom;)if(!(e=e.parentNode))return qx;return e.__zoom}function A7(e){e.stopImmediatePropagation()}function F1(e){e.preventDefault(),e.stopImmediatePropagation()}function j7e(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function A7e(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function yF(){return this.__zoom||qx}function D7e(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function M7e(){return navigator.maxTouchPoints||"ontouchstart"in this}function N7e(e,r,n){var o=e.invertX(r[0][0])-n[0][0],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 vF(){var e=j7e,r=A7e,n=N7e,o=D7e,a=M7e,i=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Dx,d=kx("start","zoom","end"),u,p,f,g=500,v=150,w=0,x=10;function k(M){M.property("__zoom",yF).on("wheel.zoom",R,{passive:!1}).on("mousedown.zoom",j).on("dblclick.zoom",I).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",yF),M!==q?z(M,V,B,F):q.interrupt().each(function(){T(this,arguments).event(F).start().zoom(null,typeof V=="function"?V.apply(this,arguments):V).end()})},k.scaleBy=function(M,V,B,F){k.scaleTo(M,function(){var q=this.__zoom.k,G=typeof V=="function"?V.apply(this,arguments):V;return q*G},B,F)},k.scaleTo=function(M,V,B,F){k.transform(M,function(){var q=r.apply(this,arguments),G=this.__zoom,U=B==null?$(q):typeof B=="function"?B.apply(this,arguments):B,Y=G.invert(U),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(qx.translate(Y[0],Y[1]).scale(U.k).translate(typeof V=="function"?-V.apply(this,arguments):-V,typeof B=="function"?-B.apply(this,arguments):-B),G,l)},F,q)};function C(M,V){return V=Math.max(i[0],Math.min(i[1],V)),V===M.k?M:new Us(V,M.x,M.y)}function _(M,V,B){var F=V[0]-B[0]*M.k,q=V[1]-B[1]*M.k;return F===M.x&&q===M.y?M:new Us(M.k,F,q)}function $(M){return[(+M[0][0]+ +M[1][0])/2,(+M[0][1]+ +M[1][1])/2]}function z(M,V,B,F){M.on("start.zoom",function(){T(this,arguments).event(F).start()}).on("interrupt.zoom end.zoom",function(){T(this,arguments).event(F).end()}).tween("zoom",function(){var q=this,G=arguments,U=T(q,G).event(F),Y=r.apply(q,G),Z=B==null?$(Y):typeof B=="function"?B.apply(q,G):B,O=Math.max(Y[1][0]-Y[0][0],Y[1][1]-Y[0][1]),W=q.__zoom,K=typeof V=="function"?V.apply(q,G):V,Q=c(W.invert(Z).concat(O/W.k),K.invert(Z).concat(O/K.k));return function(ae){if(ae===1)ae=K;else{var te=Q(ae),re=O/te[2];ae=new Us(re,Z[0]-te[0]*re,Z[1]-te[1]*re)}U.zoom(null,ae)}})}function T(M,V,B){return!B&&M.__zooming||new A(M,V)}function A(M,V){this.that=M,this.args=V,this.active=0,this.sourceEvent=null,this.extent=r.apply(M,V),this.taps=0}A.prototype={event:function(M){return M&&(this.sourceEvent=M),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(M,V){return this.mouse&&M!=="mouse"&&(this.mouse[1]=V.invert(this.mouse[0])),this.touch0&&M!=="touch"&&(this.touch0[1]=V.invert(this.touch0[0])),this.touch1&&M!=="touch"&&(this.touch1[1]=V.invert(this.touch1[0])),this.that.__zoom=V,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(M){var V=Ea(this.that).datum();d.call(M,this.that,new T7e(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=T(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=Gi(M);if(B.wheel)(B.mouse[0][0]!==G[0]||B.mouse[0][1]!==G[1])&&(B.mouse[1]=F.invert(B.mouse[0]=G)),clearTimeout(B.wheel);else{if(F.k===q)return;B.mouse=[G,F.invert(G)],Fx(this),B.start()}F1(M),B.wheel=setTimeout(U,v),B.zoom("mouse",n(_(C(F,q),B.mouse[0],B.mouse[1]),B.extent,l));function U(){B.wheel=null,B.end()}}function j(M,...V){if(f||!e.apply(this,arguments))return;var B=M.currentTarget,F=T(this,V,!0).event(M),q=Ea(M.view).on("mousemove.zoom",Z,!0).on("mouseup.zoom",O,!0),G=Gi(M,B),U=M.clientX,Y=M.clientY;OL(M.view),A7(M),F.mouse=[G,this.__zoom.invert(G)],Fx(this),F.start();function Z(W){if(F1(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]=Gi(W,B),F.mouse[1]),F.extent,l))}function O(W){q.on("mousemove.zoom mouseup.zoom",null),LL(W.view,F.moved),F1(W),F.event(W).end()}}function I(M,...V){if(e.apply(this,arguments)){var B=this.__zoom,F=Gi(M.changedTouches?M.changedTouches[0]:M,this),q=B.invert(F),G=B.k*(M.shiftKey?.5:2),U=n(_(C(B,G),F,q),r.apply(this,V),l);F1(M),s>0?Ea(this).transition().duration(s).call(z,U,F,M):Ea(this).call(k.transform,U,F,M)}}function P(M,...V){if(e.apply(this,arguments)){var B=M.touches,F=B.length,q=T(this,V,M.changedTouches.length===F).event(M),G,U,Y,Z;for(A7(M),U=0;U"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:r,sourceHandle:n,targetHandle:o})=>`Couldn't create edge for ${e} handle id: "${e==="source"?n:o}", edge id: ${r}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},V1=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],bF=["Enter"," ","Escape"],xF={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:e,x:r,y:n})=>`Moved selected node ${e}. New position, x: ${r}, y: ${n}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var rf;(function(e){e.Strict="strict",e.Loose="loose"})(rf||(rf={}));var Yu;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Yu||(Yu={}));var q1;(function(e){e.Partial="partial",e.Full="full"})(q1||(q1={}));const wF={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var ad;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(ad||(ad={}));var Hx;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Hx||(Hx={}));var Ue;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(Ue||(Ue={}));const kF={[Ue.Left]:Ue.Right,[Ue.Right]:Ue.Left,[Ue.Top]:Ue.Bottom,[Ue.Bottom]:Ue.Top};function _F(e){return e===null?null:e?"valid":"invalid"}const SF=e=>"id"in e&&"source"in e&&"target"in e,P7e=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),D7=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),H1=(e,r=[0,0])=>{const{width:n,height:o}=_o(e),a=e.origin??r,i=n*a[0],l=o*a[1];return{x:e.position.x-i,y:e.position.y-l}},EF=(e,r={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((o,a)=>{const i=typeof a=="string";let l=!r.nodeLookup&&!i?a:void 0;r.nodeLookup&&(l=i?r.nodeLookup.get(a):D7(a)?a:r.nodeLookup.get(a.id));const s=l?Gx(l,r.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Ux(o,s)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Wx(n)},nf=(e,r={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},o=!1;return e.forEach(a=>{(r.filter===void 0||r.filter(a))&&(n=Ux(n,Gx(a)),o=!0)}),o?Wx(n):{x:0,y:0,width:0,height:0}},M7=(e,r,[n,o,a]=[0,0,1],i=!1,l=!1)=>{const s={...G1(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=U1(s,Zu(d)),x=(g??0)*(v??0),k=i&&w>0;(!d.internals.handleBounds||k||w>=x||d.dragging)&&c.push(d)}return c},B7e=(e,r)=>{const n=new Set;return e.forEach(o=>{n.add(o.id)}),r.filter(o=>n.has(o.source)||n.has(o.target))};function I7e(e,r){const n=new Map,o=r?.nodes?new Set(r.nodes.map(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 O7e({nodes:e,width:r,height:n,panZoom:o,minZoom:a,maxZoom:i},l){if(e.size===0)return Promise.resolve(!0);const s=I7e(e,l),c=nf(s),d=Ws(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 CF({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",Gl.error005());else{const g=s.measured.width,v=s.measured.height;g&&v&&(p=[[c,d],[c+g,d+v]])}else s&&sf(l.extent)&&(p=[[l.extent[0][0]+c,l.extent[0][1]+d],[l.extent[1][0]+c,l.extent[1][1]+d]]);const f=sf(p)?Xu(r,p,l.measured):r;return(l.measured.width===void 0||l.measured.height===void 0)&&i?.("015",Gl.error015()),{position:{x:f.x-c+(l.measured.width??0)*u[0],y:f.y-d+(l.measured.height??0)*u[1]},positionAbsolute:f}}async function L7e({nodesToRemove:e=[],edgesToRemove:r=[],nodes:n,edges:o,onBeforeDelete: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=B7e(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 of=(e,r=0,n=1)=>Math.min(Math.max(e,r),n),Xu=(e={x:0,y:0},r,n)=>({x:of(e.x,r[0][0],r[1][0]-(n?.width??0)),y:of(e.y,r[0][1],r[1][1]-(n?.height??0))});function $F(e,r,n){const{width:o,height:a}=_o(n),{x:i,y:l}=n.internals.positionAbsolute;return Xu(e,[[i,l],[i+o,l+a]],r)}const zF=(e,r,n)=>en?-of(Math.abs(e-n),1,r)/r:0,RF=(e,r,n=15,o=40)=>{const a=zF(e.x,o,r.width-o)*n,i=zF(e.y,o,r.height-o)*n;return[a,i]},Ux=(e,r)=>({x:Math.min(e.x,r.x),y:Math.min(e.y,r.y),x2:Math.max(e.x2,r.x2),y2:Math.max(e.y2,r.y2)}),N7=({x:e,y:r,width:n,height:o})=>({x:e,y:r,x2:e+n,y2:r+o}),Wx=({x:e,y:r,x2:n,y2:o})=>({x:e,y:r,width:n-e,height:o-r}),Zu=(e,r=[0,0])=>{const{x:n,y:o}=D7(e)?e.internals.positionAbsolute:H1(e,r);return{x:n,y:o,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},Gx=(e,r=[0,0])=>{const{x:n,y:o}=D7(e)?e.internals.positionAbsolute:H1(e,r);return{x:n,y:o,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:o+(e.measured?.height??e.height??e.initialHeight??0)}},TF=(e,r)=>Wx(Ux(N7(e),N7(r))),U1=(e,r)=>{const n=Math.max(0,Math.min(e.x+e.width,r.x+r.width)-Math.max(e.x,r.x)),o=Math.max(0,Math.min(e.y+e.height,r.y+r.height)-Math.max(e.y,r.y));return Math.ceil(n*o)},jF=e=>Zi(e.width)&&Zi(e.height)&&Zi(e.x)&&Zi(e.y),Zi=e=>!isNaN(e)&&isFinite(e),F7e=(e,r)=>{},W1=(e,r=[1,1])=>({x:r[0]*Math.round(e.x/r[0]),y:r[1]*Math.round(e.y/r[1])}),G1=({x:e,y:r},[n,o,a],i=!1,l=[1,1])=>{const s={x:(e-n)/a,y:(r-o)/a};return i?W1(s,l):s},Yx=({x:e,y:r},[n,o,a])=>({x:e*a+n,y:r*a+o});function af(e,r){if(typeof e=="number")return Math.floor((r-r/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(r*n*.01)}return console.error(`[React Flow] The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function V7e(e,r,n){if(typeof e=="string"||typeof e=="number"){const o=af(e,n),a=af(e,r);return{top:o,right:a,bottom:o,left:a,x:a*2,y:o*2}}if(typeof e=="object"){const o=af(e.top??e.y??0,n),a=af(e.bottom??e.y??0,n),i=af(e.left??e.x??0,r),l=af(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 q7e(e,r,n,o,a,i){const{x:l,y:s}=Yx(e,[r,n,o]),{x:c,y:d}=Yx({x:e.x+e.width,y:e.y+e.height},[r,n,o]),u=a-c,p=i-d;return{left:Math.floor(l),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(p)}}const Ws=(e,r,n,o,a,i)=>{const l=V7e(i,r,n),s=(r-l.x)/e.width,c=(n-l.y)/e.height,d=Math.min(s,c),u=of(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=q7e(e,g,v,u,r,n),x={left:Math.min(w.left-l.left,0),top:Math.min(w.top-l.top,0),right:Math.min(w.right-l.right,0),bottom:Math.min(w.bottom-l.bottom,0)};return{x:g-x.left+x.right,y:v-x.top+x.bottom,zoom:u}},lf=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function sf(e){return e!=null&&e!=="parent"}function _o(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function AF(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function DF(e,r={width:0,height:0},n,o,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 MF(e,r){if(e.size!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function H7e(){let e,r;return{promise:new Promise((n,o)=>{e=n,r=o}),resolve:e,reject:r}}function U7e(e){return{...xF,...e||{}}}function Y1(e,{snapGrid:r=[0,0],snapToGrid:n=!1,transform:o,containerBounds:a}){const{x:i,y:l}=Ki(e),s=G1({x:i-(a?.left??0),y:l-(a?.top??0)},o),{x:c,y:d}=n?W1(s,r):s;return{xSnapped:c,ySnapped:d,...s}}const P7=e=>({width:e.offsetWidth,height:e.offsetHeight}),NF=e=>e?.getRootNode?.()||window?.document,W7e=["INPUT","SELECT","TEXTAREA"];function PF(e){const r=e.composedPath?.()?.[0]||e.target;return r?.nodeType!==1?!1:W7e.includes(r.nodeName)||r.hasAttribute("contenteditable")||!!r.closest(".nokey")}const BF=e=>"clientX"in e,Ki=(e,r)=>{const n=BF(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)}},IF=(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,...P7(l)}})};function OF({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 Xx(e,r){return e>=0?.5*e:r*25*Math.sqrt(-e)}function LF({pos:e,x1:r,y1:n,x2:o,y2:a,c:i}){switch(e){case Ue.Left:return[r-Xx(r-o,i),n];case Ue.Right:return[r+Xx(o-r,i),n];case Ue.Top:return[r,n-Xx(n-a,i)];case Ue.Bottom:return[r,n+Xx(a-n,i)]}}function Zx({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:a,targetPosition:i=Ue.Top,curvature:l=.25}){const[s,c]=LF({pos:n,x1:e,y1:r,x2:o,y2:a,c:l}),[d,u]=LF({pos:i,x1:o,y1:a,x2:e,y2:r,c:l}),[p,f,g,v]=OF({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 FF({sourceX:e,sourceY:r,targetX:n,targetY:o}){const a=Math.abs(n-e)/2,i=n0}const X7e=({source:e,sourceHandle:r,target:n,targetHandle:o})=>`xy-edge__${e}${r||""}-${n}${o||""}`,Z7e=(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)),K7e=(e,r,n={})=>{if(!e.source||!e.target)return r;const o=n.getEdgeId||X7e;let a;return SF(e)?a={...e}:a={...e,id:o(e)},Z7e(a,r)?r:(a.sourceHandle===null&&delete a.sourceHandle,a.targetHandle===null&&delete a.targetHandle,r.concat(a))};function VF({sourceX:e,sourceY:r,targetX:n,targetY:o}){const[a,i,l,s]=FF({sourceX:e,sourceY:r,targetX:n,targetY:o});return[`M ${e},${r}L ${n},${o}`,a,i,l,s]}const qF={[Ue.Left]:{x:-1,y:0},[Ue.Right]:{x:1,y:0},[Ue.Top]:{x:0,y:-1},[Ue.Bottom]:{x:0,y:1}},Q7e=({source:e,sourcePosition:r=Ue.Bottom,target:n})=>r===Ue.Left||r===Ue.Right?e.xMath.sqrt(Math.pow(r.x-e.x,2)+Math.pow(r.y-e.y,2));function J7e({source:e,sourcePosition:r=Ue.Bottom,target:n,targetPosition:o=Ue.Top,center:a,offset:i,stepPosition:l}){const s=qF[r],c=qF[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=Q7e({source:d,sourcePosition:r,target:u}),f=p.x!==0?"x":"y",g=p[f];let v=[],w,x;const k={x:0,y:0},C={x:0,y:0},[,,_,$]=FF({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f==="x"?(w=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}],T=[{x:d.x,y:x},{x:u.x,y:x}];s[f]===g?v=f==="x"?z:T:v=f==="x"?T:z}else{const z=[{x:d.x,y:u.y}],T=[{x:u.x,y:d.y}];if(f==="x"?v=s.x===g?T:z:v=s.y===g?z:T,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]=I?(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 e9e(e,r,n,o){const a=Math.min(HF(e,r)/2,HF(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 B7(e,r){return e?typeof e=="string"?e:`${r?`${r}__`:""}${Object.keys(e).sort().map(n=>`${n}=${e[n]}`).join("&")}`:""}function t9e(e,{id:r,defaultColor:n,defaultMarkerStart:o,defaultMarkerEnd: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=B7(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 r9e(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 XF=1e3,n9e=10,I7={nodeOrigin:[0,0],nodeExtent:V1,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},o9e={...I7,checkEquality:!0};function O7(e,r){const n={...e};for(const o in r)r[o]!==void 0&&(n[o]=r[o]);return n}function a9e(e,r,n){const o=O7(I7,n);for(const a of e.values())if(a.parentId)V7(a,e,r,o);else{const i=H1(a,o.nodeOrigin),l=sf(a.extent)?a.extent:o.nodeExtent,s=Xu(i,l,_o(a));a.internals.positionAbsolute=s}}function i9e(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 L7(e){return e==="manual"}function F7(e,r,n,o={}){const a=O7(o9e,o),i={i:0},l=new Map(r),s=a?.elevateNodesOnSelect&&!L7(a.zIndexMode)?XF: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=H1(d,a.nodeOrigin),f=sf(d.extent)?d.extent:a.nodeExtent,g=Xu(p,f,_o(d));u={...a.defaults,...d,measured:{width:d.measured?.width,height:d.measured?.height},internals:{positionAbsolute:g,handleBounds:i9e(d,u),z:ZF(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&&V7(u,r,n,o,i)}return c}function l9e(e,r){if(!e.parentId)return;const n=r.get(e.parentId);n?n.set(e.id,e):r.set(e.parentId,new Map([[e.id,e]]))}function V7(e,r,n,o,a){const{elevateNodesOnSelect:i,nodeOrigin:l,nodeExtent:s,zIndexMode:c}=O7(I7,o),d=e.parentId,u=r.get(d);if(!u){console.warn(`Parent node ${d} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}l9e(e,n),a&&!u.parentId&&u.internals.rootParentIndex===void 0&&c==="auto"&&(u.internals.rootParentIndex=++a.i,u.internals.z=u.internals.z+a.i*n9e),a&&u.internals.rootParentIndex!==void 0&&(a.i=u.internals.rootParentIndex);const p=i&&!L7(c)?XF:0,{x:f,y:g,z:v}=s9e(e,u,l,s,p,c),{positionAbsolute:w}=e.internals,x=f!==w.x||g!==w.y;(x||v!==e.internals.z)&&r.set(e.id,{...e,internals:{...e.internals,positionAbsolute:x?{x:f,y:g}:w,z:v}})}function ZF(e,r,n){const o=Zi(e.zIndex)?e.zIndex:0;return L7(n)?o:o+(e.selected?r:0)}function s9e(e,r,n,o,a,i){const{x:l,y:s}=r.internals.positionAbsolute,c=_o(e),d=H1(e,n),u=sf(e.extent)?Xu(d,e.extent,c):d;let p=Xu({x:l+u.x,y:s+u.y},o,c);e.extent==="parent"&&(p=$F(p,c,r));const f=ZF(e,a,i),g=r.internals.z??0;return{x:p.x,y:p.y,z:g>=f?g+1:f}}function q7(e,r,n,o=[0,0]){const 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??Zu(s),d=TF(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=q7(f,r,n,a);d.push(...g)}return{changes:d,updatedInternals:c}}async function d9e({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 KF(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 QF(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}`;KF("source",c,u,e,a,l),KF("target",c,d,e,i,s),r.set(o.id,o)}}function JF(e,r){if(!e.parentId)return!1;const n=r.get(e.parentId);return n?n.selected?!0:JF(n,r):!1}function eV(e,r,n){let o=e;do{if(o?.matches?.(r))return!0;if(o===n)return!1;o=o?.parentElement}while(o);return!1}function u9e(e,r,n,o){const a=new Map;for(const[i,l]of e)if((l.selected||l.id===o)&&(!l.parentId||!JF(l,e))&&(l.draggable||r&&typeof l.draggable>"u")){const s=e.get(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 H7({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 p9e({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=W1(i,r);return{x:l.x-i.x,y:l.y-i.y}}function h9e({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:T,nodeClickDistance:A=0}){f=Ea($);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 O=!1;const W=s.size>1,K=W&&V?N7(nf(s)):null,Q=W&&F?p9e({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)}:W1(re,B));let ue=null;if(W&&V&&!te.extent&&K){const{positionAbsolute:pe}=te.internals,xe=pe.x-K.x+V[0][0],je=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],[je,Je]]}const{position:_e,positionAbsolute:ce}=CF({nodeId:ae,nextPosition:re,nodeLookup:M,nodeExtent:ue||V,nodeOrigin:q,onError:Y});O=O||te.position.x!==_e.x||te.position.y!==_e.y,te.position=_e,te.internals.positionAbsolute=ce}if(v=v||O,!!O&&(Z(s,!0),w&&(o||G||!T&&U))){const[ae,te]=H7({nodeId:T,dragItems:s,nodeLookup:M});o?.(w,s,ae,te),G?.(w,ae,te),T||U?.(w,te)}}async function j(){if(!u)return;const{transform:L,panBy:H,autoPanSpeed:M,autoPanOnNodeDrag:V}=r();if(!V){c=!1,cancelAnimationFrame(l);return}const[B,F]=RF(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(j)}function I(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&&T&&(H.get(T)?.selected||Z()),z&&G&&T&&e?.(T);const O=Y1(L.sourceEvent,{transform:B,snapGrid:F,snapToGrid:q,containerBounds:u});if(i=O,s=u9e(H,V,O,T),s.size>0&&(n||U||!T&&Y)){const[W,K]=H7({nodeId:T,dragItems:s,nodeLookup:H});n?.(L.sourceEvent,s,W,K),U?.(L.sourceEvent,W,K),T||Y?.(L.sourceEvent,K)}}const P=FL().clickDistance(A).on("start",L=>{const{domNode:H,nodeDragThreshold:M,transform:V,snapGrid:B,snapToGrid:F}=r();u=H?.getBoundingClientRect()||null,g=!1,v=!1,w=L.sourceEvent,M===0&&I(L),i=Y1(L.sourceEvent,{transform:V,snapGrid:B,snapToGrid:F,containerBounds:u}),d=Ki(L.sourceEvent,u)}).on("drag",L=>{const{autoPanOnNodeDrag:H,transform:M,snapGrid:V,snapToGrid:B,nodeDragThreshold:F,nodeLookup:q}=r(),G=Y1(L.sourceEvent,{transform:M,snapGrid:V,snapToGrid:B,containerBounds:u});if(w=L.sourceEvent,(L.sourceEvent.type==="touchmove"&&L.sourceEvent.touches.length>1||T&&!q.has(T))&&(g=!0),!g){if(!c&&H&&p&&(c=!0,j()),!p){const U=Ki(L.sourceEvent,u),Y=U.x-d.x,Z=U.y-d.y;Math.sqrt(Y*Y+Z*Z)>F&&I(L)}(i.x!==G.xSnapped||i.y!==G.ySnapped)&&s&&p&&(d=Ki(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||!T&&B){const[F,q]=H7({nodeId:T,dragItems:s,nodeLookup:H,dragging:!1});a?.(L.sourceEvent,s,F,q),V?.(L.sourceEvent,F,q),T||B?.(L.sourceEvent,q)}}}).filter(L=>{const H=L.target;return!L.button&&(!C||!eV(H,`.${C}`,$))&&(!_||eV(H,_,$))});f.call(P)}function k(){f?.on(".drag",null)}return{update:x,destroy:k}}function f9e(e,r,n){const o=[],a={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const i of r.values())U1(a,Zu(i))>0&&o.push(i);return o}const m9e=250;function g9e(e,r,n,o){let a=[],i=1/0;const l=f9e(e,n,r+m9e);for(const s of l){const c=[...s.internals.handleBounds?.source??[],...s.internals.handleBounds?.target??[]];for(const d of c){if(o.nodeId===d.nodeId&&o.type===d.type&&o.id===d.id)continue;const{x:u,y:p}=Ku(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 tV(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,...Ku(l,c,c.position,!0)}:c}function rV(e,r){return e||(r?.classList.contains("target")?"target":r?.classList.contains("source")?"source":null)}function y9e(e,r){let n=null;return r?n=!0:e&&!r&&(n=!1),n}const nV=()=>!0;function v9e(e,{connectionMode:r,connectionRadius:n,handleId:o,nodeId: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=nV,onReconnectEnd:C,updateConnection:_,getTransform:$,getFromHandle:z,autoPanSpeed:T,dragThreshold:A=1,handleDomNode:R}){const j=NF(e.target);let I=0,P;const{x:L,y:H}=Ki(e),M=rV(i,R),V=s?.getBoundingClientRect();let B=!1;if(!V||!M)return;const F=tV(a,M,o,c,r);if(!F)return;let q=Ki(e,V),G=!1,U=null,Y=!1,Z=null;function O(){if(!u||!V)return;const[ue,_e]=RF(q,V,T);f({x:ue,y:_e}),I=requestAnimationFrame(O)}const W={...F,nodeId:a,type:M,position:F.position},K=c.get(a);let Q={inProgress:!0,isValid:null,from:Ku(K,W,Ue.Left,!0),fromHandle:W,fromPosition:W.position,fromNode:K,to:q,toHandle:null,toPosition:kF[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}=Ki(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=Ki(ue,V),P=g9e(G1(q,_e,!1,[1,1]),n,c,W),G||(O(),G=!0);const ce=oV(ue,{handle:P,connectionMode:r,fromNodeId:a,fromHandleId:o,fromType:l?"target":"source",isValidConnection:k,doc:j,lib:d,flowId:p,nodeLookup:c});Z=ce.handleDomNode,U=ce.connection,Y=y9e(!!P,ce.isValid);const pe=c.get(a),xe=pe?Ku(pe,W,Ue.Left,!0):Q.from,je={...Q,from:xe,isValid:Y,to:ce.toHandle&&Y?Yx({x:ce.toHandle.x,y:ce.toHandle.y},_e):q,toHandle:ce.toHandle,toPosition:Y&&ce.toHandle?ce.toHandle.position:kF[W.position],toNode:ce.toHandle?c.get(ce.toHandle.nodeId):null,pointer:q};_(je),Q=je}function re(ue){if(!("touches"in ue&&ue.touches.length>0)){if(B){(P||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(I),G=!1,Y=!1,U=null,Z=null,j.removeEventListener("mousemove",te),j.removeEventListener("mouseup",re),j.removeEventListener("touchmove",te),j.removeEventListener("touchend",re)}}j.addEventListener("mousemove",te),j.addEventListener("mouseup",re),j.addEventListener("touchmove",te),j.addEventListener("touchend",re)}function oV(e,{handle:r,connectionMode:n,fromNodeId:o,fromHandleId:a,fromType:i,doc:l,lib:s,flowId:c,isValidConnection:d=nV,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}=Ki(e),w=l.elementFromPoint(g,v),x=w?.classList.contains(`${s}-flow__handle`)?w:f,k={handleDomNode:x,isValid:!1,connection:null,toHandle:null};if(x){const C=rV(void 0,x),_=x.getAttribute("data-nodeid"),$=x.getAttribute("data-handleid"),z=x.classList.contains("connectable"),T=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&&T&&(n===rf.Strict?p&&C==="source"||!p&&C==="target":_!==o||$!==a);k.isValid=R&&d(A),k.toHandle=tV(_,C,$,u,n,!0)}return k}const U7={onPointerDown:v9e,isValid:oV};function b9e({domNode:e,panZoom:r,getTransform:n,getViewScale:o}){const a=Ea(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&&lf()?10:1,T=-_.sourceEvent.deltaY*(_.sourceEvent.deltaMode===1?.05:_.sourceEvent.deltaMode?1:.002)*u,A=$[2]*Math.pow(2,T*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],T=[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]-T[0]*A,y:$[1]-T[1]*A},j=[[0,0],[c,d]];r.setViewportConstrained({x:R.x,y:R.y,zoom:$[2]},j,s)},C=vF().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:Gi}}const Qx=e=>({x:e.x,y:e.y,zoom:e.k}),W7=({x:e,y:r,zoom:n})=>qx.translate(e,r).scale(n),cf=(e,r)=>e.target.closest(`.${r}`),aV=(e,r)=>r===2&&Array.isArray(e)&&e.includes(2),x9e=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,G7=(e,r=0,n=x9e,o=()=>{})=>{const a=typeof r=="number"&&r>0;return a||o(),a?e.transition().duration(r).ease(n).on("end",o):e},iV=e=>{const r=e.ctrlKey&&lf()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*r};function w9e({zoomPanValues:e,noWheelClassName:r,d3Selection:n,d3Zoom:o,panOnScrollMode:a,panOnScrollSpeed:i,zoomOnPinch:l,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:d}){return u=>{if(cf(u,r))return u.ctrlKey&&u.preventDefault(),!1;u.preventDefault(),u.stopImmediatePropagation();const p=n.property("__zoom").k||1;if(u.ctrlKey&&l){const x=Gi(u),k=iV(u),C=p*Math.pow(2,k);o.scaleTo(n,C,x,u);return}const f=u.deltaMode===1?20:1;let g=a===Yu.Vertical?0:u.deltaX*f,v=a===Yu.Horizontal?0:u.deltaY*f;!lf()&&u.shiftKey&&a!==Yu.Vertical&&(g=u.deltaY*f,v=0),o.translateBy(n,-(g/p)*i,-(v/p)*i,{internal:!0});const w=Qx(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(c?.(u,w),e.panScrollTimeout=setTimeout(()=>{d?.(u,w),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,s?.(u,w))}}function k9e({noWheelClassName:e,preventScrolling:r,d3ZoomHandler:n}){return function(o,a){const i=o.type==="wheel",l=!r&&i&&!o.ctrlKey,s=cf(o,e);if(o.ctrlKey&&i&&s&&o.preventDefault(),l||s)return null;o.preventDefault(),n.call(this,o,a)}}function _9e({zoomPanValues:e,onDraggingChange:r,onPanZoomStart:n}){return o=>{if(o.sourceEvent?.internal)return;const a=Qx(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 S9e({zoomPanValues:e,panOnDrag:r,onPaneContextMenu:n,onTransformChange:o,onPanZoom:a}){return i=>{e.usedRightMouseButton=!!(n&&aV(r,e.mouseButton??0)),i.sourceEvent?.sync||o([i.transform.x,i.transform.y,i.transform.k]),a&&!i.sourceEvent?.internal&&a?.(i.sourceEvent,Qx(i.transform))}}function E9e({zoomPanValues:e,panOnDrag:r,panOnScroll:n,onDraggingChange:o,onPanZoomEnd:a,onPaneContextMenu:i}){return l=>{if(!l.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,i&&aV(r,e.mouseButton??0)&&!e.usedRightMouseButton&&l.sourceEvent&&i(l.sourceEvent),e.usedRightMouseButton=!1,o(!1),a)){const s=Qx(l.transform);e.prevViewport=s,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{a?.(l.sourceEvent,s)},n?150:0)}}}function C9e({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"&&(cf(p,`${d}-flow__node`)||cf(p,`${d}-flow__edge`)))return!0;if(!o&&!f&&!a&&!i&&!n||l||u&&!v||cf(p,s)&&v||cf(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 $9e({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=vF().scaleExtent([r,n]).translateExtent(o),f=Ea(e).call(p);C({x:a.x,y:a.y,zoom:of(a.zoom,r,n)},[[0,0],[u.width,u.height]],o);const g=f.on("wheel.zoom"),v=f.on("dblclick.zoom");p.wheelDelta(iV);function w(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?P1:Dx).transform(G7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function x({noWheelClassName:P,noPanClassName:L,onPaneContextMenu:H,userSelectionActive:M,panOnScroll:V,panOnDrag:B,panOnScrollMode:F,panOnScrollSpeed:q,preventScrolling:G,zoomOnPinch:U,zoomOnScroll:Y,zoomOnDoubleClick:Z,zoomActivationKeyPressed:O,lib:W,onTransformChange:K,connectionInProgress:Q,paneClickDistance:ae,selectionOnDrag:te}){M&&!d.isZoomingOrPanning&&k();const re=V&&!O&&!M;p.clickDistance(te?1/0:!Zi(ae)||ae<0?0:ae);const ue=re?w9e({zoomPanValues:d,noWheelClassName:P,d3Selection:f,d3Zoom:p,panOnScrollMode:F,panOnScrollSpeed:q,zoomOnPinch:U,onPanZoomStart:l,onPanZoom:i,onPanZoomEnd:s}):k9e({noWheelClassName:P,preventScrolling:G,d3ZoomHandler:g});if(f.on("wheel.zoom",ue,{passive:!1}),!M){const ce=_9e({zoomPanValues:d,onDraggingChange:c,onPanZoomStart:l});p.on("start",ce);const pe=S9e({zoomPanValues:d,panOnDrag:B,onPaneContextMenu:!!H,onPanZoom:i,onTransformChange:K});p.on("zoom",pe);const xe=E9e({zoomPanValues:d,panOnDrag:B,panOnScroll:V,onPaneContextMenu:H,onPanZoomEnd:s,onDraggingChange:c});p.on("end",xe)}const _e=C9e({zoomActivationKeyPressed:O,panOnDrag:B,zoomOnScroll:Y,panOnScroll:V,zoomOnDoubleClick: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=W7(P),V=p?.constrain()(M,L,H);return V&&await w(V),new Promise(B=>B(V))}async function _(P,L){const H=W7(P);return await w(H,L),new Promise(M=>M(H))}function $(P){if(f){const L=W7(P),H=f.property("__zoom");(H.k!==P.zoom||H.x!==P.x||H.y!==P.y)&&p?.transform(f,L,null,{sync:!0})}}function z(){const P=f?gF(f.node()):{x:0,y:0,k:1};return{x:P.x,y:P.y,zoom:P.k}}function T(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?P1:Dx).scaleTo(G7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function A(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?P1:Dx).scaleBy(G7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function R(P){p?.scaleExtent(P)}function j(P){p?.translateExtent(P)}function I(P){const L=!Zi(P)||P<0?0:P;p?.clickDistance(L)}return{update:x,destroy:k,setViewport:_,setViewportConstrained:C,getViewport:z,scaleTo:T,scaleBy:A,setScaleExtent:R,setTranslateExtent:j,syncViewport:$,setClickDistance:I}}var df;(function(e){e.Line="line",e.Handle="handle"})(df||(df={}));function z9e({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 lV(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 id(e,r){return Math.max(0,r-e)}function ld(e,r){return Math.max(0,e-r)}function Jx(e,r,n){return Math.max(0,r-e,e-n)}function sV(e,r){return e?!r:r}function R9e(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:T,aspectRatio:A}=e;let R=Math.floor(u?g-e.pointerX:0),j=Math.floor(p?v-e.pointerY:0);const I=z+(c?-R:R),P=T+(d?-j:j),L=-i[0]*z,H=-i[1]*T;let M=Jx(I,w,x),V=Jx(P,k,C);if(l){let q=0,G=0;c&&R<0?q=id(_+R+L,l[0][0]):!c&&R>0&&(q=ld(_+I+L,l[1][0])),d&&j<0?G=id($+j+H,l[0][1]):!d&&j>0&&(G=ld($+P+H,l[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(s){let q=0,G=0;c&&R>0?q=ld(_+R,s[0][0]):!c&&R<0&&(q=id(_+I,s[1][0])),d&&j>0?G=ld($+j,s[0][1]):!d&&j<0&&(G=id($+P,s[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(a){if(u){const q=Jx(I/A,k,C)*A;if(M=Math.max(M,q),l){let G=0;!c&&!d||c&&!d&&f?G=ld($+H+I/A,l[1][1])*A:G=id($+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=id($+I/A,s[1][1])*A:G=ld($+(c?R:-R)/A,s[0][1])*A,M=Math.max(M,G)}}if(p){const q=Jx(P*A,w,x)/A;if(V=Math.max(V,q),l){let G=0;!c&&!d||d&&!c&&f?G=ld(_+P*A+L,l[1][0])/A:G=id(_+(d?j:-j)*A+L,l[0][0])/A,V=Math.max(V,G)}if(s){let G=0;!c&&!d||d&&!c&&f?G=id(_+P*A,s[1][0])/A:G=ld(_+(d?j:-j)*A,s[0][0])/A,V=Math.max(V,G)}}}j=j+(j<0?V:-V),R=R+(R<0?M:-M),a&&(f?I>P*A?j=(sV(c,d)?-R:R)/A:R=(sV(c,d)?-j:j)*A:u?(j=R/A,d=c):(R=j*A,c=d));const B=c?_+R:_,F=d?$+j:$;return{width:z+(c?-R:R),height:T+(d?-j:j),x:i[0]*R*(c?-1:1)+B,y:i[1]*j*(d?-1:1)+F}}const cV={width:0,height:0,x:0,y:0},T9e={...cV,pointerX:0,pointerY:0,aspectRatio:1};function j9e(e){return[[0,0],[e.measured.width,e.measured.height]]}function A9e(e,r,n){const o=r.position.x+e.position.x,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 D9e({domNode:e,nodeId:r,getStoreItems:n,onChange:o,onEnd:a}){const i=Ea(e);let l={controlDirection:lV("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function s({controlPosition:d,boundaries:u,keepAspectRatio:p,resizeDirection:f,onResizeStart:g,onResize:v,onResizeEnd:w,shouldResize:x}){let k={...cV},C={...T9e};l={boundaries:u,resizeDirection:f,keepAspectRatio:p,controlDirection:lV(d)};let _,$=null,z=[],T,A,R,j=!1;const I=FL().on("start",P=>{const{nodeLookup:L,transform:H,snapGrid:M,snapToGrid:V,nodeOrigin:B,paneDomNode:F}=n();if(_=L.get(r),!_)return;$=F?.getBoundingClientRect()??null;const{xSnapped:q,ySnapped:G}=Y1(P.sourceEvent,{transform:H,snapGrid:M,snapToGrid:V,containerBounds:$});k={width:_.measured.width??0,height:_.measured.height??0,x:_.position.x??0,y:_.position.y??0},C={...k,pointerX:q,pointerY:G,aspectRatio:k.width/k.height},T=void 0,_.parentId&&(_.extent==="parent"||_.expandParent)&&(T=L.get(_.parentId),A=T&&_.extent==="parent"?j9e(T):void 0),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=A9e(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=Y1(P.sourceEvent,{transform:L,snapGrid:H,snapToGrid:M,containerBounds:$}),F=[];if(!_)return;const{x:q,y:G,width:U,height:Y}=k,Z={},O=_.origin??V,{width:W,height:K,x:Q,y:ae}=R9e(C,l.controlDirection,B,l.boundaries,l.keepAspectRatio,O,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||O[0]===1||O[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,je=ae-G;for(const Be of z)Be.position={x:Be.position.x-xe+O[0]*(W-U),y:Be.position.y-je+O[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),T&&_.expandParent){const xe=O[0]*(Z.width??0);Z.x&&Z.x{j&&(w?.(P,{...k}),a?.({...k}),j=!1)});i.call(I)}function c(){i.on(".drag",null)}return{update:s,destroy:c}}function Y7(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var dV={exports:{}},X7={},uV={exports:{}},Z7={},pV;function M9e(){if(pV)return Z7;pV=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 Z7.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,Z7}var hV;function fV(){return hV||(hV=1,uV.exports=M9e()),uV.exports}var mV;function N9e(){if(mV)return X7;mV=1;var e=Kr,r=fV();function n(d,u){return d===u&&(d!==0||1/d===1/u)||d!==d&&u!==u}var o=typeof Object.is=="function"?Object.is:n,a=r.useSyncExternalStore,i=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return X7.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(T){if(!C){if(C=!0,_=T,T=f(T),g!==void 0&&w.hasValue){var A=w.value;if(g(A,T))return $=A}return $=T}if(A=$,o(_,T))return A;var R=f(T);return g!==void 0&&g(A,R)?(_=T,A):(_=T,$=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},X7}var gV;function P9e(){return gV||(gV=1,dV.exports=N9e()),dV.exports}var yV=P9e();const B9e=Y7(yV),I9e={},vV=e=>{let r;const n=new Set,o=(s,c)=>{const d=typeof s=="function"?s(r):s;if(!Object.is(d,r)){const u=r;r=c??(typeof d!="object"||d===null)?d:Object.assign({},r,d),n.forEach(p=>p(r,u))}},a=()=>r,i={setState:o,getState:a,getInitialState:()=>l,subscribe:s=>(n.add(s),()=>n.delete(s)),destroy:()=>{(I9e?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},l=r=e(o,a,i);return i},O9e=e=>e?vV(e):vV,{useDebugValue:L9e}=Kr,{useSyncExternalStoreWithSelector:F9e}=B9e,V9e=e=>e;function bV(e,r=V9e,n){const o=F9e(e.subscribe,e.getState,e.getServerState||e.getInitialState,r,n);return L9e(o),o}const xV=(e,r)=>{const n=O9e(e),o=(a,i=r)=>bV(n,a,i);return Object.assign(o,n),o},q9e=(e,r)=>e?xV(e,r):xV;function jr(e,r){if(Object.is(e,r))return!0;if(typeof e!="object"||e===null||typeof r!="object"||r===null)return!1;if(e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(const[o,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 ew=S.createContext(null),H9e=ew.Provider,wV=Gl.error001();function Dt(e,r){const n=S.useContext(ew);if(n===null)throw new Error(wV);return bV(n,e,r)}function vr(){const e=S.useContext(ew);if(e===null)throw new Error(wV);return S.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const kV={display:"none"},U9e={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},_V="react-flow__node-desc",SV="react-flow__edge-desc",W9e="react-flow__aria-live",G9e=e=>e.ariaLiveMessage,Y9e=e=>e.ariaLabelConfig;function X9e({rfId:e}){const r=Dt(G9e);return y.jsx("div",{id:`${W9e}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:U9e,children:r})}function Z9e({rfId:e,disableKeyboardA11y:r}){const n=Dt(Y9e);return y.jsxs(y.Fragment,{children:[y.jsx("div",{id:`${_V}-${e}`,style:kV,children:r?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),y.jsx("div",{id:`${SV}-${e}`,style:kV,children:n["edge.a11yDescription.default"]}),!r&&y.jsx(X9e,{rfId:e})]})}const sd=S.forwardRef(({position:e="top-left",children:r,className:n,style:o,...a},i)=>{const l=`${e}`.split("-");return y.jsx("div",{className:dn(["react-flow__panel",n,...l]),style:o,ref:i,...a,children:r})});sd.displayName="Panel";function K9e({proOptions:e,position:r="bottom-right"}){return e?.hideAttribution?null:y.jsx(sd,{position:r,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:y.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const Q9e=e=>{const r=[],n=[];for(const[,o]of e.nodeLookup)o.selected&&r.push(o.internals.userNode);for(const[,o]of e.edgeLookup)o.selected&&n.push(o);return{selectedNodes:r,selectedEdges:n}},tw=e=>e.id;function J9e(e,r){return jr(e.selectedNodes.map(tw),r.selectedNodes.map(tw))&&jr(e.selectedEdges.map(tw),r.selectedEdges.map(tw))}function eSe({onSelectionChange:e}){const r=vr(),{selectedNodes:n,selectedEdges:o}=Dt(Q9e,J9e);return S.useEffect(()=>{const a={nodes:n,edges:o};e?.(a),r.getState().onSelectionChangeHandlers.forEach(i=>i(a))},[n,o,e]),null}const tSe=e=>!!e.onSelectionChangeHandlers;function rSe({onSelectionChange:e}){const r=Dt(tSe);return e||r?y.jsx(eSe,{onSelectionChange:e}):null}const EV=[0,0],nSe={x:0,y:0,zoom:1},oSe=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode"],CV=[...oSe,"rfId"],aSe=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),$V={translateExtent:V1,nodeOrigin:EV,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function iSe(e){const{setNodes:r,setEdges:n,setMinZoom:o,setMaxZoom:a,setTranslateExtent:i,setNodeExtent:l,reset:s,setDefaultNodesAndEdges:c}=Dt(aSe,jr),d=vr();S.useEffect(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=$V,s()}),[]);const u=S.useRef($V);return S.useEffect(()=>{for(const p of CV){const f=e[p],g=u.current[p];f!==g&&(typeof e[p]>"u"||(p==="nodes"?r(f):p==="edges"?n(f):p==="minZoom"?o(f):p==="maxZoom"?a(f):p==="translateExtent"?i(f):p==="nodeExtent"?l(f):p==="ariaLabelConfig"?d.setState({ariaLabelConfig:U7e(f)}):p==="fitView"?d.setState({fitViewQueued:f}):p==="fitViewOptions"?d.setState({fitViewOptions:f}):d.setState({[p]:f})))}u.current=e},CV.map(p=>e[p])),null}function zV(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function lSe(e){const[r,n]=S.useState(e==="system"?null:e);return S.useEffect(()=>{if(e!=="system"){n(e);return}const o=zV(),a=()=>n(o?.matches?"dark":"light");return a(),o?.addEventListener("change",a),()=>{o?.removeEventListener("change",a)}},[e]),r!==null?r:zV()?.matches?"dark":"light"}const RV=typeof document<"u"?document:null;function X1(e=null,r={target:RV,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("+",` +`),"View title cannot contain newlines"),e.includes(_a)){const r=e.split(_a).map(n=>n.trim()).filter(n=>n.length>0);return Ll(r,1)?r:[""]}return[e.trim()]},gx=e=>r7(e).join(_a),Wke=e=>{const r=r7(e);return Ll(r,2)?r.slice(0,-1).join(_a):null},n7=e=>e.includes(_a)?r7(e).pop()??e:e.trim();class Gke{constructor(r){this.$model=r;const n=this.$deployments=r.$data.deployments,o=fx(n.elements);for(const a of Jc(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 fx(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 eL||r instanceof tL)return r;const n=yr(r);return mt(this.#e.get(n),`Element ${n} not found`)}findElement(r){return this.#e.get(r)??null}node(r){const n=this.element(r);return He(n.isDeploymentNode(),`Element ${n.id} is not a deployment node`),n}findNode(r){const n=this.findElement(r);return n?(He(n.isDeploymentNode(),`Element ${n?.id} is not a deployment node`),n):null}instance(r){const n=this.element(r);return He(n.isInstance(),`Element ${n.id} is not a deployed instance`),n}findInstance(r){const n=this.findElement(r);return n?(He(n.isInstance(),`Element ${n?.id} is not a deployed instance`),n):null}roots(){return this.#l.values()}elements(){return this.#e.values()}*nodes(){for(const r of this.#e.values())r.isDeploymentNode()&&(yield r)}*nodesOfKind(r){for(const n of this.#e.values())n.isDeploymentNode()&&n.kind===r&&(yield n)}*instances(){for(const r of this.#e.values())r.isInstance()&&(yield r)}*instancesOf(r){const n=yr(r),o=this.#r.get(n);o&&(yield*o)}deploymentRef(r){if(S1.isInsideInstanceRef(r)){const{deployment:n,element:o}=r;return $ke(this.#d,`${n}@${o}`,()=>new Oke(this.instance(n),this.$model.element(o)))}return this.element(r.deployment)}relationships(){return this.#n.values()}relationship(r){const n=yr(r);return mt(this.#n.get(n),`DeploymentRelationModel ${n} not found`)}findRelationship(r){return this.#n.get(r)??null}*views(){for(const r of this.$model.views())r.isDeploymentView()&&(yield r)}parent(r){const n=yr(r);return this.#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=v4e(r)?new eL(this,Object.freeze(r)):new tL(this,Object.freeze(r),this.$model.element(r.element));this.#e.set(n.id,n);const o=zb(n.id);return o?(He(this.#e.has(o),`Parent ${o} of ${n.id} not found`),this.#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 Lke(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,...Du(o)])this.#o.get(a).add(n);for(const a of Du(n.source.id)){if(a===o)break;this.#a.get(a).add(n)}for(const a of Du(n.target.id)){if(a===o)break;this.#s.get(a).add(n)}return n}}class aL{constructor(r,n){this.model=r,this.$relationship=n,this.source=r.element(S1.flatten(n.source)),this.target=r.element(S1.flatten(n.target));const o=t1(this.source.id,this.target.id);this.boundary=o?this.model.element(o):null}source;target;boundary;get id(){return this.$relationship.id}get expression(){return`${this.source.id} -> ${this.target.id}`}get title(){return Ja(this.$relationship.title)?this.$relationship.title:null}get technology(){return Ja(this.$relationship.technology)?this.$relationship.technology:null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!e7(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$relationship))}get description(){return ur.memoize(this,"description",Xh(this.$relationship))}get navigateTo(){return this.$relationship.navigateTo?this.model.view(this.$relationship.navigateTo):null}get tags(){return this.$relationship.tags??[]}get kind(){return this.$relationship.kind??null}get links(){return this.$relationship.links??[]}get color(){return this.$relationship.color??this.model.$styles.defaults.relationship.color}get line(){return this.$relationship.line??this.model.$styles.defaults.relationship.line}get head(){return this.$relationship.head??this.model.$styles.defaults.relationship.arrow}get tail(){return this.$relationship.tail}*views(){for(const r of this.model.views())r.includesRelation(this.id)&&(yield r)}isDeploymentRelation(){return!1}isModelRelation(){return!0}hasMetadata(){return!!this.$relationship.metadata&&!$1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class Yke{constructor(r,n,o,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()?IO(this.id):null}get navigateTo(){return this.$edge.navigateTo?this.$viewModel.$model.view(this.$edge.navigateTo):null}get color(){return this.$edge.color}get line(){return this.$edge.line??this.$viewModel.$styles.defaults.relationship.line}get head(){return this.$edge.head??this.$viewModel.$styles.defaults.relationship.arrow}get tail(){return this.$edge.tail}isStep(){return k1(this.id)}*relationships(r){for(const n of this.$edge.relations)if(r){const o=this.$viewModel.$model.findRelationship(n,r);o&&(yield o)}else yield this.$viewModel.$model.relationship(n)}includesRelation(r){const n=typeof r=="string"?r:r.id;return this.$edge.relations.includes(n)}isTagged(r){return this.tags.includes(r)}}class Xke{Aux;$viewModel;$view;$node;constructor(r,n){this.$viewModel=r,this.$view=r.$view,this.$node=n}get id(){return this.$node.id}get title(){return this.$node.title}get kind(){return this.$node.kind}get description(){return ur.memoize(this,"description",this.$node.description)}get technology(){return this.$node.technology??null}get parent(){return this.$node.parent?this.$viewModel.node(this.$node.parent):null}get element(){const r=this.$node.modelRef;return r?this.$viewModel.$model.element(r):null}get deployment(){const r=this.$node.deploymentRef;return r?this.$viewModel.$model.deployment.element(r):null}get shape(){return this.$node.shape}get color(){return this.$node.color}get icon(){return this.$node.icon??null}get tags(){return this.$node.tags}get links(){return this.$node.links??[]}get navigateTo(){return this.$node.navigateTo?this.$viewModel.$model.view(this.$node.navigateTo):null}get style(){return this.$node.style}get x(){return"x"in this.$node?this.$node.x:void 0}get y(){return"y"in this.$node?this.$node.y:void 0}get width(){return"width"in this.$node?this.$node.width:void 0}get height(){return"height"in this.$node?this.$node.height:void 0}children(){return 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 Ja(this.$node.modelRef)}hasDeployment(){return Ja(this.$node.deploymentRef)}hasDeployedInstance(){return this.hasElement()&&this.hasDeployment()}isGroup(){return mke(this.$node)}isTagged(r){return this.tags.includes(r)}}class o7{Aux;#e;#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 Xke(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 Yke(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?n7(o.title):null,this.viewPath=o.title?gx(o.title):o.id}get $styles(){return this.$model.$styles}get _type(){return this.#e[h1]}get stage(){return this.#e[Iu]}get bounds(){if("bounds"in this.#e)return this.#e.bounds;if(this.#o)return this.#o.bounds;throw new Error("View is not layouted")}get titleOrId(){return this.title??this.viewOf?.title??this.id}get titleOrUntitled(){return this.title??"Untitled"}get breadcrumbs(){return 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",()=>fke(this.#e,r)):this.#e}get $layouted(){if(!this.isLayouted())throw new Error("View is not layouted");return this.$manual??this.#e}get hasManualLayout(){return this.#o!==void 0}get hasLayoutDrifts(){if(!this.isLayouted())return!1;const r=this.$manual;return!!r?.drifts&&r.drifts.length>0}get $manual(){if(!this.isLayouted())return null;const r=this.#o;return r?ir(this,"snapshotWithManualLayout",()=>PO(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)?E1(this.#t.values(),o=>o.hasElement()&&o.element.id===n)??null:null}nodes(){return this.#t.values()}edge(r){const n=yr(r);return mt(this.#r.get(n),`Edge ${n} not found in view ${this.#e.id}`)}findEdge(r){return this.#r.get(yr(r))??null}edges(){return this.#r.values()}*edgesWithRelation(r){for(const n of this.#r.values())n.includesRelation(r)&&(yield n)}*elements(){for(const r of this.#t.values())r.hasElement()&&(yield r)}isTagged(r){return this.tags.includes(r)}includesElement(r){return this.#l.has(yr(r))}includesDeployment(r){return this.#n.has(yr(r))}includesRelation(r){return this.#s.has(yr(r))}isComputed(){return this.#e[Iu]==="computed"}isLayouted(){return this.#e[Iu]==="layouted"}isDiagram(){return this.#e[Iu]==="layouted"}isElementView(){return this.#e[h1]==="element"}isScopedElementView(){return this.#e[h1]==="element"&&Ja(this.#e.viewOf)}isDeploymentView(){return this.#e[h1]==="deployment"}isDynamicView(){return this.#e[h1]==="dynamic"}}class yx{$model;path;title;isRoot;parentPath;defaultViewId;constructor(r,n,o){this.$model=r,this.path=n.join("/"),this.isRoot=this.path==="",this.title=Hke(n),this.isRoot?this.parentPath=void 0:this.parentPath=n.slice(0,-1).join("/"),this.defaultViewId=o}get defaultView(){return this.defaultViewId?this.$model.view(this.defaultViewId):null}get breadcrumbs(){return He(!this.isRoot,"Root view folder has no breadcrumbs"),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"),qke(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 yx&&r.push(n);return r})}get views(){return ir(this,"views",()=>{const r=[];for(const n of this.children)n instanceof o7&&r.push(n);return r})}}class Fu{Aux;_elements=new Map;_parents=new Map;_children=new Ln(()=>new Set);_rootElements=new Set;_relations=new Map;_incoming=new Ln(()=>new Set);_outgoing=new Ln(()=>new Set);_internal=new Ln(()=>new Set);_views=new Map;_rootViewFolder;_viewFolders=new Map;_viewFolderItems=new Ln(()=>new Set);_allTags=new Ln(()=>new Set);static fromParsed(r){return new Fu(r)}static create(r){return new Fu(r)}static fromDump(r){const{_stage:n="layouted",projectId:o="unknown",project:a,globals:i,imports:l,deployments:s,views:c,relations:d,elements:u,specification:p}=r;return new Fu({[Iu]: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 f1(r.elements)){const o=this.addElement(n);for(const a of o.tags)this._allTags.get(a).add(o)}for(const[n,o]of f1(r.imports??{}))for(const a of Jc(o)){const i=this.addImportedElement(n,a);for(const l of i.tags)this._allTags.get(l).add(i)}for(const n of fx(r.relations)){const o=this.addRelation(n);for(const a of o.tags)this._allTags.get(a).add(o)}if(this.deployment=new Gke(this),cO(r,"computed")||cO(r,"layouted")){const n=JP(_a),o=Ps(fx(r.views),Zb(i=>({view:i,path:gx(i.title??i.id),folderPath:i.title&&Wke(i.title)||""})),Q8((i,l)=>n(i.folderPath,l.folderPath))),a=i=>{let l=this._viewFolders.get(i);if(!l){const s=oL(i,_a);He(Ll(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 yx(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)||oL(i,_a).reduce((l,s)=>{const c=l.join(_a),d=$1(c)?s:c+_a+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 o7(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 yx(this,[""],void 0),this._viewFolders.set(this._rootViewFolder.path,this._rootViewFolder)}get asParsed(){return this}get asComputed(){return this}get asLayouted(){return this}get $styles(){return ir(this,"styles",()=>XP.from(this.$data.project.styles,this.$data.specification.customColors?{theme:{colors:this.$data.specification.customColors}}:void 0))}isParsed(){return this.stage==="parsed"}isLayouted(){return this.stage==="layouted"}isComputed(){return this.stage==="computed"}get $model(){return this.$data}get stage(){return this.$data[Iu]}get projectId(){return this.$data.projectId??"default"}get project(){return this.$data.project??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 mx)return r;const n=yr(r);return mt(this._elements.get(n),`Element ${n} not found`)}findElement(r){return this._elements.get(yr(r))??null}roots(){return this._rootElements.values()}elements(){return this._elements.values()}relationships(){return this._relations.values()}relationship(r,n){if(n==="deployment")return this.deployment.relationship(r);const o=yr(r);let 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",()=>Q8([...this._allTags.keys()],Rb))}get tagsSortedByUsage(){return ir(this,"tagsSortedByUsage",()=>Ps([...this._allTags.entries()],Zb(([r,n])=>({tag:r,count:n.size,tagged:n})),Q8((r,n)=>Rb(r.tag,n.tag)),vO([Lu("count"),"desc"])))}findByTag(r,n){return Is(this._allTags.get(r),o=>n==="elements"?o instanceof mx:n==="views"?o instanceof o7:n==="relationships"?o instanceof aL:!0)}*elementsOfKind(r){for(const n of this._elements.values())n.kind===r&&(yield n)}*elementsWhere(r){const n=Ou(r);for(const o of this._elements.values())n(o)&&(yield o)}*relationshipsWhere(r){const n=Ou(r);for(const o of this._relations.values())n(o)&&(yield o)}addElement(r){if(this._elements.has(r.id))throw new Error(`Element ${r.id} already exists`);const n=new mx(this,Object.freeze(r));this._elements.set(n.id,n);const o=zb(n.id);return o?(He(this._elements.has(o),`Parent ${o} of ${n.id} not found`),this._parents.set(n.id,this.element(o)),this._children.get(o).add(n)):this._rootElements.add(n),n}addImportedElement(r,n){He(!gke(n.id),"Imported element already has global FQN");const o=BO(r,n.id);if(this._elements.has(o))throw new Error(`Element ${o} already exists`);const a=new mx(this,Object.freeze({...n,id:o}));this._elements.set(a.id,a);let i=zb(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=zb(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 aL(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=t1(o.id,a.id);if(i)for(const l of[i,...Du(i)])this._internal.get(l).add(n);for(const l of Du(o.id)){if(l===i)break;this._outgoing.get(l).add(n)}for(const l of Du(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:{}})})(Fu||(Fu={}));function vx(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var Zke=e=>typeof e=="object"&&e!==null;function Vu(e){return Object.fromEntries(Object.entries(e??{}).filter(([r,n])=>n!==void 0))}var Kke=e=>e==="base";function Qke(e){return e.slice().filter(r=>!Kke(r))}function iL(e){return String.fromCharCode(e+(e>25?39:97))}function Jke(e){let r="",n;for(n=Math.abs(e);n>52;n=n/52|0)r=iL(n%52)+r;return iL(n%52)+r}function e5e(e,r){let n=r.length;for(;n;)e=e*33^r.charCodeAt(--n);return e}function t5e(e){return Jke(e5e(5381,e)>>>0)}var lL=/\s*!(important)?/i;function r5e(e){return typeof e=="string"?lL.test(e):!1}function n5e(e){return typeof e=="string"?e.replace(lL,"").trim():e}function a7(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}},o5e=new Set(["__proto__","constructor","prototype"]);function i7(...e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{if(o5e.has(o))return;const a=r[o],i=n[o];vx(a)&&vx(i)?r[o]=i7(a,i):r[o]=i}),r),{})}var a5e=e=>e!=null;function l7(e,r,n={}){const{stop:o,getKey:a}=n;function i(l,s=[]){if(Zke(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);a5e(g)&&(c[p]=g)}return c}return r(l,s)}return i(e)}function i5e(e,r){return Array.isArray(e)?e.map(n=>r(n)):vx(e)?l7(e,n=>r(n)):r(e)}function l5e(e,r){return e.reduce((n,o,a)=>{const i=r[a];return o!=null&&(n[i]=o),n},{})}function sL(e,r,n=!0){const{utility:o,conditions:a}=r,{hasShorthand:i,resolveShorthand:l}=o;return l7(e,s=>Array.isArray(s)?l5e(s,a.breakpoints.keys):s,{stop:s=>Array.isArray(s),getKey:n?s=>i?l(s):s:void 0})}var s5e={shift:e=>e,finalize:e=>e,breakpoints:{keys:[]}},c5e=e=>typeof e=="string"?e.replaceAll(/[\n\s]+/g," "):e;function cL(e){const{utility:r,hash:n,conditions:o=s5e}=e,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,t5e))}else c=[...o.finalize(l),a(s)].join(":");return c};return Zn(({base:l,...s}={})=>{const c=Object.assign(s,l),d=sL(c,e),u=new Set;return l7(d,(p,f)=>{if(p==null)return;const g=r5e(p),[v,...w]=o.shift(f),x=Qke(w),k=r.transform(v,n5e(c5e(p)));let C=i(x,k.className);g&&(C=`${C}!`),u.add(C)}),Array.from(u).join(" ")})}function d5e(...e){return e.flat().filter(r=>vx(r)&&Object.keys(Vu(r)).length>0)}function u5e(e){function r(a){const i=d5e(...a);return i.length===1?i:i.map(l=>sL(l,e))}function n(...a){return i7(...r(a))}function o(...a){return Object.assign({},...r(a))}return{mergeCss:Zn(n),assignCss:o}}var p5e=/([A-Z])/g,h5e=/^ms-/,f5e=Zn(e=>e.startsWith("--")?e:e.replace(p5e,"-$1").replace(h5e,"-ms-").toLowerCase()),m5e=["min","max","clamp","calc"],g5e=new RegExp(`^(${m5e.join("|")})\\(.*\\)`),y5e=e=>typeof e=="string"&&g5e.test(e),v5e="cm,mm,Q,in,pc,pt,px,em,ex,ch,rem,lh,rlh,vw,vh,vmin,vmax,vb,vi,svw,svh,lvw,lvh,dvw,dvh,cqw,cqh,cqi,cqb,cqmin,cqmax,%",b5e=`(?:${v5e.split(",").join("|")})`,x5e=new RegExp(`^[+-]?[0-9]*.?[0-9]+(?:[eE][+-]?[0-9]+)?${b5e}$`),w5e=e=>typeof e=="string"&&x5e.test(e),k5e=e=>typeof e=="string"&&/^var\(--.+\)$/.test(e),R1={map:i5e,isCssFunction:y5e,isCssVar:k5e,isCssUnit:w5e},z1=(e,r)=>{if(!e?.defaultValues)return r;const n=typeof e.defaultValues=="function"?e.defaultValues(r):e.defaultValues;return Object.assign({},n,Vu(r))},_5e=(e={})=>{const r=o=>({className:[e.className,o].filter(Boolean).join("__"),base:e.base?.[o]??{},variants:{},defaultVariants:e.defaultVariants??{},compoundVariants:e.compoundVariants?s7(e.compoundVariants,o):[]}),n=(e.slots??[]).map(o=>[o,r(o)]);for(const[o,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)},s7=(e,r)=>e.filter(n=>n.css[r]).map(n=>({...n,css:n.css[r]}));function Fn(e,...r){const n=Object.getOwnPropertyDescriptors(e),o=Object.keys(n),a=l=>{const s={};for(let c=0;ca(Array.isArray(l)?l:o.filter(l));return r.map(i).concat(a(o))}var c7=(...e)=>{const r=e.reduce((n,o)=>(o&&o.forEach(a=>n.add(a)),n),new Set([]));return Array.from(r)},dL=["htmlSize","htmlTranslate","htmlWidth","htmlHeight"];function S5e(e){return dL.includes(e)?e.replace("html","").toLowerCase():e}function d7(e){return Object.fromEntries(Object.entries(e).map(([r,n])=>[S5e(r),n]))}d7.keys=dL;const E5e="_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_complete,_incomplete,_dragging,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_grabbed,_underValue,_overValue,_atValue,_default,_optional,_open,_closed,_fullscreen,_loading,_hidden,_current,_currentPage,_currentStep,_today,_unavailable,_rangeStart,_rangeEnd,_now,_topmost,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_icon,_starting,_noscript,_invertedColors,_shapeSizeXs,_shapeSizeSm,_shapeSizeMd,_shapeSizeLg,_shapeSizeXl,_shapeRectangle,_shapePerson,_shapeBrowser,_shapeMobile,_shapeCylinder,_shapeStorage,_shapeQueue,_notDisabled,_reduceGraphics,_reduceGraphicsOnPan,_noReduceGraphics,_whenPanning,_smallZoom,_compoundTransparent,_edgeActive,_whenHovered,_whenSelectable,_whenSelected,_whenDimmed,_whenFocused,_p3,_srgb,_rec2020,xs,xsOnly,xsDown,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,xsToSm,xsToMd,xsToLg,xsToXl,smToMd,smToLg,smToXl,mdToLg,mdToXl,lgToXl,@/xs,@/sm,@/md,@/lg,@likec4-root/xs,@likec4-root/sm,@likec4-root/md,@likec4-root/lg,@likec4-dialog/xs,@likec4-dialog/sm,@likec4-dialog/md,@likec4-dialog/lg,base",uL=new Set(E5e.split(",")),C5e=/^@|&|&$/;function pL(e){return uL.has(e)||C5e.test(e)}const $5e=/^_/,R5e=/&|@/;function hL(e){return e.map(r=>uL.has(r)?r.replace($5e,""):R5e.test(r)?`[${a7(r.trim())}]`:r)}function fL(e){return e.sort((r,n)=>{const o=pL(r),a=pL(n);return o&&!a?1:!o&&a?-1:0})}const z5e="aspectRatio:asp,boxDecorationBreak:bx-db,zIndex:z,boxSizing:bx-s,objectPosition:obj-p,objectFit:obj-f,overscrollBehavior:ovs-b,overscrollBehaviorX:ovs-bx,overscrollBehaviorY:ovs-by,position:pos/1,top:top,left:left,inset:inset,insetInline:inset-x/insetX,insetBlock:inset-y/insetY,insetBlockEnd:inset-be,insetBlockStart:inset-bs,insetInlineEnd:inset-e/insetEnd/end,insetInlineStart:inset-s/insetStart/start,right:right,bottom:bottom,float:float,visibility:vis,display:d,hideFrom:hide,hideBelow:show,flexBasis:flex-b,flex:flex,flexDirection:flex-d/flexDir,flexGrow:flex-g,flexShrink:flex-sh,gridTemplateColumns:grid-tc,gridTemplateRows:grid-tr,gridColumn:grid-c,gridRow:grid-r,gridColumnStart:grid-cs,gridColumnEnd:grid-ce,gridAutoFlow:grid-af,gridAutoColumns:grid-ac,gridAutoRows:grid-ar,gap:gap,gridGap:grid-g,gridRowGap:grid-rg,gridColumnGap:grid-cg,rowGap:rg,columnGap:cg,justifyContent:jc,alignContent:ac,alignItems:ai,alignSelf:as,padding:p/1,paddingLeft:pl/1,paddingRight:pr/1,paddingTop:pt/1,paddingBottom:pb/1,paddingBlock:py/1/paddingY,paddingBlockEnd:pbe,paddingBlockStart:pbs,paddingInline:px/paddingX/1,paddingInlineEnd:pe/1/paddingEnd,paddingInlineStart:ps/1/paddingStart,marginLeft:ml/1,marginRight:mr/1,marginTop:mt/1,marginBottom:mb/1,margin:m/1,marginBlock:my/1/marginY,marginBlockEnd:mbe,marginBlockStart:mbs,marginInline:mx/1/marginX,marginInlineEnd:me/1/marginEnd,marginInlineStart:ms/1/marginStart,spaceX:sx,spaceY:sy,outlineWidth:ring-w/ringWidth,outlineColor:ring-c/ringColor,outline:ring/1,outlineOffset:ring-o/ringOffset,focusRing:focus-ring,focusVisibleRing:focus-v-ring,focusRingColor:focus-ring-c,focusRingOffset:focus-ring-o,focusRingWidth:focus-ring-w,focusRingStyle:focus-ring-s,divideX:dvd-x,divideY:dvd-y,divideColor:dvd-c,divideStyle:dvd-s,width:w/1,inlineSize:w-is,minWidth:min-w/minW,minInlineSize:min-w-is,maxWidth:max-w/maxW,maxInlineSize:max-w-is,height:h/1,blockSize:h-bs,minHeight:min-h/minH,minBlockSize:min-h-bs,maxHeight:max-h/maxH,maxBlockSize:max-b,boxSize:size,color:c,fontFamily:ff,fontSize:fs,fontSizeAdjust:fs-a,fontPalette:fp,fontKerning:fk,fontFeatureSettings:ff-s,fontWeight:fw,fontSmoothing:fsmt,fontVariant:fv,fontVariantAlternates:fv-alt,fontVariantCaps:fv-caps,fontVariationSettings:fv-s,fontVariantNumeric:fv-num,letterSpacing:ls,lineHeight:lh,textAlign:ta,textDecoration:td,textDecorationColor:td-c,textEmphasisColor:te-c,textDecorationStyle:td-s,textDecorationThickness:td-t,textUnderlineOffset:tu-o,textTransform:tt,textIndent:ti,textShadow:tsh,textShadowColor:tsh-c/textShadowColor,WebkitTextFillColor:wktf-c,textOverflow:tov,verticalAlign:va,wordBreak:wb,textWrap:tw,truncate:trunc,lineClamp:lc,listStyleType:li-t,listStylePosition:li-pos,listStyleImage:li-img,listStyle:li-s,backgroundPosition:bg-p/bgPosition,backgroundPositionX:bg-p-x/bgPositionX,backgroundPositionY:bg-p-y/bgPositionY,backgroundAttachment:bg-a/bgAttachment,backgroundClip:bg-cp/bgClip,background:bg/1,backgroundColor:bg-c/bgColor,backgroundOrigin:bg-o/bgOrigin,backgroundImage:bg-i/bgImage,backgroundRepeat:bg-r/bgRepeat,backgroundBlendMode:bg-bm/bgBlendMode,backgroundSize:bg-s/bgSize,backgroundGradient:bg-grad/bgGradient,backgroundLinear:bg-linear/bgLinear,backgroundRadial:bg-radial/bgRadial,backgroundConic:bg-conic/bgConic,textGradient:txt-grad,gradientFromPosition:grad-from-pos,gradientToPosition:grad-to-pos,gradientFrom:grad-from,gradientTo:grad-to,gradientVia:grad-via,gradientViaPosition:grad-via-pos,borderRadius:bdr/rounded,borderTopLeftRadius:bdr-tl/roundedTopLeft,borderTopRightRadius:bdr-tr/roundedTopRight,borderBottomRightRadius:bdr-br/roundedBottomRight,borderBottomLeftRadius:bdr-bl/roundedBottomLeft,borderTopRadius:bdr-t/roundedTop,borderRightRadius:bdr-r/roundedRight,borderBottomRadius:bdr-b/roundedBottom,borderLeftRadius:bdr-l/roundedLeft,borderStartStartRadius:bdr-ss/roundedStartStart,borderStartEndRadius:bdr-se/roundedStartEnd,borderStartRadius:bdr-s/roundedStart,borderEndStartRadius:bdr-es/roundedEndStart,borderEndEndRadius:bdr-ee/roundedEndEnd,borderEndRadius:bdr-e/roundedEnd,border:bd,borderWidth:bd-w,borderTopWidth:bd-t-w,borderLeftWidth:bd-l-w,borderRightWidth:bd-r-w,borderBottomWidth:bd-b-w,borderBlockStartWidth:bd-bs-w,borderBlockEndWidth:bd-be-w,borderColor:bd-c,borderInline:bd-x/borderX,borderInlineWidth:bd-x-w/borderXWidth,borderInlineColor:bd-x-c/borderXColor,borderBlock:bd-y/borderY,borderBlockWidth:bd-y-w/borderYWidth,borderBlockColor:bd-y-c/borderYColor,borderLeft:bd-l,borderLeftColor:bd-l-c,borderInlineStart:bd-s/borderStart,borderInlineStartWidth:bd-s-w/borderStartWidth,borderInlineStartColor:bd-s-c/borderStartColor,borderRight:bd-r,borderRightColor:bd-r-c,borderInlineEnd:bd-e/borderEnd,borderInlineEndWidth:bd-e-w/borderEndWidth,borderInlineEndColor:bd-e-c/borderEndColor,borderTop:bd-t,borderTopColor:bd-t-c,borderBottom:bd-b,borderBottomColor:bd-b-c,borderBlockEnd:bd-be,borderBlockEndColor:bd-be-c,borderBlockStart:bd-bs,borderBlockStartColor:bd-bs-c,opacity:op,boxShadow:bx-sh/shadow,boxShadowColor:bx-sh-c/shadowColor,mixBlendMode:mix-bm,filter:filter,brightness:brightness,contrast:contrast,grayscale:grayscale,hueRotate:hue-rotate,invert:invert,saturate:saturate,sepia:sepia,dropShadow:drop-shadow,blur:blur,backdropFilter:bkdp,backdropBlur:bkdp-blur,backdropBrightness:bkdp-brightness,backdropContrast:bkdp-contrast,backdropGrayscale:bkdp-grayscale,backdropHueRotate:bkdp-hue-rotate,backdropInvert:bkdp-invert,backdropOpacity:bkdp-opacity,backdropSaturate:bkdp-saturate,backdropSepia:bkdp-sepia,borderCollapse:bd-cl,borderSpacing:bd-sp,borderSpacingX:bd-sx,borderSpacingY:bd-sy,tableLayout:tbl,transitionTimingFunction:trs-tmf,transitionDelay:trs-dly,transitionDuration:trs-dur,transitionProperty:trs-prop,transition:transition,animation:anim,animationName:anim-n,animationTimingFunction:anim-tmf,animationDuration:anim-dur,animationDelay:anim-dly,animationPlayState:anim-ps,animationComposition:anim-comp,animationFillMode:anim-fm,animationDirection:anim-dir,animationIterationCount:anim-ic,animationRange:anim-r,animationState:anim-s,animationRangeStart:anim-rs,animationRangeEnd:anim-re,animationTimeline:anim-tl,transformOrigin:trf-o,transformBox:trf-b,transformStyle:trf-s,transform:trf,rotate:rotate,rotateX:rotate-x,rotateY:rotate-y,rotateZ:rotate-z,scale:scale,scaleX:scale-x,scaleY:scale-y,translate:translate,translateX:translate-x/x,translateY:translate-y/y,translateZ:translate-z/z,accentColor:ac-c,caretColor:ca-c,scrollBehavior:scr-bhv,scrollbar:scr-bar,scrollbarColor:scr-bar-c,scrollbarGutter:scr-bar-g,scrollbarWidth:scr-bar-w,scrollMargin:scr-m,scrollMarginLeft:scr-ml,scrollMarginRight:scr-mr,scrollMarginTop:scr-mt,scrollMarginBottom:scr-mb,scrollMarginBlock:scr-my/scrollMarginY,scrollMarginBlockEnd:scr-mbe,scrollMarginBlockStart:scr-mbt,scrollMarginInline:scr-mx/scrollMarginX,scrollMarginInlineEnd:scr-me,scrollMarginInlineStart:scr-ms,scrollPadding:scr-p,scrollPaddingBlock:scr-py/scrollPaddingY,scrollPaddingBlockStart:scr-pbs,scrollPaddingBlockEnd:scr-pbe,scrollPaddingInline:scr-px/scrollPaddingX,scrollPaddingInlineEnd:scr-pe,scrollPaddingInlineStart:scr-ps,scrollPaddingLeft:scr-pl,scrollPaddingRight:scr-pr,scrollPaddingTop:scr-pt,scrollPaddingBottom:scr-pb,scrollSnapAlign:scr-sa,scrollSnapStop:scrs-s,scrollSnapType:scrs-t,scrollSnapStrictness:scrs-strt,scrollSnapMargin:scrs-m,scrollSnapMarginTop:scrs-mt,scrollSnapMarginBottom:scrs-mb,scrollSnapMarginLeft:scrs-ml,scrollSnapMarginRight:scrs-mr,scrollSnapCoordinate:scrs-c,scrollSnapDestination:scrs-d,scrollSnapPointsX:scrs-px,scrollSnapPointsY:scrs-py,scrollSnapTypeX:scrs-tx,scrollSnapTypeY:scrs-ty,scrollTimeline:scrtl,scrollTimelineAxis:scrtl-a,scrollTimelineName:scrtl-n,touchAction:tch-a,userSelect:us,overflow:ov,overflowWrap:ov-wrap,overflowX:ov-x,overflowY:ov-y,overflowAnchor:ov-a,overflowBlock:ov-b,overflowInline:ov-i,overflowClipBox:ovcp-bx,overflowClipMargin:ovcp-m,overscrollBehaviorBlock:ovs-bb,overscrollBehaviorInline:ovs-bi,fill:fill,stroke:stk,strokeWidth:stk-w,strokeDasharray:stk-dsh,strokeDashoffset:stk-do,strokeLinecap:stk-lc,strokeLinejoin:stk-lj,strokeMiterlimit:stk-ml,strokeOpacity:stk-op,srOnly:sr,debug:debug,appearance:ap,backfaceVisibility:bfv,clipPath:cp-path,hyphens:hy,mask:msk,maskImage:msk-i,maskSize:msk-s,textSizeAdjust:txt-adj,container:cq,containerName:cq-n,containerType:cq-t,cursor:cursor,textStyle:textStyle,layerStyle:layerStyle,animationStyle:animationStyle",mL=new Map,gL=new Map;z5e.split(",").forEach(e=>{const[r,n]=e.split(":"),[o,...a]=n.split("/");mL.set(r,o),a.length&&a.forEach(i=>{gL.set(i==="1"?o:i,r)})});const yL=e=>gL.get(e)||e,vL={conditions:{shift:fL,finalize:hL,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{transform:(e,r)=>{const n=yL(e);return{className:`${mL.get(n)||f5e(n)}_${a7(r)}`}},hasShorthand:!0,toHash:(e,r)=>r(e.join(":")),resolveShorthand:yL}},T5e=cL(vL),fe=(...e)=>T5e(qu(...e));fe.raw=(...e)=>qu(...e);const{mergeCss:qu}=u5e(vL);function Ge(){let e="",r=0,n;for(;r({base:{},variants:{},defaultVariants:{},compoundVariants:[],...e});function T1(e){const{base:r,variants:n,defaultVariants:o,compoundVariants:a}=bL(e),i=f=>({...o,...Vu(f)});function l(f={}){const g=i(f);let v={...r};for(const[x,k]of Object.entries(g))n[x]?.[k]&&(v=qu(v,n[x][k]));const w=u7(a,g);return qu(v,w)}function s(f){const g=bL(f.config),v=c7(f.variantKeys,Object.keys(n));return T1({base:qu(r,g.base),variants:Object.fromEntries(v.map(w=>[w,qu(n[w],g.variants[w])])),defaultVariants:i7(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 u7(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=qu(n,o.css))}),n}function j5e(e,r,n,o){if(r.length>0&&typeof n?.[o]=="object")throw new Error(`[recipe:${e}:${o}] Conditions are not supported when using compound variants.`)}function A5e(e){const r=Object.entries(_5e(e)).map(([p,f])=>[p,T1(f)]),n=e.defaultVariants??{},o=r.reduce((p,[f,g])=>(e.className&&(p[f]=g.config.className),p),{});function 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,...Vu(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 D5e={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};const wt=(e,r,n,o)=>{const 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,...D5e[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},M5e=[["path",{d:"M12 6m-7 0a7 3 0 1 0 14 0a7 3 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M5 6v12c0 1.657 3.134 3 7 3s7 -1.343 7 -3v-12",key:"svg-1"}]],xL=wt("outline","cylinder","Cylinder",M5e),N5e=[["path",{d:"M21 14.008v-5.018a1.98 1.98 0 0 0 -1 -1.717l-4 -2.008a2.016 2.016 0 0 0 -2 0l-10 5.008c-.619 .355 -1 1.01 -1 1.718v5.018c0 .709 .381 1.363 1 1.717l4 2.008a2.016 2.016 0 0 0 2 0l10 -5.008c.619 -.355 1 -1.01 1 -1.718z",key:"svg-0"}],["path",{d:"M9 21v-7.5",key:"svg-1"}],["path",{d:"M9 13.5l11.5 -5.5",key:"svg-2"}],["path",{d:"M3.5 11l5.5 2.5",key:"svg-3"}]],P5e=wt("outline","rectangular-prism","RectangularPrism",N5e),B5e=[["path",{d:"M3 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-0"}],["path",{d:"M10 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-1"}],["path",{d:"M17 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-2"}],["path",{d:"M5 11v-3a3 3 0 0 1 3 -3h8a3 3 0 0 1 3 3v3",key:"svg-3"}],["path",{d:"M16.5 8.5l2.5 2.5l2.5 -2.5",key:"svg-4"}]],I5e=wt("outline","reorder","Reorder",B5e),O5e=[["path",{d:"M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0",key:"svg-0"}],["path",{d:"M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2",key:"svg-1"}]],L5e=wt("outline","user","User",O5e),F5e=[["path",{d:"M6 5a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2v-14z",key:"svg-0"}],["path",{d:"M11 4h2",key:"svg-1"}],["path",{d:"M12 17v.01",key:"svg-2"}]],V5e=wt("outline","device-mobile","DeviceMobile",F5e),q5e=[["path",{d:"M4 8h16",key:"svg-0"}],["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-1"}],["path",{d:"M8 4v4",key:"svg-2"}]],H5e=wt("outline","browser","Browser",q5e),p7=S.createContext(null);function U5e({value:e,children:r}){return S.useContext(p7)?y.jsx(y.Fragment,{children:r}):y.jsx(p7.Provider,{value:e,children:r})}function bx({element:e,className:r,style:n}){const o=S.useContext(p7);if(!e||!e.icon||e.icon==="none")return null;let 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 W5e={browser:H5e,cylinder:xL,mobile:V5e,person:L5e,queue:I5e,rectangle:P5e,storage:xL};function G5e({element:e,className:r}){const n=y.jsx(bx,{element:e,className:r});if(n)return n;const o=W5e[e.shape];return y.jsx("div",{className:Ge(r,"likec4-shape-icon"),children:y.jsx(o,{})})}function Kh(e){const r=S.useRef(e);return r.current=e,S.useMemo(()=>Object.freeze({get current(){return r.current}}),[])}function wL(e){const r=Kh(e);S.useEffect(()=>()=>{r.current()},[])}function h7(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 wL(c),S.useEffect(()=>{l.current=e},r),S.useMemo(()=>{const d=()=>{if(c(),!s.current)return;const p=s.current;s.current=void 0,l.current.apply(p.this,p.args)},u=function(...p){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 Y5e=()=>{},xx=typeof globalThis<"u"&&typeof navigator<"u"&&typeof document<"u";function X5e(e){const r=Kh(e),n=S.useRef(0),o=S.useCallback(()=>{xx&&n.current&&(cancelAnimationFrame(n.current),n.current=0)},[]);return wL(o),[S.useMemo(()=>{const a=(...i)=>{xx&&(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 Z5e=(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 K5e(e,r,n=Z5e,o=S.useEffect,...a){const i=S.useRef(void 0);(i.current===void 0||xx&&!n(i.current,r))&&(i.current=r),o(e,i.current,...a)}function kL(){const e=S.useRef(!0);return S.useEffect(()=>{e.current=!1},[]),e.current}const f7=xx?S.useLayoutEffect:S.useEffect;function Q5e(e){S.useEffect(()=>{e()},[])}function _L(e,r){const[n,o]=X5e(e);S.useEffect(()=>(n(),o),r)}const J5e=e=>(e+1)%Number.MAX_SAFE_INTEGER;function e6e(){const[,e]=S.useState(0);return S.useCallback(()=>{e(J5e)},[])}function t6e(e,r){const n=kL();S.useEffect(n?Y5e:e,r)}const r6e=e=>{e&&clearTimeout(e)};function wx(e,r){const n=Kh(e),o=Kh(r),a=S.useRef(null),i=S.useCallback(()=>{r6e(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 SL=(e,r,n)=>{const o=S.useRef(void 0);return(o.current===void 0||!n(o.current,r))&&(o.current=r),S.useMemo(e,o.current)};function dn(e){if(typeof e=="string"||typeof e=="number")return""+e;let r="";if(Array.isArray(e))for(let n=0,o;n{}};function kx(){for(var e=0,r=arguments.length,n={},o;e=0&&(o=n.slice(a+1),n=n.slice(0,a)),n&&!r.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:o}})}_x.prototype=kx.prototype={constructor:_x,on:function(e,r){var n=this._,o=o6e(e+"",n),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)),CL.hasOwnProperty(r)?{space:CL[r],local:e}:e}function i6e(e){return function(){var r=this.ownerDocument,n=this.namespaceURI;return n===m7&&r.documentElement.namespaceURI===m7?r.createElement(e):r.createElementNS(n,e)}}function l6e(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function $L(e){var r=Sx(e);return(r.local?l6e:i6e)(r)}function s6e(){}function g7(e){return e==null?s6e:function(){return this.querySelector(e)}}function c6e(e){typeof e!="function"&&(e=g7(e));for(var r=this._groups,n=r.length,o=new Array(n),a=0;a=_&&(_=C+1);!(R=x[_])&&++_=0;)(l=o[a])&&(i&&l.compareDocumentPosition(i)^4&&i.parentNode.insertBefore(l,i),i=l);return this}function M6e(e){e||(e=N6e);function r(p,f){return p&&f?e(p.__data__,f.__data__):!p-!f}for(var n=this._groups,o=n.length,a=new Array(o),i=0;ir?1:e>=r?0:NaN}function P6e(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function B6e(){return Array.from(this)}function I6e(){for(var e=this._groups,r=0,n=e.length;r1?this.each((r==null?X6e:typeof r=="function"?K6e:Z6e)(e,r,n??"")):Qh(this.node(),e)}function Qh(e,r){return e.style.getPropertyValue(r)||AL(e).getComputedStyle(e,null).getPropertyValue(r)}function J6e(e){return function(){delete this[e]}}function e_e(e,r){return function(){this[e]=r}}function t_e(e,r){return function(){var n=r.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function r_e(e,r){return arguments.length>1?this.each((r==null?J6e:typeof r=="function"?t_e:e_e)(e,r)):this.node()[e]}function DL(e){return e.trim().split(/^|\s+/)}function y7(e){return e.classList||new ML(e)}function ML(e){this._node=e,this._names=DL(e.getAttribute("class")||"")}ML.prototype={add:function(e){var r=this._names.indexOf(e);r<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var r=this._names.indexOf(e);r>=0&&(this._names.splice(r,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function NL(e,r){for(var n=y7(e),o=-1,a=r.length;++o=0&&(n=r.slice(o+1),r=r.slice(0,o)),{type:r,name:n}})}function T_e(e){return function(){var r=this.__on;if(r){for(var n=0,o=-1,a=r.length,i;n()=>e;function b7(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}})}b7.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function L_e(e){return!e.ctrlKey&&!e.button}function F_e(){return this.parentNode}function V_e(e,r){return r??{x:e.x,y:e.y}}function q_e(){return navigator.maxTouchPoints||"ontouchstart"in this}function FL(){var e=L_e,r=F_e,n=V_e,o=q_e,a={},i=kx("start","drag","end"),l=0,s,c,d,u,p=0;function f($){$.on("mousedown.drag",g).filter(o).on("touchstart.drag",x).on("touchmove.drag",k,O_e).on("touchend.drag touchcancel.drag",C).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g($,R){if(!(u||!e.call(this,$,R))){var T=_(this,r.call(this,$,R),$,R,"mouse");T&&(Ea($.view).on("mousemove.drag",v,A1).on("mouseup.drag",w,A1),OL($.view),v7($),d=!1,s=$.clientX,c=$.clientY,T("start",$))}}function v($){if(Jh($),!d){var R=$.clientX-s,T=$.clientY-c;d=R*R+T*T>p}a.mouse("drag",$)}function w($){Ea($.view).on("mousemove.drag mouseup.drag",null),LL($.view,d),Jh($),a.mouse("end",$)}function x($,R){if(e.call(this,$,R)){var T=$.changedTouches,A=r.call(this,$,R),z=T.length,j,I;for(j=0;j>8&15|r>>4&240,r>>4&15|r&240,(r&15)<<4|r&15,1):n===8?Rx(r>>24&255,r>>16&255,r>>8&255,(r&255)/255):n===4?Rx(r>>12&15|r>>8&240,r>>8&15|r>>4&240,r>>4&15|r&240,((r&15)<<4|r&15)/255):null):(r=U_e.exec(e))?new ra(r[1],r[2],r[3],1):(r=W_e.exec(e))?new ra(r[1]*255/100,r[2]*255/100,r[3]*255/100,1):(r=G_e.exec(e))?Rx(r[1],r[2],r[3],r[4]):(r=Y_e.exec(e))?Rx(r[1]*255/100,r[2]*255/100,r[3]*255/100,r[4]):(r=X_e.exec(e))?XL(r[1],r[2]/100,r[3]/100,1):(r=Z_e.exec(e))?XL(r[1],r[2]/100,r[3]/100,r[4]):qL.hasOwnProperty(e)?WL(qL[e]):e==="transparent"?new ra(NaN,NaN,NaN,0):null}function WL(e){return new ra(e>>16&255,e>>8&255,e&255,1)}function Rx(e,r,n,o){return o<=0&&(e=r=n=NaN),new ra(e,r,n,o)}function J_e(e){return e instanceof D1||(e=Hu(e)),e?(e=e.rgb(),new ra(e.r,e.g,e.b,e.opacity)):new ra}function w7(e,r,n,o){return arguments.length===1?J_e(e):new ra(e,r,n,o??1)}function ra(e,r,n,o){this.r=+e,this.g=+r,this.b=+n,this.opacity=+o}x7(ra,w7,VL(D1,{brighter(e){return e=e==null?$x:Math.pow($x,e),new ra(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?M1:Math.pow(M1,e),new ra(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ra(Uu(this.r),Uu(this.g),Uu(this.b),zx(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:GL,formatHex:GL,formatHex8:e8e,formatRgb:YL,toString:YL}));function GL(){return`#${Wu(this.r)}${Wu(this.g)}${Wu(this.b)}`}function e8e(){return`#${Wu(this.r)}${Wu(this.g)}${Wu(this.b)}${Wu((isNaN(this.opacity)?1:this.opacity)*255)}`}function YL(){const e=zx(this.opacity);return`${e===1?"rgb(":"rgba("}${Uu(this.r)}, ${Uu(this.g)}, ${Uu(this.b)}${e===1?")":`, ${e})`}`}function zx(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Uu(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Wu(e){return e=Uu(e),(e<16?"0":"")+e.toString(16)}function XL(e,r,n,o){return o<=0?e=r=n=NaN:n<=0||n>=1?e=r=NaN:r<=0&&(e=NaN),new Yi(e,r,n,o)}function ZL(e){if(e instanceof Yi)return new Yi(e.h,e.s,e.l,e.opacity);if(e instanceof D1||(e=Hu(e)),!e)return new Yi;if(e instanceof Yi)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 Yi(l,s,c,e.opacity)}function t8e(e,r,n,o){return arguments.length===1?ZL(e):new Yi(e,r,n,o??1)}function Yi(e,r,n,o){this.h=+e,this.s=+r,this.l=+n,this.opacity=+o}x7(Yi,t8e,VL(D1,{brighter(e){return e=e==null?$x:Math.pow($x,e),new Yi(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?M1:Math.pow(M1,e),new Yi(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 ra(k7(e>=240?e-240:e+120,a,o),k7(e,a,o),k7(e<120?e+240:e-120,a,o),this.opacity)},clamp(){return new Yi(KL(this.h),Tx(this.s),Tx(this.l),zx(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=zx(this.opacity);return`${e===1?"hsl(":"hsla("}${KL(this.h)}, ${Tx(this.s)*100}%, ${Tx(this.l)*100}%${e===1?")":`, ${e})`}`}}));function KL(e){return e=(e||0)%360,e<0?e+360:e}function Tx(e){return Math.max(0,Math.min(1,e||0))}function k7(e,r,n){return(e<60?r+(n-r)*e/60:e<180?n:e<240?r+(n-r)*(240-e)/60:r)*255}const _7=e=>()=>e;function r8e(e,r){return function(n){return e+n*r}}function n8e(e,r,n){return e=Math.pow(e,n),r=Math.pow(r,n)-e,n=1/n,function(o){return Math.pow(e+o*r,n)}}function o8e(e){return(e=+e)==1?QL:function(r,n){return n-r?n8e(r,n,e):_7(isNaN(r)?n:r)}}function QL(e,r){var n=r-e;return n?r8e(e,n):_7(isNaN(e)?r:e)}const jx=(function e(r){var n=o8e(r);function o(a,i){var l=n((a=w7(a)).r,(i=w7(i)).r),s=n(a.g,i.g),c=n(a.b,i.b),d=QL(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 a8e(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:Ul(o,a)})),n=E7.lastIndex;return n180?u+=360:u-d>180&&(d+=360),f.push({i:p.push(a(p)+"rotate(",null,o)-2,x:Ul(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:Ul(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:Ul(d,p)},{i:w-2,x:Ul(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;--tf}function sF(){Gu=(Nx=L1.now())+Px,tf=B1=0;try{x8e()}finally{tf=0,k8e(),Gu=0}}function w8e(){var e=L1.now(),r=e-Nx;r>aF&&(Px-=r,Nx=e)}function k8e(){for(var e,r=Mx,n,o=1/0;r;)r._call?(o>r._time&&(o=r._time),e=r,r=r._next):(n=r._next,r._next=null,r=e?e._next=n:Mx=n);O1=e,$7(o)}function $7(e){if(!tf){B1&&(B1=clearTimeout(B1));var r=e-Gu;r>24?(e<1/0&&(B1=setTimeout(sF,e-L1.now()-Px)),I1&&(I1=clearInterval(I1))):(I1||(Nx=L1.now(),I1=setInterval(w8e,aF)),tf=1,iF(sF))}}function cF(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 _8e=kx("start","end","cancel","interrupt"),S8e=[],dF=0,uF=1,R7=2,Ix=3,pF=4,z7=5,Ox=6;function Lx(e,r,n,o,a,i){var l=e.__transition;if(!l)e.__transition={};else if(n in l)return;E8e(e,n,{name:r,index:o,group:a,on:_8e,tween:S8e,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:dF})}function T7(e,r){var n=Xi(e,r);if(n.state>dF)throw new Error("too late; already scheduled");return n}function Wl(e,r){var n=Xi(e,r);if(n.state>Ix)throw new Error("too late; already running");return n}function Xi(e,r){var n=e.__transition;if(!n||!(n=n[r]))throw new Error("transition not found");return n}function E8e(e,r,n){var o=e.__transition,a;o[r]=n,n.timer=lF(i,0,n.time);function i(d){n.state=uF,n.timer.restart(l,n.delay,n.time),n.delay<=d&&l(d-n.delay)}function l(d){var u,p,f,g;if(n.state!==uF)return c();for(u in o)if(g=o[u],g.name===n.name){if(g.state===Ix)return cF(l);g.state===pF?(g.state=Ox,g.timer.stop(),g.on.call("interrupt",e,e.__data__,g.index,g.group),delete o[u]):+uR7&&o.state=0&&(r=r.slice(0,n)),!r||r==="start"})}function t7e(e,r,n){var o,a,i=e7e(r)?T7:Wl;return function(){var l=i(this,e),s=l.on;s!==o&&(a=(o=s).copy()).on(r,n),l.on=a}}function r7e(e,r){var n=this._id;return arguments.length<2?Xi(this.node(),n).on.on(e):this.each(t7e(n,e,r))}function n7e(e){return function(){var r=this.parentNode;for(var n in this.__transition)if(+n!==e)return;r&&r.removeChild(this)}}function o7e(){return this.on("end.remove",n7e(this._id))}function a7e(e){var r=this._name,n=this._id;typeof e!="function"&&(e=g7(e));for(var o=this._groups,a=o.length,i=new Array(a),l=0;l()=>e;function T7e(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 Us(e,r,n){this.k=e,this.x=r,this.y=n}Us.prototype={constructor:Us,scale:function(e){return e===1?this:new Us(this.k*e,this.x,this.y)},translate:function(e,r){return e===0&r===0?this:new Us(this.k,this.x+this.k*e,this.y+this.k*r)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var qx=new Us(1,0,0);gF.prototype=Us.prototype;function gF(e){for(;!e.__zoom;)if(!(e=e.parentNode))return qx;return e.__zoom}function A7(e){e.stopImmediatePropagation()}function F1(e){e.preventDefault(),e.stopImmediatePropagation()}function j7e(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function A7e(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function yF(){return this.__zoom||qx}function D7e(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function M7e(){return navigator.maxTouchPoints||"ontouchstart"in this}function N7e(e,r,n){var o=e.invertX(r[0][0])-n[0][0],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 vF(){var e=j7e,r=A7e,n=N7e,o=D7e,a=M7e,i=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Dx,d=kx("start","zoom","end"),u,p,f,g=500,v=150,w=0,x=10;function k(M){M.property("__zoom",yF).on("wheel.zoom",z,{passive:!1}).on("mousedown.zoom",j).on("dblclick.zoom",I).filter(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",yF),M!==q?R(M,V,B,F):q.interrupt().each(function(){T(this,arguments).event(F).start().zoom(null,typeof V=="function"?V.apply(this,arguments):V).end()})},k.scaleBy=function(M,V,B,F){k.scaleTo(M,function(){var q=this.__zoom.k,G=typeof V=="function"?V.apply(this,arguments):V;return q*G},B,F)},k.scaleTo=function(M,V,B,F){k.transform(M,function(){var q=r.apply(this,arguments),G=this.__zoom,U=B==null?$(q):typeof B=="function"?B.apply(this,arguments):B,Y=G.invert(U),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(qx.translate(Y[0],Y[1]).scale(U.k).translate(typeof V=="function"?-V.apply(this,arguments):-V,typeof B=="function"?-B.apply(this,arguments):-B),G,l)},F,q)};function C(M,V){return V=Math.max(i[0],Math.min(i[1],V)),V===M.k?M:new Us(V,M.x,M.y)}function _(M,V,B){var F=V[0]-B[0]*M.k,q=V[1]-B[1]*M.k;return F===M.x&&q===M.y?M:new Us(M.k,F,q)}function $(M){return[(+M[0][0]+ +M[1][0])/2,(+M[0][1]+ +M[1][1])/2]}function R(M,V,B,F){M.on("start.zoom",function(){T(this,arguments).event(F).start()}).on("interrupt.zoom end.zoom",function(){T(this,arguments).event(F).end()}).tween("zoom",function(){var q=this,G=arguments,U=T(q,G).event(F),Y=r.apply(q,G),Z=B==null?$(Y):typeof B=="function"?B.apply(q,G):B,O=Math.max(Y[1][0]-Y[0][0],Y[1][1]-Y[0][1]),W=q.__zoom,K=typeof V=="function"?V.apply(q,G):V,Q=c(W.invert(Z).concat(O/W.k),K.invert(Z).concat(O/K.k));return function(ae){if(ae===1)ae=K;else{var te=Q(ae),re=O/te[2];ae=new Us(re,Z[0]-te[0]*re,Z[1]-te[1]*re)}U.zoom(null,ae)}})}function T(M,V,B){return!B&&M.__zooming||new A(M,V)}function A(M,V){this.that=M,this.args=V,this.active=0,this.sourceEvent=null,this.extent=r.apply(M,V),this.taps=0}A.prototype={event:function(M){return M&&(this.sourceEvent=M),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(M,V){return this.mouse&&M!=="mouse"&&(this.mouse[1]=V.invert(this.mouse[0])),this.touch0&&M!=="touch"&&(this.touch0[1]=V.invert(this.touch0[0])),this.touch1&&M!=="touch"&&(this.touch1[1]=V.invert(this.touch1[0])),this.that.__zoom=V,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(M){var V=Ea(this.that).datum();d.call(M,this.that,new T7e(M,{sourceEvent:this.sourceEvent,target:k,transform:this.that.__zoom,dispatch:d}),V)}};function z(M,...V){if(!e.apply(this,arguments))return;var B=T(this,V).event(M),F=this.__zoom,q=Math.max(i[0],Math.min(i[1],F.k*Math.pow(2,o.apply(this,arguments)))),G=Gi(M);if(B.wheel)(B.mouse[0][0]!==G[0]||B.mouse[0][1]!==G[1])&&(B.mouse[1]=F.invert(B.mouse[0]=G)),clearTimeout(B.wheel);else{if(F.k===q)return;B.mouse=[G,F.invert(G)],Fx(this),B.start()}F1(M),B.wheel=setTimeout(U,v),B.zoom("mouse",n(_(C(F,q),B.mouse[0],B.mouse[1]),B.extent,l));function U(){B.wheel=null,B.end()}}function j(M,...V){if(f||!e.apply(this,arguments))return;var B=M.currentTarget,F=T(this,V,!0).event(M),q=Ea(M.view).on("mousemove.zoom",Z,!0).on("mouseup.zoom",O,!0),G=Gi(M,B),U=M.clientX,Y=M.clientY;OL(M.view),A7(M),F.mouse=[G,this.__zoom.invert(G)],Fx(this),F.start();function Z(W){if(F1(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]=Gi(W,B),F.mouse[1]),F.extent,l))}function O(W){q.on("mousemove.zoom mouseup.zoom",null),LL(W.view,F.moved),F1(W),F.event(W).end()}}function I(M,...V){if(e.apply(this,arguments)){var B=this.__zoom,F=Gi(M.changedTouches?M.changedTouches[0]:M,this),q=B.invert(F),G=B.k*(M.shiftKey?.5:2),U=n(_(C(B,G),F,q),r.apply(this,V),l);F1(M),s>0?Ea(this).transition().duration(s).call(R,U,F,M):Ea(this).call(k.transform,U,F,M)}}function P(M,...V){if(e.apply(this,arguments)){var B=M.touches,F=B.length,q=T(this,V,M.changedTouches.length===F).event(M),G,U,Y,Z;for(A7(M),U=0;U"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:r,sourceHandle:n,targetHandle:o})=>`Couldn't create edge for ${e} handle id: "${e==="source"?n:o}", edge id: ${r}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},V1=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],bF=["Enter"," ","Escape"],xF={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:e,x:r,y:n})=>`Moved selected node ${e}. New position, x: ${r}, y: ${n}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var rf;(function(e){e.Strict="strict",e.Loose="loose"})(rf||(rf={}));var Yu;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Yu||(Yu={}));var q1;(function(e){e.Partial="partial",e.Full="full"})(q1||(q1={}));const wF={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var ad;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(ad||(ad={}));var Hx;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Hx||(Hx={}));var Ue;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(Ue||(Ue={}));const kF={[Ue.Left]:Ue.Right,[Ue.Right]:Ue.Left,[Ue.Top]:Ue.Bottom,[Ue.Bottom]:Ue.Top};function _F(e){return e===null?null:e?"valid":"invalid"}const SF=e=>"id"in e&&"source"in e&&"target"in e,P7e=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),D7=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),H1=(e,r=[0,0])=>{const{width:n,height:o}=_o(e),a=e.origin??r,i=n*a[0],l=o*a[1];return{x:e.position.x-i,y:e.position.y-l}},EF=(e,r={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((o,a)=>{const i=typeof a=="string";let l=!r.nodeLookup&&!i?a:void 0;r.nodeLookup&&(l=i?r.nodeLookup.get(a):D7(a)?a:r.nodeLookup.get(a.id));const s=l?Gx(l,r.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Ux(o,s)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Wx(n)},nf=(e,r={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},o=!1;return e.forEach(a=>{(r.filter===void 0||r.filter(a))&&(n=Ux(n,Gx(a)),o=!0)}),o?Wx(n):{x:0,y:0,width:0,height:0}},M7=(e,r,[n,o,a]=[0,0,1],i=!1,l=!1)=>{const s={...G1(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=U1(s,Zu(d)),x=(g??0)*(v??0),k=i&&w>0;(!d.internals.handleBounds||k||w>=x||d.dragging)&&c.push(d)}return c},B7e=(e,r)=>{const n=new Set;return e.forEach(o=>{n.add(o.id)}),r.filter(o=>n.has(o.source)||n.has(o.target))};function I7e(e,r){const n=new Map,o=r?.nodes?new Set(r.nodes.map(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 O7e({nodes:e,width:r,height:n,panZoom:o,minZoom:a,maxZoom:i},l){if(e.size===0)return Promise.resolve(!0);const s=I7e(e,l),c=nf(s),d=Ws(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 CF({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",Gl.error005());else{const g=s.measured.width,v=s.measured.height;g&&v&&(p=[[c,d],[c+g,d+v]])}else s&&sf(l.extent)&&(p=[[l.extent[0][0]+c,l.extent[0][1]+d],[l.extent[1][0]+c,l.extent[1][1]+d]]);const f=sf(p)?Xu(r,p,l.measured):r;return(l.measured.width===void 0||l.measured.height===void 0)&&i?.("015",Gl.error015()),{position:{x:f.x-c+(l.measured.width??0)*u[0],y:f.y-d+(l.measured.height??0)*u[1]},positionAbsolute:f}}async function L7e({nodesToRemove:e=[],edgesToRemove:r=[],nodes:n,edges:o,onBeforeDelete: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=B7e(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 of=(e,r=0,n=1)=>Math.min(Math.max(e,r),n),Xu=(e={x:0,y:0},r,n)=>({x:of(e.x,r[0][0],r[1][0]-(n?.width??0)),y:of(e.y,r[0][1],r[1][1]-(n?.height??0))});function $F(e,r,n){const{width:o,height:a}=_o(n),{x:i,y:l}=n.internals.positionAbsolute;return Xu(e,[[i,l],[i+o,l+a]],r)}const RF=(e,r,n)=>en?-of(Math.abs(e-n),1,r)/r:0,zF=(e,r,n=15,o=40)=>{const a=RF(e.x,o,r.width-o)*n,i=RF(e.y,o,r.height-o)*n;return[a,i]},Ux=(e,r)=>({x:Math.min(e.x,r.x),y:Math.min(e.y,r.y),x2:Math.max(e.x2,r.x2),y2:Math.max(e.y2,r.y2)}),N7=({x:e,y:r,width:n,height:o})=>({x:e,y:r,x2:e+n,y2:r+o}),Wx=({x:e,y:r,x2:n,y2:o})=>({x:e,y:r,width:n-e,height:o-r}),Zu=(e,r=[0,0])=>{const{x:n,y:o}=D7(e)?e.internals.positionAbsolute:H1(e,r);return{x:n,y:o,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},Gx=(e,r=[0,0])=>{const{x:n,y:o}=D7(e)?e.internals.positionAbsolute:H1(e,r);return{x:n,y:o,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:o+(e.measured?.height??e.height??e.initialHeight??0)}},TF=(e,r)=>Wx(Ux(N7(e),N7(r))),U1=(e,r)=>{const n=Math.max(0,Math.min(e.x+e.width,r.x+r.width)-Math.max(e.x,r.x)),o=Math.max(0,Math.min(e.y+e.height,r.y+r.height)-Math.max(e.y,r.y));return Math.ceil(n*o)},jF=e=>Zi(e.width)&&Zi(e.height)&&Zi(e.x)&&Zi(e.y),Zi=e=>!isNaN(e)&&isFinite(e),F7e=(e,r)=>{},W1=(e,r=[1,1])=>({x:r[0]*Math.round(e.x/r[0]),y:r[1]*Math.round(e.y/r[1])}),G1=({x:e,y:r},[n,o,a],i=!1,l=[1,1])=>{const s={x:(e-n)/a,y:(r-o)/a};return i?W1(s,l):s},Yx=({x:e,y:r},[n,o,a])=>({x:e*a+n,y:r*a+o});function af(e,r){if(typeof e=="number")return Math.floor((r-r/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(r*n*.01)}return console.error(`[React Flow] The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function V7e(e,r,n){if(typeof e=="string"||typeof e=="number"){const o=af(e,n),a=af(e,r);return{top:o,right:a,bottom:o,left:a,x:a*2,y:o*2}}if(typeof e=="object"){const o=af(e.top??e.y??0,n),a=af(e.bottom??e.y??0,n),i=af(e.left??e.x??0,r),l=af(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 q7e(e,r,n,o,a,i){const{x:l,y:s}=Yx(e,[r,n,o]),{x:c,y:d}=Yx({x:e.x+e.width,y:e.y+e.height},[r,n,o]),u=a-c,p=i-d;return{left:Math.floor(l),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(p)}}const Ws=(e,r,n,o,a,i)=>{const l=V7e(i,r,n),s=(r-l.x)/e.width,c=(n-l.y)/e.height,d=Math.min(s,c),u=of(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=q7e(e,g,v,u,r,n),x={left:Math.min(w.left-l.left,0),top:Math.min(w.top-l.top,0),right:Math.min(w.right-l.right,0),bottom:Math.min(w.bottom-l.bottom,0)};return{x:g-x.left+x.right,y:v-x.top+x.bottom,zoom:u}},lf=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function sf(e){return e!=null&&e!=="parent"}function _o(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function AF(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function DF(e,r={width:0,height:0},n,o,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 MF(e,r){if(e.size!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function H7e(){let e,r;return{promise:new Promise((n,o)=>{e=n,r=o}),resolve:e,reject:r}}function U7e(e){return{...xF,...e||{}}}function Y1(e,{snapGrid:r=[0,0],snapToGrid:n=!1,transform:o,containerBounds:a}){const{x:i,y:l}=Ki(e),s=G1({x:i-(a?.left??0),y:l-(a?.top??0)},o),{x:c,y:d}=n?W1(s,r):s;return{xSnapped:c,ySnapped:d,...s}}const P7=e=>({width:e.offsetWidth,height:e.offsetHeight}),NF=e=>e?.getRootNode?.()||window?.document,W7e=["INPUT","SELECT","TEXTAREA"];function PF(e){const r=e.composedPath?.()?.[0]||e.target;return r?.nodeType!==1?!1:W7e.includes(r.nodeName)||r.hasAttribute("contenteditable")||!!r.closest(".nokey")}const BF=e=>"clientX"in e,Ki=(e,r)=>{const n=BF(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)}},IF=(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,...P7(l)}})};function OF({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 Xx(e,r){return e>=0?.5*e:r*25*Math.sqrt(-e)}function LF({pos:e,x1:r,y1:n,x2:o,y2:a,c:i}){switch(e){case Ue.Left:return[r-Xx(r-o,i),n];case Ue.Right:return[r+Xx(o-r,i),n];case Ue.Top:return[r,n-Xx(n-a,i)];case Ue.Bottom:return[r,n+Xx(a-n,i)]}}function Zx({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:a,targetPosition:i=Ue.Top,curvature:l=.25}){const[s,c]=LF({pos:n,x1:e,y1:r,x2:o,y2:a,c:l}),[d,u]=LF({pos:i,x1:o,y1:a,x2:e,y2:r,c:l}),[p,f,g,v]=OF({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 FF({sourceX:e,sourceY:r,targetX:n,targetY:o}){const a=Math.abs(n-e)/2,i=n0}const X7e=({source:e,sourceHandle:r,target:n,targetHandle:o})=>`xy-edge__${e}${r||""}-${n}${o||""}`,Z7e=(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)),K7e=(e,r,n={})=>{if(!e.source||!e.target)return r;const o=n.getEdgeId||X7e;let a;return SF(e)?a={...e}:a={...e,id:o(e)},Z7e(a,r)?r:(a.sourceHandle===null&&delete a.sourceHandle,a.targetHandle===null&&delete a.targetHandle,r.concat(a))};function VF({sourceX:e,sourceY:r,targetX:n,targetY:o}){const[a,i,l,s]=FF({sourceX:e,sourceY:r,targetX:n,targetY:o});return[`M ${e},${r}L ${n},${o}`,a,i,l,s]}const qF={[Ue.Left]:{x:-1,y:0},[Ue.Right]:{x:1,y:0},[Ue.Top]:{x:0,y:-1},[Ue.Bottom]:{x:0,y:1}},Q7e=({source:e,sourcePosition:r=Ue.Bottom,target:n})=>r===Ue.Left||r===Ue.Right?e.xMath.sqrt(Math.pow(r.x-e.x,2)+Math.pow(r.y-e.y,2));function J7e({source:e,sourcePosition:r=Ue.Bottom,target:n,targetPosition:o=Ue.Top,center:a,offset:i,stepPosition:l}){const s=qF[r],c=qF[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=Q7e({source:d,sourcePosition:r,target:u}),f=p.x!==0?"x":"y",g=p[f];let v=[],w,x;const k={x:0,y:0},C={x:0,y:0},[,,_,$]=FF({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f==="x"?(w=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 R=[{x:w,y:d.y},{x:w,y:u.y}],T=[{x:d.x,y:x},{x:u.x,y:x}];s[f]===g?v=f==="x"?R:T:v=f==="x"?T:R}else{const R=[{x:d.x,y:u.y}],T=[{x:u.x,y:d.y}];if(f==="x"?v=s.x===g?T:R:v=s.y===g?R:T,r===o){const P=Math.abs(e[f]-n[f]);if(P<=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]=I?(w=(A.x+z.x)/2,x=v[0].y):(w=v[0].x,x=(A.y+z.y)/2)}return[[e,{x:d.x+k.x,y:d.y+k.y},...v,{x:u.x+C.x,y:u.y+C.y},n],w,x,_,$]}function e9e(e,r,n,o){const a=Math.min(HF(e,r)/2,HF(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 B7(e,r){return e?typeof e=="string"?e:`${r?`${r}__`:""}${Object.keys(e).sort().map(n=>`${n}=${e[n]}`).join("&")}`:""}function t9e(e,{id:r,defaultColor:n,defaultMarkerStart:o,defaultMarkerEnd: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=B7(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 r9e(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 XF=1e3,n9e=10,I7={nodeOrigin:[0,0],nodeExtent:V1,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},o9e={...I7,checkEquality:!0};function O7(e,r){const n={...e};for(const o in r)r[o]!==void 0&&(n[o]=r[o]);return n}function a9e(e,r,n){const o=O7(I7,n);for(const a of e.values())if(a.parentId)V7(a,e,r,o);else{const i=H1(a,o.nodeOrigin),l=sf(a.extent)?a.extent:o.nodeExtent,s=Xu(i,l,_o(a));a.internals.positionAbsolute=s}}function i9e(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 L7(e){return e==="manual"}function F7(e,r,n,o={}){const a=O7(o9e,o),i={i:0},l=new Map(r),s=a?.elevateNodesOnSelect&&!L7(a.zIndexMode)?XF: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=H1(d,a.nodeOrigin),f=sf(d.extent)?d.extent:a.nodeExtent,g=Xu(p,f,_o(d));u={...a.defaults,...d,measured:{width:d.measured?.width,height:d.measured?.height},internals:{positionAbsolute:g,handleBounds:i9e(d,u),z:ZF(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&&V7(u,r,n,o,i)}return c}function l9e(e,r){if(!e.parentId)return;const n=r.get(e.parentId);n?n.set(e.id,e):r.set(e.parentId,new Map([[e.id,e]]))}function V7(e,r,n,o,a){const{elevateNodesOnSelect:i,nodeOrigin:l,nodeExtent:s,zIndexMode:c}=O7(I7,o),d=e.parentId,u=r.get(d);if(!u){console.warn(`Parent node ${d} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}l9e(e,n),a&&!u.parentId&&u.internals.rootParentIndex===void 0&&c==="auto"&&(u.internals.rootParentIndex=++a.i,u.internals.z=u.internals.z+a.i*n9e),a&&u.internals.rootParentIndex!==void 0&&(a.i=u.internals.rootParentIndex);const p=i&&!L7(c)?XF:0,{x:f,y:g,z:v}=s9e(e,u,l,s,p,c),{positionAbsolute:w}=e.internals,x=f!==w.x||g!==w.y;(x||v!==e.internals.z)&&r.set(e.id,{...e,internals:{...e.internals,positionAbsolute:x?{x:f,y:g}:w,z:v}})}function ZF(e,r,n){const o=Zi(e.zIndex)?e.zIndex:0;return L7(n)?o:o+(e.selected?r:0)}function s9e(e,r,n,o,a,i){const{x:l,y:s}=r.internals.positionAbsolute,c=_o(e),d=H1(e,n),u=sf(e.extent)?Xu(d,e.extent,c):d;let p=Xu({x:l+u.x,y:s+u.y},o,c);e.extent==="parent"&&(p=$F(p,c,r));const f=ZF(e,a,i),g=r.internals.z??0;return{x:p.x,y:p.y,z:g>=f?g+1:f}}function q7(e,r,n,o=[0,0]){const 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??Zu(s),d=TF(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=q7(f,r,n,a);d.push(...g)}return{changes:d,updatedInternals:c}}async function d9e({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 KF(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 QF(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}`;KF("source",c,u,e,a,l),KF("target",c,d,e,i,s),r.set(o.id,o)}}function JF(e,r){if(!e.parentId)return!1;const n=r.get(e.parentId);return n?n.selected?!0:JF(n,r):!1}function eV(e,r,n){let o=e;do{if(o?.matches?.(r))return!0;if(o===n)return!1;o=o?.parentElement}while(o);return!1}function u9e(e,r,n,o){const a=new Map;for(const[i,l]of e)if((l.selected||l.id===o)&&(!l.parentId||!JF(l,e))&&(l.draggable||r&&typeof l.draggable>"u")){const s=e.get(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 H7({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 p9e({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=W1(i,r);return{x:l.x-i.x,y:l.y-i.y}}function h9e({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:R,nodeId:T,nodeClickDistance:A=0}){f=Ea($);function z({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 O=!1;const W=s.size>1,K=W&&V?N7(nf(s)):null,Q=W&&F?p9e({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)}:W1(re,B));let ue=null;if(W&&V&&!te.extent&&K){const{positionAbsolute:pe}=te.internals,xe=pe.x-K.x+V[0][0],je=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],[je,Je]]}const{position:_e,positionAbsolute:ce}=CF({nodeId:ae,nextPosition:re,nodeLookup:M,nodeExtent:ue||V,nodeOrigin:q,onError:Y});O=O||te.position.x!==_e.x||te.position.y!==_e.y,te.position=_e,te.internals.positionAbsolute=ce}if(v=v||O,!!O&&(Z(s,!0),w&&(o||G||!T&&U))){const[ae,te]=H7({nodeId:T,dragItems:s,nodeLookup:M});o?.(w,s,ae,te),G?.(w,ae,te),T||U?.(w,te)}}async function j(){if(!u)return;const{transform:L,panBy:H,autoPanSpeed:M,autoPanOnNodeDrag:V}=r();if(!V){c=!1,cancelAnimationFrame(l);return}const[B,F]=zF(d,u,M);(B!==0||F!==0)&&(i.x=(i.x??0)-B/L[2],i.y=(i.y??0)-F/L[2],await H({x:B,y:F})&&z(i)),l=requestAnimationFrame(j)}function I(L){const{nodeLookup:H,multiSelectionActive:M,nodesDraggable:V,transform:B,snapGrid:F,snapToGrid:q,selectNodesOnDrag:G,onNodeDragStart:U,onSelectionDragStart:Y,unselectNodesAndEdges:Z}=r();p=!0,(!G||!R)&&!M&&T&&(H.get(T)?.selected||Z()),R&&G&&T&&e?.(T);const O=Y1(L.sourceEvent,{transform:B,snapGrid:F,snapToGrid:q,containerBounds:u});if(i=O,s=u9e(H,V,O,T),s.size>0&&(n||U||!T&&Y)){const[W,K]=H7({nodeId:T,dragItems:s,nodeLookup:H});n?.(L.sourceEvent,s,W,K),U?.(L.sourceEvent,W,K),T||Y?.(L.sourceEvent,K)}}const P=FL().clickDistance(A).on("start",L=>{const{domNode:H,nodeDragThreshold:M,transform:V,snapGrid:B,snapToGrid:F}=r();u=H?.getBoundingClientRect()||null,g=!1,v=!1,w=L.sourceEvent,M===0&&I(L),i=Y1(L.sourceEvent,{transform:V,snapGrid:B,snapToGrid:F,containerBounds:u}),d=Ki(L.sourceEvent,u)}).on("drag",L=>{const{autoPanOnNodeDrag:H,transform:M,snapGrid:V,snapToGrid:B,nodeDragThreshold:F,nodeLookup:q}=r(),G=Y1(L.sourceEvent,{transform:M,snapGrid:V,snapToGrid:B,containerBounds:u});if(w=L.sourceEvent,(L.sourceEvent.type==="touchmove"&&L.sourceEvent.touches.length>1||T&&!q.has(T))&&(g=!0),!g){if(!c&&H&&p&&(c=!0,j()),!p){const U=Ki(L.sourceEvent,u),Y=U.x-d.x,Z=U.y-d.y;Math.sqrt(Y*Y+Z*Z)>F&&I(L)}(i.x!==G.xSnapped||i.y!==G.ySnapped)&&s&&p&&(d=Ki(L.sourceEvent,u),z(G))}}).on("end",L=>{if(!(!p||g)&&(c=!1,p=!1,cancelAnimationFrame(l),s.size>0)){const{nodeLookup:H,updateNodePositions:M,onNodeDragStop:V,onSelectionDragStop:B}=r();if(v&&(M(s,!1),v=!1),a||V||!T&&B){const[F,q]=H7({nodeId:T,dragItems:s,nodeLookup:H,dragging:!1});a?.(L.sourceEvent,s,F,q),V?.(L.sourceEvent,F,q),T||B?.(L.sourceEvent,q)}}}).filter(L=>{const H=L.target;return!L.button&&(!C||!eV(H,`.${C}`,$))&&(!_||eV(H,_,$))});f.call(P)}function k(){f?.on(".drag",null)}return{update:x,destroy:k}}function f9e(e,r,n){const o=[],a={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const i of r.values())U1(a,Zu(i))>0&&o.push(i);return o}const m9e=250;function g9e(e,r,n,o){let a=[],i=1/0;const l=f9e(e,n,r+m9e);for(const s of l){const c=[...s.internals.handleBounds?.source??[],...s.internals.handleBounds?.target??[]];for(const d of c){if(o.nodeId===d.nodeId&&o.type===d.type&&o.id===d.id)continue;const{x:u,y:p}=Ku(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 tV(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,...Ku(l,c,c.position,!0)}:c}function rV(e,r){return e||(r?.classList.contains("target")?"target":r?.classList.contains("source")?"source":null)}function y9e(e,r){let n=null;return r?n=!0:e&&!r&&(n=!1),n}const nV=()=>!0;function v9e(e,{connectionMode:r,connectionRadius:n,handleId:o,nodeId: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=nV,onReconnectEnd:C,updateConnection:_,getTransform:$,getFromHandle:R,autoPanSpeed:T,dragThreshold:A=1,handleDomNode:z}){const j=NF(e.target);let I=0,P;const{x:L,y:H}=Ki(e),M=rV(i,z),V=s?.getBoundingClientRect();let B=!1;if(!V||!M)return;const F=tV(a,M,o,c,r);if(!F)return;let q=Ki(e,V),G=!1,U=null,Y=!1,Z=null;function O(){if(!u||!V)return;const[ue,_e]=zF(q,V,T);f({x:ue,y:_e}),I=requestAnimationFrame(O)}const W={...F,nodeId:a,type:M,position:F.position},K=c.get(a);let Q={inProgress:!0,isValid:null,from:Ku(K,W,Ue.Left,!0),fromHandle:W,fromPosition:W.position,fromNode:K,to:q,toHandle:null,toPosition:kF[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}=Ki(ue),st=Be-L,Le=Je-H;if(!(st*st+Le*Le>A*A))return;ae()}if(!R()||!W){re(ue);return}const _e=$();q=Ki(ue,V),P=g9e(G1(q,_e,!1,[1,1]),n,c,W),G||(O(),G=!0);const ce=oV(ue,{handle:P,connectionMode:r,fromNodeId:a,fromHandleId:o,fromType:l?"target":"source",isValidConnection:k,doc:j,lib:d,flowId:p,nodeLookup:c});Z=ce.handleDomNode,U=ce.connection,Y=y9e(!!P,ce.isValid);const pe=c.get(a),xe=pe?Ku(pe,W,Ue.Left,!0):Q.from,je={...Q,from:xe,isValid:Y,to:ce.toHandle&&Y?Yx({x:ce.toHandle.x,y:ce.toHandle.y},_e):q,toHandle:ce.toHandle,toPosition:Y&&ce.toHandle?ce.toHandle.position:kF[W.position],toNode:ce.toHandle?c.get(ce.toHandle.nodeId):null,pointer:q};_(je),Q=je}function re(ue){if(!("touches"in ue&&ue.touches.length>0)){if(B){(P||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(I),G=!1,Y=!1,U=null,Z=null,j.removeEventListener("mousemove",te),j.removeEventListener("mouseup",re),j.removeEventListener("touchmove",te),j.removeEventListener("touchend",re)}}j.addEventListener("mousemove",te),j.addEventListener("mouseup",re),j.addEventListener("touchmove",te),j.addEventListener("touchend",re)}function oV(e,{handle:r,connectionMode:n,fromNodeId:o,fromHandleId:a,fromType:i,doc:l,lib:s,flowId:c,isValidConnection:d=nV,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}=Ki(e),w=l.elementFromPoint(g,v),x=w?.classList.contains(`${s}-flow__handle`)?w:f,k={handleDomNode:x,isValid:!1,connection:null,toHandle:null};if(x){const C=rV(void 0,x),_=x.getAttribute("data-nodeid"),$=x.getAttribute("data-handleid"),R=x.classList.contains("connectable"),T=x.classList.contains("connectableend");if(!_||!C)return k;const A={source:p?_:o,sourceHandle:p?$:a,target:p?o:_,targetHandle:p?a:$};k.connection=A;const z=R&&T&&(n===rf.Strict?p&&C==="source"||!p&&C==="target":_!==o||$!==a);k.isValid=z&&d(A),k.toHandle=tV(_,C,$,u,n,!0)}return k}const U7={onPointerDown:v9e,isValid:oV};function b9e({domNode:e,panZoom:r,getTransform:n,getViewScale:o}){const a=Ea(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(),R=_.sourceEvent.ctrlKey&&lf()?10:1,T=-_.sourceEvent.deltaY*(_.sourceEvent.deltaMode===1?.05:_.sourceEvent.deltaMode?1:.002)*u,A=$[2]*Math.pow(2,T*R);r.scaleTo(A)};let w=[0,0];const x=_=>{(_.sourceEvent.type==="mousedown"||_.sourceEvent.type==="touchstart")&&(w=[_.sourceEvent.clientX??_.sourceEvent.touches[0].clientX,_.sourceEvent.clientY??_.sourceEvent.touches[0].clientY])},k=_=>{const $=n();if(_.sourceEvent.type!=="mousemove"&&_.sourceEvent.type!=="touchmove"||!r)return;const R=[_.sourceEvent.clientX??_.sourceEvent.touches[0].clientX,_.sourceEvent.clientY??_.sourceEvent.touches[0].clientY],T=[R[0]-w[0],R[1]-w[1]];w=R;const A=o()*Math.max($[2],Math.log($[2]))*(g?-1:1),z={x:$[0]-T[0]*A,y:$[1]-T[1]*A},j=[[0,0],[c,d]];r.setViewportConstrained({x:z.x,y:z.y,zoom:$[2]},j,s)},C=vF().on("start",x).on("zoom",p?k:null).on("zoom.wheel",f?v:null);a.call(C,{})}function l(){a.on("zoom",null)}return{update:i,destroy:l,pointer:Gi}}const Qx=e=>({x:e.x,y:e.y,zoom:e.k}),W7=({x:e,y:r,zoom:n})=>qx.translate(e,r).scale(n),cf=(e,r)=>e.target.closest(`.${r}`),aV=(e,r)=>r===2&&Array.isArray(e)&&e.includes(2),x9e=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,G7=(e,r=0,n=x9e,o=()=>{})=>{const a=typeof r=="number"&&r>0;return a||o(),a?e.transition().duration(r).ease(n).on("end",o):e},iV=e=>{const r=e.ctrlKey&&lf()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*r};function w9e({zoomPanValues:e,noWheelClassName:r,d3Selection:n,d3Zoom:o,panOnScrollMode:a,panOnScrollSpeed:i,zoomOnPinch:l,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:d}){return u=>{if(cf(u,r))return u.ctrlKey&&u.preventDefault(),!1;u.preventDefault(),u.stopImmediatePropagation();const p=n.property("__zoom").k||1;if(u.ctrlKey&&l){const x=Gi(u),k=iV(u),C=p*Math.pow(2,k);o.scaleTo(n,C,x,u);return}const f=u.deltaMode===1?20:1;let g=a===Yu.Vertical?0:u.deltaX*f,v=a===Yu.Horizontal?0:u.deltaY*f;!lf()&&u.shiftKey&&a!==Yu.Vertical&&(g=u.deltaY*f,v=0),o.translateBy(n,-(g/p)*i,-(v/p)*i,{internal:!0});const w=Qx(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(c?.(u,w),e.panScrollTimeout=setTimeout(()=>{d?.(u,w),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,s?.(u,w))}}function k9e({noWheelClassName:e,preventScrolling:r,d3ZoomHandler:n}){return function(o,a){const i=o.type==="wheel",l=!r&&i&&!o.ctrlKey,s=cf(o,e);if(o.ctrlKey&&i&&s&&o.preventDefault(),l||s)return null;o.preventDefault(),n.call(this,o,a)}}function _9e({zoomPanValues:e,onDraggingChange:r,onPanZoomStart:n}){return o=>{if(o.sourceEvent?.internal)return;const a=Qx(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 S9e({zoomPanValues:e,panOnDrag:r,onPaneContextMenu:n,onTransformChange:o,onPanZoom:a}){return i=>{e.usedRightMouseButton=!!(n&&aV(r,e.mouseButton??0)),i.sourceEvent?.sync||o([i.transform.x,i.transform.y,i.transform.k]),a&&!i.sourceEvent?.internal&&a?.(i.sourceEvent,Qx(i.transform))}}function E9e({zoomPanValues:e,panOnDrag:r,panOnScroll:n,onDraggingChange:o,onPanZoomEnd:a,onPaneContextMenu:i}){return l=>{if(!l.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,i&&aV(r,e.mouseButton??0)&&!e.usedRightMouseButton&&l.sourceEvent&&i(l.sourceEvent),e.usedRightMouseButton=!1,o(!1),a)){const s=Qx(l.transform);e.prevViewport=s,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{a?.(l.sourceEvent,s)},n?150:0)}}}function C9e({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"&&(cf(p,`${d}-flow__node`)||cf(p,`${d}-flow__edge`)))return!0;if(!o&&!f&&!a&&!i&&!n||l||u&&!v||cf(p,s)&&v||cf(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 $9e({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=vF().scaleExtent([r,n]).translateExtent(o),f=Ea(e).call(p);C({x:a.x,y:a.y,zoom:of(a.zoom,r,n)},[[0,0],[u.width,u.height]],o);const g=f.on("wheel.zoom"),v=f.on("dblclick.zoom");p.wheelDelta(iV);function w(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?P1:Dx).transform(G7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function x({noWheelClassName:P,noPanClassName:L,onPaneContextMenu:H,userSelectionActive:M,panOnScroll:V,panOnDrag:B,panOnScrollMode:F,panOnScrollSpeed:q,preventScrolling:G,zoomOnPinch:U,zoomOnScroll:Y,zoomOnDoubleClick:Z,zoomActivationKeyPressed:O,lib:W,onTransformChange:K,connectionInProgress:Q,paneClickDistance:ae,selectionOnDrag:te}){M&&!d.isZoomingOrPanning&&k();const re=V&&!O&&!M;p.clickDistance(te?1/0:!Zi(ae)||ae<0?0:ae);const ue=re?w9e({zoomPanValues:d,noWheelClassName:P,d3Selection:f,d3Zoom:p,panOnScrollMode:F,panOnScrollSpeed:q,zoomOnPinch:U,onPanZoomStart:l,onPanZoom:i,onPanZoomEnd:s}):k9e({noWheelClassName:P,preventScrolling:G,d3ZoomHandler:g});if(f.on("wheel.zoom",ue,{passive:!1}),!M){const ce=_9e({zoomPanValues:d,onDraggingChange:c,onPanZoomStart:l});p.on("start",ce);const pe=S9e({zoomPanValues:d,panOnDrag:B,onPaneContextMenu:!!H,onPanZoom:i,onTransformChange:K});p.on("zoom",pe);const xe=E9e({zoomPanValues:d,panOnDrag:B,panOnScroll:V,onPaneContextMenu:H,onPanZoomEnd:s,onDraggingChange:c});p.on("end",xe)}const _e=C9e({zoomActivationKeyPressed:O,panOnDrag:B,zoomOnScroll:Y,panOnScroll:V,zoomOnDoubleClick: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=W7(P),V=p?.constrain()(M,L,H);return V&&await w(V),new Promise(B=>B(V))}async function _(P,L){const H=W7(P);return await w(H,L),new Promise(M=>M(H))}function $(P){if(f){const L=W7(P),H=f.property("__zoom");(H.k!==P.zoom||H.x!==P.x||H.y!==P.y)&&p?.transform(f,L,null,{sync:!0})}}function R(){const P=f?gF(f.node()):{x:0,y:0,k:1};return{x:P.x,y:P.y,zoom:P.k}}function T(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?P1:Dx).scaleTo(G7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function A(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?P1:Dx).scaleBy(G7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function z(P){p?.scaleExtent(P)}function j(P){p?.translateExtent(P)}function I(P){const L=!Zi(P)||P<0?0:P;p?.clickDistance(L)}return{update:x,destroy:k,setViewport:_,setViewportConstrained:C,getViewport:R,scaleTo:T,scaleBy:A,setScaleExtent:z,setTranslateExtent:j,syncViewport:$,setClickDistance:I}}var df;(function(e){e.Line="line",e.Handle="handle"})(df||(df={}));function R9e({width:e,prevWidth:r,height:n,prevHeight:o,affectsX: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 lV(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 id(e,r){return Math.max(0,r-e)}function ld(e,r){return Math.max(0,e-r)}function Jx(e,r,n){return Math.max(0,r-e,e-n)}function sV(e,r){return e?!r:r}function z9e(e,r,n,o,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:R,height:T,aspectRatio:A}=e;let z=Math.floor(u?g-e.pointerX:0),j=Math.floor(p?v-e.pointerY:0);const I=R+(c?-z:z),P=T+(d?-j:j),L=-i[0]*R,H=-i[1]*T;let M=Jx(I,w,x),V=Jx(P,k,C);if(l){let q=0,G=0;c&&z<0?q=id(_+z+L,l[0][0]):!c&&z>0&&(q=ld(_+I+L,l[1][0])),d&&j<0?G=id($+j+H,l[0][1]):!d&&j>0&&(G=ld($+P+H,l[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(s){let q=0,G=0;c&&z>0?q=ld(_+z,s[0][0]):!c&&z<0&&(q=id(_+I,s[1][0])),d&&j>0?G=ld($+j,s[0][1]):!d&&j<0&&(G=id($+P,s[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(a){if(u){const q=Jx(I/A,k,C)*A;if(M=Math.max(M,q),l){let G=0;!c&&!d||c&&!d&&f?G=ld($+H+I/A,l[1][1])*A:G=id($+H+(c?z:-z)/A,l[0][1])*A,M=Math.max(M,G)}if(s){let G=0;!c&&!d||c&&!d&&f?G=id($+I/A,s[1][1])*A:G=ld($+(c?z:-z)/A,s[0][1])*A,M=Math.max(M,G)}}if(p){const q=Jx(P*A,w,x)/A;if(V=Math.max(V,q),l){let G=0;!c&&!d||d&&!c&&f?G=ld(_+P*A+L,l[1][0])/A:G=id(_+(d?j:-j)*A+L,l[0][0])/A,V=Math.max(V,G)}if(s){let G=0;!c&&!d||d&&!c&&f?G=id(_+P*A,s[1][0])/A:G=ld(_+(d?j:-j)*A,s[0][0])/A,V=Math.max(V,G)}}}j=j+(j<0?V:-V),z=z+(z<0?M:-M),a&&(f?I>P*A?j=(sV(c,d)?-z:z)/A:z=(sV(c,d)?-j:j)*A:u?(j=z/A,d=c):(z=j*A,c=d));const B=c?_+z:_,F=d?$+j:$;return{width:R+(c?-z:z),height:T+(d?-j:j),x:i[0]*z*(c?-1:1)+B,y:i[1]*j*(d?-1:1)+F}}const cV={width:0,height:0,x:0,y:0},T9e={...cV,pointerX:0,pointerY:0,aspectRatio:1};function j9e(e){return[[0,0],[e.measured.width,e.measured.height]]}function A9e(e,r,n){const o=r.position.x+e.position.x,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 D9e({domNode:e,nodeId:r,getStoreItems:n,onChange:o,onEnd:a}){const i=Ea(e);let l={controlDirection:lV("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function s({controlPosition:d,boundaries:u,keepAspectRatio:p,resizeDirection:f,onResizeStart:g,onResize:v,onResizeEnd:w,shouldResize:x}){let k={...cV},C={...T9e};l={boundaries:u,resizeDirection:f,keepAspectRatio:p,controlDirection:lV(d)};let _,$=null,R=[],T,A,z,j=!1;const I=FL().on("start",P=>{const{nodeLookup:L,transform:H,snapGrid:M,snapToGrid:V,nodeOrigin:B,paneDomNode:F}=n();if(_=L.get(r),!_)return;$=F?.getBoundingClientRect()??null;const{xSnapped:q,ySnapped:G}=Y1(P.sourceEvent,{transform:H,snapGrid:M,snapToGrid:V,containerBounds:$});k={width:_.measured.width??0,height:_.measured.height??0,x:_.position.x??0,y:_.position.y??0},C={...k,pointerX:q,pointerY:G,aspectRatio:k.width/k.height},T=void 0,_.parentId&&(_.extent==="parent"||_.expandParent)&&(T=L.get(_.parentId),A=T&&_.extent==="parent"?j9e(T):void 0),R=[],z=void 0;for(const[U,Y]of L)if(Y.parentId===r&&(R.push({id:U,position:{...Y.position},extent:Y.extent}),Y.extent==="parent"||Y.expandParent)){const Z=A9e(Y,_,Y.origin??B);z?z=[[Math.min(Z[0][0],z[0][0]),Math.min(Z[0][1],z[0][1])],[Math.max(Z[1][0],z[1][0]),Math.max(Z[1][1],z[1][1])]]:z=Z}g?.(P,{...k})}).on("drag",P=>{const{transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V}=n(),B=Y1(P.sourceEvent,{transform:L,snapGrid:H,snapToGrid:M,containerBounds:$}),F=[];if(!_)return;const{x:q,y:G,width:U,height:Y}=k,Z={},O=_.origin??V,{width:W,height:K,x:Q,y:ae}=z9e(C,l.controlDirection,B,l.boundaries,l.keepAspectRatio,O,A,z),te=W!==U,re=K!==Y,ue=Q!==q&&te,_e=ae!==G&&re;if(!ue&&!_e&&!te&&!re)return;if((ue||_e||O[0]===1||O[1]===1)&&(Z.x=ue?Q:k.x,Z.y=_e?ae:k.y,k.x=Z.x,k.y=Z.y,R.length>0)){const xe=Q-q,je=ae-G;for(const Be of R)Be.position={x:Be.position.x-xe+O[0]*(W-U),y:Be.position.y-je+O[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),T&&_.expandParent){const xe=O[0]*(Z.width??0);Z.x&&Z.x{j&&(w?.(P,{...k}),a?.({...k}),j=!1)});i.call(I)}function c(){i.on(".drag",null)}return{update:s,destroy:c}}function Y7(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var dV={exports:{}},X7={},uV={exports:{}},Z7={},pV;function M9e(){if(pV)return Z7;pV=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 Z7.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,Z7}var hV;function fV(){return hV||(hV=1,uV.exports=M9e()),uV.exports}var mV;function N9e(){if(mV)return X7;mV=1;var e=Kr,r=fV();function n(d,u){return d===u&&(d!==0||1/d===1/u)||d!==d&&u!==u}var o=typeof Object.is=="function"?Object.is:n,a=r.useSyncExternalStore,i=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return X7.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(T){if(!C){if(C=!0,_=T,T=f(T),g!==void 0&&w.hasValue){var A=w.value;if(g(A,T))return $=A}return $=T}if(A=$,o(_,T))return A;var z=f(T);return g!==void 0&&g(A,z)?(_=T,A):(_=T,$=z)}var C=!1,_,$,R=p===void 0?null:p;return[function(){return k(u())},R===null?void 0:function(){return k(R())}]},[u,p,f,g]);var x=a(d,v[0],v[1]);return l(function(){w.hasValue=!0,w.value=x},[x]),c(x),x},X7}var gV;function P9e(){return gV||(gV=1,dV.exports=N9e()),dV.exports}var yV=P9e();const B9e=Y7(yV),I9e={},vV=e=>{let r;const n=new Set,o=(s,c)=>{const d=typeof s=="function"?s(r):s;if(!Object.is(d,r)){const u=r;r=c??(typeof d!="object"||d===null)?d:Object.assign({},r,d),n.forEach(p=>p(r,u))}},a=()=>r,i={setState:o,getState:a,getInitialState:()=>l,subscribe:s=>(n.add(s),()=>n.delete(s)),destroy:()=>{(I9e?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},l=r=e(o,a,i);return i},O9e=e=>e?vV(e):vV,{useDebugValue:L9e}=Kr,{useSyncExternalStoreWithSelector:F9e}=B9e,V9e=e=>e;function bV(e,r=V9e,n){const o=F9e(e.subscribe,e.getState,e.getServerState||e.getInitialState,r,n);return L9e(o),o}const xV=(e,r)=>{const n=O9e(e),o=(a,i=r)=>bV(n,a,i);return Object.assign(o,n),o},q9e=(e,r)=>e?xV(e,r):xV;function jr(e,r){if(Object.is(e,r))return!0;if(typeof e!="object"||e===null||typeof r!="object"||r===null)return!1;if(e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(const[o,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 ew=S.createContext(null),H9e=ew.Provider,wV=Gl.error001();function Dt(e,r){const n=S.useContext(ew);if(n===null)throw new Error(wV);return bV(n,e,r)}function vr(){const e=S.useContext(ew);if(e===null)throw new Error(wV);return S.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const kV={display:"none"},U9e={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},_V="react-flow__node-desc",SV="react-flow__edge-desc",W9e="react-flow__aria-live",G9e=e=>e.ariaLiveMessage,Y9e=e=>e.ariaLabelConfig;function X9e({rfId:e}){const r=Dt(G9e);return y.jsx("div",{id:`${W9e}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:U9e,children:r})}function Z9e({rfId:e,disableKeyboardA11y:r}){const n=Dt(Y9e);return y.jsxs(y.Fragment,{children:[y.jsx("div",{id:`${_V}-${e}`,style:kV,children:r?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),y.jsx("div",{id:`${SV}-${e}`,style:kV,children:n["edge.a11yDescription.default"]}),!r&&y.jsx(X9e,{rfId:e})]})}const sd=S.forwardRef(({position:e="top-left",children:r,className:n,style:o,...a},i)=>{const l=`${e}`.split("-");return y.jsx("div",{className:dn(["react-flow__panel",n,...l]),style:o,ref:i,...a,children:r})});sd.displayName="Panel";function K9e({proOptions:e,position:r="bottom-right"}){return e?.hideAttribution?null:y.jsx(sd,{position:r,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:y.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const Q9e=e=>{const r=[],n=[];for(const[,o]of e.nodeLookup)o.selected&&r.push(o.internals.userNode);for(const[,o]of e.edgeLookup)o.selected&&n.push(o);return{selectedNodes:r,selectedEdges:n}},tw=e=>e.id;function J9e(e,r){return jr(e.selectedNodes.map(tw),r.selectedNodes.map(tw))&&jr(e.selectedEdges.map(tw),r.selectedEdges.map(tw))}function eSe({onSelectionChange:e}){const r=vr(),{selectedNodes:n,selectedEdges:o}=Dt(Q9e,J9e);return S.useEffect(()=>{const a={nodes:n,edges:o};e?.(a),r.getState().onSelectionChangeHandlers.forEach(i=>i(a))},[n,o,e]),null}const tSe=e=>!!e.onSelectionChangeHandlers;function rSe({onSelectionChange:e}){const r=Dt(tSe);return e||r?y.jsx(eSe,{onSelectionChange:e}):null}const EV=[0,0],nSe={x:0,y:0,zoom:1},oSe=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode"],CV=[...oSe,"rfId"],aSe=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),$V={translateExtent:V1,nodeOrigin:EV,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function iSe(e){const{setNodes:r,setEdges:n,setMinZoom:o,setMaxZoom:a,setTranslateExtent:i,setNodeExtent:l,reset:s,setDefaultNodesAndEdges:c}=Dt(aSe,jr),d=vr();S.useEffect(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=$V,s()}),[]);const u=S.useRef($V);return S.useEffect(()=>{for(const p of CV){const f=e[p],g=u.current[p];f!==g&&(typeof e[p]>"u"||(p==="nodes"?r(f):p==="edges"?n(f):p==="minZoom"?o(f):p==="maxZoom"?a(f):p==="translateExtent"?i(f):p==="nodeExtent"?l(f):p==="ariaLabelConfig"?d.setState({ariaLabelConfig:U7e(f)}):p==="fitView"?d.setState({fitViewQueued:f}):p==="fitViewOptions"?d.setState({fitViewOptions:f}):d.setState({[p]:f})))}u.current=e},CV.map(p=>e[p])),null}function RV(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function lSe(e){const[r,n]=S.useState(e==="system"?null:e);return S.useEffect(()=>{if(e!=="system"){n(e);return}const o=RV(),a=()=>n(o?.matches?"dark":"light");return a(),o?.addEventListener("change",a),()=>{o?.removeEventListener("change",a)}},[e]),r!==null?r:RV()?.matches?"dark":"light"}const zV=typeof document<"u"?document:null;function X1(e=null,r={target:zV,actInsideInputWithModifier:!0}){const[n,o]=S.useState(!1),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(` `,` +`).split(` -`)),d=c.reduce((u,p)=>u.concat(...p),[]);return[c,d]}return[[],[]]},[e]);return S.useEffect(()=>{const c=r?.target??RV,d=r?.actInsideInputWithModifier??!0;if(e!==null){const u=g=>{if(a.current=g.ctrlKey||g.metaKey||g.shiftKey||g.altKey,(!a.current||a.current&&!d)&&PF(g))return!1;const v=jV(g.code,s);if(i.current.add(g[v]),TV(l,i.current,!1)){const w=g.composedPath?.()?.[0]||g.target,x=w?.nodeName==="BUTTON"||w?.nodeName==="A";r.preventDefault!==!1&&(a.current||!x)&&g.preventDefault(),o(!0)}},p=g=>{const v=jV(g.code,s);TV(l,i.current,!0)?(o(!1),i.current.clear()):i.current.delete(g[v]),g.key==="Meta"&&i.current.clear(),a.current=!1},f=()=>{i.current.clear(),o(!1)};return c?.addEventListener("keydown",u),c?.addEventListener("keyup",p),window.addEventListener("blur",f),window.addEventListener("contextmenu",f),()=>{c?.removeEventListener("keydown",u),c?.removeEventListener("keyup",p),window.removeEventListener("blur",f),window.removeEventListener("contextmenu",f)}}},[e,o]),n}function TV(e,r,n){return e.filter(o=>n||o.length===r.size).some(o=>o.every(a=>r.has(a)))}function jV(e,r){return r.includes(e)?"code":"key"}const sSe=()=>{const e=vr();return S.useMemo(()=>({zoomIn:r=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1.2,{duration:r?.duration}):Promise.resolve(!1)},zoomOut:r=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,{duration:r?.duration}):Promise.resolve(!1)},zoomTo:(r,n)=>{const{panZoom:o}=e.getState();return o?o.scaleTo(r,{duration:n?.duration}):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(r,n)=>{const{transform:[o,a,i],panZoom:l}=e.getState();return l?(await l.setViewport({x:r.x??o,y:r.y??a,zoom:r.zoom??i},n),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[r,n,o]=e.getState().transform;return{x:r,y:n,zoom:o}},setCenter:async(r,n,o)=>e.getState().setCenter(r,n,o),fitBounds:async(r,n)=>{const{width:o,height:a,minZoom:i,maxZoom:l,panZoom:s}=e.getState(),c=Ws(r,o,a,i,l,n?.padding??.1);return s?(await s.setViewport(c,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(r,n={})=>{const{transform:o,snapGrid:a,snapToGrid:i,domNode:l}=e.getState();if(!l)return r;const{x:s,y:c}=l.getBoundingClientRect(),d={x:r.x-s,y:r.y-c},u=n.snapGrid??a,p=n.snapToGrid??i;return G1(d,o,p,u)},flowToScreenPosition:r=>{const{transform:n,domNode:o}=e.getState();if(!o)return r;const{x:a,y:i}=o.getBoundingClientRect(),l=Yx(r,n);return{x:l.x+a,y:l.y+i}}}),[])};function AV(e,r){const n=[],o=new Map,a=[];for(const i of e)if(i.type==="add"){a.push(i);continue}else if(i.type==="remove"||i.type==="replace")o.set(i.id,[i]);else{const l=o.get(i.id);l?l.push(i):o.set(i.id,[i])}for(const i of r){const l=o.get(i.id);if(!l){n.push(i);continue}if(l[0].type==="remove")continue;if(l[0].type==="replace"){n.push({...l[0].item});continue}const s={...i};for(const c of l)cSe(c,s);n.push(s)}return a.length&&a.forEach(i=>{i.index!==void 0?n.splice(i.index,0,{...i.item}):n.push({...i.item})}),n}function cSe(e,r){switch(e.type){case"select":{r.selected=e.selected;break}case"position":{typeof e.position<"u"&&(r.position=e.position),typeof e.dragging<"u"&&(r.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(r.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(r.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(r.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(r.resizing=e.resizing);break}}}function rw(e,r){return AV(e,r)}function nw(e,r){return AV(e,r)}function Qu(e,r){return{id:e,type:"select",selected:r}}function uf(e,r=new Set,n=!1){const o=[];for(const[a,i]of e){const l=r.has(a);!(i.selected===void 0&&!l)&&i.selected!==l&&(n&&(i.selected=l),o.push(Qu(i.id,l)))}return o}function DV({items:e=[],lookup:r}){const n=[],o=new Map(e.map(a=>[a.id,a]));for(const[a,i]of e.entries()){const l=r.get(i.id),s=l?.internals?.userNode??l;s!==void 0&&s!==i&&n.push({id:i.id,item:i,type:"replace"}),s===void 0&&n.push({item:i,type:"add",index:a})}for(const[a]of r)o.get(a)===void 0&&n.push({id:a,type:"remove"});return n}function MV(e){return{id:e.id,type:"remove"}}const NV=e=>P7e(e),dSe=e=>SF(e);function PV(e){return S.forwardRef(e)}const uSe=typeof window<"u"?S.useLayoutEffect:S.useEffect;function BV(e){const[r,n]=S.useState(BigInt(0)),[o]=S.useState(()=>pSe(()=>n(a=>a+BigInt(1))));return uSe(()=>{const a=o.get();a.length&&(e(a),o.reset())},[r]),o}function pSe(e){let r=[];return{get:()=>r,reset:()=>{r=[]},push:n=>{r.push(n),e()}}}const IV=S.createContext(null);function hSe({children:e}){const r=vr(),n=S.useCallback(s=>{const{nodes:c=[],setNodes:d,hasDefaultNodes:u,onNodesChange:p,nodeLookup:f,fitViewQueued:g,onNodesChangeMiddlewareMap:v}=r.getState();let w=c;for(const k of s)w=typeof k=="function"?k(w):k;let x=DV({items:w,lookup:f});for(const k of v.values())x=k(x);u&&d(w),x.length>0?p?.(x):g&&window.requestAnimationFrame(()=>{const{fitViewQueued:k,nodes:C,setNodes:_}=r.getState();k&&_(C)})},[]),o=BV(n),a=S.useCallback(s=>{const{edges:c=[],setEdges:d,hasDefaultEdges:u,onEdgesChange:p,edgeLookup:f}=r.getState();let g=c;for(const v of s)g=typeof v=="function"?v(g):v;u?d(g):p&&p(DV({items:g,lookup:f}))},[]),i=BV(a),l=S.useMemo(()=>({nodeQueue:o,edgeQueue:i}),[]);return y.jsx(IV.Provider,{value:l,children:e})}function fSe(){const e=S.useContext(IV);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const mSe=e=>!!e.panZoom;function pf(){const e=sSe(),r=vr(),n=fSe(),o=Dt(mSe),a=S.useMemo(()=>{const i=p=>r.getState().nodeLookup.get(p),l=p=>{n.nodeQueue.push(p)},s=p=>{n.edgeQueue.push(p)},c=p=>{const{nodeLookup:f,nodeOrigin:g}=r.getState(),v=NV(p)?p:f.get(p.id),w=v.parentId?DF(v.position,v.measured,v.parentId,f,g):v.position,x={...v,position:w,width:v.measured?.width??v.width,height:v.measured?.height??v.height};return Zu(x)},d=(p,f,g={replace:!1})=>{l(v=>v.map(w=>{if(w.id===p){const x=typeof f=="function"?f(w):f;return g.replace&&NV(x)?x:{...w,...x}}return w}))},u=(p,f,g={replace:!1})=>{s(v=>v.map(w=>{if(w.id===p){const x=typeof f=="function"?f(w):f;return g.replace&&dSe(x)?x:{...w,...x}}return w}))};return{getNodes:()=>r.getState().nodes.map(p=>({...p})),getNode:p=>i(p)?.internals.userNode,getInternalNode:i,getEdges:()=>{const{edges:p=[]}=r.getState();return p.map(f=>({...f}))},getEdge:p=>r.getState().edgeLookup.get(p),setNodes:l,setEdges:s,addNodes:p=>{const f=Array.isArray(p)?p:[p];n.nodeQueue.push(g=>[...g,...f])},addEdges:p=>{const f=Array.isArray(p)?p:[p];n.edgeQueue.push(g=>[...g,...f])},toObject:()=>{const{nodes:p=[],edges:f=[],transform:g}=r.getState(),[v,w,x]=g;return{nodes:p.map(k=>({...k})),edges:f.map(k=>({...k})),viewport:{x:v,y:w,zoom:x}}},deleteElements:async({nodes:p=[],edges:f=[]})=>{const{nodes:g,edges:v,onNodesDelete:w,onEdgesDelete:x,triggerNodeChanges:k,triggerEdgeChanges:C,onDelete:_,onBeforeDelete:$}=r.getState(),{nodes:z,edges:T}=await L7e({nodesToRemove:p,edgesToRemove:f,nodes:g,edges:v,onBeforeDelete:$}),A=T.length>0,R=z.length>0;if(A){const j=T.map(MV);x?.(T),C(j)}if(R){const j=z.map(MV);w?.(z),k(j)}return(R||A)&&_?.({nodes:z,edges:T}),{deletedNodes:z,deletedEdges:T}},getIntersectingNodes:(p,f=!0,g)=>{const v=jF(p),w=v?p:c(p),x=g!==void 0;return w?(g||r.getState().nodes).filter(k=>{const C=r.getState().nodeLookup.get(k.id);if(C&&!v&&(k.id===p.id||!C.internals.positionAbsolute))return!1;const _=Zu(x?k:C),$=U1(_,w);return f&&$>0||$>=_.width*_.height||$>=w.width*w.height}):[]},isNodeIntersecting:(p,f,g=!0)=>{const v=jF(p)?p:c(p);if(!v)return!1;const w=U1(v,f);return g&&w>0||w>=f.width*f.height||w>=v.width*v.height},updateNode:d,updateNodeData:(p,f,g={replace:!1})=>{d(p,v=>{const w=typeof f=="function"?f(v):f;return g.replace?{...v,data:w}:{...v,data:{...v.data,...w}}},g)},updateEdge:u,updateEdgeData:(p,f,g={replace:!1})=>{u(p,v=>{const w=typeof f=="function"?f(v):f;return g.replace?{...v,data:w}:{...v,data:{...v.data,...w}}},g)},getNodesBounds:p=>{const{nodeLookup:f,nodeOrigin:g}=r.getState();return EF(p,{nodeLookup:f,nodeOrigin:g})},getHandleConnections:({type:p,id:f,nodeId:g})=>Array.from(r.getState().connectionLookup.get(`${g}-${p}${f?`-${f}`:""}`)?.values()??[]),getNodeConnections:({type:p,handleId:f,nodeId:g})=>Array.from(r.getState().connectionLookup.get(`${g}${p?f?`-${p}-${f}`:`-${p}`:""}`)?.values()??[]),fitView:async p=>{const f=r.getState().fitViewResolver??H7e();return r.setState({fitViewQueued:!0,fitViewOptions:p,fitViewResolver:f}),n.nodeQueue.push(g=>[...g]),f.promise}}},[]);return S.useMemo(()=>({...a,...e,viewportInitialized:o}),[o])}const OV=e=>e.selected,gSe=typeof window<"u"?window:void 0;function ySe({deleteKeyCode:e,multiSelectionKeyCode:r}){const n=vr(),{deleteElements:o}=pf(),a=X1(e,{actInsideInputWithModifier:!1}),i=X1(r,{target:gSe});S.useEffect(()=>{if(a){const{edges:l,nodes:s}=n.getState();o({nodes:s.filter(OV),edges:l.filter(OV)}),n.setState({nodesSelectionActive:!1})}},[a]),S.useEffect(()=>{n.setState({multiSelectionActive:i})},[i])}function vSe(e){const r=vr();S.useEffect(()=>{const n=()=>{if(!e.current||!(e.current.checkVisibility?.()??!0))return!1;const o=P7(e.current);(o.height===0||o.width===0)&&r.getState().onError?.("004",Gl.error004()),r.setState({width:o.width||500,height:o.height||500})};if(e.current){n(),window.addEventListener("resize",n);const o=new ResizeObserver(()=>n());return o.observe(e.current),()=>{window.removeEventListener("resize",n),o&&e.current&&o.unobserve(e.current)}}},[])}const ow={position:"absolute",width:"100%",height:"100%",top:0,left:0},bSe=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function xSe({onPaneContextMenu:e,zoomOnScroll:r=!0,zoomOnPinch:n=!0,panOnScroll:o=!1,panOnScrollSpeed:a=.5,panOnScrollMode:i=Yu.Free,zoomOnDoubleClick:l=!0,panOnDrag:s=!0,defaultViewport:c,translateExtent:d,minZoom:u,maxZoom:p,zoomActivationKeyCode:f,preventScrolling:g=!0,children:v,noWheelClassName:w,noPanClassName:x,onViewportChange:k,isControlledViewport:C,paneClickDistance:_,selectionOnDrag:$}){const z=vr(),T=S.useRef(null),{userSelectionActive:A,lib:R,connectionInProgress:j}=Dt(bSe,jr),I=X1(f),P=S.useRef();vSe(T);const L=S.useCallback(H=>{k?.({x:H[0],y:H[1],zoom:H[2]}),C||z.setState({transform:H})},[k,C]);return S.useEffect(()=>{if(T.current){P.current=$9e({domNode:T.current,minZoom:u,maxZoom:p,translateExtent:d,viewport:c,onDraggingChange:B=>z.setState({paneDragging:B}),onPanZoomStart:(B,F)=>{const{onViewportChangeStart:q,onMoveStart:G}=z.getState();G?.(B,F),q?.(F)},onPanZoom:(B,F)=>{const{onViewportChange:q,onMove:G}=z.getState();G?.(B,F),q?.(F)},onPanZoomEnd:(B,F)=>{const{onViewportChangeEnd:q,onMoveEnd:G}=z.getState();G?.(B,F),q?.(F)}});const{x:H,y:M,zoom:V}=P.current.getViewport();return z.setState({panZoom:P.current,transform:[H,M,V],domNode:T.current.closest(".react-flow")}),()=>{P.current?.destroy()}}},[]),S.useEffect(()=>{P.current?.update({onPaneContextMenu:e,zoomOnScroll:r,zoomOnPinch:n,panOnScroll:o,panOnScrollSpeed:a,panOnScrollMode:i,zoomOnDoubleClick:l,panOnDrag:s,zoomActivationKeyPressed:I,preventScrolling:g,noPanClassName:x,userSelectionActive:A,noWheelClassName:w,lib:R,onTransformChange:L,connectionInProgress:j,selectionOnDrag:$,paneClickDistance:_})},[e,r,n,o,a,i,l,s,I,g,x,A,w,R,L,j,$,_]),y.jsx("div",{className:"react-flow__renderer",ref:T,style:ow,children:v})}const wSe=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function kSe(){const{userSelectionActive:e,userSelectionRect:r}=Dt(wSe,jr);return e&&r?y.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:r.width,height:r.height,transform:`translate(${r.x}px, ${r.y}px)`}}):null}const K7=(e,r)=>n=>{n.target===r.current&&e?.(n)},_Se=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function SSe({isSelecting:e,selectionKeyPressed:r,selectionMode:n=q1.Full,panOnDrag:o,paneClickDistance:a,selectionOnDrag:i,onSelectionStart:l,onSelectionEnd:s,onPaneClick:c,onPaneContextMenu:d,onPaneScroll:u,onPaneMouseEnter:p,onPaneMouseMove:f,onPaneMouseLeave:g,children:v}){const w=vr(),{userSelectionActive:x,elementsSelectable:k,dragging:C,connectionInProgress:_}=Dt(_Se,jr),$=k&&(e||x),z=S.useRef(null),T=S.useRef(),A=S.useRef(new Set),R=S.useRef(new Set),j=S.useRef(!1),I=q=>{if(j.current||_){j.current=!1;return}c?.(q),w.getState().resetSelectedElements(),w.setState({nodesSelectionActive:!1})},P=q=>{if(Array.isArray(o)&&o?.includes(2)){q.preventDefault();return}d?.(q)},L=u?q=>u(q):void 0,H=q=>{j.current&&(q.stopPropagation(),j.current=!1)},M=q=>{const{domNode:G}=w.getState();if(T.current=G?.getBoundingClientRect(),!T.current)return;const U=q.target===z.current;if(!U&&q.target.closest(".nokey")||!e||!(i&&U||r)||q.button!==0||!q.isPrimary)return;q.target?.setPointerCapture?.(q.pointerId),j.current=!1;const{x:Y,y:Z}=Ki(q.nativeEvent,T.current);w.setState({userSelectionRect:{width:0,height:0,startX:Y,startY:Z,x:Y,y:Z}}),U||(q.stopPropagation(),q.preventDefault())},V=q=>{const{userSelectionRect:G,transform:U,nodeLookup:Y,edgeLookup:Z,connectionLookup:O,triggerNodeChanges:W,triggerEdgeChanges:K,defaultEdgeOptions:Q,resetSelectedElements:ae}=w.getState();if(!T.current||!G)return;const{x:te,y:re}=Ki(q.nativeEvent,T.current),{startX:ue,startY:_e}=G;if(!j.current){const Be=r?0:a;if(Math.hypot(te-ue,re-_e)<=Be)return;ae(),l?.(q)}j.current=!0;const ce={startX:ue,startY:_e,x:teBe.id)),R.current=new Set;const je=Q?.selectable??!0;for(const Be of A.current){const Je=O.get(Be);if(Je)for(const{edgeId:st}of Je.values()){const Le=Z.get(st);Le&&(Le.selectable??je)&&R.current.add(st)}}if(!MF(pe,A.current)){const Be=uf(Y,A.current,!0);W(Be)}if(!MF(xe,R.current)){const Be=uf(Z,R.current);K(Be)}w.setState({userSelectionRect:ce,userSelectionActive:!0,nodesSelectionActive:!1})},B=q=>{q.button===0&&(q.target?.releasePointerCapture?.(q.pointerId),!x&&q.target===z.current&&w.getState().userSelectionRect&&I?.(q),w.setState({userSelectionActive:!1,userSelectionRect:null}),j.current&&(s?.(q),w.setState({nodesSelectionActive:A.current.size>0})))},F=o===!0||Array.isArray(o)&&o.includes(0);return y.jsxs("div",{className:dn(["react-flow__pane",{draggable:F,dragging:C,selection:e}]),onClick:$?void 0:K7(I,z),onContextMenu:K7(P,z),onWheel:K7(L,z),onPointerEnter:$?void 0:p,onPointerMove:$?V:f,onPointerUp:$?B:void 0,onPointerDownCapture:$?M:void 0,onClickCapture:$?H:void 0,onPointerLeave:g,ref:z,style:ow,children:[v,y.jsx(kSe,{})]})}function Q7({id:e,store:r,unselect:n=!1,nodeRef:o}){const{addSelectedNodes:a,unselectNodesAndEdges:i,multiSelectionActive:l,nodeLookup:s,onError:c}=r.getState(),d=s.get(e);if(!d){c?.("012",Gl.error012(e));return}r.setState({nodesSelectionActive:!1}),d.selected?(n||d.selected&&l)&&(i({nodes:[d],edges:[]}),requestAnimationFrame(()=>o?.current?.blur())):a([e])}function LV({nodeRef:e,disabled:r=!1,noDragClassName:n,handleSelector:o,nodeId:a,isSelectable:i,nodeClickDistance:l}){const s=vr(),[c,d]=S.useState(!1),u=S.useRef();return S.useEffect(()=>{u.current=h9e({getStoreItems:()=>s.getState(),onNodeMouseDown:p=>{Q7({id:p,store:s,nodeRef:e})},onDragStart:()=>{d(!0)},onDragStop:()=>{d(!1)}})},[]),S.useEffect(()=>{if(r)u.current?.destroy();else if(e.current)return u.current?.update({noDragClassName:n,handleSelector:o,domNode:e.current,isSelectable:i,nodeId:a,nodeClickDistance:l}),()=>{u.current?.destroy()}},[n,o,r,i,e,a]),c}const ESe=e=>r=>r.selected&&(r.draggable||e&&typeof r.draggable>"u");function FV(){const e=vr();return S.useCallback(r=>{const{nodeExtent:n,snapToGrid:o,snapGrid:a,nodesDraggable:i,onError:l,updateNodePositions:s,nodeLookup:c,nodeOrigin:d}=e.getState(),u=new Map,p=ESe(i),f=o?a[0]:5,g=o?a[1]:5,v=r.direction.x*f*r.factor,w=r.direction.y*g*r.factor;for(const[,x]of c){if(!p(x))continue;let k={x:x.internals.positionAbsolute.x+v,y:x.internals.positionAbsolute.y+w};o&&(k=W1(k,a));const{position:C,positionAbsolute:_}=CF({nodeId:x.id,nextPosition:k,nodeLookup:c,nodeExtent:n,nodeOrigin:d,onError:l});x.position=C,x.internals.positionAbsolute=_,u.set(x.id,x)}s(u)},[])}const J7=S.createContext(null),CSe=J7.Provider;J7.Consumer;const e9=()=>S.useContext(J7),$Se=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),zSe=(e,r,n)=>o=>{const{connectionClickStartHandle:a,connectionMode:i,connection:l}=o,{fromHandle:s,toHandle:c,isValid:d}=l,u=c?.nodeId===e&&c?.id===r&&c?.type===n;return{connectingFrom:s?.nodeId===e&&s?.id===r&&s?.type===n,connectingTo:u,clickConnecting:a?.nodeId===e&&a?.id===r&&a?.type===n,isPossibleEndHandle:i===rf.Strict?s?.type!==n:e!==s?.nodeId||r!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!a,valid:u&&d}};function RSe({type:e="source",position:r=Ue.Top,isValidConnection:n,isConnectable:o=!0,isConnectableStart:a=!0,isConnectableEnd:i=!0,id:l,onConnect:s,children:c,className:d,onMouseDown:u,onTouchStart:p,...f},g){const v=l||null,w=e==="target",x=vr(),k=e9(),{connectOnClick:C,noPanClassName:_,rfId:$}=Dt($Se,jr),{connectingFrom:z,connectingTo:T,clickConnecting:A,isPossibleEndHandle:R,connectionInProcess:j,clickConnectionInProcess:I,valid:P}=Dt(zSe(k,v,e),jr);k||x.getState().onError?.("010",Gl.error010());const L=V=>{const{defaultEdgeOptions:B,onConnect:F,hasDefaultEdges:q}=x.getState(),G={...B,...V};if(q){const{edges:U,setEdges:Y}=x.getState();Y(K7e(G,U))}F?.(G),s?.(G)},H=V=>{if(!k)return;const B=BF(V.nativeEvent);if(a&&(B&&V.button===0||!B)){const F=x.getState();U7.onPointerDown(V.nativeEvent,{handleDomNode:V.currentTarget,autoPanOnConnect:F.autoPanOnConnect,connectionMode:F.connectionMode,connectionRadius:F.connectionRadius,domNode:F.domNode,nodeLookup:F.nodeLookup,lib:F.lib,isTarget:w,handleId:v,nodeId:k,flowId:F.rfId,panBy:F.panBy,cancelConnection:F.cancelConnection,onConnectStart:F.onConnectStart,onConnectEnd:F.onConnectEnd,updateConnection:F.updateConnection,onConnect:L,isValidConnection:n||F.isValidConnection,getTransform:()=>x.getState().transform,getFromHandle:()=>x.getState().connection.fromHandle,autoPanSpeed:F.autoPanSpeed,dragThreshold:F.connectionDragThreshold})}B?u?.(V):p?.(V)},M=V=>{const{onClickConnectStart:B,onClickConnectEnd:F,connectionClickStartHandle:q,connectionMode:G,isValidConnection:U,lib:Y,rfId:Z,nodeLookup:O,connection:W}=x.getState();if(!k||!q&&!a)return;if(!q){B?.(V.nativeEvent,{nodeId:k,handleId:v,handleType:e}),x.setState({connectionClickStartHandle:{nodeId:k,type:e,id:v}});return}const K=NF(V.target),Q=n||U,{connection:ae,isValid:te}=U7.isValid(V.nativeEvent,{handle:{nodeId:k,id:v,type:e},connectionMode:G,fromNodeId:q.nodeId,fromHandleId:q.id||null,fromType:q.type,isValidConnection:Q,flowId:Z,doc:K,lib:Y,nodeLookup:O});te&&ae&&L(ae);const re=structuredClone(W);delete re.inProgress,re.toPosition=re.toHandle?re.toHandle.position:null,F?.(V,re),x.setState({connectionClickStartHandle:null})};return y.jsx("div",{"data-handleid":v,"data-nodeid":k,"data-handlepos":r,"data-id":`${$}-${k}-${v}-${e}`,className:dn(["react-flow__handle",`react-flow__handle-${r}`,"nodrag",_,d,{source:!w,target:w,connectable:o,connectablestart:a,connectableend:i,clickconnecting:A,connectingfrom:z,connectingto:T,valid:P,connectionindicator:o&&(!j||R)&&(j||I?i:a)}]),onMouseDown:H,onTouchStart:H,onClick:C?M:void 0,ref:g,...f,children:c})}const Oo=S.memo(PV(RSe));function TSe({data:e,isConnectable:r,sourcePosition:n=Ue.Bottom}){return y.jsxs(y.Fragment,{children:[e?.label,y.jsx(Oo,{type:"source",position:n,isConnectable:r})]})}function jSe({data:e,isConnectable:r,targetPosition:n=Ue.Top,sourcePosition:o=Ue.Bottom}){return y.jsxs(y.Fragment,{children:[y.jsx(Oo,{type:"target",position:n,isConnectable:r}),e?.label,y.jsx(Oo,{type:"source",position:o,isConnectable:r})]})}function ASe(){return null}function DSe({data:e,isConnectable:r,targetPosition:n=Ue.Top}){return y.jsxs(y.Fragment,{children:[y.jsx(Oo,{type:"target",position:n,isConnectable:r}),e?.label]})}const aw={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},VV={input:TSe,default:jSe,output:DSe,group:ASe};function MSe(e){return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??e.style?.width,height:e.height??e.initialHeight??e.style?.height}:{width:e.width??e.style?.width,height:e.height??e.style?.height}}const NSe=e=>{const{width:r,height:n,x:o,y:a}=nf(e.nodeLookup,{filter:i=>!!i.selected});return{width:Zi(r)?r:null,height:Zi(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${o}px,${a}px)`}};function PSe({onSelectionContextMenu:e,noPanClassName:r,disableKeyboardA11y:n}){const o=vr(),{width:a,height:i,transformString:l,userSelectionActive:s}=Dt(NSe,jr),c=FV(),d=S.useRef(null);if(S.useEffect(()=>{n||d.current?.focus({preventScroll:!0})},[n]),LV({nodeRef:d}),s||!a||!i)return null;const u=e?f=>{const g=o.getState().nodes.filter(v=>v.selected);e(f,g)}:void 0,p=f=>{Object.prototype.hasOwnProperty.call(aw,f.key)&&(f.preventDefault(),c({direction:aw[f.key],factor:f.shiftKey?4:1}))};return y.jsx("div",{className:dn(["react-flow__nodesselection","react-flow__container",r]),style:{transform:l},children:y.jsx("div",{ref:d,className:"react-flow__nodesselection-rect",onContextMenu:u,tabIndex:n?void 0:-1,onKeyDown:n?void 0:p,style:{width:a,height:i}})})}const qV=typeof window<"u"?window:void 0,BSe=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function HV({children:e,onPaneClick:r,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:a,onPaneContextMenu:i,onPaneScroll:l,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:d,selectionOnDrag:u,selectionMode:p,onSelectionStart:f,onSelectionEnd:g,multiSelectionKeyCode:v,panActivationKeyCode:w,zoomActivationKeyCode:x,elementsSelectable:k,zoomOnScroll:C,zoomOnPinch:_,panOnScroll:$,panOnScrollSpeed:z,panOnScrollMode:T,zoomOnDoubleClick:A,panOnDrag:R,defaultViewport:j,translateExtent:I,minZoom:P,maxZoom:L,preventScrolling:H,onSelectionContextMenu:M,noWheelClassName:V,noPanClassName:B,disableKeyboardA11y:F,onViewportChange:q,isControlledViewport:G}){const{nodesSelectionActive:U,userSelectionActive:Y}=Dt(BSe,jr),Z=X1(d,{target:qV}),O=X1(w,{target:qV}),W=O||R,K=O||$,Q=u&&W!==!0,ae=Z||Y||Q;return ySe({deleteKeyCode:c,multiSelectionKeyCode:v}),y.jsx(xSe,{onPaneContextMenu:i,elementsSelectable:k,zoomOnScroll:C,zoomOnPinch:_,panOnScroll:K,panOnScrollSpeed:z,panOnScrollMode:T,zoomOnDoubleClick:A,panOnDrag:!Z&&W,defaultViewport:j,translateExtent:I,minZoom:P,maxZoom:L,zoomActivationKeyCode:x,preventScrolling:H,noWheelClassName:V,noPanClassName:B,onViewportChange:q,isControlledViewport:G,paneClickDistance:s,selectionOnDrag:Q,children:y.jsxs(SSe,{onSelectionStart:f,onSelectionEnd:g,onPaneClick:r,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:a,onPaneContextMenu:i,onPaneScroll:l,panOnDrag:W,isSelecting:!!ae,selectionMode:p,selectionKeyPressed:Z,paneClickDistance:s,selectionOnDrag:Q,children:[e,U&&y.jsx(PSe,{onSelectionContextMenu:M,noPanClassName:B,disableKeyboardA11y:F})]})})}HV.displayName="FlowRenderer";const ISe=S.memo(HV),OSe=e=>r=>e?M7(r.nodeLookup,{x:0,y:0,width:r.width,height:r.height},r.transform,!0).map(n=>n.id):Array.from(r.nodeLookup.keys());function LSe(e){return Dt(S.useCallback(OSe(e),[e]),jr)}const FSe=e=>e.updateNodeInternals;function VSe(){const e=Dt(FSe),[r]=S.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(n=>{const o=new Map;n.forEach(a=>{const i=a.target.getAttribute("data-id");o.set(i,{id:i,nodeElement:a.target,force:!0})}),e(o)}));return S.useEffect(()=>()=>{r?.disconnect()},[r]),r}function qSe({node:e,nodeType:r,hasDimensions:n,resizeObserver:o}){const a=vr(),i=S.useRef(null),l=S.useRef(null),s=S.useRef(e.sourcePosition),c=S.useRef(e.targetPosition),d=S.useRef(r),u=n&&!!e.internals.handleBounds;return S.useEffect(()=>{i.current&&!e.hidden&&(!u||l.current!==i.current)&&(l.current&&o?.unobserve(l.current),o?.observe(i.current),l.current=i.current)},[u,e.hidden]),S.useEffect(()=>()=>{l.current&&(o?.unobserve(l.current),l.current=null)},[]),S.useEffect(()=>{if(i.current){const p=d.current!==r,f=s.current!==e.sourcePosition,g=c.current!==e.targetPosition;(p||f||g)&&(d.current=r,s.current=e.sourcePosition,c.current=e.targetPosition,a.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:i.current,force:!0}]])))}},[e.id,r,e.sourcePosition,e.targetPosition]),i}function HSe({id:e,onClick:r,onMouseEnter:n,onMouseMove:o,onMouseLeave:a,onContextMenu:i,onDoubleClick:l,nodesDraggable:s,elementsSelectable:c,nodesConnectable:d,nodesFocusable:u,resizeObserver:p,noDragClassName:f,noPanClassName:g,disableKeyboardA11y:v,rfId:w,nodeTypes:x,nodeClickDistance:k,onError:C}){const{node:_,internals:$,isParent:z}=Dt(te=>{const re=te.nodeLookup.get(e),ue=te.parentLookup.has(e);return{node:re,internals:re.internals,isParent:ue}},jr);let T=_.type||"default",A=x?.[T]||VV[T];A===void 0&&(C?.("003",Gl.error003(T)),T="default",A=x?.default||VV.default);const R=!!(_.draggable||s&&typeof _.draggable>"u"),j=!!(_.selectable||c&&typeof _.selectable>"u"),I=!!(_.connectable||d&&typeof _.connectable>"u"),P=!!(_.focusable||u&&typeof _.focusable>"u"),L=vr(),H=AF(_),M=qSe({node:_,nodeType:T,hasDimensions:H,resizeObserver:p}),V=LV({nodeRef:M,disabled:_.hidden||!R,noDragClassName:f,handleSelector:_.dragHandle,nodeId:e,isSelectable:j,nodeClickDistance:k}),B=FV();if(_.hidden)return null;const F=_o(_),q=MSe(_),G=j||R||r||n||o||a,U=n?te=>n(te,{...$.userNode}):void 0,Y=o?te=>o(te,{...$.userNode}):void 0,Z=a?te=>a(te,{...$.userNode}):void 0,O=i?te=>i(te,{...$.userNode}):void 0,W=l?te=>l(te,{...$.userNode}):void 0,K=te=>{const{selectNodesOnDrag:re,nodeDragThreshold:ue}=L.getState();j&&(!re||!R||ue>0)&&Q7({id:e,store:L,nodeRef:M}),r&&r(te,{...$.userNode})},Q=te=>{if(!(PF(te.nativeEvent)||v)){if(bF.includes(te.key)&&j){const re=te.key==="Escape";Q7({id:e,store:L,unselect:re,nodeRef:M})}else if(R&&_.selected&&Object.prototype.hasOwnProperty.call(aw,te.key)){te.preventDefault();const{ariaLabelConfig:re}=L.getState();L.setState({ariaLiveMessage:re["node.a11yDescription.ariaLiveMessage"]({direction:te.key.replace("Arrow","").toLowerCase(),x:~~$.positionAbsolute.x,y:~~$.positionAbsolute.y})}),B({direction:aw[te.key],factor:te.shiftKey?4:1})}}},ae=()=>{if(v||!M.current?.matches(":focus-visible"))return;const{transform:te,width:re,height:ue,autoPanOnNodeFocus:_e,setCenter:ce}=L.getState();_e&&(M7(new Map([[e,_]]),{x:0,y:0,width:re,height:ue},te,!0).length>0||ce(_.position.x+F.width/2,_.position.y+F.height/2,{zoom:te[2]}))};return y.jsx("div",{className:dn(["react-flow__node",`react-flow__node-${T}`,{[g]:R},_.className,{selected:_.selected,selectable:j,parent:z,draggable:R,dragging:V}]),ref:M,style:{zIndex:$.z,transform:`translate(${$.positionAbsolute.x}px,${$.positionAbsolute.y}px)`,pointerEvents:G?"all":"none",visibility:H?"visible":"hidden",..._.style,...q},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:U,onMouseMove:Y,onMouseLeave:Z,onContextMenu:O,onClick:K,onDoubleClick:W,onKeyDown:P?Q:void 0,tabIndex:P?0:void 0,onFocus:P?ae:void 0,role:_.ariaRole??(P?"group":void 0),"aria-roledescription":"node","aria-describedby":v?void 0:`${_V}-${w}`,"aria-label":_.ariaLabel,..._.domAttributes,children:y.jsx(CSe,{value:e,children:y.jsx(A,{id:e,data:_.data,type:T,positionAbsoluteX:$.positionAbsolute.x,positionAbsoluteY:$.positionAbsolute.y,selected:_.selected??!1,selectable:j,draggable:R,deletable:_.deletable??!0,isConnectable:I,sourcePosition:_.sourcePosition,targetPosition:_.targetPosition,dragging:V,dragHandle:_.dragHandle,zIndex:$.z,parentId:_.parentId,...F})})})}var USe=S.memo(HSe);const WSe=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function UV(e){const{nodesDraggable:r,nodesConnectable:n,nodesFocusable:o,elementsSelectable:a,onError:i}=Dt(WSe,jr),l=LSe(e.onlyRenderVisibleElements),s=VSe();return y.jsx("div",{className:"react-flow__nodes",style:ow,children:l.map(c=>y.jsx(USe,{id:c,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:s,nodesDraggable:r,nodesConnectable:n,nodesFocusable:o,elementsSelectable:a,nodeClickDistance:e.nodeClickDistance,onError:i},c))})}UV.displayName="NodeRenderer";const GSe=S.memo(UV);function YSe(e){return Dt(S.useCallback(r=>{if(!e)return r.edges.map(o=>o.id);const n=[];if(r.width&&r.height)for(const o of r.edges){const a=r.nodeLookup.get(o.source),i=r.nodeLookup.get(o.target);a&&i&&Y7e({sourceNode:a,targetNode:i,width:r.width,height:r.height,transform:r.transform})&&n.push(o.id)}return n},[e]),jr)}const XSe=({color:e="none",strokeWidth:r=1})=>{const n={strokeWidth:r,...e&&{stroke:e}};return y.jsx("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},ZSe=({color:e="none",strokeWidth:r=1})=>{const n={strokeWidth:r,...e&&{stroke:e,fill:e}};return y.jsx("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},WV={[Hx.Arrow]:XSe,[Hx.ArrowClosed]:ZSe};function KSe(e){const r=vr();return S.useMemo(()=>Object.prototype.hasOwnProperty.call(WV,e)?WV[e]:(r.getState().onError?.("009",Gl.error009(e)),null),[e])}const QSe=({id:e,type:r,color:n,width:o=12.5,height:a=12.5,markerUnits:i="strokeWidth",strokeWidth:l,orient:s="auto-start-reverse"})=>{const c=KSe(r);return c?y.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${o}`,markerHeight:`${a}`,viewBox:"-10 -10 20 20",markerUnits:i,orient:s,refX:"0",refY:"0",children:y.jsx(c,{color:n,strokeWidth:l})}):null},GV=({defaultColor:e,rfId:r})=>{const n=Dt(i=>i.edges),o=Dt(i=>i.defaultEdgeOptions),a=S.useMemo(()=>t9e(n,{id:r,defaultColor:e,defaultMarkerStart:o?.markerStart,defaultMarkerEnd:o?.markerEnd}),[n,o,r,e]);return a.length?y.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:y.jsx("defs",{children:a.map(i=>y.jsx(QSe,{id:i.id,type:i.type,color:i.color,width:i.width,height:i.height,markerUnits:i.markerUnits,strokeWidth:i.strokeWidth,orient:i.orient},i.id))})}):null};GV.displayName="MarkerDefinitions";var JSe=S.memo(GV);function YV({x:e,y:r,label:n,labelStyle:o,labelShowBg:a=!0,labelBgStyle:i,labelBgPadding:l=[2,4],labelBgBorderRadius:s=2,children:c,className:d,...u}){const[p,f]=S.useState({x:1,y:0,width:0,height:0}),g=dn(["react-flow__edge-textwrapper",d]),v=S.useRef(null);return S.useEffect(()=>{if(v.current){const w=v.current.getBBox();f({x:w.x,y:w.y,width:w.width,height:w.height})}},[n]),n?y.jsxs("g",{transform:`translate(${e-p.width/2} ${r-p.height/2})`,className:g,visibility:p.width?"visible":"hidden",...u,children:[a&&y.jsx("rect",{width:p.width+2*l[0],x:-l[0],y:-l[1],height:p.height+2*l[1],className:"react-flow__edge-textbg",style:i,rx:s,ry:s}),y.jsx("text",{className:"react-flow__edge-text",y:p.height/2,dy:"0.3em",ref:v,style:o,children:n}),c]}):null}YV.displayName="EdgeText";const eEe=S.memo(YV);function iw({path:e,labelX:r,labelY:n,label:o,labelStyle:a,labelShowBg:i,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:d=20,...u}){return y.jsxs(y.Fragment,{children:[y.jsx("path",{...u,d:e,fill:"none",className:dn(["react-flow__edge-path",u.className])}),d?y.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:d,className:"react-flow__edge-interaction"}):null,o&&Zi(r)&&Zi(n)?y.jsx(eEe,{x:r,y:n,label:o,labelStyle:a,labelShowBg:i,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function XV({pos:e,x1:r,y1:n,x2:o,y2:a}){return e===Ue.Left||e===Ue.Right?[.5*(r+o),n]:[r,.5*(n+a)]}function ZV({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:a,targetPosition:i=Ue.Top}){const[l,s]=XV({pos:n,x1:e,y1:r,x2:o,y2:a}),[c,d]=XV({pos:i,x1:o,y1:a,x2:e,y2:r}),[u,p,f,g]=OF({sourceX:e,sourceY:r,targetX:o,targetY:a,sourceControlX:l,sourceControlY:s,targetControlX:c,targetControlY:d});return[`M${e},${r} C${l},${s} ${c},${d} ${o},${a}`,u,p,f,g]}function KV(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:a,targetY:i,sourcePosition:l,targetPosition:s,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,interactionWidth:k})=>{const[C,_,$]=ZV({sourceX:n,sourceY:o,sourcePosition:l,targetX:a,targetY:i,targetPosition:s}),z=e.isInternal?void 0:r;return y.jsx(iw,{id:z,path:C,labelX:_,labelY:$,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,interactionWidth:k})})}const tEe=KV({isInternal:!1}),QV=KV({isInternal:!0});tEe.displayName="SimpleBezierEdge",QV.displayName="SimpleBezierEdgeInternal";function JV(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:a,targetY:i,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,sourcePosition:g=Ue.Bottom,targetPosition:v=Ue.Top,markerEnd:w,markerStart:x,pathOptions:k,interactionWidth:C})=>{const[_,$,z]=Kx({sourceX:n,sourceY:o,sourcePosition:g,targetX:a,targetY:i,targetPosition:v,borderRadius:k?.borderRadius,offset:k?.offset,stepPosition:k?.stepPosition}),T=e.isInternal?void 0:r;return y.jsx(iw,{id:T,path:_,labelX:$,labelY:z,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:w,markerStart:x,interactionWidth:C})})}const eq=JV({isInternal:!1}),tq=JV({isInternal:!0});eq.displayName="SmoothStepEdge",tq.displayName="SmoothStepEdgeInternal";function rq(e){return S.memo(({id:r,...n})=>{const o=e.isInternal?void 0:r;return y.jsx(eq,{...n,id:o,pathOptions:S.useMemo(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}const rEe=rq({isInternal:!1}),nq=rq({isInternal:!0});rEe.displayName="StepEdge",nq.displayName="StepEdgeInternal";function oq(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:a,targetY:i,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:g,markerStart:v,interactionWidth:w})=>{const[x,k,C]=VF({sourceX:n,sourceY:o,targetX:a,targetY:i}),_=e.isInternal?void 0:r;return y.jsx(iw,{id:_,path:x,labelX:k,labelY:C,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:g,markerStart:v,interactionWidth:w})})}const nEe=oq({isInternal:!1}),aq=oq({isInternal:!0});nEe.displayName="StraightEdge",aq.displayName="StraightEdgeInternal";function iq(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:a,targetY:i,sourcePosition:l=Ue.Bottom,targetPosition:s=Ue.Top,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,pathOptions:k,interactionWidth:C})=>{const[_,$,z]=Zx({sourceX:n,sourceY:o,sourcePosition:l,targetX:a,targetY:i,targetPosition:s,curvature:k?.curvature}),T=e.isInternal?void 0:r;return y.jsx(iw,{id:T,path:_,labelX:$,labelY:z,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,interactionWidth:C})})}const oEe=iq({isInternal:!1}),lq=iq({isInternal:!0});oEe.displayName="BezierEdge",lq.displayName="BezierEdgeInternal";const sq={default:lq,straight:aq,step:nq,smoothstep:tq,simplebezier:QV},cq={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},aEe=(e,r,n)=>n===Ue.Left?e-r:n===Ue.Right?e+r:e,iEe=(e,r,n)=>n===Ue.Top?e-r:n===Ue.Bottom?e+r:e,dq="react-flow__edgeupdater";function uq({position:e,centerX:r,centerY:n,radius:o=10,onMouseDown:a,onMouseEnter:i,onMouseOut:l,type:s}){return y.jsx("circle",{onMouseDown:a,onMouseEnter:i,onMouseOut:l,className:dn([dq,`${dq}-${s}`]),cx:aEe(r,o,e),cy:iEe(n,o,e),r:o,stroke:"transparent",fill:"transparent"})}function lEe({isReconnectable:e,reconnectRadius:r,edge:n,sourceX:o,sourceY:a,targetX:i,targetY:l,sourcePosition:s,targetPosition:c,onReconnect:d,onReconnectStart:u,onReconnectEnd:p,setReconnecting:f,setUpdateHover:g}){const v=vr(),w=($,z)=>{if($.button!==0)return;const{autoPanOnConnect:T,domNode:A,isValidConnection:R,connectionMode:j,connectionRadius:I,lib:P,onConnectStart:L,onConnectEnd:H,cancelConnection:M,nodeLookup:V,rfId:B,panBy:F,updateConnection:q}=v.getState(),G=z.type==="target",U=(O,W)=>{f(!1),p?.(O,n,z.type,W)},Y=O=>d?.(n,O),Z=(O,W)=>{f(!0),u?.($,n,z.type),L?.(O,W)};U7.onPointerDown($.nativeEvent,{autoPanOnConnect:T,connectionMode:j,connectionRadius:I,domNode:A,handleId:z.id,nodeId:z.nodeId,nodeLookup:V,isTarget:G,edgeUpdaterType:z.type,lib:P,flowId:B,cancelConnection:M,panBy:F,isValidConnection:R,onConnect:Y,onConnectStart:Z,onConnectEnd:H,onReconnectEnd:U,updateConnection:q,getTransform:()=>v.getState().transform,getFromHandle:()=>v.getState().connection.fromHandle,dragThreshold:v.getState().connectionDragThreshold,handleDomNode:$.currentTarget})},x=$=>w($,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),k=$=>w($,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),C=()=>g(!0),_=()=>g(!1);return y.jsxs(y.Fragment,{children:[(e===!0||e==="source")&&y.jsx(uq,{position:s,centerX:o,centerY:a,radius:r,onMouseDown:x,onMouseEnter:C,onMouseOut:_,type:"source"}),(e===!0||e==="target")&&y.jsx(uq,{position:c,centerX:i,centerY:l,radius:r,onMouseDown:k,onMouseEnter:C,onMouseOut:_,type:"target"})]})}function sEe({id:e,edgesFocusable:r,edgesReconnectable:n,elementsSelectable:o,onClick:a,onDoubleClick:i,onContextMenu:l,onMouseEnter:s,onMouseMove:c,onMouseLeave:d,reconnectRadius:u,onReconnect:p,onReconnectStart:f,onReconnectEnd:g,rfId:v,edgeTypes:w,noPanClassName:x,onError:k,disableKeyboardA11y:C}){let _=Dt(ce=>ce.edgeLookup.get(e));const $=Dt(ce=>ce.defaultEdgeOptions);_=$?{...$,..._}:_;let z=_.type||"default",T=w?.[z]||sq[z];T===void 0&&(k?.("011",Gl.error011(z)),z="default",T=w?.default||sq.default);const A=!!(_.focusable||r&&typeof _.focusable>"u"),R=typeof p<"u"&&(_.reconnectable||n&&typeof _.reconnectable>"u"),j=!!(_.selectable||o&&typeof _.selectable>"u"),I=S.useRef(null),[P,L]=S.useState(!1),[H,M]=S.useState(!1),V=vr(),{zIndex:B,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:Z}=Dt(S.useCallback(ce=>{const pe=ce.nodeLookup.get(_.source),xe=ce.nodeLookup.get(_.target);if(!pe||!xe)return{zIndex:_.zIndex,...cq};const je=WF({id:e,sourceNode:pe,targetNode:xe,sourceHandle:_.sourceHandle||null,targetHandle:_.targetHandle||null,connectionMode:ce.connectionMode,onError:k});return{zIndex:G7e({selected:_.selected,zIndex:_.zIndex,sourceNode:pe,targetNode:xe,elevateOnSelect:ce.elevateEdgesOnSelect,zIndexMode:ce.zIndexMode}),...je||cq}},[_.source,_.target,_.sourceHandle,_.targetHandle,_.selected,_.zIndex]),jr),O=S.useMemo(()=>_.markerStart?`url('#${B7(_.markerStart,v)}')`:void 0,[_.markerStart,v]),W=S.useMemo(()=>_.markerEnd?`url('#${B7(_.markerEnd,v)}')`:void 0,[_.markerEnd,v]);if(_.hidden||F===null||q===null||G===null||U===null)return null;const K=ce=>{const{addSelectedEdges:pe,unselectNodesAndEdges:xe,multiSelectionActive:je}=V.getState();j&&(V.setState({nodesSelectionActive:!1}),_.selected&&je?(xe({nodes:[],edges:[_]}),I.current?.blur()):pe([e])),a&&a(ce,_)},Q=i?ce=>{i(ce,{..._})}:void 0,ae=l?ce=>{l(ce,{..._})}:void 0,te=s?ce=>{s(ce,{..._})}:void 0,re=c?ce=>{c(ce,{..._})}:void 0,ue=d?ce=>{d(ce,{..._})}:void 0,_e=ce=>{if(!C&&bF.includes(ce.key)&&j){const{unselectNodesAndEdges:pe,addSelectedEdges:xe}=V.getState();ce.key==="Escape"?(I.current?.blur(),pe({edges:[_]})):xe([e])}};return y.jsx("svg",{style:{zIndex:B},children:y.jsxs("g",{className:dn(["react-flow__edge",`react-flow__edge-${z}`,_.className,x,{selected:_.selected,animated:_.animated,inactive:!j&&!a,updating:P,selectable:j}]),onClick:K,onDoubleClick:Q,onContextMenu:ae,onMouseEnter:te,onMouseMove:re,onMouseLeave:ue,onKeyDown:A?_e:void 0,tabIndex:A?0:void 0,role:_.ariaRole??(A?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":_.ariaLabel===null?void 0:_.ariaLabel||`Edge from ${_.source} to ${_.target}`,"aria-describedby":A?`${SV}-${v}`:void 0,ref:I,..._.domAttributes,children:[!H&&y.jsx(T,{id:e,source:_.source,target:_.target,type:_.type,selected:_.selected,animated:_.animated,selectable:j,deletable:_.deletable??!0,label:_.label,labelStyle:_.labelStyle,labelShowBg:_.labelShowBg,labelBgStyle:_.labelBgStyle,labelBgPadding:_.labelBgPadding,labelBgBorderRadius:_.labelBgBorderRadius,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:Z,data:_.data,style:_.style,sourceHandleId:_.sourceHandle,targetHandleId:_.targetHandle,markerStart:O,markerEnd:W,pathOptions:"pathOptions"in _?_.pathOptions:void 0,interactionWidth:_.interactionWidth}),R&&y.jsx(lEe,{edge:_,isReconnectable:R,reconnectRadius:u,onReconnect:p,onReconnectStart:f,onReconnectEnd:g,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:Z,setUpdateHover:L,setReconnecting:M})]})})}var cEe=S.memo(sEe);const dEe=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function pq({defaultMarkerColor:e,onlyRenderVisibleElements:r,rfId:n,edgeTypes:o,noPanClassName:a,onReconnect:i,onEdgeContextMenu:l,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:d,onEdgeClick:u,reconnectRadius:p,onEdgeDoubleClick:f,onReconnectStart:g,onReconnectEnd:v,disableKeyboardA11y:w}){const{edgesFocusable:x,edgesReconnectable:k,elementsSelectable:C,onError:_}=Dt(dEe,jr),$=YSe(r);return y.jsxs("div",{className:"react-flow__edges",children:[y.jsx(JSe,{defaultColor:e,rfId:n}),$.map(z=>y.jsx(cEe,{id:z,edgesFocusable:x,edgesReconnectable:k,elementsSelectable:C,noPanClassName:a,onReconnect:i,onContextMenu:l,onMouseEnter:s,onMouseMove:c,onMouseLeave:d,onClick:u,reconnectRadius:p,onDoubleClick:f,onReconnectStart:g,onReconnectEnd:v,rfId:n,onError:_,edgeTypes:o,disableKeyboardA11y:w},z))]})}pq.displayName="EdgeRenderer";const uEe=S.memo(pq),pEe=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function hEe({children:e}){const r=Dt(pEe);return y.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:r},children:e})}function fEe(e){const r=pf(),n=S.useRef(!1);S.useEffect(()=>{!n.current&&r.viewportInitialized&&e&&(setTimeout(()=>e(r),1),n.current=!0)},[e,r.viewportInitialized])}const mEe=e=>e.panZoom?.syncViewport;function gEe(e){const r=Dt(mEe),n=vr();return S.useEffect(()=>{e&&(r?.(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,r]),null}function yEe(e){return e.connection.inProgress?{...e.connection,to:G1(e.connection.to,e.transform)}:{...e.connection}}function vEe(e){return yEe}function bEe(e){const r=vEe();return Dt(r,jr)}const xEe=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function wEe({containerStyle:e,style:r,type:n,component:o}){const{nodesConnectable:a,width:i,height:l,isValid:s,inProgress:c}=Dt(xEe,jr);return i&&a&&c?y.jsx("svg",{style:e,width:i,height:l,className:"react-flow__connectionline react-flow__container",children:y.jsx("g",{className:dn(["react-flow__connection",_F(s)]),children:y.jsx(hq,{style:r,type:n,CustomComponent:o,isValid:s})})}):null}const hq=({style:e,type:r=ad.Bezier,CustomComponent:n,isValid:o})=>{const{inProgress:a,from:i,fromNode:l,fromHandle:s,fromPosition:c,to:d,toNode:u,toHandle:p,toPosition:f,pointer:g}=bEe();if(!a)return;if(n)return y.jsx(n,{connectionLineType:r,connectionLineStyle:e,fromNode:l,fromHandle:s,fromX:i.x,fromY:i.y,toX:d.x,toY:d.y,fromPosition:c,toPosition:f,connectionStatus:_F(o),toNode:u,toHandle:p,pointer:g});let v="";const w={sourceX:i.x,sourceY:i.y,sourcePosition:c,targetX:d.x,targetY:d.y,targetPosition:f};switch(r){case ad.Bezier:[v]=Zx(w);break;case ad.SimpleBezier:[v]=ZV(w);break;case ad.Step:[v]=Kx({...w,borderRadius:0});break;case ad.SmoothStep:[v]=Kx(w);break;default:[v]=VF(w)}return y.jsx("path",{d:v,fill:"none",className:"react-flow__connection-path",style:e})};hq.displayName="ConnectionLine";const kEe={};function fq(e=kEe){S.useRef(e),vr(),S.useEffect(()=>{},[e])}function _Ee(){vr(),S.useRef(!1),S.useEffect(()=>{},[])}function mq({nodeTypes:e,edgeTypes:r,onInit:n,onNodeClick:o,onEdgeClick:a,onNodeDoubleClick:i,onEdgeDoubleClick:l,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:d,onNodeContextMenu:u,onSelectionContextMenu:p,onSelectionStart:f,onSelectionEnd:g,connectionLineType:v,connectionLineStyle:w,connectionLineComponent:x,connectionLineContainerStyle:k,selectionKeyCode:C,selectionOnDrag:_,selectionMode:$,multiSelectionKeyCode:z,panActivationKeyCode:T,zoomActivationKeyCode:A,deleteKeyCode:R,onlyRenderVisibleElements:j,elementsSelectable:I,defaultViewport:P,translateExtent:L,minZoom:H,maxZoom:M,preventScrolling:V,defaultMarkerColor:B,zoomOnScroll:F,zoomOnPinch:q,panOnScroll:G,panOnScrollSpeed:U,panOnScrollMode:Y,zoomOnDoubleClick:Z,panOnDrag:O,onPaneClick:W,onPaneMouseEnter:K,onPaneMouseMove:Q,onPaneMouseLeave:ae,onPaneScroll:te,onPaneContextMenu:re,paneClickDistance:ue,nodeClickDistance:_e,onEdgeContextMenu:ce,onEdgeMouseEnter:pe,onEdgeMouseMove:xe,onEdgeMouseLeave:je,reconnectRadius:Be,onReconnect:Je,onReconnectStart:st,onReconnectEnd:Le,noDragClassName:St,noWheelClassName:Ve,noPanClassName:qe,disableKeyboardA11y:Xe,nodeExtent:It,rfId:Et,viewport:be,onViewportChange:ke}){return fq(e),fq(r),_Ee(),fEe(n),gEe(be),y.jsx(ISe,{onPaneClick:W,onPaneMouseEnter:K,onPaneMouseMove:Q,onPaneMouseLeave:ae,onPaneContextMenu:re,onPaneScroll:te,paneClickDistance:ue,deleteKeyCode:R,selectionKeyCode:C,selectionOnDrag:_,selectionMode:$,onSelectionStart:f,onSelectionEnd:g,multiSelectionKeyCode:z,panActivationKeyCode:T,zoomActivationKeyCode:A,elementsSelectable:I,zoomOnScroll:F,zoomOnPinch:q,zoomOnDoubleClick:Z,panOnScroll:G,panOnScrollSpeed:U,panOnScrollMode:Y,panOnDrag:O,defaultViewport:P,translateExtent:L,minZoom:H,maxZoom:M,onSelectionContextMenu:p,preventScrolling:V,noDragClassName:St,noWheelClassName:Ve,noPanClassName:qe,disableKeyboardA11y:Xe,onViewportChange:ke,isControlledViewport:!!be,children:y.jsxs(hEe,{children:[y.jsx(uEe,{edgeTypes:r,onEdgeClick:a,onEdgeDoubleClick:l,onReconnect:Je,onReconnectStart:st,onReconnectEnd:Le,onlyRenderVisibleElements:j,onEdgeContextMenu:ce,onEdgeMouseEnter:pe,onEdgeMouseMove:xe,onEdgeMouseLeave:je,reconnectRadius:Be,defaultMarkerColor:B,noPanClassName:qe,disableKeyboardA11y:Xe,rfId:Et}),y.jsx(wEe,{style:w,type:v,component:x,containerStyle:k}),y.jsx("div",{className:"react-flow__edgelabel-renderer"}),y.jsx(GSe,{nodeTypes:e,onNodeClick:o,onNodeDoubleClick:i,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:d,onNodeContextMenu:u,nodeClickDistance:_e,onlyRenderVisibleElements:j,noPanClassName:qe,noDragClassName:St,disableKeyboardA11y:Xe,nodeExtent:It,rfId:Et}),y.jsx("div",{className:"react-flow__viewport-portal"})]})})}mq.displayName="GraphView";const SEe=S.memo(mq),gq=({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:a,height:i,fitView:l,fitViewOptions:s,minZoom:c=.5,maxZoom:d=2,nodeOrigin:u,nodeExtent:p,zIndexMode:f="basic"}={})=>{const g=new Map,v=new Map,w=new Map,x=new Map,k=o??r??[],C=n??e??[],_=u??[0,0],$=p??V1;QF(w,x,k);const z=F7(C,g,v,{nodeOrigin:_,nodeExtent:$,zIndexMode:f});let T=[0,0,1];if(l&&a&&i){const A=nf(g,{filter:P=>!!((P.width||P.initialWidth)&&(P.height||P.initialHeight))}),{x:R,y:j,zoom:I}=Ws(A,a,i,c,d,s?.padding??.1);T=[R,j,I]}return{rfId:"1",width:a??0,height:i??0,transform:T,nodes:C,nodesInitialized:z,nodeLookup:g,parentLookup:v,edges:k,edgeLookup:x,connectionLookup:w,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:o!==void 0,panZoom:null,minZoom:c,maxZoom:d,translateExtent:V1,nodeExtent:$,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:rf.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:_,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:l??!1,fitViewOptions:s,fitViewResolver:null,connection:{...wF},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:F7e,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:xF,zIndexMode:f,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},EEe=({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:a,height:i,fitView:l,fitViewOptions:s,minZoom:c,maxZoom:d,nodeOrigin:u,nodeExtent:p,zIndexMode:f})=>q9e((g,v)=>{async function w(){const{nodeLookup:x,panZoom:k,fitViewOptions:C,fitViewResolver:_,width:$,height:z,minZoom:T,maxZoom:A}=v();k&&(await O7e({nodes:x,width:$,height:z,panZoom:k,minZoom:T,maxZoom:A},C),_?.resolve(!0),g({fitViewResolver:null}))}return{...gq({nodes:e,edges:r,width:a,height:i,fitView:l,fitViewOptions:s,minZoom:c,maxZoom:d,nodeOrigin:u,nodeExtent:p,defaultNodes:n,defaultEdges:o,zIndexMode:f}),setNodes:x=>{const{nodeLookup:k,parentLookup:C,nodeOrigin:_,elevateNodesOnSelect:$,fitViewQueued:z,zIndexMode:T}=v(),A=F7(x,k,C,{nodeOrigin:_,nodeExtent:p,elevateNodesOnSelect:$,checkEquality:!0,zIndexMode:T});z&&A?(w(),g({nodes:x,nodesInitialized:A,fitViewQueued:!1,fitViewOptions:void 0})):g({nodes:x,nodesInitialized:A})},setEdges:x=>{const{connectionLookup:k,edgeLookup:C}=v();QF(k,C,x),g({edges:x})},setDefaultNodesAndEdges:(x,k)=>{if(x){const{setNodes:C}=v();C(x),g({hasDefaultNodes:!0})}if(k){const{setEdges:C}=v();C(k),g({hasDefaultEdges:!0})}},updateNodeInternals:x=>{const{triggerNodeChanges:k,nodeLookup:C,parentLookup:_,domNode:$,nodeOrigin:z,nodeExtent:T,debug:A,fitViewQueued:R,zIndexMode:j}=v(),{changes:I,updatedInternals:P}=c9e(x,C,_,$,z,T,j);P&&(a9e(C,_,{nodeOrigin:z,nodeExtent:T,zIndexMode:j}),R?(w(),g({fitViewQueued:!1,fitViewOptions:void 0})):g({}),I?.length>0&&(A&&console.log("React Flow: trigger node changes",I),k?.(I)))},updateNodePositions:(x,k=!1)=>{const C=[];let _=[];const{nodeLookup:$,triggerNodeChanges:z,connection:T,updateConnection:A,onNodesChangeMiddlewareMap:R}=v();for(const[j,I]of x){const P=$.get(j),L=!!(P?.expandParent&&P?.parentId&&I?.position),H={id:j,type:"position",position:L?{x:Math.max(0,I.position.x),y:Math.max(0,I.position.y)}:I.position,dragging:k};if(P&&T.inProgress&&T.fromNode.id===P.id){const M=Ku(P,T.fromHandle,Ue.Left,!0);A({...T,from:M})}L&&P.parentId&&C.push({id:j,parentId:P.parentId,rect:{...I.internals.positionAbsolute,width:I.measured.width??0,height:I.measured.height??0}}),_.push(H)}if(C.length>0){const{parentLookup:j,nodeOrigin:I}=v(),P=q7(C,$,j,I);_.push(...P)}for(const j of R.values())_=j(_);z(_)},triggerNodeChanges:x=>{const{onNodesChange:k,setNodes:C,nodes:_,hasDefaultNodes:$,debug:z}=v();if(x?.length){if($){const T=rw(x,_);C(T)}z&&console.log("React Flow: trigger node changes",x),k?.(x)}},triggerEdgeChanges:x=>{const{onEdgesChange:k,setEdges:C,edges:_,hasDefaultEdges:$,debug:z}=v();if(x?.length){if($){const T=nw(x,_);C(T)}z&&console.log("React Flow: trigger edge changes",x),k?.(x)}},addSelectedNodes:x=>{const{multiSelectionActive:k,edgeLookup:C,nodeLookup:_,triggerNodeChanges:$,triggerEdgeChanges:z}=v();if(k){const T=x.map(A=>Qu(A,!0));$(T);return}$(uf(_,new Set([...x]),!0)),z(uf(C))},addSelectedEdges:x=>{const{multiSelectionActive:k,edgeLookup:C,nodeLookup:_,triggerNodeChanges:$,triggerEdgeChanges:z}=v();if(k){const T=x.map(A=>Qu(A,!0));z(T);return}z(uf(C,new Set([...x]))),$(uf(_,new Set,!0))},unselectNodesAndEdges:({nodes:x,edges:k}={})=>{const{edges:C,nodes:_,nodeLookup:$,triggerNodeChanges:z,triggerEdgeChanges:T}=v(),A=x||_,R=k||C,j=A.map(P=>{const L=$.get(P.id);return L&&(L.selected=!1),Qu(P.id,!1)}),I=R.map(P=>Qu(P.id,!1));z(j),T(I)},setMinZoom:x=>{const{panZoom:k,maxZoom:C}=v();k?.setScaleExtent([x,C]),g({minZoom:x})},setMaxZoom:x=>{const{panZoom:k,minZoom:C}=v();k?.setScaleExtent([C,x]),g({maxZoom:x})},setTranslateExtent:x=>{v().panZoom?.setTranslateExtent(x),g({translateExtent:x})},resetSelectedElements:()=>{const{edges:x,nodes:k,triggerNodeChanges:C,triggerEdgeChanges:_,elementsSelectable:$}=v();if(!$)return;const z=k.reduce((A,R)=>R.selected?[...A,Qu(R.id,!1)]:A,[]),T=x.reduce((A,R)=>R.selected?[...A,Qu(R.id,!1)]:A,[]);C(z),_(T)},setNodeExtent:x=>{const{nodes:k,nodeLookup:C,parentLookup:_,nodeOrigin:$,elevateNodesOnSelect:z,nodeExtent:T,zIndexMode:A}=v();x[0][0]===T[0][0]&&x[0][1]===T[0][1]&&x[1][0]===T[1][0]&&x[1][1]===T[1][1]||(F7(k,C,_,{nodeOrigin:$,nodeExtent:x,elevateNodesOnSelect:z,checkEquality:!1,zIndexMode:A}),g({nodeExtent:x}))},panBy:x=>{const{transform:k,width:C,height:_,panZoom:$,translateExtent:z}=v();return d9e({delta:x,panZoom:$,transform:k,translateExtent:z,width:C,height:_})},setCenter:async(x,k,C)=>{const{width:_,height:$,maxZoom:z,panZoom:T}=v();if(!T)return Promise.resolve(!1);const A=typeof C?.zoom<"u"?C.zoom:z;return await T.setViewport({x:_/2-x*A,y:$/2-k*A,zoom:A},{duration:C?.duration,ease:C?.ease,interpolate:C?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{g({connection:{...wF}})},updateConnection:x=>{g({connection:x})},reset:()=>g({...gq()})}},Object.is);function lw({initialNodes:e,initialEdges:r,defaultNodes:n,defaultEdges:o,initialWidth:a,initialHeight:i,initialMinZoom:l,initialMaxZoom:s,initialFitViewOptions:c,fitView:d,nodeOrigin:u,nodeExtent:p,zIndexMode:f,children:g}){const[v]=S.useState(()=>EEe({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:a,height:i,fitView:d,minZoom:l,maxZoom:s,fitViewOptions:c,nodeOrigin:u,nodeExtent:p,zIndexMode:f}));return y.jsx(H9e,{value:v,children:y.jsx(hSe,{children:g})})}function CEe({children:e,nodes:r,edges:n,defaultNodes:o,defaultEdges:a,width:i,height:l,fitView:s,fitViewOptions:c,minZoom:d,maxZoom:u,nodeOrigin:p,nodeExtent:f,zIndexMode:g}){return S.useContext(ew)?y.jsx(y.Fragment,{children:e}):y.jsx(lw,{initialNodes:r,initialEdges:n,defaultNodes:o,defaultEdges:a,initialWidth:i,initialHeight:l,fitView:s,initialFitViewOptions:c,initialMinZoom:d,initialMaxZoom:u,nodeOrigin:p,nodeExtent:f,zIndexMode:g,children:e})}const $Ee={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function zEe({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,className:a,nodeTypes:i,edgeTypes:l,onNodeClick:s,onEdgeClick:c,onInit:d,onMove:u,onMoveStart:p,onMoveEnd:f,onConnect:g,onConnectStart:v,onConnectEnd:w,onClickConnectStart:x,onClickConnectEnd:k,onNodeMouseEnter:C,onNodeMouseMove:_,onNodeMouseLeave:$,onNodeContextMenu:z,onNodeDoubleClick:T,onNodeDragStart:A,onNodeDrag:R,onNodeDragStop:j,onNodesDelete:I,onEdgesDelete:P,onDelete:L,onSelectionChange:H,onSelectionDragStart:M,onSelectionDrag:V,onSelectionDragStop:B,onSelectionContextMenu:F,onSelectionStart:q,onSelectionEnd:G,onBeforeDelete:U,connectionMode:Y,connectionLineType:Z=ad.Bezier,connectionLineStyle:O,connectionLineComponent:W,connectionLineContainerStyle:K,deleteKeyCode:Q="Backspace",selectionKeyCode:ae="Shift",selectionOnDrag:te=!1,selectionMode:re=q1.Full,panActivationKeyCode:ue="Space",multiSelectionKeyCode:_e=lf()?"Meta":"Control",zoomActivationKeyCode:ce=lf()?"Meta":"Control",snapToGrid:pe,snapGrid:xe,onlyRenderVisibleElements:je=!1,selectNodesOnDrag:Be,nodesDraggable:Je,autoPanOnNodeFocus:st,nodesConnectable:Le,nodesFocusable:St,nodeOrigin:Ve=EV,edgesFocusable:qe,edgesReconnectable:Xe,elementsSelectable:It=!0,defaultViewport:Et=nSe,minZoom:be=.5,maxZoom:ke=2,translateExtent:Ye=V1,preventScrolling:yt=!0,nodeExtent:xt,defaultMarkerColor:Tr="#b1b1b7",zoomOnScroll:er=!0,zoomOnPinch:qt=!0,panOnScroll:Ht=!1,panOnScrollSpeed:Zr=.5,panOnScrollMode:Gt=Yu.Free,zoomOnDoubleClick:ln=!0,panOnDrag:Wn=!0,onPaneClick:fn,onPaneMouseEnter:oo,onPaneMouseMove:Yo,onPaneMouseLeave:jo,onPaneScroll:ua,onPaneContextMenu:Dl,paneClickDistance:Ao=1,nodeClickDistance:xs=0,children:ws,onReconnect:Rc,onReconnectStart:Ml,onReconnectEnd:lh,onEdgeContextMenu:ks,onEdgeDoubleClick:tu,onEdgeMouseEnter:Xo,onEdgeMouseMove:Tc,onEdgeMouseLeave:_s,reconnectRadius:ru=10,onNodesChange:Ss,onEdgesChange:Zo,noDragClassName:Nr="nodrag",noWheelClassName:Mn="nowheel",noPanClassName:Do="nopan",fitView:Nl,fitViewOptions:jc,connectOnClick:sh,attributionPosition:La,proOptions:zi,defaultEdgeOptions:Pl,elevateNodesOnSelect:Ri=!0,elevateEdgesOnSelect:Ti=!1,disableKeyboardA11y:pa=!1,autoPanOnConnect:ho,autoPanOnNodeDrag:Wr,autoPanSpeed:Ac,connectionRadius:Dc,isValidConnection:Fa,onError:ji,style:nu,id:Es,nodeDragThreshold:ou,connectionDragThreshold:ch,viewport:Cs,onViewportChange:$s,width:Mo,height:Gr,colorMode:au="light",debug:dh,onScroll:Ai,ariaLabelConfig:iu,zIndexMode:Di="basic",...lu},J){const ee=Es||"1",oe=lSe(au),ie=S.useCallback(le=>{le.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Ai?.(le)},[Ai]);return y.jsx("div",{"data-testid":"rf__wrapper",...lu,onScroll:ie,style:{...nu,...$Ee},ref:J,className:dn(["react-flow",a,oe]),id:Es,role:"application",children:y.jsxs(CEe,{nodes:e,edges:r,width:Mo,height:Gr,fitView:Nl,fitViewOptions:jc,minZoom:be,maxZoom:ke,nodeOrigin:Ve,nodeExtent:xt,zIndexMode:Di,children:[y.jsx(SEe,{onInit:d,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:C,onNodeMouseMove:_,onNodeMouseLeave:$,onNodeContextMenu:z,onNodeDoubleClick:T,nodeTypes:i,edgeTypes:l,connectionLineType:Z,connectionLineStyle:O,connectionLineComponent:W,connectionLineContainerStyle:K,selectionKeyCode:ae,selectionOnDrag:te,selectionMode:re,deleteKeyCode:Q,multiSelectionKeyCode:_e,panActivationKeyCode:ue,zoomActivationKeyCode:ce,onlyRenderVisibleElements:je,defaultViewport:Et,translateExtent:Ye,minZoom:be,maxZoom:ke,preventScrolling:yt,zoomOnScroll:er,zoomOnPinch:qt,zoomOnDoubleClick:ln,panOnScroll:Ht,panOnScrollSpeed:Zr,panOnScrollMode:Gt,panOnDrag:Wn,onPaneClick:fn,onPaneMouseEnter:oo,onPaneMouseMove:Yo,onPaneMouseLeave:jo,onPaneScroll:ua,onPaneContextMenu:Dl,paneClickDistance:Ao,nodeClickDistance:xs,onSelectionContextMenu:F,onSelectionStart:q,onSelectionEnd:G,onReconnect:Rc,onReconnectStart:Ml,onReconnectEnd:lh,onEdgeContextMenu:ks,onEdgeDoubleClick:tu,onEdgeMouseEnter:Xo,onEdgeMouseMove:Tc,onEdgeMouseLeave:_s,reconnectRadius:ru,defaultMarkerColor:Tr,noDragClassName:Nr,noWheelClassName:Mn,noPanClassName:Do,rfId:ee,disableKeyboardA11y:pa,nodeExtent:xt,viewport:Cs,onViewportChange:$s}),y.jsx(iSe,{nodes:e,edges:r,defaultNodes:n,defaultEdges:o,onConnect:g,onConnectStart:v,onConnectEnd:w,onClickConnectStart:x,onClickConnectEnd:k,nodesDraggable:Je,autoPanOnNodeFocus:st,nodesConnectable:Le,nodesFocusable:St,edgesFocusable:qe,edgesReconnectable:Xe,elementsSelectable:It,elevateNodesOnSelect:Ri,elevateEdgesOnSelect:Ti,minZoom:be,maxZoom:ke,nodeExtent:xt,onNodesChange:Ss,onEdgesChange:Zo,snapToGrid:pe,snapGrid:xe,connectionMode:Y,translateExtent:Ye,connectOnClick:sh,defaultEdgeOptions:Pl,fitView:Nl,fitViewOptions:jc,onNodesDelete:I,onEdgesDelete:P,onDelete:L,onNodeDragStart:A,onNodeDrag:R,onNodeDragStop:j,onSelectionDrag:V,onSelectionDragStart:M,onSelectionDragStop:B,onMove:u,onMoveStart:p,onMoveEnd:f,noPanClassName:Do,nodeOrigin:Ve,rfId:ee,autoPanOnConnect:ho,autoPanOnNodeDrag:Wr,autoPanSpeed:Ac,onError:ji,connectionRadius:Dc,isValidConnection:Fa,selectNodesOnDrag:Be,nodeDragThreshold:ou,connectionDragThreshold:ch,onBeforeDelete:U,debug:dh,ariaLabelConfig:iu,zIndexMode:Di}),y.jsx(rSe,{onSelectionChange:H}),ws,y.jsx(K9e,{proOptions:zi,position:La}),y.jsx(Z9e,{rfId:ee,disableKeyboardA11y:pa})]})})}var REe=PV(zEe);const TEe=e=>e.domNode?.querySelector(".react-flow__edgelabel-renderer");function yq({children:e}){const r=Dt(TEe);return r?Vi.createPortal(e,r):null}function jEe({dimensions:e,lineWidth:r,variant:n,className:o}){return y.jsx("path",{strokeWidth:r,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:dn(["react-flow__background-pattern",n,o])})}function AEe({radius:e,className:r}){return y.jsx("circle",{cx:e,cy:e,r:e,className:dn(["react-flow__background-pattern","dots",r])})}var Qi;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(Qi||(Qi={}));const DEe={[Qi.Dots]:1,[Qi.Lines]:1,[Qi.Cross]:6},MEe=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function vq({id:e,variant:r=Qi.Dots,gap:n=20,size:o,lineWidth:a=1,offset:i=0,color:l,bgColor:s,style:c,className:d,patternClassName:u}){const p=S.useRef(null),{transform:f,patternId:g}=Dt(MEe,jr),v=o||DEe[r],w=r===Qi.Dots,x=r===Qi.Cross,k=Array.isArray(n)?n:[n,n],C=[k[0]*f[2]||1,k[1]*f[2]||1],_=v*f[2],$=Array.isArray(i)?i:[i,i],z=x?[_,_]:C,T=[$[0]*f[2]||1+z[0]/2,$[1]*f[2]||1+z[1]/2],A=`${g}${e||""}`;return y.jsxs("svg",{className:dn(["react-flow__background",d]),style:{...c,...ow,"--xy-background-color-props":s,"--xy-background-pattern-color-props":l},ref:p,"data-testid":"rf__background",children:[y.jsx("pattern",{id:A,x:f[0]%C[0],y:f[1]%C[1],width:C[0],height:C[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${T[0]},-${T[1]})`,children:w?y.jsx(AEe,{radius:_/2,className:u}):y.jsx(jEe,{dimensions:z,lineWidth:a,variant:r,className:u})}),y.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${A})`})]})}vq.displayName="Background";const bq=S.memo(vq);function NEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:y.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function PEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:y.jsx("path",{d:"M0 0h32v4.2H0z"})})}function BEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:y.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function IEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:y.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function OEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:y.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function sw({children:e,className:r,...n}){return y.jsx("button",{type:"button",className:dn(["react-flow__controls-button",r]),...n,children:e})}const LEe=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function xq({style:e,showZoom:r=!0,showFitView:n=!0,showInteractive:o=!0,fitViewOptions:a,onZoomIn:i,onZoomOut:l,onFitView:s,onInteractiveChange:c,className:d,children:u,position:p="bottom-left",orientation:f="vertical","aria-label":g}){const v=vr(),{isInteractive:w,minZoomReached:x,maxZoomReached:k,ariaLabelConfig:C}=Dt(LEe,jr),{zoomIn:_,zoomOut:$,fitView:z}=pf(),T=()=>{_(),i?.()},A=()=>{$(),l?.()},R=()=>{z(a),s?.()},j=()=>{v.setState({nodesDraggable:!w,nodesConnectable:!w,elementsSelectable:!w}),c?.(!w)};return y.jsxs(sd,{className:dn(["react-flow__controls",f==="horizontal"?"horizontal":"vertical",d]),position:p,style:e,"data-testid":"rf__controls","aria-label":g??C["controls.ariaLabel"],children:[r&&y.jsxs(y.Fragment,{children:[y.jsx(sw,{onClick:T,className:"react-flow__controls-zoomin",title:C["controls.zoomIn.ariaLabel"],"aria-label":C["controls.zoomIn.ariaLabel"],disabled:k,children:y.jsx(NEe,{})}),y.jsx(sw,{onClick:A,className:"react-flow__controls-zoomout",title:C["controls.zoomOut.ariaLabel"],"aria-label":C["controls.zoomOut.ariaLabel"],disabled:x,children:y.jsx(PEe,{})})]}),n&&y.jsx(sw,{className:"react-flow__controls-fitview",onClick:R,title:C["controls.fitView.ariaLabel"],"aria-label":C["controls.fitView.ariaLabel"],children:y.jsx(BEe,{})}),o&&y.jsx(sw,{className:"react-flow__controls-interactive",onClick:j,title:C["controls.interactive.ariaLabel"],"aria-label":C["controls.interactive.ariaLabel"],children:w?y.jsx(OEe,{}):y.jsx(IEe,{})}),u]})}xq.displayName="Controls",S.memo(xq);function FEe({id:e,x:r,y:n,width:o,height:a,style:i,color:l,strokeColor:s,strokeWidth:c,className:d,borderRadius:u,shapeRendering:p,selected:f,onClick:g}){const{background:v,backgroundColor:w}=i||{},x=l||v||w;return y.jsx("rect",{className:dn(["react-flow__minimap-node",{selected:f},d]),x:r,y:n,rx:u,ry:u,width:o,height:a,style:{fill:x,stroke:s,strokeWidth:c},shapeRendering:p,onClick:g?k=>g(k,e):void 0})}const VEe=S.memo(FEe),qEe=e=>e.nodes.map(r=>r.id),t9=e=>e instanceof Function?e:()=>e;function HEe({nodeStrokeColor:e,nodeColor:r,nodeClassName:n="",nodeBorderRadius:o=5,nodeStrokeWidth:a,nodeComponent:i=VEe,onClick:l}){const s=Dt(qEe,jr),c=t9(r),d=t9(e),u=t9(n),p=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return y.jsx(y.Fragment,{children:s.map(f=>y.jsx(WEe,{id:f,nodeColorFunc:c,nodeStrokeColorFunc:d,nodeClassNameFunc:u,nodeBorderRadius:o,nodeStrokeWidth:a,NodeComponent:i,onClick:l,shapeRendering:p},f))})}function UEe({id:e,nodeColorFunc:r,nodeStrokeColorFunc:n,nodeClassNameFunc:o,nodeBorderRadius:a,nodeStrokeWidth:i,shapeRendering:l,NodeComponent:s,onClick:c}){const{node:d,x:u,y:p,width:f,height:g}=Dt(v=>{const{internals:w}=v.nodeLookup.get(e),x=w.userNode,{x:k,y:C}=w.positionAbsolute,{width:_,height:$}=_o(x);return{node:x,x:k,y:C,width:_,height:$}},jr);return!d||d.hidden||!AF(d)?null:y.jsx(s,{x:u,y:p,width:f,height:g,style:d.style,selected:!!d.selected,className:o(d),color:r(d),borderRadius:a,strokeColor:n(d),strokeWidth:i,shapeRendering:l,onClick:c,id:d.id})}const WEe=S.memo(UEe);var GEe=S.memo(HEe);const YEe=200,XEe=150,ZEe=e=>!e.hidden,KEe=e=>{const r={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:r,boundingRect:e.nodeLookup.size>0?TF(nf(e.nodeLookup,{filter:ZEe}),r):r,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},QEe="react-flow__minimap-desc";function wq({style:e,className:r,nodeStrokeColor:n,nodeColor:o,nodeClassName:a="",nodeBorderRadius:i=5,nodeStrokeWidth:l,nodeComponent:s,bgColor:c,maskColor:d,maskStrokeColor:u,maskStrokeWidth:p,position:f="bottom-right",onClick:g,onNodeClick:v,pannable:w=!1,zoomable:x=!1,ariaLabel:k,inversePan:C,zoomStep:_=1,offsetScale:$=5}){const z=vr(),T=S.useRef(null),{boundingRect:A,viewBB:R,rfId:j,panZoom:I,translateExtent:P,flowWidth:L,flowHeight:H,ariaLabelConfig:M}=Dt(KEe,jr),V=e?.width??YEe,B=e?.height??XEe,F=A.width/V,q=A.height/B,G=Math.max(F,q),U=G*V,Y=G*B,Z=$*G,O=A.x-(U-A.width)/2-Z,W=A.y-(Y-A.height)/2-Z,K=U+Z*2,Q=Y+Z*2,ae=`${QEe}-${j}`,te=S.useRef(0),re=S.useRef();te.current=G,S.useEffect(()=>{if(T.current&&I)return re.current=b9e({domNode:T.current,panZoom:I,getTransform:()=>z.getState().transform,getViewScale:()=>te.current}),()=>{re.current?.destroy()}},[I]),S.useEffect(()=>{re.current?.update({translateExtent:P,width:L,height:H,inversePan:C,pannable:w,zoomStep:_,zoomable:x})},[w,x,C,_,P,L,H]);const ue=g?pe=>{const[xe,je]=re.current?.pointer(pe)||[0,0];g(pe,{x:xe,y:je})}:void 0,_e=v?S.useCallback((pe,xe)=>{const je=z.getState().nodeLookup.get(xe).internals.userNode;v(pe,je)},[]):void 0,ce=k??M["minimap.ariaLabel"];return y.jsx(sd,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof c=="string"?c:void 0,"--xy-minimap-mask-background-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-stroke-color-props":typeof u=="string"?u:void 0,"--xy-minimap-mask-stroke-width-props":typeof p=="number"?p*G:void 0,"--xy-minimap-node-background-color-props":typeof o=="string"?o:void 0,"--xy-minimap-node-stroke-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-width-props":typeof l=="number"?l:void 0},className:dn(["react-flow__minimap",r]),"data-testid":"rf__minimap",children:y.jsxs("svg",{width:V,height:B,viewBox:`${O} ${W} ${K} ${Q}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":ae,ref:T,onClick:ue,children:[ce&&y.jsx("title",{id:ae,children:ce}),y.jsx(GEe,{onClick:_e,nodeColor:o,nodeStrokeColor:n,nodeBorderRadius:i,nodeClassName:a,nodeStrokeWidth:l,nodeComponent:s}),y.jsx("path",{className:"react-flow__minimap-mask",d:`M${O-Z},${W-Z}h${K+Z*2}v${Q+Z*2}h${-K-Z*2}z - M${R.x},${R.y}h${R.width}v${R.height}h${-R.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}wq.displayName="MiniMap",S.memo(wq);const JEe=e=>r=>e?`${Math.max(1/r.transform[2],1)}`:void 0,eCe={[df.Line]:"right",[df.Handle]:"bottom-right"};function tCe({nodeId:e,position:r,variant:n=df.Handle,className:o,style:a=void 0,children:i,color:l,minWidth:s=10,minHeight:c=10,maxWidth:d=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:p=!1,resizeDirection:f,autoScale:g=!0,shouldResize:v,onResizeStart:w,onResize:x,onResizeEnd:k}){const C=e9(),_=typeof e=="string"?e:C,$=vr(),z=S.useRef(null),T=n===df.Handle,A=Dt(S.useCallback(JEe(T&&g),[T,g]),jr),R=S.useRef(null),j=r??eCe[n];S.useEffect(()=>{if(!(!z.current||!_))return R.current||(R.current=D9e({domNode:z.current,nodeId:_,getStoreItems:()=>{const{nodeLookup:P,transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V,domNode:B}=$.getState();return{nodeLookup:P,transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V,paneDomNode:B}},onChange:(P,L)=>{const{triggerNodeChanges:H,nodeLookup:M,parentLookup:V,nodeOrigin:B}=$.getState(),F=[],q={x:P.x,y:P.y},G=M.get(_);if(G&&G.expandParent&&G.parentId){const U=G.origin??B,Y=P.width??G.measured.width??0,Z=P.height??G.measured.height??0,O={id:G.id,parentId:G.parentId,rect:{width:Y,height:Z,...DF({x:P.x??G.position.x,y:P.y??G.position.y},{width:Y,height:Z},G.parentId,M,U)}},W=q7([O],M,V,B);F.push(...W),q.x=P.x?Math.max(U[0]*Y,P.x):void 0,q.y=P.y?Math.max(U[1]*Z,P.y):void 0}if(q.x!==void 0&&q.y!==void 0){const U={id:_,type:"position",position:{...q}};F.push(U)}if(P.width!==void 0&&P.height!==void 0){const U={id:_,type:"dimensions",resizing:!0,setAttributes:f?f==="horizontal"?"width":"height":!0,dimensions:{width:P.width,height:P.height}};F.push(U)}for(const U of L){const Y={...U,type:"position"};F.push(Y)}H(F)},onEnd:({width:P,height:L})=>{const H={id:_,type:"dimensions",resizing:!1,dimensions:{width:P,height:L}};$.getState().triggerNodeChanges([H])}})),R.current.update({controlPosition:j,boundaries:{minWidth:s,minHeight:c,maxWidth:d,maxHeight:u},keepAspectRatio:p,resizeDirection:f,onResizeStart:w,onResize:x,onResizeEnd:k,shouldResize:v}),()=>{R.current?.destroy()}},[j,s,c,d,u,p,w,x,k,v]);const I=j.split("-");return y.jsx("div",{className:dn(["react-flow__resize-control","nodrag",...I,n,o]),ref:z,style:{...a,scale:A,...l&&{[T?"backgroundColor":"borderColor"]:l}},children:i})}S.memo(tCe);const rCe=e=>e.domNode?.querySelector(".react-flow__renderer");function nCe({children:e}){const r=Dt(rCe);return r?Vi.createPortal(e,r):null}const oCe=(e,r)=>e?.internals.positionAbsolute.x!==r?.internals.positionAbsolute.x||e?.internals.positionAbsolute.y!==r?.internals.positionAbsolute.y||e?.measured.width!==r?.measured.width||e?.measured.height!==r?.measured.height||e?.selected!==r?.selected||e?.internals.z!==r?.internals.z,aCe=(e,r)=>{if(e.size!==r.size)return!1;for(const[n,o]of e)if(oCe(o,r.get(n)))return!1;return!0},iCe=e=>({x:e.transform[0],y:e.transform[1],zoom:e.transform[2],selectedNodesCount:e.nodes.filter(r=>r.selected).length});function r9({nodeId:e,children:r,className:n,style:o,isVisible:a,position:i=Ue.Top,offset:l=10,align:s="center",...c}){const d=e9(),u=S.useCallback($=>(Array.isArray(e)?e:[e||d||""]).reduce((z,T)=>{const A=$.nodeLookup.get(T);return A&&z.set(A.id,A),z},new Map),[e,d]),p=Dt(u,aCe),{x:f,y:g,zoom:v,selectedNodesCount:w}=Dt(iCe,jr);if(!(typeof a=="boolean"?a:p.size===1&&p.values().next().value?.selected&&w===1)||!p.size)return null;const x=nf(p),k=Array.from(p.values()),C=Math.max(...k.map($=>$.internals.z+1)),_={position:"absolute",transform:r9e(x,{x:f,y:g,zoom:v},i,l,s),zIndex:C,...o};return y.jsx(nCe,{children:y.jsx("div",{style:_,className:dn(["react-flow__node-toolbar",n]),...c,"data-id":k.reduce(($,z)=>`${$}${z.id} `,"").trim(),children:r})})}const{getOwnPropertyNames:lCe,getOwnPropertySymbols:sCe}=Object,{hasOwnProperty:cCe}=Object.prototype;function n9(e,r){return function(n,o,a){return e(n,o,a)&&r(n,o,a)}}function cw(e){return function(r,n,o){if(!r||!n||typeof r!="object"||typeof n!="object")return e(r,n,o);const{cache:a}=o,i=a.get(r),l=a.get(n);if(i&&l)return i===n&&l===r;a.set(r,n),a.set(n,r);const s=e(r,n,o);return a.delete(r),a.delete(n),s}}function dCe(e){return e?.[Symbol.toStringTag]}function kq(e){return lCe(e).concat(sCe(e))}const uCe=Object.hasOwn||((e,r)=>cCe.call(e,r));function Ju(e,r){return e===r||!e&&!r&&e!==e&&r!==r}const pCe="__v",hCe="__o",fCe="_owner",{getOwnPropertyDescriptor:_q,keys:Sq}=Object;function mCe(e,r){return e.byteLength===r.byteLength&&dw(new Uint8Array(e),new Uint8Array(r))}function gCe(e,r,n){let o=e.length;if(r.length!==o)return!1;for(;o-- >0;)if(!n.equals(e[o],r[o],o,o,e,r,n))return!1;return!0}function yCe(e,r){return e.byteLength===r.byteLength&&dw(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(r.buffer,r.byteOffset,r.byteLength))}function vCe(e,r){return Ju(e.getTime(),r.getTime())}function bCe(e,r){return e.name===r.name&&e.message===r.message&&e.cause===r.cause&&e.stack===r.stack}function xCe(e,r){return e===r}function Eq(e,r,n){const o=e.size;if(o!==r.size)return!1;if(!o)return!0;const a=new Array(o),i=e.entries();let l,s,c=0;for(;(l=i.next())&&!l.done;){const d=r.entries();let u=!1,p=0;for(;(s=d.next())&&!s.done;){if(a[p]){p++;continue}const f=l.value,g=s.value;if(n.equals(f[0],g[0],c,p,e,r,n)&&n.equals(f[1],g[1],f[0],g[0],e,r,n)){u=a[p]=!0;break}p++}if(!u)return!1;c++}return!0}const wCe=Ju;function kCe(e,r,n){const o=Sq(e);let a=o.length;if(Sq(r).length!==a)return!1;for(;a-- >0;)if(!$q(e,r,n,o[a]))return!1;return!0}function Z1(e,r,n){const o=kq(e);let a=o.length;if(kq(r).length!==a)return!1;let i,l,s;for(;a-- >0;)if(i=o[a],!$q(e,r,n,i)||(l=_q(e,i),s=_q(r,i),(l||s)&&(!l||!s||l.configurable!==s.configurable||l.enumerable!==s.enumerable||l.writable!==s.writable)))return!1;return!0}function _Ce(e,r){return Ju(e.valueOf(),r.valueOf())}function SCe(e,r){return e.source===r.source&&e.flags===r.flags}function Cq(e,r,n){const o=e.size;if(o!==r.size)return!1;if(!o)return!0;const a=new Array(o),i=e.values();let l,s;for(;(l=i.next())&&!l.done;){const c=r.values();let d=!1,u=0;for(;(s=c.next())&&!s.done;){if(!a[u]&&n.equals(l.value,s.value,l.value,s.value,e,r,n)){d=a[u]=!0;break}u++}if(!d)return!1}return!0}function dw(e,r){let n=e.byteLength;if(r.byteLength!==n||e.byteOffset!==r.byteOffset)return!1;for(;n-- >0;)if(e[n]!==r[n])return!1;return!0}function ECe(e,r){return e.hostname===r.hostname&&e.pathname===r.pathname&&e.protocol===r.protocol&&e.port===r.port&&e.hash===r.hash&&e.username===r.username&&e.password===r.password}function $q(e,r,n,o){return(o===fCe||o===hCe||o===pCe)&&(e.$$typeof||r.$$typeof)?!0:uCe(r,o)&&n.equals(e[o],r[o],o,o,e,r,n)}const CCe="[object ArrayBuffer]",$Ce="[object Arguments]",zCe="[object Boolean]",RCe="[object DataView]",TCe="[object Date]",jCe="[object Error]",ACe="[object Map]",DCe="[object Number]",MCe="[object Object]",NCe="[object RegExp]",PCe="[object Set]",BCe="[object String]",ICe={"[object Int8Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Int16Array]":!0,"[object Uint16Array]":!0,"[object Int32Array]":!0,"[object Uint32Array]":!0,"[object Float16Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0,"[object BigInt64Array]":!0,"[object BigUint64Array]":!0},OCe="[object URL]",LCe=Object.prototype.toString;function FCe({areArrayBuffersEqual:e,areArraysEqual:r,areDataViewsEqual:n,areDatesEqual:o,areErrorsEqual:a,areFunctionsEqual:i,areMapsEqual:l,areNumbersEqual:s,areObjectsEqual:c,arePrimitiveWrappersEqual:d,areRegExpsEqual:u,areSetsEqual:p,areTypedArraysEqual:f,areUrlsEqual:g,unknownTagComparators:v}){return function(w,x,k){if(w===x)return!0;if(w==null||x==null)return!1;const C=typeof w;if(C!==typeof x)return!1;if(C!=="object")return C==="number"?s(w,x,k):C==="function"?i(w,x,k):!1;const _=w.constructor;if(_!==x.constructor)return!1;if(_===Object)return c(w,x,k);if(Array.isArray(w))return r(w,x,k);if(_===Date)return o(w,x,k);if(_===RegExp)return u(w,x,k);if(_===Map)return l(w,x,k);if(_===Set)return p(w,x,k);const $=LCe.call(w);if($===TCe)return o(w,x,k);if($===NCe)return u(w,x,k);if($===ACe)return l(w,x,k);if($===PCe)return p(w,x,k);if($===MCe)return typeof w.then!="function"&&typeof x.then!="function"&&c(w,x,k);if($===OCe)return g(w,x,k);if($===jCe)return a(w,x,k);if($===$Ce)return c(w,x,k);if(ICe[$])return f(w,x,k);if($===CCe)return e(w,x,k);if($===RCe)return n(w,x,k);if($===zCe||$===DCe||$===BCe)return d(w,x,k);if(v){let z=v[$];if(!z){const T=dCe(w);T&&(z=v[T])}if(z)return z(w,x,k)}return!1}}function VCe({circular:e,createCustomConfig:r,strict:n}){let o={areArrayBuffersEqual:mCe,areArraysEqual:n?Z1:gCe,areDataViewsEqual:yCe,areDatesEqual:vCe,areErrorsEqual:bCe,areFunctionsEqual:xCe,areMapsEqual:n?n9(Eq,Z1):Eq,areNumbersEqual:wCe,areObjectsEqual:n?Z1:kCe,arePrimitiveWrappersEqual:_Ce,areRegExpsEqual:SCe,areSetsEqual:n?n9(Cq,Z1):Cq,areTypedArraysEqual:n?n9(dw,Z1):dw,areUrlsEqual:ECe,unknownTagComparators:void 0};if(r&&(o=Object.assign({},o,r(o))),e){const a=cw(o.areArraysEqual),i=cw(o.areMapsEqual),l=cw(o.areObjectsEqual),s=cw(o.areSetsEqual);o=Object.assign({},o,{areArraysEqual:a,areMapsEqual:i,areObjectsEqual:l,areSetsEqual:s})}return o}function qCe(e){return function(r,n,o,a,i,l,s){return e(r,n,s)}}function HCe({circular:e,comparator:r,createState:n,equals:o,strict:a}){if(n)return function(l,s){const{cache:c=e?new WeakMap:void 0,meta:d}=n();return r(l,s,{cache:c,equals:o,meta:d,strict:a})};if(e)return function(l,s){return r(l,s,{cache:new WeakMap,equals:o,meta:void 0,strict:a})};const i={cache:void 0,equals:o,meta:void 0,strict:a};return function(l,s){return r(l,s,i)}}const tt=cd();cd({strict:!0}),cd({circular:!0}),cd({circular:!0,strict:!0});const Ir=cd({createInternalComparator:()=>Ju});cd({strict:!0,createInternalComparator:()=>Ju}),cd({circular:!0,createInternalComparator:()=>Ju}),cd({circular:!0,createInternalComparator:()=>Ju,strict:!0});function cd(e={}){const{circular:r=!1,createInternalComparator:n,createState:o,strict:a=!1}=e,i=VCe(e),l=FCe(i),s=n?n(l):qCe(l);return HCe({circular:r,comparator:l,createState:o,equals:s,strict:a})}function UCe(e,r,n){let o=a=>e(a,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function nr(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return UCe(e,r,n);throw Error("Wrong number of arguments")}const WCe=e=>(r,n)=>{if(n===0)return e(r);if(!Number.isInteger(n))throw TypeError(`precision must be an integer: ${n.toString()}`);if(n>15||n<-15)throw RangeError("precision must be between -15 and 15");if(Number.isNaN(r)||!Number.isFinite(r))return e(r);let o=zq(r,n),a=e(o);return zq(a,-n)};function zq(e,r){let[n,o]=e.toString().split("e"),a=(o===void 0?0:Number.parseInt(o,10))+r,i=`${n}e${a.toString()}`;return Number.parseFloat(i)}function GCe(...e){return nr(WCe(Math.ceil),e)}function ti(...e){return nr(YCe,e)}const YCe=(e,{min:r,max:n})=>r!==void 0&&en?n:e;function XCe(...e){return nr(ZCe,e)}const ZCe=(e,r)=>[...e,...r],K1={done:!1,hasNext:!1},KCe=e=>({hasNext:!0,next:e,done:!1});function Jr(e,...r){let n=e,o=r.map(i=>"lazy"in i?QCe(i):void 0),a=0;for(;aJr(a,o),o)}throw Error("Wrong number of arguments")}function e$e(...e){return Tq(t$e,e)}function t$e(e){if(e.length===0)return KCe;let r=new Map;for(let n of e)r.set(n,(r.get(n)??0)+1);return n=>{let o=r.get(n);return o===void 0||o===0?{done:!1,hasNext:!0,next:n}:(r.set(n,o-1),K1)}}function xn(...e){return nr(r$e,e)}const r$e=(e,r)=>e.length>=r,jq={asc:(e,r)=>e>r,desc:(e,r)=>ee(i,a)}function o9(e,r,...n){let o=typeof e=="function"?e:e[0],a=typeof e=="function"?"asc":e[1],{[a]:i}=jq,l=r===void 0?void 0:o9(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 o$e(e){if(Aq(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return Aq(r)&&typeof n=="string"&&n in jq&&o.length===0}const Aq=e=>typeof e=="function"&&e.length===1;function uw(...e){return nr(Object.entries,e)}function ep(...e){return nr(a$e,e,i$e)}const a$e=(e,r)=>e.filter(r),i$e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:K1,Dq=e=>Object.assign(e,{single:!0});function Q1(...e){return nr(l$e,e,Dq(s$e))}const l$e=(e,r)=>e.find(r),s$e=e=>(r,n,o)=>e(r,n,o)?{done:!0,hasNext:!0,next:r}:K1;function hf(...e){return nr(c$e,e,Dq(d$e))}const c$e=([e])=>e,d$e=()=>u$e,u$e=e=>({hasNext:!0,next:e,done:!0});function Mq(...e){return nr(p$e,e,h$e)}const p$e=(e,r)=>e.flatMap(r),h$e=e=>(r,n,o)=>{let a=e(r,n,o);return Array.isArray(a)?{done:!1,hasNext:!0,hasMany:!0,next:a}:{done:!1,hasNext:!0,next:a}};function f$e(...e){return nr(m$e,e)}function m$e(e,r){for(let[n,o]of Object.entries(e))r(o,n,e);return e}function g$e(...e){return nr(y$e,e)}const y$e=(e,r)=>{let n=Object.create(null);for(let o=0;otypeof e=="function";function _$e(e){return e!==null}function Bq(e){return e!=null}function S$e(e){return r=>!e(r)}function ty(e){return e==null}function Iq(e){return typeof e=="number"&&!Number.isNaN(e)}function i9(e){if(typeof e!="object"||!e)return!1;let r=Object.getPrototypeOf(e);return r===null||r===Object.prototype}function Oq(...e){return nr(E$e,e)}function E$e(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||!e||typeof r!="object"||!r)return!1;if(e instanceof Map&&r instanceof Map)return C$e(e,r);if(e instanceof Set&&r instanceof Set)return $$e(e,r);let n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(let o of n){if(!Object.hasOwn(r,o))return!1;let{[o]:a}=e,{[o]:i}=r;if(a!==i||!Object.is(a,i))return!1}return!0}function C$e(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 $$e(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}function pw(e){return typeof e=="string"}function Kn(e){return!!e}function Lq(...e){return nr(z$e,e)}const z$e=(e,r)=>e.join(r);function l9(...e){return nr(Object.keys,e)}function dd(...e){return nr(R$e,e)}const R$e=e=>e.at(-1);function un(...e){return nr(T$e,e,j$e)}const T$e=(e,r)=>e.map(r),j$e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function hw(...e){return nr(A$e,e)}function A$e(e,r){let n={};for(let[o,a]of e.entries()){let[i,l]=r(a,o,e);n[i]=l}return n}function D$e(...e){return nr(M$e,e)}function M$e(e,r){let n={};for(let[o,a]of Object.entries(e))n[o]=r(a,o,e);return n}function Fq(...e){return nr(Vq,e)}function Vq(e,r){let n={...e,...r};for(let o in r){if(!(o in e))continue;let{[o]:a}=e;if(!i9(a))continue;let{[o]:i}=r;i9(i)&&(n[o]=Vq(a,i))}return n}function ud(...e){return nr(N$e,e)}function N$e(e,r){if(!xn(r,1))return{...e};if(!xn(r,2)){let{[r[0]]:o,...a}=e;return a}let n={...e};for(let o of r)delete n[o];return n}function P$e(...e){return nr(B$e,e)}function B$e(e,r){let n={...e};for(let[o,a]of Object.entries(n))r(a,o,e)&&delete n[o];return n}function fw(...e){return nr(I$e,e)}const I$e=e=>e.length===1?e[0]:void 0;function qq(...e){return nr(O$e,e)}const O$e=(e,r)=>{let n=[[],[]];for(let[o,a]of e.entries())r(a,o,e)?n[0].push(a):n[1].push(a);return n};function Hq(...e){return nr(L$e,e)}function L$e(e,r){let n={};for(let o of r)o in e&&(n[o]=e[o]);return n}function ry(...e){return nr(F$e,e)}function F$e(e,r){let n={};for(let[o,a]of Object.entries(e))r(a,o,e)&&(n[o]=a);return n}function rp(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>Uq(n,e,...r):Uq(e,...r)}function Uq(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function V$e(...e){return nr(q$e,e)}function q$e(e,r){let n=[];for(let o=e;oe.reduce(r,n);function U$e(...e){return nr(W$e,e)}function W$e(e){return[...e].reverse()}function G$e(...e){return nr(Y$e,e)}function Y$e(e,r){let n=[...e];return n.sort(r),n}function gw(...e){return n$e(X$e,e)}const X$e=(e,r)=>[...e].sort(r);function Wq(...e){return nr(Z$e,e)}function Z$e(e,r){return r(e),e}function yw(...e){return Tq(K$e,e)}function K$e(){let e=new Set;return r=>e.has(r)?K1:(e.add(r),{done:!1,hasNext:!0,next:r})}let Ji=[],pd=0;const vw=4,Q$e=e=>{let r=[],n={get(){return n.lc||n.listen(()=>{})(),n.value},lc:0,listen(o){return n.lc=r.push(o),()=>{for(let i=pd+vw;i"u")return mze;var r=gze(e),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:r[0],top:r[1],right:r[2],gap:Math.max(0,o-n+r[2]-r[0])}},vze=Kq(),ff="data-scroll-locked",bze=function(e,r,n,o){var a=e.left,i=e.top,l=e.right,s=e.gap;return n===void 0&&(n="margin"),` - .`.concat(eze,` { +`)),d=c.reduce((u,p)=>u.concat(...p),[]);return[c,d]}return[[],[]]},[e]);return S.useEffect(()=>{const c=r?.target??zV,d=r?.actInsideInputWithModifier??!0;if(e!==null){const u=g=>{if(a.current=g.ctrlKey||g.metaKey||g.shiftKey||g.altKey,(!a.current||a.current&&!d)&&PF(g))return!1;const v=jV(g.code,s);if(i.current.add(g[v]),TV(l,i.current,!1)){const w=g.composedPath?.()?.[0]||g.target,x=w?.nodeName==="BUTTON"||w?.nodeName==="A";r.preventDefault!==!1&&(a.current||!x)&&g.preventDefault(),o(!0)}},p=g=>{const v=jV(g.code,s);TV(l,i.current,!0)?(o(!1),i.current.clear()):i.current.delete(g[v]),g.key==="Meta"&&i.current.clear(),a.current=!1},f=()=>{i.current.clear(),o(!1)};return c?.addEventListener("keydown",u),c?.addEventListener("keyup",p),window.addEventListener("blur",f),window.addEventListener("contextmenu",f),()=>{c?.removeEventListener("keydown",u),c?.removeEventListener("keyup",p),window.removeEventListener("blur",f),window.removeEventListener("contextmenu",f)}}},[e,o]),n}function TV(e,r,n){return e.filter(o=>n||o.length===r.size).some(o=>o.every(a=>r.has(a)))}function jV(e,r){return r.includes(e)?"code":"key"}const sSe=()=>{const e=vr();return S.useMemo(()=>({zoomIn:r=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1.2,{duration:r?.duration}):Promise.resolve(!1)},zoomOut:r=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,{duration:r?.duration}):Promise.resolve(!1)},zoomTo:(r,n)=>{const{panZoom:o}=e.getState();return o?o.scaleTo(r,{duration:n?.duration}):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(r,n)=>{const{transform:[o,a,i],panZoom:l}=e.getState();return l?(await l.setViewport({x:r.x??o,y:r.y??a,zoom:r.zoom??i},n),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[r,n,o]=e.getState().transform;return{x:r,y:n,zoom:o}},setCenter:async(r,n,o)=>e.getState().setCenter(r,n,o),fitBounds:async(r,n)=>{const{width:o,height:a,minZoom:i,maxZoom:l,panZoom:s}=e.getState(),c=Ws(r,o,a,i,l,n?.padding??.1);return s?(await s.setViewport(c,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(r,n={})=>{const{transform:o,snapGrid:a,snapToGrid:i,domNode:l}=e.getState();if(!l)return r;const{x:s,y:c}=l.getBoundingClientRect(),d={x:r.x-s,y:r.y-c},u=n.snapGrid??a,p=n.snapToGrid??i;return G1(d,o,p,u)},flowToScreenPosition:r=>{const{transform:n,domNode:o}=e.getState();if(!o)return r;const{x:a,y:i}=o.getBoundingClientRect(),l=Yx(r,n);return{x:l.x+a,y:l.y+i}}}),[])};function AV(e,r){const n=[],o=new Map,a=[];for(const i of e)if(i.type==="add"){a.push(i);continue}else if(i.type==="remove"||i.type==="replace")o.set(i.id,[i]);else{const l=o.get(i.id);l?l.push(i):o.set(i.id,[i])}for(const i of r){const l=o.get(i.id);if(!l){n.push(i);continue}if(l[0].type==="remove")continue;if(l[0].type==="replace"){n.push({...l[0].item});continue}const s={...i};for(const c of l)cSe(c,s);n.push(s)}return a.length&&a.forEach(i=>{i.index!==void 0?n.splice(i.index,0,{...i.item}):n.push({...i.item})}),n}function cSe(e,r){switch(e.type){case"select":{r.selected=e.selected;break}case"position":{typeof e.position<"u"&&(r.position=e.position),typeof e.dragging<"u"&&(r.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(r.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(r.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(r.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(r.resizing=e.resizing);break}}}function rw(e,r){return AV(e,r)}function nw(e,r){return AV(e,r)}function Qu(e,r){return{id:e,type:"select",selected:r}}function uf(e,r=new Set,n=!1){const o=[];for(const[a,i]of e){const l=r.has(a);!(i.selected===void 0&&!l)&&i.selected!==l&&(n&&(i.selected=l),o.push(Qu(i.id,l)))}return o}function DV({items:e=[],lookup:r}){const n=[],o=new Map(e.map(a=>[a.id,a]));for(const[a,i]of e.entries()){const l=r.get(i.id),s=l?.internals?.userNode??l;s!==void 0&&s!==i&&n.push({id:i.id,item:i,type:"replace"}),s===void 0&&n.push({item:i,type:"add",index:a})}for(const[a]of r)o.get(a)===void 0&&n.push({id:a,type:"remove"});return n}function MV(e){return{id:e.id,type:"remove"}}const NV=e=>P7e(e),dSe=e=>SF(e);function PV(e){return S.forwardRef(e)}const uSe=typeof window<"u"?S.useLayoutEffect:S.useEffect;function BV(e){const[r,n]=S.useState(BigInt(0)),[o]=S.useState(()=>pSe(()=>n(a=>a+BigInt(1))));return uSe(()=>{const a=o.get();a.length&&(e(a),o.reset())},[r]),o}function pSe(e){let r=[];return{get:()=>r,reset:()=>{r=[]},push:n=>{r.push(n),e()}}}const IV=S.createContext(null);function hSe({children:e}){const r=vr(),n=S.useCallback(s=>{const{nodes:c=[],setNodes:d,hasDefaultNodes:u,onNodesChange:p,nodeLookup:f,fitViewQueued:g,onNodesChangeMiddlewareMap:v}=r.getState();let w=c;for(const k of s)w=typeof k=="function"?k(w):k;let x=DV({items:w,lookup:f});for(const k of v.values())x=k(x);u&&d(w),x.length>0?p?.(x):g&&window.requestAnimationFrame(()=>{const{fitViewQueued:k,nodes:C,setNodes:_}=r.getState();k&&_(C)})},[]),o=BV(n),a=S.useCallback(s=>{const{edges:c=[],setEdges:d,hasDefaultEdges:u,onEdgesChange:p,edgeLookup:f}=r.getState();let g=c;for(const v of s)g=typeof v=="function"?v(g):v;u?d(g):p&&p(DV({items:g,lookup:f}))},[]),i=BV(a),l=S.useMemo(()=>({nodeQueue:o,edgeQueue:i}),[]);return y.jsx(IV.Provider,{value:l,children:e})}function fSe(){const e=S.useContext(IV);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const mSe=e=>!!e.panZoom;function pf(){const e=sSe(),r=vr(),n=fSe(),o=Dt(mSe),a=S.useMemo(()=>{const i=p=>r.getState().nodeLookup.get(p),l=p=>{n.nodeQueue.push(p)},s=p=>{n.edgeQueue.push(p)},c=p=>{const{nodeLookup:f,nodeOrigin:g}=r.getState(),v=NV(p)?p:f.get(p.id),w=v.parentId?DF(v.position,v.measured,v.parentId,f,g):v.position,x={...v,position:w,width:v.measured?.width??v.width,height:v.measured?.height??v.height};return Zu(x)},d=(p,f,g={replace:!1})=>{l(v=>v.map(w=>{if(w.id===p){const x=typeof f=="function"?f(w):f;return g.replace&&NV(x)?x:{...w,...x}}return w}))},u=(p,f,g={replace:!1})=>{s(v=>v.map(w=>{if(w.id===p){const x=typeof f=="function"?f(w):f;return g.replace&&dSe(x)?x:{...w,...x}}return w}))};return{getNodes:()=>r.getState().nodes.map(p=>({...p})),getNode:p=>i(p)?.internals.userNode,getInternalNode:i,getEdges:()=>{const{edges:p=[]}=r.getState();return p.map(f=>({...f}))},getEdge:p=>r.getState().edgeLookup.get(p),setNodes:l,setEdges:s,addNodes:p=>{const f=Array.isArray(p)?p:[p];n.nodeQueue.push(g=>[...g,...f])},addEdges:p=>{const f=Array.isArray(p)?p:[p];n.edgeQueue.push(g=>[...g,...f])},toObject:()=>{const{nodes:p=[],edges:f=[],transform:g}=r.getState(),[v,w,x]=g;return{nodes:p.map(k=>({...k})),edges:f.map(k=>({...k})),viewport:{x:v,y:w,zoom:x}}},deleteElements:async({nodes:p=[],edges:f=[]})=>{const{nodes:g,edges:v,onNodesDelete:w,onEdgesDelete:x,triggerNodeChanges:k,triggerEdgeChanges:C,onDelete:_,onBeforeDelete:$}=r.getState(),{nodes:R,edges:T}=await L7e({nodesToRemove:p,edgesToRemove:f,nodes:g,edges:v,onBeforeDelete:$}),A=T.length>0,z=R.length>0;if(A){const j=T.map(MV);x?.(T),C(j)}if(z){const j=R.map(MV);w?.(R),k(j)}return(z||A)&&_?.({nodes:R,edges:T}),{deletedNodes:R,deletedEdges:T}},getIntersectingNodes:(p,f=!0,g)=>{const v=jF(p),w=v?p:c(p),x=g!==void 0;return w?(g||r.getState().nodes).filter(k=>{const C=r.getState().nodeLookup.get(k.id);if(C&&!v&&(k.id===p.id||!C.internals.positionAbsolute))return!1;const _=Zu(x?k:C),$=U1(_,w);return f&&$>0||$>=_.width*_.height||$>=w.width*w.height}):[]},isNodeIntersecting:(p,f,g=!0)=>{const v=jF(p)?p:c(p);if(!v)return!1;const w=U1(v,f);return g&&w>0||w>=f.width*f.height||w>=v.width*v.height},updateNode:d,updateNodeData:(p,f,g={replace:!1})=>{d(p,v=>{const w=typeof f=="function"?f(v):f;return g.replace?{...v,data:w}:{...v,data:{...v.data,...w}}},g)},updateEdge:u,updateEdgeData:(p,f,g={replace:!1})=>{u(p,v=>{const w=typeof f=="function"?f(v):f;return g.replace?{...v,data:w}:{...v,data:{...v.data,...w}}},g)},getNodesBounds:p=>{const{nodeLookup:f,nodeOrigin:g}=r.getState();return EF(p,{nodeLookup:f,nodeOrigin:g})},getHandleConnections:({type:p,id:f,nodeId:g})=>Array.from(r.getState().connectionLookup.get(`${g}-${p}${f?`-${f}`:""}`)?.values()??[]),getNodeConnections:({type:p,handleId:f,nodeId:g})=>Array.from(r.getState().connectionLookup.get(`${g}${p?f?`-${p}-${f}`:`-${p}`:""}`)?.values()??[]),fitView:async p=>{const f=r.getState().fitViewResolver??H7e();return r.setState({fitViewQueued:!0,fitViewOptions:p,fitViewResolver:f}),n.nodeQueue.push(g=>[...g]),f.promise}}},[]);return S.useMemo(()=>({...a,...e,viewportInitialized:o}),[o])}const OV=e=>e.selected,gSe=typeof window<"u"?window:void 0;function ySe({deleteKeyCode:e,multiSelectionKeyCode:r}){const n=vr(),{deleteElements:o}=pf(),a=X1(e,{actInsideInputWithModifier:!1}),i=X1(r,{target:gSe});S.useEffect(()=>{if(a){const{edges:l,nodes:s}=n.getState();o({nodes:s.filter(OV),edges:l.filter(OV)}),n.setState({nodesSelectionActive:!1})}},[a]),S.useEffect(()=>{n.setState({multiSelectionActive:i})},[i])}function vSe(e){const r=vr();S.useEffect(()=>{const n=()=>{if(!e.current||!(e.current.checkVisibility?.()??!0))return!1;const o=P7(e.current);(o.height===0||o.width===0)&&r.getState().onError?.("004",Gl.error004()),r.setState({width:o.width||500,height:o.height||500})};if(e.current){n(),window.addEventListener("resize",n);const o=new ResizeObserver(()=>n());return o.observe(e.current),()=>{window.removeEventListener("resize",n),o&&e.current&&o.unobserve(e.current)}}},[])}const ow={position:"absolute",width:"100%",height:"100%",top:0,left:0},bSe=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function xSe({onPaneContextMenu:e,zoomOnScroll:r=!0,zoomOnPinch:n=!0,panOnScroll:o=!1,panOnScrollSpeed:a=.5,panOnScrollMode:i=Yu.Free,zoomOnDoubleClick:l=!0,panOnDrag:s=!0,defaultViewport:c,translateExtent:d,minZoom:u,maxZoom:p,zoomActivationKeyCode:f,preventScrolling:g=!0,children:v,noWheelClassName:w,noPanClassName:x,onViewportChange:k,isControlledViewport:C,paneClickDistance:_,selectionOnDrag:$}){const R=vr(),T=S.useRef(null),{userSelectionActive:A,lib:z,connectionInProgress:j}=Dt(bSe,jr),I=X1(f),P=S.useRef();vSe(T);const L=S.useCallback(H=>{k?.({x:H[0],y:H[1],zoom:H[2]}),C||R.setState({transform:H})},[k,C]);return S.useEffect(()=>{if(T.current){P.current=$9e({domNode:T.current,minZoom:u,maxZoom:p,translateExtent:d,viewport:c,onDraggingChange:B=>R.setState({paneDragging:B}),onPanZoomStart:(B,F)=>{const{onViewportChangeStart:q,onMoveStart:G}=R.getState();G?.(B,F),q?.(F)},onPanZoom:(B,F)=>{const{onViewportChange:q,onMove:G}=R.getState();G?.(B,F),q?.(F)},onPanZoomEnd:(B,F)=>{const{onViewportChangeEnd:q,onMoveEnd:G}=R.getState();G?.(B,F),q?.(F)}});const{x:H,y:M,zoom:V}=P.current.getViewport();return R.setState({panZoom:P.current,transform:[H,M,V],domNode:T.current.closest(".react-flow")}),()=>{P.current?.destroy()}}},[]),S.useEffect(()=>{P.current?.update({onPaneContextMenu:e,zoomOnScroll:r,zoomOnPinch:n,panOnScroll:o,panOnScrollSpeed:a,panOnScrollMode:i,zoomOnDoubleClick:l,panOnDrag:s,zoomActivationKeyPressed:I,preventScrolling:g,noPanClassName:x,userSelectionActive:A,noWheelClassName:w,lib:z,onTransformChange:L,connectionInProgress:j,selectionOnDrag:$,paneClickDistance:_})},[e,r,n,o,a,i,l,s,I,g,x,A,w,z,L,j,$,_]),y.jsx("div",{className:"react-flow__renderer",ref:T,style:ow,children:v})}const wSe=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function kSe(){const{userSelectionActive:e,userSelectionRect:r}=Dt(wSe,jr);return e&&r?y.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:r.width,height:r.height,transform:`translate(${r.x}px, ${r.y}px)`}}):null}const K7=(e,r)=>n=>{n.target===r.current&&e?.(n)},_Se=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function SSe({isSelecting:e,selectionKeyPressed:r,selectionMode:n=q1.Full,panOnDrag:o,paneClickDistance:a,selectionOnDrag:i,onSelectionStart:l,onSelectionEnd:s,onPaneClick:c,onPaneContextMenu:d,onPaneScroll:u,onPaneMouseEnter:p,onPaneMouseMove:f,onPaneMouseLeave:g,children:v}){const w=vr(),{userSelectionActive:x,elementsSelectable:k,dragging:C,connectionInProgress:_}=Dt(_Se,jr),$=k&&(e||x),R=S.useRef(null),T=S.useRef(),A=S.useRef(new Set),z=S.useRef(new Set),j=S.useRef(!1),I=q=>{if(j.current||_){j.current=!1;return}c?.(q),w.getState().resetSelectedElements(),w.setState({nodesSelectionActive:!1})},P=q=>{if(Array.isArray(o)&&o?.includes(2)){q.preventDefault();return}d?.(q)},L=u?q=>u(q):void 0,H=q=>{j.current&&(q.stopPropagation(),j.current=!1)},M=q=>{const{domNode:G}=w.getState();if(T.current=G?.getBoundingClientRect(),!T.current)return;const U=q.target===R.current;if(!U&&q.target.closest(".nokey")||!e||!(i&&U||r)||q.button!==0||!q.isPrimary)return;q.target?.setPointerCapture?.(q.pointerId),j.current=!1;const{x:Y,y:Z}=Ki(q.nativeEvent,T.current);w.setState({userSelectionRect:{width:0,height:0,startX:Y,startY:Z,x:Y,y:Z}}),U||(q.stopPropagation(),q.preventDefault())},V=q=>{const{userSelectionRect:G,transform:U,nodeLookup:Y,edgeLookup:Z,connectionLookup:O,triggerNodeChanges:W,triggerEdgeChanges:K,defaultEdgeOptions:Q,resetSelectedElements:ae}=w.getState();if(!T.current||!G)return;const{x:te,y:re}=Ki(q.nativeEvent,T.current),{startX:ue,startY:_e}=G;if(!j.current){const Be=r?0:a;if(Math.hypot(te-ue,re-_e)<=Be)return;ae(),l?.(q)}j.current=!0;const ce={startX:ue,startY:_e,x:teBe.id)),z.current=new Set;const je=Q?.selectable??!0;for(const Be of A.current){const Je=O.get(Be);if(Je)for(const{edgeId:st}of Je.values()){const Le=Z.get(st);Le&&(Le.selectable??je)&&z.current.add(st)}}if(!MF(pe,A.current)){const Be=uf(Y,A.current,!0);W(Be)}if(!MF(xe,z.current)){const Be=uf(Z,z.current);K(Be)}w.setState({userSelectionRect:ce,userSelectionActive:!0,nodesSelectionActive:!1})},B=q=>{q.button===0&&(q.target?.releasePointerCapture?.(q.pointerId),!x&&q.target===R.current&&w.getState().userSelectionRect&&I?.(q),w.setState({userSelectionActive:!1,userSelectionRect:null}),j.current&&(s?.(q),w.setState({nodesSelectionActive:A.current.size>0})))},F=o===!0||Array.isArray(o)&&o.includes(0);return y.jsxs("div",{className:dn(["react-flow__pane",{draggable:F,dragging:C,selection:e}]),onClick:$?void 0:K7(I,R),onContextMenu:K7(P,R),onWheel:K7(L,R),onPointerEnter:$?void 0:p,onPointerMove:$?V:f,onPointerUp:$?B:void 0,onPointerDownCapture:$?M:void 0,onClickCapture:$?H:void 0,onPointerLeave:g,ref:R,style:ow,children:[v,y.jsx(kSe,{})]})}function Q7({id:e,store:r,unselect:n=!1,nodeRef:o}){const{addSelectedNodes:a,unselectNodesAndEdges:i,multiSelectionActive:l,nodeLookup:s,onError:c}=r.getState(),d=s.get(e);if(!d){c?.("012",Gl.error012(e));return}r.setState({nodesSelectionActive:!1}),d.selected?(n||d.selected&&l)&&(i({nodes:[d],edges:[]}),requestAnimationFrame(()=>o?.current?.blur())):a([e])}function LV({nodeRef:e,disabled:r=!1,noDragClassName:n,handleSelector:o,nodeId:a,isSelectable:i,nodeClickDistance:l}){const s=vr(),[c,d]=S.useState(!1),u=S.useRef();return S.useEffect(()=>{u.current=h9e({getStoreItems:()=>s.getState(),onNodeMouseDown:p=>{Q7({id:p,store:s,nodeRef:e})},onDragStart:()=>{d(!0)},onDragStop:()=>{d(!1)}})},[]),S.useEffect(()=>{if(r)u.current?.destroy();else if(e.current)return u.current?.update({noDragClassName:n,handleSelector:o,domNode:e.current,isSelectable:i,nodeId:a,nodeClickDistance:l}),()=>{u.current?.destroy()}},[n,o,r,i,e,a]),c}const ESe=e=>r=>r.selected&&(r.draggable||e&&typeof r.draggable>"u");function FV(){const e=vr();return S.useCallback(r=>{const{nodeExtent:n,snapToGrid:o,snapGrid:a,nodesDraggable:i,onError:l,updateNodePositions:s,nodeLookup:c,nodeOrigin:d}=e.getState(),u=new Map,p=ESe(i),f=o?a[0]:5,g=o?a[1]:5,v=r.direction.x*f*r.factor,w=r.direction.y*g*r.factor;for(const[,x]of c){if(!p(x))continue;let k={x:x.internals.positionAbsolute.x+v,y:x.internals.positionAbsolute.y+w};o&&(k=W1(k,a));const{position:C,positionAbsolute:_}=CF({nodeId:x.id,nextPosition:k,nodeLookup:c,nodeExtent:n,nodeOrigin:d,onError:l});x.position=C,x.internals.positionAbsolute=_,u.set(x.id,x)}s(u)},[])}const J7=S.createContext(null),CSe=J7.Provider;J7.Consumer;const e9=()=>S.useContext(J7),$Se=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),RSe=(e,r,n)=>o=>{const{connectionClickStartHandle:a,connectionMode:i,connection:l}=o,{fromHandle:s,toHandle:c,isValid:d}=l,u=c?.nodeId===e&&c?.id===r&&c?.type===n;return{connectingFrom:s?.nodeId===e&&s?.id===r&&s?.type===n,connectingTo:u,clickConnecting:a?.nodeId===e&&a?.id===r&&a?.type===n,isPossibleEndHandle:i===rf.Strict?s?.type!==n:e!==s?.nodeId||r!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!a,valid:u&&d}};function zSe({type:e="source",position:r=Ue.Top,isValidConnection:n,isConnectable:o=!0,isConnectableStart:a=!0,isConnectableEnd:i=!0,id:l,onConnect:s,children:c,className:d,onMouseDown:u,onTouchStart:p,...f},g){const v=l||null,w=e==="target",x=vr(),k=e9(),{connectOnClick:C,noPanClassName:_,rfId:$}=Dt($Se,jr),{connectingFrom:R,connectingTo:T,clickConnecting:A,isPossibleEndHandle:z,connectionInProcess:j,clickConnectionInProcess:I,valid:P}=Dt(RSe(k,v,e),jr);k||x.getState().onError?.("010",Gl.error010());const L=V=>{const{defaultEdgeOptions:B,onConnect:F,hasDefaultEdges:q}=x.getState(),G={...B,...V};if(q){const{edges:U,setEdges:Y}=x.getState();Y(K7e(G,U))}F?.(G),s?.(G)},H=V=>{if(!k)return;const B=BF(V.nativeEvent);if(a&&(B&&V.button===0||!B)){const F=x.getState();U7.onPointerDown(V.nativeEvent,{handleDomNode:V.currentTarget,autoPanOnConnect:F.autoPanOnConnect,connectionMode:F.connectionMode,connectionRadius:F.connectionRadius,domNode:F.domNode,nodeLookup:F.nodeLookup,lib:F.lib,isTarget:w,handleId:v,nodeId:k,flowId:F.rfId,panBy:F.panBy,cancelConnection:F.cancelConnection,onConnectStart:F.onConnectStart,onConnectEnd:F.onConnectEnd,updateConnection:F.updateConnection,onConnect:L,isValidConnection:n||F.isValidConnection,getTransform:()=>x.getState().transform,getFromHandle:()=>x.getState().connection.fromHandle,autoPanSpeed:F.autoPanSpeed,dragThreshold:F.connectionDragThreshold})}B?u?.(V):p?.(V)},M=V=>{const{onClickConnectStart:B,onClickConnectEnd:F,connectionClickStartHandle:q,connectionMode:G,isValidConnection:U,lib:Y,rfId:Z,nodeLookup:O,connection:W}=x.getState();if(!k||!q&&!a)return;if(!q){B?.(V.nativeEvent,{nodeId:k,handleId:v,handleType:e}),x.setState({connectionClickStartHandle:{nodeId:k,type:e,id:v}});return}const K=NF(V.target),Q=n||U,{connection:ae,isValid:te}=U7.isValid(V.nativeEvent,{handle:{nodeId:k,id:v,type:e},connectionMode:G,fromNodeId:q.nodeId,fromHandleId:q.id||null,fromType:q.type,isValidConnection:Q,flowId:Z,doc:K,lib:Y,nodeLookup:O});te&&ae&&L(ae);const re=structuredClone(W);delete re.inProgress,re.toPosition=re.toHandle?re.toHandle.position:null,F?.(V,re),x.setState({connectionClickStartHandle:null})};return y.jsx("div",{"data-handleid":v,"data-nodeid":k,"data-handlepos":r,"data-id":`${$}-${k}-${v}-${e}`,className:dn(["react-flow__handle",`react-flow__handle-${r}`,"nodrag",_,d,{source:!w,target:w,connectable:o,connectablestart:a,connectableend:i,clickconnecting:A,connectingfrom:R,connectingto:T,valid:P,connectionindicator:o&&(!j||z)&&(j||I?i:a)}]),onMouseDown:H,onTouchStart:H,onClick:C?M:void 0,ref:g,...f,children:c})}const Oo=S.memo(PV(zSe));function TSe({data:e,isConnectable:r,sourcePosition:n=Ue.Bottom}){return y.jsxs(y.Fragment,{children:[e?.label,y.jsx(Oo,{type:"source",position:n,isConnectable:r})]})}function jSe({data:e,isConnectable:r,targetPosition:n=Ue.Top,sourcePosition:o=Ue.Bottom}){return y.jsxs(y.Fragment,{children:[y.jsx(Oo,{type:"target",position:n,isConnectable:r}),e?.label,y.jsx(Oo,{type:"source",position:o,isConnectable:r})]})}function ASe(){return null}function DSe({data:e,isConnectable:r,targetPosition:n=Ue.Top}){return y.jsxs(y.Fragment,{children:[y.jsx(Oo,{type:"target",position:n,isConnectable:r}),e?.label]})}const aw={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},VV={input:TSe,default:jSe,output:DSe,group:ASe};function MSe(e){return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??e.style?.width,height:e.height??e.initialHeight??e.style?.height}:{width:e.width??e.style?.width,height:e.height??e.style?.height}}const NSe=e=>{const{width:r,height:n,x:o,y:a}=nf(e.nodeLookup,{filter:i=>!!i.selected});return{width:Zi(r)?r:null,height:Zi(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${o}px,${a}px)`}};function PSe({onSelectionContextMenu:e,noPanClassName:r,disableKeyboardA11y:n}){const o=vr(),{width:a,height:i,transformString:l,userSelectionActive:s}=Dt(NSe,jr),c=FV(),d=S.useRef(null);if(S.useEffect(()=>{n||d.current?.focus({preventScroll:!0})},[n]),LV({nodeRef:d}),s||!a||!i)return null;const u=e?f=>{const g=o.getState().nodes.filter(v=>v.selected);e(f,g)}:void 0,p=f=>{Object.prototype.hasOwnProperty.call(aw,f.key)&&(f.preventDefault(),c({direction:aw[f.key],factor:f.shiftKey?4:1}))};return y.jsx("div",{className:dn(["react-flow__nodesselection","react-flow__container",r]),style:{transform:l},children:y.jsx("div",{ref:d,className:"react-flow__nodesselection-rect",onContextMenu:u,tabIndex:n?void 0:-1,onKeyDown:n?void 0:p,style:{width:a,height:i}})})}const qV=typeof window<"u"?window:void 0,BSe=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function HV({children:e,onPaneClick:r,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:a,onPaneContextMenu:i,onPaneScroll:l,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:d,selectionOnDrag:u,selectionMode:p,onSelectionStart:f,onSelectionEnd:g,multiSelectionKeyCode:v,panActivationKeyCode:w,zoomActivationKeyCode:x,elementsSelectable:k,zoomOnScroll:C,zoomOnPinch:_,panOnScroll:$,panOnScrollSpeed:R,panOnScrollMode:T,zoomOnDoubleClick:A,panOnDrag:z,defaultViewport:j,translateExtent:I,minZoom:P,maxZoom:L,preventScrolling:H,onSelectionContextMenu:M,noWheelClassName:V,noPanClassName:B,disableKeyboardA11y:F,onViewportChange:q,isControlledViewport:G}){const{nodesSelectionActive:U,userSelectionActive:Y}=Dt(BSe,jr),Z=X1(d,{target:qV}),O=X1(w,{target:qV}),W=O||z,K=O||$,Q=u&&W!==!0,ae=Z||Y||Q;return ySe({deleteKeyCode:c,multiSelectionKeyCode:v}),y.jsx(xSe,{onPaneContextMenu:i,elementsSelectable:k,zoomOnScroll:C,zoomOnPinch:_,panOnScroll:K,panOnScrollSpeed:R,panOnScrollMode:T,zoomOnDoubleClick:A,panOnDrag:!Z&&W,defaultViewport:j,translateExtent:I,minZoom:P,maxZoom:L,zoomActivationKeyCode:x,preventScrolling:H,noWheelClassName:V,noPanClassName:B,onViewportChange:q,isControlledViewport:G,paneClickDistance:s,selectionOnDrag:Q,children:y.jsxs(SSe,{onSelectionStart:f,onSelectionEnd:g,onPaneClick:r,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:a,onPaneContextMenu:i,onPaneScroll:l,panOnDrag:W,isSelecting:!!ae,selectionMode:p,selectionKeyPressed:Z,paneClickDistance:s,selectionOnDrag:Q,children:[e,U&&y.jsx(PSe,{onSelectionContextMenu:M,noPanClassName:B,disableKeyboardA11y:F})]})})}HV.displayName="FlowRenderer";const ISe=S.memo(HV),OSe=e=>r=>e?M7(r.nodeLookup,{x:0,y:0,width:r.width,height:r.height},r.transform,!0).map(n=>n.id):Array.from(r.nodeLookup.keys());function LSe(e){return Dt(S.useCallback(OSe(e),[e]),jr)}const FSe=e=>e.updateNodeInternals;function VSe(){const e=Dt(FSe),[r]=S.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(n=>{const o=new Map;n.forEach(a=>{const i=a.target.getAttribute("data-id");o.set(i,{id:i,nodeElement:a.target,force:!0})}),e(o)}));return S.useEffect(()=>()=>{r?.disconnect()},[r]),r}function qSe({node:e,nodeType:r,hasDimensions:n,resizeObserver:o}){const a=vr(),i=S.useRef(null),l=S.useRef(null),s=S.useRef(e.sourcePosition),c=S.useRef(e.targetPosition),d=S.useRef(r),u=n&&!!e.internals.handleBounds;return S.useEffect(()=>{i.current&&!e.hidden&&(!u||l.current!==i.current)&&(l.current&&o?.unobserve(l.current),o?.observe(i.current),l.current=i.current)},[u,e.hidden]),S.useEffect(()=>()=>{l.current&&(o?.unobserve(l.current),l.current=null)},[]),S.useEffect(()=>{if(i.current){const p=d.current!==r,f=s.current!==e.sourcePosition,g=c.current!==e.targetPosition;(p||f||g)&&(d.current=r,s.current=e.sourcePosition,c.current=e.targetPosition,a.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:i.current,force:!0}]])))}},[e.id,r,e.sourcePosition,e.targetPosition]),i}function HSe({id:e,onClick:r,onMouseEnter:n,onMouseMove:o,onMouseLeave:a,onContextMenu:i,onDoubleClick:l,nodesDraggable:s,elementsSelectable:c,nodesConnectable:d,nodesFocusable:u,resizeObserver:p,noDragClassName:f,noPanClassName:g,disableKeyboardA11y:v,rfId:w,nodeTypes:x,nodeClickDistance:k,onError:C}){const{node:_,internals:$,isParent:R}=Dt(te=>{const re=te.nodeLookup.get(e),ue=te.parentLookup.has(e);return{node:re,internals:re.internals,isParent:ue}},jr);let T=_.type||"default",A=x?.[T]||VV[T];A===void 0&&(C?.("003",Gl.error003(T)),T="default",A=x?.default||VV.default);const z=!!(_.draggable||s&&typeof _.draggable>"u"),j=!!(_.selectable||c&&typeof _.selectable>"u"),I=!!(_.connectable||d&&typeof _.connectable>"u"),P=!!(_.focusable||u&&typeof _.focusable>"u"),L=vr(),H=AF(_),M=qSe({node:_,nodeType:T,hasDimensions:H,resizeObserver:p}),V=LV({nodeRef:M,disabled:_.hidden||!z,noDragClassName:f,handleSelector:_.dragHandle,nodeId:e,isSelectable:j,nodeClickDistance:k}),B=FV();if(_.hidden)return null;const F=_o(_),q=MSe(_),G=j||z||r||n||o||a,U=n?te=>n(te,{...$.userNode}):void 0,Y=o?te=>o(te,{...$.userNode}):void 0,Z=a?te=>a(te,{...$.userNode}):void 0,O=i?te=>i(te,{...$.userNode}):void 0,W=l?te=>l(te,{...$.userNode}):void 0,K=te=>{const{selectNodesOnDrag:re,nodeDragThreshold:ue}=L.getState();j&&(!re||!z||ue>0)&&Q7({id:e,store:L,nodeRef:M}),r&&r(te,{...$.userNode})},Q=te=>{if(!(PF(te.nativeEvent)||v)){if(bF.includes(te.key)&&j){const re=te.key==="Escape";Q7({id:e,store:L,unselect:re,nodeRef:M})}else if(z&&_.selected&&Object.prototype.hasOwnProperty.call(aw,te.key)){te.preventDefault();const{ariaLabelConfig:re}=L.getState();L.setState({ariaLiveMessage:re["node.a11yDescription.ariaLiveMessage"]({direction:te.key.replace("Arrow","").toLowerCase(),x:~~$.positionAbsolute.x,y:~~$.positionAbsolute.y})}),B({direction:aw[te.key],factor:te.shiftKey?4:1})}}},ae=()=>{if(v||!M.current?.matches(":focus-visible"))return;const{transform:te,width:re,height:ue,autoPanOnNodeFocus:_e,setCenter:ce}=L.getState();_e&&(M7(new Map([[e,_]]),{x:0,y:0,width:re,height:ue},te,!0).length>0||ce(_.position.x+F.width/2,_.position.y+F.height/2,{zoom:te[2]}))};return y.jsx("div",{className:dn(["react-flow__node",`react-flow__node-${T}`,{[g]:z},_.className,{selected:_.selected,selectable:j,parent:R,draggable:z,dragging:V}]),ref:M,style:{zIndex:$.z,transform:`translate(${$.positionAbsolute.x}px,${$.positionAbsolute.y}px)`,pointerEvents:G?"all":"none",visibility:H?"visible":"hidden",..._.style,...q},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:U,onMouseMove:Y,onMouseLeave:Z,onContextMenu:O,onClick:K,onDoubleClick:W,onKeyDown:P?Q:void 0,tabIndex:P?0:void 0,onFocus:P?ae:void 0,role:_.ariaRole??(P?"group":void 0),"aria-roledescription":"node","aria-describedby":v?void 0:`${_V}-${w}`,"aria-label":_.ariaLabel,..._.domAttributes,children:y.jsx(CSe,{value:e,children:y.jsx(A,{id:e,data:_.data,type:T,positionAbsoluteX:$.positionAbsolute.x,positionAbsoluteY:$.positionAbsolute.y,selected:_.selected??!1,selectable:j,draggable:z,deletable:_.deletable??!0,isConnectable:I,sourcePosition:_.sourcePosition,targetPosition:_.targetPosition,dragging:V,dragHandle:_.dragHandle,zIndex:$.z,parentId:_.parentId,...F})})})}var USe=S.memo(HSe);const WSe=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function UV(e){const{nodesDraggable:r,nodesConnectable:n,nodesFocusable:o,elementsSelectable:a,onError:i}=Dt(WSe,jr),l=LSe(e.onlyRenderVisibleElements),s=VSe();return y.jsx("div",{className:"react-flow__nodes",style:ow,children:l.map(c=>y.jsx(USe,{id:c,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:s,nodesDraggable:r,nodesConnectable:n,nodesFocusable:o,elementsSelectable:a,nodeClickDistance:e.nodeClickDistance,onError:i},c))})}UV.displayName="NodeRenderer";const GSe=S.memo(UV);function YSe(e){return Dt(S.useCallback(r=>{if(!e)return r.edges.map(o=>o.id);const n=[];if(r.width&&r.height)for(const o of r.edges){const a=r.nodeLookup.get(o.source),i=r.nodeLookup.get(o.target);a&&i&&Y7e({sourceNode:a,targetNode:i,width:r.width,height:r.height,transform:r.transform})&&n.push(o.id)}return n},[e]),jr)}const XSe=({color:e="none",strokeWidth:r=1})=>{const n={strokeWidth:r,...e&&{stroke:e}};return y.jsx("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},ZSe=({color:e="none",strokeWidth:r=1})=>{const n={strokeWidth:r,...e&&{stroke:e,fill:e}};return y.jsx("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},WV={[Hx.Arrow]:XSe,[Hx.ArrowClosed]:ZSe};function KSe(e){const r=vr();return S.useMemo(()=>Object.prototype.hasOwnProperty.call(WV,e)?WV[e]:(r.getState().onError?.("009",Gl.error009(e)),null),[e])}const QSe=({id:e,type:r,color:n,width:o=12.5,height:a=12.5,markerUnits:i="strokeWidth",strokeWidth:l,orient:s="auto-start-reverse"})=>{const c=KSe(r);return c?y.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${o}`,markerHeight:`${a}`,viewBox:"-10 -10 20 20",markerUnits:i,orient:s,refX:"0",refY:"0",children:y.jsx(c,{color:n,strokeWidth:l})}):null},GV=({defaultColor:e,rfId:r})=>{const n=Dt(i=>i.edges),o=Dt(i=>i.defaultEdgeOptions),a=S.useMemo(()=>t9e(n,{id:r,defaultColor:e,defaultMarkerStart:o?.markerStart,defaultMarkerEnd:o?.markerEnd}),[n,o,r,e]);return a.length?y.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:y.jsx("defs",{children:a.map(i=>y.jsx(QSe,{id:i.id,type:i.type,color:i.color,width:i.width,height:i.height,markerUnits:i.markerUnits,strokeWidth:i.strokeWidth,orient:i.orient},i.id))})}):null};GV.displayName="MarkerDefinitions";var JSe=S.memo(GV);function YV({x:e,y:r,label:n,labelStyle:o,labelShowBg:a=!0,labelBgStyle:i,labelBgPadding:l=[2,4],labelBgBorderRadius:s=2,children:c,className:d,...u}){const[p,f]=S.useState({x:1,y:0,width:0,height:0}),g=dn(["react-flow__edge-textwrapper",d]),v=S.useRef(null);return S.useEffect(()=>{if(v.current){const w=v.current.getBBox();f({x:w.x,y:w.y,width:w.width,height:w.height})}},[n]),n?y.jsxs("g",{transform:`translate(${e-p.width/2} ${r-p.height/2})`,className:g,visibility:p.width?"visible":"hidden",...u,children:[a&&y.jsx("rect",{width:p.width+2*l[0],x:-l[0],y:-l[1],height:p.height+2*l[1],className:"react-flow__edge-textbg",style:i,rx:s,ry:s}),y.jsx("text",{className:"react-flow__edge-text",y:p.height/2,dy:"0.3em",ref:v,style:o,children:n}),c]}):null}YV.displayName="EdgeText";const eEe=S.memo(YV);function iw({path:e,labelX:r,labelY:n,label:o,labelStyle:a,labelShowBg:i,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:d=20,...u}){return y.jsxs(y.Fragment,{children:[y.jsx("path",{...u,d:e,fill:"none",className:dn(["react-flow__edge-path",u.className])}),d?y.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:d,className:"react-flow__edge-interaction"}):null,o&&Zi(r)&&Zi(n)?y.jsx(eEe,{x:r,y:n,label:o,labelStyle:a,labelShowBg:i,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function XV({pos:e,x1:r,y1:n,x2:o,y2:a}){return e===Ue.Left||e===Ue.Right?[.5*(r+o),n]:[r,.5*(n+a)]}function ZV({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:a,targetPosition:i=Ue.Top}){const[l,s]=XV({pos:n,x1:e,y1:r,x2:o,y2:a}),[c,d]=XV({pos:i,x1:o,y1:a,x2:e,y2:r}),[u,p,f,g]=OF({sourceX:e,sourceY:r,targetX:o,targetY:a,sourceControlX:l,sourceControlY:s,targetControlX:c,targetControlY:d});return[`M${e},${r} C${l},${s} ${c},${d} ${o},${a}`,u,p,f,g]}function KV(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:a,targetY:i,sourcePosition:l,targetPosition:s,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,interactionWidth:k})=>{const[C,_,$]=ZV({sourceX:n,sourceY:o,sourcePosition:l,targetX:a,targetY:i,targetPosition:s}),R=e.isInternal?void 0:r;return y.jsx(iw,{id:R,path:C,labelX:_,labelY:$,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,interactionWidth:k})})}const tEe=KV({isInternal:!1}),QV=KV({isInternal:!0});tEe.displayName="SimpleBezierEdge",QV.displayName="SimpleBezierEdgeInternal";function JV(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:a,targetY:i,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,sourcePosition:g=Ue.Bottom,targetPosition:v=Ue.Top,markerEnd:w,markerStart:x,pathOptions:k,interactionWidth:C})=>{const[_,$,R]=Kx({sourceX:n,sourceY:o,sourcePosition:g,targetX:a,targetY:i,targetPosition:v,borderRadius:k?.borderRadius,offset:k?.offset,stepPosition:k?.stepPosition}),T=e.isInternal?void 0:r;return y.jsx(iw,{id:T,path:_,labelX:$,labelY:R,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:w,markerStart:x,interactionWidth:C})})}const eq=JV({isInternal:!1}),tq=JV({isInternal:!0});eq.displayName="SmoothStepEdge",tq.displayName="SmoothStepEdgeInternal";function rq(e){return S.memo(({id:r,...n})=>{const o=e.isInternal?void 0:r;return y.jsx(eq,{...n,id:o,pathOptions:S.useMemo(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}const rEe=rq({isInternal:!1}),nq=rq({isInternal:!0});rEe.displayName="StepEdge",nq.displayName="StepEdgeInternal";function oq(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:a,targetY:i,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:g,markerStart:v,interactionWidth:w})=>{const[x,k,C]=VF({sourceX:n,sourceY:o,targetX:a,targetY:i}),_=e.isInternal?void 0:r;return y.jsx(iw,{id:_,path:x,labelX:k,labelY:C,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:g,markerStart:v,interactionWidth:w})})}const nEe=oq({isInternal:!1}),aq=oq({isInternal:!0});nEe.displayName="StraightEdge",aq.displayName="StraightEdgeInternal";function iq(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:a,targetY:i,sourcePosition:l=Ue.Bottom,targetPosition:s=Ue.Top,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,pathOptions:k,interactionWidth:C})=>{const[_,$,R]=Zx({sourceX:n,sourceY:o,sourcePosition:l,targetX:a,targetY:i,targetPosition:s,curvature:k?.curvature}),T=e.isInternal?void 0:r;return y.jsx(iw,{id:T,path:_,labelX:$,labelY:R,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,interactionWidth:C})})}const oEe=iq({isInternal:!1}),lq=iq({isInternal:!0});oEe.displayName="BezierEdge",lq.displayName="BezierEdgeInternal";const sq={default:lq,straight:aq,step:nq,smoothstep:tq,simplebezier:QV},cq={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},aEe=(e,r,n)=>n===Ue.Left?e-r:n===Ue.Right?e+r:e,iEe=(e,r,n)=>n===Ue.Top?e-r:n===Ue.Bottom?e+r:e,dq="react-flow__edgeupdater";function uq({position:e,centerX:r,centerY:n,radius:o=10,onMouseDown:a,onMouseEnter:i,onMouseOut:l,type:s}){return y.jsx("circle",{onMouseDown:a,onMouseEnter:i,onMouseOut:l,className:dn([dq,`${dq}-${s}`]),cx:aEe(r,o,e),cy:iEe(n,o,e),r:o,stroke:"transparent",fill:"transparent"})}function lEe({isReconnectable:e,reconnectRadius:r,edge:n,sourceX:o,sourceY:a,targetX:i,targetY:l,sourcePosition:s,targetPosition:c,onReconnect:d,onReconnectStart:u,onReconnectEnd:p,setReconnecting:f,setUpdateHover:g}){const v=vr(),w=($,R)=>{if($.button!==0)return;const{autoPanOnConnect:T,domNode:A,isValidConnection:z,connectionMode:j,connectionRadius:I,lib:P,onConnectStart:L,onConnectEnd:H,cancelConnection:M,nodeLookup:V,rfId:B,panBy:F,updateConnection:q}=v.getState(),G=R.type==="target",U=(O,W)=>{f(!1),p?.(O,n,R.type,W)},Y=O=>d?.(n,O),Z=(O,W)=>{f(!0),u?.($,n,R.type),L?.(O,W)};U7.onPointerDown($.nativeEvent,{autoPanOnConnect:T,connectionMode:j,connectionRadius:I,domNode:A,handleId:R.id,nodeId:R.nodeId,nodeLookup:V,isTarget:G,edgeUpdaterType:R.type,lib:P,flowId:B,cancelConnection:M,panBy:F,isValidConnection:z,onConnect:Y,onConnectStart:Z,onConnectEnd:H,onReconnectEnd:U,updateConnection:q,getTransform:()=>v.getState().transform,getFromHandle:()=>v.getState().connection.fromHandle,dragThreshold:v.getState().connectionDragThreshold,handleDomNode:$.currentTarget})},x=$=>w($,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),k=$=>w($,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),C=()=>g(!0),_=()=>g(!1);return y.jsxs(y.Fragment,{children:[(e===!0||e==="source")&&y.jsx(uq,{position:s,centerX:o,centerY:a,radius:r,onMouseDown:x,onMouseEnter:C,onMouseOut:_,type:"source"}),(e===!0||e==="target")&&y.jsx(uq,{position:c,centerX:i,centerY:l,radius:r,onMouseDown:k,onMouseEnter:C,onMouseOut:_,type:"target"})]})}function sEe({id:e,edgesFocusable:r,edgesReconnectable:n,elementsSelectable:o,onClick:a,onDoubleClick:i,onContextMenu:l,onMouseEnter:s,onMouseMove:c,onMouseLeave:d,reconnectRadius:u,onReconnect:p,onReconnectStart:f,onReconnectEnd:g,rfId:v,edgeTypes:w,noPanClassName:x,onError:k,disableKeyboardA11y:C}){let _=Dt(ce=>ce.edgeLookup.get(e));const $=Dt(ce=>ce.defaultEdgeOptions);_=$?{...$,..._}:_;let R=_.type||"default",T=w?.[R]||sq[R];T===void 0&&(k?.("011",Gl.error011(R)),R="default",T=w?.default||sq.default);const A=!!(_.focusable||r&&typeof _.focusable>"u"),z=typeof p<"u"&&(_.reconnectable||n&&typeof _.reconnectable>"u"),j=!!(_.selectable||o&&typeof _.selectable>"u"),I=S.useRef(null),[P,L]=S.useState(!1),[H,M]=S.useState(!1),V=vr(),{zIndex:B,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:Z}=Dt(S.useCallback(ce=>{const pe=ce.nodeLookup.get(_.source),xe=ce.nodeLookup.get(_.target);if(!pe||!xe)return{zIndex:_.zIndex,...cq};const je=WF({id:e,sourceNode:pe,targetNode:xe,sourceHandle:_.sourceHandle||null,targetHandle:_.targetHandle||null,connectionMode:ce.connectionMode,onError:k});return{zIndex:G7e({selected:_.selected,zIndex:_.zIndex,sourceNode:pe,targetNode:xe,elevateOnSelect:ce.elevateEdgesOnSelect,zIndexMode:ce.zIndexMode}),...je||cq}},[_.source,_.target,_.sourceHandle,_.targetHandle,_.selected,_.zIndex]),jr),O=S.useMemo(()=>_.markerStart?`url('#${B7(_.markerStart,v)}')`:void 0,[_.markerStart,v]),W=S.useMemo(()=>_.markerEnd?`url('#${B7(_.markerEnd,v)}')`:void 0,[_.markerEnd,v]);if(_.hidden||F===null||q===null||G===null||U===null)return null;const K=ce=>{const{addSelectedEdges:pe,unselectNodesAndEdges:xe,multiSelectionActive:je}=V.getState();j&&(V.setState({nodesSelectionActive:!1}),_.selected&&je?(xe({nodes:[],edges:[_]}),I.current?.blur()):pe([e])),a&&a(ce,_)},Q=i?ce=>{i(ce,{..._})}:void 0,ae=l?ce=>{l(ce,{..._})}:void 0,te=s?ce=>{s(ce,{..._})}:void 0,re=c?ce=>{c(ce,{..._})}:void 0,ue=d?ce=>{d(ce,{..._})}:void 0,_e=ce=>{if(!C&&bF.includes(ce.key)&&j){const{unselectNodesAndEdges:pe,addSelectedEdges:xe}=V.getState();ce.key==="Escape"?(I.current?.blur(),pe({edges:[_]})):xe([e])}};return y.jsx("svg",{style:{zIndex:B},children:y.jsxs("g",{className:dn(["react-flow__edge",`react-flow__edge-${R}`,_.className,x,{selected:_.selected,animated:_.animated,inactive:!j&&!a,updating:P,selectable:j}]),onClick:K,onDoubleClick:Q,onContextMenu:ae,onMouseEnter:te,onMouseMove:re,onMouseLeave:ue,onKeyDown:A?_e:void 0,tabIndex:A?0:void 0,role:_.ariaRole??(A?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":_.ariaLabel===null?void 0:_.ariaLabel||`Edge from ${_.source} to ${_.target}`,"aria-describedby":A?`${SV}-${v}`:void 0,ref:I,..._.domAttributes,children:[!H&&y.jsx(T,{id:e,source:_.source,target:_.target,type:_.type,selected:_.selected,animated:_.animated,selectable:j,deletable:_.deletable??!0,label:_.label,labelStyle:_.labelStyle,labelShowBg:_.labelShowBg,labelBgStyle:_.labelBgStyle,labelBgPadding:_.labelBgPadding,labelBgBorderRadius:_.labelBgBorderRadius,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:Z,data:_.data,style:_.style,sourceHandleId:_.sourceHandle,targetHandleId:_.targetHandle,markerStart:O,markerEnd:W,pathOptions:"pathOptions"in _?_.pathOptions:void 0,interactionWidth:_.interactionWidth}),z&&y.jsx(lEe,{edge:_,isReconnectable:z,reconnectRadius:u,onReconnect:p,onReconnectStart:f,onReconnectEnd:g,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:Z,setUpdateHover:L,setReconnecting:M})]})})}var cEe=S.memo(sEe);const dEe=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function pq({defaultMarkerColor:e,onlyRenderVisibleElements:r,rfId:n,edgeTypes:o,noPanClassName:a,onReconnect:i,onEdgeContextMenu:l,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:d,onEdgeClick:u,reconnectRadius:p,onEdgeDoubleClick:f,onReconnectStart:g,onReconnectEnd:v,disableKeyboardA11y:w}){const{edgesFocusable:x,edgesReconnectable:k,elementsSelectable:C,onError:_}=Dt(dEe,jr),$=YSe(r);return y.jsxs("div",{className:"react-flow__edges",children:[y.jsx(JSe,{defaultColor:e,rfId:n}),$.map(R=>y.jsx(cEe,{id:R,edgesFocusable:x,edgesReconnectable:k,elementsSelectable:C,noPanClassName:a,onReconnect:i,onContextMenu:l,onMouseEnter:s,onMouseMove:c,onMouseLeave:d,onClick:u,reconnectRadius:p,onDoubleClick:f,onReconnectStart:g,onReconnectEnd:v,rfId:n,onError:_,edgeTypes:o,disableKeyboardA11y:w},R))]})}pq.displayName="EdgeRenderer";const uEe=S.memo(pq),pEe=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function hEe({children:e}){const r=Dt(pEe);return y.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:r},children:e})}function fEe(e){const r=pf(),n=S.useRef(!1);S.useEffect(()=>{!n.current&&r.viewportInitialized&&e&&(setTimeout(()=>e(r),1),n.current=!0)},[e,r.viewportInitialized])}const mEe=e=>e.panZoom?.syncViewport;function gEe(e){const r=Dt(mEe),n=vr();return S.useEffect(()=>{e&&(r?.(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,r]),null}function yEe(e){return e.connection.inProgress?{...e.connection,to:G1(e.connection.to,e.transform)}:{...e.connection}}function vEe(e){return yEe}function bEe(e){const r=vEe();return Dt(r,jr)}const xEe=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function wEe({containerStyle:e,style:r,type:n,component:o}){const{nodesConnectable:a,width:i,height:l,isValid:s,inProgress:c}=Dt(xEe,jr);return i&&a&&c?y.jsx("svg",{style:e,width:i,height:l,className:"react-flow__connectionline react-flow__container",children:y.jsx("g",{className:dn(["react-flow__connection",_F(s)]),children:y.jsx(hq,{style:r,type:n,CustomComponent:o,isValid:s})})}):null}const hq=({style:e,type:r=ad.Bezier,CustomComponent:n,isValid:o})=>{const{inProgress:a,from:i,fromNode:l,fromHandle:s,fromPosition:c,to:d,toNode:u,toHandle:p,toPosition:f,pointer:g}=bEe();if(!a)return;if(n)return y.jsx(n,{connectionLineType:r,connectionLineStyle:e,fromNode:l,fromHandle:s,fromX:i.x,fromY:i.y,toX:d.x,toY:d.y,fromPosition:c,toPosition:f,connectionStatus:_F(o),toNode:u,toHandle:p,pointer:g});let v="";const w={sourceX:i.x,sourceY:i.y,sourcePosition:c,targetX:d.x,targetY:d.y,targetPosition:f};switch(r){case ad.Bezier:[v]=Zx(w);break;case ad.SimpleBezier:[v]=ZV(w);break;case ad.Step:[v]=Kx({...w,borderRadius:0});break;case ad.SmoothStep:[v]=Kx(w);break;default:[v]=VF(w)}return y.jsx("path",{d:v,fill:"none",className:"react-flow__connection-path",style:e})};hq.displayName="ConnectionLine";const kEe={};function fq(e=kEe){S.useRef(e),vr(),S.useEffect(()=>{},[e])}function _Ee(){vr(),S.useRef(!1),S.useEffect(()=>{},[])}function mq({nodeTypes:e,edgeTypes:r,onInit:n,onNodeClick:o,onEdgeClick:a,onNodeDoubleClick:i,onEdgeDoubleClick:l,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:d,onNodeContextMenu:u,onSelectionContextMenu:p,onSelectionStart:f,onSelectionEnd:g,connectionLineType:v,connectionLineStyle:w,connectionLineComponent:x,connectionLineContainerStyle:k,selectionKeyCode:C,selectionOnDrag:_,selectionMode:$,multiSelectionKeyCode:R,panActivationKeyCode:T,zoomActivationKeyCode:A,deleteKeyCode:z,onlyRenderVisibleElements:j,elementsSelectable:I,defaultViewport:P,translateExtent:L,minZoom:H,maxZoom:M,preventScrolling:V,defaultMarkerColor:B,zoomOnScroll:F,zoomOnPinch:q,panOnScroll:G,panOnScrollSpeed:U,panOnScrollMode:Y,zoomOnDoubleClick:Z,panOnDrag:O,onPaneClick:W,onPaneMouseEnter:K,onPaneMouseMove:Q,onPaneMouseLeave:ae,onPaneScroll:te,onPaneContextMenu:re,paneClickDistance:ue,nodeClickDistance:_e,onEdgeContextMenu:ce,onEdgeMouseEnter:pe,onEdgeMouseMove:xe,onEdgeMouseLeave:je,reconnectRadius:Be,onReconnect:Je,onReconnectStart:st,onReconnectEnd:Le,noDragClassName:St,noWheelClassName:Ve,noPanClassName:qe,disableKeyboardA11y:Xe,nodeExtent:It,rfId:Et,viewport:be,onViewportChange:ke}){return fq(e),fq(r),_Ee(),fEe(n),gEe(be),y.jsx(ISe,{onPaneClick:W,onPaneMouseEnter:K,onPaneMouseMove:Q,onPaneMouseLeave:ae,onPaneContextMenu:re,onPaneScroll:te,paneClickDistance:ue,deleteKeyCode:z,selectionKeyCode:C,selectionOnDrag:_,selectionMode:$,onSelectionStart:f,onSelectionEnd:g,multiSelectionKeyCode:R,panActivationKeyCode:T,zoomActivationKeyCode:A,elementsSelectable:I,zoomOnScroll:F,zoomOnPinch:q,zoomOnDoubleClick:Z,panOnScroll:G,panOnScrollSpeed:U,panOnScrollMode:Y,panOnDrag:O,defaultViewport:P,translateExtent:L,minZoom:H,maxZoom:M,onSelectionContextMenu:p,preventScrolling:V,noDragClassName:St,noWheelClassName:Ve,noPanClassName:qe,disableKeyboardA11y:Xe,onViewportChange:ke,isControlledViewport:!!be,children:y.jsxs(hEe,{children:[y.jsx(uEe,{edgeTypes:r,onEdgeClick:a,onEdgeDoubleClick:l,onReconnect:Je,onReconnectStart:st,onReconnectEnd:Le,onlyRenderVisibleElements:j,onEdgeContextMenu:ce,onEdgeMouseEnter:pe,onEdgeMouseMove:xe,onEdgeMouseLeave:je,reconnectRadius:Be,defaultMarkerColor:B,noPanClassName:qe,disableKeyboardA11y:Xe,rfId:Et}),y.jsx(wEe,{style:w,type:v,component:x,containerStyle:k}),y.jsx("div",{className:"react-flow__edgelabel-renderer"}),y.jsx(GSe,{nodeTypes:e,onNodeClick:o,onNodeDoubleClick:i,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:d,onNodeContextMenu:u,nodeClickDistance:_e,onlyRenderVisibleElements:j,noPanClassName:qe,noDragClassName:St,disableKeyboardA11y:Xe,nodeExtent:It,rfId:Et}),y.jsx("div",{className:"react-flow__viewport-portal"})]})})}mq.displayName="GraphView";const SEe=S.memo(mq),gq=({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:a,height:i,fitView:l,fitViewOptions:s,minZoom:c=.5,maxZoom:d=2,nodeOrigin:u,nodeExtent:p,zIndexMode:f="basic"}={})=>{const g=new Map,v=new Map,w=new Map,x=new Map,k=o??r??[],C=n??e??[],_=u??[0,0],$=p??V1;QF(w,x,k);const R=F7(C,g,v,{nodeOrigin:_,nodeExtent:$,zIndexMode:f});let T=[0,0,1];if(l&&a&&i){const A=nf(g,{filter:P=>!!((P.width||P.initialWidth)&&(P.height||P.initialHeight))}),{x:z,y:j,zoom:I}=Ws(A,a,i,c,d,s?.padding??.1);T=[z,j,I]}return{rfId:"1",width:a??0,height:i??0,transform:T,nodes:C,nodesInitialized:R,nodeLookup:g,parentLookup:v,edges:k,edgeLookup:x,connectionLookup:w,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:o!==void 0,panZoom:null,minZoom:c,maxZoom:d,translateExtent:V1,nodeExtent:$,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:rf.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:_,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:l??!1,fitViewOptions:s,fitViewResolver:null,connection:{...wF},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:F7e,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:xF,zIndexMode:f,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},EEe=({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:a,height:i,fitView:l,fitViewOptions:s,minZoom:c,maxZoom:d,nodeOrigin:u,nodeExtent:p,zIndexMode:f})=>q9e((g,v)=>{async function w(){const{nodeLookup:x,panZoom:k,fitViewOptions:C,fitViewResolver:_,width:$,height:R,minZoom:T,maxZoom:A}=v();k&&(await O7e({nodes:x,width:$,height:R,panZoom:k,minZoom:T,maxZoom:A},C),_?.resolve(!0),g({fitViewResolver:null}))}return{...gq({nodes:e,edges:r,width:a,height:i,fitView:l,fitViewOptions:s,minZoom:c,maxZoom:d,nodeOrigin:u,nodeExtent:p,defaultNodes:n,defaultEdges:o,zIndexMode:f}),setNodes:x=>{const{nodeLookup:k,parentLookup:C,nodeOrigin:_,elevateNodesOnSelect:$,fitViewQueued:R,zIndexMode:T}=v(),A=F7(x,k,C,{nodeOrigin:_,nodeExtent:p,elevateNodesOnSelect:$,checkEquality:!0,zIndexMode:T});R&&A?(w(),g({nodes:x,nodesInitialized:A,fitViewQueued:!1,fitViewOptions:void 0})):g({nodes:x,nodesInitialized:A})},setEdges:x=>{const{connectionLookup:k,edgeLookup:C}=v();QF(k,C,x),g({edges:x})},setDefaultNodesAndEdges:(x,k)=>{if(x){const{setNodes:C}=v();C(x),g({hasDefaultNodes:!0})}if(k){const{setEdges:C}=v();C(k),g({hasDefaultEdges:!0})}},updateNodeInternals:x=>{const{triggerNodeChanges:k,nodeLookup:C,parentLookup:_,domNode:$,nodeOrigin:R,nodeExtent:T,debug:A,fitViewQueued:z,zIndexMode:j}=v(),{changes:I,updatedInternals:P}=c9e(x,C,_,$,R,T,j);P&&(a9e(C,_,{nodeOrigin:R,nodeExtent:T,zIndexMode:j}),z?(w(),g({fitViewQueued:!1,fitViewOptions:void 0})):g({}),I?.length>0&&(A&&console.log("React Flow: trigger node changes",I),k?.(I)))},updateNodePositions:(x,k=!1)=>{const C=[];let _=[];const{nodeLookup:$,triggerNodeChanges:R,connection:T,updateConnection:A,onNodesChangeMiddlewareMap:z}=v();for(const[j,I]of x){const P=$.get(j),L=!!(P?.expandParent&&P?.parentId&&I?.position),H={id:j,type:"position",position:L?{x:Math.max(0,I.position.x),y:Math.max(0,I.position.y)}:I.position,dragging:k};if(P&&T.inProgress&&T.fromNode.id===P.id){const M=Ku(P,T.fromHandle,Ue.Left,!0);A({...T,from:M})}L&&P.parentId&&C.push({id:j,parentId:P.parentId,rect:{...I.internals.positionAbsolute,width:I.measured.width??0,height:I.measured.height??0}}),_.push(H)}if(C.length>0){const{parentLookup:j,nodeOrigin:I}=v(),P=q7(C,$,j,I);_.push(...P)}for(const j of z.values())_=j(_);R(_)},triggerNodeChanges:x=>{const{onNodesChange:k,setNodes:C,nodes:_,hasDefaultNodes:$,debug:R}=v();if(x?.length){if($){const T=rw(x,_);C(T)}R&&console.log("React Flow: trigger node changes",x),k?.(x)}},triggerEdgeChanges:x=>{const{onEdgesChange:k,setEdges:C,edges:_,hasDefaultEdges:$,debug:R}=v();if(x?.length){if($){const T=nw(x,_);C(T)}R&&console.log("React Flow: trigger edge changes",x),k?.(x)}},addSelectedNodes:x=>{const{multiSelectionActive:k,edgeLookup:C,nodeLookup:_,triggerNodeChanges:$,triggerEdgeChanges:R}=v();if(k){const T=x.map(A=>Qu(A,!0));$(T);return}$(uf(_,new Set([...x]),!0)),R(uf(C))},addSelectedEdges:x=>{const{multiSelectionActive:k,edgeLookup:C,nodeLookup:_,triggerNodeChanges:$,triggerEdgeChanges:R}=v();if(k){const T=x.map(A=>Qu(A,!0));R(T);return}R(uf(C,new Set([...x]))),$(uf(_,new Set,!0))},unselectNodesAndEdges:({nodes:x,edges:k}={})=>{const{edges:C,nodes:_,nodeLookup:$,triggerNodeChanges:R,triggerEdgeChanges:T}=v(),A=x||_,z=k||C,j=A.map(P=>{const L=$.get(P.id);return L&&(L.selected=!1),Qu(P.id,!1)}),I=z.map(P=>Qu(P.id,!1));R(j),T(I)},setMinZoom:x=>{const{panZoom:k,maxZoom:C}=v();k?.setScaleExtent([x,C]),g({minZoom:x})},setMaxZoom:x=>{const{panZoom:k,minZoom:C}=v();k?.setScaleExtent([C,x]),g({maxZoom:x})},setTranslateExtent:x=>{v().panZoom?.setTranslateExtent(x),g({translateExtent:x})},resetSelectedElements:()=>{const{edges:x,nodes:k,triggerNodeChanges:C,triggerEdgeChanges:_,elementsSelectable:$}=v();if(!$)return;const R=k.reduce((A,z)=>z.selected?[...A,Qu(z.id,!1)]:A,[]),T=x.reduce((A,z)=>z.selected?[...A,Qu(z.id,!1)]:A,[]);C(R),_(T)},setNodeExtent:x=>{const{nodes:k,nodeLookup:C,parentLookup:_,nodeOrigin:$,elevateNodesOnSelect:R,nodeExtent:T,zIndexMode:A}=v();x[0][0]===T[0][0]&&x[0][1]===T[0][1]&&x[1][0]===T[1][0]&&x[1][1]===T[1][1]||(F7(k,C,_,{nodeOrigin:$,nodeExtent:x,elevateNodesOnSelect:R,checkEquality:!1,zIndexMode:A}),g({nodeExtent:x}))},panBy:x=>{const{transform:k,width:C,height:_,panZoom:$,translateExtent:R}=v();return d9e({delta:x,panZoom:$,transform:k,translateExtent:R,width:C,height:_})},setCenter:async(x,k,C)=>{const{width:_,height:$,maxZoom:R,panZoom:T}=v();if(!T)return Promise.resolve(!1);const A=typeof C?.zoom<"u"?C.zoom:R;return await T.setViewport({x:_/2-x*A,y:$/2-k*A,zoom:A},{duration:C?.duration,ease:C?.ease,interpolate:C?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{g({connection:{...wF}})},updateConnection:x=>{g({connection:x})},reset:()=>g({...gq()})}},Object.is);function lw({initialNodes:e,initialEdges:r,defaultNodes:n,defaultEdges:o,initialWidth:a,initialHeight:i,initialMinZoom:l,initialMaxZoom:s,initialFitViewOptions:c,fitView:d,nodeOrigin:u,nodeExtent:p,zIndexMode:f,children:g}){const[v]=S.useState(()=>EEe({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:a,height:i,fitView:d,minZoom:l,maxZoom:s,fitViewOptions:c,nodeOrigin:u,nodeExtent:p,zIndexMode:f}));return y.jsx(H9e,{value:v,children:y.jsx(hSe,{children:g})})}function CEe({children:e,nodes:r,edges:n,defaultNodes:o,defaultEdges:a,width:i,height:l,fitView:s,fitViewOptions:c,minZoom:d,maxZoom:u,nodeOrigin:p,nodeExtent:f,zIndexMode:g}){return S.useContext(ew)?y.jsx(y.Fragment,{children:e}):y.jsx(lw,{initialNodes:r,initialEdges:n,defaultNodes:o,defaultEdges:a,initialWidth:i,initialHeight:l,fitView:s,initialFitViewOptions:c,initialMinZoom:d,initialMaxZoom:u,nodeOrigin:p,nodeExtent:f,zIndexMode:g,children:e})}const $Ee={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function REe({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,className:a,nodeTypes:i,edgeTypes:l,onNodeClick:s,onEdgeClick:c,onInit:d,onMove:u,onMoveStart:p,onMoveEnd:f,onConnect:g,onConnectStart:v,onConnectEnd:w,onClickConnectStart:x,onClickConnectEnd:k,onNodeMouseEnter:C,onNodeMouseMove:_,onNodeMouseLeave:$,onNodeContextMenu:R,onNodeDoubleClick:T,onNodeDragStart:A,onNodeDrag:z,onNodeDragStop:j,onNodesDelete:I,onEdgesDelete:P,onDelete:L,onSelectionChange:H,onSelectionDragStart:M,onSelectionDrag:V,onSelectionDragStop:B,onSelectionContextMenu:F,onSelectionStart:q,onSelectionEnd:G,onBeforeDelete:U,connectionMode:Y,connectionLineType:Z=ad.Bezier,connectionLineStyle:O,connectionLineComponent:W,connectionLineContainerStyle:K,deleteKeyCode:Q="Backspace",selectionKeyCode:ae="Shift",selectionOnDrag:te=!1,selectionMode:re=q1.Full,panActivationKeyCode:ue="Space",multiSelectionKeyCode:_e=lf()?"Meta":"Control",zoomActivationKeyCode:ce=lf()?"Meta":"Control",snapToGrid:pe,snapGrid:xe,onlyRenderVisibleElements:je=!1,selectNodesOnDrag:Be,nodesDraggable:Je,autoPanOnNodeFocus:st,nodesConnectable:Le,nodesFocusable:St,nodeOrigin:Ve=EV,edgesFocusable:qe,edgesReconnectable:Xe,elementsSelectable:It=!0,defaultViewport:Et=nSe,minZoom:be=.5,maxZoom:ke=2,translateExtent:Ye=V1,preventScrolling:yt=!0,nodeExtent:xt,defaultMarkerColor:Tr="#b1b1b7",zoomOnScroll:er=!0,zoomOnPinch:qt=!0,panOnScroll:Ht=!1,panOnScrollSpeed:Zr=.5,panOnScrollMode:Gt=Yu.Free,zoomOnDoubleClick:ln=!0,panOnDrag:Wn=!0,onPaneClick:fn,onPaneMouseEnter:oo,onPaneMouseMove:Yo,onPaneMouseLeave:jo,onPaneScroll:ua,onPaneContextMenu:Dl,paneClickDistance:Ao=1,nodeClickDistance:xs=0,children:ws,onReconnect:zc,onReconnectStart:Ml,onReconnectEnd:lh,onEdgeContextMenu:ks,onEdgeDoubleClick:tu,onEdgeMouseEnter:Xo,onEdgeMouseMove:Tc,onEdgeMouseLeave:_s,reconnectRadius:ru=10,onNodesChange:Ss,onEdgesChange:Zo,noDragClassName:Nr="nodrag",noWheelClassName:Mn="nowheel",noPanClassName:Do="nopan",fitView:Nl,fitViewOptions:jc,connectOnClick:sh,attributionPosition:La,proOptions:Ri,defaultEdgeOptions:Pl,elevateNodesOnSelect:zi=!0,elevateEdgesOnSelect:Ti=!1,disableKeyboardA11y:pa=!1,autoPanOnConnect:ho,autoPanOnNodeDrag:Wr,autoPanSpeed:Ac,connectionRadius:Dc,isValidConnection:Fa,onError:ji,style:nu,id:Es,nodeDragThreshold:ou,connectionDragThreshold:ch,viewport:Cs,onViewportChange:$s,width:Mo,height:Gr,colorMode:au="light",debug:dh,onScroll:Ai,ariaLabelConfig:iu,zIndexMode:Di="basic",...lu},J){const ee=Es||"1",oe=lSe(au),ie=S.useCallback(le=>{le.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Ai?.(le)},[Ai]);return y.jsx("div",{"data-testid":"rf__wrapper",...lu,onScroll:ie,style:{...nu,...$Ee},ref:J,className:dn(["react-flow",a,oe]),id:Es,role:"application",children:y.jsxs(CEe,{nodes:e,edges:r,width:Mo,height:Gr,fitView:Nl,fitViewOptions:jc,minZoom:be,maxZoom:ke,nodeOrigin:Ve,nodeExtent:xt,zIndexMode:Di,children:[y.jsx(SEe,{onInit:d,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:C,onNodeMouseMove:_,onNodeMouseLeave:$,onNodeContextMenu:R,onNodeDoubleClick:T,nodeTypes:i,edgeTypes:l,connectionLineType:Z,connectionLineStyle:O,connectionLineComponent:W,connectionLineContainerStyle:K,selectionKeyCode:ae,selectionOnDrag:te,selectionMode:re,deleteKeyCode:Q,multiSelectionKeyCode:_e,panActivationKeyCode:ue,zoomActivationKeyCode:ce,onlyRenderVisibleElements:je,defaultViewport:Et,translateExtent:Ye,minZoom:be,maxZoom:ke,preventScrolling:yt,zoomOnScroll:er,zoomOnPinch:qt,zoomOnDoubleClick:ln,panOnScroll:Ht,panOnScrollSpeed:Zr,panOnScrollMode:Gt,panOnDrag:Wn,onPaneClick:fn,onPaneMouseEnter:oo,onPaneMouseMove:Yo,onPaneMouseLeave:jo,onPaneScroll:ua,onPaneContextMenu:Dl,paneClickDistance:Ao,nodeClickDistance:xs,onSelectionContextMenu:F,onSelectionStart:q,onSelectionEnd:G,onReconnect:zc,onReconnectStart:Ml,onReconnectEnd:lh,onEdgeContextMenu:ks,onEdgeDoubleClick:tu,onEdgeMouseEnter:Xo,onEdgeMouseMove:Tc,onEdgeMouseLeave:_s,reconnectRadius:ru,defaultMarkerColor:Tr,noDragClassName:Nr,noWheelClassName:Mn,noPanClassName:Do,rfId:ee,disableKeyboardA11y:pa,nodeExtent:xt,viewport:Cs,onViewportChange:$s}),y.jsx(iSe,{nodes:e,edges:r,defaultNodes:n,defaultEdges:o,onConnect:g,onConnectStart:v,onConnectEnd:w,onClickConnectStart:x,onClickConnectEnd:k,nodesDraggable:Je,autoPanOnNodeFocus:st,nodesConnectable:Le,nodesFocusable:St,edgesFocusable:qe,edgesReconnectable:Xe,elementsSelectable:It,elevateNodesOnSelect:zi,elevateEdgesOnSelect:Ti,minZoom:be,maxZoom:ke,nodeExtent:xt,onNodesChange:Ss,onEdgesChange:Zo,snapToGrid:pe,snapGrid:xe,connectionMode:Y,translateExtent:Ye,connectOnClick:sh,defaultEdgeOptions:Pl,fitView:Nl,fitViewOptions:jc,onNodesDelete:I,onEdgesDelete:P,onDelete:L,onNodeDragStart:A,onNodeDrag:z,onNodeDragStop:j,onSelectionDrag:V,onSelectionDragStart:M,onSelectionDragStop:B,onMove:u,onMoveStart:p,onMoveEnd:f,noPanClassName:Do,nodeOrigin:Ve,rfId:ee,autoPanOnConnect:ho,autoPanOnNodeDrag:Wr,autoPanSpeed:Ac,onError:ji,connectionRadius:Dc,isValidConnection:Fa,selectNodesOnDrag:Be,nodeDragThreshold:ou,connectionDragThreshold:ch,onBeforeDelete:U,debug:dh,ariaLabelConfig:iu,zIndexMode:Di}),y.jsx(rSe,{onSelectionChange:H}),ws,y.jsx(K9e,{proOptions:Ri,position:La}),y.jsx(Z9e,{rfId:ee,disableKeyboardA11y:pa})]})})}var zEe=PV(REe);const TEe=e=>e.domNode?.querySelector(".react-flow__edgelabel-renderer");function yq({children:e}){const r=Dt(TEe);return r?Vi.createPortal(e,r):null}function jEe({dimensions:e,lineWidth:r,variant:n,className:o}){return y.jsx("path",{strokeWidth:r,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:dn(["react-flow__background-pattern",n,o])})}function AEe({radius:e,className:r}){return y.jsx("circle",{cx:e,cy:e,r:e,className:dn(["react-flow__background-pattern","dots",r])})}var Qi;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(Qi||(Qi={}));const DEe={[Qi.Dots]:1,[Qi.Lines]:1,[Qi.Cross]:6},MEe=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function vq({id:e,variant:r=Qi.Dots,gap:n=20,size:o,lineWidth:a=1,offset:i=0,color:l,bgColor:s,style:c,className:d,patternClassName:u}){const p=S.useRef(null),{transform:f,patternId:g}=Dt(MEe,jr),v=o||DEe[r],w=r===Qi.Dots,x=r===Qi.Cross,k=Array.isArray(n)?n:[n,n],C=[k[0]*f[2]||1,k[1]*f[2]||1],_=v*f[2],$=Array.isArray(i)?i:[i,i],R=x?[_,_]:C,T=[$[0]*f[2]||1+R[0]/2,$[1]*f[2]||1+R[1]/2],A=`${g}${e||""}`;return y.jsxs("svg",{className:dn(["react-flow__background",d]),style:{...c,...ow,"--xy-background-color-props":s,"--xy-background-pattern-color-props":l},ref:p,"data-testid":"rf__background",children:[y.jsx("pattern",{id:A,x:f[0]%C[0],y:f[1]%C[1],width:C[0],height:C[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${T[0]},-${T[1]})`,children:w?y.jsx(AEe,{radius:_/2,className:u}):y.jsx(jEe,{dimensions:R,lineWidth:a,variant:r,className:u})}),y.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${A})`})]})}vq.displayName="Background";const bq=S.memo(vq);function NEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:y.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function PEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:y.jsx("path",{d:"M0 0h32v4.2H0z"})})}function BEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:y.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function IEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:y.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function OEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:y.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function sw({children:e,className:r,...n}){return y.jsx("button",{type:"button",className:dn(["react-flow__controls-button",r]),...n,children:e})}const LEe=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function xq({style:e,showZoom:r=!0,showFitView:n=!0,showInteractive:o=!0,fitViewOptions:a,onZoomIn:i,onZoomOut:l,onFitView:s,onInteractiveChange:c,className:d,children:u,position:p="bottom-left",orientation:f="vertical","aria-label":g}){const v=vr(),{isInteractive:w,minZoomReached:x,maxZoomReached:k,ariaLabelConfig:C}=Dt(LEe,jr),{zoomIn:_,zoomOut:$,fitView:R}=pf(),T=()=>{_(),i?.()},A=()=>{$(),l?.()},z=()=>{R(a),s?.()},j=()=>{v.setState({nodesDraggable:!w,nodesConnectable:!w,elementsSelectable:!w}),c?.(!w)};return y.jsxs(sd,{className:dn(["react-flow__controls",f==="horizontal"?"horizontal":"vertical",d]),position:p,style:e,"data-testid":"rf__controls","aria-label":g??C["controls.ariaLabel"],children:[r&&y.jsxs(y.Fragment,{children:[y.jsx(sw,{onClick:T,className:"react-flow__controls-zoomin",title:C["controls.zoomIn.ariaLabel"],"aria-label":C["controls.zoomIn.ariaLabel"],disabled:k,children:y.jsx(NEe,{})}),y.jsx(sw,{onClick:A,className:"react-flow__controls-zoomout",title:C["controls.zoomOut.ariaLabel"],"aria-label":C["controls.zoomOut.ariaLabel"],disabled:x,children:y.jsx(PEe,{})})]}),n&&y.jsx(sw,{className:"react-flow__controls-fitview",onClick:z,title:C["controls.fitView.ariaLabel"],"aria-label":C["controls.fitView.ariaLabel"],children:y.jsx(BEe,{})}),o&&y.jsx(sw,{className:"react-flow__controls-interactive",onClick:j,title:C["controls.interactive.ariaLabel"],"aria-label":C["controls.interactive.ariaLabel"],children:w?y.jsx(OEe,{}):y.jsx(IEe,{})}),u]})}xq.displayName="Controls",S.memo(xq);function FEe({id:e,x:r,y:n,width:o,height:a,style:i,color:l,strokeColor:s,strokeWidth:c,className:d,borderRadius:u,shapeRendering:p,selected:f,onClick:g}){const{background:v,backgroundColor:w}=i||{},x=l||v||w;return y.jsx("rect",{className:dn(["react-flow__minimap-node",{selected:f},d]),x:r,y:n,rx:u,ry:u,width:o,height:a,style:{fill:x,stroke:s,strokeWidth:c},shapeRendering:p,onClick:g?k=>g(k,e):void 0})}const VEe=S.memo(FEe),qEe=e=>e.nodes.map(r=>r.id),t9=e=>e instanceof Function?e:()=>e;function HEe({nodeStrokeColor:e,nodeColor:r,nodeClassName:n="",nodeBorderRadius:o=5,nodeStrokeWidth:a,nodeComponent:i=VEe,onClick:l}){const s=Dt(qEe,jr),c=t9(r),d=t9(e),u=t9(n),p=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return y.jsx(y.Fragment,{children:s.map(f=>y.jsx(WEe,{id:f,nodeColorFunc:c,nodeStrokeColorFunc:d,nodeClassNameFunc:u,nodeBorderRadius:o,nodeStrokeWidth:a,NodeComponent:i,onClick:l,shapeRendering:p},f))})}function UEe({id:e,nodeColorFunc:r,nodeStrokeColorFunc:n,nodeClassNameFunc:o,nodeBorderRadius:a,nodeStrokeWidth:i,shapeRendering:l,NodeComponent:s,onClick:c}){const{node:d,x:u,y:p,width:f,height:g}=Dt(v=>{const{internals:w}=v.nodeLookup.get(e),x=w.userNode,{x:k,y:C}=w.positionAbsolute,{width:_,height:$}=_o(x);return{node:x,x:k,y:C,width:_,height:$}},jr);return!d||d.hidden||!AF(d)?null:y.jsx(s,{x:u,y:p,width:f,height:g,style:d.style,selected:!!d.selected,className:o(d),color:r(d),borderRadius:a,strokeColor:n(d),strokeWidth:i,shapeRendering:l,onClick:c,id:d.id})}const WEe=S.memo(UEe);var GEe=S.memo(HEe);const YEe=200,XEe=150,ZEe=e=>!e.hidden,KEe=e=>{const r={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:r,boundingRect:e.nodeLookup.size>0?TF(nf(e.nodeLookup,{filter:ZEe}),r):r,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},QEe="react-flow__minimap-desc";function wq({style:e,className:r,nodeStrokeColor:n,nodeColor:o,nodeClassName:a="",nodeBorderRadius:i=5,nodeStrokeWidth:l,nodeComponent:s,bgColor:c,maskColor:d,maskStrokeColor:u,maskStrokeWidth:p,position:f="bottom-right",onClick:g,onNodeClick:v,pannable:w=!1,zoomable:x=!1,ariaLabel:k,inversePan:C,zoomStep:_=1,offsetScale:$=5}){const R=vr(),T=S.useRef(null),{boundingRect:A,viewBB:z,rfId:j,panZoom:I,translateExtent:P,flowWidth:L,flowHeight:H,ariaLabelConfig:M}=Dt(KEe,jr),V=e?.width??YEe,B=e?.height??XEe,F=A.width/V,q=A.height/B,G=Math.max(F,q),U=G*V,Y=G*B,Z=$*G,O=A.x-(U-A.width)/2-Z,W=A.y-(Y-A.height)/2-Z,K=U+Z*2,Q=Y+Z*2,ae=`${QEe}-${j}`,te=S.useRef(0),re=S.useRef();te.current=G,S.useEffect(()=>{if(T.current&&I)return re.current=b9e({domNode:T.current,panZoom:I,getTransform:()=>R.getState().transform,getViewScale:()=>te.current}),()=>{re.current?.destroy()}},[I]),S.useEffect(()=>{re.current?.update({translateExtent:P,width:L,height:H,inversePan:C,pannable:w,zoomStep:_,zoomable:x})},[w,x,C,_,P,L,H]);const ue=g?pe=>{const[xe,je]=re.current?.pointer(pe)||[0,0];g(pe,{x:xe,y:je})}:void 0,_e=v?S.useCallback((pe,xe)=>{const je=R.getState().nodeLookup.get(xe).internals.userNode;v(pe,je)},[]):void 0,ce=k??M["minimap.ariaLabel"];return y.jsx(sd,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof c=="string"?c:void 0,"--xy-minimap-mask-background-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-stroke-color-props":typeof u=="string"?u:void 0,"--xy-minimap-mask-stroke-width-props":typeof p=="number"?p*G:void 0,"--xy-minimap-node-background-color-props":typeof o=="string"?o:void 0,"--xy-minimap-node-stroke-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-width-props":typeof l=="number"?l:void 0},className:dn(["react-flow__minimap",r]),"data-testid":"rf__minimap",children:y.jsxs("svg",{width:V,height:B,viewBox:`${O} ${W} ${K} ${Q}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":ae,ref:T,onClick:ue,children:[ce&&y.jsx("title",{id:ae,children:ce}),y.jsx(GEe,{onClick:_e,nodeColor:o,nodeStrokeColor:n,nodeBorderRadius:i,nodeClassName:a,nodeStrokeWidth:l,nodeComponent:s}),y.jsx("path",{className:"react-flow__minimap-mask",d:`M${O-Z},${W-Z}h${K+Z*2}v${Q+Z*2}h${-K-Z*2}z + M${z.x},${z.y}h${z.width}v${z.height}h${-z.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}wq.displayName="MiniMap",S.memo(wq);const JEe=e=>r=>e?`${Math.max(1/r.transform[2],1)}`:void 0,eCe={[df.Line]:"right",[df.Handle]:"bottom-right"};function tCe({nodeId:e,position:r,variant:n=df.Handle,className:o,style:a=void 0,children:i,color:l,minWidth:s=10,minHeight:c=10,maxWidth:d=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:p=!1,resizeDirection:f,autoScale:g=!0,shouldResize:v,onResizeStart:w,onResize:x,onResizeEnd:k}){const C=e9(),_=typeof e=="string"?e:C,$=vr(),R=S.useRef(null),T=n===df.Handle,A=Dt(S.useCallback(JEe(T&&g),[T,g]),jr),z=S.useRef(null),j=r??eCe[n];S.useEffect(()=>{if(!(!R.current||!_))return z.current||(z.current=D9e({domNode:R.current,nodeId:_,getStoreItems:()=>{const{nodeLookup:P,transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V,domNode:B}=$.getState();return{nodeLookup:P,transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V,paneDomNode:B}},onChange:(P,L)=>{const{triggerNodeChanges:H,nodeLookup:M,parentLookup:V,nodeOrigin:B}=$.getState(),F=[],q={x:P.x,y:P.y},G=M.get(_);if(G&&G.expandParent&&G.parentId){const U=G.origin??B,Y=P.width??G.measured.width??0,Z=P.height??G.measured.height??0,O={id:G.id,parentId:G.parentId,rect:{width:Y,height:Z,...DF({x:P.x??G.position.x,y:P.y??G.position.y},{width:Y,height:Z},G.parentId,M,U)}},W=q7([O],M,V,B);F.push(...W),q.x=P.x?Math.max(U[0]*Y,P.x):void 0,q.y=P.y?Math.max(U[1]*Z,P.y):void 0}if(q.x!==void 0&&q.y!==void 0){const U={id:_,type:"position",position:{...q}};F.push(U)}if(P.width!==void 0&&P.height!==void 0){const U={id:_,type:"dimensions",resizing:!0,setAttributes:f?f==="horizontal"?"width":"height":!0,dimensions:{width:P.width,height:P.height}};F.push(U)}for(const U of L){const Y={...U,type:"position"};F.push(Y)}H(F)},onEnd:({width:P,height:L})=>{const H={id:_,type:"dimensions",resizing:!1,dimensions:{width:P,height:L}};$.getState().triggerNodeChanges([H])}})),z.current.update({controlPosition:j,boundaries:{minWidth:s,minHeight:c,maxWidth:d,maxHeight:u},keepAspectRatio:p,resizeDirection:f,onResizeStart:w,onResize:x,onResizeEnd:k,shouldResize:v}),()=>{z.current?.destroy()}},[j,s,c,d,u,p,w,x,k,v]);const I=j.split("-");return y.jsx("div",{className:dn(["react-flow__resize-control","nodrag",...I,n,o]),ref:R,style:{...a,scale:A,...l&&{[T?"backgroundColor":"borderColor"]:l}},children:i})}S.memo(tCe);const rCe=e=>e.domNode?.querySelector(".react-flow__renderer");function nCe({children:e}){const r=Dt(rCe);return r?Vi.createPortal(e,r):null}const oCe=(e,r)=>e?.internals.positionAbsolute.x!==r?.internals.positionAbsolute.x||e?.internals.positionAbsolute.y!==r?.internals.positionAbsolute.y||e?.measured.width!==r?.measured.width||e?.measured.height!==r?.measured.height||e?.selected!==r?.selected||e?.internals.z!==r?.internals.z,aCe=(e,r)=>{if(e.size!==r.size)return!1;for(const[n,o]of e)if(oCe(o,r.get(n)))return!1;return!0},iCe=e=>({x:e.transform[0],y:e.transform[1],zoom:e.transform[2],selectedNodesCount:e.nodes.filter(r=>r.selected).length});function r9({nodeId:e,children:r,className:n,style:o,isVisible:a,position:i=Ue.Top,offset:l=10,align:s="center",...c}){const d=e9(),u=S.useCallback($=>(Array.isArray(e)?e:[e||d||""]).reduce((R,T)=>{const A=$.nodeLookup.get(T);return A&&R.set(A.id,A),R},new Map),[e,d]),p=Dt(u,aCe),{x:f,y:g,zoom:v,selectedNodesCount:w}=Dt(iCe,jr);if(!(typeof a=="boolean"?a:p.size===1&&p.values().next().value?.selected&&w===1)||!p.size)return null;const x=nf(p),k=Array.from(p.values()),C=Math.max(...k.map($=>$.internals.z+1)),_={position:"absolute",transform:r9e(x,{x:f,y:g,zoom:v},i,l,s),zIndex:C,...o};return y.jsx(nCe,{children:y.jsx("div",{style:_,className:dn(["react-flow__node-toolbar",n]),...c,"data-id":k.reduce(($,R)=>`${$}${R.id} `,"").trim(),children:r})})}const{getOwnPropertyNames:lCe,getOwnPropertySymbols:sCe}=Object,{hasOwnProperty:cCe}=Object.prototype;function n9(e,r){return function(n,o,a){return e(n,o,a)&&r(n,o,a)}}function cw(e){return function(r,n,o){if(!r||!n||typeof r!="object"||typeof n!="object")return e(r,n,o);const{cache:a}=o,i=a.get(r),l=a.get(n);if(i&&l)return i===n&&l===r;a.set(r,n),a.set(n,r);const s=e(r,n,o);return a.delete(r),a.delete(n),s}}function dCe(e){return e?.[Symbol.toStringTag]}function kq(e){return lCe(e).concat(sCe(e))}const uCe=Object.hasOwn||((e,r)=>cCe.call(e,r));function Ju(e,r){return e===r||!e&&!r&&e!==e&&r!==r}const pCe="__v",hCe="__o",fCe="_owner",{getOwnPropertyDescriptor:_q,keys:Sq}=Object;function mCe(e,r){return e.byteLength===r.byteLength&&dw(new Uint8Array(e),new Uint8Array(r))}function gCe(e,r,n){let o=e.length;if(r.length!==o)return!1;for(;o-- >0;)if(!n.equals(e[o],r[o],o,o,e,r,n))return!1;return!0}function yCe(e,r){return e.byteLength===r.byteLength&&dw(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(r.buffer,r.byteOffset,r.byteLength))}function vCe(e,r){return Ju(e.getTime(),r.getTime())}function bCe(e,r){return e.name===r.name&&e.message===r.message&&e.cause===r.cause&&e.stack===r.stack}function xCe(e,r){return e===r}function Eq(e,r,n){const o=e.size;if(o!==r.size)return!1;if(!o)return!0;const a=new Array(o),i=e.entries();let l,s,c=0;for(;(l=i.next())&&!l.done;){const d=r.entries();let u=!1,p=0;for(;(s=d.next())&&!s.done;){if(a[p]){p++;continue}const f=l.value,g=s.value;if(n.equals(f[0],g[0],c,p,e,r,n)&&n.equals(f[1],g[1],f[0],g[0],e,r,n)){u=a[p]=!0;break}p++}if(!u)return!1;c++}return!0}const wCe=Ju;function kCe(e,r,n){const o=Sq(e);let a=o.length;if(Sq(r).length!==a)return!1;for(;a-- >0;)if(!$q(e,r,n,o[a]))return!1;return!0}function Z1(e,r,n){const o=kq(e);let a=o.length;if(kq(r).length!==a)return!1;let i,l,s;for(;a-- >0;)if(i=o[a],!$q(e,r,n,i)||(l=_q(e,i),s=_q(r,i),(l||s)&&(!l||!s||l.configurable!==s.configurable||l.enumerable!==s.enumerable||l.writable!==s.writable)))return!1;return!0}function _Ce(e,r){return Ju(e.valueOf(),r.valueOf())}function SCe(e,r){return e.source===r.source&&e.flags===r.flags}function Cq(e,r,n){const o=e.size;if(o!==r.size)return!1;if(!o)return!0;const a=new Array(o),i=e.values();let l,s;for(;(l=i.next())&&!l.done;){const c=r.values();let d=!1,u=0;for(;(s=c.next())&&!s.done;){if(!a[u]&&n.equals(l.value,s.value,l.value,s.value,e,r,n)){d=a[u]=!0;break}u++}if(!d)return!1}return!0}function dw(e,r){let n=e.byteLength;if(r.byteLength!==n||e.byteOffset!==r.byteOffset)return!1;for(;n-- >0;)if(e[n]!==r[n])return!1;return!0}function ECe(e,r){return e.hostname===r.hostname&&e.pathname===r.pathname&&e.protocol===r.protocol&&e.port===r.port&&e.hash===r.hash&&e.username===r.username&&e.password===r.password}function $q(e,r,n,o){return(o===fCe||o===hCe||o===pCe)&&(e.$$typeof||r.$$typeof)?!0:uCe(r,o)&&n.equals(e[o],r[o],o,o,e,r,n)}const CCe="[object ArrayBuffer]",$Ce="[object Arguments]",RCe="[object Boolean]",zCe="[object DataView]",TCe="[object Date]",jCe="[object Error]",ACe="[object Map]",DCe="[object Number]",MCe="[object Object]",NCe="[object RegExp]",PCe="[object Set]",BCe="[object String]",ICe={"[object Int8Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Int16Array]":!0,"[object Uint16Array]":!0,"[object Int32Array]":!0,"[object Uint32Array]":!0,"[object Float16Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0,"[object BigInt64Array]":!0,"[object BigUint64Array]":!0},OCe="[object URL]",LCe=Object.prototype.toString;function FCe({areArrayBuffersEqual:e,areArraysEqual:r,areDataViewsEqual:n,areDatesEqual:o,areErrorsEqual:a,areFunctionsEqual:i,areMapsEqual:l,areNumbersEqual:s,areObjectsEqual:c,arePrimitiveWrappersEqual:d,areRegExpsEqual:u,areSetsEqual:p,areTypedArraysEqual:f,areUrlsEqual:g,unknownTagComparators:v}){return function(w,x,k){if(w===x)return!0;if(w==null||x==null)return!1;const C=typeof w;if(C!==typeof x)return!1;if(C!=="object")return C==="number"?s(w,x,k):C==="function"?i(w,x,k):!1;const _=w.constructor;if(_!==x.constructor)return!1;if(_===Object)return c(w,x,k);if(Array.isArray(w))return r(w,x,k);if(_===Date)return o(w,x,k);if(_===RegExp)return u(w,x,k);if(_===Map)return l(w,x,k);if(_===Set)return p(w,x,k);const $=LCe.call(w);if($===TCe)return o(w,x,k);if($===NCe)return u(w,x,k);if($===ACe)return l(w,x,k);if($===PCe)return p(w,x,k);if($===MCe)return typeof w.then!="function"&&typeof x.then!="function"&&c(w,x,k);if($===OCe)return g(w,x,k);if($===jCe)return a(w,x,k);if($===$Ce)return c(w,x,k);if(ICe[$])return f(w,x,k);if($===CCe)return e(w,x,k);if($===zCe)return n(w,x,k);if($===RCe||$===DCe||$===BCe)return d(w,x,k);if(v){let R=v[$];if(!R){const T=dCe(w);T&&(R=v[T])}if(R)return R(w,x,k)}return!1}}function VCe({circular:e,createCustomConfig:r,strict:n}){let o={areArrayBuffersEqual:mCe,areArraysEqual:n?Z1:gCe,areDataViewsEqual:yCe,areDatesEqual:vCe,areErrorsEqual:bCe,areFunctionsEqual:xCe,areMapsEqual:n?n9(Eq,Z1):Eq,areNumbersEqual:wCe,areObjectsEqual:n?Z1:kCe,arePrimitiveWrappersEqual:_Ce,areRegExpsEqual:SCe,areSetsEqual:n?n9(Cq,Z1):Cq,areTypedArraysEqual:n?n9(dw,Z1):dw,areUrlsEqual:ECe,unknownTagComparators:void 0};if(r&&(o=Object.assign({},o,r(o))),e){const a=cw(o.areArraysEqual),i=cw(o.areMapsEqual),l=cw(o.areObjectsEqual),s=cw(o.areSetsEqual);o=Object.assign({},o,{areArraysEqual:a,areMapsEqual:i,areObjectsEqual:l,areSetsEqual:s})}return o}function qCe(e){return function(r,n,o,a,i,l,s){return e(r,n,s)}}function HCe({circular:e,comparator:r,createState:n,equals:o,strict:a}){if(n)return function(l,s){const{cache:c=e?new WeakMap:void 0,meta:d}=n();return r(l,s,{cache:c,equals:o,meta:d,strict:a})};if(e)return function(l,s){return r(l,s,{cache:new WeakMap,equals:o,meta:void 0,strict:a})};const i={cache:void 0,equals:o,meta:void 0,strict:a};return function(l,s){return r(l,s,i)}}const tt=cd();cd({strict:!0}),cd({circular:!0}),cd({circular:!0,strict:!0});const Ir=cd({createInternalComparator:()=>Ju});cd({strict:!0,createInternalComparator:()=>Ju}),cd({circular:!0,createInternalComparator:()=>Ju}),cd({circular:!0,createInternalComparator:()=>Ju,strict:!0});function cd(e={}){const{circular:r=!1,createInternalComparator:n,createState:o,strict:a=!1}=e,i=VCe(e),l=FCe(i),s=n?n(l):qCe(l);return HCe({circular:r,comparator:l,createState:o,equals:s,strict:a})}function UCe(e,r,n){let o=a=>e(a,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function nr(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return UCe(e,r,n);throw Error("Wrong number of arguments")}const WCe=e=>(r,n)=>{if(n===0)return e(r);if(!Number.isInteger(n))throw TypeError(`precision must be an integer: ${n.toString()}`);if(n>15||n<-15)throw RangeError("precision must be between -15 and 15");if(Number.isNaN(r)||!Number.isFinite(r))return e(r);let o=Rq(r,n),a=e(o);return Rq(a,-n)};function Rq(e,r){let[n,o]=e.toString().split("e"),a=(o===void 0?0:Number.parseInt(o,10))+r,i=`${n}e${a.toString()}`;return Number.parseFloat(i)}function GCe(...e){return nr(WCe(Math.ceil),e)}function ti(...e){return nr(YCe,e)}const YCe=(e,{min:r,max:n})=>r!==void 0&&en?n:e;function XCe(...e){return nr(ZCe,e)}const ZCe=(e,r)=>[...e,...r],K1={done:!1,hasNext:!1},KCe=e=>({hasNext:!0,next:e,done:!1});function Jr(e,...r){let n=e,o=r.map(i=>"lazy"in i?QCe(i):void 0),a=0;for(;aJr(a,o),o)}throw Error("Wrong number of arguments")}function e$e(...e){return Tq(t$e,e)}function t$e(e){if(e.length===0)return KCe;let r=new Map;for(let n of e)r.set(n,(r.get(n)??0)+1);return n=>{let o=r.get(n);return o===void 0||o===0?{done:!1,hasNext:!0,next:n}:(r.set(n,o-1),K1)}}function xn(...e){return nr(r$e,e)}const r$e=(e,r)=>e.length>=r,jq={asc:(e,r)=>e>r,desc:(e,r)=>ee(i,a)}function o9(e,r,...n){let o=typeof e=="function"?e:e[0],a=typeof e=="function"?"asc":e[1],{[a]:i}=jq,l=r===void 0?void 0:o9(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 o$e(e){if(Aq(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return Aq(r)&&typeof n=="string"&&n in jq&&o.length===0}const Aq=e=>typeof e=="function"&&e.length===1;function uw(...e){return nr(Object.entries,e)}function ep(...e){return nr(a$e,e,i$e)}const a$e=(e,r)=>e.filter(r),i$e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:K1,Dq=e=>Object.assign(e,{single:!0});function Q1(...e){return nr(l$e,e,Dq(s$e))}const l$e=(e,r)=>e.find(r),s$e=e=>(r,n,o)=>e(r,n,o)?{done:!0,hasNext:!0,next:r}:K1;function hf(...e){return nr(c$e,e,Dq(d$e))}const c$e=([e])=>e,d$e=()=>u$e,u$e=e=>({hasNext:!0,next:e,done:!0});function Mq(...e){return nr(p$e,e,h$e)}const p$e=(e,r)=>e.flatMap(r),h$e=e=>(r,n,o)=>{let a=e(r,n,o);return Array.isArray(a)?{done:!1,hasNext:!0,hasMany:!0,next:a}:{done:!1,hasNext:!0,next:a}};function f$e(...e){return nr(m$e,e)}function m$e(e,r){for(let[n,o]of Object.entries(e))r(o,n,e);return e}function g$e(...e){return nr(y$e,e)}const y$e=(e,r)=>{let n=Object.create(null);for(let o=0;otypeof e=="function";function _$e(e){return e!==null}function Bq(e){return e!=null}function S$e(e){return r=>!e(r)}function ty(e){return e==null}function Iq(e){return typeof e=="number"&&!Number.isNaN(e)}function i9(e){if(typeof e!="object"||!e)return!1;let r=Object.getPrototypeOf(e);return r===null||r===Object.prototype}function Oq(...e){return nr(E$e,e)}function E$e(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||!e||typeof r!="object"||!r)return!1;if(e instanceof Map&&r instanceof Map)return C$e(e,r);if(e instanceof Set&&r instanceof Set)return $$e(e,r);let n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(let o of n){if(!Object.hasOwn(r,o))return!1;let{[o]:a}=e,{[o]:i}=r;if(a!==i||!Object.is(a,i))return!1}return!0}function C$e(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 $$e(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}function pw(e){return typeof e=="string"}function Kn(e){return!!e}function Lq(...e){return nr(R$e,e)}const R$e=(e,r)=>e.join(r);function l9(...e){return nr(Object.keys,e)}function dd(...e){return nr(z$e,e)}const z$e=e=>e.at(-1);function un(...e){return nr(T$e,e,j$e)}const T$e=(e,r)=>e.map(r),j$e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function hw(...e){return nr(A$e,e)}function A$e(e,r){let n={};for(let[o,a]of e.entries()){let[i,l]=r(a,o,e);n[i]=l}return n}function D$e(...e){return nr(M$e,e)}function M$e(e,r){let n={};for(let[o,a]of Object.entries(e))n[o]=r(a,o,e);return n}function Fq(...e){return nr(Vq,e)}function Vq(e,r){let n={...e,...r};for(let o in r){if(!(o in e))continue;let{[o]:a}=e;if(!i9(a))continue;let{[o]:i}=r;i9(i)&&(n[o]=Vq(a,i))}return n}function ud(...e){return nr(N$e,e)}function N$e(e,r){if(!xn(r,1))return{...e};if(!xn(r,2)){let{[r[0]]:o,...a}=e;return a}let n={...e};for(let o of r)delete n[o];return n}function P$e(...e){return nr(B$e,e)}function B$e(e,r){let n={...e};for(let[o,a]of Object.entries(n))r(a,o,e)&&delete n[o];return n}function fw(...e){return nr(I$e,e)}const I$e=e=>e.length===1?e[0]:void 0;function qq(...e){return nr(O$e,e)}const O$e=(e,r)=>{let n=[[],[]];for(let[o,a]of e.entries())r(a,o,e)?n[0].push(a):n[1].push(a);return n};function Hq(...e){return nr(L$e,e)}function L$e(e,r){let n={};for(let o of r)o in e&&(n[o]=e[o]);return n}function ry(...e){return nr(F$e,e)}function F$e(e,r){let n={};for(let[o,a]of Object.entries(e))r(a,o,e)&&(n[o]=a);return n}function rp(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>Uq(n,e,...r):Uq(e,...r)}function Uq(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function V$e(...e){return nr(q$e,e)}function q$e(e,r){let n=[];for(let o=e;oe.reduce(r,n);function U$e(...e){return nr(W$e,e)}function W$e(e){return[...e].reverse()}function G$e(...e){return nr(Y$e,e)}function Y$e(e,r){let n=[...e];return n.sort(r),n}function gw(...e){return n$e(X$e,e)}const X$e=(e,r)=>[...e].sort(r);function Wq(...e){return nr(Z$e,e)}function Z$e(e,r){return r(e),e}function yw(...e){return Tq(K$e,e)}function K$e(){let e=new Set;return r=>e.has(r)?K1:(e.add(r),{done:!1,hasNext:!0,next:r})}let Ji=[],pd=0;const vw=4,Q$e=e=>{let r=[],n={get(){return n.lc||n.listen(()=>{})(),n.value},lc:0,listen(o){return n.lc=r.push(o),()=>{for(let i=pd+vw;i"u")return mRe;var r=gRe(e),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:r[0],top:r[1],right:r[2],gap:Math.max(0,o-n+r[2]-r[0])}},vRe=Kq(),ff="data-scroll-locked",bRe=function(e,r,n,o){var a=e.left,i=e.top,l=e.right,s=e.gap;return n===void 0&&(n="margin"),` + .`.concat(eRe,` { overflow: hidden `).concat(o,`; padding-right: `).concat(s,"px ").concat(o,`; } @@ -88,16 +88,16 @@ function Lge(e,r){for(var n=0;ns)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},Eze=function(e){var r=e.scrollTop,n=e.scrollHeight,o=e.clientHeight;return[r,n,o]},Cze=function(e){var r=e.scrollLeft,n=e.scrollWidth,o=e.clientWidth;return[r,n,o]},tH=function(e,r){return e==="v"?_ze(r):Sze(r)},rH=function(e,r){return e==="v"?Eze(r):Cze(r)},$ze=function(e,r){return e==="h"&&r==="rtl"?-1:1},zze=function(e,r,n,o,a){var i=$ze(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=rH(e,s),v=g[0],w=g[1],x=g[2],k=w-x-i*v;(v||k)&&tH(e,s)&&(p+=k,f+=v);var C=s.parentNode;s=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!c&&s!==document.body||c&&(r.contains(s)||r===s));return(u&&Math.abs(p)<1||!u&&Math.abs(f)<1)&&(d=!0),d},_w=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},nH=function(e){return[e.deltaX,e.deltaY]},oH=function(e){return e&&"current"in e?e.current:e},Rze=function(e,r){return e[0]===r[0]&&e[1]===r[1]},Tze=function(e){return` +`)},Qq=function(){var e=parseInt(document.body.getAttribute(ff)||"0",10);return isFinite(e)?e:0},xRe=function(){S.useEffect(function(){return document.body.setAttribute(ff,(Qq()+1).toString()),function(){var e=Qq()-1;e<=0?document.body.removeAttribute(ff):document.body.setAttribute(ff,e.toString())}},[])},wRe=function(e){var r=e.noRelative,n=e.noImportant,o=e.gapMode,a=o===void 0?"margin":o;xRe();var i=S.useMemo(function(){return yRe(a)},[a]);return S.createElement(vRe,{styles:bRe(i,!r,a,n?"":"!important")})},u9=!1;if(typeof window<"u")try{var kw=Object.defineProperty({},"passive",{get:function(){return u9=!0,!0}});window.addEventListener("test",kw,kw),window.removeEventListener("test",kw,kw)}catch{u9=!1}var mf=u9?{passive:!1}:!1,kRe=function(e){return e.tagName==="TEXTAREA"},Jq=function(e,r){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[r]!=="hidden"&&!(n.overflowY===n.overflowX&&!kRe(e)&&n[r]==="visible")},_Re=function(e){return Jq(e,"overflowY")},SRe=function(e){return Jq(e,"overflowX")},eH=function(e,r){var n=r.ownerDocument,o=r;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var a=tH(e,o);if(a){var i=rH(e,o),l=i[1],s=i[2];if(l>s)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},ERe=function(e){var r=e.scrollTop,n=e.scrollHeight,o=e.clientHeight;return[r,n,o]},CRe=function(e){var r=e.scrollLeft,n=e.scrollWidth,o=e.clientWidth;return[r,n,o]},tH=function(e,r){return e==="v"?_Re(r):SRe(r)},rH=function(e,r){return e==="v"?ERe(r):CRe(r)},$Re=function(e,r){return e==="h"&&r==="rtl"?-1:1},RRe=function(e,r,n,o,a){var i=$Re(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=rH(e,s),v=g[0],w=g[1],x=g[2],k=w-x-i*v;(v||k)&&tH(e,s)&&(p+=k,f+=v);var C=s.parentNode;s=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!c&&s!==document.body||c&&(r.contains(s)||r===s));return(u&&Math.abs(p)<1||!u&&Math.abs(f)<1)&&(d=!0),d},_w=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},nH=function(e){return[e.deltaX,e.deltaY]},oH=function(e){return e&&"current"in e?e.current:e},zRe=function(e,r){return e[0]===r[0]&&e[1]===r[1]},TRe=function(e){return` .block-interactivity-`.concat(e,` {pointer-events: none;} .allow-interactivity-`).concat(e,` {pointer-events: all;} -`)},jze=0,gf=[];function Aze(e){var r=S.useRef([]),n=S.useRef([0,0]),o=S.useRef(),a=S.useState(jze++)[0],i=S.useState(Kq)[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=J$e([e.lockRef.current],(e.shards||[]).map(oH)).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=_w(w),C=n.current,_="deltaX"in w?w.deltaX:C[0]-k[0],$="deltaY"in w?w.deltaY:C[1]-k[1],z,T=w.target,A=Math.abs(_)>Math.abs($)?"h":"v";if("touches"in w&&A==="h"&&T.type==="range")return!1;var R=eH(A,T);if(!R)return!0;if(R?z=A:(z=A==="v"?"h":"v",R=eH(A,T)),!R)return!1;if(!o.current&&"changedTouches"in w&&(_||$)&&(o.current=z),!z)return!0;var j=o.current||z;return zze(j,x,w,j==="h"?_:$)},[]),c=S.useCallback(function(w){var x=w;if(!(!gf.length||gf[gf.length-1]!==i)){var k="deltaY"in x?nH(x):_w(x),C=r.current.filter(function(z){return z.name===x.type&&(z.target===x.target||x.target===z.shadowParent)&&Rze(z.delta,k)})[0];if(C&&C.should){x.cancelable&&x.preventDefault();return}if(!C){var _=(l.current.shards||[]).map(oH).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:Dze(k)};r.current.push(_),setTimeout(function(){r.current=r.current.filter(function($){return $!==_})},1)},[]),u=S.useCallback(function(w){n.current=_w(w),o.current=void 0},[]),p=S.useCallback(function(w){d(w.type,nH(w),w.target,s(w,e.lockRef.current))},[]),f=S.useCallback(function(w){d(w.type,_w(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return gf.push(i),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:f}),document.addEventListener("wheel",c,mf),document.addEventListener("touchmove",c,mf),document.addEventListener("touchstart",u,mf),function(){gf=gf.filter(function(w){return w!==i}),document.removeEventListener("wheel",c,mf),document.removeEventListener("touchmove",c,mf),document.removeEventListener("touchstart",u,mf)}},[]);var g=e.removeScrollBar,v=e.inert;return S.createElement(S.Fragment,null,v?S.createElement(i,{styles:Tze(a)}):null,g?S.createElement(wze,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Dze(e){for(var r=null;e!==null;)e instanceof ShadowRoot&&(r=e.host,e=e.host),e=e.parentNode;return r}const Mze=sze(Zq,Aze);var ny=S.forwardRef(function(e,r){return S.createElement(ww,Yl({},e,{ref:r,sideCar:Mze}))});ny.classNames=ww.classNames;function So(e){return Object.keys(e)}function p9(e){return e&&typeof e=="object"&&!Array.isArray(e)}function h9(e,r){const n={...e},o=r;return p9(e)&&p9(r)&&Object.keys(r).forEach(a=>{p9(o[a])&&a in e?n[a]=h9(n[a],o[a]):n[a]=o[a]}),n}function Nze(e){return e.replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`)}function Pze(e){return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:e.match(/^calc\((.*?)\)$/)?.[1].split("*")[0].trim()}function f9(e){const r=Pze(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 aH(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function iH(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?aH(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?aH(i):i}}return o}return n}const $e=iH("rem",{shouldScale:!0}),lH=iH("em");function yf(e){return Object.keys(e).reduce((r,n)=>(e[n]!==void 0&&(r[n]=e[n]),r),{})}function sH(e){if(typeof e=="number")return!0;if(typeof e=="string"){if(e.startsWith("calc(")||e.startsWith("var(")||e.includes(" ")&&e.trim()!=="")return!0;const r=/^[+-]?[0-9]+(\.[0-9]+)?(px|em|rem|ex|ch|lh|rlh|vw|vh|vmin|vmax|vb|vi|svw|svh|lvw|lvh|dvw|dvh|cm|mm|in|pt|pc|q|cqw|cqh|cqi|cqb|cqmin|cqmax|%)?$/;return e.trim().split(/\s+/).every(n=>r.test(n))}return!1}function Sw(e){return Array.isArray(e)||e===null?!1:typeof e=="object"?e.type!==S.Fragment:!1}function ni(e){const r=S.createContext(null);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>{const n=S.useContext(r);if(n===null)throw new Error(e);return n}]}function oy(e=null){const r=S.createContext(e);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>S.useContext(r)]}function cH(e,r){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(r);return`${e}-${n}`}}function vf(e,r){let n=e;for(;(n=n.parentElement)&&!n.matches(r););return n}function Bze(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 Ize(e,r,n){for(let o=e+1;o{n?.(s);const c=Array.from(vf(s.currentTarget,e)?.querySelectorAll(r)||[]).filter(v=>Oze(s.currentTarget,v,e)),d=c.findIndex(v=>s.currentTarget===v),u=Ize(d,c,o),p=Bze(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 Lze={app:100,modal:200,popover:300,overlay:400,max:9999};function Ew(e){return Lze[e]}const dH=()=>{};function Fze(e,r={active:!0}){return typeof e!="function"||!r.active?r.onKeyDown||dH:n=>{n.key==="Escape"&&(e(n),r.onTrigger?.())}}function dr(e,r="size",n=!0){if(e!==void 0)return sH(e)?n?$e(e):e:`var(--${r}-${e})`}function Gs(e){return dr(e,"mantine-spacing")}function wn(e){return e===void 0?"var(--mantine-radius-default)":dr(e,"mantine-radius")}function Eo(e){return dr(e,"mantine-font-size")}function Vze(e){return dr(e,"mantine-line-height",!1)}function uH(e){if(e)return dr(e,"mantine-shadow",!1)}function kn(e,r){return n=>{e?.(n),r?.(n)}}function qze(e,r){return e in r?f9(r[e]):f9(e)}function pH(e,r){const n=e.map(o=>({value:o,px:qze(o,r)}));return n.sort((o,a)=>o.px-a.px),n}function iy(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function Hze(e,r,n){return n?Array.from(vf(n,r)?.querySelectorAll(e)||[]).findIndex(o=>o===n):null}function hd(e,r,n){return r===void 0&&n===void 0?e:r!==void 0&&n===void 0?Math.max(e,r):Math.min(r===void 0&&n!==void 0?e:Math.max(e,r),n)}function m9(e="mantine-"){return`${e}${Math.random().toString(36).slice(2,11)}`}function Uze(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 bf(e,r){const{delay:n,flushOnUnmount:o,leading:a}=typeof r=="number"?{delay:r,flushOnUnmount:!1,leading:!1}:r,i=Qn(e),l=S.useRef(0),s=S.useMemo(()=>{const c=Object.assign((...d)=>{window.clearTimeout(l.current);const u=c._isFirstCall;c._isFirstCall=!1;function p(){window.clearTimeout(l.current),l.current=0,c._isFirstCall=!0}if(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 Wze=["mousedown","touchstart"];function hH(e,r,n){const o=S.useRef(null),a=r||Wze;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 Gze(e={timeout:2e3}){const[r,n]=S.useState(null),[o,a]=S.useState(!1),[i,l]=S.useState(null),s=c=>{window.clearTimeout(i),l(window.setTimeout(()=>a(!1),e.timeout)),a(c)};return{copy:c=>{"clipboard"in navigator?navigator.clipboard.writeText(c).then(()=>s(!0)).catch(d=>n(d)):n(new Error("useClipboard: navigator.clipboard is not supported"))},reset:()=>{a(!1),n(null),window.clearTimeout(i)},error:r,copied:o}}function Yze(e,r){try{return e.addEventListener("change",r),()=>e.removeEventListener("change",r)}catch{return e.addListener(r),()=>e.removeListener(r)}}function Xze(e,r){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function fH(e,r,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[o,a]=S.useState(n?r:Xze(e));return S.useEffect(()=>{try{const i=window.matchMedia(e);return a(i.matches),Yze(i,l=>a(l.matches))}catch{return}},[e]),o||!1}function mH(e,r){return fH("(prefers-color-scheme: dark)",e==="dark",r)?"dark":"light"}function Zze(e,r,n={leading:!1}){const[o,a]=S.useState(e),i=S.useRef(null),l=S.useRef(!0),s=()=>window.clearTimeout(i.current);S.useEffect(()=>s,[]);const c=S.useCallback(d=>{s(),l.current&&n.leading?a(d):i.current=window.setTimeout(()=>{l.current=!0,a(d)},r),l.current=!1},[n.leading]);return[o,c]}function g9(e,r,n={leading:!1}){const[o,a]=S.useState(e),i=S.useRef(!1),l=S.useRef(null),s=S.useRef(!1),c=S.useCallback(()=>window.clearTimeout(l.current),[]);return S.useEffect(()=>{i.current&&(!s.current&&n.leading?(s.current=!0,a(e)):(c(),l.current=window.setTimeout(()=>{s.current=!1,a(e)},r)))},[e,n.leading,r]),S.useEffect(()=>(i.current=!0,c),[]),[o,c]}const xf=typeof document<"u"?S.useLayoutEffect:S.useEffect;function wf(e,r){const n=S.useRef(!1);S.useEffect(()=>()=>{n.current=!1},[]),S.useEffect(()=>{if(n.current)return e();n.current=!0},r)}function Kze({opened:e,shouldReturnFocus:r=!0}){const n=S.useRef(null),o=()=>{n.current&&"focus"in n.current&&typeof n.current.focus=="function"&&n.current?.focus({preventScroll:!0})};return wf(()=>{let 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 Qze=/input|select|textarea|button|object/,gH="a, input, select, textarea, button, object, [tabindex]";function Jze(e){return e.style.display==="none"}function eRe(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(Jze(r))return!1;r=r.parentNode}return!0}function yH(e){let r=e.getAttribute("tabindex");return r===null&&(r=void 0),parseInt(r,10)}function y9(e){const r=e.nodeName.toLowerCase(),n=!Number.isNaN(yH(e));return(Qze.test(r)&&!e.disabled||e instanceof HTMLAnchorElement&&e.href||n)&&eRe(e)}function vH(e){const r=yH(e);return(Number.isNaN(r)||r>=0)&&y9(e)}function tRe(e){return Array.from(e.querySelectorAll(gH)).filter(vH)}function rRe(e,r){const n=tRe(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 bH(e=!0){const r=S.useRef(null),n=a=>{let i=a.querySelector("[data-autofocus]");if(!i){const l=Array.from(a.querySelectorAll(gH));i=l.find(vH)||l.find(y9)||null,!i&&y9(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&&rRe(r.current,i)};return document.addEventListener("keydown",a),()=>document.removeEventListener("keydown",a)},[e]),o}const nRe=Kr.useId||(()=>{});function oRe(){const e=nRe();return e?`mantine-${e.replace(/:/g,"")}`:""}function oi(e){const r=oRe(),[n,o]=S.useState(r);return xf(()=>{o(m9())},[]),typeof e=="string"?e:typeof window>"u"?r:n}function kf(e,r,n){S.useEffect(()=>(window.addEventListener(e,r,n),()=>window.removeEventListener(e,r,n)),[e,r])}function aRe(e,r="use-local-storage"){try{return JSON.stringify(e)}catch{throw new Error(`@mantine/hooks ${r}: Failed to serialize the value`)}}function iRe(e){try{return e&&JSON.parse(e)}catch{return e}}function lRe(e){return{getItem:r=>{try{return window[e].getItem(r)}catch{return console.warn("use-local-storage: Failed to get value from storage, localStorage is blocked"),null}},setItem:(r,n)=>{try{window[e].setItem(r,n)}catch{console.warn("use-local-storage: Failed to set value to storage, localStorage is blocked")}},removeItem:r=>{try{window[e].removeItem(r)}catch{console.warn("use-local-storage: Failed to remove value from storage, localStorage is blocked")}}}}function xH(e,r){const n=e==="localStorage"?"mantine-local-storage":"mantine-session-storage",{getItem:o,setItem:a,removeItem:i}=lRe(e);return function({key:l,defaultValue:s,getInitialValueInEffect:c=!0,sync:d=!0,deserialize:u=iRe,serialize:p=f=>aRe(f,r)}){const f=S.useCallback(k=>{let C;try{C=typeof window>"u"||!(e in window)||window[e]===null||!!k}catch{C=!0}if(C)return s;const _=o(l);return _!==null?u(_):s},[l,s]),[g,v]=S.useState(f(c)),w=S.useCallback(k=>{k instanceof Function?v(C=>{const _=k(C);return a(l,p(_)),queueMicrotask(()=>{window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:k(C)}}))}),_}):(a(l,p(k)),window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:k}})),v(k))},[l]),x=S.useCallback(()=>{i(l),v(s),window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:s}}))},[l,s]);return kf("storage",k=>{d&&k.storageArea===window[e]&&k.key===l&&v(u(k.newValue??void 0))}),kf(n,k=>{d&&k.detail.key===l&&v(k.detail.value)}),S.useEffect(()=>{s!==void 0&&g===void 0&&w(s)},[s,g,w]),S.useEffect(()=>{const k=f();k!==void 0&&w(k)},[l]),[g===void 0?s:g,w,x]}}function sRe(e){return xH("localStorage","use-local-storage")(e)}function cRe(e){return xH("sessionStorage","use-session-storage")(e)}function v9(e,r){if(typeof e=="function")return e(r);typeof e=="object"&&e!==null&&"current"in e&&(e.current=r)}function wH(...e){const r=new Map;return n=>{if(e.forEach(o=>{const a=v9(o,n);a&&r.set(o,a)}),r.size>0)return()=>{e.forEach(o=>{const a=r.get(o);a&&typeof a=="function"?a():v9(o,null)}),r.clear()}}}function $r(...e){return S.useCallback(wH(...e),e)}function dRe(e){return{x:hd(e.x,0,1),y:hd(e.y,0,1)}}function kH(e,r,n="ltr"){const o=S.useRef(!1),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 T=hd((_-z.left)/z.width,0,1);e({x:n==="ltr"?T:1-T,y:hd(($-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 Ys({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 _H(e,r){return fH("(prefers-reduced-motion: reduce)",e,r)}function uRe(e,r){if(!e||!r)return!1;if(e===r)return!0;if(e.length!==r.length)return!1;for(let n=0;n{r({width:window.innerWidth||0,height:window.innerHeight||0})},[]);return kf("resize",n,SH),kf("orientationchange",n,SH),S.useEffect(n,[]),e}const mRe={" ":"space",ArrowLeft:"arrowleft",ArrowRight:"arrowright",ArrowUp:"arrowup",ArrowDown:"arrowdown",Escape:"escape",Esc:"escape",esc:"escape",Enter:"enter",Tab:"tab",Backspace:"backspace",Delete:"delete",Insert:"insert",Home:"home",End:"end",PageUp:"pageup",PageDown:"pagedown","+":"plus","-":"minus","*":"asterisk","/":"slash"};function Cw(e){const r=e.replace("Key","").toLowerCase();return mRe[e]||r}function gRe(e){const r=e.toLowerCase().split("+").map(i=>i.trim()),n={alt:r.includes("alt"),ctrl:r.includes("ctrl"),meta:r.includes("meta"),mod:r.includes("mod"),shift:r.includes("shift"),plus:r.includes("[plus]")},o=["alt","ctrl","meta","shift","mod"],a=r.find(i=>!o.includes(i));return{...n,key:a==="[plus]"?"+":a}}function yRe(e,r,n){const{alt:o,ctrl:a,meta:i,mod:l,shift:s,key:c}=e,{altKey:d,ctrlKey:u,metaKey:p,shiftKey:f,key:g,code:v}=r;if(o!==d)return!1;if(l){if(!u&&!p)return!1}else if(a!==u||i!==p)return!1;return s!==f?!1:!!(c&&(n?Cw(v)===Cw(c):Cw(g??v)===Cw(c)))}function EH(e,r){return n=>yRe(gRe(e),n,r)}function $w(e){return r=>{const n="nativeEvent"in r?r.nativeEvent:r;e.forEach(([o,a,i={preventDefault:!0,usePhysicalKeys:!1}])=>{EH(o,i.usePhysicalKeys)(n)&&(i.preventDefault&&r.preventDefault(),a(n))})}}function vRe(e,r,n=!1){return e.target instanceof HTMLElement?(n||!e.target.isContentEditable)&&!r.includes(e.target.tagName):!0}function bRe(e,r=["INPUT","TEXTAREA","SELECT"],n=!1){S.useEffect(()=>{const o=a=>{e.forEach(([i,l,s={preventDefault:!0,usePhysicalKeys:!1}])=>{EH(i,s.usePhysicalKeys)(a)&&vRe(a,r,n)&&(s.preventDefault&&a.preventDefault(),l(a))})};return document.documentElement.addEventListener("keydown",o),()=>document.documentElement.removeEventListener("keydown",o)},[e])}function b9(){const[e,r]=S.useState(!1),n=S.useRef(null),o=S.useCallback(()=>{r(!0)},[]),a=S.useCallback(()=>{r(!1)},[]);return{ref:S.useCallback(i=>{n.current&&(n.current.removeEventListener("mouseenter",o),n.current.removeEventListener("mouseleave",a)),i&&(i.addEventListener("mouseenter",o),i.addEventListener("mouseleave",a)),n.current=i},[o,a]),hovered:e}}function xRe(e=!1,r={}){const[n,o]=S.useState(e),a=S.useCallback(()=>{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 wRe(e){return e.currentTarget instanceof HTMLElement&&e.relatedTarget instanceof HTMLElement?e.currentTarget.contains(e.relatedTarget):!1}function kRe({onBlur:e,onFocus:r}={}){const[n,o]=S.useState(!1),a=S.useRef(!1),i=S.useRef(null),l=S.useCallback(u=>{o(u),a.current=u},[]),s=S.useCallback(u=>{a.current||(l(!0),r?.(u))},[r]),c=S.useCallback(u=>{a.current&&!wRe(u)&&(l(!1),e?.(u))},[e]),d=S.useCallback(u=>{u&&(i.current&&(i.current.removeEventListener("focusin",s),i.current.removeEventListener("focusout",c)),u.addEventListener("focusin",s),u.addEventListener("focusout",c),i.current=u)},[s,c]);return S.useEffect(()=>()=>{i.current&&(i.current.removeEventListener("focusin",s),i.current.removeEventListener("focusout",c))},[]),{ref:d,focused:n}}function CH(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 $H(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 _Re(){const[e,r]=S.useState(!1);return S.useEffect(()=>r(!0),[]),e}function zH(e){const[r,n]=S.useState({history:[e],current:0}),o=S.useCallback(c=>n(d=>{const u=[...d.history.slice(0,d.current+1),c];return{history:u,current:u.length-1}}),[]),a=S.useCallback((c=1)=>n(d=>({history:d.history,current:Math.max(0,d.current-c)})),[]),i=S.useCallback((c=1)=>n(d=>({history:d.history,current:Math.min(d.history.length-1,d.current+c)})),[]),l=S.useCallback(()=>{n({history:[e],current:0})},[e]),s=S.useMemo(()=>({back:a,forward:i,reset:l,set:o}),[a,i,l,o]);return[r.history[r.current],s,r]}function SRe(e,r){const n=Qn(e),o=S.useRef(null),a=S.useRef(null),i=S.useRef(!0),l=S.useRef(r),s=S.useRef(-1),c=()=>window.clearTimeout(s.current),d=S.useCallback((...f)=>{n(...f),o.current=f,a.current=f,i.current=!1},[n]),u=S.useCallback(()=>{o.current&&o.current!==a.current?(d(...o.current),s.current=window.setTimeout(u,l.current)):i.current=!0},[d]),p=S.useCallback((...f)=>{i.current?(d(...f),s.current=window.setTimeout(u,l.current)):o.current=f},[d,u]);return S.useEffect(()=>{l.current=r},[r]),[p,c]}function ERe(e,r){return SRe(e,r)[0]}function CRe(){return typeof process<"u"&&process.env?"production":"development"}function RH(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 TH(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]=el(r[o],a):r[o]=a})}),r}function Tw({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||$Re);return zRe(a)}function jw({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 Aw=S.createContext(null);function yd(){const e=S.useContext(Aw);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function RRe(){return yd().cssVariablesResolver}function TRe(){return yd().classNamesPrefix}function np(){return yd().getStyleNonce}function jRe(){return yd().withStaticClasses}function ARe(){return yd().headless}function DRe(){return yd().stylesTransform?.sx}function MRe(){return yd().stylesTransform?.styles}function Dw(){return yd().env||"default"}function NRe(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function PRe(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 BRe(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 IRe(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 x9(e){return NRe(e)?PRe(e):e.startsWith("rgb")?BRe(e):e.startsWith("hsl")?IRe(e):{r:0,g:0,b:0,a:1}}function Mw(e,r){if(e.startsWith("var("))return`color-mix(in srgb, ${e}, black ${r*100}%)`;const{r:n,g:o,b:a,a:i}=x9(e),l=1-r,s=c=>Math.round(c*l);return`rgba(${s(n)}, ${s(o)}, ${s(a)}, ${i})`}function ly(e,r){return typeof e.primaryShade=="number"?e.primaryShade:r==="dark"?e.primaryShade.dark:e.primaryShade.light}function w9(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function ORe(e){const r=e.match(/oklch\((.*?)%\s/);return r?parseFloat(r[1]):null}function LRe(e){if(e.startsWith("oklch("))return(ORe(e)||0)/100;const{r,g:n,b:o}=x9(e),a=r/255,i=n/255,l=o/255,s=w9(a),c=w9(i),d=w9(l);return .2126*s+.7152*c+.0722*d}function sy(e,r=.179){return e.startsWith("var(")?!1:LRe(e)>r}function vd({color:e,theme:r,colorScheme:n}){if(typeof e!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof e}`);if(e==="bright")return{color:e,value:n==="dark"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:sy(n==="dark"?r.white:r.black,r.luminanceThreshold),variable:"--mantine-color-bright"};if(e==="dimmed")return{color:e,value:n==="dark"?r.colors.dark[2]:r.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:sy(n==="dark"?r.colors.dark[2]:r.colors.gray[6],r.luminanceThreshold),variable:"--mantine-color-dimmed"};if(e==="white"||e==="black")return{color:e,value:e==="white"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:sy(e==="white"?r.white:r.black,r.luminanceThreshold),variable:`--mantine-color-${e}`};const[o,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][ly(r,n||"light")];return{color:o,value:s,shade:i,isThemeColor:l,isLight:sy(s,r.luminanceThreshold),variable:a?`--mantine-color-${o}-${i}`:`--mantine-color-${o}-filled`}}return{color:e,value:e,isThemeColor:l,isLight:sy(e,r.luminanceThreshold),shade:i,variable:void 0}}function Ca(e,r){const n=vd({color:e||r.primaryColor,theme:r});return n.variable?`var(${n.variable})`:e}function k9(e,r){const n={from:e?.from||r.defaultGradient.from,to:e?.to||r.defaultGradient.to,deg:e?.deg??r.defaultGradient.deg??0},o=Ca(n.from,r),a=Ca(n.to,r);return`linear-gradient(${n.deg}deg, ${o} 0%, ${a} 100%)`}function Xl(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}=x9(e);return`rgba(${n}, ${o}, ${a}, ${r})`}const _f=Xl,FRe=({color:e,theme:r,variant:n,gradient:o,autoContrast:a})=>{const i=vd({color:e,theme:r}),l=typeof a=="boolean"?a:r.autoContrast;if(n==="none")return{background:"transparent",hover:"transparent",color:"inherit",border:"none"};if(n==="filled"){const s=l&&i.isLight?"var(--mantine-color-black)":"var(--mantine-color-white)";return i.isThemeColor?i.shade===void 0?{background:`var(--mantine-color-${e}-filled)`,hover:`var(--mantine-color-${e}-filled-hover)`,color:s,border:`${$e(1)} solid transparent`}:{background:`var(--mantine-color-${i.color}-${i.shade})`,hover:`var(--mantine-color-${i.color}-${i.shade===9?8:i.shade+1})`,color:s,border:`${$e(1)} solid transparent`}:{background:e,hover:Mw(e,.1),color:s,border:`${$e(1)} solid transparent`}}if(n==="light"){if(i.isThemeColor){if(i.shade===void 0)return{background:`var(--mantine-color-${e}-light)`,hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`};const s=r.colors[i.color][i.shade];return{background:Xl(s,.1),hover:Xl(s,.12),color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${$e(1)} solid transparent`}}return{background:Xl(e,.1),hover:Xl(e,.12),color:e,border:`${$e(1)} solid transparent`}}if(n==="outline")return i.isThemeColor?i.shade===void 0?{background:"transparent",hover:`var(--mantine-color-${e}-outline-hover)`,color:`var(--mantine-color-${e}-outline)`,border:`${$e(1)} solid var(--mantine-color-${e}-outline)`}:{background:"transparent",hover:Xl(r.colors[i.color][i.shade],.05),color:`var(--mantine-color-${i.color}-${i.shade})`,border:`${$e(1)} solid var(--mantine-color-${i.color}-${i.shade})`}:{background:"transparent",hover:Xl(e,.05),color:e,border:`${$e(1)} solid ${e}`};if(n==="subtle"){if(i.isThemeColor){if(i.shade===void 0)return{background:"transparent",hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`};const s=r.colors[i.color][i.shade];return{background:"transparent",hover:Xl(s,.12),color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${$e(1)} solid transparent`}}return{background:"transparent",hover:Xl(e,.12),color:e,border:`${$e(1)} solid transparent`}}return n==="transparent"?i.isThemeColor?i.shade===void 0?{background:"transparent",hover:"transparent",color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${$e(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:e,border:`${$e(1)} solid transparent`}:n==="white"?i.isThemeColor?i.shade===void 0?{background:"var(--mantine-color-white)",hover:Mw(r.white,.01),color:`var(--mantine-color-${e}-filled)`,border:`${$e(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Mw(r.white,.01),color:`var(--mantine-color-${i.color}-${i.shade})`,border:`${$e(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Mw(r.white,.01),color:e,border:`${$e(1)} solid transparent`}:n==="gradient"?{background:k9(o,r),hover:k9(o,r),color:"var(--mantine-color-white)",border:"none"}:n==="default"?{background:"var(--mantine-color-default)",hover:"var(--mantine-color-default-hover)",color:"var(--mantine-color-default-color)",border:`${$e(1)} solid var(--mantine-color-default-border)`}:{}},VRe={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},AH="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",_9={scale:1,fontSmoothing:!0,focusRing:"auto",white:"#fff",black:"#000",colors:VRe,primaryShade:{light:6,dark:8},primaryColor:"blue",variantColorResolver:FRe,autoContrast:!1,luminanceThreshold:.3,fontFamily:AH,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",respectReducedMotion:!1,cursorType:"default",defaultGradient:{from:"blue",to:"cyan",deg:45},defaultRadius:"sm",activeClassName:"mantine-active",focusClassName:"",headings:{fontFamily:AH,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:$e(34),lineHeight:"1.3"},h2:{fontSize:$e(26),lineHeight:"1.35"},h3:{fontSize:$e(22),lineHeight:"1.4"},h4:{fontSize:$e(18),lineHeight:"1.45"},h5:{fontSize:$e(16),lineHeight:"1.5"},h6:{fontSize:$e(14),lineHeight:"1.5"}}},fontSizes:{xs:$e(12),sm:$e(14),md:$e(16),lg:$e(18),xl:$e(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:$e(2),sm:$e(4),md:$e(8),lg:$e(16),xl:$e(32)},spacing:{xs:$e(10),sm:$e(12),md:$e(16),lg:$e(20),xl:$e(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), 0 ${$e(1)} ${$e(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(10)} ${$e(15)} ${$e(-5)}, rgba(0, 0, 0, 0.04) 0 ${$e(7)} ${$e(7)} ${$e(-5)}`,md:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(20)} ${$e(25)} ${$e(-5)}, rgba(0, 0, 0, 0.04) 0 ${$e(10)} ${$e(10)} ${$e(-5)}`,lg:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(28)} ${$e(23)} ${$e(-7)}, rgba(0, 0, 0, 0.04) 0 ${$e(12)} ${$e(12)} ${$e(-7)}`,xl:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(36)} ${$e(28)} ${$e(-7)}, rgba(0, 0, 0, 0.04) 0 ${$e(17)} ${$e(17)} ${$e(-7)}`},other:{},components:{}};function DH(e){return e==="auto"||e==="dark"||e==="light"}function qRe({key:e="mantine-color-scheme-value"}={}){let r;return{get:n=>{if(typeof window>"u")return n;try{const o=window.localStorage.getItem(e);return DH(o)?o:n}catch{return n}},set:n=>{try{window.localStorage.setItem(e,n)}catch(o){console.warn("[@mantine/core] Local storage color scheme manager was unable to save color scheme.",o)}},subscribe:n=>{r=o=>{o.storageArea===window.localStorage&&o.key===e&&DH(o.newValue)&&n(o.newValue)},window.addEventListener("storage",r)},unsubscribe:()=>{window.removeEventListener("storage",r)},clear:()=>{window.localStorage.removeItem(e)}}}const HRe="[@mantine/core] MantineProvider: Invalid theme.primaryColor, it accepts only key of theme.colors, learn more – https://mantine.dev/theming/colors/#primary-color",MH="[@mantine/core] MantineProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }";function S9(e){return e<0||e>9?!1:parseInt(e.toString(),10)===e}function NH(e){if(!(e.primaryColor in e.colors))throw new Error(HRe);if(typeof e.primaryShade=="object"&&(!S9(e.primaryShade.dark)||!S9(e.primaryShade.light)))throw new Error(MH);if(typeof e.primaryShade=="number"&&!S9(e.primaryShade))throw new Error(MH)}function URe(e,r){if(!r)return NH(e),e;const n=h9(e,r);return r.fontFamily&&!r.headings?.fontFamily&&(n.headings.fontFamily=r.fontFamily),NH(n),n}const E9=S.createContext(null),WRe=()=>S.useContext(E9)||_9;function lo(){const e=S.useContext(E9);if(!e)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return e}function PH({theme:e,children:r,inherit:n=!0}){const o=WRe(),a=S.useMemo(()=>URe(n?o:_9,e),[e,o,n]);return y.jsx(E9.Provider,{value:a,children:r})}PH.displayName="@mantine/core/MantineThemeProvider";function GRe(){const e=lo(),r=np(),n=So(e.breakpoints).reduce((o,a)=>{const i=e.breakpoints[a].includes("px"),l=f9(e.breakpoints[a]),s=i?`${l-.1}px`:lH(l-.1),c=i?`${l}px`:lH(l);return`${o}@media (max-width: ${s}) {.mantine-visible-from-${a} {display: none !important;}}@media (min-width: ${c}) {.mantine-hidden-from-${a} {display: none !important;}}`},"");return y.jsx("style",{"data-mantine-styles":"classes",nonce:r?.(),dangerouslySetInnerHTML:{__html:n}})}function C9(e){return Object.entries(e).map(([r,n])=>`${r}: ${n};`).join("")}function BH(e,r){const n=r?[r]:[":root",":host"],o=C9(e.variables),a=o?`${n.join(", ")}{${o}}`:"",i=C9(e.dark),l=C9(e.light),s=u=>n.map(p=>p===":host"?`${p}([data-mantine-color-scheme="${u}"])`:`${p}[data-mantine-color-scheme="${u}"]`).join(", "),c=i?`${s("dark")}{${i}}`:"",d=l?`${s("light")}{${l}}`:"";return`${a} +`)},jRe=0,gf=[];function ARe(e){var r=S.useRef([]),n=S.useRef([0,0]),o=S.useRef(),a=S.useState(jRe++)[0],i=S.useState(Kq)[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=J$e([e.lockRef.current],(e.shards||[]).map(oH)).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=_w(w),C=n.current,_="deltaX"in w?w.deltaX:C[0]-k[0],$="deltaY"in w?w.deltaY:C[1]-k[1],R,T=w.target,A=Math.abs(_)>Math.abs($)?"h":"v";if("touches"in w&&A==="h"&&T.type==="range")return!1;var z=eH(A,T);if(!z)return!0;if(z?R=A:(R=A==="v"?"h":"v",z=eH(A,T)),!z)return!1;if(!o.current&&"changedTouches"in w&&(_||$)&&(o.current=R),!R)return!0;var j=o.current||R;return RRe(j,x,w,j==="h"?_:$)},[]),c=S.useCallback(function(w){var x=w;if(!(!gf.length||gf[gf.length-1]!==i)){var k="deltaY"in x?nH(x):_w(x),C=r.current.filter(function(R){return R.name===x.type&&(R.target===x.target||x.target===R.shadowParent)&&zRe(R.delta,k)})[0];if(C&&C.should){x.cancelable&&x.preventDefault();return}if(!C){var _=(l.current.shards||[]).map(oH).filter(Boolean).filter(function(R){return R.contains(x.target)}),$=_.length>0?s(x,_[0]):!l.current.noIsolation;$&&x.cancelable&&x.preventDefault()}}},[]),d=S.useCallback(function(w,x,k,C){var _={name:w,delta:x,target:k,should:C,shadowParent:DRe(k)};r.current.push(_),setTimeout(function(){r.current=r.current.filter(function($){return $!==_})},1)},[]),u=S.useCallback(function(w){n.current=_w(w),o.current=void 0},[]),p=S.useCallback(function(w){d(w.type,nH(w),w.target,s(w,e.lockRef.current))},[]),f=S.useCallback(function(w){d(w.type,_w(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return gf.push(i),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:f}),document.addEventListener("wheel",c,mf),document.addEventListener("touchmove",c,mf),document.addEventListener("touchstart",u,mf),function(){gf=gf.filter(function(w){return w!==i}),document.removeEventListener("wheel",c,mf),document.removeEventListener("touchmove",c,mf),document.removeEventListener("touchstart",u,mf)}},[]);var g=e.removeScrollBar,v=e.inert;return S.createElement(S.Fragment,null,v?S.createElement(i,{styles:TRe(a)}):null,g?S.createElement(wRe,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function DRe(e){for(var r=null;e!==null;)e instanceof ShadowRoot&&(r=e.host,e=e.host),e=e.parentNode;return r}const MRe=sRe(Zq,ARe);var ny=S.forwardRef(function(e,r){return S.createElement(ww,Yl({},e,{ref:r,sideCar:MRe}))});ny.classNames=ww.classNames;function So(e){return Object.keys(e)}function p9(e){return e&&typeof e=="object"&&!Array.isArray(e)}function h9(e,r){const n={...e},o=r;return p9(e)&&p9(r)&&Object.keys(r).forEach(a=>{p9(o[a])&&a in e?n[a]=h9(n[a],o[a]):n[a]=o[a]}),n}function NRe(e){return e.replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`)}function PRe(e){return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:e.match(/^calc\((.*?)\)$/)?.[1].split("*")[0].trim()}function f9(e){const r=PRe(e);return typeof r=="number"?r:typeof r=="string"?r.includes("calc")||r.includes("var")?r:r.includes("px")?Number(r.replace("px","")):r.includes("rem")?Number(r.replace("rem",""))*16:r.includes("em")?Number(r.replace("em",""))*16:Number(r):NaN}function aH(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function iH(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?aH(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?aH(i):i}}return o}return n}const $e=iH("rem",{shouldScale:!0}),lH=iH("em");function yf(e){return Object.keys(e).reduce((r,n)=>(e[n]!==void 0&&(r[n]=e[n]),r),{})}function sH(e){if(typeof e=="number")return!0;if(typeof e=="string"){if(e.startsWith("calc(")||e.startsWith("var(")||e.includes(" ")&&e.trim()!=="")return!0;const r=/^[+-]?[0-9]+(\.[0-9]+)?(px|em|rem|ex|ch|lh|rlh|vw|vh|vmin|vmax|vb|vi|svw|svh|lvw|lvh|dvw|dvh|cm|mm|in|pt|pc|q|cqw|cqh|cqi|cqb|cqmin|cqmax|%)?$/;return e.trim().split(/\s+/).every(n=>r.test(n))}return!1}function Sw(e){return Array.isArray(e)||e===null?!1:typeof e=="object"?e.type!==S.Fragment:!1}function ni(e){const r=S.createContext(null);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>{const n=S.useContext(r);if(n===null)throw new Error(e);return n}]}function oy(e=null){const r=S.createContext(e);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>S.useContext(r)]}function cH(e,r){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(r);return`${e}-${n}`}}function vf(e,r){let n=e;for(;(n=n.parentElement)&&!n.matches(r););return n}function BRe(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].disabled)return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].disabled)return o}return e}function IRe(e,r,n){for(let o=e+1;o{n?.(s);const c=Array.from(vf(s.currentTarget,e)?.querySelectorAll(r)||[]).filter(v=>ORe(s.currentTarget,v,e)),d=c.findIndex(v=>s.currentTarget===v),u=IRe(d,c,o),p=BRe(d,c,o),f=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 LRe={app:100,modal:200,popover:300,overlay:400,max:9999};function Ew(e){return LRe[e]}const dH=()=>{};function FRe(e,r={active:!0}){return typeof e!="function"||!r.active?r.onKeyDown||dH:n=>{n.key==="Escape"&&(e(n),r.onTrigger?.())}}function dr(e,r="size",n=!0){if(e!==void 0)return sH(e)?n?$e(e):e:`var(--${r}-${e})`}function Gs(e){return dr(e,"mantine-spacing")}function wn(e){return e===void 0?"var(--mantine-radius-default)":dr(e,"mantine-radius")}function Eo(e){return dr(e,"mantine-font-size")}function VRe(e){return dr(e,"mantine-line-height",!1)}function uH(e){if(e)return dr(e,"mantine-shadow",!1)}function kn(e,r){return n=>{e?.(n),r?.(n)}}function qRe(e,r){return e in r?f9(r[e]):f9(e)}function pH(e,r){const n=e.map(o=>({value:o,px:qRe(o,r)}));return n.sort((o,a)=>o.px-a.px),n}function iy(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function HRe(e,r,n){return n?Array.from(vf(n,r)?.querySelectorAll(e)||[]).findIndex(o=>o===n):null}function hd(e,r,n){return r===void 0&&n===void 0?e:r!==void 0&&n===void 0?Math.max(e,r):Math.min(r===void 0&&n!==void 0?e:Math.max(e,r),n)}function m9(e="mantine-"){return`${e}${Math.random().toString(36).slice(2,11)}`}function URe(e,r){if(e===r||Number.isNaN(e)&&Number.isNaN(r))return!0;if(!(e instanceof Object)||!(r instanceof Object))return!1;const n=Object.keys(e),{length:o}=n;if(o!==Object.keys(r).length)return!1;for(let a=0;a{r.current=e}),S.useMemo(()=>((...n)=>r.current?.(...n)),[])}function bf(e,r){const{delay:n,flushOnUnmount:o,leading:a}=typeof r=="number"?{delay:r,flushOnUnmount:!1,leading:!1}:r,i=Qn(e),l=S.useRef(0),s=S.useMemo(()=>{const c=Object.assign((...d)=>{window.clearTimeout(l.current);const u=c._isFirstCall;c._isFirstCall=!1;function p(){window.clearTimeout(l.current),l.current=0,c._isFirstCall=!0}if(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 WRe=["mousedown","touchstart"];function hH(e,r,n){const o=S.useRef(null),a=r||WRe;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 GRe(e={timeout:2e3}){const[r,n]=S.useState(null),[o,a]=S.useState(!1),[i,l]=S.useState(null),s=c=>{window.clearTimeout(i),l(window.setTimeout(()=>a(!1),e.timeout)),a(c)};return{copy:c=>{"clipboard"in navigator?navigator.clipboard.writeText(c).then(()=>s(!0)).catch(d=>n(d)):n(new Error("useClipboard: navigator.clipboard is not supported"))},reset:()=>{a(!1),n(null),window.clearTimeout(i)},error:r,copied:o}}function YRe(e,r){try{return e.addEventListener("change",r),()=>e.removeEventListener("change",r)}catch{return e.addListener(r),()=>e.removeListener(r)}}function XRe(e,r){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function fH(e,r,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[o,a]=S.useState(n?r:XRe(e));return S.useEffect(()=>{try{const i=window.matchMedia(e);return a(i.matches),YRe(i,l=>a(l.matches))}catch{return}},[e]),o||!1}function mH(e,r){return fH("(prefers-color-scheme: dark)",e==="dark",r)?"dark":"light"}function ZRe(e,r,n={leading:!1}){const[o,a]=S.useState(e),i=S.useRef(null),l=S.useRef(!0),s=()=>window.clearTimeout(i.current);S.useEffect(()=>s,[]);const c=S.useCallback(d=>{s(),l.current&&n.leading?a(d):i.current=window.setTimeout(()=>{l.current=!0,a(d)},r),l.current=!1},[n.leading]);return[o,c]}function g9(e,r,n={leading:!1}){const[o,a]=S.useState(e),i=S.useRef(!1),l=S.useRef(null),s=S.useRef(!1),c=S.useCallback(()=>window.clearTimeout(l.current),[]);return S.useEffect(()=>{i.current&&(!s.current&&n.leading?(s.current=!0,a(e)):(c(),l.current=window.setTimeout(()=>{s.current=!1,a(e)},r)))},[e,n.leading,r]),S.useEffect(()=>(i.current=!0,c),[]),[o,c]}const xf=typeof document<"u"?S.useLayoutEffect:S.useEffect;function wf(e,r){const n=S.useRef(!1);S.useEffect(()=>()=>{n.current=!1},[]),S.useEffect(()=>{if(n.current)return e();n.current=!0},r)}function KRe({opened:e,shouldReturnFocus:r=!0}){const n=S.useRef(null),o=()=>{n.current&&"focus"in n.current&&typeof n.current.focus=="function"&&n.current?.focus({preventScroll:!0})};return wf(()=>{let 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 QRe=/input|select|textarea|button|object/,gH="a, input, select, textarea, button, object, [tabindex]";function JRe(e){return e.style.display==="none"}function eze(e){if(e.getAttribute("aria-hidden")||e.getAttribute("hidden")||e.getAttribute("type")==="hidden")return!1;let r=e;for(;r&&!(r===document.body||r.nodeType===11);){if(JRe(r))return!1;r=r.parentNode}return!0}function yH(e){let r=e.getAttribute("tabindex");return r===null&&(r=void 0),parseInt(r,10)}function y9(e){const r=e.nodeName.toLowerCase(),n=!Number.isNaN(yH(e));return(QRe.test(r)&&!e.disabled||e instanceof HTMLAnchorElement&&e.href||n)&&eze(e)}function vH(e){const r=yH(e);return(Number.isNaN(r)||r>=0)&&y9(e)}function tze(e){return Array.from(e.querySelectorAll(gH)).filter(vH)}function rze(e,r){const n=tze(e);if(!n.length){r.preventDefault();return}const o=n[r.shiftKey?0:n.length-1],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 bH(e=!0){const r=S.useRef(null),n=a=>{let i=a.querySelector("[data-autofocus]");if(!i){const l=Array.from(a.querySelectorAll(gH));i=l.find(vH)||l.find(y9)||null,!i&&y9(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&&rze(r.current,i)};return document.addEventListener("keydown",a),()=>document.removeEventListener("keydown",a)},[e]),o}const nze=Kr.useId||(()=>{});function oze(){const e=nze();return e?`mantine-${e.replace(/:/g,"")}`:""}function oi(e){const r=oze(),[n,o]=S.useState(r);return xf(()=>{o(m9())},[]),typeof e=="string"?e:typeof window>"u"?r:n}function kf(e,r,n){S.useEffect(()=>(window.addEventListener(e,r,n),()=>window.removeEventListener(e,r,n)),[e,r])}function aze(e,r="use-local-storage"){try{return JSON.stringify(e)}catch{throw new Error(`@mantine/hooks ${r}: Failed to serialize the value`)}}function ize(e){try{return e&&JSON.parse(e)}catch{return e}}function lze(e){return{getItem:r=>{try{return window[e].getItem(r)}catch{return console.warn("use-local-storage: Failed to get value from storage, localStorage is blocked"),null}},setItem:(r,n)=>{try{window[e].setItem(r,n)}catch{console.warn("use-local-storage: Failed to set value to storage, localStorage is blocked")}},removeItem:r=>{try{window[e].removeItem(r)}catch{console.warn("use-local-storage: Failed to remove value from storage, localStorage is blocked")}}}}function xH(e,r){const n=e==="localStorage"?"mantine-local-storage":"mantine-session-storage",{getItem:o,setItem:a,removeItem:i}=lze(e);return function({key:l,defaultValue:s,getInitialValueInEffect:c=!0,sync:d=!0,deserialize:u=ize,serialize:p=f=>aze(f,r)}){const f=S.useCallback(k=>{let C;try{C=typeof window>"u"||!(e in window)||window[e]===null||!!k}catch{C=!0}if(C)return s;const _=o(l);return _!==null?u(_):s},[l,s]),[g,v]=S.useState(f(c)),w=S.useCallback(k=>{k instanceof Function?v(C=>{const _=k(C);return a(l,p(_)),queueMicrotask(()=>{window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:k(C)}}))}),_}):(a(l,p(k)),window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:k}})),v(k))},[l]),x=S.useCallback(()=>{i(l),v(s),window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:s}}))},[l,s]);return kf("storage",k=>{d&&k.storageArea===window[e]&&k.key===l&&v(u(k.newValue??void 0))}),kf(n,k=>{d&&k.detail.key===l&&v(k.detail.value)}),S.useEffect(()=>{s!==void 0&&g===void 0&&w(s)},[s,g,w]),S.useEffect(()=>{const k=f();k!==void 0&&w(k)},[l]),[g===void 0?s:g,w,x]}}function sze(e){return xH("localStorage","use-local-storage")(e)}function cze(e){return xH("sessionStorage","use-session-storage")(e)}function v9(e,r){if(typeof e=="function")return e(r);typeof e=="object"&&e!==null&&"current"in e&&(e.current=r)}function wH(...e){const r=new Map;return n=>{if(e.forEach(o=>{const a=v9(o,n);a&&r.set(o,a)}),r.size>0)return()=>{e.forEach(o=>{const a=r.get(o);a&&typeof a=="function"?a():v9(o,null)}),r.clear()}}}function $r(...e){return S.useCallback(wH(...e),e)}function dze(e){return{x:hd(e.x,0,1),y:hd(e.y,0,1)}}function kH(e,r,n="ltr"){const o=S.useRef(!1),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 R=d.getBoundingClientRect();if(R.width&&R.height){const T=hd((_-R.left)/R.width,0,1);e({x:n==="ltr"?T:1-T,y:hd(($-R.top)/R.height,0,1)})}}})},p=()=>{document.addEventListener("mousemove",x),document.addEventListener("mouseup",v),document.addEventListener("touchmove",C,{passive:!1}),document.addEventListener("touchend",v)},f=()=>{document.removeEventListener("mousemove",x),document.removeEventListener("mouseup",v),document.removeEventListener("touchmove",C),document.removeEventListener("touchend",v)},g=()=>{!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 Ys({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 _H(e,r){return fH("(prefers-reduced-motion: reduce)",e,r)}function uze(e,r){if(!e||!r)return!1;if(e===r)return!0;if(e.length!==r.length)return!1;for(let n=0;n{r({width:window.innerWidth||0,height:window.innerHeight||0})},[]);return kf("resize",n,SH),kf("orientationchange",n,SH),S.useEffect(n,[]),e}const mze={" ":"space",ArrowLeft:"arrowleft",ArrowRight:"arrowright",ArrowUp:"arrowup",ArrowDown:"arrowdown",Escape:"escape",Esc:"escape",esc:"escape",Enter:"enter",Tab:"tab",Backspace:"backspace",Delete:"delete",Insert:"insert",Home:"home",End:"end",PageUp:"pageup",PageDown:"pagedown","+":"plus","-":"minus","*":"asterisk","/":"slash"};function Cw(e){const r=e.replace("Key","").toLowerCase();return mze[e]||r}function gze(e){const r=e.toLowerCase().split("+").map(i=>i.trim()),n={alt:r.includes("alt"),ctrl:r.includes("ctrl"),meta:r.includes("meta"),mod:r.includes("mod"),shift:r.includes("shift"),plus:r.includes("[plus]")},o=["alt","ctrl","meta","shift","mod"],a=r.find(i=>!o.includes(i));return{...n,key:a==="[plus]"?"+":a}}function yze(e,r,n){const{alt:o,ctrl:a,meta:i,mod:l,shift:s,key:c}=e,{altKey:d,ctrlKey:u,metaKey:p,shiftKey:f,key:g,code:v}=r;if(o!==d)return!1;if(l){if(!u&&!p)return!1}else if(a!==u||i!==p)return!1;return s!==f?!1:!!(c&&(n?Cw(v)===Cw(c):Cw(g??v)===Cw(c)))}function EH(e,r){return n=>yze(gze(e),n,r)}function $w(e){return r=>{const n="nativeEvent"in r?r.nativeEvent:r;e.forEach(([o,a,i={preventDefault:!0,usePhysicalKeys:!1}])=>{EH(o,i.usePhysicalKeys)(n)&&(i.preventDefault&&r.preventDefault(),a(n))})}}function vze(e,r,n=!1){return e.target instanceof HTMLElement?(n||!e.target.isContentEditable)&&!r.includes(e.target.tagName):!0}function bze(e,r=["INPUT","TEXTAREA","SELECT"],n=!1){S.useEffect(()=>{const o=a=>{e.forEach(([i,l,s={preventDefault:!0,usePhysicalKeys:!1}])=>{EH(i,s.usePhysicalKeys)(a)&&vze(a,r,n)&&(s.preventDefault&&a.preventDefault(),l(a))})};return document.documentElement.addEventListener("keydown",o),()=>document.documentElement.removeEventListener("keydown",o)},[e])}function b9(){const[e,r]=S.useState(!1),n=S.useRef(null),o=S.useCallback(()=>{r(!0)},[]),a=S.useCallback(()=>{r(!1)},[]);return{ref:S.useCallback(i=>{n.current&&(n.current.removeEventListener("mouseenter",o),n.current.removeEventListener("mouseleave",a)),i&&(i.addEventListener("mouseenter",o),i.addEventListener("mouseleave",a)),n.current=i},[o,a]),hovered:e}}function xze(e=!1,r={}){const[n,o]=S.useState(e),a=S.useCallback(()=>{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 wze(e){return e.currentTarget instanceof HTMLElement&&e.relatedTarget instanceof HTMLElement?e.currentTarget.contains(e.relatedTarget):!1}function kze({onBlur:e,onFocus:r}={}){const[n,o]=S.useState(!1),a=S.useRef(!1),i=S.useRef(null),l=S.useCallback(u=>{o(u),a.current=u},[]),s=S.useCallback(u=>{a.current||(l(!0),r?.(u))},[r]),c=S.useCallback(u=>{a.current&&!wze(u)&&(l(!1),e?.(u))},[e]),d=S.useCallback(u=>{u&&(i.current&&(i.current.removeEventListener("focusin",s),i.current.removeEventListener("focusout",c)),u.addEventListener("focusin",s),u.addEventListener("focusout",c),i.current=u)},[s,c]);return S.useEffect(()=>()=>{i.current&&(i.current.removeEventListener("focusin",s),i.current.removeEventListener("focusout",c))},[]),{ref:d,focused:n}}function CH(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 $H(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 _ze(){const[e,r]=S.useState(!1);return S.useEffect(()=>r(!0),[]),e}function RH(e){const[r,n]=S.useState({history:[e],current:0}),o=S.useCallback(c=>n(d=>{const u=[...d.history.slice(0,d.current+1),c];return{history:u,current:u.length-1}}),[]),a=S.useCallback((c=1)=>n(d=>({history:d.history,current:Math.max(0,d.current-c)})),[]),i=S.useCallback((c=1)=>n(d=>({history:d.history,current:Math.min(d.history.length-1,d.current+c)})),[]),l=S.useCallback(()=>{n({history:[e],current:0})},[e]),s=S.useMemo(()=>({back:a,forward:i,reset:l,set:o}),[a,i,l,o]);return[r.history[r.current],s,r]}function Sze(e,r){const n=Qn(e),o=S.useRef(null),a=S.useRef(null),i=S.useRef(!0),l=S.useRef(r),s=S.useRef(-1),c=()=>window.clearTimeout(s.current),d=S.useCallback((...f)=>{n(...f),o.current=f,a.current=f,i.current=!1},[n]),u=S.useCallback(()=>{o.current&&o.current!==a.current?(d(...o.current),s.current=window.setTimeout(u,l.current)):i.current=!0},[d]),p=S.useCallback((...f)=>{i.current?(d(...f),s.current=window.setTimeout(u,l.current)):o.current=f},[d,u]);return S.useEffect(()=>{l.current=r},[r]),[p,c]}function Eze(e,r){return Sze(e,r)[0]}function Cze(){return typeof process<"u"&&process.env?"production":"development"}function zH(e){const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const a=e(...n);return r.set(o,a),a}}function TH(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]=el(r[o],a):r[o]=a})}),r}function Tw({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||$ze);return Rze(a)}function jw({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 Aw=S.createContext(null);function yd(){const e=S.useContext(Aw);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function zze(){return yd().cssVariablesResolver}function Tze(){return yd().classNamesPrefix}function np(){return yd().getStyleNonce}function jze(){return yd().withStaticClasses}function Aze(){return yd().headless}function Dze(){return yd().stylesTransform?.sx}function Mze(){return yd().stylesTransform?.styles}function Dw(){return yd().env||"default"}function Nze(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function Pze(e){let r=e.replace("#","");if(r.length===3){const l=r.split("");r=[l[0],l[0],l[1],l[1],l[2],l[2]].join("")}if(r.length===8){const l=parseInt(r.slice(6,8),16)/255;return{r:parseInt(r.slice(0,2),16),g:parseInt(r.slice(2,4),16),b:parseInt(r.slice(4,6),16),a:l}}const n=parseInt(r,16),o=n>>16&255,a=n>>8&255,i=n&255;return{r:o,g:a,b:i,a:1}}function Bze(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 Ize(e){const r=/^hsla?\(\s*(\d+)\s*,\s*(\d+%)\s*,\s*(\d+%)\s*(,\s*(0?\.\d+|\d+(\.\d+)?))?\s*\)$/i,n=e.match(r);if(!n)return{r:0,g:0,b:0,a:1};const o=parseInt(n[1],10),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 x9(e){return Nze(e)?Pze(e):e.startsWith("rgb")?Bze(e):e.startsWith("hsl")?Ize(e):{r:0,g:0,b:0,a:1}}function Mw(e,r){if(e.startsWith("var("))return`color-mix(in srgb, ${e}, black ${r*100}%)`;const{r:n,g:o,b:a,a:i}=x9(e),l=1-r,s=c=>Math.round(c*l);return`rgba(${s(n)}, ${s(o)}, ${s(a)}, ${i})`}function ly(e,r){return typeof e.primaryShade=="number"?e.primaryShade:r==="dark"?e.primaryShade.dark:e.primaryShade.light}function w9(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function Oze(e){const r=e.match(/oklch\((.*?)%\s/);return r?parseFloat(r[1]):null}function Lze(e){if(e.startsWith("oklch("))return(Oze(e)||0)/100;const{r,g:n,b:o}=x9(e),a=r/255,i=n/255,l=o/255,s=w9(a),c=w9(i),d=w9(l);return .2126*s+.7152*c+.0722*d}function sy(e,r=.179){return e.startsWith("var(")?!1:Lze(e)>r}function vd({color:e,theme:r,colorScheme:n}){if(typeof e!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof e}`);if(e==="bright")return{color:e,value:n==="dark"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:sy(n==="dark"?r.white:r.black,r.luminanceThreshold),variable:"--mantine-color-bright"};if(e==="dimmed")return{color:e,value:n==="dark"?r.colors.dark[2]:r.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:sy(n==="dark"?r.colors.dark[2]:r.colors.gray[6],r.luminanceThreshold),variable:"--mantine-color-dimmed"};if(e==="white"||e==="black")return{color:e,value:e==="white"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:sy(e==="white"?r.white:r.black,r.luminanceThreshold),variable:`--mantine-color-${e}`};const[o,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][ly(r,n||"light")];return{color:o,value:s,shade:i,isThemeColor:l,isLight:sy(s,r.luminanceThreshold),variable:a?`--mantine-color-${o}-${i}`:`--mantine-color-${o}-filled`}}return{color:e,value:e,isThemeColor:l,isLight:sy(e,r.luminanceThreshold),shade:i,variable:void 0}}function Ca(e,r){const n=vd({color:e||r.primaryColor,theme:r});return n.variable?`var(${n.variable})`:e}function k9(e,r){const n={from:e?.from||r.defaultGradient.from,to:e?.to||r.defaultGradient.to,deg:e?.deg??r.defaultGradient.deg??0},o=Ca(n.from,r),a=Ca(n.to,r);return`linear-gradient(${n.deg}deg, ${o} 0%, ${a} 100%)`}function Xl(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}=x9(e);return`rgba(${n}, ${o}, ${a}, ${r})`}const _f=Xl,Fze=({color:e,theme:r,variant:n,gradient:o,autoContrast:a})=>{const i=vd({color:e,theme:r}),l=typeof a=="boolean"?a:r.autoContrast;if(n==="none")return{background:"transparent",hover:"transparent",color:"inherit",border:"none"};if(n==="filled"){const s=l&&i.isLight?"var(--mantine-color-black)":"var(--mantine-color-white)";return i.isThemeColor?i.shade===void 0?{background:`var(--mantine-color-${e}-filled)`,hover:`var(--mantine-color-${e}-filled-hover)`,color:s,border:`${$e(1)} solid transparent`}:{background:`var(--mantine-color-${i.color}-${i.shade})`,hover:`var(--mantine-color-${i.color}-${i.shade===9?8:i.shade+1})`,color:s,border:`${$e(1)} solid transparent`}:{background:e,hover:Mw(e,.1),color:s,border:`${$e(1)} solid transparent`}}if(n==="light"){if(i.isThemeColor){if(i.shade===void 0)return{background:`var(--mantine-color-${e}-light)`,hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`};const s=r.colors[i.color][i.shade];return{background:Xl(s,.1),hover:Xl(s,.12),color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${$e(1)} solid transparent`}}return{background:Xl(e,.1),hover:Xl(e,.12),color:e,border:`${$e(1)} solid transparent`}}if(n==="outline")return i.isThemeColor?i.shade===void 0?{background:"transparent",hover:`var(--mantine-color-${e}-outline-hover)`,color:`var(--mantine-color-${e}-outline)`,border:`${$e(1)} solid var(--mantine-color-${e}-outline)`}:{background:"transparent",hover:Xl(r.colors[i.color][i.shade],.05),color:`var(--mantine-color-${i.color}-${i.shade})`,border:`${$e(1)} solid var(--mantine-color-${i.color}-${i.shade})`}:{background:"transparent",hover:Xl(e,.05),color:e,border:`${$e(1)} solid ${e}`};if(n==="subtle"){if(i.isThemeColor){if(i.shade===void 0)return{background:"transparent",hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`};const s=r.colors[i.color][i.shade];return{background:"transparent",hover:Xl(s,.12),color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${$e(1)} solid transparent`}}return{background:"transparent",hover:Xl(e,.12),color:e,border:`${$e(1)} solid transparent`}}return n==="transparent"?i.isThemeColor?i.shade===void 0?{background:"transparent",hover:"transparent",color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${$e(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:e,border:`${$e(1)} solid transparent`}:n==="white"?i.isThemeColor?i.shade===void 0?{background:"var(--mantine-color-white)",hover:Mw(r.white,.01),color:`var(--mantine-color-${e}-filled)`,border:`${$e(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Mw(r.white,.01),color:`var(--mantine-color-${i.color}-${i.shade})`,border:`${$e(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Mw(r.white,.01),color:e,border:`${$e(1)} solid transparent`}:n==="gradient"?{background:k9(o,r),hover:k9(o,r),color:"var(--mantine-color-white)",border:"none"}:n==="default"?{background:"var(--mantine-color-default)",hover:"var(--mantine-color-default-hover)",color:"var(--mantine-color-default-color)",border:`${$e(1)} solid var(--mantine-color-default-border)`}:{}},Vze={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},AH="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",_9={scale:1,fontSmoothing:!0,focusRing:"auto",white:"#fff",black:"#000",colors:Vze,primaryShade:{light:6,dark:8},primaryColor:"blue",variantColorResolver:Fze,autoContrast:!1,luminanceThreshold:.3,fontFamily:AH,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",respectReducedMotion:!1,cursorType:"default",defaultGradient:{from:"blue",to:"cyan",deg:45},defaultRadius:"sm",activeClassName:"mantine-active",focusClassName:"",headings:{fontFamily:AH,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:$e(34),lineHeight:"1.3"},h2:{fontSize:$e(26),lineHeight:"1.35"},h3:{fontSize:$e(22),lineHeight:"1.4"},h4:{fontSize:$e(18),lineHeight:"1.45"},h5:{fontSize:$e(16),lineHeight:"1.5"},h6:{fontSize:$e(14),lineHeight:"1.5"}}},fontSizes:{xs:$e(12),sm:$e(14),md:$e(16),lg:$e(18),xl:$e(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:$e(2),sm:$e(4),md:$e(8),lg:$e(16),xl:$e(32)},spacing:{xs:$e(10),sm:$e(12),md:$e(16),lg:$e(20),xl:$e(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), 0 ${$e(1)} ${$e(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(10)} ${$e(15)} ${$e(-5)}, rgba(0, 0, 0, 0.04) 0 ${$e(7)} ${$e(7)} ${$e(-5)}`,md:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(20)} ${$e(25)} ${$e(-5)}, rgba(0, 0, 0, 0.04) 0 ${$e(10)} ${$e(10)} ${$e(-5)}`,lg:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(28)} ${$e(23)} ${$e(-7)}, rgba(0, 0, 0, 0.04) 0 ${$e(12)} ${$e(12)} ${$e(-7)}`,xl:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(36)} ${$e(28)} ${$e(-7)}, rgba(0, 0, 0, 0.04) 0 ${$e(17)} ${$e(17)} ${$e(-7)}`},other:{},components:{}};function DH(e){return e==="auto"||e==="dark"||e==="light"}function qze({key:e="mantine-color-scheme-value"}={}){let r;return{get:n=>{if(typeof window>"u")return n;try{const o=window.localStorage.getItem(e);return DH(o)?o:n}catch{return n}},set:n=>{try{window.localStorage.setItem(e,n)}catch(o){console.warn("[@mantine/core] Local storage color scheme manager was unable to save color scheme.",o)}},subscribe:n=>{r=o=>{o.storageArea===window.localStorage&&o.key===e&&DH(o.newValue)&&n(o.newValue)},window.addEventListener("storage",r)},unsubscribe:()=>{window.removeEventListener("storage",r)},clear:()=>{window.localStorage.removeItem(e)}}}const Hze="[@mantine/core] MantineProvider: Invalid theme.primaryColor, it accepts only key of theme.colors, learn more – https://mantine.dev/theming/colors/#primary-color",MH="[@mantine/core] MantineProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }";function S9(e){return e<0||e>9?!1:parseInt(e.toString(),10)===e}function NH(e){if(!(e.primaryColor in e.colors))throw new Error(Hze);if(typeof e.primaryShade=="object"&&(!S9(e.primaryShade.dark)||!S9(e.primaryShade.light)))throw new Error(MH);if(typeof e.primaryShade=="number"&&!S9(e.primaryShade))throw new Error(MH)}function Uze(e,r){if(!r)return NH(e),e;const n=h9(e,r);return r.fontFamily&&!r.headings?.fontFamily&&(n.headings.fontFamily=r.fontFamily),NH(n),n}const E9=S.createContext(null),Wze=()=>S.useContext(E9)||_9;function lo(){const e=S.useContext(E9);if(!e)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return e}function PH({theme:e,children:r,inherit:n=!0}){const o=Wze(),a=S.useMemo(()=>Uze(n?o:_9,e),[e,o,n]);return y.jsx(E9.Provider,{value:a,children:r})}PH.displayName="@mantine/core/MantineThemeProvider";function Gze(){const e=lo(),r=np(),n=So(e.breakpoints).reduce((o,a)=>{const i=e.breakpoints[a].includes("px"),l=f9(e.breakpoints[a]),s=i?`${l-.1}px`:lH(l-.1),c=i?`${l}px`:lH(l);return`${o}@media (max-width: ${s}) {.mantine-visible-from-${a} {display: none !important;}}@media (min-width: ${c}) {.mantine-hidden-from-${a} {display: none !important;}}`},"");return y.jsx("style",{"data-mantine-styles":"classes",nonce:r?.(),dangerouslySetInnerHTML:{__html:n}})}function C9(e){return Object.entries(e).map(([r,n])=>`${r}: ${n};`).join("")}function BH(e,r){const n=r?[r]:[":root",":host"],o=C9(e.variables),a=o?`${n.join(", ")}{${o}}`:"",i=C9(e.dark),l=C9(e.light),s=u=>n.map(p=>p===":host"?`${p}([data-mantine-color-scheme="${u}"])`:`${p}[data-mantine-color-scheme="${u}"]`).join(", "),c=i?`${s("dark")}{${i}}`:"",d=l?`${s("light")}{${l}}`:"";return`${a} ${c} -${d}`}function $9({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n:r.autoContrast)&&vd({color:e||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function IH(e,r){return $9({color:e.colors[e.primaryColor][ly(e,r)],theme:e,autoContrast:null})}function Nw({theme:e,color:r,colorScheme:n,name:o=r,withColorValues:a=!0}){if(!e.colors[r])return{};if(n==="light"){const s=ly(e,"light"),c={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-filled)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${s===9?8:s+1})`,[`--mantine-color-${o}-light`]:_f(e.colors[r][s],.1),[`--mantine-color-${o}-light-hover`]:_f(e.colors[r][s],.12),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline-hover`]:_f(e.colors[r][s],.05)};return 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=ly(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`]:_f(e.colors[r][Math.max(0,i-2)],.15),[`--mantine-color-${o}-light-hover`]:_f(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`]:_f(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 YRe(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function Sf(e,r,n){So(r).forEach(o=>Object.assign(e,{[`--mantine-${n}-${o}`]:r[o]}))}const OH=e=>{const r=ly(e,"light"),n=e.defaultRadius in e.radius?e.radius[e.defaultRadius]:$e(e.defaultRadius),o={variables:{"--mantine-z-index-app":"100","--mantine-z-index-modal":"200","--mantine-z-index-popover":"300","--mantine-z-index-overlay":"400","--mantine-z-index-max":"9999","--mantine-scale":e.scale.toString(),"--mantine-cursor-type":e.cursorType,"--mantine-webkit-font-smoothing":e.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":e.fontSmoothing?"grayscale":"unset","--mantine-color-white":e.white,"--mantine-color-black":e.black,"--mantine-line-height":e.lineHeights.md,"--mantine-font-family":e.fontFamily,"--mantine-font-family-monospace":e.fontFamilyMonospace,"--mantine-font-family-headings":e.headings.fontFamily,"--mantine-heading-font-weight":e.headings.fontWeight,"--mantine-heading-text-wrap":e.headings.textWrap,"--mantine-radius-default":n,"--mantine-primary-color-filled":`var(--mantine-color-${e.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${e.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${e.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${e.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${e.primaryColor}-light-color)`},light:{"--mantine-color-scheme":"light","--mantine-primary-color-contrast":IH(e,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":e.black,"--mantine-color-body":e.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-${r})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)","--mantine-color-disabled":"var(--mantine-color-gray-2)","--mantine-color-disabled-color":"var(--mantine-color-gray-5)","--mantine-color-disabled-border":"var(--mantine-color-gray-3)"},dark:{"--mantine-color-scheme":"dark","--mantine-primary-color-contrast":IH(e,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)","--mantine-color-disabled":"var(--mantine-color-dark-6)","--mantine-color-disabled-color":"var(--mantine-color-dark-3)","--mantine-color-disabled-border":"var(--mantine-color-dark-4)"}};Sf(o.variables,e.breakpoints,"breakpoint"),Sf(o.variables,e.spacing,"spacing"),Sf(o.variables,e.fontSizes,"font-size"),Sf(o.variables,e.lineHeights,"line-height"),Sf(o.variables,e.shadows,"shadow"),Sf(o.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((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(YRe(l)){Object.assign(o.light,Nw({theme:e,name:l.name,color:l.light,colorScheme:"light",withColorValues:!0})),Object.assign(o.dark,Nw({theme:e,name:l.name,color:l.dark,colorScheme:"dark",withColorValues:!0}));return}l.forEach((s,c)=>{o.variables[`--mantine-color-${i}-${c}`]=s}),Object.assign(o.light,Nw({theme:e,color:i,colorScheme:"light",withColorValues:!1})),Object.assign(o.dark,Nw({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 XRe({theme:e,generator:r}){const n=OH(e),o=r?.(e);return o?h9(n,o):n}const z9=OH(_9);function ZRe(e){const r={variables:{},light:{},dark:{}};return So(e.variables).forEach(n=>{z9.variables[n]!==e.variables[n]&&(r.variables[n]=e.variables[n])}),So(e.light).forEach(n=>{z9.light[n]!==e.light[n]&&(r.light[n]=e.light[n])}),So(e.dark).forEach(n=>{z9.dark[n]!==e.dark[n]&&(r.dark[n]=e.dark[n])}),r}function KRe(e){return BH({variables:{},dark:{"--mantine-color-scheme":"dark"},light:{"--mantine-color-scheme":"light"}},e)}function LH({cssVariablesSelector:e,deduplicateCssVariables:r}){const n=lo(),o=np(),a=RRe(),i=XRe({theme:n,generator:a}),l=(e===void 0||e===":root"||e===":host")&&r,s=l?ZRe(i):i,c=BH(s,e);return c?y.jsx("style",{"data-mantine-styles":!0,nonce:o?.(),dangerouslySetInnerHTML:{__html:`${c}${l?"":KRe(e)}`}}):null}LH.displayName="@mantine/CssVariables";function Ef(e,r){const n=typeof window<"u"&&"matchMedia"in window&&window.matchMedia("(prefers-color-scheme: dark)")?.matches,o=e!=="auto"?e:n?"dark":"light";r()?.setAttribute("data-mantine-color-scheme",o)}function QRe({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||(Ef(u,n),l(u),e.set(u))},[e.set,s,o]),d=S.useCallback(()=>{l(r),Ef(r,n),e.clear()},[e.clear,r]);return S.useEffect(()=>(e.subscribe(c),e.unsubscribe),[e.subscribe,e.unsubscribe]),xf(()=>{Ef(e.get(r),n)},[]),S.useEffect(()=>{if(o)return Ef(o,n),()=>{};o===void 0&&Ef(i,n),typeof window<"u"&&"matchMedia"in window&&(a.current=window.matchMedia("(prefers-color-scheme: dark)"));const u=p=>{i==="auto"&&Ef(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 JRe({respectReducedMotion:e,getRootElement:r}){xf(()=>{e&&r()?.setAttribute("data-respect-reduced-motion","true")},[e])}function R9({theme:e,children:r,getStyleNonce:n,withStaticClasses:o=!0,withGlobalClasses:a=!0,deduplicateCssVariables:i=!0,withCssVariables:l=!0,cssVariablesSelector:s,classNamesPrefix:c="mantine",colorSchemeManager:d=qRe(),defaultColorScheme:u="light",getRootElement:p=()=>document.documentElement,cssVariablesResolver:f,forceColorScheme:g,stylesTransform:v,env:w}){const{colorScheme:x,setColorScheme:k,clearColorScheme:C}=QRe({defaultColorScheme:u,forceColorScheme:g,manager:d,getRootElement:p});return JRe({respectReducedMotion:e?.respectReducedMotion||!1,getRootElement:p}),y.jsx(Aw.Provider,{value:{colorScheme:x,setColorScheme:k,clearColorScheme:C,getRootElement:p,classNamesPrefix:c,getStyleNonce:n,cssVariablesResolver:f,cssVariablesSelector:s??":root",withStaticClasses:o,stylesTransform:v,env:w},children:y.jsxs(PH,{theme:e,children:[l&&y.jsx(LH,{cssVariablesSelector:s,deduplicateCssVariables:i}),a&&y.jsx(GRe,{}),r]})})}R9.displayName="@mantine/core/MantineProvider";function T9({classNames:e,styles:r,props:n,stylesCtx:o}){const a=lo();return{resolvedClassNames:Tw({theme:a,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:jw({theme:a,styles:r,props:n,stylesCtx:o||void 0})}}const eTe={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function tTe({theme:e,options:r,unstyled:n}){return el(r?.focusable&&!n&&(e.focusClassName||eTe[e.focusRing]),r?.active&&!n&&e.activeClassName)}function rTe({selector:e,stylesCtx:r,options:n,props:o,theme:a}){return Tw({theme:a,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function FH({selector:e,stylesCtx:r,theme:n,classNames:o,props:a}){return Tw({theme:n,classNames:o,props:a,stylesCtx:r})[e]}function nTe({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function oTe({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function aTe({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(a=>`${r}-${a}-${n}`)}function iTe({themeName:e,theme:r,selector:n,props:o,stylesCtx:a}){return e.map(i=>Tw({theme:r,classNames:r.components[i]?.classNames,props:o,stylesCtx:a})?.[n])}function lTe({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function sTe({theme:e,options:r,themeName:n,selector:o,classNamesPrefix:a,classNames:i,classes:l,unstyled:s,className:c,rootSelector:d,props:u,stylesCtx:p,withStaticClasses:f,headless:g,transformedStyles:v}){return el(tTe({theme:e,options:r,unstyled:s||g}),iTe({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),lTe({options:r,classes:l,selector:o,unstyled:s}),FH({selector:o,stylesCtx:p,theme:e,classNames:i,props:u}),FH({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),rTe({selector:o,stylesCtx:p,options:r,props:u,theme:e}),nTe({rootSelector:d,selector:o,className:c}),oTe({selector:o,classes:l,unstyled:s||g}),f&&!g&&aTe({themeName:n,classNamesPrefix:a,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function cTe({theme:e,themeName:r,props:n,stylesCtx:o,selector:a}){return r.map(i=>jw({theme:e,styles:e.components[i]?.styles,props:n,stylesCtx:o})[a]).reduce((i,l)=>({...i,...l}),{})}function j9({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...j9({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function dTe(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...yf(n[o])}}),r),{})}function uTe({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:a,selector:i,themeName:l,headless:s}){return dTe([s?{}:r?.(n,o,a),...l.map(c=>n.components?.[c]?.vars?.(n,o,a)),e?.(n,o,a)])?.[i]}function pTe({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&&cTe({theme:e,themeName:r,props:a,stylesCtx:i,selector:n}),...!f&&jw({theme:e,styles:s,props:a,stylesCtx:i})[n],...!f&&jw({theme:e,styles:o?.styles,props:o?.props||a,stylesCtx:i})[n],...uTe({theme:e,props:a,stylesCtx:i,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?j9({style:c,theme:e}):null,...j9({style:o?.style,theme:e})}}function hTe({props:e,stylesCtx:r,themeName:n}){const o=lo(),a=MRe()?.();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=TRe(),w=jRe(),x=ARe(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=hTe({props:n,stylesCtx:o,themeName:k});return($,z)=>({className:sTe({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:pTe({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 fTe(e,r){return typeof e=="boolean"?e:r.autoContrast}function VH(e){const r=document.createElement("style");return r.setAttribute("data-mantine-styles","inline"),r.innerHTML="*, *::before, *::after {transition: none !important;}",r.setAttribute("data-mantine-disable-transition","true"),e&&r.setAttribute("nonce",e),document.head.appendChild(r),()=>document.querySelectorAll("[data-mantine-disable-transition]").forEach(n=>n.remove())}function mTe({keepTransitions:e}={}){const r=S.useRef(dH),n=S.useRef(-1),o=S.useContext(Aw),a=np(),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?()=>{}:VH(i.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},s=()=>{o.clearColorScheme(),r.current=e?()=>{}:VH(i.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},c=mH("light",{getInitialValueInEffect:!1}),d=o.colorScheme==="auto"?c:o.colorScheme,u=S.useCallback(()=>l(d==="light"?"dark":"light"),[l,d]);return S.useEffect(()=>()=>{r.current?.(),window.clearTimeout(n.current)},[]),{colorScheme:o.colorScheme,setColorScheme:l,clearColorScheme:s,toggleColorScheme:u}}function Me(e,r,n){const o=lo(),a=o.components[e]?.defaultProps,i=typeof a=="function"?a(o):a;return{...r,...i,...yf(n)}}function A9(e){return So(e).reduce((r,n)=>e[n]!==void 0?`${r}${Nze(n)}:${e[n]};`:r,"").trim()}function gTe({selector:e,styles:r,media:n,container:o}){const a=r?A9(r):"",i=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${A9(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${A9(s.styles)}}}`):[];return`${a?`${e}{${a}}`:""}${i.join("")}${l.join("")}`.trim()}function Pw(e){const r=np();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:gTe(e)}})}function qH(e){const{m:r,mx:n,my:o,mt: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:T,opacity:A,ff:R,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:O,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:yf({m:r,mx:n,my:o,mt: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:T,opacity:A,ff:R,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:O,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const yTe={m:{type:"spacing",property:"margin"},mt:{type:"spacing",property:"marginTop"},mb:{type:"spacing",property:"marginBottom"},ml:{type:"spacing",property:"marginLeft"},mr:{type:"spacing",property:"marginRight"},ms:{type:"spacing",property:"marginInlineStart"},me:{type:"spacing",property:"marginInlineEnd"},mx:{type:"spacing",property:"marginInline"},my:{type:"spacing",property:"marginBlock"},p:{type:"spacing",property:"padding"},pt:{type:"spacing",property:"paddingTop"},pb:{type:"spacing",property:"paddingBottom"},pl:{type:"spacing",property:"paddingLeft"},pr:{type:"spacing",property:"paddingRight"},ps:{type:"spacing",property:"paddingInlineStart"},pe:{type:"spacing",property:"paddingInlineEnd"},px:{type:"spacing",property:"paddingInline"},py:{type:"spacing",property:"paddingBlock"},bd:{type:"border",property:"border"},bdrs:{type:"radius",property:"borderRadius"},bg:{type:"color",property:"background"},c:{type:"textColor",property:"color"},opacity:{type:"identity",property:"opacity"},ff:{type:"fontFamily",property:"fontFamily"},fz:{type:"fontSize",property:"fontSize"},fw:{type:"identity",property:"fontWeight"},lts:{type:"size",property:"letterSpacing"},ta:{type:"identity",property:"textAlign"},lh:{type:"lineHeight",property:"lineHeight"},fs:{type:"identity",property:"fontStyle"},tt:{type:"identity",property:"textTransform"},td:{type:"identity",property:"textDecoration"},w:{type:"spacing",property:"width"},miw:{type:"spacing",property:"minWidth"},maw:{type:"spacing",property:"maxWidth"},h:{type:"spacing",property:"height"},mih:{type:"spacing",property:"minHeight"},mah:{type:"spacing",property:"maxHeight"},bgsz:{type:"size",property:"backgroundSize"},bgp:{type:"identity",property:"backgroundPosition"},bgr:{type:"identity",property:"backgroundRepeat"},bga:{type:"identity",property:"backgroundAttachment"},pos:{type:"identity",property:"position"},top:{type:"size",property:"top"},left:{type:"size",property:"left"},bottom:{type:"size",property:"bottom"},right:{type:"size",property:"right"},inset:{type:"size",property:"inset"},display:{type:"identity",property:"display"},flex:{type:"identity",property:"flex"}};function D9(e,r){const n=vd({color:e,theme:r});return n.color==="dimmed"?"var(--mantine-color-dimmed)":n.color==="bright"?"var(--mantine-color-bright)":n.variable?`var(${n.variable})`:n.color}function vTe(e,r){const n=vd({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:D9(e,r)}function bTe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const[n,o,...a]=e.split(" ").filter(l=>l.trim()!=="");let i=`${$e(n)}`;return o&&(i+=` ${o}`),a.length>0&&(i+=` ${D9(a.join(" "),r)}`),i.trim()}return e}const HH={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function xTe(e){return typeof e=="string"&&e in HH?HH[e]:e}const wTe=["h1","h2","h3","h4","h5","h6"];function kTe(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&wTe.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?$e(e):e}function _Te(e){return e}const STe=["h1","h2","h3","h4","h5","h6"];function ETe(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&STe.includes(e)?`var(--mantine-${e}-line-height)`:e}function CTe(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?$e(e):e}function $Te(e){return typeof e=="number"?$e(e):e}function zTe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const n=e.replace("-","");if(!(n in r.spacing))return $e(e);const o=`--mantine-spacing-${n}`;return e.startsWith("-")?`calc(var(${o}) * -1)`:`var(${o})`}return e}const M9={color:D9,textColor:vTe,fontSize:kTe,spacing:zTe,radius:CTe,identity:_Te,size:$Te,lineHeight:ETe,fontFamily:xTe,border:bTe};function UH(e){return e.replace("(min-width: ","").replace("em)","")}function RTe({media:e,...r}){const n=Object.keys(e).sort((o,a)=>Number(UH(o))-Number(UH(a))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function TTe(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function jTe(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function ATe(e){return typeof e=="object"&&e!==null?So(e).filter(r=>r!=="base"):[]}function DTe(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function WH({styleProps:e,data:r,theme:n}){return RTe(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=jTe(e[a]);if(!TTe(e[a]))return l.forEach(d=>{o.inlineStyles[d]=M9[i.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=ATe(e[a]);return l.forEach(d=>{s!=null&&(o.styles[d]=M9[i.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:M9[i.type](DTe(e[a],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function Bw(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function N9(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...N9(o,r)}),{}):typeof e=="function"?e(r):e??{}}function GH(e){return e.startsWith("data-")?e:`data-${e}`}function MTe(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[GH(n)]=e[n]),r},{})}function YH(e){return e?typeof e=="string"?{[GH(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...YH(n)}),{}):MTe(e):null}function P9(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...P9(o,r)}),{}):typeof e=="function"?e(r):e??{}}function NTe({theme:e,style:r,vars:n,styleProps:o}){const a=P9(r,e),i=P9(n,e);return{...a,...i,...o}}const XH=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}=qH(g),_=DRe()?.()?.(k.sx),$=Bw(),z=WH({styleProps:k,theme:w,data:yTe}),T={ref:v,style:NTe({theme:w,style:r,vars:n,styleProps:z.inlineStyles}),className:el(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":sH(l)?void 0:l||void 0,size:f,...YH(i),...C};return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(Pw,{selector:`.${$}`,styles:z.styles,media:z.media}),typeof p=="function"?p(T):y.jsx(x,{...T})]})});XH.displayName="@mantine/core/Box";const Se=XH;function ZH(e){return e}function PTe(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=ZH,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=ZH,r}const BTe=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function bd(){return S.useContext(BTe)}function ITe(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function B9(e){return e?.current?e.current.scrollHeight:"auto"}const Iw=typeof window<"u"&&window.requestAnimationFrame,KH=0,OTe=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function LTe({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:a=!1}){const i=S.useRef(null),l=OTe(a),[s,c]=S.useState(o?{}:l),d=v=>{Vi.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||ITe(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}wf(()=>{typeof Iw=="function"&&Iw(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),Iw(()=>{const v=B9(i);u({...p(v),height:v})})}:()=>{const v=B9(i);u({...p(v),willChange:"height",height:v}),Iw(()=>u({height:KH,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==i.current||v.propertyName!=="height"))if(o){const w=B9(i);w===s.height?d({}):u({height:w}),n()}else s.height===KH&&(d(l),n())};function g({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:wH(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 FTe={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},QH=ot((e,r)=>{const{children:n,in:o,transitionDuration:a,transitionTimingFunction:i,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=Me("Collapse",FTe,e),p=lo(),f=_H(),g=p.respectReducedMotion&&f?0:a,v=LTe({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",...N9(l,p)},ref:r,...u}),children:n})});QH.displayName="@mantine/core/Collapse";function Ow(){return typeof window<"u"}function Cf(e){return JH(e)?(e.nodeName||"").toLowerCase():"#document"}function na(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function Zl(e){var r;return(r=(JH(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function JH(e){return Ow()?e instanceof Node||e instanceof na(e).Node:!1}function Ar(e){return Ow()?e instanceof Element||e instanceof na(e).Element:!1}function $a(e){return Ow()?e instanceof HTMLElement||e instanceof na(e).HTMLElement:!1}function I9(e){return!Ow()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof na(e).ShadowRoot}const VTe=new Set(["inline","contents"]);function cy(e){const{overflow:r,overflowX:n,overflowY:o,display:a}=ai(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!VTe.has(a)}const qTe=new Set(["table","td","th"]);function HTe(e){return qTe.has(Cf(e))}const UTe=[":popover-open",":modal"];function Lw(e){return UTe.some(r=>{try{return e.matches(r)}catch{return!1}})}const WTe=["transform","translate","scale","rotate","perspective"],GTe=["transform","translate","scale","rotate","perspective","filter"],YTe=["paint","layout","strict","content"];function O9(e){const r=Fw(),n=Ar(e)?ai(e):e;return WTe.some(o=>n[o]?n[o]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!r&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!r&&(n.filter?n.filter!=="none":!1)||GTe.some(o=>(n.willChange||"").includes(o))||YTe.some(o=>(n.contain||"").includes(o))}function XTe(e){let r=Zs(e);for(;$a(r)&&!Xs(r);){if(O9(r))return r;if(Lw(r))return null;r=Zs(r)}return null}function Fw(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const ZTe=new Set(["html","body","#document"]);function Xs(e){return ZTe.has(Cf(e))}function ai(e){return na(e).getComputedStyle(e)}function Vw(e){return Ar(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Zs(e){if(Cf(e)==="html")return e;const r=e.assignedSlot||e.parentNode||I9(e)&&e.host||Zl(e);return I9(r)?r.host:r}function eU(e){const r=Zs(e);return Xs(r)?e.ownerDocument?e.ownerDocument.body:e.body:$a(r)&&cy(r)?r:eU(r)}function Ks(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const a=eU(e),i=a===((o=e.ownerDocument)==null?void 0:o.body),l=na(a);if(i){const s=L9(l);return r.concat(l,l.visualViewport||[],cy(a)?a:[],s&&n?Ks(s):[])}return r.concat(a,Ks(a,[],n))}function L9(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const tU=["top","right","bottom","left"],rU=["start","end"],nU=tU.reduce((e,r)=>e.concat(r,r+"-"+rU[0],r+"-"+rU[1]),[]),tl=Math.min,Co=Math.max,qw=Math.round,Hw=Math.floor,Kl=e=>({x:e,y:e}),KTe={left:"right",right:"left",bottom:"top",top:"bottom"},QTe={start:"end",end:"start"};function F9(e,r,n){return Co(e,tl(r,n))}function rl(e,r){return typeof e=="function"?e(r):e}function za(e){return e.split("-")[0]}function nl(e){return e.split("-")[1]}function V9(e){return e==="x"?"y":"x"}function q9(e){return e==="y"?"height":"width"}const JTe=new Set(["top","bottom"]);function ol(e){return JTe.has(za(e))?"y":"x"}function H9(e){return V9(ol(e))}function oU(e,r,n){n===void 0&&(n=!1);const o=nl(e),a=H9(e),i=q9(a);let l=a==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[i]>r.floating[i]&&(l=Ww(l)),[l,Ww(l)]}function eje(e){const r=Ww(e);return[Uw(e),r,Uw(r)]}function Uw(e){return e.replace(/start|end/g,r=>QTe[r])}const aU=["left","right"],iU=["right","left"],tje=["top","bottom"],rje=["bottom","top"];function nje(e,r,n){switch(e){case"top":case"bottom":return n?r?iU:aU:r?aU:iU;case"left":case"right":return r?tje:rje;default:return[]}}function oje(e,r,n,o){const a=nl(e);let i=nje(za(e),n==="start",o);return a&&(i=i.map(l=>l+"-"+a),r&&(i=i.concat(i.map(Uw)))),i}function Ww(e){return e.replace(/left|right|bottom|top/g,r=>KTe[r])}function aje(e){return{top:0,right:0,bottom:0,left:0,...e}}function U9(e){return typeof e!="number"?aje(e):{top:e,right:e,bottom:e,left:e}}function $f(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 ije(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function lje(){const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?e.brands.map(r=>{let{brand:n,version:o}=r;return n+"/"+o}).join(" "):navigator.userAgent}function sje(){return/apple/i.test(navigator.vendor)}function cje(){return ije().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function dje(){return lje().includes("jsdom/")}const lU="data-floating-ui-focusable",uje="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function sU(e){let r=e.activeElement;for(;((n=r)==null||(n=n.shadowRoot)==null?void 0:n.activeElement)!=null;){var n;r=r.shadowRoot.activeElement}return r}function dy(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&I9(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function zf(e){return"composedPath"in e?e.composedPath()[0]:e.target}function W9(e,r){if(r==null)return!1;if("composedPath"in e)return e.composedPath().includes(r);const n=e;return n.target!=null&&r.contains(n.target)}function pje(e){return e.matches("html,body")}function op(e){return e?.ownerDocument||document}function hje(e){return $a(e)&&e.matches(uje)}function fje(e){if(!e||dje())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function mje(e){return e?e.hasAttribute(lU)?e:e.querySelector("["+lU+"]")||e:null}function Gw(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var a;return o.parentId===r&&(!n||((a=o.context)==null?void 0:a.open))}).flatMap(o=>[o,...Gw(e,o.id,n)])}function gje(e){return"nativeEvent"in e}function G9(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var yje=typeof document<"u",vje=function(){},Ql=yje?S.useLayoutEffect:vje;const bje={...gb};function Yw(e){const r=S.useRef(e);return Ql(()=>{r.current=e}),r}const xje=bje.useInsertionEffect,wje=xje||(e=>e());function Jl(e){const r=S.useRef(()=>{});return wje(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),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}=cU(d,o,c),f=o,g={},v=0;for(let w=0;w({name:"arrow",options:e,async fn(r){const{x:n,y:o,placement:a,rects:i,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=rl(e,r)||{};if(d==null)return{};const p=U9(u),f={x:n,y:o},g=H9(a),v=q9(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],T=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=T?T[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(T)))&&(A=s.floating[_]||i.floating[v]);const R=$/2-z/2,j=A/2-w[v]/2-1,I=tl(p[k],j),P=tl(p[C],j),L=I,H=A-w[v]-P,M=A/2-w[v]/2+R,V=F9(L,M,H),B=!c.arrow&&nl(a)!=null&&M!==V&&i.reference[v]/2-(Mnl(o)===e),...n.filter(o=>nl(o)!==e)]:n.filter(o=>za(o)===o)).filter(o=>e?nl(o)===e||(r?Uw(o)!==o:!1):!0)}const Eje=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(r){var n,o,a;const{rects:i,middlewareData:l,placement:s,platform:c,elements:d}=r,{crossAxis:u=!1,alignment:p,allowedPlacements:f=nU,autoAlignment:g=!0,...v}=rl(e,r),w=p!==void 0||f===nU?Sje(p||null,g,f):f,x=await Rf(r,v),k=((n=l.autoPlacement)==null?void 0:n.index)||0,C=w[k];if(C==null)return{};const _=oU(C,i,await(c.isRTL==null?void 0:c.isRTL(d.floating)));if(s!==C)return{reset:{placement:w[0]}};const $=[x[za(C)],x[_[0]],x[_[1]]],z=[...((o=l.autoPlacement)==null?void 0:o.overflows)||[],{placement:C,overflows:$}],T=w[k+1];if(T)return{data:{index:k+1,overflows:z},reset:{placement:T}};const A=z.map(j=>{const I=nl(j.placement);return[j.placement,I&&u?j.overflows.slice(0,2).reduce((P,L)=>P+L,0):j.overflows[0],j.overflows]}).sort((j,I)=>j[1]-I[1]),R=((a=A.filter(j=>j[2].slice(0,nl(j[0])?2:3).every(I=>I<=0))[0])==null?void 0:a[0])||A[0][0];return R!==s?{data:{index:k+1,overflows:z},reset:{placement:R}}:{}}}},Cje=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}=rl(e,r);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const k=za(a),C=ol(s),_=za(s)===s,$=await(c.isRTL==null?void 0:c.isRTL(d.floating)),z=f||(_||!w?[Ww(s)]:eje(s)),T=v!=="none";!f&&T&&z.push(...oje(s,w,v,$));const A=[s,...z],R=await Rf(r,x),j=[];let I=((o=i.flip)==null?void 0:o.overflows)||[];if(u&&j.push(R[k]),p){const M=oU(a,l,$);j.push(R[M[0]],R[M[1]])}if(I=[...I,{placement:a,overflows:j}],!j.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!==ol(V))||I.every(F=>ol(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:M,overflows:I},reset:{placement:V}};let B=(L=I.filter(F=>F.overflows[0]<=0).sort((F,q)=>F.overflows[1]-q.overflows[1])[0])==null?void 0:L.placement;if(!B)switch(g){case"bestFit":{var H;const F=(H=I.filter(q=>{if(T){const G=ol(q.placement);return G===C||G==="y"}return!0}).map(q=>[q.placement,q.overflows.filter(G=>G>0).reduce((G,U)=>G+U,0)]).sort((q,G)=>q[1]-G[1])[0])==null?void 0:H[0];F&&(B=F);break}case"initialPlacement":B=s;break}if(a!==B)return{reset:{placement:B}}}return{}}}};function dU(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function uU(e){return tU.some(r=>e[r]>=0)}const $je=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...a}=rl(e,r);switch(o){case"referenceHidden":{const i=await Rf(r,{...a,elementContext:"reference"}),l=dU(i,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:uU(l)}}}case"escaped":{const i=await Rf(r,{...a,altBoundary:!0}),l=dU(i,n.floating);return{data:{escapedOffsets:l,escaped:uU(l)}}}default:return{}}}}};function pU(e){const r=tl(...e.map(i=>i.left)),n=tl(...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 zje(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=>$f(pU(a)))}const Rje=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}=rl(e,r),u=Array.from(await(i.getClientRects==null?void 0:i.getClientRects(o.reference))||[]),p=zje(u),f=$f(pU(u)),g=U9(s);function v(){if(p.length===2&&p[0].left>p[1].right&&c!=null&&d!=null)return p.find(x=>c>x.left-g.left&&cx.top-g.top&&d=2){if(ol(n)==="y"){const I=p[0],P=p[p.length-1],L=za(n)==="top",H=I.top,M=P.bottom,V=L?I.left:P.left,B=L?I.right:P.right,F=B-V,q=M-H;return{top:H,bottom:M,left:V,right:B,width:F,height:q,x:V,y:H}}const x=za(n)==="left",k=Co(...p.map(I=>I.right)),C=tl(...p.map(I=>I.left)),_=p.filter(I=>x?I.left===C:I.right===k),$=_[0].top,z=_[_.length-1].bottom,T=C,A=k,R=A-T,j=z-$;return{top:$,bottom:z,left:T,right:A,width:R,height:j,x:T,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}}:{}}}},hU=new Set(["left","top"]);async function Tje(e,r){const{placement:n,platform:o,elements:a}=e,i=await(o.isRTL==null?void 0:o.isRTL(a.floating)),l=za(n),s=nl(n),c=ol(n)==="y",d=hU.has(l)?-1:1,u=i&&c?-1:1,p=rl(r,e);let{mainAxis:f,crossAxis:g,alignmentAxis:v}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return s&&typeof v=="number"&&(g=s==="end"?v*-1:v),c?{x:g*u,y:f*d}:{x:f*d,y:g*u}}const jje=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:a,y:i,placement:l,middlewareData:s}=r,c=await Tje(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:a+c.x,y:i+c.y,data:{...c,placement:l}}}}},Aje=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:a}=r,{mainAxis:i=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=rl(e,r),d={x:n,y:o},u=await Rf(r,c),p=ol(za(a)),f=V9(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=F9(C,g,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=F9(C,v,_)}const w=s.fn({...r,[f]:g,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:i,[p]:l}}}}}},Dje=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}=rl(e,r),u={x:n,y:o},p=ol(a),f=V9(p);let g=u[f],v=u[p];const w=rl(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=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",$=hU.has(za(a)),z=i.reference[p]-i.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),T=i.reference[p]+i.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vT&&(v=T)}return{[f]:g,[p]:v}}}},Mje=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:a,rects:i,platform:l,elements:s}=r,{apply:c=()=>{},...d}=rl(e,r),u=await Rf(r,d),p=za(a),f=nl(a),g=ol(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,$=tl(w-u[x],C),z=tl(v-u[k],_),T=!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),T&&!f){const I=Co(u.left,0),P=Co(u.right,0),L=Co(u.top,0),H=Co(u.bottom,0);g?R=v-2*(I!==0||P!==0?I+P:Co(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:Co(u.top,u.bottom))}await c({...r,availableWidth:R,availableHeight:A});const j=await l.getDimensions(s.floating);return v!==j.width||w!==j.height?{reset:{rects:!0}}:{}}}};function fU(e){const r=ai(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const a=$a(e),i=a?e.offsetWidth:n,l=a?e.offsetHeight:o,s=qw(n)!==i||qw(o)!==l;return s&&(n=i,o=l),{width:n,height:o,$:s}}function Y9(e){return Ar(e)?e:e.contextElement}function Tf(e){const r=Y9(e);if(!$a(r))return Kl(1);const n=r.getBoundingClientRect(),{width:o,height:a,$:i}=fU(r);let l=(i?qw(n.width):n.width)/o,s=(i?qw(n.height):n.height)/a;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const Nje=Kl(0);function mU(e){const r=na(e);return!Fw()||!r.visualViewport?Nje:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function Pje(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==na(e)?!1:r}function ap(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const a=e.getBoundingClientRect(),i=Y9(e);let l=Kl(1);r&&(o?Ar(o)&&(l=Tf(o)):l=Tf(e));const s=Pje(i,n,o)?mU(i):Kl(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=na(i),g=o&&Ar(o)?na(o):o;let v=f,w=L9(v);for(;w&&o&&g!==v;){const x=Tf(w),k=w.getBoundingClientRect(),C=ai(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=na(w),w=L9(v)}}return $f({width:u,height:p,x:c,y:d})}function Xw(e,r){const n=Vw(e).scrollLeft;return r?r.left+n:ap(Zl(e)).left+n}function gU(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-Xw(e,n),a=n.top+r.scrollTop;return{x:o,y:a}}function Bje(e){let{elements:r,rect:n,offsetParent:o,strategy:a}=e;const i=a==="fixed",l=Zl(o),s=r?Lw(r.floating):!1;if(o===l||s&&i)return n;let c={scrollLeft:0,scrollTop:0},d=Kl(1);const u=Kl(0),p=$a(o);if((p||!p&&!i)&&((Cf(o)!=="body"||cy(l))&&(c=Vw(o)),$a(o))){const g=ap(o);d=Tf(o),u.x=g.x+o.clientLeft,u.y=g.y+o.clientTop}const f=l&&!p&&!i?gU(l,c):Kl(0);return{width:n.width*d.x,height:n.height*d.y,x:n.x*d.x-c.scrollLeft*d.x+u.x+f.x,y:n.y*d.y-c.scrollTop*d.y+u.y+f.y}}function Ije(e){return Array.from(e.getClientRects())}function Oje(e){const r=Zl(e),n=Vw(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+Xw(e);const s=-n.scrollTop;return ai(o).direction==="rtl"&&(l+=Co(r.clientWidth,o.clientWidth)-a),{width:a,height:i,x:l,y:s}}const yU=25;function Lje(e,r){const n=na(e),o=Zl(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=Fw();(!u||u&&r==="fixed")&&(s=a.offsetLeft,c=a.offsetTop)}const d=Xw(o);if(d<=0){const u=o.ownerDocument,p=u.body,f=getComputedStyle(p),g=u.compatMode==="CSS1Compat"&&parseFloat(f.marginLeft)+parseFloat(f.marginRight)||0,v=Math.abs(o.clientWidth-p.clientWidth-g);v<=yU&&(i-=v)}else d<=yU&&(i+=d);return{width:i,height:l,x:s,y:c}}const Fje=new Set(["absolute","fixed"]);function Vje(e,r){const n=ap(e,!0,r==="fixed"),o=n.top+e.clientTop,a=n.left+e.clientLeft,i=$a(e)?Tf(e):Kl(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 vU(e,r,n){let o;if(r==="viewport")o=Lje(e,n);else if(r==="document")o=Oje(Zl(e));else if(Ar(r))o=Vje(r,n);else{const a=mU(e);o={x:r.x-a.x,y:r.y-a.y,width:r.width,height:r.height}}return $f(o)}function bU(e,r){const n=Zs(e);return n===r||!Ar(n)||Xs(n)?!1:ai(n).position==="fixed"||bU(n,r)}function qje(e,r){const n=r.get(e);if(n)return n;let o=Ks(e,[],!1).filter(s=>Ar(s)&&Cf(s)!=="body"),a=null;const i=ai(e).position==="fixed";let l=i?Zs(e):e;for(;Ar(l)&&!Xs(l);){const s=ai(l),c=O9(l);!c&&s.position==="fixed"&&(a=null),(i?!c&&!a:!c&&s.position==="static"&&a&&Fje.has(a.position)||cy(l)&&!c&&bU(e,l))?o=o.filter(d=>d!==l):a=s,l=Zs(l)}return r.set(e,o),o}function Hje(e){let{element:r,boundary:n,rootBoundary:o,strategy:a}=e;const i=[...n==="clippingAncestors"?Lw(r)?[]:qje(r,this._c):[].concat(n),o],l=i[0],s=i.reduce((c,d)=>{const u=vU(r,d,a);return c.top=Co(u.top,c.top),c.right=tl(u.right,c.right),c.bottom=tl(u.bottom,c.bottom),c.left=Co(u.left,c.left),c},vU(r,l,a));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Uje(e){const{width:r,height:n}=fU(e);return{width:r,height:n}}function Wje(e,r,n){const o=$a(r),a=Zl(r),i=n==="fixed",l=ap(e,!0,i,r);let s={scrollLeft:0,scrollTop:0};const c=Kl(0);function d(){c.x=Xw(a)}if(o||!o&&!i)if((Cf(r)!=="body"||cy(a))&&(s=Vw(r)),o){const g=ap(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?gU(a,s):Kl(0),p=l.left+s.scrollLeft-c.x-u.x,f=l.top+s.scrollTop-c.y-u.y;return{x:p,y:f,width:l.width,height:l.height}}function X9(e){return ai(e).position==="static"}function xU(e,r){if(!$a(e)||ai(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return Zl(e)===n&&(n=n.ownerDocument.body),n}function wU(e,r){const n=na(e);if(Lw(e))return n;if(!$a(e)){let a=Zs(e);for(;a&&!Xs(a);){if(Ar(a)&&!X9(a))return a;a=Zs(a)}return n}let o=xU(e,r);for(;o&&HTe(o)&&X9(o);)o=xU(o,r);return o&&Xs(o)&&X9(o)&&!O9(o)?n:o||XTe(e)||n}const Gje=async function(e){const r=this.getOffsetParent||wU,n=this.getDimensions,o=await n(e.floating);return{reference:Wje(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Yje(e){return ai(e).direction==="rtl"}const Xje={convertOffsetParentRelativeRectToViewportRelativeRect:Bje,getDocumentElement:Zl,getClippingRect:Hje,getOffsetParent:wU,getElementRects:Gje,getClientRects:Ije,getDimensions:Uje,getScale:Tf,isElement:Ar,isRTL:Yje};function kU(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function Zje(e,r){let n=null,o;const a=Zl(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=Hw(p),w=Hw(a.clientWidth-(u+f)),x=Hw(a.clientHeight-(p+g)),k=Hw(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:Co(0,tl(1,c))||1};let _=!0;function $(z){const T=z[0].intersectionRatio;if(T!==c){if(!_)return l();T?l(!1,T):o=setTimeout(()=>{l(!1,1e-7)},1e3)}T===1&&!kU(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:a.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),i}function Zw(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=Y9(e),u=a||i?[...d?Ks(d):[],...Ks(r)]:[];u.forEach(k=>{a&&k.addEventListener("scroll",n,{passive:!0}),i&&k.addEventListener("resize",n)});const p=d&&s?Zje(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?ap(e):null;c&&x();function x(){const k=ap(e);w&&!kU(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 _U=jje,Kje=Eje,Qje=Aje,Jje=Cje,SU=Mje,EU=$je,CU=_je,eAe=Rje,tAe=Dje,$U=(e,r,n)=>{const o=new Map,a={platform:Xje,...n},i={...a.platform,_c:o};return kje(e,r,{...a,platform:i})};var rAe=typeof document<"u",nAe=function(){},Kw=rAe?S.useLayoutEffect:nAe;function Qw(e,r){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(typeof e=="function"&&e.toString()===r.toString())return!0;let n,o,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(!Qw(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)&&!Qw(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}function zU(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function RU(e,r){const n=zU(e);return Math.round(r*n)/n}function Z9(e){const r=S.useRef(e);return Kw(()=>{r.current=e}),r}function oAe(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);Qw(f,o)||g(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==T.current&&(T.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=i||v,z=l||x,T=S.useRef(null),A=S.useRef(null),R=S.useRef(u),j=c!=null,I=Z9(c),P=Z9(a),L=Z9(d),H=S.useCallback(()=>{if(!T.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};P.current&&(q.platform=P.current),$U(T.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};M.current&&!Qw(R.current,U)&&(R.current=U,Vi.flushSync(()=>{p(U)}))})},[f,r,n,P,L]);Kw(()=>{d===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const M=S.useRef(!1);Kw(()=>(M.current=!0,()=>{M.current=!1}),[]),Kw(()=>{if($&&(T.current=$),z&&(A.current=z),$&&z){if(I.current)return I.current($,z,H);H()}},[$,z,H,I,j]);const V=S.useMemo(()=>({reference:T,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=RU(B.floating,u.x),U=RU(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...zU(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 aAe=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?CU({element:o.current,padding:a}).fn(n):{}:o?CU({element:o,padding:a}).fn(n):{}}}},TU=(e,r)=>({..._U(e),options:[e,r]}),K9=(e,r)=>({...Qje(e),options:[e,r]}),jU=(e,r)=>({...tAe(e),options:[e,r]}),Jw=(e,r)=>({...Jje(e),options:[e,r]}),iAe=(e,r)=>({...SU(e),options:[e,r]}),lAe=(e,r)=>({...EU(e),options:[e,r]}),uy=(e,r)=>({...eAe(e),options:[e,r]}),AU=(e,r)=>({...aAe(e),options:[e,r]});function DU(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 sAe="data-floating-ui-focusable",MU="active",NU="selected",cAe={...gb};let PU=!1,dAe=0;const BU=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+dAe++;function uAe(){const[e,r]=S.useState(()=>PU?BU():void 0);return Ql(()=>{e==null&&r(BU())},[]),S.useEffect(()=>{PU=!0},[]),e}const pAe=cAe.useId,IU=pAe||uAe;function hAe(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(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 fAe=S.createContext(null),mAe=S.createContext(null),Q9=()=>{var e;return((e=S.useContext(fAe))==null?void 0:e.id)||null},J9=()=>S.useContext(mAe);function eS(e){return"data-floating-ui-"+e}function ii(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const OU=eS("safe-polygon");function e3(e,r,n){if(n&&!G9(n))return 0;if(typeof e=="number")return e;if(typeof e=="function"){const o=e();return typeof o=="number"?o:o?.[r]}return e?.[r]}function tS(e){return typeof e=="function"?e():e}function LU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,dataRef: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=J9(),v=Q9(),w=Yw(d),x=Yw(c),k=Yw(n),C=Yw(p),_=S.useRef(),$=S.useRef(-1),z=S.useRef(),T=S.useRef(-1),A=S.useRef(!0),R=S.useRef(!1),j=S.useRef(()=>{}),I=S.useRef(!1),P=Jl(()=>{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||(ii($),ii(T),A.current=!0,I.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=op(l.floating).documentElement;return q.addEventListener("mouseleave",F),()=>{q.removeEventListener("mouseleave",F)}},[l.floating,n,o,s,w,P]);const L=S.useCallback(function(F,q,G){q===void 0&&(q=!0),G===void 0&&(G="hover");const U=e3(x.current,"close",_.current);U&&!z.current?(ii($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(ii($),o(!1,F,G))},[x,o]),H=Jl(()=>{j.current(),z.current=void 0}),M=Jl(()=>{if(R.current){const F=op(l.floating).body;F.style.pointerEvents="",F.removeAttribute(OU),R.current=!1}}),V=Jl(()=>a.current.openEvent?["click","mousedown"].includes(a.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(Z){if(ii($),A.current=!1,u&&!G9(_.current)||tS(C.current)>0&&!e3(x.current,"open"))return;const O=e3(x.current,"open",_.current);O?$.current=window.setTimeout(()=>{k.current||o(!0,Z,"hover")},O):n||o(!0,Z,"hover")}function q(Z){if(V()){M();return}j.current();const O=op(l.floating);if(ii(T),I.current=!1,w.current&&a.current.floatingContext){n||ii($),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;O.addEventListener("mousemove",W),j.current=()=>{O.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!dy(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(){ii($)}function Y(Z){V()||L(Z,!1)}if(Ar(l.domReference)){const Z=l.domReference,O=l.floating;return n&&Z.addEventListener("mouseleave",G),f&&Z.addEventListener("mousemove",F,{once:!0}),Z.addEventListener("mouseenter",F),Z.addEventListener("mouseleave",q),O&&(O.addEventListener("mouseleave",G),O.addEventListener("mouseenter",U),O.addEventListener("mouseleave",Y)),()=>{n&&Z.removeEventListener("mouseleave",G),f&&Z.removeEventListener("mousemove",F),Z.removeEventListener("mouseenter",F),Z.removeEventListener("mouseleave",q),O&&(O.removeEventListener("mouseleave",G),O.removeEventListener("mouseenter",U),O.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,M,o,n,k,g,x,w,a,V,C]),Ql(()=>{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=op(l.floating).body;U.setAttribute(OU,"");const Y=l.domReference,Z=g==null||(q=g.nodesRef.current.find(O=>O.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]),Ql(()=>{n||(_.current=void 0,I.current=!1,H(),M())},[n,H,M]),S.useEffect(()=>()=>{H(),ii($),ii(T),M()},[s,l.domReference,H,M]);const B=S.useMemo(()=>{function F(q){_.current=q.pointerType}return{onPointerDown:F,onPointerEnter:F,onMouseMove(q){const{nativeEvent:G}=q;function U(){!A.current&&!k.current&&o(!0,G,"hover")}u&&!G9(_.current)||n||tS(C.current)===0||I.current&&q.movementX**2+q.movementY**2<2||(ii(T),_.current==="touch"?U():(I.current=!0,T.current=window.setTimeout(U,tS(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const rS=()=>{},FU=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:rS,setState:rS,isInstantPhase:!1}),gAe=()=>S.useContext(FU);function VU(e){const{children:r,delay:n,timeoutMs:o=0}=e,[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 Ql(()=>{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(FU.Provider,{value:S.useMemo(()=>({...a,setState:i,setCurrentId:s}),[a,s]),children:r})}function qU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:a}=e,{id:i,enabled:l=!0}=r,s=i??a,c=gAe(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:g}=c;return Ql(()=>{l&&d&&(f({delay:{open:1,close:e3(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),Ql(()=>{function v(){o(!1),f({delay:p,currentId:null})}if(l&&d&&!n&&d===s){if(g){const w=window.setTimeout(v,g);return()=>{clearTimeout(w)}}v()}},[l,n,f,d,s,o,p,g]),Ql(()=>{l&&(u===rS||!n||u(s))},[l,n,u,s]),c}const yAe={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},vAe={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},HU=e=>{var r,n;return{escapeKey:typeof e=="boolean"?e:(r=e?.escapeKey)!=null?r:!1,outsidePress:typeof e=="boolean"?e:(n=e?.outsidePress)!=null?n:!0}};function UU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements: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=J9(),x=Jl(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=HU(g),{escapeKey:z,outsidePress:T}=HU(v),A=S.useRef(!1),R=Jl(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?Gw(w.nodesRef.current,B):[];if(!_&&(M.stopPropagation(),F.length>0)){let q=!0;if(F.forEach(G=>{var U;if((U=G.context)!=null&&U.open&&!G.context.dataRef.current.__escapeKeyBubbles){q=!1;return}}),!q)return}o(!1,gje(M)?M.nativeEvent:M,"escape-key")}),j=Jl(M=>{var V;const B=()=>{var F;R(M),(F=zf(M))==null||F.removeEventListener("keydown",B)};(V=zf(M))==null||V.addEventListener("keydown",B)}),I=Jl(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=zf(M),G="["+eS("inert")+"]",U=op(a.floating).querySelectorAll(G);let Y=Ar(q)?q:null;for(;Y&&!Xs(Y);){const K=Zs(Y);if(Xs(K)||!Ar(K))break;Y=K}if(U.length&&Ar(q)&&!pje(q)&&!dy(q,a.floating)&&Array.from(U).every(K=>!dy(Y,K)))return;if($a(q)&&H){const K=Xs(q),Q=ai(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,O=w&&Gw(w.nodesRef.current,Z).some(K=>{var Q;return W9(M,(Q=K.context)==null?void 0:Q.elements.floating)});if(W9(M,a.floating)||W9(M,a.domReference)||O)return;const W=w?Gw(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=Jl(M=>{var V;const B=()=>{var F;I(M),(F=zf(M))==null||F.removeEventListener(d,B)};(V=zf(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},Fw()?5:0)}const q=op(a.floating);s&&(q.addEventListener("keydown",z?j:R,z),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,T?P:I,T);let G=[];return f&&(Ar(a.domReference)&&(G=Ks(a.domReference)),Ar(a.floating)&&(G=G.concat(Ks(a.floating))),!Ar(a.reference)&&a.reference&&a.reference.contextElement&&(G=G.concat(Ks(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?j:R,z),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,T?P:I,T),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(M)}},[i,a,s,k,d,n,o,f,l,_,$,R,z,j,I,T,P]),S.useEffect(()=>{i.current.insideReactTree=!1},[i,k,d]);const L=S.useMemo(()=>({onKeyDown:R,...u&&{[yAe[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},[vAe[d]]:()=>{i.current.insideReactTree=!0}}),[R,d,i]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function bAe(e){const{open:r=!1,onOpenChange:n,elements:o}=e,a=IU(),i=S.useRef({}),[l]=S.useState(()=>hAe()),s=Q9()!=null,[c,d]=S.useState(o.reference),u=Jl((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 t3(e){e===void 0&&(e={});const{nodeId:r}=e,n=bAe({...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=J9();Ql(()=>{d&&(u.current=d)},[d]);const f=oAe({...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 Ql(()=>{o.dataRef.current.floatingContext=k;const C=p?.nodesRef.current.find(_=>_.id===r);C&&(C.context=k)}),S.useMemo(()=>({...f,context:k,refs:w,elements:x}),[f,w,x,k])}function nS(){return cje()&&sje()}function xAe(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,events: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=na(l.domReference);function v(){!n&&$a(l.domReference)&&l.domReference===sU(op(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return g.addEventListener("blur",v),nS()&&(g.addEventListener("keydown",w,!0),g.addEventListener("pointerdown",x,!0)),()=>{g.removeEventListener("blur",v),nS()&&(g.removeEventListener("keydown",w,!0),g.removeEventListener("pointerdown",x,!0))}},[l.domReference,n,s]),S.useEffect(()=>{if(!s)return;function g(v){let{reason:w}=v;(w==="reference-press"||w==="escape-key")&&(d.current=!0)}return a.on("openchange",g),()=>{a.off("openchange",g)}},[a,s]),S.useEffect(()=>()=>{ii(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(g){if(d.current)return;const v=zf(g.nativeEvent);if(c&&Ar(v)){if(nS()&&!g.relatedTarget){if(!p.current&&!hje(v))return}else if(!fje(v))return}o(!0,g.nativeEvent,"focus")},onBlur(g){d.current=!1;const v=g.relatedTarget,w=g.nativeEvent,x=Ar(v)&&v.hasAttribute(eS("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=sU(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||dy((k=i.current.floatingContext)==null?void 0:k.refs.floating.current,C)||dy(l.domReference,C)||x||o(!1,w,"focus")})}}),[i,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function oS(e,r,n){const o=new Map,a=n==="item";let i=e;if(a&&e){const{[MU]:l,[NU]:s,...c}=e;i=c}return{...n==="floating"&&{tabIndex:-1,[sAe]:""},...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&&[MU,NU].includes(d)))if(d.indexOf("on")===0){if(o.has(d)||o.set(d,[]),typeof u=="function"){var p;(p=o.get(d))==null||p.push(u),l[d]=function(){for(var f,g=arguments.length,v=new Array(g),w=0;wx(...v)).find(x=>x!==void 0)}}}else l[d]=u}),l),{})}}function WU(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),a=S.useCallback(s=>oS(s,e,"reference"),r),i=S.useCallback(s=>oS(s,e,"floating"),n),l=S.useCallback(s=>oS(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:a,getFloatingProps:i,getItemProps:l}),[a,i,l])}const wAe=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function GU(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=IU(),u=((n=i.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=mje(i.floating))==null?void 0:k.id)||l},[i.floating,l]),f=(o=wAe.get(c))!=null?o:c,g=Q9()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]: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[kAe,li]=ni("ScrollArea.Root component was not found in tree");function jf(e,r){const n=Qn(r);xf(()=>{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 _Ae=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=li(),[i,l]=S.useState(0),[s,c]=S.useState(0),d=!!(i&&s);return jf(a.scrollbarX,()=>{const u=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(u),c(u)}),jf(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}),SAe=S.forwardRef((e,r)=>{const n=li(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(_Ae,{...e,ref:r}):null}),EAe={scrollHideDelay:1e3,type:"hover"},YU=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:a,getStyles:i,...l}=Me("ScrollAreaRoot",EAe,e),[s,c]=S.useState(null),[d,u]=S.useState(null),[p,f]=S.useState(null),[g,v]=S.useState(null),[w,x]=S.useState(null),[k,C]=S.useState(0),[_,$]=S.useState(0),[z,T]=S.useState(!1),[A,R]=S.useState(!1),j=$r(r,I=>c(I));return y.jsx(kAe,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:g,onScrollbarXChange:v,scrollbarXEnabled:z,onScrollbarXEnabledChange:T,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:R,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:i},children:y.jsx(Se,{...l,ref:j,__vars:{"--sa-corner-width":a!=="xy"?"0px":`${k}px`,"--sa-corner-height":a!=="xy"?"0px":`${_}px`}})})});YU.displayName="@mantine/core/ScrollAreaRoot";function XU(e,r){const n=e/r;return Number.isNaN(n)?0:n}function r3(e){const r=XU(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function ZU(e,r){return n=>{if(e[0]===e[1]||r[0]===r[1])return r[0];const o=(r[1]-r[0])/(e[1]-e[0]);return r[0]+o*(n-e[0])}}function CAe(e,[r,n]){return Math.min(n,Math.max(r,e))}function KU(e,r,n="ltr"){const o=r3(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=CAe(e,c);return ZU([0,l],[0,s])(d)}function $Ae(e,r,n,o="ltr"){const a=r3(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 ZU([c,d],p)(e)}function QU(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[zAe,JU]=ni("ScrollAreaScrollbar was not found in tree"),eW=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=li(),[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),T=bf(u,10),A=R=>{if(x.current){const j=R.clientX-x.current.left,I=R.clientY-x.current.top;c({x:j,y:I})}};return S.useEffect(()=>{const R=j=>{const I=j.target;g?.contains(I)&&$(j,_)};return document.addEventListener("wheel",R,{passive:!1}),()=>document.removeEventListener("wheel",R,{passive:!1})},[C,g,_,$]),S.useEffect(z,[n,z]),jf(g,T),jf(f.content,T),y.jsx(zAe,{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:ip(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:ip(e.onPointerMove,A),onPointerUp:ip(e.onPointerUp,R=>{const j=R.target;j.hasPointerCapture(R.pointerId)&&(R.preventDefault(),j.releasePointerCapture(R.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),tW=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=li(),[s,c]=S.useState(),d=S.useRef(null),u=$r(r,d,l.onScrollbarXChange);return S.useEffect(()=>{d.current&&c(getComputedStyle(d.current))},[d]),y.jsx(eW,{"data-orientation":"horizontal",...i,ref:u,sizes:n,style:{...a,"--sa-thumb-width":`${r3(n)}px`},onThumbPointerDown:p=>e.onThumbPointerDown(p.x),onDragScroll:p=>e.onDragScroll(p.x),onWheelScroll:(p,f)=>{if(l.viewport){const g=l.viewport.scrollLeft+p.deltaX;e.onWheelScroll(g),QU(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:d.current.clientWidth,paddingStart:xd(s.paddingLeft),paddingEnd:xd(s.paddingRight)}})}})});tW.displayName="@mantine/core/ScrollAreaScrollbarX";const rW=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=li(),[s,c]=S.useState(),d=S.useRef(null),u=$r(r,d,l.onScrollbarYChange);return S.useEffect(()=>{d.current&&c(window.getComputedStyle(d.current))},[]),y.jsx(eW,{...i,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${r3(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),QU(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:d.current.clientHeight,paddingStart:xd(s.paddingTop),paddingEnd:xd(s.paddingBottom)}})}})});rW.displayName="@mantine/core/ScrollAreaScrollbarY";const n3=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:a}=bd(),i=li(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=XU(c.viewport,c.content),p={...o,sizes:c,onSizesChange:d,hasThumb:u>0&&u<1,onThumbChange:g=>{l.current=g},onThumbPointerUp:()=>{s.current=0},onThumbPointerDown:g=>{s.current=g}},f=(g,v)=>$Ae(g,s.current,c,v);return n==="horizontal"?y.jsx(tW,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollLeft,v=KU(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(rW,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollTop,v=KU(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});n3.displayName="@mantine/core/ScrollAreaScrollbarVisible";const aS=S.forwardRef((e,r)=>{const n=li(),{forceMount:o,...a}=e,[i,l]=S.useState(!1),s=e.orientation==="horizontal",c=bf(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,a=li(),[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(aS,{"data-state":i?"visible":"hidden",...o,ref:r}):null});nW.displayName="@mantine/core/ScrollAreaScrollbarHover";const RAe=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=li(),i=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=bf(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),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(n3,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:ip(e.onPointerEnter,()=>s("interacting")),onPointerLeave:ip(e.onPointerLeave,()=>s("idle"))}):null}),iS=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=li(),{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(nW,{...o,ref:r,forceMount:n}):a.type==="scroll"?y.jsx(RAe,{...o,ref:r,forceMount:n}):a.type==="auto"?y.jsx(aS,{...o,ref:r,forceMount:n}):a.type==="always"?y.jsx(n3,{...o,ref:r}):null});iS.displayName="@mantine/core/ScrollAreaScrollbar";function TAe(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 oW=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=li(),i=JU(),{onThumbPositionChange:l}=i,s=$r(r,u=>i.onThumbChange(u)),c=S.useRef(void 0),d=bf(()=>{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=TAe(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:ip(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:ip(e.onPointerUp,i.onThumbPointerUp)})});oW.displayName="@mantine/core/ScrollAreaThumb";const lS=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=JU();return n||a.hasThumb?y.jsx(oW,{ref:r,...o}):null});lS.displayName="@mantine/core/ScrollAreaThumb";const aW=S.forwardRef(({children:e,style:r,...n},o)=>{const a=li(),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})})});aW.displayName="@mantine/core/ScrollAreaViewport";var sS={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const iW={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},jAe=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":$e(r),"--scrollarea-over-scroll-behavior":n}}),es=ot((e,r)=>{const n=Me("ScrollArea",iW,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,...T}=n,[A,R]=S.useState(!1),[j,I]=S.useState(!1),[P,L]=S.useState(!1),H=kt({name:"ScrollArea",props:n,classes:sS,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:d,varsResolver:jAe}),M=S.useRef(null),V=DU([g,M]);return S.useEffect(()=>{if(!M.current||x!=="present")return;const B=M.current,F=new ResizeObserver(()=>{const{scrollHeight:q,clientHeight:G,scrollWidth:U,clientWidth:Y}=B;I(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[M,x]),y.jsxs(YU,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...T,children:[y.jsx(aW,{...f,...H("viewport",{style:f?.style}),ref:V,"data-offset-scrollbars":x===!0?"xy":x||void 0,"data-scrollbars":k||void 0,"data-horizontal-hidden":x==="present"&&!P?"true":void 0,"data-vertical-hidden":x==="present"&&!j?"true":void 0,onScroll:B=>{f?.onScroll?.(B),v?.({x:B.currentTarget.scrollLeft,y:B.currentTarget.scrollTop});const{scrollTop:F,scrollHeight:q,clientHeight:G}=B.currentTarget;F-(q-G)>=-.6&&C?.(),F===0&&_?.()},children:w}),(k==="xy"||k==="x")&&y.jsx(iS,{...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(lS,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(iS,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!j?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(lS,{...H("thumb")})}),y.jsx(SAe,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});es.displayName="@mantine/core/ScrollArea";const oa=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",iW,e),T=S.useRef(null),A=DU([u,T]),[R,j]=S.useState(!1),I=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const P=T.current;if(!P)return;const L=()=>{const M=P.scrollHeight>P.clientHeight;M!==R&&(I.current?$?.(M):(I.current=!0,M&&$?.(!0)),j(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(es,{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})})})});es.classes=sS,oa.displayName="@mantine/core/ScrollAreaAutosize",oa.classes=sS,es.Autosize=oa;var lW={root:"m_87cf2631"};const AAe={__staticSelector:"UnstyledButton"},pr=Jn((e,r)=>{const n=Me("UnstyledButton",AAe,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:lW,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=lW,pr.displayName="@mantine/core/UnstyledButton";var sW={root:"m_515a97f8"};const o3=ot((e,r)=>{const n=Me("VisuallyHidden",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,attributes:d,...u}=n,p=kt({name:"VisuallyHidden",classes:sW,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})});o3.classes=sW,o3.displayName="@mantine/core/VisuallyHidden";var cW={root:"m_1b7284a3"};const DAe=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:wn(r),"--paper-shadow":uH(n)}}),Af=Jn((e,r)=>{const n=Me("Paper",null,e),{classNames:o,className: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:cW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:DAe});return y.jsx(Se,{ref:r,mod:[{"data-with-border":c},g],...x("root"),variant:f,...w})});Af.classes=cW,Af.displayName="@mantine/core/Paper";function dW(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function uW(e,r,n,o,a){return e==="center"||o==="center"?{left:r}:e==="end"?{[a==="ltr"?"right":"left"]:n}:e==="start"?{[a==="ltr"?"left":"right"]:n}:{}}const MAe={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function NAe({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,arrowX:i,arrowY:l,dir:s}){const[c,d="center"]=e.split("-"),u={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[MAe[c]]:o},p=-r/2;return c==="left"?{...u,...dW(d,l,n,a),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...dW(d,l,n,a),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...uW(d,i,n,a,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...uW(d,i,n,a,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const a3=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}=bd();return i?y.jsx("div",{...d,ref:u,style:{...c,...NAe({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,dir:p,arrowX:l,arrowY:s})}}):null});a3.displayName="@mantine/core/FloatingArrow";function pW(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 hW={root:"m_9814e45f"};const PAe={zIndex:Ew("modal")},BAe=(e,{gradient:r,color:n,backgroundOpacity:o,blur:a,radius:i,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&Xl(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()}}),cS=Jn((e,r)=>{const n=Me("Overlay",PAe,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:hW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:BAe});return y.jsx(Se,{ref:r,...z("root"),mod:[{center:u,fixed:d},C],...$,children:p})});cS.classes=hW,cS.displayName="@mantine/core/Overlay";function dS(e){const r=document.createElement("div");return r.setAttribute("data-portal","true"),typeof e.className=="string"&&r.classList.add(...e.className.split(" ").filter(Boolean)),typeof e.style=="object"&&Object.assign(r.style,e.style),typeof e.id=="string"&&r.setAttribute("id",e.id),r}function IAe({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||dS(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const a=dS(n);return a.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(a),a}return dS(n)}const OAe={reuseTargetNode:!0},py=ot((e,r)=>{const{children:n,target:o,reuseTargetNode:a,...i}=Me("Portal",OAe,e),[l,s]=S.useState(!1),c=S.useRef(null);return xf(()=>(s(!0),c.current=IAe({target:o,reuseTargetNode:a,...i}),v9(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:Vi.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});py.displayName="@mantine/core/Portal";const Df=ot(({withinPortal:e=!0,children:r,...n},o)=>Dw()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(py,{ref:o,...n,children:r}));Df.displayName="@mantine/core/OptionalPortal";const hy=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),i3={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(30px)"},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-30px)"},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(30px)"},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-30px)"},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(-20px) skew(-10deg, -5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(20px) skew(-10deg, -5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(-5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...hy("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...hy("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...hy("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...hy("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...hy("top"),common:{transformOrigin:"top right"}}},fW={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function LAe({transition:e,state:r,duration:n,timingFunction:o}){const a={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in i3?{transitionProperty:i3[e].transitionProperty,...a,...i3[e].common,...i3[e][fW[r]]}:{}:{transitionProperty:e.transitionProperty,...a,...e.common,...e[fW[r]]}}function FAe({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:a,onExit:i,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=lo(),p=_H(),f=u.respectReducedMotion?p:!1,[g,v]=S.useState(f?0:e),[w,x]=S.useState(o?"entered":"exited"),k=S.useRef(-1),C=S.useRef(-1),_=S.useRef(-1);function $(){window.clearTimeout(k.current),window.clearTimeout(C.current),cancelAnimationFrame(_.current)}const z=A=>{$();const R=A?a:i,j=A?l:s,I=f?0:A?e:r;v(I),I===0?(typeof R=="function"&&R(),typeof j=="function"&&j(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{YN.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof R=="function"&&R(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof j=="function"&&j(),x(A?"entered":"exited")},I)})})},T=A=>{if($(),typeof(A?c:d)!="number"){z(A);return}C.current=window.setTimeout(()=>{z(A)},A?c:d)};return wf(()=>{T(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:g,transitionStatus:w,transitionTimingFunction:n||"ease"}}function wd({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:a,children:i,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const g=Dw(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=FAe({mounted: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(LAe({transition:r,duration:v,state:w,timingFunction:x}))})}wd.displayName="@mantine/core/Transition";const[VAe,mW]=ni("Popover component was not found in the tree");function l3({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const a=bH(r),i=$r(a,o),l=gd(e);return l?S.cloneElement(l,{[n]:i}):e}function gW(e){return y.jsx(o3,{tabIndex:-1,"data-autofocus":!0,...e})}l3.displayName="@mantine/core/FocusTrap",gW.displayName="@mantine/core/FocusTrapInitialFocus",l3.InitialFocus=gW;var yW={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const Qs=ot((e,r)=>{const n=Me("PopoverDropdown",null,e),{className:o,style:a,vars:i,children:l,onKeyDownCapture:s,variant:c,classNames:d,styles:u,...p}=n,f=mW(),g=Kze({opened:f.opened,shouldReturnFocus:f.returnFocus}),v=f.withRoles?{"aria-labelledby":f.getTargetId(),id:f.getDropdownId(),role:"dialog",tabIndex:-1}:{},w=$r(r,f.floating);return f.disabled?null:y.jsx(Df,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(wd,{mounted:f.opened,...f.transitionProps,transition:f.transitionProps?.transition||"fade",duration:f.transitionProps?.duration??150,keepMounted:f.keepMounted,exitDuration:typeof f.transitionProps?.exitDuration=="number"?f.transitionProps.exitDuration:f.transitionProps?.duration,children:x=>y.jsx(l3,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Se,{...v,...p,variant:c,onKeyDownCapture:Fze(()=>{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(a3,{ref:f.arrowRef,arrowX:f.arrowX,arrowY:f.arrowY,visible:f.withArrow,position:f.placement,arrowSize:f.arrowSize,arrowRadius:f.arrowRadius,arrowOffset:f.arrowOffset,arrowPosition:f.arrowPosition,...f.getStyles("arrow",{props:n,classNames:d,styles:u})})]})})})})});Qs.classes=yW,Qs.displayName="@mantine/core/PopoverDropdown";const qAe={refProp:"ref",popupType:"dialog"},kd=ot((e,r)=>{const{children:n,refProp:o,popupType:a,...i}=Me("PopoverTarget",qAe,e),l=gd(n);if(!l)throw new Error("Popover.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=i,c=mW(),d=$r(c.reference,zw(l),r),u=c.withRoles?{"aria-haspopup":a,"aria-expanded":c.opened,"aria-controls":c.getDropdownId(),id:c.getTargetId()}:{},p=l.props;return S.cloneElement(l,{...s,...u,...c.targetProps,className:el(c.targetProps.className,s.className,p.className),[o]:d,...c.controlled?null:{onClick:()=>{c.onToggle(),p.onClick?.()}}})});kd.displayName="@mantine/core/PopoverTarget";function HAe(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function UAe(e,r,n){const o=HAe(e.middlewares),a=[TU(e.offset),lAe()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&a.push(K9(typeof o.shift=="boolean"?{limiter:jU(),padding:5}:{limiter:jU(),padding:5,...o.shift})),o.flip&&a.push(typeof o.flip=="boolean"?Jw():Jw(o.flip)),o.inline&&a.push(typeof o.inline=="boolean"?uy():uy(o.inline)),a.push(AU({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&a.push(iAe({...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 WAe(e){const r=Dw(),[n,o]=Ys({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=t3({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:UAe(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:Zw});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return Zw(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),wf(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),wf(()=>{n!==a.current&&(n?e.onOpen?.():e.onClose?.()),a.current=n},[n,e.onClose,e.onOpen]),xf(()=>{let c=-1;return n&&(c=window.setTimeout(()=>e.setDropdownVisible(!0),4)),()=>{window.clearTimeout(c)}},[n,e.position]),{floating:s,controlled:typeof e.opened=="boolean",opened:n,onClose:i,onToggle:l}}const GAe={position:"bottom",offset:8,positionDependencies:[],transitionProps:{transition:"fade",duration:150},middlewares:{flip:!0,shift:!0,inline:!1},arrowSize:7,arrowOffset:5,arrowRadius:0,arrowPosition:"side",closeOnClickOutside:!0,withinPortal:!0,closeOnEscape:!0,trapFocus:!1,withRoles:!0,returnFocus:!1,withOverlay:!1,hideDetached:!0,clickOutsideEvents:["mousedown","touchstart"],zIndex:Ew("popover"),__staticSelector:"Popover",width:"max-content"},YAe=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:wn(r),"--popover-shadow":uH(n)}});function br(e){const r=Me("Popover",GAe,e),{children:n,position:o,offset: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:T,portalProps:A,closeOnEscape:R,clickOutsideEvents:j,trapFocus:I,onClose:P,onDismiss:L,onOpen:H,onChange:M,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:Z,returnFocus:O,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:yW,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:YAe}),{resolvedStyles:je}=T9({classNames:_,styles:$,props:r}),[Be,Je]=S.useState(s??G??!1),st=S.useRef(o),Le=S.useRef(null),[St,Ve]=S.useState(null),[qe,Xe]=S.useState(null),{dir:It}=bd(),Et=Dw(),be=oi(q),ke=WAe({middlewares:f,width:p,position:pW(It,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});hH(()=>{z&&(ke.onClose(),L?.())},j,[St,qe]);const Ye=S.useCallback(er=>{Ve(er),ke.floating.refs.setReference(er)},[ke.floating.refs.setReference]),yt=S.useCallback(er=>{Xe(er),ke.floating.refs.setFloating(er)},[ke.floating.refs.setFloating]),xt=S.useCallback(()=>{c?.onExited?.(),d?.(),Je(!1),ce||(st.current=o)},[c?.onExited,d,ce,o]),Tr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(VAe,{value:{returnFocus:O,disabled: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:Tr},width:p,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:I,withinPortal:T,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape: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:je,floatingStrategy:ae,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(wd,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(Df,{withinPortal:T,children:y.jsx(cS,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}br.Target=kd,br.Dropdown=Qs,br.displayName="@mantine/core/Popover",br.extend=e=>e;var al={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const vW=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:el(al.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:al.bar}),y.jsx("span",{className:al.bar}),y.jsx("span",{className:al.bar})]}));vW.displayName="@mantine/core/Bars";const bW=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:el(al.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:al.dot}),y.jsx("span",{className:al.dot}),y.jsx("span",{className:al.dot})]}));bW.displayName="@mantine/core/Dots";const xW=S.forwardRef(({className:e,...r},n)=>y.jsx(Se,{component:"span",className:el(al.ovalLoader,e),...r,ref:n}));xW.displayName="@mantine/core/Oval";const wW={bars:vW,oval:xW,dots:bW},XAe={loaders:wW,type:"oval"},ZAe=(e,{size:r,color:n})=>({root:{"--loader-size":dr(r,"loader-size"),"--loader-color":n?Ca(n,e):void 0}}),Mf=ot((e,r)=>{const n=Me("Loader",XAe,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:al,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:ZAe});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})});Mf.defaultLoaders=wW,Mf.classes=al,Mf.displayName="@mantine/core/Loader";var Nf={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const kW={orientation:"horizontal"},KAe=(e,{borderWidth:r})=>({group:{"--ai-border-width":$e(r)}}),s3=ot((e,r)=>{const n=Me("ActionIconGroup",kW,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",kW,e),w=kt({name:"ActionIconGroup",props:n,classes:Nf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:KAe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});s3.classes=Nf,s3.displayName="@mantine/core/ActionIconGroup";const QAe=(e,{radius:r,color:n,gradient:o,variant: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}}},uS=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:Nf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:QAe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});uS.classes=Nf,uS.displayName="@mantine/core/ActionIconGroupSection";const JAe=(e,{size:r,radius:n,variant:o,gradient: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:T,...A}=n,R=kt({name:["ActionIcon",v],props:n,className:o,style:c,classes:Nf,classNames:l,styles:s,unstyled:a,attributes:T,vars:x,varsResolver:JAe});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(wd,{mounted:d,transition:"slide-down",duration:150,children:j=>y.jsx(Se,{component:"span",...R("loader",{style:j}),"aria-hidden":!0,children:y.jsx(Mf,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Se,{component:"span",mod:{loading:d},...R("icon"),children:k})]})});lr.classes=Nf,lr.displayName="@mantine/core/ActionIcon",lr.Group=s3,lr.GroupSection=uS;const _W=S.forwardRef(({size:e="var(--cb-icon-size, 70%)",style:r,...n},o)=>y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...r,width:e,height:e},ref:o,...n,children:y.jsx("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})}));_W.displayName="@mantine/core/CloseIcon";var SW={root:"m_86a44da5","root--subtle":"m_220c80f2"};const eDe={variant:"subtle"},tDe=(e,{size:r,radius:n,iconSize:o})=>({root:{"--cb-size":dr(r,"cb-size"),"--cb-radius":n===void 0?void 0:wn(n),"--cb-icon-size":$e(o)}}),lp=Jn((e,r)=>{const n=Me("CloseButton",eDe,e),{iconSize:o,children: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:SW,classNames:c,styles:u,unstyled:p,attributes:k,vars:i,varsResolver:tDe});return y.jsxs(pr,{ref:r,..._,unstyled:p,variant:v,disabled:g,mod:[{disabled:g||f},x],...$("root",{variant:v,active:!g&&!f}),children:[w||y.jsx(_W,{}),a]})});lp.classes=SW,lp.displayName="@mantine/core/CloseButton";function rDe(e){return S.Children.toArray(e).filter(Boolean)}var EW={root:"m_4081bf90"};const nDe={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},oDe=(e,{grow:r,preventGrowOverflow:n,gap:o,align:a,justify:i,wrap:l},{childWidth:s})=>({root:{"--group-child-width":r&&n?s:void 0,"--group-gap":Gs(o),"--group-align":a,"--group-justify":i,"--group-wrap":l}}),en=ot((e,r)=>{const n=Me("Group",nDe,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=rDe(c),T=z.length,A=Gs(d??"md"),R={childWidth:`calc(${100/T}% - (${A} - ${A} / ${T}))`},j=kt({name:"Group",props:n,stylesCtx:R,className:a,style:i,classes:EW,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:oDe});return y.jsx(Se,{...j("root"),ref:r,variant:x,mod:[{grow:g},C],size:k,...$,children:z})});en.classes=EW,en.displayName="@mantine/core/Group";const[aDe,iDe]=oy({size:"sm"}),CW=ot((e,r)=>{const n=Me("InputClearButton",null,e),{size:o,variant:a,vars:i,classNames:l,styles:s,...c}=n,d=iDe(),{resolvedClassNames:u,resolvedStyles:p}=T9({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})});CW.displayName="@mantine/core/InputClearButton";const lDe={xs:7,sm:8,md:10,lg:12,xl:15};function sDe({__clearable:e,__clearSection:r,rightSection:n,__defaultRightSection:o,size: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:lDe[a]},children:[i,n||o]}):n===null?null:n||i||o}const[cDe,c3]=oy({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var si={wrapper:"m_6c018570",input:"m_8fb7ebe7",section:"m_82577fc2",placeholder:"m_88bacfd0",root:"m_46b77525",label:"m_8fdc1311",required:"m_78a94662",error:"m_8f816625",description:"m_fe47ce59"};const dDe=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),d3=ot((e,r)=>{const n=Me("InputDescription",null,e),{classNames:o,className: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=c3(),x=kt({name:["InputWrapper",u],props:n,classes:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:dDe}),k=p&&w?.getStyles||x;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("description",w?.getStyles?{className:a,style:i}:void 0),...v})});d3.classes=si,d3.displayName="@mantine/core/InputDescription";const uDe=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),u3=ot((e,r)=>{const n=Me("InputError",null,e),{classNames:o,className: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:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:uDe}),x=c3(),k=f&&x?.getStyles||w;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("error",x?.getStyles?{className:a,style:i}:void 0),...v})});u3.classes=si,u3.displayName="@mantine/core/InputError";const $W={labelElement:"label"},pDe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0}}),p3=ot((e,r)=>{const n=Me("InputLabel",$W,e),{classNames:o,className: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",$W,n),$=kt({name:["InputWrapper",w],props:n,classes:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:pDe}),z=c3(),T=z?.getStyles||$;return y.jsxs(Se,{...T("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",{...T("required"),"aria-hidden":!0,children:" *"})]})});p3.classes=si,p3.displayName="@mantine/core/InputLabel";const pS=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:si,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})});pS.classes=si,pS.displayName="@mantine/core/InputPlaceholder";function hDe(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 fDe={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},mDe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0},error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`},description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),hS=ot((e,r)=>{const n=Me("InputWrapper",fDe,e),{classNames:o,className: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:T,id:A,required:R,__stylesApiProps:j,mod:I,attributes:P,...L}=n,H=kt({name:["InputWrapper",p],props:j||n,classes:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:mDe}),M={size:d,variant:u,__staticSelector:p},V=oi(A),B=typeof T=="boolean"?T:R,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,Z=`${U?F:""} ${Y?q:""}`,O=Z.trim().length>0?Z.trim():void 0,W=k?.id||`${V}-label`,K=v&&y.jsx(p3,{labelElement:$,id:W,htmlFor:G,required:B,...M,...k,children:v},"label"),Q=Y&&y.jsx(d3,{...C,...M,size:C?.size||M.size,id:C?.id||q,children:x},"description"),ae=y.jsx(S.Fragment,{children:f(z)},"input"),te=U&&S.createElement(u3,{..._,...M,size:_?.size||M.size,key:"error",id:_?.id||F},w),re=g.map(ue=>{switch(ue){case"label":return K;case"input":return ae;case"description":return Q;case"error":return te;default:return null}});return y.jsx(cDe,{value:{getStyles:H,describedBy:O,inputId:G,labelId:W,...hDe(g,{hasDescription:Y,hasError:U})},children:y.jsx(Se,{ref:r,variant:u,size:d,mod:[{error:!!w},I],...H("root"),...L,children:re})})});hS.classes=si,hS.displayName="@mantine/core/InputWrapper";const gDe={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},yDe=(e,r,n)=>({wrapper:{"--input-margin-top":n.offsetTop?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-margin-bottom":n.offsetBottom?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-height":dr(r.size,"input-height"),"--input-fz":Eo(r.size),"--input-radius":r.radius===void 0?void 0:wn(r.radius),"--input-left-section-width":r.leftSectionWidth!==void 0?$e(r.leftSectionWidth):void 0,"--input-right-section-width":r.rightSectionWidth!==void 0?$e(r.rightSectionWidth):void 0,"--input-padding-y":r.multiline?dr(r.size,"input-padding-y"):void 0,"--input-left-section-pointer-events":r.leftSectionPointerEvents,"--input-right-section-pointer-events":r.rightSectionPointerEvents}}),Ra=Jn((e,r)=>{const n=Me("Input",gDe,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:T,variant:A,vars:R,pointer:j,multiline:I,radius:P,id:L,withAria:H,withErrorStyles:M,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:Z,rest:O}=qH(Y),W=c3(),K={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=kt({name:["Input",d],props:u||n,classes:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:K,rootSelector:"wrapper",vars:R,varsResolver:yDe}),ae=H?{required:c,disabled:v,"aria-invalid":!!g,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=sDe({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(aDe,{value:{size:p||"sm"},children:y.jsxs(Se,{...Q("wrapper"),...Z,...f,mod:[{error:!!g&&M,pointer:j,disabled:v,multiline:I,"data-with-right-section":!!te,"data-with-left-section":!!w},V],variant:A,size:p,children:[w&&y.jsx("div",{...x,"data-position":"left",...Q("section",{className:x?.className,style:x?.style}),children:w}),y.jsx(Se,{component:"input",...O,...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})]})})});Ra.classes=si,Ra.Wrapper=hS,Ra.Label=p3,Ra.Error=u3,Ra.Description=d3,Ra.Placeholder=pS,Ra.ClearButton=CW,Ra.displayName="@mantine/core/Input";const vDe={gap:{type:"spacing",property:"gap"},rowGap:{type:"spacing",property:"rowGap"},columnGap:{type:"spacing",property:"columnGap"},align:{type:"identity",property:"alignItems"},justify:{type:"identity",property:"justifyContent"},wrap:{type:"identity",property:"flexWrap"},direction:{type:"identity",property:"flexDirection"}};var zW={root:"m_8bffd616"};const Js=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:zW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=lo(),$=Bw(),z=WH({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w},theme:_,data:vDe});return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(Pw,{selector:`.${$}`,styles:z.styles,media:z.media}),y.jsx(Se,{ref:r,...C("root",{className:$,style:yf(z.inlineStyles)}),...k})]})});Js.classes=zW,Js.displayName="@mantine/core/Flex";function bDe(e,r){if(!r||!e)return!1;let n=r.parentNode;for(;n!=null;){if(n===e)return!0;n=n.parentNode}return!1}function xDe({target:e,parent:r,ref:n,displayAfterTransitionEnd:o}){const 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=xd(w.borderTopWidth)+xd(x.borderTopWidth),C=xd(w.borderLeftWidth)+xd(x.borderLeftWidth),_={top:g.top-v.top-k,left:g.left-v.left-C,width:g.width,height:g.height};n.current.style.transform=`translateY(${_.top}px) translateX(${_.left}px)`,n.current.style.width=`${_.width}px`,n.current.style.height=`${_.height}px`},u=()=>{window.clearTimeout(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=>{bDe(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",g),()=>{r.removeEventListener("transitionend",g)}}},[r]),CH(()=>{CRe()!=="test"&&l(!0)},20,{autoInvoke:!0}),$H(g=>{g.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:i,hidden:s}}var RW={root:"m_96b553a6"};const wDe=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),h3=ot((e,r)=>{const n=Me("FloatingIndicator",null,e),{classNames:o,className: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:RW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:wDe}),k=S.useRef(null),{initialized:C,hidden:_}=xDe({target:d,parent:u,ref:k,displayAfterTransitionEnd:g}),$=$r(r,k);return!d||!u?null:y.jsx(Se,{ref:$,mod:[{initialized:C,hidden:_},f],...x("root"),...w})});h3.displayName="@mantine/core/FloatingIndicator",h3.classes=RW;function TW({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 fS({style:e,size:r=16,...n}){return y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...e,width:$e(r),height:$e(r),display:"block"},...n,children:y.jsx("path",{d:"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}fS.displayName="@mantine/core/AccordionChevron";var jW={root:"m_66836ed3",wrapper:"m_a5d60502",body:"m_667c2793",title:"m_6a03f287",label:"m_698f4f23",icon:"m_667f2a6a",message:"m_7fa78076",closeButton:"m_87f54839"};const kDe=(e,{radius:r,color:n,variant:o,autoContrast: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}}},f3=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,...T}=n,A=kt({name:"Alert",classes:jW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:kDe}),R=oi(g),j=p&&`${R}-title`||void 0,I=`${R}-body`;return y.jsx(Se,{id:R,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...T,"aria-describedby":f?I:void 0,"aria-labelledby":p?j:void 0,children:y.jsxs("div",{...A("wrapper"),children:[v&&y.jsx("div",{...A("icon"),children:v}),y.jsxs("div",{...A("body"),children:[p&&y.jsx("div",{...A("title"),"data-with-close-button":w||void 0,children:y.jsx("span",{id:j,...A("label"),children:p})}),f&&y.jsx("div",{id:I,...A("message"),"data-variant":C,children:f})]}),w&&y.jsx(lp,{...A("closeButton"),onClick:x,variant:"transparent",size:16,iconSize:16,"aria-label":k,unstyled:s})]})})});f3.classes=jW,f3.displayName="@mantine/core/Alert";var AW={root:"m_b6d8b162"};function _De(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const SDe={inherit:!1},EDe=(e,{variant:r,lineClamp:n,gradient:o,size:a,color:i})=>({root:{"--text-fz":Eo(a),"--text-lh":Vze(a),"--text-gradient":r==="gradient"?k9(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":i?Ca(i,e):void 0}}),at=Jn((e,r)=>{const n=Me("Text",SDe,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:AW,className:p,style:f,classNames:g,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:EDe});return y.jsx(Se,{...z("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":_De(a),"data-line-clamp":typeof o=="number","data-inline":i,"data-inherit":l},k],size:C,...$})});at.classes=AW,at.displayName="@mantine/core/Text";var DW={root:"m_849cf0da"};const CDe={underline:"hover"},mS=Jn((e,r)=>{const{underline:n,className:o,unstyled:a,mod:i,...l}=Me("Anchor",CDe,e);return y.jsx(at,{component:"a",ref:r,className:el({[DW.root]:!a},o),...l,mod:[{underline:n},i],__staticSelector:"Anchor",unstyled:a})});mS.classes=DW,mS.displayName="@mantine/core/Anchor";var ci={dropdown:"m_88b62a41",search:"m_985517d8",options:"m_b2821a6e",option:"m_92253aa5",empty:"m_2530cd1d",header:"m_858f94bd",footer:"m_82b967cb",group:"m_254f3e4f",groupLabel:"m_2bb2e9e5",chevron:"m_2943220b",optionsDropdownOption:"m_390b5f4",optionsDropdownCheckIcon:"m_8ee53fc2",optionsDropdownCheckPlaceholder:"m_a530ee0a"};const $De={error:null},zDe=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":dr(r,"combobox-chevron-size"),"--combobox-chevron-color":n?Ca(n,e):void 0}}),gS=ot((e,r)=>{const n=Me("ComboboxChevron",$De,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:ci,props:n,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:zDe,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"})})});gS.classes=ci,gS.displayName="@mantine/core/ComboboxChevron";const[RDe,di]=ni("Combobox component was not found in tree"),MW=S.forwardRef(({size:e,onMouseDown:r,onClick:n,onClear:o,...a},i)=>y.jsx(Ra.ClearButton,{ref:i,tabIndex:-1,"aria-hidden":!0,...a,onMouseDown:l=>{l.preventDefault(),r?.(l)},onClick:l=>{o(),n?.(l)}}));MW.displayName="@mantine/core/ComboboxClearButton";const m3=ot((e,r)=>{const{classNames:n,styles:o,className:a,style:i,hidden:l,...s}=Me("ComboboxDropdown",null,e),c=di();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})})});m3.classes=ci,m3.displayName="@mantine/core/ComboboxDropdown";const TDe={refProp:"ref"},NW=ot((e,r)=>{const{children:n,refProp:o}=Me("ComboboxDropdownTarget",TDe,e);if(di(),!Sw(n))throw new Error("Combobox.DropdownTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return y.jsx(br.Target,{ref:r,refProp:o,children:n})});NW.displayName="@mantine/core/ComboboxDropdownTarget";const fy=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxEmpty",null,e),c=di();return y.jsx(Se,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:i,style:a}),...s})});fy.classes=ci,fy.displayName="@mantine/core/ComboboxEmpty";function yS({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:a,autoComplete:i}){const l=di(),[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 jDe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},PW=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxEventsTarget",jDe,e),u=gd(n);if(!u)throw new Error("Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=di(),f=yS({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c});return S.cloneElement(u,{...f,...d,[o]:$r(r,p.store.targetRef,zw(u))})});PW.displayName="@mantine/core/ComboboxEventsTarget";const vS=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxFooter",null,e),c=di();return y.jsx(Se,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});vS.classes=ci,vS.displayName="@mantine/core/ComboboxFooter";const bS=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=di(),f=oi(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]})});bS.classes=ci,bS.displayName="@mantine/core/ComboboxGroup";const xS=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxHeader",null,e),c=di();return y.jsx(Se,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});xS.classes=ci,xS.displayName="@mantine/core/ComboboxHeader";function BW({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}BW.displayName="@mantine/core/ComboboxHiddenInput";const my=ot((e,r)=>{const n=Me("ComboboxOption",null,e),{classNames:o,className: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=di(),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?.($)}})});my.classes=ci,my.displayName="@mantine/core/ComboboxOption";const g3=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=di(),f=oi(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)}})});g3.classes=ci,g3.displayName="@mantine/core/ComboboxOptions";const ADe={withAriaAttributes:!0,withKeyboardNavigation:!0},wS=ot((e,r)=>{const n=Me("ComboboxSearch",ADe,e),{classNames:o,styles:a,unstyled:i,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=di(),g=f.getStyles("search"),v=yS({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(Ra,{ref:$r(r,f.store.searchRef),classNames:[{input:g.className},o],styles:[{input:g.style},a],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});wS.classes=ci,wS.displayName="@mantine/core/ComboboxSearch";const DDe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},kS=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxTarget",DDe,e),u=gd(n);if(!u)throw new Error("Combobox.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=di(),f=yS({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c}),g=S.cloneElement(u,{...f,...d});return y.jsx(br.Target,{ref:$r(r,p.store.targetRef),children:g})});kS.displayName="@mantine/core/ComboboxTarget";function MDe(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o}return e}function NDe(e,r,n){for(let o=e+1;o{s||(c(!0),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=md(f.current),F=Rw(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=md(f.current),q=Rw(`#${d.current}`,F),G=q?fd("[data-combobox-option]",q):null;if(!G)return null;const U=B>=G.length?0:B<0?G.length-1:B;return u.current=U,G?.[U]&&!G[U].hasAttribute("data-combobox-disabled")?(_(),G[U].setAttribute("data-combobox-selected","true"),G[U].setAttribute("aria-selected","true"),G[U].scrollIntoView({block:"nearest",behavior:l}),G[U].id):null},[l,_]),z=S.useCallback(()=>{const B=md(f.current),F=Rw(`#${d.current} [data-combobox-active]`,B);if(F){const q=fd(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),T=S.useCallback(()=>{const B=md(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(NDe(u.current,F,i))},[$,i]),A=S.useCallback(()=>{const B=md(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(MDe(u.current,F,i))},[$,i]),R=S.useCallback(()=>{const B=md(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(PDe(F))},[$]),j=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=md(f.current),G=fd(`#${d.current} [data-combobox-option]`,q),U=G.findIndex(Y=>Y.hasAttribute(`data-combobox-${B}`));u.current=U,F?.scrollIntoView&&G[U]?.scrollIntoView({block:"nearest",behavior:l})},0)},[]),I=S.useCallback(()=>{u.current=-1,_()},[_]),P=S.useCallback(()=>{const B=md(f.current);fd(`#${d.current} [data-combobox-option]`,B)?.[u.current]?.click()},[]),L=S.useCallback(B=>{d.current=B},[]),H=S.useCallback(()=>{g.current=window.setTimeout(()=>p.current?.focus(),0)},[]),M=S.useCallback(()=>{v.current=window.setTimeout(()=>f.current?.focus(),0)},[]),V=S.useCallback(()=>u.current,[]);return S.useEffect(()=>()=>{window.clearTimeout(g.current),window.clearTimeout(v.current),window.clearTimeout(w.current)},[]),{dropdownOpened:s,openDropdown:x,closeDropdown:k,toggleDropdown:C,selectedOptionIndex:u.current,getSelectedOptionIndex:V,selectOption:$,selectFirstOption:R,selectActiveOption:z,selectNextOption:T,selectPreviousOption:A,resetSelectedOption:I,updateSelectedOptionIndex:j,listId:d.current,setListId:L,clickSelectedOption:P,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:M}}const BDe={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},IDe=(e,{size:r,dropdownPadding:n})=>({options:{"--combobox-option-fz":Eo(r),"--combobox-option-padding":dr(r,"combobox-option-padding")},dropdown:{"--combobox-padding":n===void 0?void 0:$e(n),"--combobox-option-fz":Eo(r),"--combobox-option-padding":dr(r,"combobox-option-padding")}});function eo(e){const r=Me("Combobox",BDe,e),{classNames:n,styles:o,unstyled: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=IW(),C=l||k,_=kt({name:g||"Combobox",classes:ci,props:r,classNames:n,styles:o,unstyled:a,attributes:w,vars:s,varsResolver:IDe}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(RDe,{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 ODe=e=>e;eo.extend=ODe,eo.classes=ci,eo.displayName="@mantine/core/Combobox",eo.Target=kS,eo.Dropdown=m3,eo.Options=g3,eo.Option=my,eo.Search=wS,eo.Empty=fy,eo.Chevron=gS,eo.Footer=vS,eo.Header=xS,eo.EventsTarget=PW,eo.DropdownTarget=NW,eo.Group=bS,eo.ClearButton=MW,eo.HiddenInput=BW;function OW({size:e,style:r,...n}){const o=e!==void 0?{width:$e(e),height:$e(e),...r}:r;return y.jsx("svg",{viewBox:"0 0 10 7",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:o,"aria-hidden":!0,...n,children:y.jsx("path",{d:"M4 4.586L1.707 2.293A1 1 0 1 0 .293 3.707l3 3a.997.997 0 0 0 1.414 0l5-5A1 1 0 1 0 8.293.293L4 4.586z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}var LW={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const LDe=(e,{radius:r,color:n,gradient:o,variant: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"?Ca(n,e):void 0}}},ec=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,T=kt({name:"Badge",props:n,classes:LW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:LDe});return y.jsxs(Se,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!g,"with-left-section":!!f},_],...T("root",{variant:w}),ref:r,...z,children:[f&&y.jsx("span",{...T("section"),"data-position":"left",children:f}),y.jsx("span",{...T("label"),children:v}),g&&y.jsx("span",{...T("section"),"data-position":"right",children:g})]})});ec.classes=LW,ec.displayName="@mantine/core/Badge";var FW={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const FDe={separator:"/"},VDe=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":Gs(r)}}),y3=ot((e,r)=>{const n=Me("Breadcrumbs",FDe,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,separator:u,separatorMargin:p,attributes:f,...g}=n,v=kt({name:"Breadcrumbs",classes:FW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:VDe}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=Sw(k)?S.cloneElement(k,{...v("breadcrumb",{className:k.props?.className}),key:C}):S.createElement("div",{...v("breadcrumb"),key:C},k);return x.push($),C!==_.length-1&&x.push(S.createElement(Se,{...v("separator"),key:`separator-${C}`},u)),x},[]);return y.jsx(Se,{ref:r,...v("root"),...g,children:w})});y3.classes=FW,y3.displayName="@mantine/core/Breadcrumbs";var Pf={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const VW={orientation:"horizontal"},qDe=(e,{borderWidth:r})=>({group:{"--button-border-width":$e(r)}}),_S=ot((e,r)=>{const n=Me("ButtonGroup",VW,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Me("ButtonGroup",VW,e),w=kt({name:"ButtonGroup",props:n,classes:Pf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:qDe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});_S.classes=Pf,_S.displayName="@mantine/core/ButtonGroup";const HDe=(e,{radius:r,color:n,gradient:o,variant: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}}},SS=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:Pf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:HDe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});SS.classes=Pf,SS.displayName="@mantine/core/ButtonGroupSection";const UDe={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${$e(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},WDe=(e,{radius:r,color:n,gradient:o,variant: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:T,attributes:A,...R}=n,j=kt({name:"Button",props:n,classes:Pf,className:i,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:a,varsResolver:WDe}),I=!!d,P=!!u;return y.jsxs(pr,{ref:r,...j("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":I,"with-right-section":P},T],...R,children:[typeof v=="boolean"&&y.jsx(wd,{mounted:v,transition:UDe,duration:150,children:L=>y.jsx(Se,{component:"span",...j("loader",{style:L}),"aria-hidden":!0,children:y.jsx(Mf,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...j("inner"),children:[d&&y.jsx(Se,{component:"span",...j("section"),mod:{position:"left"},children:d}),y.jsx(Se,{component:"span",mod:{loading:v},...j("label"),children:c}),u&&y.jsx(Se,{component:"span",...j("section"),mod:{position:"right"},children:u})]})]})});Vn.classes=Pf,Vn.displayName="@mantine/core/Button",Vn.Group=_S,Vn.GroupSection=SS;const[GDe,YDe]=ni("Card component was not found in tree");var ES={root:"m_e615b15f",section:"m_599a2148"};const v3=Jn((e,r)=>{const n=Me("CardSection",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,withBorder:c,inheritPadding:d,mod:u,...p}=n,f=YDe();return y.jsx(Se,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:a,style:i,styles:l,classNames:o}),...p})});v3.classes=ES,v3.displayName="@mantine/core/CardSection";const XDe=(e,{padding:r})=>({root:{"--card-padding":Gs(r)}}),b3=Jn((e,r)=>{const n=Me("Card",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,padding:u,attributes:p,...f}=n,g=kt({name:"Card",props:n,classes:ES,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:XDe}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===v3?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(GDe,{value:{getStyles:g},children:y.jsx(Af,{ref:r,unstyled:s,...g("root"),...f,children:w})})});b3.classes=ES,b3.displayName="@mantine/core/Card",b3.Section=v3;var qW={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const HW={withShadow:!0},ZDe=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:wn(r),"--cs-size":$e(n)}}),gy=Jn((e,r)=>{const n=Me("ColorSwatch",HW,e),{classNames:o,className: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",HW,n),k=kt({name:"ColorSwatch",props:n,classes:qW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:ZDe});return y.jsxs(Se,{ref:r,variant:v,size:u,...k("root",{focusable:!0}),...x,children:[y.jsx("span",{...k("alphaOverlay")}),f&&y.jsx("span",{...k("shadowOverlay")}),y.jsx("span",{...k("colorOverlay",{style:{backgroundColor:d}})}),y.jsx("span",{...k("childrenOverlay"),children:g})]})});gy.classes=qW,gy.displayName="@mantine/core/ColorSwatch";const KDe={timeout:1e3};function UW(e){const{children:r,timeout:n,value:o,...a}=Me("CopyButton",KDe,e),i=Gze({timeout:n});return y.jsx(y.Fragment,{children:r({copy:()=>i.copy(o),copied:i.copied,...a})})}UW.displayName="@mantine/core/CopyButton";var WW={root:"m_3eebeb36",label:"m_9e365f20"};const QDe={orientation:"horizontal"},JDe=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?Ca(r,e):void 0,"--divider-border-style":n,"--divider-size":dr(o,"divider-size")}}),sp=ot((e,r)=>{const n=Me("Divider",QDe,e),{classNames:o,className: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:WW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:JDe});return y.jsx(Se,{ref:r,mod:[{orientation:u,"with-label":!!p},g],...x("root"),...w,role:"separator",children:p&&y.jsx(Se,{component:"span",mod:{position:f},...x("label"),children:p})})});sp.classes=WW,sp.displayName="@mantine/core/Divider";const[GW,YW]=ni("Grid component was not found in tree"),CS=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,XW=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":CS(e,r),ZW=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},KW=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function eMe({span:e,order:r,offset:n,selector:o}){const a=lo(),i=YW(),l=i.breakpoints||a.breakpoints,s=iy(e)===void 0?12:iy(e),c=yf({"--col-order":iy(r)?.toString(),"--col-flex-grow":ZW(s,i.grow),"--col-flex-basis":CS(s,i.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":XW(s,i.columns,i.grow),"--col-offset":KW(iy(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"]=ZW(e[f],i.grow),p[f]["--col-flex-basis"]=CS(e[f],i.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=XW(e[f],i.columns,i.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=KW(n[f],i.columns)),p),{}),u=pH(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(Pw,{styles:c,media:i.type==="container"?void 0:u,container:i.type==="container"?u:void 0,selector:o})}var $S={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const tMe={span:12},cp=ot((e,r)=>{const n=Me("GridCol",tMe,e),{classNames:o,className:a,style:i,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=YW(),g=Bw();return y.jsxs(y.Fragment,{children:[y.jsx(eMe,{selector:`.${g}`,span:c,order:d,offset:u}),y.jsx(Se,{ref:r,...f.getStyles("col",{className:el(a,g),style:i,classNames:o,styles:l}),...p})]})});cp.classes=$S,cp.displayName="@mantine/core/GridCol";function QW({gutter:e,selector:r,breakpoints:n,type:o}){const a=lo(),i=n||a.breakpoints,l=yf({"--grid-gutter":Gs(iy(e))}),s=So(i).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--grid-gutter"]=Gs(e[u])),d),{}),c=pH(So(s),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(Pw,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const rMe={gutter:"md",grow:!1,columns:12},nMe=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),yy=ot((e,r)=>{const n=Me("Grid",rMe,e),{classNames:o,className: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:$S,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:nMe}),$=Bw();return x==="container"&&w?y.jsxs(GW,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(QW,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(GW,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(QW,{selector:`.${$}`,...n}),y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});yy.classes=$S,yy.displayName="@mantine/core/Grid",yy.Col=cp;function JW({color:e,theme:r,defaultShade:n}){const o=vd({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var eG={root:"m_bcb3f3c2"};const oMe={color:"yellow"},aMe=(e,{color:r})=>({root:{"--mark-bg-dark":JW({color:r,theme:e,defaultShade:5}),"--mark-bg-light":JW({color:r,theme:e,defaultShade:2})}}),zS=ot((e,r)=>{const n=Me("Mark",oMe,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:eG,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:aMe});return y.jsx(Se,{component:"mark",ref:r,variant:u,...g("root"),...f})});zS.classes=eG,zS.displayName="@mantine/core/Mark";function tG(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function iMe(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(tG):tG(r);if(!(Array.isArray(n)?n.filter(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 tc=Jn((e,r)=>{const{unstyled:n,children:o,highlight:a,highlightStyles:i,color:l,...s}=Me("Highlight",null,e),c=iMe(o,a);return y.jsx(at,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(zS,{unstyled:n,color:l,style:i,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});tc.classes=at.classes,tc.displayName="@mantine/core/Highlight";const[lMe,rG]=ni("HoverCard component was not found in the tree"),nG=S.createContext(!1),sMe=nG.Provider,RS=()=>S.useContext(nG);function TS(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...a}=Me("HoverCardDropdown",null,e),i=rG();if(RS()&&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})}TS.displayName="@mantine/core/HoverCardDropdown";const cMe={openDelay:0,closeDelay:0};function jS(e){const{openDelay:r,closeDelay:n,children:o}=Me("HoverCardGroup",cMe,e);return y.jsx(sMe,{value:!0,children:y.jsx(VU,{delay:{open:r,close:n},children:o})})}jS.displayName="@mantine/core/HoverCardGroup",jS.extend=e=>e;const dMe={refProp:"ref"},AS=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:a,...i}=Me("HoverCardTarget",dMe,e),l=gd(n);if(!l)throw new Error("HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=rG();if(RS()&&s.getReferenceProps&&s.reference){const p=s.getReferenceProps();return y.jsx(br.Target,{refProp:o,ref:r,...i,children:S.cloneElement(l,a?{[a]:{...p,ref:s.reference}}:{...p,ref:s.reference})})}const c=kn(l.props.onMouseEnter,s.openDropdown),d=kn(l.props.onMouseLeave,s.closeDropdown),u={onMouseEnter:c,onMouseLeave:d};return y.jsx(br.Target,{refProp:o,ref:r,...i,children:S.cloneElement(l,a?{[a]:u}:u)})});AS.displayName="@mantine/core/HoverCardTarget";function uMe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=RS(),i=oi(),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}=t3({open:o,onOpenChange:d}),{delay:f,setCurrentId:g}=qU(u,{id:i}),{getReferenceProps:v,getFloatingProps:w}=WU([LU(u,{enabled:!0,delay:a?f:{open:e.openDelay,close:e.closeDelay}}),GU(u,{role:"dialog"}),UU(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 pMe={openDelay:0,closeDelay:150,initiallyOpened:!1};function Bf(e){const{children:r,onOpen:n,onClose:o,openDelay:a,closeDelay:i,initiallyOpened:l,...s}=Me("HoverCard",pMe,e),c=uMe({openDelay:a,closeDelay:i,defaultOpened:l,onOpen:n,onClose:o});return y.jsx(lMe,{value:{openDropdown:c.openDropdown,closeDropdown:c.closeDropdown,getReferenceProps:c.getReferenceProps,getFloatingProps:c.getFloatingProps,reference:c.reference,floating:c.floating},children:y.jsx(br,{...s,opened:c.opened,__staticSelector:"HoverCard",children:r})})}Bf.displayName="@mantine/core/HoverCard",Bf.Target=AS,Bf.Dropdown=TS,Bf.Group=jS,Bf.extend=e=>e;var hMe=S.useLayoutEffect;const[fMe,_d]=ni("Menu component was not found in the tree");var Sd={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const DS=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("MenuDivider",null,e),c=_d();return y.jsx(Se,{ref:r,...c.getStyles("divider",{className:o,style:a,styles:i,classNames:n}),...s})});DS.classes=Sd,DS.displayName="@mantine/core/MenuDivider";const vy=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=_d(),v=kn(d,k=>{(k.key==="ArrowUp"||k.key==="ArrowDown")&&(k.preventDefault(),f.current?.querySelectorAll("[data-menu-item]:not(:disabled)")[0]?.focus())}),w=kn(s,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.openDropdown()),x=kn(c,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.closeDropdown());return y.jsxs(br.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:$r(r,f),...g.getStyles("dropdown",{className:o,style: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]})});vy.classes=Sd,vy.displayName="@mantine/core/MenuDropdown";const[mMe,x3]=oy(),by=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=_d(),x=x3(),k=lo(),{dir:C}=bd(),_=S.useRef(null),$=v,z=kn($.onClick,()=>{g||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),T=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?vd({color:s,theme:k}):null,R=kn($.onKeyDown,j=>{j.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(pr,{onMouseDown:j=>j.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style: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:ay({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)`:T?.color,"--menu-item-hover":T?.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})]})});by.classes=Sd,by.displayName="@mantine/core/MenuItem";const MS=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("MenuLabel",null,e),c=_d();return y.jsx(Se,{ref:r,...c.getStyles("label",{className:o,style:a,styles:i,classNames:n}),...s})});MS.classes=Sd,MS.displayName="@mantine/core/MenuLabel";const NS=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=_d(),v=x3(),w=kn(s,v?.open),x=kn(c,v?.close);return y.jsx(br.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:$r(r,f),...g.getStyles("dropdown",{className:o,style:a,styles:i,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});NS.classes=Sd,NS.displayName="@mantine/core/MenuSubDropdown";const PS=Jn((e,r)=>{const{classNames:n,className:o,style: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=_d(),x=x3(),k=lo(),{dir:C}=bd(),_=S.useRef(null),$=v,z=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,T=s?vd({color:s,theme:k}):null,A=kn($.onKeyDown,P=>{P.key==="ArrowRight"&&(x?.open(),x?.focusFirstItem()),P.key==="ArrowLeft"&&x?.parentContext&&(x.parentContext.close(),x.parentContext.focusParentItem())}),R=kn($.onClick,()=>{!f&&g&&w.closeDropdownImmediately()}),j=kn($.onMouseEnter,x?.open),I=kn($.onMouseLeave,x?.close);return y.jsxs(pr,{onMouseDown:P=>P.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style: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:j,onMouseLeave:I,onClick:R,onKeyDown:ay({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:A}),__vars:{"--menu-item-color":T?.isThemeColor&&T?.shade===void 0?`var(--mantine-color-${T.color}-6)`: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(fS,{...w.getStyles("chevron"),size:14})})]})});PS.classes=Sd,PS.displayName="@mantine/core/MenuSubItem";function oG({children:e,refProp:r}){if(!Sw(e))throw new Error("Menu.Sub.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return _d(),y.jsx(br.Target,{refProp:r,popupType:"menu",children:e})}oG.displayName="@mantine/core/MenuSubTarget";const gMe={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function If(e){const{children:r,closeDelay:n,openDelay:o,...a}=Me("MenuSub",gMe,e),i=oi(),[l,{open:s,close:c}]=xRe(!1),d=x3(),{openDropdown:u,closeDropdown:p}=TW({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(mMe,{value:{opened:l,close:p,open:u,focusFirstItem:()=>window.setTimeout(()=>{document.getElementById(`${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})})}If.extend=e=>e,If.displayName="@mantine/core/MenuSub",If.Target=oG,If.Dropdown=NS,If.Item=PS;const yMe={refProp:"ref"},w3=S.forwardRef((e,r)=>{const{children:n,refProp:o,...a}=Me("MenuTarget",yMe,e),i=gd(n);if(!i)throw new Error("Menu.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const l=_d(),s=i.props,c=kn(s.onClick,()=>{l.trigger==="click"?l.toggleDropdown():l.trigger==="click-hover"&&(l.setOpenedViaClick(!0),l.opened||l.openDropdown())}),d=kn(s.onMouseEnter,()=>(l.trigger==="hover"||l.trigger==="click-hover")&&l.openDropdown()),u=kn(s.onMouseLeave,()=>{(l.trigger==="hover"||l.trigger==="click-hover"&&!l.openedViaClick)&&l.closeDropdown()});return y.jsx(br.Target,{refProp:o,popupType:"menu",ref:r,...a,children:S.cloneElement(i,{onClick:c,onMouseEnter:d,onMouseLeave:u,"data-expanded":l.opened?!0:void 0})})});w3.displayName="@mantine/core/MenuTarget";const vMe={trapFocus:!0,closeOnItemClick:!0,withInitialFocusPlaceholder:!0,clickOutsideEvents:["mousedown","touchstart","keydown"],loop:!0,trigger:"click",openDelay:0,closeDelay:100,menuItemTabIndex:-1};function tn(e){const r=Me("Menu",vMe,e),{children:n,onOpen:o,onClose: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:T,attributes:A,...R}=r,j=kt({name:"Menu",classes:Sd,props:r,classNames:w,styles:x,unstyled:k,attributes:A}),[I,P]=Ys({value:i,defaultValue:l,finalValue:!1,onChange:c}),[L,H]=S.useState(!1),M=()=>{P(!1),H(!1),I&&a?.()},V=()=>{P(!0),!I&&o?.()},B=()=>{I?M():V()},{openDropdown:F,closeDropdown:q}=TW({open:V,close:M,closeDelay:v,openDelay:g}),G=Z=>Hze("[data-menu-item]","[data-menu-dropdown]",Z),{resolvedClassNames:U,resolvedStyles:Y}=T9({classNames:w,styles:x,props:r});return y.jsx(fMe,{value:{getStyles:j,opened:I,toggleDropdown:B,getItemIndex:G,openedViaClick:L,setOpenedViaClick:H,closeOnItemClick:d,closeDropdown:f==="click"?M:q,openDropdown:f==="click"?V:F,closeDropdownImmediately:M,loop:u,trigger:f,unstyled:k,menuItemTabIndex:$,withInitialFocusPlaceholder:T},children:y.jsx(br,{returnFocus:!0,...R,opened:I,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=PTe(tn),tn.classes=Sd,tn.displayName="@mantine/core/Menu",tn.Item=by,tn.Label=MS,tn.Dropdown=vy,tn.Target=w3,tn.Divider=DS,tn.Sub=If;const[Ywt,aG]=oy(),[bMe,xMe]=oy();var k3={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const wMe=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?dr(r):dr(n,"pg-gap")}}),BS=ot((e,r)=>{const n=Me("PillGroup",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,disabled:u,attributes:p,...f}=n,g=aG()?.size||d||void 0,v=kt({name:"PillGroup",classes:k3,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:wMe,stylesCtx:{size:g},rootSelector:"group"});return y.jsx(bMe,{value:{size:g,disabled:u},children:y.jsx(Se,{ref:r,size:g,...v("group"),...f})})});BS.classes=k3,BS.displayName="@mantine/core/PillGroup";const kMe={variant:"default"},_Me=(e,{radius:r},{size:n})=>({root:{"--pill-fz":dr(n,"pill-fz"),"--pill-height":dr(n,"pill-height"),"--pill-radius":r===void 0?void 0:wn(r)}}),_3=ot((e,r)=>{const n=Me("Pill",kMe,e),{classNames:o,className: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,$=xMe(),z=aG(),T=w||$?.size||void 0,A=z?.variant==="filled"?"contrast":d||"default",R=kt({name:"Pill",classes:k3,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:_Me,stylesCtx:{size:T}});return y.jsxs(Se,{component:"span",ref:r,variant:A,size:T,...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:j=>{j.preventDefault(),j.stopPropagation(),g?.onMouseDown?.(j)},onClick:j=>{j.stopPropagation(),f?.(),g?.onClick?.(j)}})]})});_3.classes=k3,_3.displayName="@mantine/core/Pill",_3.Group=BS;var iG={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const SMe=(e,{variant:r,color:n,childrenOffset:o,autoContrast: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":Gs(o)}}},IS=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:T,mod:A,attributes:R,onClick:j,onKeyDown:I,...P}=n,L=kt({name:"NavLink",props:n,classes:iG,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:SMe}),[H,M]=Ys({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{j?.(F),V&&(F.preventDefault(),M(!H))};return y.jsxs(y.Fragment,{children:[y.jsxs(pr,{...L("root"),component:"a",ref:r,onClick:B,onKeyDown:F=>{I?.(F),F.nativeEvent.code==="Space"&&V&&(F.preventDefault(),M(!H))},unstyled:s,mod:[{disabled:v,active:g,expanded:H},A],...P,children:[w&&y.jsx(Se,{component:"span",...L("section"),mod:{position:"left"},children:w}),y.jsxs(Se,{...L("body"),mod:{"no-wrap":$},children:[y.jsx(Se,{component:"span",...L("label"),children:k}),y.jsx(Se,{component:"span",mod:{active:g},...L("description"),children:C})]}),(V||x!==void 0)&&y.jsx(Se,{...L("section"),component:"span",mod:{rotate:H&&!_,position:"right"},children:V?x!==void 0?x:y.jsx(fS,{...L("chevron")}):x})]}),V&&y.jsx(QH,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});IS.classes=iG,IS.displayName="@mantine/core/NavLink";var lG={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const EMe={withCloseButton:!0},CMe=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:wn(r),"--notification-color":n?Ca(n,e):void 0}}),xy=ot((e,r)=>{const n=Me("Notification",EMe,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:T,attributes:A,...R}=n,j=kt({name:"Notification",classes:lG,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:CMe});return y.jsxs(Se,{...j("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:T||"alert",...R,children:[u&&!l&&y.jsx("div",{...j("icon"),children:u}),l&&y.jsx(Mf,{size:28,color:a,...z,...j("loader")}),y.jsxs("div",{...j("body"),children:[d&&y.jsx("div",{...j("title"),children:d}),y.jsx(Se,{...j("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(lp,{iconSize:16,color:"gray",...g,unstyled:k,onClick:f,...j("closeButton")})]})});xy.classes=lG,xy.displayName="@mantine/core/Notification";const $Me={duration:100,transition:"fade"};function sG(e,r){return{...$Me,...r,...e}}function zMe({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}=t3({placement:r,middleware:[K9({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=Ks(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 S3={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const RMe={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:Ew("popover")},TMe=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?Ca(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),OS=ot((e,r)=>{const n=Me("TooltipFloating",RMe,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:T,attributes:A,...R}=n,j=lo(),I=kt({name:"TooltipFloating",props:n,classes:S3,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:z,varsResolver:TMe}),{handleMouseMove:P,x:L,y:H,opened:M,boundaryRef:V,floating:B,setOpened:F}=zMe({offset:v,position:w,defaultOpened:_}),q=gd(o);if(!q)throw new Error("[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const G=$r(V,zw(q),r),U=q.props,Y=O=>{U.onMouseEnter?.(O),P(O),F(!0)},Z=O=>{U.onMouseLeave?.(O),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(Df,{...T,withinPortal:i,children:y.jsx(Se,{...R,...I("tooltip",{style:{...N9(l,j),zIndex:k,display:!C&&M?"block":"none",top:(H&&Math.round(H))??"",left:(L&&Math.round(L))??""}}),variant:$,ref:B,mod:{multiline:x},children:g})}),S.cloneElement(q,{...U,[a]:G,onMouseEnter:Y,onMouseLeave:Z})]})});OS.classes=S3,OS.displayName="@mantine/core/TooltipFloating";const cG=S.createContext(!1),jMe=cG.Provider,AMe=()=>S.useContext(cG),DMe={openDelay:0,closeDelay:0};function dp(e){const{openDelay:r,closeDelay:n,children:o}=Me("TooltipGroup",DMe,e);return y.jsx(jMe,{value:!0,children:y.jsx(VU,{delay:{open:r,close:n},children:o})})}dp.displayName="@mantine/core/TooltipGroup",dp.extend=e=>e;function MMe(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function NMe(e){const r=MMe(e.middlewares),n=[TU(e.offset)];return r.shift&&n.push(K9(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?Jw():Jw(r.flip)),n.push(AU({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?uy():uy(r.inline)):e.inline&&n.push(uy()),n}function PMe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=AMe(),i=oi(),l=S.useCallback($=>{n($),$&&x(i)},[i]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:g}={}}}=t3({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:NMe(e),whileElementsMounted:Zw}),{delay:v,currentId:w,setCurrentId:x}=qU(d,{id:i}),{getReferenceProps:k,getFloatingProps:C}=WU([LU(d,{enabled:e.events?.hover,delay:a?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),xAe(d,{enabled:e.events?.focus,visibleOnly:!0}),GU(d,{role:"tooltip"}),UU(d,{enabled:typeof e.opened>"u"})]);wf(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==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 dG={position:"top",refProp:"ref",withinPortal:!0,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:"side",offset:5,transitionProps:{duration:100,transition:"fade"},events:{hover:!0,focus:!1,touch:!1},zIndex:Ew("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},BMe=(e,{radius:r,color:n,variant:o,autoContrast: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",dG,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:T,arrowRadius:A,arrowPosition:R,offset:j,transitionProps:I,multiline:P,events:L,zIndex:H,disabled:M,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:Z,portalProps:O,mod:W,floatingStrategy:K,middlewares:Q,autoContrast:ae,attributes:te,target:re,...ue}=Me("Tooltip",dG,n),{dir:_e}=bd(),ce=S.useRef(null),pe=PMe({position:pW(_e,a),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:T,offset:typeof j=="number"?j+($?z/2:0):j,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:S3,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:Z,varsResolver:BMe}),je=gd(o);if(!re&&!je)return null;if(re){const Le=sG(I,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(Df,{...O,withinPortal:f,children:y.jsx(wd,{...Le,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Se,{...ue,"data-fixed":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(a3,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:T,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})})})}const Be=je.props,Je=$r(pe.reference,zw(je),r),st=sG(I,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(Df,{...O,withinPortal:f,children:y.jsx(wd,{...st,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Se,{...ue,"data-fixed":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(a3,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:T,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})}),S.cloneElement(je,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,...Be,className:el(_,Be.className),[i]:Je}))]})});_n.classes=S3,_n.displayName="@mantine/core/Tooltip",_n.Floating=OS,_n.Group=dp;var uG={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const IMe={withItemsBorders:!0},OMe=(e,{radius:r,color:n,transitionDuration:o,size:a,transitionTimingFunction:i})=>({root:{"--sc-radius":r===void 0?void 0:wn(r),"--sc-color":n?Ca(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)}}),Of=ot((e,r)=>{const n=Me("SegmentedControl",IMe,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:T,variant:A,autoContrast:R,withItemsBorders:j,mod:I,attributes:P,...L}=n,H=kt({name:"SegmentedControl",props:n,classes:uG,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:OMe}),M=lo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=_Re(),[F,q]=S.useState(m9()),[G,U]=S.useState(null),[Y,Z]=S.useState({}),O=(re,ue)=>{Y[ue]=re,Z(Y)},[W,K]=Ys({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=oi(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=>O(ue,re.value),__vars:{"--sc-label-color":$!==void 0?$9({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 hRe(()=>{q(m9())},[d.length]),d.length===0?null:y.jsxs(Se,{...H("root"),variant:A,size:g,ref:te,mod:[{"full-width":k,orientation:C,initialized:B,"with-items-borders":j},I],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(h3,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ae]})});Of.classes=uG,Of.displayName="@mantine/core/SegmentedControl";const[LMe,E3]=ni("SliderProvider was not found in tree"),pG=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:a,radius:i,...l},s)=>{const{getStyles:c}=E3();return y.jsx(Se,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});pG.displayName="@mantine/core/SliderRoot";const hG=S.forwardRef(({max:e,min:r,value:n,position:o,label: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}=E3(),[_,$]=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:T=>{$(!0),typeof p=="function"&&p(T)},onBlur:T=>{$(!1),typeof f=="function"&&f(T)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:T=>T.stopPropagation(),children:[w,y.jsx(wd,{mounted:a!=null&&!!z,transition:"fade",duration:0,...c,children:T=>y.jsx("div",{...C("label",{style:T}),children:a})})]})});hG.displayName="@mantine/core/SliderThumb";function fG({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function FMe({mark:e,offset:r,value:n,inverted:o=!1}){return o?typeof r=="number"&&e.value<=r||e.value>=n:typeof r=="number"?e.value>=r&&e.value<=n:e.value<=n}function mG({marks:e,min:r,max:n,disabled:o,value:a,offset:i,inverted:l}){const{getStyles:s}=E3();if(!e)return null;const c=e.map((d,u)=>S.createElement(Se,{...s("markWrapper"),__vars:{"--mark-offset":`${fG({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Se,{...s("mark"),mod:{filled:FMe({mark:d,value:a,offset:i,inverted:l}),disabled:o}}),d.label&&y.jsx("div",{...s("markLabel"),children:d.label})));return y.jsx("div",{children:c})}mG.displayName="@mantine/core/SliderMarks";function gG({filled:e,children:r,offset:n,disabled:o,marksOffset:a,inverted:i,containerProps:l,...s}){const{getStyles:c}=E3();return y.jsx(Se,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Se,{...c("track"),mod:{inverted: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(mG,{...s,offset:a,disabled:o,inverted:i})]})})}gG.displayName="@mantine/core/SliderTrack";function VMe({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 C3(e,r){return parseFloat(e.toFixed(r))}function qMe(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function LS(e,r){const n=[...r].sort((o,a)=>o.value-a.value).find(o=>o.value>e);return n?n.value:e}function FS(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 vG(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var bG={root:"m_dd36362e",label:"m_c9357328",thumb:"m_c9a9a60a",trackContainer:"m_a8645c2",track:"m_c9ade57f",bar:"m_38aeed47",markWrapper:"m_b7b0423a",mark:"m_dd33bc19",markLabel:"m_68c77a5b"};const HMe={radius:"xl",min:0,max:100,step:1,marks:[],label:e=>e,labelTransitionProps:{transition:"fade",duration:0},thumbLabel:"",showLabelOnHover:!0,scale:e=>e,size:"md"},UMe=(e,{size:r,color:n,thumbSize:o,radius:a})=>({root:{"--slider-size":dr(r,"slider-size"),"--slider-color":n?Ca(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)"}}),VS=ot((e,r)=>{const n=Me("Slider",HMe,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:T,disabled:A,unstyled:R,scale:j,inverted:I,className:P,style:L,vars:H,hiddenInputProps:M,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=kt({name:"Slider",props:n,classes:bG,classNames:o,className:P,styles:a,style:L,attributes:F,vars:H,varsResolver:UMe,unstyled:R}),{dir:U}=bd(),[Y,Z]=S.useState(!1),[O,W]=Ys({value:typeof i=="number"?hd(i,d,u):i,defaultValue:typeof v=="number"?hd(v,d,u):v,finalValue:hd(0,d,u),onChange:l}),K=S.useRef(O),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=fG({value:O,min:re,max:ue}),ce=j(O),pe=typeof k=="function"?k(ce):k,xe=g??qMe(f),je=S.useCallback(({x:Ve})=>{if(!A){const qe=VMe({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=hd(qe,d,u);W(V&&x?.length?TH(Xe,x.map(It=>It.value)):Xe),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?TH(K.current,x.map(qe=>qe.value)):K.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=kH(je,{onScrubEnd:Be},U),Le=S.useCallback(Ve=>{!A&&Q.current&&Q.current(Ve)},[A]),St=Ve=>{if(!A)switch(Ve.key){case"ArrowUp":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=LS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?FS(O,x):LS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(U==="rtl"?O-f:O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=FS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(O-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?LS(O,x):FS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(U==="rtl"?O+f:O-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(yG(x)),Le(yG(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(vG(x)),Le(vG(x));break}W(u),Le(u);break}}};return y.jsx(LMe,{value:{getStyles:G},children:y.jsxs(pG,{...q,ref:$r(r,ae),onKeyDownCapture:St,onMouseDownCapture:()=>ae.current?.focus(),size:c,disabled:A,children:[y.jsx(gG,{inverted:I,offset:0,filled:_e,marks:x,min:re,max:ue,value:ce,disabled:A,containerProps:{ref:Je,onMouseEnter:z?()=>Z(!0):void 0,onMouseLeave:z?()=>Z(!1):void 0},children:y.jsx(hG,{max:ue,min:re,value:ce,position:_e,dragging:st,label:pe,ref:te,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:z,isHovered:Y,disabled:A,...B,children:T})}),y.jsx("input",{type:"hidden",name:w,value:ce,...M})]})})});VS.classes=bG,VS.displayName="@mantine/core/Slider";const qS=ot((e,r)=>{const{w:n,h:o,miw: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})});qS.displayName="@mantine/core/Space";var xG={root:"m_6d731127"};const WMe={gap:"md",align:"stretch",justify:"flex-start"},GMe=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":Gs(r),"--stack-align":n,"--stack-justify":o}}),Lo=ot((e,r)=>{const n=Me("Stack",WMe,e),{classNames:o,className: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:xG,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:GMe});return y.jsx(Se,{ref:r,...w("root"),variant:f,...v})});Lo.classes=xG,Lo.displayName="@mantine/core/Stack";const[YMe,HS]=ni("Tabs component was not found in the tree");var wy={root:"m_89d60db1","list--default":"m_576c9d4",list:"m_89d33d6d",tab:"m_4ec4dce6",panel:"m_b0c91715",tabSection:"m_fc420b1f",tabLabel:"m_42bbd1ae","tab--default":"m_539e827b","list--outline":"m_6772fbd5","tab--outline":"m_b59ab47c","tab--pills":"m_c3381914"};const ky=ot((e,r)=>{const n=Me("TabsList",null,e),{children:o,className:a,grow:i,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=HS();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})});ky.classes=wy,ky.displayName="@mantine/core/TabsList";const rc=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=HS(),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})});rc.classes=wy,rc.displayName="@mantine/core/TabsPanel";const Lf=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:$}=bd(),z=HS(),T=s===z.value,A=j=>{z.onChange(z.allowTabDeactivation&&s===z.value?null:s),c?.(j)},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:T,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":T,tabIndex:k!==void 0?k:T||z.value===null?0:-1,"aria-controls":z.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?Ca(p,_):void 0},onKeyDown:ay({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})]})});Lf.classes=wy,Lf.displayName="@mantine/core/TabsTab";const wG="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",XMe={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},ZMe=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":wn(r),"--tabs-color":Ca(n,e),"--tabs-text-color":fTe(o,e)?$9({color:n,theme:e,autoContrast:o}):void 0}}),up=ot((e,r)=>{const n=Me("Tabs",XMe,e),{defaultValue:o,value: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:T,vars:A,autoContrast:R,mod:j,attributes:I,...P}=n,L=oi(d),[H,M]=Ys({value:a,defaultValue:o,finalValue:null,onChange:i}),V=kt({name:"Tabs",props:n,classes:wy,className:z,style:T,classNames:C,styles:_,unstyled:$,attributes:I,vars:A,varsResolver:ZMe});return y.jsx(YMe,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:cH(`${L}-tab`,wG),getPanelId:cH(`${L}-panel`,wG),onChange:M,allowTabDeactivation:p,variant:f,color:g,radius:v,inverted:w,keepMounted:k,unstyled:$,getStyles:V},children:y.jsx(Se,{ref:r,id:L,variant:f,mod:[{orientation:l,inverted:l==="horizontal"&&w,placement:l==="vertical"&&x},j],...V("root"),...P,children:s})})});up.classes=wy,up.displayName="@mantine/core/Tabs",up.Tab=Lf,up.Panel=rc,up.List=ky;var kG={root:"m_7341320d"};const KMe=(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}}},Ta=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:kG,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:KMe});return y.jsx(Se,{ref:r,...f("root"),...p})});Ta.classes=kG,Ta.displayName="@mantine/core/ThemeIcon";const QMe=["h1","h2","h3","h4","h5","h6"],JMe=["xs","sm","md","lg","xl"];function eNe(e,r){const n=r!==void 0?r:`h${e}`;return QMe.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:JMe.includes(n)?{fontSize:`var(--mantine-font-size-${n})`,fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}:{fontSize:$e(n),fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}}var _G={root:"m_8a5d1357"};const tNe={order:1},rNe=(e,{order:r,size:n,lineClamp:o,textWrap:a})=>{const i=eNe(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}}},pp=ot((e,r)=>{const n=Me("Title",tNe,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:_G,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:rNe});return[1,2,3,4,5,6].includes(c)?y.jsx(Se,{...k("root"),component:`h${c}`,variant:p,ref:r,mod:[{order:c,"data-line-clamp":typeof f=="number"},v],size:u,...x}):null});pp.classes=_G,pp.displayName="@mantine/core/Title";function SG(e,r,n){if(!e||!r)return[];const o=n.indexOf(e),a=n.indexOf(r),i=Math.min(o,a),l=Math.max(o,a);return n.slice(i,l+1)}function US({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(US,{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&&vf(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=vf(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const z=Array.from($.querySelectorAll("[role=treeitem]")),T=z.indexOf(_.currentTarget);if(T===-1)return;const A=_.nativeEvent.code==="ArrowDown"?T+1:T-1;if(z[A]?.focus(),_.shiftKey){const R=z[A];R&&o.setSelectedState(SG(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(SG(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})]})}US.displayName="@mantine/core/TreeNode";function $3(e,r,n=[]){const o=[];for(const a of e)if(Array.isArray(a.children)&&a.children.length>0){const i=$3(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 EG(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=EG(e,n.children);if(o)return o}}return null}function z3(e,r,n=[]){const o=EG(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?z3(a.value,r,n):n.push(a.value)}),n):n}function CG(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...CG(n.children)):r.push(n.value),r),[])}function nNe(e,r,n){return n.length===0?!1:n.includes(e)?!0:$3(r,n).result.some(o=>o.value===e&&o.checked)}const oNe=RH(nNe);function aNe(e,r,n){return n.length===0?!1:$3(r,n).result.some(o=>o.value===e&&o.indeterminate)}const iNe=RH(aNe);function $G(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)&&$G(e,a.children,n,o)}),o}function lNe(e,r){const n=[];return e.forEach(o=>n.push(...z3(o,r))),Array.from(new Set(n))}function _y({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=>$G(F,B,u)),g(F=>lNe(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?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]),T=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!0}),F})},[]),A=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!1}),F})},[]),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])),[]),j=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),I=S.useCallback(B=>{v===B&&w(null),p(F=>F.filter(q=>q!==B))},[]),P=S.useCallback(()=>{p([]),w(null)},[]),L=S.useCallback(B=>{const F=z3(B,l);g(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=z3(B,l);g(q=>q.filter(G=>!F.includes(G)))},[l]),M=S.useCallback(()=>{g(()=>CG(l))},[l]),V=S.useCallback(()=>{g([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:z,expandAllNodes:T,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:M,uncheckAllNodes:V,setCheckedState:g,toggleSelected:R,select:j,deselect:I,clearSelected:P,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>$3(l,f).result,isNodeChecked:B=>oNe(B,l,f),isNodeIndeterminate:B=>iNe(B,l,f)}}var zG={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function RG(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...RG(n.children)),r),[])}const sNe={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},cNe=(e,{levelOffset:r})=>({root:{"--level-offset":Gs(r)}}),Ff=ot((e,r)=>{const n=Me("Tree",sNe,e),{classNames:o,className: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=_y(),T=p||z,A=kt({name:"Tree",classes:zG,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:cNe}),R=hH(()=>v&&T.clearSelected()),j=$r(r,R),I=S.useMemo(()=>RG(d),[d]);S.useEffect(()=>{T.initialize(d)},[d]);const P=d.map((L,H)=>y.jsx(US,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:g,controller:T,renderNode:f,flatValues:I,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Se,{component:"ul",ref:j,...A("root"),...$,role:"tree","aria-multiselectable":T.multiple,"data-tree-root":!0,children:P})});Ff.displayName="@mantine/core/Tree",Ff.classes=zG;const WS=S.createContext(null);function TG(){const e=S.useContext(WS);if(!e)throw new Error("useRootContainer must be used within a RootContainer");return e}function dNe(){return TG().ref}function uNe(){return TG().ref.current}const jG=S.createContext(null);function pNe(){const e=S.useContext(jG);return e===null&&console.warn("ReduceGraphicsMode is not provided"),e??!1}const[hNe,fNe]=ni("PanningAtomSafeCtx is not provided");function mNe({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=Q$e(!1)),f7(()=>{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(hNe,{value:s.current,children:y.jsx(jG.Provider,{value:n,children:y.jsx("div",{id:e,className:Ge("likec4-root",r),ref:l,...n&&{"data-likec4-reduced-graphics":!0},children:a&&!!c.ref.current&&y.jsx(WS.Provider,{value:c,children:o})})})})}const Sy=S.createContext(null),GS=S.createContext(null);function gNe(){return S.useContext(Sy)}function Fo(){const e=S.useContext(Sy);if(!e)throw new Error("LikeC4Model not found. Make sure you have LikeC4ModelProvider.");return e}function yNe(){const e=Fo(),[r,n]=S.useState(e.$data.specification);return S.useEffect(()=>{n(o=>tt(o,e.$data.specification)?o:e.$data.specification)},[e]),r}const AG=S.createContext({}),vNe=Cke,bNe=e=>{const r=e.color;if(GO(e))return` +${d}`}function $9({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n:r.autoContrast)&&vd({color:e||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function IH(e,r){return $9({color:e.colors[e.primaryColor][ly(e,r)],theme:e,autoContrast:null})}function Nw({theme:e,color:r,colorScheme:n,name:o=r,withColorValues:a=!0}){if(!e.colors[r])return{};if(n==="light"){const s=ly(e,"light"),c={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-filled)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${s===9?8:s+1})`,[`--mantine-color-${o}-light`]:_f(e.colors[r][s],.1),[`--mantine-color-${o}-light-hover`]:_f(e.colors[r][s],.12),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline-hover`]:_f(e.colors[r][s],.05)};return 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=ly(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`]:_f(e.colors[r][Math.max(0,i-2)],.15),[`--mantine-color-${o}-light-hover`]:_f(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`]:_f(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 Yze(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function Sf(e,r,n){So(r).forEach(o=>Object.assign(e,{[`--mantine-${n}-${o}`]:r[o]}))}const OH=e=>{const r=ly(e,"light"),n=e.defaultRadius in e.radius?e.radius[e.defaultRadius]:$e(e.defaultRadius),o={variables:{"--mantine-z-index-app":"100","--mantine-z-index-modal":"200","--mantine-z-index-popover":"300","--mantine-z-index-overlay":"400","--mantine-z-index-max":"9999","--mantine-scale":e.scale.toString(),"--mantine-cursor-type":e.cursorType,"--mantine-webkit-font-smoothing":e.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":e.fontSmoothing?"grayscale":"unset","--mantine-color-white":e.white,"--mantine-color-black":e.black,"--mantine-line-height":e.lineHeights.md,"--mantine-font-family":e.fontFamily,"--mantine-font-family-monospace":e.fontFamilyMonospace,"--mantine-font-family-headings":e.headings.fontFamily,"--mantine-heading-font-weight":e.headings.fontWeight,"--mantine-heading-text-wrap":e.headings.textWrap,"--mantine-radius-default":n,"--mantine-primary-color-filled":`var(--mantine-color-${e.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${e.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${e.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${e.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${e.primaryColor}-light-color)`},light:{"--mantine-color-scheme":"light","--mantine-primary-color-contrast":IH(e,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":e.black,"--mantine-color-body":e.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-${r})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)","--mantine-color-disabled":"var(--mantine-color-gray-2)","--mantine-color-disabled-color":"var(--mantine-color-gray-5)","--mantine-color-disabled-border":"var(--mantine-color-gray-3)"},dark:{"--mantine-color-scheme":"dark","--mantine-primary-color-contrast":IH(e,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)","--mantine-color-disabled":"var(--mantine-color-dark-6)","--mantine-color-disabled-color":"var(--mantine-color-dark-3)","--mantine-color-disabled-border":"var(--mantine-color-dark-4)"}};Sf(o.variables,e.breakpoints,"breakpoint"),Sf(o.variables,e.spacing,"spacing"),Sf(o.variables,e.fontSizes,"font-size"),Sf(o.variables,e.lineHeights,"line-height"),Sf(o.variables,e.shadows,"shadow"),Sf(o.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((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(Yze(l)){Object.assign(o.light,Nw({theme:e,name:l.name,color:l.light,colorScheme:"light",withColorValues:!0})),Object.assign(o.dark,Nw({theme:e,name:l.name,color:l.dark,colorScheme:"dark",withColorValues:!0}));return}l.forEach((s,c)=>{o.variables[`--mantine-color-${i}-${c}`]=s}),Object.assign(o.light,Nw({theme:e,color:i,colorScheme:"light",withColorValues:!1})),Object.assign(o.dark,Nw({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 Xze({theme:e,generator:r}){const n=OH(e),o=r?.(e);return o?h9(n,o):n}const R9=OH(_9);function Zze(e){const r={variables:{},light:{},dark:{}};return So(e.variables).forEach(n=>{R9.variables[n]!==e.variables[n]&&(r.variables[n]=e.variables[n])}),So(e.light).forEach(n=>{R9.light[n]!==e.light[n]&&(r.light[n]=e.light[n])}),So(e.dark).forEach(n=>{R9.dark[n]!==e.dark[n]&&(r.dark[n]=e.dark[n])}),r}function Kze(e){return BH({variables:{},dark:{"--mantine-color-scheme":"dark"},light:{"--mantine-color-scheme":"light"}},e)}function LH({cssVariablesSelector:e,deduplicateCssVariables:r}){const n=lo(),o=np(),a=zze(),i=Xze({theme:n,generator:a}),l=(e===void 0||e===":root"||e===":host")&&r,s=l?Zze(i):i,c=BH(s,e);return c?y.jsx("style",{"data-mantine-styles":!0,nonce:o?.(),dangerouslySetInnerHTML:{__html:`${c}${l?"":Kze(e)}`}}):null}LH.displayName="@mantine/CssVariables";function Ef(e,r){const n=typeof window<"u"&&"matchMedia"in window&&window.matchMedia("(prefers-color-scheme: dark)")?.matches,o=e!=="auto"?e:n?"dark":"light";r()?.setAttribute("data-mantine-color-scheme",o)}function Qze({manager:e,defaultColorScheme:r,getRootElement:n,forceColorScheme:o}){const a=S.useRef(null),[i,l]=S.useState(()=>e.get(r)),s=o||i,c=S.useCallback(u=>{o||(Ef(u,n),l(u),e.set(u))},[e.set,s,o]),d=S.useCallback(()=>{l(r),Ef(r,n),e.clear()},[e.clear,r]);return S.useEffect(()=>(e.subscribe(c),e.unsubscribe),[e.subscribe,e.unsubscribe]),xf(()=>{Ef(e.get(r),n)},[]),S.useEffect(()=>{if(o)return Ef(o,n),()=>{};o===void 0&&Ef(i,n),typeof window<"u"&&"matchMedia"in window&&(a.current=window.matchMedia("(prefers-color-scheme: dark)"));const u=p=>{i==="auto"&&Ef(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 Jze({respectReducedMotion:e,getRootElement:r}){xf(()=>{e&&r()?.setAttribute("data-respect-reduced-motion","true")},[e])}function z9({theme:e,children:r,getStyleNonce:n,withStaticClasses:o=!0,withGlobalClasses:a=!0,deduplicateCssVariables:i=!0,withCssVariables:l=!0,cssVariablesSelector:s,classNamesPrefix:c="mantine",colorSchemeManager:d=qze(),defaultColorScheme:u="light",getRootElement:p=()=>document.documentElement,cssVariablesResolver:f,forceColorScheme:g,stylesTransform:v,env:w}){const{colorScheme:x,setColorScheme:k,clearColorScheme:C}=Qze({defaultColorScheme:u,forceColorScheme:g,manager:d,getRootElement:p});return Jze({respectReducedMotion:e?.respectReducedMotion||!1,getRootElement:p}),y.jsx(Aw.Provider,{value:{colorScheme:x,setColorScheme:k,clearColorScheme:C,getRootElement:p,classNamesPrefix:c,getStyleNonce:n,cssVariablesResolver:f,cssVariablesSelector:s??":root",withStaticClasses:o,stylesTransform:v,env:w},children:y.jsxs(PH,{theme:e,children:[l&&y.jsx(LH,{cssVariablesSelector:s,deduplicateCssVariables:i}),a&&y.jsx(Gze,{}),r]})})}z9.displayName="@mantine/core/MantineProvider";function T9({classNames:e,styles:r,props:n,stylesCtx:o}){const a=lo();return{resolvedClassNames:Tw({theme:a,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:jw({theme:a,styles:r,props:n,stylesCtx:o||void 0})}}const eTe={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function tTe({theme:e,options:r,unstyled:n}){return el(r?.focusable&&!n&&(e.focusClassName||eTe[e.focusRing]),r?.active&&!n&&e.activeClassName)}function rTe({selector:e,stylesCtx:r,options:n,props:o,theme:a}){return Tw({theme:a,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function FH({selector:e,stylesCtx:r,theme:n,classNames:o,props:a}){return Tw({theme:n,classNames:o,props:a,stylesCtx:r})[e]}function nTe({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function oTe({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function aTe({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(a=>`${r}-${a}-${n}`)}function iTe({themeName:e,theme:r,selector:n,props:o,stylesCtx:a}){return e.map(i=>Tw({theme:r,classNames:r.components[i]?.classNames,props:o,stylesCtx:a})?.[n])}function lTe({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function sTe({theme:e,options:r,themeName:n,selector:o,classNamesPrefix:a,classNames:i,classes:l,unstyled:s,className:c,rootSelector:d,props:u,stylesCtx:p,withStaticClasses:f,headless:g,transformedStyles:v}){return el(tTe({theme:e,options:r,unstyled:s||g}),iTe({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),lTe({options:r,classes:l,selector:o,unstyled:s}),FH({selector:o,stylesCtx:p,theme:e,classNames:i,props:u}),FH({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),rTe({selector:o,stylesCtx:p,options:r,props:u,theme:e}),nTe({rootSelector:d,selector:o,className:c}),oTe({selector:o,classes:l,unstyled:s||g}),f&&!g&&aTe({themeName:n,classNamesPrefix:a,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function cTe({theme:e,themeName:r,props:n,stylesCtx:o,selector:a}){return r.map(i=>jw({theme:e,styles:e.components[i]?.styles,props:n,stylesCtx:o})[a]).reduce((i,l)=>({...i,...l}),{})}function j9({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...j9({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function dTe(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...yf(n[o])}}),r),{})}function uTe({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:a,selector:i,themeName:l,headless:s}){return dTe([s?{}:r?.(n,o,a),...l.map(c=>n.components?.[c]?.vars?.(n,o,a)),e?.(n,o,a)])?.[i]}function pTe({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&&cTe({theme:e,themeName:r,props:a,stylesCtx:i,selector:n}),...!f&&jw({theme:e,styles:s,props:a,stylesCtx:i})[n],...!f&&jw({theme:e,styles:o?.styles,props:o?.props||a,stylesCtx:i})[n],...uTe({theme:e,props:a,stylesCtx:i,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?j9({style:c,theme:e}):null,...j9({style:o?.style,theme:e})}}function hTe({props:e,stylesCtx:r,themeName:n}){const o=lo(),a=Mze()?.();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=Tze(),w=jze(),x=Aze(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=hTe({props:n,stylesCtx:o,themeName:k});return($,R)=>({className:sTe({theme:g,options:R,themeName:k,selector:$,classNamesPrefix:v,classNames:c,classes:r,unstyled:s,className:a,rootSelector:l,props:n,stylesCtx:o,withStaticClasses:w,headless:x,transformedStyles:_([R?.styles,d])}),style:pTe({theme:g,themeName:k,selector:$,options:R,props:n,stylesCtx:o,rootSelector:l,styles:d,style:i,vars:u,varsResolver:p,headless:x,withStylesTransform:C}),...f?.[$]})}function fTe(e,r){return typeof e=="boolean"?e:r.autoContrast}function VH(e){const r=document.createElement("style");return r.setAttribute("data-mantine-styles","inline"),r.innerHTML="*, *::before, *::after {transition: none !important;}",r.setAttribute("data-mantine-disable-transition","true"),e&&r.setAttribute("nonce",e),document.head.appendChild(r),()=>document.querySelectorAll("[data-mantine-disable-transition]").forEach(n=>n.remove())}function mTe({keepTransitions:e}={}){const r=S.useRef(dH),n=S.useRef(-1),o=S.useContext(Aw),a=np(),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?()=>{}:VH(i.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},s=()=>{o.clearColorScheme(),r.current=e?()=>{}:VH(i.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},c=mH("light",{getInitialValueInEffect:!1}),d=o.colorScheme==="auto"?c:o.colorScheme,u=S.useCallback(()=>l(d==="light"?"dark":"light"),[l,d]);return S.useEffect(()=>()=>{r.current?.(),window.clearTimeout(n.current)},[]),{colorScheme:o.colorScheme,setColorScheme:l,clearColorScheme:s,toggleColorScheme:u}}function Me(e,r,n){const o=lo(),a=o.components[e]?.defaultProps,i=typeof a=="function"?a(o):a;return{...r,...i,...yf(n)}}function A9(e){return So(e).reduce((r,n)=>e[n]!==void 0?`${r}${NRe(n)}:${e[n]};`:r,"").trim()}function gTe({selector:e,styles:r,media:n,container:o}){const a=r?A9(r):"",i=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${A9(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${A9(s.styles)}}}`):[];return`${a?`${e}{${a}}`:""}${i.join("")}${l.join("")}`.trim()}function Pw(e){const r=np();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:gTe(e)}})}function qH(e){const{m:r,mx:n,my:o,mt: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:R,c:T,opacity:A,ff:z,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:O,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:yf({m:r,mx:n,my:o,mt: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:R,c:T,opacity:A,ff:z,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:O,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const yTe={m:{type:"spacing",property:"margin"},mt:{type:"spacing",property:"marginTop"},mb:{type:"spacing",property:"marginBottom"},ml:{type:"spacing",property:"marginLeft"},mr:{type:"spacing",property:"marginRight"},ms:{type:"spacing",property:"marginInlineStart"},me:{type:"spacing",property:"marginInlineEnd"},mx:{type:"spacing",property:"marginInline"},my:{type:"spacing",property:"marginBlock"},p:{type:"spacing",property:"padding"},pt:{type:"spacing",property:"paddingTop"},pb:{type:"spacing",property:"paddingBottom"},pl:{type:"spacing",property:"paddingLeft"},pr:{type:"spacing",property:"paddingRight"},ps:{type:"spacing",property:"paddingInlineStart"},pe:{type:"spacing",property:"paddingInlineEnd"},px:{type:"spacing",property:"paddingInline"},py:{type:"spacing",property:"paddingBlock"},bd:{type:"border",property:"border"},bdrs:{type:"radius",property:"borderRadius"},bg:{type:"color",property:"background"},c:{type:"textColor",property:"color"},opacity:{type:"identity",property:"opacity"},ff:{type:"fontFamily",property:"fontFamily"},fz:{type:"fontSize",property:"fontSize"},fw:{type:"identity",property:"fontWeight"},lts:{type:"size",property:"letterSpacing"},ta:{type:"identity",property:"textAlign"},lh:{type:"lineHeight",property:"lineHeight"},fs:{type:"identity",property:"fontStyle"},tt:{type:"identity",property:"textTransform"},td:{type:"identity",property:"textDecoration"},w:{type:"spacing",property:"width"},miw:{type:"spacing",property:"minWidth"},maw:{type:"spacing",property:"maxWidth"},h:{type:"spacing",property:"height"},mih:{type:"spacing",property:"minHeight"},mah:{type:"spacing",property:"maxHeight"},bgsz:{type:"size",property:"backgroundSize"},bgp:{type:"identity",property:"backgroundPosition"},bgr:{type:"identity",property:"backgroundRepeat"},bga:{type:"identity",property:"backgroundAttachment"},pos:{type:"identity",property:"position"},top:{type:"size",property:"top"},left:{type:"size",property:"left"},bottom:{type:"size",property:"bottom"},right:{type:"size",property:"right"},inset:{type:"size",property:"inset"},display:{type:"identity",property:"display"},flex:{type:"identity",property:"flex"}};function D9(e,r){const n=vd({color:e,theme:r});return n.color==="dimmed"?"var(--mantine-color-dimmed)":n.color==="bright"?"var(--mantine-color-bright)":n.variable?`var(${n.variable})`:n.color}function vTe(e,r){const n=vd({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:D9(e,r)}function bTe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const[n,o,...a]=e.split(" ").filter(l=>l.trim()!=="");let i=`${$e(n)}`;return o&&(i+=` ${o}`),a.length>0&&(i+=` ${D9(a.join(" "),r)}`),i.trim()}return e}const HH={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function xTe(e){return typeof e=="string"&&e in HH?HH[e]:e}const wTe=["h1","h2","h3","h4","h5","h6"];function kTe(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&wTe.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?$e(e):e}function _Te(e){return e}const STe=["h1","h2","h3","h4","h5","h6"];function ETe(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&STe.includes(e)?`var(--mantine-${e}-line-height)`:e}function CTe(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?$e(e):e}function $Te(e){return typeof e=="number"?$e(e):e}function RTe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const n=e.replace("-","");if(!(n in r.spacing))return $e(e);const o=`--mantine-spacing-${n}`;return e.startsWith("-")?`calc(var(${o}) * -1)`:`var(${o})`}return e}const M9={color:D9,textColor:vTe,fontSize:kTe,spacing:RTe,radius:CTe,identity:_Te,size:$Te,lineHeight:ETe,fontFamily:xTe,border:bTe};function UH(e){return e.replace("(min-width: ","").replace("em)","")}function zTe({media:e,...r}){const n=Object.keys(e).sort((o,a)=>Number(UH(o))-Number(UH(a))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function TTe(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function jTe(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function ATe(e){return typeof e=="object"&&e!==null?So(e).filter(r=>r!=="base"):[]}function DTe(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function WH({styleProps:e,data:r,theme:n}){return zTe(So(e).reduce((o,a)=>{if(a==="hiddenFrom"||a==="visibleFrom"||a==="sx")return o;const i=r[a],l=Array.isArray(i.property)?i.property:[i.property],s=jTe(e[a]);if(!TTe(e[a]))return l.forEach(d=>{o.inlineStyles[d]=M9[i.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=ATe(e[a]);return l.forEach(d=>{s!=null&&(o.styles[d]=M9[i.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:M9[i.type](DTe(e[a],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function Bw(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function N9(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...N9(o,r)}),{}):typeof e=="function"?e(r):e??{}}function GH(e){return e.startsWith("data-")?e:`data-${e}`}function MTe(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[GH(n)]=e[n]),r},{})}function YH(e){return e?typeof e=="string"?{[GH(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...YH(n)}),{}):MTe(e):null}function P9(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...P9(o,r)}),{}):typeof e=="function"?e(r):e??{}}function NTe({theme:e,style:r,vars:n,styleProps:o}){const a=P9(r,e),i=P9(n,e);return{...a,...i,...o}}const XH=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}=qH(g),_=Dze()?.()?.(k.sx),$=Bw(),R=WH({styleProps:k,theme:w,data:yTe}),T={ref:v,style:NTe({theme:w,style:r,vars:n,styleProps:R.inlineStyles}),className:el(o,_,{[$]:R.hasResponsiveStyles,"mantine-light-hidden":d,"mantine-dark-hidden":u,[`mantine-hidden-from-${s}`]:s,[`mantine-visible-from-${c}`]:c}),"data-variant":a,"data-size":sH(l)?void 0:l||void 0,size:f,...YH(i),...C};return y.jsxs(y.Fragment,{children:[R.hasResponsiveStyles&&y.jsx(Pw,{selector:`.${$}`,styles:R.styles,media:R.media}),typeof p=="function"?p(T):y.jsx(x,{...T})]})});XH.displayName="@mantine/core/Box";const Se=XH;function ZH(e){return e}function PTe(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=ZH,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=ZH,r}const BTe=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function bd(){return S.useContext(BTe)}function ITe(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function B9(e){return e?.current?e.current.scrollHeight:"auto"}const Iw=typeof window<"u"&&window.requestAnimationFrame,KH=0,OTe=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function LTe({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:a=!1}){const i=S.useRef(null),l=OTe(a),[s,c]=S.useState(o?{}:l),d=v=>{Vi.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||ITe(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}wf(()=>{typeof Iw=="function"&&Iw(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),Iw(()=>{const v=B9(i);u({...p(v),height:v})})}:()=>{const v=B9(i);u({...p(v),willChange:"height",height:v}),Iw(()=>u({height:KH,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==i.current||v.propertyName!=="height"))if(o){const w=B9(i);w===s.height?d({}):u({height:w}),n()}else s.height===KH&&(d(l),n())};function g({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:wH(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 FTe={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},QH=ot((e,r)=>{const{children:n,in:o,transitionDuration:a,transitionTimingFunction:i,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=Me("Collapse",FTe,e),p=lo(),f=_H(),g=p.respectReducedMotion&&f?0:a,v=LTe({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",...N9(l,p)},ref:r,...u}),children:n})});QH.displayName="@mantine/core/Collapse";function Ow(){return typeof window<"u"}function Cf(e){return JH(e)?(e.nodeName||"").toLowerCase():"#document"}function na(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function Zl(e){var r;return(r=(JH(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function JH(e){return Ow()?e instanceof Node||e instanceof na(e).Node:!1}function Ar(e){return Ow()?e instanceof Element||e instanceof na(e).Element:!1}function $a(e){return Ow()?e instanceof HTMLElement||e instanceof na(e).HTMLElement:!1}function I9(e){return!Ow()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof na(e).ShadowRoot}const VTe=new Set(["inline","contents"]);function cy(e){const{overflow:r,overflowX:n,overflowY:o,display:a}=ai(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!VTe.has(a)}const qTe=new Set(["table","td","th"]);function HTe(e){return qTe.has(Cf(e))}const UTe=[":popover-open",":modal"];function Lw(e){return UTe.some(r=>{try{return e.matches(r)}catch{return!1}})}const WTe=["transform","translate","scale","rotate","perspective"],GTe=["transform","translate","scale","rotate","perspective","filter"],YTe=["paint","layout","strict","content"];function O9(e){const r=Fw(),n=Ar(e)?ai(e):e;return WTe.some(o=>n[o]?n[o]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!r&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!r&&(n.filter?n.filter!=="none":!1)||GTe.some(o=>(n.willChange||"").includes(o))||YTe.some(o=>(n.contain||"").includes(o))}function XTe(e){let r=Zs(e);for(;$a(r)&&!Xs(r);){if(O9(r))return r;if(Lw(r))return null;r=Zs(r)}return null}function Fw(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const ZTe=new Set(["html","body","#document"]);function Xs(e){return ZTe.has(Cf(e))}function ai(e){return na(e).getComputedStyle(e)}function Vw(e){return Ar(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Zs(e){if(Cf(e)==="html")return e;const r=e.assignedSlot||e.parentNode||I9(e)&&e.host||Zl(e);return I9(r)?r.host:r}function eU(e){const r=Zs(e);return Xs(r)?e.ownerDocument?e.ownerDocument.body:e.body:$a(r)&&cy(r)?r:eU(r)}function Ks(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const a=eU(e),i=a===((o=e.ownerDocument)==null?void 0:o.body),l=na(a);if(i){const s=L9(l);return r.concat(l,l.visualViewport||[],cy(a)?a:[],s&&n?Ks(s):[])}return r.concat(a,Ks(a,[],n))}function L9(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const tU=["top","right","bottom","left"],rU=["start","end"],nU=tU.reduce((e,r)=>e.concat(r,r+"-"+rU[0],r+"-"+rU[1]),[]),tl=Math.min,Co=Math.max,qw=Math.round,Hw=Math.floor,Kl=e=>({x:e,y:e}),KTe={left:"right",right:"left",bottom:"top",top:"bottom"},QTe={start:"end",end:"start"};function F9(e,r,n){return Co(e,tl(r,n))}function rl(e,r){return typeof e=="function"?e(r):e}function Ra(e){return e.split("-")[0]}function nl(e){return e.split("-")[1]}function V9(e){return e==="x"?"y":"x"}function q9(e){return e==="y"?"height":"width"}const JTe=new Set(["top","bottom"]);function ol(e){return JTe.has(Ra(e))?"y":"x"}function H9(e){return V9(ol(e))}function oU(e,r,n){n===void 0&&(n=!1);const o=nl(e),a=H9(e),i=q9(a);let l=a==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[i]>r.floating[i]&&(l=Ww(l)),[l,Ww(l)]}function eje(e){const r=Ww(e);return[Uw(e),r,Uw(r)]}function Uw(e){return e.replace(/start|end/g,r=>QTe[r])}const aU=["left","right"],iU=["right","left"],tje=["top","bottom"],rje=["bottom","top"];function nje(e,r,n){switch(e){case"top":case"bottom":return n?r?iU:aU:r?aU:iU;case"left":case"right":return r?tje:rje;default:return[]}}function oje(e,r,n,o){const a=nl(e);let i=nje(Ra(e),n==="start",o);return a&&(i=i.map(l=>l+"-"+a),r&&(i=i.concat(i.map(Uw)))),i}function Ww(e){return e.replace(/left|right|bottom|top/g,r=>KTe[r])}function aje(e){return{top:0,right:0,bottom:0,left:0,...e}}function U9(e){return typeof e!="number"?aje(e):{top:e,right:e,bottom:e,left:e}}function $f(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 ije(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function lje(){const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?e.brands.map(r=>{let{brand:n,version:o}=r;return n+"/"+o}).join(" "):navigator.userAgent}function sje(){return/apple/i.test(navigator.vendor)}function cje(){return ije().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function dje(){return lje().includes("jsdom/")}const lU="data-floating-ui-focusable",uje="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function sU(e){let r=e.activeElement;for(;((n=r)==null||(n=n.shadowRoot)==null?void 0:n.activeElement)!=null;){var n;r=r.shadowRoot.activeElement}return r}function dy(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&I9(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function Rf(e){return"composedPath"in e?e.composedPath()[0]:e.target}function W9(e,r){if(r==null)return!1;if("composedPath"in e)return e.composedPath().includes(r);const n=e;return n.target!=null&&r.contains(n.target)}function pje(e){return e.matches("html,body")}function op(e){return e?.ownerDocument||document}function hje(e){return $a(e)&&e.matches(uje)}function fje(e){if(!e||dje())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function mje(e){return e?e.hasAttribute(lU)?e:e.querySelector("["+lU+"]")||e:null}function Gw(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var a;return o.parentId===r&&(!n||((a=o.context)==null?void 0:a.open))}).flatMap(o=>[o,...Gw(e,o.id,n)])}function gje(e){return"nativeEvent"in e}function G9(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var yje=typeof document<"u",vje=function(){},Ql=yje?S.useLayoutEffect:vje;const bje={...gb};function Yw(e){const r=S.useRef(e);return Ql(()=>{r.current=e}),r}const xje=bje.useInsertionEffect,wje=xje||(e=>e());function Jl(e){const r=S.useRef(()=>{});return wje(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),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}=cU(d,o,c),f=o,g={},v=0;for(let w=0;w({name:"arrow",options:e,async fn(r){const{x:n,y:o,placement:a,rects:i,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=rl(e,r)||{};if(d==null)return{};const p=U9(u),f={x:n,y:o},g=H9(a),v=q9(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],R=f[g]-i.reference[g],T=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=T?T[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(T)))&&(A=s.floating[_]||i.floating[v]);const z=$/2-R/2,j=A/2-w[v]/2-1,I=tl(p[k],j),P=tl(p[C],j),L=I,H=A-w[v]-P,M=A/2-w[v]/2+z,V=F9(L,M,H),B=!c.arrow&&nl(a)!=null&&M!==V&&i.reference[v]/2-(Mnl(o)===e),...n.filter(o=>nl(o)!==e)]:n.filter(o=>Ra(o)===o)).filter(o=>e?nl(o)===e||(r?Uw(o)!==o:!1):!0)}const Eje=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(r){var n,o,a;const{rects:i,middlewareData:l,placement:s,platform:c,elements:d}=r,{crossAxis:u=!1,alignment:p,allowedPlacements:f=nU,autoAlignment:g=!0,...v}=rl(e,r),w=p!==void 0||f===nU?Sje(p||null,g,f):f,x=await zf(r,v),k=((n=l.autoPlacement)==null?void 0:n.index)||0,C=w[k];if(C==null)return{};const _=oU(C,i,await(c.isRTL==null?void 0:c.isRTL(d.floating)));if(s!==C)return{reset:{placement:w[0]}};const $=[x[Ra(C)],x[_[0]],x[_[1]]],R=[...((o=l.autoPlacement)==null?void 0:o.overflows)||[],{placement:C,overflows:$}],T=w[k+1];if(T)return{data:{index:k+1,overflows:R},reset:{placement:T}};const A=R.map(j=>{const I=nl(j.placement);return[j.placement,I&&u?j.overflows.slice(0,2).reduce((P,L)=>P+L,0):j.overflows[0],j.overflows]}).sort((j,I)=>j[1]-I[1]),z=((a=A.filter(j=>j[2].slice(0,nl(j[0])?2:3).every(I=>I<=0))[0])==null?void 0:a[0])||A[0][0];return z!==s?{data:{index:k+1,overflows:R},reset:{placement:z}}:{}}}},Cje=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(r){var n,o;const{placement: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}=rl(e,r);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const k=Ra(a),C=ol(s),_=Ra(s)===s,$=await(c.isRTL==null?void 0:c.isRTL(d.floating)),R=f||(_||!w?[Ww(s)]:eje(s)),T=v!=="none";!f&&T&&R.push(...oje(s,w,v,$));const A=[s,...R],z=await zf(r,x),j=[];let I=((o=i.flip)==null?void 0:o.overflows)||[];if(u&&j.push(z[k]),p){const M=oU(a,l,$);j.push(z[M[0]],z[M[1]])}if(I=[...I,{placement:a,overflows:j}],!j.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!==ol(V))||I.every(F=>ol(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:M,overflows:I},reset:{placement:V}};let B=(L=I.filter(F=>F.overflows[0]<=0).sort((F,q)=>F.overflows[1]-q.overflows[1])[0])==null?void 0:L.placement;if(!B)switch(g){case"bestFit":{var H;const F=(H=I.filter(q=>{if(T){const G=ol(q.placement);return G===C||G==="y"}return!0}).map(q=>[q.placement,q.overflows.filter(G=>G>0).reduce((G,U)=>G+U,0)]).sort((q,G)=>q[1]-G[1])[0])==null?void 0:H[0];F&&(B=F);break}case"initialPlacement":B=s;break}if(a!==B)return{reset:{placement:B}}}return{}}}};function dU(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function uU(e){return tU.some(r=>e[r]>=0)}const $je=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...a}=rl(e,r);switch(o){case"referenceHidden":{const i=await zf(r,{...a,elementContext:"reference"}),l=dU(i,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:uU(l)}}}case"escaped":{const i=await zf(r,{...a,altBoundary:!0}),l=dU(i,n.floating);return{data:{escapedOffsets:l,escaped:uU(l)}}}default:return{}}}}};function pU(e){const r=tl(...e.map(i=>i.left)),n=tl(...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 Rje(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=>$f(pU(a)))}const zje=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}=rl(e,r),u=Array.from(await(i.getClientRects==null?void 0:i.getClientRects(o.reference))||[]),p=Rje(u),f=$f(pU(u)),g=U9(s);function v(){if(p.length===2&&p[0].left>p[1].right&&c!=null&&d!=null)return p.find(x=>c>x.left-g.left&&cx.top-g.top&&d=2){if(ol(n)==="y"){const I=p[0],P=p[p.length-1],L=Ra(n)==="top",H=I.top,M=P.bottom,V=L?I.left:P.left,B=L?I.right:P.right,F=B-V,q=M-H;return{top:H,bottom:M,left:V,right:B,width:F,height:q,x:V,y:H}}const x=Ra(n)==="left",k=Co(...p.map(I=>I.right)),C=tl(...p.map(I=>I.left)),_=p.filter(I=>x?I.left===C:I.right===k),$=_[0].top,R=_[_.length-1].bottom,T=C,A=k,z=A-T,j=R-$;return{top:$,bottom:R,left:T,right:A,width:z,height:j,x:T,y:$}}return f}const w=await 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}}:{}}}},hU=new Set(["left","top"]);async function Tje(e,r){const{placement:n,platform:o,elements:a}=e,i=await(o.isRTL==null?void 0:o.isRTL(a.floating)),l=Ra(n),s=nl(n),c=ol(n)==="y",d=hU.has(l)?-1:1,u=i&&c?-1:1,p=rl(r,e);let{mainAxis:f,crossAxis:g,alignmentAxis:v}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return s&&typeof v=="number"&&(g=s==="end"?v*-1:v),c?{x:g*u,y:f*d}:{x:f*d,y:g*u}}const jje=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:a,y:i,placement:l,middlewareData:s}=r,c=await Tje(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:a+c.x,y:i+c.y,data:{...c,placement:l}}}}},Aje=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:a}=r,{mainAxis:i=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=rl(e,r),d={x:n,y:o},u=await zf(r,c),p=ol(Ra(a)),f=V9(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=F9(C,g,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=F9(C,v,_)}const w=s.fn({...r,[f]:g,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:i,[p]:l}}}}}},Dje=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}=rl(e,r),u={x:n,y:o},p=ol(a),f=V9(p);let g=u[f],v=u[p];const w=rl(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=i.reference[f]-i.floating[_]+x.mainAxis,R=i.reference[f]+i.reference[_]-x.mainAxis;g<$?g=$:g>R&&(g=R)}if(d){var k,C;const _=f==="y"?"width":"height",$=hU.has(Ra(a)),R=i.reference[p]-i.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),T=i.reference[p]+i.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vT&&(v=T)}return{[f]:g,[p]:v}}}},Mje=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:a,rects:i,platform:l,elements:s}=r,{apply:c=()=>{},...d}=rl(e,r),u=await zf(r,d),p=Ra(a),f=nl(a),g=ol(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,$=tl(w-u[x],C),R=tl(v-u[k],_),T=!r.middlewareData.shift;let A=$,z=R;if((n=r.middlewareData.shift)!=null&&n.enabled.x&&(z=_),(o=r.middlewareData.shift)!=null&&o.enabled.y&&(A=C),T&&!f){const I=Co(u.left,0),P=Co(u.right,0),L=Co(u.top,0),H=Co(u.bottom,0);g?z=v-2*(I!==0||P!==0?I+P:Co(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:Co(u.top,u.bottom))}await c({...r,availableWidth:z,availableHeight:A});const j=await l.getDimensions(s.floating);return v!==j.width||w!==j.height?{reset:{rects:!0}}:{}}}};function fU(e){const r=ai(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const a=$a(e),i=a?e.offsetWidth:n,l=a?e.offsetHeight:o,s=qw(n)!==i||qw(o)!==l;return s&&(n=i,o=l),{width:n,height:o,$:s}}function Y9(e){return Ar(e)?e:e.contextElement}function Tf(e){const r=Y9(e);if(!$a(r))return Kl(1);const n=r.getBoundingClientRect(),{width:o,height:a,$:i}=fU(r);let l=(i?qw(n.width):n.width)/o,s=(i?qw(n.height):n.height)/a;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const Nje=Kl(0);function mU(e){const r=na(e);return!Fw()||!r.visualViewport?Nje:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function Pje(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==na(e)?!1:r}function ap(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const a=e.getBoundingClientRect(),i=Y9(e);let l=Kl(1);r&&(o?Ar(o)&&(l=Tf(o)):l=Tf(e));const s=Pje(i,n,o)?mU(i):Kl(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=na(i),g=o&&Ar(o)?na(o):o;let v=f,w=L9(v);for(;w&&o&&g!==v;){const x=Tf(w),k=w.getBoundingClientRect(),C=ai(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=na(w),w=L9(v)}}return $f({width:u,height:p,x:c,y:d})}function Xw(e,r){const n=Vw(e).scrollLeft;return r?r.left+n:ap(Zl(e)).left+n}function gU(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-Xw(e,n),a=n.top+r.scrollTop;return{x:o,y:a}}function Bje(e){let{elements:r,rect:n,offsetParent:o,strategy:a}=e;const i=a==="fixed",l=Zl(o),s=r?Lw(r.floating):!1;if(o===l||s&&i)return n;let c={scrollLeft:0,scrollTop:0},d=Kl(1);const u=Kl(0),p=$a(o);if((p||!p&&!i)&&((Cf(o)!=="body"||cy(l))&&(c=Vw(o)),$a(o))){const g=ap(o);d=Tf(o),u.x=g.x+o.clientLeft,u.y=g.y+o.clientTop}const f=l&&!p&&!i?gU(l,c):Kl(0);return{width:n.width*d.x,height:n.height*d.y,x:n.x*d.x-c.scrollLeft*d.x+u.x+f.x,y:n.y*d.y-c.scrollTop*d.y+u.y+f.y}}function Ije(e){return Array.from(e.getClientRects())}function Oje(e){const r=Zl(e),n=Vw(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+Xw(e);const s=-n.scrollTop;return ai(o).direction==="rtl"&&(l+=Co(r.clientWidth,o.clientWidth)-a),{width:a,height:i,x:l,y:s}}const yU=25;function Lje(e,r){const n=na(e),o=Zl(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=Fw();(!u||u&&r==="fixed")&&(s=a.offsetLeft,c=a.offsetTop)}const d=Xw(o);if(d<=0){const u=o.ownerDocument,p=u.body,f=getComputedStyle(p),g=u.compatMode==="CSS1Compat"&&parseFloat(f.marginLeft)+parseFloat(f.marginRight)||0,v=Math.abs(o.clientWidth-p.clientWidth-g);v<=yU&&(i-=v)}else d<=yU&&(i+=d);return{width:i,height:l,x:s,y:c}}const Fje=new Set(["absolute","fixed"]);function Vje(e,r){const n=ap(e,!0,r==="fixed"),o=n.top+e.clientTop,a=n.left+e.clientLeft,i=$a(e)?Tf(e):Kl(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 vU(e,r,n){let o;if(r==="viewport")o=Lje(e,n);else if(r==="document")o=Oje(Zl(e));else if(Ar(r))o=Vje(r,n);else{const a=mU(e);o={x:r.x-a.x,y:r.y-a.y,width:r.width,height:r.height}}return $f(o)}function bU(e,r){const n=Zs(e);return n===r||!Ar(n)||Xs(n)?!1:ai(n).position==="fixed"||bU(n,r)}function qje(e,r){const n=r.get(e);if(n)return n;let o=Ks(e,[],!1).filter(s=>Ar(s)&&Cf(s)!=="body"),a=null;const i=ai(e).position==="fixed";let l=i?Zs(e):e;for(;Ar(l)&&!Xs(l);){const s=ai(l),c=O9(l);!c&&s.position==="fixed"&&(a=null),(i?!c&&!a:!c&&s.position==="static"&&a&&Fje.has(a.position)||cy(l)&&!c&&bU(e,l))?o=o.filter(d=>d!==l):a=s,l=Zs(l)}return r.set(e,o),o}function Hje(e){let{element:r,boundary:n,rootBoundary:o,strategy:a}=e;const i=[...n==="clippingAncestors"?Lw(r)?[]:qje(r,this._c):[].concat(n),o],l=i[0],s=i.reduce((c,d)=>{const u=vU(r,d,a);return c.top=Co(u.top,c.top),c.right=tl(u.right,c.right),c.bottom=tl(u.bottom,c.bottom),c.left=Co(u.left,c.left),c},vU(r,l,a));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Uje(e){const{width:r,height:n}=fU(e);return{width:r,height:n}}function Wje(e,r,n){const o=$a(r),a=Zl(r),i=n==="fixed",l=ap(e,!0,i,r);let s={scrollLeft:0,scrollTop:0};const c=Kl(0);function d(){c.x=Xw(a)}if(o||!o&&!i)if((Cf(r)!=="body"||cy(a))&&(s=Vw(r)),o){const g=ap(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?gU(a,s):Kl(0),p=l.left+s.scrollLeft-c.x-u.x,f=l.top+s.scrollTop-c.y-u.y;return{x:p,y:f,width:l.width,height:l.height}}function X9(e){return ai(e).position==="static"}function xU(e,r){if(!$a(e)||ai(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return Zl(e)===n&&(n=n.ownerDocument.body),n}function wU(e,r){const n=na(e);if(Lw(e))return n;if(!$a(e)){let a=Zs(e);for(;a&&!Xs(a);){if(Ar(a)&&!X9(a))return a;a=Zs(a)}return n}let o=xU(e,r);for(;o&&HTe(o)&&X9(o);)o=xU(o,r);return o&&Xs(o)&&X9(o)&&!O9(o)?n:o||XTe(e)||n}const Gje=async function(e){const r=this.getOffsetParent||wU,n=this.getDimensions,o=await n(e.floating);return{reference:Wje(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Yje(e){return ai(e).direction==="rtl"}const Xje={convertOffsetParentRelativeRectToViewportRelativeRect:Bje,getDocumentElement:Zl,getClippingRect:Hje,getOffsetParent:wU,getElementRects:Gje,getClientRects:Ije,getDimensions:Uje,getScale:Tf,isElement:Ar,isRTL:Yje};function kU(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function Zje(e,r){let n=null,o;const a=Zl(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=Hw(p),w=Hw(a.clientWidth-(u+f)),x=Hw(a.clientHeight-(p+g)),k=Hw(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:Co(0,tl(1,c))||1};let _=!0;function $(R){const T=R[0].intersectionRatio;if(T!==c){if(!_)return l();T?l(!1,T):o=setTimeout(()=>{l(!1,1e-7)},1e3)}T===1&&!kU(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:a.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),i}function Zw(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=Y9(e),u=a||i?[...d?Ks(d):[],...Ks(r)]:[];u.forEach(k=>{a&&k.addEventListener("scroll",n,{passive:!0}),i&&k.addEventListener("resize",n)});const p=d&&s?Zje(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?ap(e):null;c&&x();function x(){const k=ap(e);w&&!kU(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 _U=jje,Kje=Eje,Qje=Aje,Jje=Cje,SU=Mje,EU=$je,CU=_je,eAe=zje,tAe=Dje,$U=(e,r,n)=>{const o=new Map,a={platform:Xje,...n},i={...a.platform,_c:o};return kje(e,r,{...a,platform:i})};var rAe=typeof document<"u",nAe=function(){},Kw=rAe?S.useLayoutEffect:nAe;function Qw(e,r){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(typeof e=="function"&&e.toString()===r.toString())return!0;let n,o,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(!Qw(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)&&!Qw(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}function RU(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function zU(e,r){const n=RU(e);return Math.round(r*n)/n}function Z9(e){const r=S.useRef(e);return Kw(()=>{r.current=e}),r}function oAe(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);Qw(f,o)||g(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==T.current&&(T.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=i||v,R=l||x,T=S.useRef(null),A=S.useRef(null),z=S.useRef(u),j=c!=null,I=Z9(c),P=Z9(a),L=Z9(d),H=S.useCallback(()=>{if(!T.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};P.current&&(q.platform=P.current),$U(T.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};M.current&&!Qw(z.current,U)&&(z.current=U,Vi.flushSync(()=>{p(U)}))})},[f,r,n,P,L]);Kw(()=>{d===!1&&z.current.isPositioned&&(z.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const M=S.useRef(!1);Kw(()=>(M.current=!0,()=>{M.current=!1}),[]),Kw(()=>{if($&&(T.current=$),R&&(A.current=R),$&&R){if(I.current)return I.current($,R,H);H()}},[$,R,H,I,j]);const V=S.useMemo(()=>({reference:T,floating:A,setReference:C,setFloating:_}),[C,_]),B=S.useMemo(()=>({reference:$,floating:R}),[$,R]),F=S.useMemo(()=>{const q={position:n,left:0,top:0};if(!B.floating)return q;const G=zU(B.floating,u.x),U=zU(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...RU(B.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:G,top:U}},[n,s,B.floating,u.x,u.y]);return S.useMemo(()=>({...u,update:H,refs:V,elements:B,floatingStyles:F}),[u,H,V,B,F])}const aAe=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?CU({element:o.current,padding:a}).fn(n):{}:o?CU({element:o,padding:a}).fn(n):{}}}},TU=(e,r)=>({..._U(e),options:[e,r]}),K9=(e,r)=>({...Qje(e),options:[e,r]}),jU=(e,r)=>({...tAe(e),options:[e,r]}),Jw=(e,r)=>({...Jje(e),options:[e,r]}),iAe=(e,r)=>({...SU(e),options:[e,r]}),lAe=(e,r)=>({...EU(e),options:[e,r]}),uy=(e,r)=>({...eAe(e),options:[e,r]}),AU=(e,r)=>({...aAe(e),options:[e,r]});function DU(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 sAe="data-floating-ui-focusable",MU="active",NU="selected",cAe={...gb};let PU=!1,dAe=0;const BU=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+dAe++;function uAe(){const[e,r]=S.useState(()=>PU?BU():void 0);return Ql(()=>{e==null&&r(BU())},[]),S.useEffect(()=>{PU=!0},[]),e}const pAe=cAe.useId,IU=pAe||uAe;function hAe(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(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 fAe=S.createContext(null),mAe=S.createContext(null),Q9=()=>{var e;return((e=S.useContext(fAe))==null?void 0:e.id)||null},J9=()=>S.useContext(mAe);function eS(e){return"data-floating-ui-"+e}function ii(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const OU=eS("safe-polygon");function e3(e,r,n){if(n&&!G9(n))return 0;if(typeof e=="number")return e;if(typeof e=="function"){const o=e();return typeof o=="number"?o:o?.[r]}return e?.[r]}function tS(e){return typeof e=="function"?e():e}function LU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,dataRef: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=J9(),v=Q9(),w=Yw(d),x=Yw(c),k=Yw(n),C=Yw(p),_=S.useRef(),$=S.useRef(-1),R=S.useRef(),T=S.useRef(-1),A=S.useRef(!0),z=S.useRef(!1),j=S.useRef(()=>{}),I=S.useRef(!1),P=Jl(()=>{var F;const q=(F=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||(ii($),ii(T),A.current=!0,I.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=op(l.floating).documentElement;return q.addEventListener("mouseleave",F),()=>{q.removeEventListener("mouseleave",F)}},[l.floating,n,o,s,w,P]);const L=S.useCallback(function(F,q,G){q===void 0&&(q=!0),G===void 0&&(G="hover");const U=e3(x.current,"close",_.current);U&&!R.current?(ii($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(ii($),o(!1,F,G))},[x,o]),H=Jl(()=>{j.current(),R.current=void 0}),M=Jl(()=>{if(z.current){const F=op(l.floating).body;F.style.pointerEvents="",F.removeAttribute(OU),z.current=!1}}),V=Jl(()=>a.current.openEvent?["click","mousedown"].includes(a.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(Z){if(ii($),A.current=!1,u&&!G9(_.current)||tS(C.current)>0&&!e3(x.current,"open"))return;const O=e3(x.current,"open",_.current);O?$.current=window.setTimeout(()=>{k.current||o(!0,Z,"hover")},O):n||o(!0,Z,"hover")}function q(Z){if(V()){M();return}j.current();const O=op(l.floating);if(ii(T),I.current=!1,w.current&&a.current.floatingContext){n||ii($),R.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=R.current;O.addEventListener("mousemove",W),j.current=()=>{O.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!dy(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(){ii($)}function Y(Z){V()||L(Z,!1)}if(Ar(l.domReference)){const Z=l.domReference,O=l.floating;return n&&Z.addEventListener("mouseleave",G),f&&Z.addEventListener("mousemove",F,{once:!0}),Z.addEventListener("mouseenter",F),Z.addEventListener("mouseleave",q),O&&(O.addEventListener("mouseleave",G),O.addEventListener("mouseenter",U),O.addEventListener("mouseleave",Y)),()=>{n&&Z.removeEventListener("mouseleave",G),f&&Z.removeEventListener("mousemove",F),Z.removeEventListener("mouseenter",F),Z.removeEventListener("mouseleave",q),O&&(O.removeEventListener("mouseleave",G),O.removeEventListener("mouseenter",U),O.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,M,o,n,k,g,x,w,a,V,C]),Ql(()=>{var F;if(s&&n&&(F=w.current)!=null&&(F=F.__options)!=null&&F.blockPointerEvents&&P()){z.current=!0;const G=l.floating;if(Ar(l.domReference)&&G){var q;const U=op(l.floating).body;U.setAttribute(OU,"");const Y=l.domReference,Z=g==null||(q=g.nodesRef.current.find(O=>O.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]),Ql(()=>{n||(_.current=void 0,I.current=!1,H(),M())},[n,H,M]),S.useEffect(()=>()=>{H(),ii($),ii(T),M()},[s,l.domReference,H,M]);const B=S.useMemo(()=>{function F(q){_.current=q.pointerType}return{onPointerDown:F,onPointerEnter:F,onMouseMove(q){const{nativeEvent:G}=q;function U(){!A.current&&!k.current&&o(!0,G,"hover")}u&&!G9(_.current)||n||tS(C.current)===0||I.current&&q.movementX**2+q.movementY**2<2||(ii(T),_.current==="touch"?U():(I.current=!0,T.current=window.setTimeout(U,tS(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const rS=()=>{},FU=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:rS,setState:rS,isInstantPhase:!1}),gAe=()=>S.useContext(FU);function VU(e){const{children:r,delay:n,timeoutMs:o=0}=e,[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 Ql(()=>{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(FU.Provider,{value:S.useMemo(()=>({...a,setState:i,setCurrentId:s}),[a,s]),children:r})}function qU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:a}=e,{id:i,enabled:l=!0}=r,s=i??a,c=gAe(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:g}=c;return Ql(()=>{l&&d&&(f({delay:{open:1,close:e3(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),Ql(()=>{function v(){o(!1),f({delay:p,currentId:null})}if(l&&d&&!n&&d===s){if(g){const w=window.setTimeout(v,g);return()=>{clearTimeout(w)}}v()}},[l,n,f,d,s,o,p,g]),Ql(()=>{l&&(u===rS||!n||u(s))},[l,n,u,s]),c}const yAe={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},vAe={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},HU=e=>{var r,n;return{escapeKey:typeof e=="boolean"?e:(r=e?.escapeKey)!=null?r:!1,outsidePress:typeof e=="boolean"?e:(n=e?.outsidePress)!=null?n:!0}};function UU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements: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=J9(),x=Jl(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=HU(g),{escapeKey:R,outsidePress:T}=HU(v),A=S.useRef(!1),z=Jl(M=>{var V;if(!n||!l||!s||M.key!=="Escape"||A.current)return;const B=(V=i.current.floatingContext)==null?void 0:V.nodeId,F=w?Gw(w.nodesRef.current,B):[];if(!_&&(M.stopPropagation(),F.length>0)){let q=!0;if(F.forEach(G=>{var U;if((U=G.context)!=null&&U.open&&!G.context.dataRef.current.__escapeKeyBubbles){q=!1;return}}),!q)return}o(!1,gje(M)?M.nativeEvent:M,"escape-key")}),j=Jl(M=>{var V;const B=()=>{var F;z(M),(F=Rf(M))==null||F.removeEventListener("keydown",B)};(V=Rf(M))==null||V.addEventListener("keydown",B)}),I=Jl(M=>{var V;const B=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=Rf(M),G="["+eS("inert")+"]",U=op(a.floating).querySelectorAll(G);let Y=Ar(q)?q:null;for(;Y&&!Xs(Y);){const K=Zs(Y);if(Xs(K)||!Ar(K))break;Y=K}if(U.length&&Ar(q)&&!pje(q)&&!dy(q,a.floating)&&Array.from(U).every(K=>!dy(Y,K)))return;if($a(q)&&H){const K=Xs(q),Q=ai(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,O=w&&Gw(w.nodesRef.current,Z).some(K=>{var Q;return W9(M,(Q=K.context)==null?void 0:Q.elements.floating)});if(W9(M,a.floating)||W9(M,a.domReference)||O)return;const W=w?Gw(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=Jl(M=>{var V;const B=()=>{var F;I(M),(F=Rf(M))==null||F.removeEventListener(d,B)};(V=Rf(M))==null||V.addEventListener(d,B)});S.useEffect(()=>{if(!n||!l)return;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},Fw()?5:0)}const q=op(a.floating);s&&(q.addEventListener("keydown",R?j:z,R),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,T?P:I,T);let G=[];return f&&(Ar(a.domReference)&&(G=Ks(a.domReference)),Ar(a.floating)&&(G=G.concat(Ks(a.floating))),!Ar(a.reference)&&a.reference&&a.reference.contextElement&&(G=G.concat(Ks(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",R?j:z,R),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,T?P:I,T),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(M)}},[i,a,s,k,d,n,o,f,l,_,$,z,R,j,I,T,P]),S.useEffect(()=>{i.current.insideReactTree=!1},[i,k,d]);const L=S.useMemo(()=>({onKeyDown:z,...u&&{[yAe[p]]:M=>{o(!1,M.nativeEvent,"reference-press")},...p!=="click"&&{onClick(M){o(!1,M.nativeEvent,"reference-press")}}}}),[z,o,u,p]),H=S.useMemo(()=>({onKeyDown:z,onMouseDown(){C.current=!0},onMouseUp(){C.current=!0},[vAe[d]]:()=>{i.current.insideReactTree=!0}}),[z,d,i]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function bAe(e){const{open:r=!1,onOpenChange:n,elements:o}=e,a=IU(),i=S.useRef({}),[l]=S.useState(()=>hAe()),s=Q9()!=null,[c,d]=S.useState(o.reference),u=Jl((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 t3(e){e===void 0&&(e={});const{nodeId:r}=e,n=bAe({...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=J9();Ql(()=>{d&&(u.current=d)},[d]);const f=oAe({...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 Ql(()=>{o.dataRef.current.floatingContext=k;const C=p?.nodesRef.current.find(_=>_.id===r);C&&(C.context=k)}),S.useMemo(()=>({...f,context:k,refs:w,elements:x}),[f,w,x,k])}function nS(){return cje()&&sje()}function xAe(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,events: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=na(l.domReference);function v(){!n&&$a(l.domReference)&&l.domReference===sU(op(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return g.addEventListener("blur",v),nS()&&(g.addEventListener("keydown",w,!0),g.addEventListener("pointerdown",x,!0)),()=>{g.removeEventListener("blur",v),nS()&&(g.removeEventListener("keydown",w,!0),g.removeEventListener("pointerdown",x,!0))}},[l.domReference,n,s]),S.useEffect(()=>{if(!s)return;function g(v){let{reason:w}=v;(w==="reference-press"||w==="escape-key")&&(d.current=!0)}return a.on("openchange",g),()=>{a.off("openchange",g)}},[a,s]),S.useEffect(()=>()=>{ii(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(g){if(d.current)return;const v=Rf(g.nativeEvent);if(c&&Ar(v)){if(nS()&&!g.relatedTarget){if(!p.current&&!hje(v))return}else if(!fje(v))return}o(!0,g.nativeEvent,"focus")},onBlur(g){d.current=!1;const v=g.relatedTarget,w=g.nativeEvent,x=Ar(v)&&v.hasAttribute(eS("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=sU(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||dy((k=i.current.floatingContext)==null?void 0:k.refs.floating.current,C)||dy(l.domReference,C)||x||o(!1,w,"focus")})}}),[i,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function oS(e,r,n){const o=new Map,a=n==="item";let i=e;if(a&&e){const{[MU]:l,[NU]:s,...c}=e;i=c}return{...n==="floating"&&{tabIndex:-1,[sAe]:""},...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&&[MU,NU].includes(d)))if(d.indexOf("on")===0){if(o.has(d)||o.set(d,[]),typeof u=="function"){var p;(p=o.get(d))==null||p.push(u),l[d]=function(){for(var f,g=arguments.length,v=new Array(g),w=0;wx(...v)).find(x=>x!==void 0)}}}else l[d]=u}),l),{})}}function WU(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),a=S.useCallback(s=>oS(s,e,"reference"),r),i=S.useCallback(s=>oS(s,e,"floating"),n),l=S.useCallback(s=>oS(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:a,getFloatingProps:i,getItemProps:l}),[a,i,l])}const wAe=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function GU(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=IU(),u=((n=i.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=mje(i.floating))==null?void 0:k.id)||l},[i.floating,l]),f=(o=wAe.get(c))!=null?o:c,g=Q9()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]: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[kAe,li]=ni("ScrollArea.Root component was not found in tree");function jf(e,r){const n=Qn(r);xf(()=>{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 _Ae=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=li(),[i,l]=S.useState(0),[s,c]=S.useState(0),d=!!(i&&s);return jf(a.scrollbarX,()=>{const u=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(u),c(u)}),jf(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}),SAe=S.forwardRef((e,r)=>{const n=li(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(_Ae,{...e,ref:r}):null}),EAe={scrollHideDelay:1e3,type:"hover"},YU=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:a,getStyles:i,...l}=Me("ScrollAreaRoot",EAe,e),[s,c]=S.useState(null),[d,u]=S.useState(null),[p,f]=S.useState(null),[g,v]=S.useState(null),[w,x]=S.useState(null),[k,C]=S.useState(0),[_,$]=S.useState(0),[R,T]=S.useState(!1),[A,z]=S.useState(!1),j=$r(r,I=>c(I));return y.jsx(kAe,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:g,onScrollbarXChange:v,scrollbarXEnabled:R,onScrollbarXEnabledChange:T,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:z,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:i},children:y.jsx(Se,{...l,ref:j,__vars:{"--sa-corner-width":a!=="xy"?"0px":`${k}px`,"--sa-corner-height":a!=="xy"?"0px":`${_}px`}})})});YU.displayName="@mantine/core/ScrollAreaRoot";function XU(e,r){const n=e/r;return Number.isNaN(n)?0:n}function r3(e){const r=XU(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function ZU(e,r){return n=>{if(e[0]===e[1]||r[0]===r[1])return r[0];const o=(r[1]-r[0])/(e[1]-e[0]);return r[0]+o*(n-e[0])}}function CAe(e,[r,n]){return Math.min(n,Math.max(r,e))}function KU(e,r,n="ltr"){const o=r3(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=CAe(e,c);return ZU([0,l],[0,s])(d)}function $Ae(e,r,n,o="ltr"){const a=r3(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 ZU([c,d],p)(e)}function QU(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[RAe,JU]=ni("ScrollAreaScrollbar was not found in tree"),eW=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=li(),[g,v]=S.useState(null),w=$r(r,z=>v(z)),x=S.useRef(null),k=S.useRef(""),{viewport:C}=f,_=n.content-n.viewport,$=Qn(d),R=Qn(s),T=bf(u,10),A=z=>{if(x.current){const j=z.clientX-x.current.left,I=z.clientY-x.current.top;c({x:j,y:I})}};return S.useEffect(()=>{const z=j=>{const I=j.target;g?.contains(I)&&$(j,_)};return document.addEventListener("wheel",z,{passive:!1}),()=>document.removeEventListener("wheel",z,{passive:!1})},[C,g,_,$]),S.useEffect(R,[n,R]),jf(g,T),jf(f.content,T),y.jsx(RAe,{value:{scrollbar:g,hasThumb:o,onThumbChange:Qn(a),onThumbPointerUp:Qn(i),onThumbPositionChange:R,onThumbPointerDown:Qn(l)},children:y.jsx("div",{...p,ref:w,"data-mantine-scrollbar":!0,style:{position:"absolute",...p.style},onPointerDown:ip(e.onPointerDown,z=>{z.preventDefault(),z.button===0&&(z.target.setPointerCapture(z.pointerId),x.current=g.getBoundingClientRect(),k.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",A(z))}),onPointerMove:ip(e.onPointerMove,A),onPointerUp:ip(e.onPointerUp,z=>{const j=z.target;j.hasPointerCapture(z.pointerId)&&(z.preventDefault(),j.releasePointerCapture(z.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),tW=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=li(),[s,c]=S.useState(),d=S.useRef(null),u=$r(r,d,l.onScrollbarXChange);return S.useEffect(()=>{d.current&&c(getComputedStyle(d.current))},[d]),y.jsx(eW,{"data-orientation":"horizontal",...i,ref:u,sizes:n,style:{...a,"--sa-thumb-width":`${r3(n)}px`},onThumbPointerDown:p=>e.onThumbPointerDown(p.x),onDragScroll:p=>e.onDragScroll(p.x),onWheelScroll:(p,f)=>{if(l.viewport){const g=l.viewport.scrollLeft+p.deltaX;e.onWheelScroll(g),QU(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:d.current.clientWidth,paddingStart:xd(s.paddingLeft),paddingEnd:xd(s.paddingRight)}})}})});tW.displayName="@mantine/core/ScrollAreaScrollbarX";const rW=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=li(),[s,c]=S.useState(),d=S.useRef(null),u=$r(r,d,l.onScrollbarYChange);return S.useEffect(()=>{d.current&&c(window.getComputedStyle(d.current))},[]),y.jsx(eW,{...i,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${r3(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),QU(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:d.current.clientHeight,paddingStart:xd(s.paddingTop),paddingEnd:xd(s.paddingBottom)}})}})});rW.displayName="@mantine/core/ScrollAreaScrollbarY";const n3=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:a}=bd(),i=li(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=XU(c.viewport,c.content),p={...o,sizes:c,onSizesChange:d,hasThumb:u>0&&u<1,onThumbChange:g=>{l.current=g},onThumbPointerUp:()=>{s.current=0},onThumbPointerDown:g=>{s.current=g}},f=(g,v)=>$Ae(g,s.current,c,v);return n==="horizontal"?y.jsx(tW,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollLeft,v=KU(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(rW,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollTop,v=KU(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});n3.displayName="@mantine/core/ScrollAreaScrollbarVisible";const aS=S.forwardRef((e,r)=>{const n=li(),{forceMount:o,...a}=e,[i,l]=S.useState(!1),s=e.orientation==="horizontal",c=bf(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,a=li(),[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(aS,{"data-state":i?"visible":"hidden",...o,ref:r}):null});nW.displayName="@mantine/core/ScrollAreaScrollbarHover";const zAe=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=li(),i=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=bf(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),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(n3,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:ip(e.onPointerEnter,()=>s("interacting")),onPointerLeave:ip(e.onPointerLeave,()=>s("idle"))}):null}),iS=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=li(),{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(nW,{...o,ref:r,forceMount:n}):a.type==="scroll"?y.jsx(zAe,{...o,ref:r,forceMount:n}):a.type==="auto"?y.jsx(aS,{...o,ref:r,forceMount:n}):a.type==="always"?y.jsx(n3,{...o,ref:r}):null});iS.displayName="@mantine/core/ScrollAreaScrollbar";function TAe(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 oW=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=li(),i=JU(),{onThumbPositionChange:l}=i,s=$r(r,u=>i.onThumbChange(u)),c=S.useRef(void 0),d=bf(()=>{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=TAe(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:ip(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:ip(e.onPointerUp,i.onThumbPointerUp)})});oW.displayName="@mantine/core/ScrollAreaThumb";const lS=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=JU();return n||a.hasThumb?y.jsx(oW,{ref:r,...o}):null});lS.displayName="@mantine/core/ScrollAreaThumb";const aW=S.forwardRef(({children:e,style:r,...n},o)=>{const a=li(),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})})});aW.displayName="@mantine/core/ScrollAreaViewport";var sS={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const iW={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},jAe=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":$e(r),"--scrollarea-over-scroll-behavior":n}}),es=ot((e,r)=>{const n=Me("ScrollArea",iW,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:R,...T}=n,[A,z]=S.useState(!1),[j,I]=S.useState(!1),[P,L]=S.useState(!1),H=kt({name:"ScrollArea",props:n,classes:sS,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:R,vars:d,varsResolver:jAe}),M=S.useRef(null),V=DU([g,M]);return S.useEffect(()=>{if(!M.current||x!=="present")return;const B=M.current,F=new ResizeObserver(()=>{const{scrollHeight:q,clientHeight:G,scrollWidth:U,clientWidth:Y}=B;I(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[M,x]),y.jsxs(YU,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...T,children:[y.jsx(aW,{...f,...H("viewport",{style:f?.style}),ref:V,"data-offset-scrollbars":x===!0?"xy":x||void 0,"data-scrollbars":k||void 0,"data-horizontal-hidden":x==="present"&&!P?"true":void 0,"data-vertical-hidden":x==="present"&&!j?"true":void 0,onScroll:B=>{f?.onScroll?.(B),v?.({x:B.currentTarget.scrollLeft,y:B.currentTarget.scrollTop});const{scrollTop:F,scrollHeight:q,clientHeight:G}=B.currentTarget;F-(q-G)>=-.6&&C?.(),F===0&&_?.()},children:w}),(k==="xy"||k==="x")&&y.jsx(iS,{...H("scrollbar"),orientation:"horizontal","data-hidden":u==="never"||x==="present"&&!P?!0:void 0,forceMount:!0,onMouseEnter:()=>z(!0),onMouseLeave:()=>z(!1),children:y.jsx(lS,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(iS,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!j?!0:void 0,forceMount:!0,onMouseEnter:()=>z(!0),onMouseLeave:()=>z(!1),children:y.jsx(lS,{...H("thumb")})}),y.jsx(SAe,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});es.displayName="@mantine/core/ScrollArea";const oa=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:$,...R}=Me("ScrollAreaAutosize",iW,e),T=S.useRef(null),A=DU([u,T]),[z,j]=S.useState(!1),I=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const P=T.current;if(!P)return;const L=()=>{const M=P.scrollHeight>P.clientHeight;M!==z&&(I.current?$?.(M):(I.current=!0,M&&$?.(!0)),j(M))};L();const H=new ResizeObserver(L);return H.observe(P),()=>H.disconnect()},[$,z]),y.jsx(Se,{...R,ref:r,style:[{display:"flex",overflow:"hidden"},x],children:y.jsx(Se,{style:{display:"flex",flexDirection:"column",flex:1,overflow:"hidden",...w==="y"&&{minWidth:0},...w==="x"&&{minHeight:0},...w==="xy"&&{minWidth:0,minHeight:0},...w===!1&&{minWidth:0,minHeight:0}},children:y.jsx(es,{classNames:o,styles: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})})})});es.classes=sS,oa.displayName="@mantine/core/ScrollAreaAutosize",oa.classes=sS,es.Autosize=oa;var lW={root:"m_87cf2631"};const AAe={__staticSelector:"UnstyledButton"},pr=Jn((e,r)=>{const n=Me("UnstyledButton",AAe,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:lW,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=lW,pr.displayName="@mantine/core/UnstyledButton";var sW={root:"m_515a97f8"};const o3=ot((e,r)=>{const n=Me("VisuallyHidden",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,attributes:d,...u}=n,p=kt({name:"VisuallyHidden",classes:sW,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})});o3.classes=sW,o3.displayName="@mantine/core/VisuallyHidden";var cW={root:"m_1b7284a3"};const DAe=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:wn(r),"--paper-shadow":uH(n)}}),Af=Jn((e,r)=>{const n=Me("Paper",null,e),{classNames:o,className: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:cW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:DAe});return y.jsx(Se,{ref:r,mod:[{"data-with-border":c},g],...x("root"),variant:f,...w})});Af.classes=cW,Af.displayName="@mantine/core/Paper";function dW(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function uW(e,r,n,o,a){return e==="center"||o==="center"?{left:r}:e==="end"?{[a==="ltr"?"right":"left"]:n}:e==="start"?{[a==="ltr"?"left":"right"]:n}:{}}const MAe={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function NAe({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,arrowX:i,arrowY:l,dir:s}){const[c,d="center"]=e.split("-"),u={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[MAe[c]]:o},p=-r/2;return c==="left"?{...u,...dW(d,l,n,a),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...dW(d,l,n,a),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...uW(d,i,n,a,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...uW(d,i,n,a,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const a3=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}=bd();return i?y.jsx("div",{...d,ref:u,style:{...c,...NAe({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,dir:p,arrowX:l,arrowY:s})}}):null});a3.displayName="@mantine/core/FloatingArrow";function pW(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 hW={root:"m_9814e45f"};const PAe={zIndex:Ew("modal")},BAe=(e,{gradient:r,color:n,backgroundOpacity:o,blur:a,radius:i,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&Xl(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()}}),cS=Jn((e,r)=>{const n=Me("Overlay",PAe,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,R=kt({name:"Overlay",props:n,classes:hW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:BAe});return y.jsx(Se,{ref:r,...R("root"),mod:[{center:u,fixed:d},C],...$,children:p})});cS.classes=hW,cS.displayName="@mantine/core/Overlay";function dS(e){const r=document.createElement("div");return r.setAttribute("data-portal","true"),typeof e.className=="string"&&r.classList.add(...e.className.split(" ").filter(Boolean)),typeof e.style=="object"&&Object.assign(r.style,e.style),typeof e.id=="string"&&r.setAttribute("id",e.id),r}function IAe({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||dS(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const a=dS(n);return a.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(a),a}return dS(n)}const OAe={reuseTargetNode:!0},py=ot((e,r)=>{const{children:n,target:o,reuseTargetNode:a,...i}=Me("Portal",OAe,e),[l,s]=S.useState(!1),c=S.useRef(null);return xf(()=>(s(!0),c.current=IAe({target:o,reuseTargetNode:a,...i}),v9(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:Vi.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});py.displayName="@mantine/core/Portal";const Df=ot(({withinPortal:e=!0,children:r,...n},o)=>Dw()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(py,{ref:o,...n,children:r}));Df.displayName="@mantine/core/OptionalPortal";const hy=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),i3={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(30px)"},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-30px)"},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(30px)"},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-30px)"},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(-20px) skew(-10deg, -5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(20px) skew(-10deg, -5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(-5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...hy("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...hy("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...hy("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...hy("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...hy("top"),common:{transformOrigin:"top right"}}},fW={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function LAe({transition:e,state:r,duration:n,timingFunction:o}){const a={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in i3?{transitionProperty:i3[e].transitionProperty,...a,...i3[e].common,...i3[e][fW[r]]}:{}:{transitionProperty:e.transitionProperty,...a,...e.common,...e[fW[r]]}}function FAe({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:a,onExit:i,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=lo(),p=_H(),f=u.respectReducedMotion?p:!1,[g,v]=S.useState(f?0:e),[w,x]=S.useState(o?"entered":"exited"),k=S.useRef(-1),C=S.useRef(-1),_=S.useRef(-1);function $(){window.clearTimeout(k.current),window.clearTimeout(C.current),cancelAnimationFrame(_.current)}const R=A=>{$();const z=A?a:i,j=A?l:s,I=f?0:A?e:r;v(I),I===0?(typeof z=="function"&&z(),typeof j=="function"&&j(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{YN.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof z=="function"&&z(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof j=="function"&&j(),x(A?"entered":"exited")},I)})})},T=A=>{if($(),typeof(A?c:d)!="number"){R(A);return}C.current=window.setTimeout(()=>{R(A)},A?c:d)};return wf(()=>{T(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:g,transitionStatus:w,transitionTimingFunction:n||"ease"}}function wd({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:a,children:i,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const g=Dw(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=FAe({mounted: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(LAe({transition:r,duration:v,state:w,timingFunction:x}))})}wd.displayName="@mantine/core/Transition";const[VAe,mW]=ni("Popover component was not found in the tree");function l3({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const a=bH(r),i=$r(a,o),l=gd(e);return l?S.cloneElement(l,{[n]:i}):e}function gW(e){return y.jsx(o3,{tabIndex:-1,"data-autofocus":!0,...e})}l3.displayName="@mantine/core/FocusTrap",gW.displayName="@mantine/core/FocusTrapInitialFocus",l3.InitialFocus=gW;var yW={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const Qs=ot((e,r)=>{const n=Me("PopoverDropdown",null,e),{className:o,style:a,vars:i,children:l,onKeyDownCapture:s,variant:c,classNames:d,styles:u,...p}=n,f=mW(),g=KRe({opened:f.opened,shouldReturnFocus:f.returnFocus}),v=f.withRoles?{"aria-labelledby":f.getTargetId(),id:f.getDropdownId(),role:"dialog",tabIndex:-1}:{},w=$r(r,f.floating);return f.disabled?null:y.jsx(Df,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(wd,{mounted:f.opened,...f.transitionProps,transition:f.transitionProps?.transition||"fade",duration:f.transitionProps?.duration??150,keepMounted:f.keepMounted,exitDuration:typeof f.transitionProps?.exitDuration=="number"?f.transitionProps.exitDuration:f.transitionProps?.duration,children:x=>y.jsx(l3,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Se,{...v,...p,variant:c,onKeyDownCapture:FRe(()=>{f.onClose?.(),f.onDismiss?.()},{active:f.closeOnEscape,onTrigger:g,onKeyDown:s}),"data-position":f.placement,"data-fixed":f.floatingStrategy==="fixed"||void 0,...f.getStyles("dropdown",{className:o,props:n,classNames:d,styles:u,style:[{...x,zIndex:f.zIndex,top:f.y??0,left:f.x??0,width:f.width==="target"?void 0:$e(f.width),...f.referenceHidden?{display:"none"}:null},f.resolvedStyles.dropdown,u?.dropdown,a]}),children:[l,y.jsx(a3,{ref:f.arrowRef,arrowX:f.arrowX,arrowY:f.arrowY,visible:f.withArrow,position:f.placement,arrowSize:f.arrowSize,arrowRadius:f.arrowRadius,arrowOffset:f.arrowOffset,arrowPosition:f.arrowPosition,...f.getStyles("arrow",{props:n,classNames:d,styles:u})})]})})})})});Qs.classes=yW,Qs.displayName="@mantine/core/PopoverDropdown";const qAe={refProp:"ref",popupType:"dialog"},kd=ot((e,r)=>{const{children:n,refProp:o,popupType:a,...i}=Me("PopoverTarget",qAe,e),l=gd(n);if(!l)throw new Error("Popover.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=i,c=mW(),d=$r(c.reference,Rw(l),r),u=c.withRoles?{"aria-haspopup":a,"aria-expanded":c.opened,"aria-controls":c.getDropdownId(),id:c.getTargetId()}:{},p=l.props;return S.cloneElement(l,{...s,...u,...c.targetProps,className:el(c.targetProps.className,s.className,p.className),[o]:d,...c.controlled?null:{onClick:()=>{c.onToggle(),p.onClick?.()}}})});kd.displayName="@mantine/core/PopoverTarget";function HAe(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function UAe(e,r,n){const o=HAe(e.middlewares),a=[TU(e.offset),lAe()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&a.push(K9(typeof o.shift=="boolean"?{limiter:jU(),padding:5}:{limiter:jU(),padding:5,...o.shift})),o.flip&&a.push(typeof o.flip=="boolean"?Jw():Jw(o.flip)),o.inline&&a.push(typeof o.inline=="boolean"?uy():uy(o.inline)),a.push(AU({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&a.push(iAe({...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 WAe(e){const r=Dw(),[n,o]=Ys({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=t3({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:UAe(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:Zw});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return Zw(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),wf(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),wf(()=>{n!==a.current&&(n?e.onOpen?.():e.onClose?.()),a.current=n},[n,e.onClose,e.onOpen]),xf(()=>{let c=-1;return n&&(c=window.setTimeout(()=>e.setDropdownVisible(!0),4)),()=>{window.clearTimeout(c)}},[n,e.position]),{floating:s,controlled:typeof e.opened=="boolean",opened:n,onClose:i,onToggle:l}}const GAe={position:"bottom",offset:8,positionDependencies:[],transitionProps:{transition:"fade",duration:150},middlewares:{flip:!0,shift:!0,inline:!1},arrowSize:7,arrowOffset:5,arrowRadius:0,arrowPosition:"side",closeOnClickOutside:!0,withinPortal:!0,closeOnEscape:!0,trapFocus:!1,withRoles:!0,returnFocus:!1,withOverlay:!1,hideDetached:!0,clickOutsideEvents:["mousedown","touchstart"],zIndex:Ew("popover"),__staticSelector:"Popover",width:"max-content"},YAe=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:wn(r),"--popover-shadow":uH(n)}});function br(e){const r=Me("Popover",GAe,e),{children:n,position:o,offset: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:R,withinPortal:T,portalProps:A,closeOnEscape:z,clickOutsideEvents:j,trapFocus:I,onClose:P,onDismiss:L,onOpen:H,onChange:M,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:Z,returnFocus:O,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:yW,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:YAe}),{resolvedStyles:je}=T9({classNames:_,styles:$,props:r}),[Be,Je]=S.useState(s??G??!1),st=S.useRef(o),Le=S.useRef(null),[St,Ve]=S.useState(null),[qe,Xe]=S.useState(null),{dir:It}=bd(),Et=Dw(),be=oi(q),ke=WAe({middlewares:f,width:p,position:pW(It,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});hH(()=>{R&&(ke.onClose(),L?.())},j,[St,qe]);const Ye=S.useCallback(er=>{Ve(er),ke.floating.refs.setReference(er)},[ke.floating.refs.setReference]),yt=S.useCallback(er=>{Xe(er),ke.floating.refs.setFloating(er)},[ke.floating.refs.setFloating]),xt=S.useCallback(()=>{c?.onExited?.(),d?.(),Je(!1),ce||(st.current=o)},[c?.onExited,d,ce,o]),Tr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(VAe,{value:{returnFocus:O,disabled: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:Tr},width:p,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:I,withinPortal:T,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape:z,onDismiss:L,onClose:ke.onClose,onToggle:ke.onToggle,getTargetId:()=>`${be}-target`,getDropdownId:()=>`${be}-dropdown`,withRoles:Y,targetProps:pe,__staticSelector:U,classNames:_,styles:$,unstyled:C,variant:W,keepMounted:K,getStyles:xe,resolvedStyles:je,floatingStrategy:ae,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(wd,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(Df,{withinPortal:T,children:y.jsx(cS,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}br.Target=kd,br.Dropdown=Qs,br.displayName="@mantine/core/Popover",br.extend=e=>e;var al={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const vW=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:el(al.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:al.bar}),y.jsx("span",{className:al.bar}),y.jsx("span",{className:al.bar})]}));vW.displayName="@mantine/core/Bars";const bW=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:el(al.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:al.dot}),y.jsx("span",{className:al.dot}),y.jsx("span",{className:al.dot})]}));bW.displayName="@mantine/core/Dots";const xW=S.forwardRef(({className:e,...r},n)=>y.jsx(Se,{component:"span",className:el(al.ovalLoader,e),...r,ref:n}));xW.displayName="@mantine/core/Oval";const wW={bars:vW,oval:xW,dots:bW},XAe={loaders:wW,type:"oval"},ZAe=(e,{size:r,color:n})=>({root:{"--loader-size":dr(r,"loader-size"),"--loader-color":n?Ca(n,e):void 0}}),Mf=ot((e,r)=>{const n=Me("Loader",XAe,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:al,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:ZAe});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})});Mf.defaultLoaders=wW,Mf.classes=al,Mf.displayName="@mantine/core/Loader";var Nf={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const kW={orientation:"horizontal"},KAe=(e,{borderWidth:r})=>({group:{"--ai-border-width":$e(r)}}),s3=ot((e,r)=>{const n=Me("ActionIconGroup",kW,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",kW,e),w=kt({name:"ActionIconGroup",props:n,classes:Nf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:KAe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});s3.classes=Nf,s3.displayName="@mantine/core/ActionIconGroup";const QAe=(e,{radius:r,color:n,gradient:o,variant: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}}},uS=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:Nf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:QAe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});uS.classes=Nf,uS.displayName="@mantine/core/ActionIconGroupSection";const JAe=(e,{size:r,radius:n,variant:o,gradient: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:R,attributes:T,...A}=n,z=kt({name:["ActionIcon",v],props:n,className:o,style:c,classes:Nf,classNames:l,styles:s,unstyled:a,attributes:T,vars:x,varsResolver:JAe});return y.jsxs(pr,{...z("root",{active:!C&&!d&&!_}),...A,unstyled:a,variant:i,size:p,disabled:C||d,ref:r,mod:[{loading:d,disabled:C||_},R],children:[typeof d=="boolean"&&y.jsx(wd,{mounted:d,transition:"slide-down",duration:150,children:j=>y.jsx(Se,{component:"span",...z("loader",{style:j}),"aria-hidden":!0,children:y.jsx(Mf,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Se,{component:"span",mod:{loading:d},...z("icon"),children:k})]})});lr.classes=Nf,lr.displayName="@mantine/core/ActionIcon",lr.Group=s3,lr.GroupSection=uS;const _W=S.forwardRef(({size:e="var(--cb-icon-size, 70%)",style:r,...n},o)=>y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...r,width:e,height:e},ref:o,...n,children:y.jsx("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})}));_W.displayName="@mantine/core/CloseIcon";var SW={root:"m_86a44da5","root--subtle":"m_220c80f2"};const eDe={variant:"subtle"},tDe=(e,{size:r,radius:n,iconSize:o})=>({root:{"--cb-size":dr(r,"cb-size"),"--cb-radius":n===void 0?void 0:wn(n),"--cb-icon-size":$e(o)}}),lp=Jn((e,r)=>{const n=Me("CloseButton",eDe,e),{iconSize:o,children: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:SW,classNames:c,styles:u,unstyled:p,attributes:k,vars:i,varsResolver:tDe});return y.jsxs(pr,{ref:r,..._,unstyled:p,variant:v,disabled:g,mod:[{disabled:g||f},x],...$("root",{variant:v,active:!g&&!f}),children:[w||y.jsx(_W,{}),a]})});lp.classes=SW,lp.displayName="@mantine/core/CloseButton";function rDe(e){return S.Children.toArray(e).filter(Boolean)}var EW={root:"m_4081bf90"};const nDe={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},oDe=(e,{grow:r,preventGrowOverflow:n,gap:o,align:a,justify:i,wrap:l},{childWidth:s})=>({root:{"--group-child-width":r&&n?s:void 0,"--group-gap":Gs(o),"--group-align":a,"--group-justify":i,"--group-wrap":l}}),en=ot((e,r)=>{const n=Me("Group",nDe,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,R=rDe(c),T=R.length,A=Gs(d??"md"),z={childWidth:`calc(${100/T}% - (${A} - ${A} / ${T}))`},j=kt({name:"Group",props:n,stylesCtx:z,className:a,style:i,classes:EW,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:oDe});return y.jsx(Se,{...j("root"),ref:r,variant:x,mod:[{grow:g},C],size:k,...$,children:R})});en.classes=EW,en.displayName="@mantine/core/Group";const[aDe,iDe]=oy({size:"sm"}),CW=ot((e,r)=>{const n=Me("InputClearButton",null,e),{size:o,variant:a,vars:i,classNames:l,styles:s,...c}=n,d=iDe(),{resolvedClassNames:u,resolvedStyles:p}=T9({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})});CW.displayName="@mantine/core/InputClearButton";const lDe={xs:7,sm:8,md:10,lg:12,xl:15};function sDe({__clearable:e,__clearSection:r,rightSection:n,__defaultRightSection:o,size: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:lDe[a]},children:[i,n||o]}):n===null?null:n||i||o}const[cDe,c3]=oy({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var si={wrapper:"m_6c018570",input:"m_8fb7ebe7",section:"m_82577fc2",placeholder:"m_88bacfd0",root:"m_46b77525",label:"m_8fdc1311",required:"m_78a94662",error:"m_8f816625",description:"m_fe47ce59"};const dDe=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),d3=ot((e,r)=>{const n=Me("InputDescription",null,e),{classNames:o,className: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=c3(),x=kt({name:["InputWrapper",u],props:n,classes:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:dDe}),k=p&&w?.getStyles||x;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("description",w?.getStyles?{className:a,style:i}:void 0),...v})});d3.classes=si,d3.displayName="@mantine/core/InputDescription";const uDe=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),u3=ot((e,r)=>{const n=Me("InputError",null,e),{classNames:o,className: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:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:uDe}),x=c3(),k=f&&x?.getStyles||w;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("error",x?.getStyles?{className:a,style:i}:void 0),...v})});u3.classes=si,u3.displayName="@mantine/core/InputError";const $W={labelElement:"label"},pDe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0}}),p3=ot((e,r)=>{const n=Me("InputLabel",$W,e),{classNames:o,className: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",$W,n),$=kt({name:["InputWrapper",w],props:n,classes:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:pDe}),R=c3(),T=R?.getStyles||$;return y.jsxs(Se,{...T("label",R?.getStyles?{className: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",{...T("required"),"aria-hidden":!0,children:" *"})]})});p3.classes=si,p3.displayName="@mantine/core/InputLabel";const pS=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:si,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})});pS.classes=si,pS.displayName="@mantine/core/InputPlaceholder";function hDe(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 fDe={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},mDe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0},error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`},description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),hS=ot((e,r)=>{const n=Me("InputWrapper",fDe,e),{classNames:o,className: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:R,withAsterisk:T,id:A,required:z,__stylesApiProps:j,mod:I,attributes:P,...L}=n,H=kt({name:["InputWrapper",p],props:j||n,classes:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:mDe}),M={size:d,variant:u,__staticSelector:p},V=oi(A),B=typeof T=="boolean"?T:z,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,Z=`${U?F:""} ${Y?q:""}`,O=Z.trim().length>0?Z.trim():void 0,W=k?.id||`${V}-label`,K=v&&y.jsx(p3,{labelElement:$,id:W,htmlFor:G,required:B,...M,...k,children:v},"label"),Q=Y&&y.jsx(d3,{...C,...M,size:C?.size||M.size,id:C?.id||q,children:x},"description"),ae=y.jsx(S.Fragment,{children:f(R)},"input"),te=U&&S.createElement(u3,{..._,...M,size:_?.size||M.size,key:"error",id:_?.id||F},w),re=g.map(ue=>{switch(ue){case"label":return K;case"input":return ae;case"description":return Q;case"error":return te;default:return null}});return y.jsx(cDe,{value:{getStyles:H,describedBy:O,inputId:G,labelId:W,...hDe(g,{hasDescription:Y,hasError:U})},children:y.jsx(Se,{ref:r,variant:u,size:d,mod:[{error:!!w},I],...H("root"),...L,children:re})})});hS.classes=si,hS.displayName="@mantine/core/InputWrapper";const gDe={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},yDe=(e,r,n)=>({wrapper:{"--input-margin-top":n.offsetTop?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-margin-bottom":n.offsetBottom?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-height":dr(r.size,"input-height"),"--input-fz":Eo(r.size),"--input-radius":r.radius===void 0?void 0:wn(r.radius),"--input-left-section-width":r.leftSectionWidth!==void 0?$e(r.leftSectionWidth):void 0,"--input-right-section-width":r.rightSectionWidth!==void 0?$e(r.rightSectionWidth):void 0,"--input-padding-y":r.multiline?dr(r.size,"input-padding-y"):void 0,"--input-left-section-pointer-events":r.leftSectionPointerEvents,"--input-right-section-pointer-events":r.rightSectionPointerEvents}}),za=Jn((e,r)=>{const n=Me("Input",gDe,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:R,leftSectionPointerEvents:T,variant:A,vars:z,pointer:j,multiline:I,radius:P,id:L,withAria:H,withErrorStyles:M,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:Z,rest:O}=qH(Y),W=c3(),K={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=kt({name:["Input",d],props:u||n,classes:si,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:K,rootSelector:"wrapper",vars:z,varsResolver:yDe}),ae=H?{required:c,disabled:v,"aria-invalid":!!g,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=sDe({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(aDe,{value:{size:p||"sm"},children:y.jsxs(Se,{...Q("wrapper"),...Z,...f,mod:[{error:!!g&&M,pointer:j,disabled:v,multiline:I,"data-with-right-section":!!te,"data-with-left-section":!!w},V],variant:A,size:p,children:[w&&y.jsx("div",{...x,"data-position":"left",...Q("section",{className:x?.className,style:x?.style}),children:w}),y.jsx(Se,{component:"input",...O,...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})]})})});za.classes=si,za.Wrapper=hS,za.Label=p3,za.Error=u3,za.Description=d3,za.Placeholder=pS,za.ClearButton=CW,za.displayName="@mantine/core/Input";const vDe={gap:{type:"spacing",property:"gap"},rowGap:{type:"spacing",property:"rowGap"},columnGap:{type:"spacing",property:"columnGap"},align:{type:"identity",property:"alignItems"},justify:{type:"identity",property:"justifyContent"},wrap:{type:"identity",property:"flexWrap"},direction:{type:"identity",property:"flexDirection"}};var RW={root:"m_8bffd616"};const Js=Jn((e,r)=>{const n=Me("Flex",null,e),{classNames:o,className: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:RW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=lo(),$=Bw(),R=WH({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w},theme:_,data:vDe});return y.jsxs(y.Fragment,{children:[R.hasResponsiveStyles&&y.jsx(Pw,{selector:`.${$}`,styles:R.styles,media:R.media}),y.jsx(Se,{ref:r,...C("root",{className:$,style:yf(R.inlineStyles)}),...k})]})});Js.classes=RW,Js.displayName="@mantine/core/Flex";function bDe(e,r){if(!r||!e)return!1;let n=r.parentNode;for(;n!=null;){if(n===e)return!0;n=n.parentNode}return!1}function xDe({target:e,parent:r,ref:n,displayAfterTransitionEnd:o}){const 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=xd(w.borderTopWidth)+xd(x.borderTopWidth),C=xd(w.borderLeftWidth)+xd(x.borderLeftWidth),_={top:g.top-v.top-k,left:g.left-v.left-C,width:g.width,height:g.height};n.current.style.transform=`translateY(${_.top}px) translateX(${_.left}px)`,n.current.style.width=`${_.width}px`,n.current.style.height=`${_.height}px`},u=()=>{window.clearTimeout(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=>{bDe(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",g),()=>{r.removeEventListener("transitionend",g)}}},[r]),CH(()=>{Cze()!=="test"&&l(!0)},20,{autoInvoke:!0}),$H(g=>{g.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:i,hidden:s}}var zW={root:"m_96b553a6"};const wDe=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),h3=ot((e,r)=>{const n=Me("FloatingIndicator",null,e),{classNames:o,className: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:zW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:wDe}),k=S.useRef(null),{initialized:C,hidden:_}=xDe({target:d,parent:u,ref:k,displayAfterTransitionEnd:g}),$=$r(r,k);return!d||!u?null:y.jsx(Se,{ref:$,mod:[{initialized:C,hidden:_},f],...x("root"),...w})});h3.displayName="@mantine/core/FloatingIndicator",h3.classes=zW;function TW({open:e,close:r,openDelay:n,closeDelay:o}){const 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 fS({style:e,size:r=16,...n}){return y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...e,width:$e(r),height:$e(r),display:"block"},...n,children:y.jsx("path",{d:"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}fS.displayName="@mantine/core/AccordionChevron";var jW={root:"m_66836ed3",wrapper:"m_a5d60502",body:"m_667c2793",title:"m_6a03f287",label:"m_698f4f23",icon:"m_667f2a6a",message:"m_7fa78076",closeButton:"m_87f54839"};const kDe=(e,{radius:r,color:n,variant:o,autoContrast: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}}},f3=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:R,...T}=n,A=kt({name:"Alert",classes:jW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:kDe}),z=oi(g),j=p&&`${z}-title`||void 0,I=`${z}-body`;return y.jsx(Se,{id:z,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...T,"aria-describedby":f?I:void 0,"aria-labelledby":p?j:void 0,children:y.jsxs("div",{...A("wrapper"),children:[v&&y.jsx("div",{...A("icon"),children:v}),y.jsxs("div",{...A("body"),children:[p&&y.jsx("div",{...A("title"),"data-with-close-button":w||void 0,children:y.jsx("span",{id:j,...A("label"),children:p})}),f&&y.jsx("div",{id:I,...A("message"),"data-variant":C,children:f})]}),w&&y.jsx(lp,{...A("closeButton"),onClick:x,variant:"transparent",size:16,iconSize:16,"aria-label":k,unstyled:s})]})})});f3.classes=jW,f3.displayName="@mantine/core/Alert";var AW={root:"m_b6d8b162"};function _De(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const SDe={inherit:!1},EDe=(e,{variant:r,lineClamp:n,gradient:o,size:a,color:i})=>({root:{"--text-fz":Eo(a),"--text-lh":VRe(a),"--text-gradient":r==="gradient"?k9(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":i?Ca(i,e):void 0}}),at=Jn((e,r)=>{const n=Me("Text",SDe,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,R=kt({name:["Text",d],props:n,classes:AW,className:p,style:f,classNames:g,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:EDe});return y.jsx(Se,{...R("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":_De(a),"data-line-clamp":typeof o=="number","data-inline":i,"data-inherit":l},k],size:C,...$})});at.classes=AW,at.displayName="@mantine/core/Text";var DW={root:"m_849cf0da"};const CDe={underline:"hover"},mS=Jn((e,r)=>{const{underline:n,className:o,unstyled:a,mod:i,...l}=Me("Anchor",CDe,e);return y.jsx(at,{component:"a",ref:r,className:el({[DW.root]:!a},o),...l,mod:[{underline:n},i],__staticSelector:"Anchor",unstyled:a})});mS.classes=DW,mS.displayName="@mantine/core/Anchor";var ci={dropdown:"m_88b62a41",search:"m_985517d8",options:"m_b2821a6e",option:"m_92253aa5",empty:"m_2530cd1d",header:"m_858f94bd",footer:"m_82b967cb",group:"m_254f3e4f",groupLabel:"m_2bb2e9e5",chevron:"m_2943220b",optionsDropdownOption:"m_390b5f4",optionsDropdownCheckIcon:"m_8ee53fc2",optionsDropdownCheckPlaceholder:"m_a530ee0a"};const $De={error:null},RDe=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":dr(r,"combobox-chevron-size"),"--combobox-chevron-color":n?Ca(n,e):void 0}}),gS=ot((e,r)=>{const n=Me("ComboboxChevron",$De,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:ci,props:n,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:RDe,rootSelector:"chevron"});return y.jsx(Se,{component:"svg",...f,...g("chevron"),size:o,viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",mod:["combobox-chevron",{error: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"})})});gS.classes=ci,gS.displayName="@mantine/core/ComboboxChevron";const[zDe,di]=ni("Combobox component was not found in tree"),MW=S.forwardRef(({size:e,onMouseDown:r,onClick:n,onClear:o,...a},i)=>y.jsx(za.ClearButton,{ref:i,tabIndex:-1,"aria-hidden":!0,...a,onMouseDown:l=>{l.preventDefault(),r?.(l)},onClick:l=>{o(),n?.(l)}}));MW.displayName="@mantine/core/ComboboxClearButton";const m3=ot((e,r)=>{const{classNames:n,styles:o,className:a,style:i,hidden:l,...s}=Me("ComboboxDropdown",null,e),c=di();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})})});m3.classes=ci,m3.displayName="@mantine/core/ComboboxDropdown";const TDe={refProp:"ref"},NW=ot((e,r)=>{const{children:n,refProp:o}=Me("ComboboxDropdownTarget",TDe,e);if(di(),!Sw(n))throw new Error("Combobox.DropdownTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return y.jsx(br.Target,{ref:r,refProp:o,children:n})});NW.displayName="@mantine/core/ComboboxDropdownTarget";const fy=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxEmpty",null,e),c=di();return y.jsx(Se,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:i,style:a}),...s})});fy.classes=ci,fy.displayName="@mantine/core/ComboboxEmpty";function yS({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:a,autoComplete:i}){const l=di(),[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 jDe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},PW=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxEventsTarget",jDe,e),u=gd(n);if(!u)throw new Error("Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=di(),f=yS({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c});return S.cloneElement(u,{...f,...d,[o]:$r(r,p.store.targetRef,Rw(u))})});PW.displayName="@mantine/core/ComboboxEventsTarget";const vS=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxFooter",null,e),c=di();return y.jsx(Se,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});vS.classes=ci,vS.displayName="@mantine/core/ComboboxFooter";const bS=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=di(),f=oi(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]})});bS.classes=ci,bS.displayName="@mantine/core/ComboboxGroup";const xS=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxHeader",null,e),c=di();return y.jsx(Se,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});xS.classes=ci,xS.displayName="@mantine/core/ComboboxHeader";function BW({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}BW.displayName="@mantine/core/ComboboxHiddenInput";const my=ot((e,r)=>{const n=Me("ComboboxOption",null,e),{classNames:o,className: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=di(),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?.($)}})});my.classes=ci,my.displayName="@mantine/core/ComboboxOption";const g3=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=di(),f=oi(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)}})});g3.classes=ci,g3.displayName="@mantine/core/ComboboxOptions";const ADe={withAriaAttributes:!0,withKeyboardNavigation:!0},wS=ot((e,r)=>{const n=Me("ComboboxSearch",ADe,e),{classNames:o,styles:a,unstyled:i,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=di(),g=f.getStyles("search"),v=yS({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(za,{ref:$r(r,f.store.searchRef),classNames:[{input:g.className},o],styles:[{input:g.style},a],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});wS.classes=ci,wS.displayName="@mantine/core/ComboboxSearch";const DDe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},kS=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxTarget",DDe,e),u=gd(n);if(!u)throw new Error("Combobox.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=di(),f=yS({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c}),g=S.cloneElement(u,{...f,...d});return y.jsx(br.Target,{ref:$r(r,p.store.targetRef),children:g})});kS.displayName="@mantine/core/ComboboxTarget";function MDe(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o}return e}function NDe(e,r,n){for(let o=e+1;o{s||(c(!0),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=md(f.current),F=zw(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=md(f.current),q=zw(`#${d.current}`,F),G=q?fd("[data-combobox-option]",q):null;if(!G)return null;const U=B>=G.length?0:B<0?G.length-1:B;return u.current=U,G?.[U]&&!G[U].hasAttribute("data-combobox-disabled")?(_(),G[U].setAttribute("data-combobox-selected","true"),G[U].setAttribute("aria-selected","true"),G[U].scrollIntoView({block:"nearest",behavior:l}),G[U].id):null},[l,_]),R=S.useCallback(()=>{const B=md(f.current),F=zw(`#${d.current} [data-combobox-active]`,B);if(F){const q=fd(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),T=S.useCallback(()=>{const B=md(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(NDe(u.current,F,i))},[$,i]),A=S.useCallback(()=>{const B=md(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(MDe(u.current,F,i))},[$,i]),z=S.useCallback(()=>{const B=md(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(PDe(F))},[$]),j=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=md(f.current),G=fd(`#${d.current} [data-combobox-option]`,q),U=G.findIndex(Y=>Y.hasAttribute(`data-combobox-${B}`));u.current=U,F?.scrollIntoView&&G[U]?.scrollIntoView({block:"nearest",behavior:l})},0)},[]),I=S.useCallback(()=>{u.current=-1,_()},[_]),P=S.useCallback(()=>{const B=md(f.current);fd(`#${d.current} [data-combobox-option]`,B)?.[u.current]?.click()},[]),L=S.useCallback(B=>{d.current=B},[]),H=S.useCallback(()=>{g.current=window.setTimeout(()=>p.current?.focus(),0)},[]),M=S.useCallback(()=>{v.current=window.setTimeout(()=>f.current?.focus(),0)},[]),V=S.useCallback(()=>u.current,[]);return S.useEffect(()=>()=>{window.clearTimeout(g.current),window.clearTimeout(v.current),window.clearTimeout(w.current)},[]),{dropdownOpened:s,openDropdown:x,closeDropdown:k,toggleDropdown:C,selectedOptionIndex:u.current,getSelectedOptionIndex:V,selectOption:$,selectFirstOption:z,selectActiveOption:R,selectNextOption:T,selectPreviousOption:A,resetSelectedOption:I,updateSelectedOptionIndex:j,listId:d.current,setListId:L,clickSelectedOption:P,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:M}}const BDe={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},IDe=(e,{size:r,dropdownPadding:n})=>({options:{"--combobox-option-fz":Eo(r),"--combobox-option-padding":dr(r,"combobox-option-padding")},dropdown:{"--combobox-padding":n===void 0?void 0:$e(n),"--combobox-option-fz":Eo(r),"--combobox-option-padding":dr(r,"combobox-option-padding")}});function eo(e){const r=Me("Combobox",BDe,e),{classNames:n,styles:o,unstyled: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=IW(),C=l||k,_=kt({name:g||"Combobox",classes:ci,props:r,classNames:n,styles:o,unstyled:a,attributes:w,vars:s,varsResolver:IDe}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(zDe,{value:{getStyles:_,store:C,onOptionSubmit:c,size:u,resetSelectionOnOptionHover:f,readOnly:v},children:y.jsx(br,{opened:C.dropdownOpened,preventPositionChangeWhenVisible:!0,...x,onChange:R=>!R&&$(),withRoles:!1,unstyled:a,children:i})})}const ODe=e=>e;eo.extend=ODe,eo.classes=ci,eo.displayName="@mantine/core/Combobox",eo.Target=kS,eo.Dropdown=m3,eo.Options=g3,eo.Option=my,eo.Search=wS,eo.Empty=fy,eo.Chevron=gS,eo.Footer=vS,eo.Header=xS,eo.EventsTarget=PW,eo.DropdownTarget=NW,eo.Group=bS,eo.ClearButton=MW,eo.HiddenInput=BW;function OW({size:e,style:r,...n}){const o=e!==void 0?{width:$e(e),height:$e(e),...r}:r;return y.jsx("svg",{viewBox:"0 0 10 7",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:o,"aria-hidden":!0,...n,children:y.jsx("path",{d:"M4 4.586L1.707 2.293A1 1 0 1 0 .293 3.707l3 3a.997.997 0 0 0 1.414 0l5-5A1 1 0 1 0 8.293.293L4 4.586z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}var LW={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const LDe=(e,{radius:r,color:n,gradient:o,variant: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"?Ca(n,e):void 0}}},ec=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:$,...R}=n,T=kt({name:"Badge",props:n,classes:LW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:LDe});return y.jsxs(Se,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!g,"with-left-section":!!f},_],...T("root",{variant:w}),ref:r,...R,children:[f&&y.jsx("span",{...T("section"),"data-position":"left",children:f}),y.jsx("span",{...T("label"),children:v}),g&&y.jsx("span",{...T("section"),"data-position":"right",children:g})]})});ec.classes=LW,ec.displayName="@mantine/core/Badge";var FW={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const FDe={separator:"/"},VDe=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":Gs(r)}}),y3=ot((e,r)=>{const n=Me("Breadcrumbs",FDe,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,separator:u,separatorMargin:p,attributes:f,...g}=n,v=kt({name:"Breadcrumbs",classes:FW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:VDe}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=Sw(k)?S.cloneElement(k,{...v("breadcrumb",{className:k.props?.className}),key:C}):S.createElement("div",{...v("breadcrumb"),key:C},k);return x.push($),C!==_.length-1&&x.push(S.createElement(Se,{...v("separator"),key:`separator-${C}`},u)),x},[]);return y.jsx(Se,{ref:r,...v("root"),...g,children:w})});y3.classes=FW,y3.displayName="@mantine/core/Breadcrumbs";var Pf={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const VW={orientation:"horizontal"},qDe=(e,{borderWidth:r})=>({group:{"--button-border-width":$e(r)}}),_S=ot((e,r)=>{const n=Me("ButtonGroup",VW,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Me("ButtonGroup",VW,e),w=kt({name:"ButtonGroup",props:n,classes:Pf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:qDe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});_S.classes=Pf,_S.displayName="@mantine/core/ButtonGroup";const HDe=(e,{radius:r,color:n,gradient:o,variant: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}}},SS=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:Pf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:HDe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});SS.classes=Pf,SS.displayName="@mantine/core/ButtonGroupSection";const UDe={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${$e(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},WDe=(e,{radius:r,color:n,gradient:o,variant: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:R,mod:T,attributes:A,...z}=n,j=kt({name:"Button",props:n,classes:Pf,className:i,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:a,varsResolver:WDe}),I=!!d,P=!!u;return y.jsxs(pr,{ref:r,...j("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":I,"with-right-section":P},T],...z,children:[typeof v=="boolean"&&y.jsx(wd,{mounted:v,transition:UDe,duration:150,children:L=>y.jsx(Se,{component:"span",...j("loader",{style:L}),"aria-hidden":!0,children:y.jsx(Mf,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...j("inner"),children:[d&&y.jsx(Se,{component:"span",...j("section"),mod:{position:"left"},children:d}),y.jsx(Se,{component:"span",mod:{loading:v},...j("label"),children:c}),u&&y.jsx(Se,{component:"span",...j("section"),mod:{position:"right"},children:u})]})]})});Vn.classes=Pf,Vn.displayName="@mantine/core/Button",Vn.Group=_S,Vn.GroupSection=SS;const[GDe,YDe]=ni("Card component was not found in tree");var ES={root:"m_e615b15f",section:"m_599a2148"};const v3=Jn((e,r)=>{const n=Me("CardSection",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,withBorder:c,inheritPadding:d,mod:u,...p}=n,f=YDe();return y.jsx(Se,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:a,style:i,styles:l,classNames:o}),...p})});v3.classes=ES,v3.displayName="@mantine/core/CardSection";const XDe=(e,{padding:r})=>({root:{"--card-padding":Gs(r)}}),b3=Jn((e,r)=>{const n=Me("Card",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,padding:u,attributes:p,...f}=n,g=kt({name:"Card",props:n,classes:ES,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:XDe}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===v3?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(GDe,{value:{getStyles:g},children:y.jsx(Af,{ref:r,unstyled:s,...g("root"),...f,children:w})})});b3.classes=ES,b3.displayName="@mantine/core/Card",b3.Section=v3;var qW={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const HW={withShadow:!0},ZDe=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:wn(r),"--cs-size":$e(n)}}),gy=Jn((e,r)=>{const n=Me("ColorSwatch",HW,e),{classNames:o,className: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",HW,n),k=kt({name:"ColorSwatch",props:n,classes:qW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:ZDe});return y.jsxs(Se,{ref:r,variant:v,size:u,...k("root",{focusable:!0}),...x,children:[y.jsx("span",{...k("alphaOverlay")}),f&&y.jsx("span",{...k("shadowOverlay")}),y.jsx("span",{...k("colorOverlay",{style:{backgroundColor:d}})}),y.jsx("span",{...k("childrenOverlay"),children:g})]})});gy.classes=qW,gy.displayName="@mantine/core/ColorSwatch";const KDe={timeout:1e3};function UW(e){const{children:r,timeout:n,value:o,...a}=Me("CopyButton",KDe,e),i=GRe({timeout:n});return y.jsx(y.Fragment,{children:r({copy:()=>i.copy(o),copied:i.copied,...a})})}UW.displayName="@mantine/core/CopyButton";var WW={root:"m_3eebeb36",label:"m_9e365f20"};const QDe={orientation:"horizontal"},JDe=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?Ca(r,e):void 0,"--divider-border-style":n,"--divider-size":dr(o,"divider-size")}}),sp=ot((e,r)=>{const n=Me("Divider",QDe,e),{classNames:o,className: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:WW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:JDe});return y.jsx(Se,{ref:r,mod:[{orientation:u,"with-label":!!p},g],...x("root"),...w,role:"separator",children:p&&y.jsx(Se,{component:"span",mod:{position:f},...x("label"),children:p})})});sp.classes=WW,sp.displayName="@mantine/core/Divider";const[GW,YW]=ni("Grid component was not found in tree"),CS=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,XW=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":CS(e,r),ZW=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},KW=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function eMe({span:e,order:r,offset:n,selector:o}){const a=lo(),i=YW(),l=i.breakpoints||a.breakpoints,s=iy(e)===void 0?12:iy(e),c=yf({"--col-order":iy(r)?.toString(),"--col-flex-grow":ZW(s,i.grow),"--col-flex-basis":CS(s,i.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":XW(s,i.columns,i.grow),"--col-offset":KW(iy(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"]=ZW(e[f],i.grow),p[f]["--col-flex-basis"]=CS(e[f],i.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=XW(e[f],i.columns,i.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=KW(n[f],i.columns)),p),{}),u=pH(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(Pw,{styles:c,media:i.type==="container"?void 0:u,container:i.type==="container"?u:void 0,selector:o})}var $S={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const tMe={span:12},cp=ot((e,r)=>{const n=Me("GridCol",tMe,e),{classNames:o,className:a,style:i,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=YW(),g=Bw();return y.jsxs(y.Fragment,{children:[y.jsx(eMe,{selector:`.${g}`,span:c,order:d,offset:u}),y.jsx(Se,{ref:r,...f.getStyles("col",{className:el(a,g),style:i,classNames:o,styles:l}),...p})]})});cp.classes=$S,cp.displayName="@mantine/core/GridCol";function QW({gutter:e,selector:r,breakpoints:n,type:o}){const a=lo(),i=n||a.breakpoints,l=yf({"--grid-gutter":Gs(iy(e))}),s=So(i).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--grid-gutter"]=Gs(e[u])),d),{}),c=pH(So(s),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(Pw,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const rMe={gutter:"md",grow:!1,columns:12},nMe=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),yy=ot((e,r)=>{const n=Me("Grid",rMe,e),{classNames:o,className: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:$S,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:nMe}),$=Bw();return x==="container"&&w?y.jsxs(GW,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(QW,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(GW,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(QW,{selector:`.${$}`,...n}),y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});yy.classes=$S,yy.displayName="@mantine/core/Grid",yy.Col=cp;function JW({color:e,theme:r,defaultShade:n}){const o=vd({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var eG={root:"m_bcb3f3c2"};const oMe={color:"yellow"},aMe=(e,{color:r})=>({root:{"--mark-bg-dark":JW({color:r,theme:e,defaultShade:5}),"--mark-bg-light":JW({color:r,theme:e,defaultShade:2})}}),RS=ot((e,r)=>{const n=Me("Mark",oMe,e),{classNames:o,className: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:eG,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:aMe});return y.jsx(Se,{component:"mark",ref:r,variant:u,...g("root"),...f})});RS.classes=eG,RS.displayName="@mantine/core/Mark";function tG(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function iMe(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(tG):tG(r);if(!(Array.isArray(n)?n.filter(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 tc=Jn((e,r)=>{const{unstyled:n,children:o,highlight:a,highlightStyles:i,color:l,...s}=Me("Highlight",null,e),c=iMe(o,a);return y.jsx(at,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(RS,{unstyled:n,color:l,style:i,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});tc.classes=at.classes,tc.displayName="@mantine/core/Highlight";const[lMe,rG]=ni("HoverCard component was not found in the tree"),nG=S.createContext(!1),sMe=nG.Provider,zS=()=>S.useContext(nG);function TS(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...a}=Me("HoverCardDropdown",null,e),i=rG();if(zS()&&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})}TS.displayName="@mantine/core/HoverCardDropdown";const cMe={openDelay:0,closeDelay:0};function jS(e){const{openDelay:r,closeDelay:n,children:o}=Me("HoverCardGroup",cMe,e);return y.jsx(sMe,{value:!0,children:y.jsx(VU,{delay:{open:r,close:n},children:o})})}jS.displayName="@mantine/core/HoverCardGroup",jS.extend=e=>e;const dMe={refProp:"ref"},AS=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:a,...i}=Me("HoverCardTarget",dMe,e),l=gd(n);if(!l)throw new Error("HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=rG();if(zS()&&s.getReferenceProps&&s.reference){const p=s.getReferenceProps();return y.jsx(br.Target,{refProp:o,ref:r,...i,children:S.cloneElement(l,a?{[a]:{...p,ref:s.reference}}:{...p,ref:s.reference})})}const c=kn(l.props.onMouseEnter,s.openDropdown),d=kn(l.props.onMouseLeave,s.closeDropdown),u={onMouseEnter:c,onMouseLeave:d};return y.jsx(br.Target,{refProp:o,ref:r,...i,children:S.cloneElement(l,a?{[a]:u}:u)})});AS.displayName="@mantine/core/HoverCardTarget";function uMe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=zS(),i=oi(),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}=t3({open:o,onOpenChange:d}),{delay:f,setCurrentId:g}=qU(u,{id:i}),{getReferenceProps:v,getFloatingProps:w}=WU([LU(u,{enabled:!0,delay:a?f:{open:e.openDelay,close:e.closeDelay}}),GU(u,{role:"dialog"}),UU(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 pMe={openDelay:0,closeDelay:150,initiallyOpened:!1};function Bf(e){const{children:r,onOpen:n,onClose:o,openDelay:a,closeDelay:i,initiallyOpened:l,...s}=Me("HoverCard",pMe,e),c=uMe({openDelay:a,closeDelay:i,defaultOpened:l,onOpen:n,onClose:o});return y.jsx(lMe,{value:{openDropdown:c.openDropdown,closeDropdown:c.closeDropdown,getReferenceProps:c.getReferenceProps,getFloatingProps:c.getFloatingProps,reference:c.reference,floating:c.floating},children:y.jsx(br,{...s,opened:c.opened,__staticSelector:"HoverCard",children:r})})}Bf.displayName="@mantine/core/HoverCard",Bf.Target=AS,Bf.Dropdown=TS,Bf.Group=jS,Bf.extend=e=>e;var hMe=S.useLayoutEffect;const[fMe,_d]=ni("Menu component was not found in the tree");var Sd={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const DS=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("MenuDivider",null,e),c=_d();return y.jsx(Se,{ref:r,...c.getStyles("divider",{className:o,style:a,styles:i,classNames:n}),...s})});DS.classes=Sd,DS.displayName="@mantine/core/MenuDivider";const vy=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=_d(),v=kn(d,k=>{(k.key==="ArrowUp"||k.key==="ArrowDown")&&(k.preventDefault(),f.current?.querySelectorAll("[data-menu-item]:not(:disabled)")[0]?.focus())}),w=kn(s,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.openDropdown()),x=kn(c,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.closeDropdown());return y.jsxs(br.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:$r(r,f),...g.getStyles("dropdown",{className:o,style: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]})});vy.classes=Sd,vy.displayName="@mantine/core/MenuDropdown";const[mMe,x3]=oy(),by=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=_d(),x=x3(),k=lo(),{dir:C}=bd(),_=S.useRef(null),$=v,R=kn($.onClick,()=>{g||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),T=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?vd({color:s,theme:k}):null,z=kn($.onKeyDown,j=>{j.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(pr,{onMouseDown:j=>j.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style: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:R,onKeyDown:ay({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:z}),__vars:{"--menu-item-color":A?.isThemeColor&&A?.shade===void 0?`var(--mantine-color-${A.color}-6)`:T?.color,"--menu-item-hover":T?.hover},children:[d&&y.jsx("div",{...w.getStyles("itemSection",{styles: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})]})});by.classes=Sd,by.displayName="@mantine/core/MenuItem";const MS=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("MenuLabel",null,e),c=_d();return y.jsx(Se,{ref:r,...c.getStyles("label",{className:o,style:a,styles:i,classNames:n}),...s})});MS.classes=Sd,MS.displayName="@mantine/core/MenuLabel";const NS=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=_d(),v=x3(),w=kn(s,v?.open),x=kn(c,v?.close);return y.jsx(br.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:$r(r,f),...g.getStyles("dropdown",{className:o,style:a,styles:i,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});NS.classes=Sd,NS.displayName="@mantine/core/MenuSubDropdown";const PS=Jn((e,r)=>{const{classNames:n,className:o,style: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=_d(),x=x3(),k=lo(),{dir:C}=bd(),_=S.useRef(null),$=v,R=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,T=s?vd({color:s,theme:k}):null,A=kn($.onKeyDown,P=>{P.key==="ArrowRight"&&(x?.open(),x?.focusFirstItem()),P.key==="ArrowLeft"&&x?.parentContext&&(x.parentContext.close(),x.parentContext.focusParentItem())}),z=kn($.onClick,()=>{!f&&g&&w.closeDropdownImmediately()}),j=kn($.onMouseEnter,x?.open),I=kn($.onMouseLeave,x?.close);return y.jsxs(pr,{onMouseDown:P=>P.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style: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:j,onMouseLeave:I,onClick:z,onKeyDown:ay({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:A}),__vars:{"--menu-item-color":T?.isThemeColor&&T?.shade===void 0?`var(--mantine-color-${T.color}-6)`:R?.color,"--menu-item-hover":R?.hover},children:[c&&y.jsx("div",{...w.getStyles("itemSection",{styles: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(fS,{...w.getStyles("chevron"),size:14})})]})});PS.classes=Sd,PS.displayName="@mantine/core/MenuSubItem";function oG({children:e,refProp:r}){if(!Sw(e))throw new Error("Menu.Sub.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return _d(),y.jsx(br.Target,{refProp:r,popupType:"menu",children:e})}oG.displayName="@mantine/core/MenuSubTarget";const gMe={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function If(e){const{children:r,closeDelay:n,openDelay:o,...a}=Me("MenuSub",gMe,e),i=oi(),[l,{open:s,close:c}]=xze(!1),d=x3(),{openDropdown:u,closeDropdown:p}=TW({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(mMe,{value:{opened:l,close:p,open:u,focusFirstItem:()=>window.setTimeout(()=>{document.getElementById(`${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})})}If.extend=e=>e,If.displayName="@mantine/core/MenuSub",If.Target=oG,If.Dropdown=NS,If.Item=PS;const yMe={refProp:"ref"},w3=S.forwardRef((e,r)=>{const{children:n,refProp:o,...a}=Me("MenuTarget",yMe,e),i=gd(n);if(!i)throw new Error("Menu.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const l=_d(),s=i.props,c=kn(s.onClick,()=>{l.trigger==="click"?l.toggleDropdown():l.trigger==="click-hover"&&(l.setOpenedViaClick(!0),l.opened||l.openDropdown())}),d=kn(s.onMouseEnter,()=>(l.trigger==="hover"||l.trigger==="click-hover")&&l.openDropdown()),u=kn(s.onMouseLeave,()=>{(l.trigger==="hover"||l.trigger==="click-hover"&&!l.openedViaClick)&&l.closeDropdown()});return y.jsx(br.Target,{refProp:o,popupType:"menu",ref:r,...a,children:S.cloneElement(i,{onClick:c,onMouseEnter:d,onMouseLeave:u,"data-expanded":l.opened?!0:void 0})})});w3.displayName="@mantine/core/MenuTarget";const vMe={trapFocus:!0,closeOnItemClick:!0,withInitialFocusPlaceholder:!0,clickOutsideEvents:["mousedown","touchstart","keydown"],loop:!0,trigger:"click",openDelay:0,closeDelay:100,menuItemTabIndex:-1};function tn(e){const r=Me("Menu",vMe,e),{children:n,onOpen:o,onClose: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:R,withInitialFocusPlaceholder:T,attributes:A,...z}=r,j=kt({name:"Menu",classes:Sd,props:r,classNames:w,styles:x,unstyled:k,attributes:A}),[I,P]=Ys({value:i,defaultValue:l,finalValue:!1,onChange:c}),[L,H]=S.useState(!1),M=()=>{P(!1),H(!1),I&&a?.()},V=()=>{P(!0),!I&&o?.()},B=()=>{I?M():V()},{openDropdown:F,closeDropdown:q}=TW({open:V,close:M,closeDelay:v,openDelay:g}),G=Z=>HRe("[data-menu-item]","[data-menu-dropdown]",Z),{resolvedClassNames:U,resolvedStyles:Y}=T9({classNames:w,styles:x,props:r});return y.jsx(fMe,{value:{getStyles:j,opened:I,toggleDropdown:B,getItemIndex:G,openedViaClick:L,setOpenedViaClick:H,closeOnItemClick:d,closeDropdown:f==="click"?M:q,openDropdown:f==="click"?V:F,closeDropdownImmediately:M,loop:u,trigger:f,unstyled:k,menuItemTabIndex:$,withInitialFocusPlaceholder:T},children:y.jsx(br,{returnFocus:!0,...z,opened:I,onChange:B,defaultOpened:l,trapFocus:R?!1:s,closeOnEscape:p,__staticSelector:"Menu",classNames:U,styles:Y,unstyled:k,variant:C,keepMounted:R,children:n})})}tn.extend=e=>e,tn.withProps=PTe(tn),tn.classes=Sd,tn.displayName="@mantine/core/Menu",tn.Item=by,tn.Label=MS,tn.Dropdown=vy,tn.Target=w3,tn.Divider=DS,tn.Sub=If;const[Ywt,aG]=oy(),[bMe,xMe]=oy();var k3={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const wMe=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?dr(r):dr(n,"pg-gap")}}),BS=ot((e,r)=>{const n=Me("PillGroup",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,disabled:u,attributes:p,...f}=n,g=aG()?.size||d||void 0,v=kt({name:"PillGroup",classes:k3,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:wMe,stylesCtx:{size:g},rootSelector:"group"});return y.jsx(bMe,{value:{size:g,disabled:u},children:y.jsx(Se,{ref:r,size:g,...v("group"),...f})})});BS.classes=k3,BS.displayName="@mantine/core/PillGroup";const kMe={variant:"default"},_Me=(e,{radius:r},{size:n})=>({root:{"--pill-fz":dr(n,"pill-fz"),"--pill-height":dr(n,"pill-height"),"--pill-radius":r===void 0?void 0:wn(r)}}),_3=ot((e,r)=>{const n=Me("Pill",kMe,e),{classNames:o,className: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,$=xMe(),R=aG(),T=w||$?.size||void 0,A=R?.variant==="filled"?"contrast":d||"default",z=kt({name:"Pill",classes:k3,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:_Me,stylesCtx:{size:T}});return y.jsxs(Se,{component:"span",ref:r,variant:A,size:T,...z("root",{variant:A}),mod:[{"with-remove":p&&!x,disabled:x||$?.disabled},k],..._,children:[y.jsx("span",{...z("label"),children:u}),p&&y.jsx(lp,{variant:"transparent",radius:v,tabIndex:-1,"aria-hidden":!0,unstyled:s,...g,...z("remove",{className:g?.className,style:g?.style}),onMouseDown:j=>{j.preventDefault(),j.stopPropagation(),g?.onMouseDown?.(j)},onClick:j=>{j.stopPropagation(),f?.(),g?.onClick?.(j)}})]})});_3.classes=k3,_3.displayName="@mantine/core/Pill",_3.Group=BS;var iG={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const SMe=(e,{variant:r,color:n,childrenOffset:o,autoContrast: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":Gs(o)}}},IS=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:R,autoContrast:T,mod:A,attributes:z,onClick:j,onKeyDown:I,...P}=n,L=kt({name:"NavLink",props:n,classes:iG,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:SMe}),[H,M]=Ys({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{j?.(F),V&&(F.preventDefault(),M(!H))};return y.jsxs(y.Fragment,{children:[y.jsxs(pr,{...L("root"),component:"a",ref:r,onClick:B,onKeyDown:F=>{I?.(F),F.nativeEvent.code==="Space"&&V&&(F.preventDefault(),M(!H))},unstyled:s,mod:[{disabled:v,active:g,expanded:H},A],...P,children:[w&&y.jsx(Se,{component:"span",...L("section"),mod:{position:"left"},children:w}),y.jsxs(Se,{...L("body"),mod:{"no-wrap":$},children:[y.jsx(Se,{component:"span",...L("label"),children:k}),y.jsx(Se,{component:"span",mod:{active:g},...L("description"),children:C})]}),(V||x!==void 0)&&y.jsx(Se,{...L("section"),component:"span",mod:{rotate:H&&!_,position:"right"},children:V?x!==void 0?x:y.jsx(fS,{...L("chevron")}):x})]}),V&&y.jsx(QH,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});IS.classes=iG,IS.displayName="@mantine/core/NavLink";var lG={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const EMe={withCloseButton:!0},CMe=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:wn(r),"--notification-color":n?Ca(n,e):void 0}}),xy=ot((e,r)=>{const n=Me("Notification",EMe,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:R,role:T,attributes:A,...z}=n,j=kt({name:"Notification",classes:lG,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:CMe});return y.jsxs(Se,{...j("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:T||"alert",...z,children:[u&&!l&&y.jsx("div",{...j("icon"),children:u}),l&&y.jsx(Mf,{size:28,color:a,...R,...j("loader")}),y.jsxs("div",{...j("body"),children:[d&&y.jsx("div",{...j("title"),children:d}),y.jsx(Se,{...j("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(lp,{iconSize:16,color:"gray",...g,unstyled:k,onClick:f,...j("closeButton")})]})});xy.classes=lG,xy.displayName="@mantine/core/Notification";const $Me={duration:100,transition:"fade"};function sG(e,r){return{...$Me,...r,...e}}function RMe({offset:e,position:r,defaultOpened:n}){const[o,a]=S.useState(n),i=S.useRef(null),{x:l,y:s,elements:c,refs:d,update:u,placement:p}=t3({placement:r,middleware:[K9({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=Ks(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 S3={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const zMe={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:Ew("popover")},TMe=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?Ca(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),OS=ot((e,r)=>{const n=Me("TooltipFloating",zMe,e),{children:o,refProp: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:R,portalProps:T,attributes:A,...z}=n,j=lo(),I=kt({name:"TooltipFloating",props:n,classes:S3,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:R,varsResolver:TMe}),{handleMouseMove:P,x:L,y:H,opened:M,boundaryRef:V,floating:B,setOpened:F}=RMe({offset:v,position:w,defaultOpened:_}),q=gd(o);if(!q)throw new Error("[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const G=$r(V,Rw(q),r),U=q.props,Y=O=>{U.onMouseEnter?.(O),P(O),F(!0)},Z=O=>{U.onMouseLeave?.(O),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(Df,{...T,withinPortal:i,children:y.jsx(Se,{...z,...I("tooltip",{style:{...N9(l,j),zIndex:k,display:!C&&M?"block":"none",top:(H&&Math.round(H))??"",left:(L&&Math.round(L))??""}}),variant:$,ref:B,mod:{multiline:x},children:g})}),S.cloneElement(q,{...U,[a]:G,onMouseEnter:Y,onMouseLeave:Z})]})});OS.classes=S3,OS.displayName="@mantine/core/TooltipFloating";const cG=S.createContext(!1),jMe=cG.Provider,AMe=()=>S.useContext(cG),DMe={openDelay:0,closeDelay:0};function dp(e){const{openDelay:r,closeDelay:n,children:o}=Me("TooltipGroup",DMe,e);return y.jsx(jMe,{value:!0,children:y.jsx(VU,{delay:{open:r,close:n},children:o})})}dp.displayName="@mantine/core/TooltipGroup",dp.extend=e=>e;function MMe(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function NMe(e){const r=MMe(e.middlewares),n=[TU(e.offset)];return r.shift&&n.push(K9(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?Jw():Jw(r.flip)),n.push(AU({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?uy():uy(r.inline)):e.inline&&n.push(uy()),n}function PMe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=AMe(),i=oi(),l=S.useCallback($=>{n($),$&&x(i)},[i]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:g}={}}}=t3({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:NMe(e),whileElementsMounted:Zw}),{delay:v,currentId:w,setCurrentId:x}=qU(d,{id:i}),{getReferenceProps:k,getFloatingProps:C}=WU([LU(d,{enabled:e.events?.hover,delay:a?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),xAe(d,{enabled:e.events?.focus,visibleOnly:!0}),GU(d,{role:"tooltip"}),UU(d,{enabled:typeof e.opened>"u"})]);wf(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==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 dG={position:"top",refProp:"ref",withinPortal:!0,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:"side",offset:5,transitionProps:{duration:100,transition:"fade"},events:{hover:!0,focus:!1,touch:!1},zIndex:Ew("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},BMe=(e,{radius:r,color:n,variant:o,autoContrast: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",dG,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:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,offset:j,transitionProps:I,multiline:P,events:L,zIndex:H,disabled:M,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:Z,portalProps:O,mod:W,floatingStrategy:K,middlewares:Q,autoContrast:ae,attributes:te,target:re,...ue}=Me("Tooltip",dG,n),{dir:_e}=bd(),ce=S.useRef(null),pe=PMe({position:pW(_e,a),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:T,offset:typeof j=="number"?j+($?R/2:0):j,positionDependencies:[...V,re??o],inline:G,strategy: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:S3,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:Z,varsResolver:BMe}),je=gd(o);if(!re&&!je)return null;if(re){const Le=sG(I,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(Df,{...O,withinPortal:f,children:y.jsx(wd,{...Le,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Se,{...ue,"data-fixed":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(a3,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,...xe("arrow")})]})})})})}const Be=je.props,Je=$r(pe.reference,Rw(je),r),st=sG(I,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(Df,{...O,withinPortal:f,children:y.jsx(wd,{...st,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Se,{...ue,"data-fixed":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(a3,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,...xe("arrow")})]})})}),S.cloneElement(je,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,...Be,className:el(_,Be.className),[i]:Je}))]})});_n.classes=S3,_n.displayName="@mantine/core/Tooltip",_n.Floating=OS,_n.Group=dp;var uG={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const IMe={withItemsBorders:!0},OMe=(e,{radius:r,color:n,transitionDuration:o,size:a,transitionTimingFunction:i})=>({root:{"--sc-radius":r===void 0?void 0:wn(r),"--sc-color":n?Ca(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)}}),Of=ot((e,r)=>{const n=Me("SegmentedControl",IMe,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:R,transitionTimingFunction:T,variant:A,autoContrast:z,withItemsBorders:j,mod:I,attributes:P,...L}=n,H=kt({name:"SegmentedControl",props:n,classes:uG,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:OMe}),M=lo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=_ze(),[F,q]=S.useState(m9()),[G,U]=S.useState(null),[Y,Z]=S.useState({}),O=(re,ue)=>{Y[ue]=re,Z(Y)},[W,K]=Ys({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=oi(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=>O(ue,re.value),__vars:{"--sc-label-color":$!==void 0?$9({color:$,theme:M,autoContrast:z}):void 0},key:`${re.value}-label`},y.jsx("span",{...H("innerLabel"),children:re.label})))),te=$r(r,re=>U(re));return hze(()=>{q(m9())},[d.length]),d.length===0?null:y.jsxs(Se,{...H("root"),variant:A,size:g,ref:te,mod:[{"full-width":k,orientation:C,initialized:B,"with-items-borders":j},I],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(h3,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ae]})});Of.classes=uG,Of.displayName="@mantine/core/SegmentedControl";const[LMe,E3]=ni("SliderProvider was not found in tree"),pG=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:a,radius:i,...l},s)=>{const{getStyles:c}=E3();return y.jsx(Se,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});pG.displayName="@mantine/core/SliderRoot";const hG=S.forwardRef(({max:e,min:r,value:n,position:o,label: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}=E3(),[_,$]=S.useState(!1),R=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:T=>{$(!0),typeof p=="function"&&p(T)},onBlur:T=>{$(!1),typeof f=="function"&&f(T)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:T=>T.stopPropagation(),children:[w,y.jsx(wd,{mounted:a!=null&&!!R,transition:"fade",duration:0,...c,children:T=>y.jsx("div",{...C("label",{style:T}),children:a})})]})});hG.displayName="@mantine/core/SliderThumb";function fG({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function FMe({mark:e,offset:r,value:n,inverted:o=!1}){return o?typeof r=="number"&&e.value<=r||e.value>=n:typeof r=="number"?e.value>=r&&e.value<=n:e.value<=n}function mG({marks:e,min:r,max:n,disabled:o,value:a,offset:i,inverted:l}){const{getStyles:s}=E3();if(!e)return null;const c=e.map((d,u)=>S.createElement(Se,{...s("markWrapper"),__vars:{"--mark-offset":`${fG({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Se,{...s("mark"),mod:{filled:FMe({mark:d,value:a,offset:i,inverted:l}),disabled:o}}),d.label&&y.jsx("div",{...s("markLabel"),children:d.label})));return y.jsx("div",{children:c})}mG.displayName="@mantine/core/SliderMarks";function gG({filled:e,children:r,offset:n,disabled:o,marksOffset:a,inverted:i,containerProps:l,...s}){const{getStyles:c}=E3();return y.jsx(Se,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Se,{...c("track"),mod:{inverted: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(mG,{...s,offset:a,disabled:o,inverted:i})]})})}gG.displayName="@mantine/core/SliderTrack";function VMe({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 C3(e,r){return parseFloat(e.toFixed(r))}function qMe(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function LS(e,r){const n=[...r].sort((o,a)=>o.value-a.value).find(o=>o.value>e);return n?n.value:e}function FS(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 vG(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var bG={root:"m_dd36362e",label:"m_c9357328",thumb:"m_c9a9a60a",trackContainer:"m_a8645c2",track:"m_c9ade57f",bar:"m_38aeed47",markWrapper:"m_b7b0423a",mark:"m_dd33bc19",markLabel:"m_68c77a5b"};const HMe={radius:"xl",min:0,max:100,step:1,marks:[],label:e=>e,labelTransitionProps:{transition:"fade",duration:0},thumbLabel:"",showLabelOnHover:!0,scale:e=>e,size:"md"},UMe=(e,{size:r,color:n,thumbSize:o,radius:a})=>({root:{"--slider-size":dr(r,"slider-size"),"--slider-color":n?Ca(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)"}}),VS=ot((e,r)=>{const n=Me("Slider",HMe,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:R,thumbChildren:T,disabled:A,unstyled:z,scale:j,inverted:I,className:P,style:L,vars:H,hiddenInputProps:M,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=kt({name:"Slider",props:n,classes:bG,classNames:o,className:P,styles:a,style:L,attributes:F,vars:H,varsResolver:UMe,unstyled:z}),{dir:U}=bd(),[Y,Z]=S.useState(!1),[O,W]=Ys({value:typeof i=="number"?hd(i,d,u):i,defaultValue:typeof v=="number"?hd(v,d,u):v,finalValue:hd(0,d,u),onChange:l}),K=S.useRef(O),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=fG({value:O,min:re,max:ue}),ce=j(O),pe=typeof k=="function"?k(ce):k,xe=g??qMe(f),je=S.useCallback(({x:Ve})=>{if(!A){const qe=VMe({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=hd(qe,d,u);W(V&&x?.length?TH(Xe,x.map(It=>It.value)):Xe),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?TH(K.current,x.map(qe=>qe.value)):K.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=kH(je,{onScrubEnd:Be},U),Le=S.useCallback(Ve=>{!A&&Q.current&&Q.current(Ve)},[A]),St=Ve=>{if(!A)switch(Ve.key){case"ArrowUp":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=LS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?FS(O,x):LS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(U==="rtl"?O-f:O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=FS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(O-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?LS(O,x):FS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(U==="rtl"?O+f:O-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(yG(x)),Le(yG(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(vG(x)),Le(vG(x));break}W(u),Le(u);break}}};return y.jsx(LMe,{value:{getStyles:G},children:y.jsxs(pG,{...q,ref:$r(r,ae),onKeyDownCapture:St,onMouseDownCapture:()=>ae.current?.focus(),size:c,disabled:A,children:[y.jsx(gG,{inverted:I,offset:0,filled:_e,marks:x,min:re,max:ue,value:ce,disabled:A,containerProps:{ref:Je,onMouseEnter:R?()=>Z(!0):void 0,onMouseLeave:R?()=>Z(!1):void 0},children:y.jsx(hG,{max:ue,min:re,value:ce,position:_e,dragging:st,label:pe,ref:te,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:R,isHovered:Y,disabled:A,...B,children:T})}),y.jsx("input",{type:"hidden",name:w,value:ce,...M})]})})});VS.classes=bG,VS.displayName="@mantine/core/Slider";const qS=ot((e,r)=>{const{w:n,h:o,miw: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})});qS.displayName="@mantine/core/Space";var xG={root:"m_6d731127"};const WMe={gap:"md",align:"stretch",justify:"flex-start"},GMe=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":Gs(r),"--stack-align":n,"--stack-justify":o}}),Lo=ot((e,r)=>{const n=Me("Stack",WMe,e),{classNames:o,className: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:xG,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:GMe});return y.jsx(Se,{ref:r,...w("root"),variant:f,...v})});Lo.classes=xG,Lo.displayName="@mantine/core/Stack";const[YMe,HS]=ni("Tabs component was not found in the tree");var wy={root:"m_89d60db1","list--default":"m_576c9d4",list:"m_89d33d6d",tab:"m_4ec4dce6",panel:"m_b0c91715",tabSection:"m_fc420b1f",tabLabel:"m_42bbd1ae","tab--default":"m_539e827b","list--outline":"m_6772fbd5","tab--outline":"m_b59ab47c","tab--pills":"m_c3381914"};const ky=ot((e,r)=>{const n=Me("TabsList",null,e),{children:o,className:a,grow:i,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=HS();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})});ky.classes=wy,ky.displayName="@mantine/core/TabsList";const rc=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=HS(),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})});rc.classes=wy,rc.displayName="@mantine/core/TabsPanel";const Lf=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:$}=bd(),R=HS(),T=s===R.value,A=j=>{R.onChange(R.allowTabDeactivation&&s===R.value?null:s),c?.(j)},z={classNames:g,styles:v,props:n};return y.jsxs(pr,{...R.getStyles("tab",{className:o,style:f,variant:R.variant,...z}),disabled:u,unstyled:R.unstyled,variant:R.variant,mod:[{active:T,disabled:u,orientation:R.orientation,inverted:R.inverted,placement:R.orientation==="vertical"&&R.placement},x],ref:r,role:"tab",id:R.getTabId(s),"aria-selected":T,tabIndex:k!==void 0?k:T||R.value===null?0:-1,"aria-controls":R.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?Ca(p,_):void 0},onKeyDown:ay({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:R.activateTabWithKeyboard,loop:R.loop,orientation:R.orientation||"horizontal",dir:$,onKeyDown:d}),...C,children:[l&&y.jsx("span",{...R.getStyles("tabSection",z),"data-position":"left",children:l}),a&&y.jsx("span",{...R.getStyles("tabLabel",z),children:a}),i&&y.jsx("span",{...R.getStyles("tabSection",z),"data-position":"right",children:i})]})});Lf.classes=wy,Lf.displayName="@mantine/core/TabsTab";const wG="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",XMe={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},ZMe=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":wn(r),"--tabs-color":Ca(n,e),"--tabs-text-color":fTe(o,e)?$9({color:n,theme:e,autoContrast:o}):void 0}}),up=ot((e,r)=>{const n=Me("Tabs",XMe,e),{defaultValue:o,value: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:R,style:T,vars:A,autoContrast:z,mod:j,attributes:I,...P}=n,L=oi(d),[H,M]=Ys({value:a,defaultValue:o,finalValue:null,onChange:i}),V=kt({name:"Tabs",props:n,classes:wy,className:R,style:T,classNames:C,styles:_,unstyled:$,attributes:I,vars:A,varsResolver:ZMe});return y.jsx(YMe,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:cH(`${L}-tab`,wG),getPanelId:cH(`${L}-panel`,wG),onChange:M,allowTabDeactivation:p,variant:f,color:g,radius:v,inverted:w,keepMounted:k,unstyled:$,getStyles:V},children:y.jsx(Se,{ref:r,id:L,variant:f,mod:[{orientation:l,inverted:l==="horizontal"&&w,placement:l==="vertical"&&x},j],...V("root"),...P,children:s})})});up.classes=wy,up.displayName="@mantine/core/Tabs",up.Tab=Lf,up.Panel=rc,up.List=ky;var kG={root:"m_7341320d"};const KMe=(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}}},Ta=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:kG,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:KMe});return y.jsx(Se,{ref:r,...f("root"),...p})});Ta.classes=kG,Ta.displayName="@mantine/core/ThemeIcon";const QMe=["h1","h2","h3","h4","h5","h6"],JMe=["xs","sm","md","lg","xl"];function eNe(e,r){const n=r!==void 0?r:`h${e}`;return QMe.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:JMe.includes(n)?{fontSize:`var(--mantine-font-size-${n})`,fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}:{fontSize:$e(n),fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}}var _G={root:"m_8a5d1357"};const tNe={order:1},rNe=(e,{order:r,size:n,lineClamp:o,textWrap:a})=>{const i=eNe(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}}},pp=ot((e,r)=>{const n=Me("Title",tNe,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:_G,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:rNe});return[1,2,3,4,5,6].includes(c)?y.jsx(Se,{...k("root"),component:`h${c}`,variant:p,ref:r,mod:[{order:c,"data-line-clamp":typeof f=="number"},v],size:u,...x}):null});pp.classes=_G,pp.displayName="@mantine/core/Title";function SG(e,r,n){if(!e||!r)return[];const o=n.indexOf(e),a=n.indexOf(r),i=Math.min(o,a),l=Math.max(o,a);return n.slice(i,l+1)}function US({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(US,{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&&vf(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=vf(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const R=Array.from($.querySelectorAll("[role=treeitem]")),T=R.indexOf(_.currentTarget);if(T===-1)return;const A=_.nativeEvent.code==="ArrowDown"?T+1:T-1;if(R[A]?.focus(),_.shiftKey){const z=R[A];z&&o.setSelectedState(SG(o.anchorNode,z.dataset.value,d))}}_.nativeEvent.code==="Space"&&(p&&(_.stopPropagation(),_.preventDefault(),o.toggleExpanded(e.value)),f&&(_.stopPropagation(),_.preventDefault(),o.isNodeChecked(e.value)?o.uncheckNode(e.value):o.checkNode(e.value)))},x=_=>{_.stopPropagation(),u&&_.shiftKey&&o.anchorNode?(o.setSelectedState(SG(o.anchorNode,e.value,d)),g.current?.focus()):(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})]})}US.displayName="@mantine/core/TreeNode";function $3(e,r,n=[]){const o=[];for(const a of e)if(Array.isArray(a.children)&&a.children.length>0){const i=$3(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 EG(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=EG(e,n.children);if(o)return o}}return null}function R3(e,r,n=[]){const o=EG(e,r);return o?!Array.isArray(o.children)||o.children.length===0?[o.value]:(o.children.forEach(a=>{Array.isArray(a.children)&&a.children.length>0?R3(a.value,r,n):n.push(a.value)}),n):n}function CG(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...CG(n.children)):r.push(n.value),r),[])}function nNe(e,r,n){return n.length===0?!1:n.includes(e)?!0:$3(r,n).result.some(o=>o.value===e&&o.checked)}const oNe=zH(nNe);function aNe(e,r,n){return n.length===0?!1:$3(r,n).result.some(o=>o.value===e&&o.indeterminate)}const iNe=zH(aNe);function $G(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)&&$G(e,a.children,n,o)}),o}function lNe(e,r){const n=[];return e.forEach(o=>n.push(...R3(o,r))),Array.from(new Set(n))}function _y({initialSelectedState:e=[],initialCheckedState:r=[],initialExpandedState:n={},multiple:o=!1,onNodeCollapse: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=>$G(F,B,u)),g(F=>lNe(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?i?.(B):a?.(B),q})},[a,i]),$=S.useCallback(B=>{d(F=>(F[B]!==!1&&a?.(B),{...F,[B]:!1}))},[a]),R=S.useCallback(B=>{d(F=>(F[B]!==!0&&i?.(B),{...F,[B]:!0}))},[i]),T=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!0}),F})},[]),A=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!1}),F})},[]),z=S.useCallback(B=>p(F=>o?F.includes(B)?(w(null),F.filter(q=>q!==B)):(w(B),[...F,B]):F.includes(B)?(w(null),[]):(w(B),[B])),[]),j=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),I=S.useCallback(B=>{v===B&&w(null),p(F=>F.filter(q=>q!==B))},[]),P=S.useCallback(()=>{p([]),w(null)},[]),L=S.useCallback(B=>{const F=R3(B,l);g(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=R3(B,l);g(q=>q.filter(G=>!F.includes(G)))},[l]),M=S.useCallback(()=>{g(()=>CG(l))},[l]),V=S.useCallback(()=>{g([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:R,expandAllNodes:T,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:M,uncheckAllNodes:V,setCheckedState:g,toggleSelected:z,select:j,deselect:I,clearSelected:P,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>$3(l,f).result,isNodeChecked:B=>oNe(B,l,f),isNodeIndeterminate:B=>iNe(B,l,f)}}var RG={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function zG(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...zG(n.children)),r),[])}const sNe={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},cNe=(e,{levelOffset:r})=>({root:{"--level-offset":Gs(r)}}),Ff=ot((e,r)=>{const n=Me("Tree",sNe,e),{classNames:o,className: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,R=_y(),T=p||R,A=kt({name:"Tree",classes:RG,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:cNe}),z=hH(()=>v&&T.clearSelected()),j=$r(r,z),I=S.useMemo(()=>zG(d),[d]);S.useEffect(()=>{T.initialize(d)},[d]);const P=d.map((L,H)=>y.jsx(US,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:g,controller:T,renderNode:f,flatValues:I,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Se,{component:"ul",ref:j,...A("root"),...$,role:"tree","aria-multiselectable":T.multiple,"data-tree-root":!0,children:P})});Ff.displayName="@mantine/core/Tree",Ff.classes=RG;const WS=S.createContext(null);function TG(){const e=S.useContext(WS);if(!e)throw new Error("useRootContainer must be used within a RootContainer");return e}function dNe(){return TG().ref}function uNe(){return TG().ref.current}const jG=S.createContext(null);function pNe(){const e=S.useContext(jG);return e===null&&console.warn("ReduceGraphicsMode is not provided"),e??!1}const[hNe,fNe]=ni("PanningAtomSafeCtx is not provided");function mNe({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=Q$e(!1)),f7(()=>{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(hNe,{value:s.current,children:y.jsx(jG.Provider,{value:n,children:y.jsx("div",{id:e,className:Ge("likec4-root",r),ref:l,...n&&{"data-likec4-reduced-graphics":!0},children:a&&!!c.ref.current&&y.jsx(WS.Provider,{value:c,children:o})})})})}const Sy=S.createContext(null),GS=S.createContext(null);function gNe(){return S.useContext(Sy)}function Fo(){const e=S.useContext(Sy);if(!e)throw new Error("LikeC4Model not found. Make sure you have LikeC4ModelProvider.");return e}function yNe(){const e=Fo(),[r,n]=S.useState(e.$data.specification);return S.useEffect(()=>{n(o=>tt(o,e.$data.specification)?o:e.$data.specification)},[e]),r}const AG=S.createContext({}),vNe=Cke,bNe=e=>{const r=e.color;if(GO(e))return` --colors-likec4-tag-bg: ${r}; --colors-likec4-tag-bg-hover: color-mix(in oklab, ${r}, var(--colors-likec4-mix-color) 20%); `;if(!vNe.includes(r))return"";let n="12";return["mint","grass","lime","yellow","amber"].includes(r)&&(n="dark-2"),` @@ -106,9 +106,9 @@ ${d}`}function $9({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n --colors-likec4-tag-bg-hover: var(--colors-${r}-10); --colors-likec4-tag-text: var(--colors-${r}-${n}); `};function xNe(e,r){return!e||tp(e)?"":Jr(uw(e),Mq(([n,o])=>[`:is(${r} [data-likec4-tag="${n}"]) {`,bNe(o),"}"]),Lq(` -`))}function wNe({children:e,rootSelector:r}){const n=yNe().tags,o=xNe(n,r);return y.jsxs(AG.Provider,{value:n,children:[o!==""&&y.jsx(kNe,{stylesheet:o}),e]})}const kNe=S.memo(({stylesheet:e})=>{const r=np()?.();return y.jsx("style",{"data-likec4-tags":!0,type:"text/css",dangerouslySetInnerHTML:{__html:e},nonce:r})});function _Ne(e){return S.useContext(AG)[e]??{color:"tomato"}}function DG(){return oi().replace("mantine-","likec4-")}var SNe="css,pos,insetX,insetY,insetEnd,end,insetStart,start,flexDir,p,pl,pr,pt,pb,py,paddingY,paddingX,px,pe,paddingEnd,ps,paddingStart,ml,mr,mt,mb,m,my,marginY,mx,marginX,me,marginEnd,ms,marginStart,ringWidth,ringColor,ring,ringOffset,w,minW,maxW,h,minH,maxH,textShadowColor,bgPosition,bgPositionX,bgPositionY,bgAttachment,bgClip,bg,bgColor,bgOrigin,bgImage,bgRepeat,bgBlendMode,bgSize,bgGradient,bgLinear,bgRadial,bgConic,rounded,roundedTopLeft,roundedTopRight,roundedBottomRight,roundedBottomLeft,roundedTop,roundedRight,roundedBottom,roundedLeft,roundedStartStart,roundedStartEnd,roundedStart,roundedEndStart,roundedEndEnd,roundedEnd,borderX,borderXWidth,borderXColor,borderY,borderYWidth,borderYColor,borderStart,borderStartWidth,borderStartColor,borderEnd,borderEndWidth,borderEndColor,shadow,shadowColor,x,y,z,scrollMarginY,scrollMarginX,scrollPaddingY,scrollPaddingX,aspectRatio,boxDecorationBreak,zIndex,boxSizing,objectPosition,objectFit,overscrollBehavior,overscrollBehaviorX,overscrollBehaviorY,position,top,left,inset,insetInline,insetBlock,insetBlockEnd,insetBlockStart,insetInlineEnd,insetInlineStart,right,bottom,float,visibility,display,hideFrom,hideBelow,flexBasis,flex,flexDirection,flexGrow,flexShrink,gridTemplateColumns,gridTemplateRows,gridColumn,gridRow,gridColumnStart,gridColumnEnd,gridAutoFlow,gridAutoColumns,gridAutoRows,gap,gridGap,gridRowGap,gridColumnGap,rowGap,columnGap,justifyContent,alignContent,alignItems,alignSelf,padding,paddingLeft,paddingRight,paddingTop,paddingBottom,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingInline,paddingInlineEnd,paddingInlineStart,marginLeft,marginRight,marginTop,marginBottom,margin,marginBlock,marginBlockEnd,marginBlockStart,marginInline,marginInlineEnd,marginInlineStart,spaceX,spaceY,outlineWidth,outlineColor,outline,outlineOffset,focusRing,focusVisibleRing,focusRingColor,focusRingOffset,focusRingWidth,focusRingStyle,divideX,divideY,divideColor,divideStyle,width,inlineSize,minWidth,minInlineSize,maxWidth,maxInlineSize,height,blockSize,minHeight,minBlockSize,maxHeight,maxBlockSize,boxSize,color,fontFamily,fontSize,fontSizeAdjust,fontPalette,fontKerning,fontFeatureSettings,fontWeight,fontSmoothing,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariationSettings,fontVariantNumeric,letterSpacing,lineHeight,textAlign,textDecoration,textDecorationColor,textEmphasisColor,textDecorationStyle,textDecorationThickness,textUnderlineOffset,textTransform,textIndent,textShadow,WebkitTextFillColor,textOverflow,verticalAlign,wordBreak,textWrap,truncate,lineClamp,listStyleType,listStylePosition,listStyleImage,listStyle,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundAttachment,backgroundClip,background,backgroundColor,backgroundOrigin,backgroundImage,backgroundRepeat,backgroundBlendMode,backgroundSize,backgroundGradient,backgroundLinear,backgroundRadial,backgroundConic,textGradient,gradientFromPosition,gradientToPosition,gradientFrom,gradientTo,gradientVia,gradientViaPosition,borderRadius,borderTopLeftRadius,borderTopRightRadius,borderBottomRightRadius,borderBottomLeftRadius,borderTopRadius,borderRightRadius,borderBottomRadius,borderLeftRadius,borderStartStartRadius,borderStartEndRadius,borderStartRadius,borderEndStartRadius,borderEndEndRadius,borderEndRadius,border,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,borderBlockStartWidth,borderBlockEndWidth,borderColor,borderInline,borderInlineWidth,borderInlineColor,borderBlock,borderBlockWidth,borderBlockColor,borderLeft,borderLeftColor,borderInlineStart,borderInlineStartWidth,borderInlineStartColor,borderRight,borderRightColor,borderInlineEnd,borderInlineEndWidth,borderInlineEndColor,borderTop,borderTopColor,borderBottom,borderBottomColor,borderBlockEnd,borderBlockEndColor,borderBlockStart,borderBlockStartColor,opacity,boxShadow,boxShadowColor,mixBlendMode,filter,brightness,contrast,grayscale,hueRotate,invert,saturate,sepia,dropShadow,blur,backdropFilter,backdropBlur,backdropBrightness,backdropContrast,backdropGrayscale,backdropHueRotate,backdropInvert,backdropOpacity,backdropSaturate,backdropSepia,borderCollapse,borderSpacing,borderSpacingX,borderSpacingY,tableLayout,transitionTimingFunction,transitionDelay,transitionDuration,transitionProperty,transition,animation,animationName,animationTimingFunction,animationDuration,animationDelay,animationPlayState,animationComposition,animationFillMode,animationDirection,animationIterationCount,animationRange,animationState,animationRangeStart,animationRangeEnd,animationTimeline,transformOrigin,transformBox,transformStyle,transform,rotate,rotateX,rotateY,rotateZ,scale,scaleX,scaleY,translate,translateX,translateY,translateZ,accentColor,caretColor,scrollBehavior,scrollbar,scrollbarColor,scrollbarGutter,scrollbarWidth,scrollMargin,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollMarginBottom,scrollMarginBlock,scrollMarginBlockEnd,scrollMarginBlockStart,scrollMarginInline,scrollMarginInlineEnd,scrollMarginInlineStart,scrollPadding,scrollPaddingBlock,scrollPaddingBlockStart,scrollPaddingBlockEnd,scrollPaddingInline,scrollPaddingInlineEnd,scrollPaddingInlineStart,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollPaddingBottom,scrollSnapAlign,scrollSnapStop,scrollSnapType,scrollSnapStrictness,scrollSnapMargin,scrollSnapMarginTop,scrollSnapMarginBottom,scrollSnapMarginLeft,scrollSnapMarginRight,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,touchAction,userSelect,overflow,overflowWrap,overflowX,overflowY,overflowAnchor,overflowBlock,overflowInline,overflowClipBox,overflowClipMargin,overscrollBehaviorBlock,overscrollBehaviorInline,fill,stroke,strokeWidth,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,srOnly,debug,appearance,backfaceVisibility,clipPath,hyphens,mask,maskImage,maskSize,textSizeAdjust,container,containerName,containerType,cursor,colorPalette,_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_complete,_incomplete,_dragging,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_grabbed,_underValue,_overValue,_atValue,_default,_optional,_open,_closed,_fullscreen,_loading,_hidden,_current,_currentPage,_currentStep,_today,_unavailable,_rangeStart,_rangeEnd,_now,_topmost,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_icon,_starting,_noscript,_invertedColors,_shapeSizeXs,_shapeSizeSm,_shapeSizeMd,_shapeSizeLg,_shapeSizeXl,_shapeRectangle,_shapePerson,_shapeBrowser,_shapeMobile,_shapeCylinder,_shapeStorage,_shapeQueue,_notDisabled,_reduceGraphics,_reduceGraphicsOnPan,_noReduceGraphics,_whenPanning,_smallZoom,_compoundTransparent,_edgeActive,_whenHovered,_whenSelectable,_whenSelected,_whenDimmed,_whenFocused,_p3,_srgb,_rec2020,xs,xsOnly,xsDown,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,xsToSm,xsToMd,xsToLg,xsToXl,smToMd,smToLg,smToXl,mdToLg,mdToXl,lgToXl,@/xs,@/sm,@/md,@/lg,@likec4-root/xs,@likec4-root/sm,@likec4-root/md,@likec4-root/lg,@likec4-dialog/xs,@likec4-dialog/sm,@likec4-dialog/md,@likec4-dialog/lg,textStyle,layerStyle,animationStyle",ENe=SNe.split(","),CNe="WebkitAppearance,WebkitBorderBefore,WebkitBorderBeforeColor,WebkitBorderBeforeStyle,WebkitBorderBeforeWidth,WebkitBoxReflect,WebkitLineClamp,WebkitMask,WebkitMaskAttachment,WebkitMaskClip,WebkitMaskComposite,WebkitMaskImage,WebkitMaskOrigin,WebkitMaskPosition,WebkitMaskPositionX,WebkitMaskPositionY,WebkitMaskRepeat,WebkitMaskRepeatX,WebkitMaskRepeatY,WebkitMaskSize,WebkitOverflowScrolling,WebkitTapHighlightColor,WebkitTextFillColor,WebkitTextStroke,WebkitTextStrokeColor,WebkitTextStrokeWidth,WebkitTouchCallout,WebkitUserModify,WebkitUserSelect,accentColor,alignContent,alignItems,alignSelf,alignTracks,all,anchorName,anchorScope,animation,animationComposition,animationDelay,animationDirection,animationDuration,animationFillMode,animationIterationCount,animationName,animationPlayState,animationRange,animationRangeEnd,animationRangeStart,animationTimeline,animationTimingFunction,appearance,aspectRatio,backdropFilter,backfaceVisibility,background,backgroundAttachment,backgroundBlendMode,backgroundClip,backgroundColor,backgroundImage,backgroundOrigin,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundRepeat,backgroundSize,blockSize,border,borderBlock,borderBlockColor,borderBlockEnd,borderBlockEndColor,borderBlockEndStyle,borderBlockEndWidth,borderBlockStart,borderBlockStartColor,borderBlockStartStyle,borderBlockStartWidth,borderBlockStyle,borderBlockWidth,borderBottom,borderBottomColor,borderBottomLeftRadius,borderBottomRightRadius,borderBottomStyle,borderBottomWidth,borderCollapse,borderColor,borderEndEndRadius,borderEndStartRadius,borderImage,borderImageOutset,borderImageRepeat,borderImageSlice,borderImageSource,borderImageWidth,borderInline,borderInlineColor,borderInlineEnd,borderInlineEndColor,borderInlineEndStyle,borderInlineEndWidth,borderInlineStart,borderInlineStartColor,borderInlineStartStyle,borderInlineStartWidth,borderInlineStyle,borderInlineWidth,borderLeft,borderLeftColor,borderLeftStyle,borderLeftWidth,borderRadius,borderRight,borderRightColor,borderRightStyle,borderRightWidth,borderSpacing,borderStartEndRadius,borderStartStartRadius,borderStyle,borderTop,borderTopColor,borderTopLeftRadius,borderTopRightRadius,borderTopStyle,borderTopWidth,borderWidth,bottom,boxAlign,boxDecorationBreak,boxDirection,boxFlex,boxFlexGroup,boxLines,boxOrdinalGroup,boxOrient,boxPack,boxShadow,boxSizing,breakAfter,breakBefore,breakInside,captionSide,caret,caretColor,caretShape,clear,clip,clipPath,clipRule,color,colorInterpolationFilters,colorScheme,columnCount,columnFill,columnGap,columnRule,columnRuleColor,columnRuleStyle,columnRuleWidth,columnSpan,columnWidth,columns,contain,containIntrinsicBlockSize,containIntrinsicHeight,containIntrinsicInlineSize,containIntrinsicSize,containIntrinsicWidth,container,containerName,containerType,content,contentVisibility,counterIncrement,counterReset,counterSet,cursor,cx,cy,d,direction,display,dominantBaseline,emptyCells,fieldSizing,fill,fillOpacity,fillRule,filter,flex,flexBasis,flexDirection,flexFlow,flexGrow,flexShrink,flexWrap,float,floodColor,floodOpacity,font,fontFamily,fontFeatureSettings,fontKerning,fontLanguageOverride,fontOpticalSizing,fontPalette,fontSize,fontSizeAdjust,fontSmooth,fontStretch,fontStyle,fontSynthesis,fontSynthesisPosition,fontSynthesisSmallCaps,fontSynthesisStyle,fontSynthesisWeight,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariantEastAsian,fontVariantEmoji,fontVariantLigatures,fontVariantNumeric,fontVariantPosition,fontVariationSettings,fontWeight,forcedColorAdjust,gap,grid,gridArea,gridAutoColumns,gridAutoFlow,gridAutoRows,gridColumn,gridColumnEnd,gridColumnGap,gridColumnStart,gridGap,gridRow,gridRowEnd,gridRowGap,gridRowStart,gridTemplate,gridTemplateAreas,gridTemplateColumns,gridTemplateRows,hangingPunctuation,height,hyphenateCharacter,hyphenateLimitChars,hyphens,imageOrientation,imageRendering,imageResolution,imeMode,initialLetter,initialLetterAlign,inlineSize,inset,insetBlock,insetBlockEnd,insetBlockStart,insetInline,insetInlineEnd,insetInlineStart,interpolateSize,isolation,justifyContent,justifyItems,justifySelf,justifyTracks,left,letterSpacing,lightingColor,lineBreak,lineClamp,lineHeight,lineHeightStep,listStyle,listStyleImage,listStylePosition,listStyleType,margin,marginBlock,marginBlockEnd,marginBlockStart,marginBottom,marginInline,marginInlineEnd,marginInlineStart,marginLeft,marginRight,marginTop,marginTrim,marker,markerEnd,markerMid,markerStart,mask,maskBorder,maskBorderMode,maskBorderOutset,maskBorderRepeat,maskBorderSlice,maskBorderSource,maskBorderWidth,maskClip,maskComposite,maskImage,maskMode,maskOrigin,maskPosition,maskRepeat,maskSize,maskType,masonryAutoFlow,mathDepth,mathShift,mathStyle,maxBlockSize,maxHeight,maxInlineSize,maxLines,maxWidth,minBlockSize,minHeight,minInlineSize,minWidth,mixBlendMode,objectFit,objectPosition,offset,offsetAnchor,offsetDistance,offsetPath,offsetPosition,offsetRotate,opacity,order,orphans,outline,outlineColor,outlineOffset,outlineStyle,outlineWidth,overflow,overflowAnchor,overflowBlock,overflowClipBox,overflowClipMargin,overflowInline,overflowWrap,overflowX,overflowY,overlay,overscrollBehavior,overscrollBehaviorBlock,overscrollBehaviorInline,overscrollBehaviorX,overscrollBehaviorY,padding,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingBottom,paddingInline,paddingInlineEnd,paddingInlineStart,paddingLeft,paddingRight,paddingTop,page,pageBreakAfter,pageBreakBefore,pageBreakInside,paintOrder,perspective,perspectiveOrigin,placeContent,placeItems,placeSelf,pointerEvents,position,positionAnchor,positionArea,positionTry,positionTryFallbacks,positionTryOrder,positionVisibility,printColorAdjust,quotes,r,resize,right,rotate,rowGap,rubyAlign,rubyMerge,rubyPosition,rx,ry,scale,scrollBehavior,scrollMargin,scrollMarginBlock,scrollMarginBlockEnd,scrollMarginBlockStart,scrollMarginBottom,scrollMarginInline,scrollMarginInlineEnd,scrollMarginInlineStart,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollPadding,scrollPaddingBlock,scrollPaddingBlockEnd,scrollPaddingBlockStart,scrollPaddingBottom,scrollPaddingInline,scrollPaddingInlineEnd,scrollPaddingInlineStart,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollSnapAlign,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapStop,scrollSnapType,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,scrollbarColor,scrollbarGutter,scrollbarWidth,shapeImageThreshold,shapeMargin,shapeOutside,shapeRendering,stopColor,stopOpacity,stroke,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,strokeWidth,tabSize,tableLayout,textAlign,textAlignLast,textAnchor,textBox,textBoxEdge,textBoxTrim,textCombineUpright,textDecoration,textDecorationColor,textDecorationLine,textDecorationSkip,textDecorationSkipInk,textDecorationStyle,textDecorationThickness,textEmphasis,textEmphasisColor,textEmphasisPosition,textEmphasisStyle,textIndent,textJustify,textOrientation,textOverflow,textRendering,textShadow,textSizeAdjust,textSpacingTrim,textTransform,textUnderlineOffset,textUnderlinePosition,textWrap,textWrapMode,textWrapStyle,timelineScope,top,touchAction,transform,transformBox,transformOrigin,transformStyle,transition,transitionBehavior,transitionDelay,transitionDuration,transitionProperty,transitionTimingFunction,translate,unicodeBidi,userSelect,vectorEffect,verticalAlign,viewTimeline,viewTimelineAxis,viewTimelineInset,viewTimelineName,viewTransitionName,visibility,whiteSpace,whiteSpaceCollapse,widows,width,willChange,wordBreak,wordSpacing,wordWrap,writingMode,x,y,zIndex,zoom,alignmentBaseline,baselineShift,colorInterpolation,colorRendering,glyphOrientationVertical",$Ne=CNe.split(",").concat(ENe),zNe=new Map($Ne.map(e=>[e,!0])),RNe=/&|@/,MG=Zn(e=>zNe.has(e)||e.startsWith("--")||RNe.test(e));const TNe=(e,r)=>!r.includes(e)&&!MG(e),jNe=(e,r)=>e.__shouldForwardProps__&&r?n=>e.__shouldForwardProps__(n)&&r(n):r,ANe=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;if(e.__cva__&&r.__cva__||e.__recipe__&&r.__recipe__)return e.merge(r);const n=new TypeError("Cannot merge cva with recipe. Please use either cva or recipe.");throw TypeError.captureStackTrace?.(n),n},DNe=e=>typeof e=="string"?e:e?.displayName||e?.name||"Component";function YS(e,r={},n={}){const o=r.__cva__||r.__recipe__?r:T1(r),a=n.shouldForwardProp||TNe,i=f=>n.forwardProps?.includes(f)?!0:a(f,o.variantKeys),l=Object.assign(n.dataAttr&&r.__name__?{"data-recipe":r.__name__}:{},n.defaultProps),s=ANe(e.__cva__,o),c=jNe(e,i),d=e.__base__||e,u=S.forwardRef(function(f,g){const{as:v=d,unstyled:w,children:x,...k}=f,C=S.useMemo(()=>Object.assign({},l,k),[k]),[_,$,z,T,A]=S.useMemo(()=>Fn(C,d7.keys,c,s.variantKeys,MG),[C]);function R(){const{css:P,...L}=T,H=s.__getCompoundVariantCss__?.(z);return Ge(s(z,!1),fe(H,L,P),C.className)}function j(){const{css:P,...L}=T,H=s.raw(z);return Ge(fe(H,L,P),C.className)}const I=()=>{if(w){const{css:P,...L}=T;return Ge(fe(L,P),C.className)}return r.__recipe__?R():j()};return S.createElement(v,{ref:g,...$,...A,...d7(_),className:I()},x??C.children)}),p=DNe(d);return u.displayName=`styled.${p}`,u.__cva__=s,u.__base__=d,u.__shouldForwardProps__=i,u}function MNe(){const e=new Map;return new Proxy(YS,{apply(r,n,o){return YS(...o)},get(r,n){return e.has(n)||e.set(n,YS(n)),e.get(n)}})}const Ed=MNe(),NG={transform(e){return e}},NNe=(e={})=>{const r=R1(NG,e);return NG.transform(r,z1)},hr=S.forwardRef(function(e,r){const[n,o]=Fn(e,[]),a=NNe(n),i={ref:r,...a,...o};return S.createElement(Ed.div,i)}),PG={transform(e){const{justify:r,gap:n,...o}=e;return{display:"flex",alignItems:"center",justifyContent:r,gap:n,flexDirection:"column",...o}},defaultValues:{alignItems:"stretch",gap:"sm"}},XS=(e={})=>{const r=R1(PG,e);return PG.transform(r,z1)},Ey=e=>fe(XS(e));Ey.raw=XS;const hp=S.forwardRef(function(e,r){const[n,o]=Fn(e,["justify","gap"]),a=XS(n),i={ref:r,...a,...o};return S.createElement(Ed.div,i)}),BG={transform(e){const{justify:r,gap:n,...o}=e;return{display:"flex",alignItems:"center",justifyContent:r,gap:n,flexDirection:"row",...o}},defaultValues:{gap:"sm"}},ZS=(e={})=>{const r=R1(BG,e);return BG.transform(r,z1)},qn=e=>fe(ZS(e));qn.raw=ZS;const Or=S.forwardRef(function(e,r){const[n,o]=Fn(e,["justify","gap"]),a=ZS(n),i={ref:r,...a,...o};return S.createElement(Ed.div,i)}),IG={transform(e){return{position:"relative",maxWidth:"8xl",mx:"auto",px:{base:"4",md:"6",lg:"8"},...e}}},OG=(e={})=>{const r=R1(IG,e);return IG.transform(r,z1)},LG=e=>fe(OG(e));LG.raw=OG;const FG={transform(e,{map:r,isCssUnit:n,isCssVar:o}){const{inline:a,block:i,...l}=e,s=c=>n(c)||o(c)?c:`token(spacing.${c}, ${c})`;return{"--bleed-x":r(a,s),"--bleed-y":r(i,s),marginInline:"calc(var(--bleed-x, 0) * -1)",marginBlock:"calc(var(--bleed-y, 0) * -1)",...l}},defaultValues:{inline:"0",block:"0"}},VG=(e={})=>{const r=R1(FG,e);return FG.transform(r,z1)},qG=e=>fe(VG(e));qG.raw=VG;const PNe=S.createContext(null),KS={didCatch:!1,error:null};let HG=class extends S.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=KS}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(e!==null){for(var r,n,o=arguments.length,a=new Array(o),i=0;i0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return e.length!==r.length||e.some((n,o)=>!Object.is(n,r[o]))}const INe=[["path",{d:"M18 6l-12 12",key:"svg-0"}],["path",{d:"M6 6l12 12",key:"svg-1"}]],fp=wt("outline","x","X",INe);function UG({error:e,resetErrorBoundary:r}){const n=e instanceof Error?e.message:"Unknown error",o=S.useRef(null);return S.useEffect(()=>{o.current?.showModal()},[]),y.jsx("dialog",{ref:o,className:fe({margin:"0",padding:"0",position:"fixed",top:"10",left:"10",width:"[calc(100vw - ({spacing.10} * 2))]",height:"max-content",maxHeight:"[calc(100vh - ({spacing.10} * 3))]",background:"likec4.overlay.body",rounded:"sm",borderWidth:3,borderColor:"likec4.overlay.border",shadow:"xl",outline:"none",_backdrop:{cursor:"zoom-out",backdropFilter:"blur(18px)",bg:"[color-mix(in oklab, {colors.likec4.overlay.backdrop} 60%, transparent)]"}}),onClick:a=>{if(a.stopPropagation(),a.target?.nodeName?.toUpperCase()==="DIALOG"){o.current?.close();return}},onClose:a=>{a.stopPropagation(),r()},children:y.jsxs(Or,{p:"xl",gap:"lg",alignItems:"flex-start",flexWrap:"nowrap",children:[y.jsx(Ta,{size:"md",radius:"xl",color:"red",children:y.jsx(fp,{style:{width:20,height:20}})}),y.jsxs(hp,{flex:"1",children:[y.jsx(at,{fz:"md",children:"Oops, something went wrong"}),y.jsx(oa,{maw:"100%",mah:400,type:"auto",children:y.jsx(at,{fz:"md",c:"red",style:{whiteSpace:"pre-wrap",userSelect:"all"},children:n})}),y.jsxs(Or,{gap:"md",mt:"md",children:[y.jsx(Vn,{size:"sm",variant:"default",onClick:()=>r(),children:"Reset"}),y.jsx(at,{fz:"sm",c:"dimmed",children:"See console for more details and report the issue if it persists."})]})]})]})})}function QS(e){return y.jsx(HG,{FallbackComponent:UG,onError:(r,n)=>{console.error(r,n)},...e})}const WG={enableEditor:!1,enableReadOnly:!0,enableCompareWithLatest:!1,enableControls:!1,enableDynamicViewWalkthrough:!1,enableElementDetails:!1,enableFocusMode:!1,enableNavigateTo:!1,enableNotations:!1,enableRelationshipBrowser:!1,enableRelationshipDetails:!1,enableSearch:!1,enableNavigationButtons:!1,enableFitView:!1,enableVscode:!1,enableElementTags:!1},JS=S.createContext(WG);function mp({children:e,features:r,overrides:n}){const o=S.useContext(JS),[a,i]=S.useState(o);return S.useEffect(()=>{i(l=>{const s={...o,...r,...n};return Ir(l,s)?l:s})},[o,r,n]),y.jsx(JS.Provider,{value:a,children:e})}const ONe={enableControls:!1,enableReadOnly:!0,enableCompareWithLatest:!1};mp.Overlays=({children:e})=>y.jsx(mp,{overrides:ONe,children:e});function sr(){return S.useContext(JS)}function LNe({feature:e,children:r,and:n=!0}){return sr()[`enable${e}`]===!0&&n?y.jsx(y.Fragment,{children:r}):null}function FNe(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global}function VNe(){const e=FNe();if(e.__xstate__)return e.__xstate__}const qNe=e=>{if(typeof window>"u")return;const r=VNe();r&&r.register(e)};class GG{constructor(r){this._process=r,this._active=!1,this._current=null,this._last=null}start(){this._active=!0,this.flush()}clear(){this._current&&(this._current.next=null,this._last=this._current)}enqueue(r){const n={value:r,next:null};if(this._current){this._last.next=n,this._last=n;return}this._current=n,this._last=n,this._active&&this.flush()}flush(){for(;this._current;){const r=this._current;this._process(r.value),this._current=r.next}this._last=null}}const YG=".",HNe="",XG="",UNe="#",WNe="*",ZG="xstate.init",GNe="xstate.error",Cy="xstate.stop";function YNe(e,r){return{type:`xstate.after.${e}.${r}`}}function eE(e,r){return{type:`xstate.done.state.${e}`,output:r}}function XNe(e,r){return{type:`xstate.done.actor.${e}`,output:r,actorId:e}}function KG(e,r){return{type:`xstate.error.actor.${e}`,error:r,actorId:e}}function QG(e){return{type:ZG,input:e}}function ts(e){setTimeout(()=>{throw e})}const ZNe=typeof Symbol=="function"&&Symbol.observable||"@@observable";function JG(e,r){const n=eY(e),o=eY(r);return typeof o=="string"?typeof n=="string"?o===n:!1:typeof n=="string"?n in o:Object.keys(n).every(a=>a in o?JG(n[a],o[a]):!1)}function tE(e){if(nY(e))return e;const r=[];let n="";for(let o=0;otypeof r>"u"||typeof r=="string"?{target:r}:r)}function oY(e){if(!(e===void 0||e===HNe))return nc(e)}function R3(e,r,n){const o=typeof e=="object",a=o?e:void 0;return{next:(o?e.next:e)?.bind(a),error:(o?e.error:r)?.bind(a),complete:(o?e.complete:n)?.bind(a)}}function aY(e,r){return`${r}.${e}`}function nE(e,r){const n=r.match(/^xstate\.invoke\.(\d+)\.(.*)/);if(!n)return e.implementations.actors[r];const[,o,a]=n,i=e.getStateNodeById(a).config.invoke;return(Array.isArray(i)?i[o]:i).src}function iY(e,r){return`${e.sessionId}.${r}`}let JNe=0;function ePe(e,r){const n=new Map,o=new Map,a=new WeakMap,i=new Set,l={},{clock:s,logger:c}=r,d={schedule:(f,g,v,w,x=Math.random().toString(36).slice(2))=>{const k={source:f,target:g,event:v,delay:w,id:x,startedAt:Date.now()},C=iY(f,x);p._snapshot._scheduledEvents[C]=k;const _=s.setTimeout(()=>{delete l[C],delete p._snapshot._scheduledEvents[C],p._relay(f,g,v)},w);l[C]=_},cancel:(f,g)=>{const v=iY(f,g),w=l[v];delete l[v],delete p._snapshot._scheduledEvents[v],w!==void 0&&s.clearTimeout(w)},cancelAll:f=>{for(const g in p._snapshot._scheduledEvents){const v=p._snapshot._scheduledEvents[g];v.source===f&&d.cancel(f,v.id)}}},u=f=>{if(!i.size)return;const g={...f,rootId:e.sessionId};i.forEach(v=>v.next?.(g))},p={_snapshot:{_scheduledEvents:(r?.snapshot&&r.snapshot.scheduler)??{}},_bookId:()=>`x:${JNe++}`,_register:(f,g)=>(n.set(f,g),f),_unregister:f=>{n.delete(f.sessionId);const g=a.get(f);g!==void 0&&(o.delete(g),a.delete(f))},get:f=>o.get(f),getAll:()=>Object.fromEntries(o.entries()),_set:(f,g)=>{const v=o.get(f);if(v&&v!==g)throw new Error(`Actor with system ID '${f}' already exists.`);o.set(f,g),a.set(g,f)},inspect:f=>{const g=R3(f);return i.add(g),{unsubscribe(){i.delete(g)}}},_sendInspectionEvent:u,_relay:(f,g,v)=>{p._sendInspectionEvent({type:"@xstate.event",sourceRef:f,actorRef:g,event:v}),g._send(v)},scheduler:d,getSnapshot:()=>({_scheduledEvents:{...p._snapshot._scheduledEvents}}),start:()=>{const f=p._snapshot._scheduledEvents;p._snapshot._scheduledEvents={};for(const g in f){const{source:v,target:w,event:x,delay:k,id:C}=f[g];d.schedule(v,w,x,k,C)}},_clock:s,_logger:c};return p}let oE=!1;const aE=1;let aa=(function(e){return e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped",e})({});const tPe={clock:{setTimeout:(e,r)=>setTimeout(e,r),clearTimeout:e=>clearTimeout(e)},logger:console.log.bind(console),devTools:!1};class rPe{constructor(r,n){this.logic=r,this._snapshot=void 0,this.clock=void 0,this.options=void 0,this.id=void 0,this.mailbox=new GG(this._process.bind(this)),this.observers=new Set,this.eventListeners=new Map,this.logger=void 0,this._processingStatus=aa.NotStarted,this._parent=void 0,this._syncSnapshot=void 0,this.ref=void 0,this._actorScope=void 0,this.systemId=void 0,this.sessionId=void 0,this.system=void 0,this._doneEvent=void 0,this.src=void 0,this._deferred=[];const o={...tPe,...n},{clock:a,logger:i,parent:l,syncSnapshot:s,id:c,systemId:d,inspect:u}=o;this.system=l?l.system:ePe(this,{clock:a,logger:i}),u&&!l&&this.system.inspect(R3(u)),this.sessionId=this.system._bookId(),this.id=c??this.sessionId,this.logger=n?.logger??this.system._logger,this.clock=n?.clock??this.system._clock,this._parent=l,this._syncSnapshot=s,this.options=o,this.src=o.src??r,this.ref=this,this._actorScope={self:this,id:this.id,sessionId:this.sessionId,logger:this.logger,defer:p=>{this._deferred.push(p)},system:this.system,stopChild:p=>{if(p._parent!==this)throw new Error(`Cannot stop child actor ${p.id} of ${this.id} because it is not a child`);p._stop()},emit:p=>{const f=this.eventListeners.get(p.type),g=this.eventListeners.get("*");if(!f&&!g)return;const v=[...f?f.values():[],...g?g.values():[]];for(const w of v)try{w(p)}catch(x){ts(x)}},actionExecutor:p=>{const f=()=>{if(this._actorScope.system._sendInspectionEvent({type:"@xstate.action",actorRef:this,action:{type:p.type,params:p.params}}),!p.exec)return;const g=oE;try{oE=!0,p.exec(p.info,p.params)}finally{oE=g}};this._processingStatus===aa.Running?f():this._deferred.push(f)}},this.send=this.send.bind(this),this.system._sendInspectionEvent({type:"@xstate.actor",actorRef:this}),d&&(this.systemId=d,this.system._set(d,this)),this._initState(n?.snapshot??n?.state),d&&this._snapshot.status!=="active"&&this.system._unregister(this)}_initState(r){try{this._snapshot=r?this.logic.restoreSnapshot?this.logic.restoreSnapshot(r,this._actorScope):r:this.logic.getInitialSnapshot(this._actorScope,this.options?.input)}catch(n){this._snapshot={status:"error",output:void 0,error:n}}}update(r,n){this._snapshot=r;let o;for(;o=this._deferred.shift();)try{o()}catch(a){this._deferred.length=0,this._snapshot={...r,status:"error",error:a}}switch(this._snapshot.status){case"active":for(const a of this.observers)try{a.next?.(r)}catch(i){ts(i)}break;case"done":for(const a of this.observers)try{a.next?.(r)}catch(i){ts(i)}this._stopProcedure(),this._complete(),this._doneEvent=XNe(this.id,this._snapshot.output),this._parent&&this.system._relay(this,this._parent,this._doneEvent);break;case"error":this._error(this._snapshot.error);break}this.system._sendInspectionEvent({type:"@xstate.snapshot",actorRef:this,event:n,snapshot:r})}subscribe(r,n,o){const a=R3(r,n,o);if(this._processingStatus!==aa.Stopped)this.observers.add(a);else switch(this._snapshot.status){case"done":try{a.complete?.()}catch(i){ts(i)}break;case"error":{const i=this._snapshot.error;if(!a.error)ts(i);else try{a.error(i)}catch(l){ts(l)}break}}return{unsubscribe:()=>{this.observers.delete(a)}}}on(r,n){let o=this.eventListeners.get(r);o||(o=new Set,this.eventListeners.set(r,o));const a=n.bind(void 0);return o.add(a),{unsubscribe:()=>{o.delete(a)}}}start(){if(this._processingStatus===aa.Running)return this;this._syncSnapshot&&this.subscribe({next:n=>{n.status==="active"&&this.system._relay(this,this._parent,{type:`xstate.snapshot.${this.id}`,snapshot:n})},error:()=>{}}),this.system._register(this.sessionId,this),this.systemId&&this.system._set(this.systemId,this),this._processingStatus=aa.Running;const r=QG(this.options.input);switch(this.system._sendInspectionEvent({type:"@xstate.event",sourceRef:this._parent,actorRef:this,event:r}),this._snapshot.status){case"done":return this.update(this._snapshot,r),this;case"error":return this._error(this._snapshot.error),this}if(this._parent||this.system.start(),this.logic.start)try{this.logic.start(this._snapshot,this._actorScope)}catch(n){return this._snapshot={...this._snapshot,status:"error",error:n},this._error(n),this}return this.update(this._snapshot,r),this.options.devTools&&this.attachDevTools(),this.mailbox.start(),this}_process(r){let n,o;try{n=this.logic.transition(this._snapshot,r,this._actorScope)}catch(a){o={err:a}}if(o){const{err:a}=o;this._snapshot={...this._snapshot,status:"error",error:a},this._error(a);return}this.update(n,r),r.type===Cy&&(this._stopProcedure(),this._complete())}_stop(){return this._processingStatus===aa.Stopped?this:(this.mailbox.clear(),this._processingStatus===aa.NotStarted?(this._processingStatus=aa.Stopped,this):(this.mailbox.enqueue({type:Cy}),this))}stop(){if(this._parent)throw new Error("A non-root actor cannot be stopped directly.");return this._stop()}_complete(){for(const r of this.observers)try{r.complete?.()}catch(n){ts(n)}this.observers.clear()}_reportError(r){if(!this.observers.size){this._parent||ts(r);return}let n=!1;for(const o of this.observers){const a=o.error;n||=!a;try{a?.(r)}catch(i){ts(i)}}this.observers.clear(),n&&ts(r)}_error(r){this._stopProcedure(),this._reportError(r),this._parent&&this.system._relay(this,this._parent,KG(this.id,r))}_stopProcedure(){return this._processingStatus!==aa.Running?this:(this.system.scheduler.cancelAll(this),this.mailbox.clear(),this.mailbox=new GG(this._process.bind(this)),this._processingStatus=aa.Stopped,this.system._unregister(this),this)}_send(r){this._processingStatus!==aa.Stopped&&this.mailbox.enqueue(r)}send(r){this.system._relay(void 0,this,r)}attachDevTools(){const{devTools:r}=this.options;r&&(typeof r=="function"?r:qNe)(this)}toJSON(){return{xstate$$type:aE,id:this.id}}getPersistedSnapshot(r){return this.logic.getPersistedSnapshot(this._snapshot,r)}[ZNe](){return this}getSnapshot(){return this._snapshot}}function qf(e,...[r]){return new rPe(e,r)}function nPe(e,r,n,o,{sendId:a}){const i=typeof a=="function"?a(n,o):a;return[r,{sendId:i},void 0]}function oPe(e,r){e.defer(()=>{e.system.scheduler.cancel(e.self,r.sendId)})}function ui(e){function r(n,o){}return r.type="xstate.cancel",r.sendId=e,r.resolve=nPe,r.execute=oPe,r}function aPe(e,r,n,o,{id:a,systemId:i,src:l,input:s,syncSnapshot:c}){const d=typeof l=="string"?nE(r.machine,l):l,u=typeof a=="function"?a(n):a;let p,f;return d&&(f=typeof s=="function"?s({context:r.context,event:n.event,self:e.self}):s,p=qf(d,{id:u,src:l,parent:e.self,syncSnapshot:c,systemId:i,input:f})),[vp(r,{children:{...r.children,[u]:p}}),{id:a,systemId:i,actorRef:p,src:l,input:f},void 0]}function iPe(e,{actorRef:r}){r&&e.defer(()=>{r._processingStatus!==aa.Stopped&&r.start()})}function T3(...[e,{id:r,systemId:n,input:o,syncSnapshot:a=!1}={}]){function i(l,s){}return i.type="xstate.spawnChild",i.id=r,i.systemId=n,i.src=e,i.input=o,i.syncSnapshot=a,i.resolve=aPe,i.execute=iPe,i}function lPe(e,r,n,o,{actorRef:a}){const i=typeof a=="function"?a(n,o):a,l=typeof i=="string"?r.children[i]:i;let s=r.children;return l&&(s={...s},delete s[l.id]),[vp(r,{children:s}),l,void 0]}function sPe(e,r){if(r){if(e.system._unregister(r),r._processingStatus!==aa.Running){e.stopChild(r);return}e.defer(()=>{e.stopChild(r)})}}function $y(e){function r(n,o){}return r.type="xstate.stopChild",r.actorRef=e,r.resolve=lPe,r.execute=sPe,r}function j3(e,r,n,o){const{machine:a}=o,i=typeof e=="function",l=i?e:a.implementations.guards[typeof e=="string"?e:e.type];if(!i&&!l)throw new Error(`Guard '${typeof e=="string"?e:e.type}' is not implemented.'.`);if(typeof l!="function")return j3(l,r,n,o);const s={context:r,event:n},c=i||typeof e=="string"?void 0:"params"in e?typeof e.params=="function"?e.params({context:r,event:n}):e.params:void 0;return"check"in l?l.check(o,s,l):l(s,c)}const iE=e=>e.type==="atomic"||e.type==="final";function Hf(e){return Object.values(e.states).filter(r=>r.type!=="history")}function zy(e,r){const n=[];if(r===e)return n;let o=e.parent;for(;o&&o!==r;)n.push(o),o=o.parent;return n}function A3(e){const r=new Set(e),n=sY(r);for(const o of r)if(o.type==="compound"&&(!n.get(o)||!n.get(o).length))uY(o).forEach(a=>r.add(a));else if(o.type==="parallel"){for(const a of Hf(o))if(a.type!=="history"&&!r.has(a)){const i=uY(a);for(const l of i)r.add(l)}}for(const o of r){let a=o.parent;for(;a;)r.add(a),a=a.parent}return r}function lY(e,r){const n=r.get(e);if(!n)return{};if(e.type==="compound"){const a=n[0];if(a){if(iE(a))return a.key}else return{}}const o={};for(const a of n)o[a.key]=lY(a,r);return o}function sY(e){const r=new Map;for(const n of e)r.has(n)||r.set(n,[]),n.parent&&(r.has(n.parent)||r.set(n.parent,[]),r.get(n.parent).push(n));return r}function cY(e,r){const n=A3(r);return lY(e,sY(n))}function lE(e,r){return r.type==="compound"?Hf(r).some(n=>n.type==="final"&&e.has(n)):r.type==="parallel"?Hf(r).every(n=>lE(e,n)):r.type==="final"}const D3=e=>e[0]===UNe;function cPe(e,r){return e.transitions.get(r)||[...e.transitions.keys()].filter(n=>{if(n===WNe)return!0;if(!n.endsWith(".*"))return!1;const o=n.split("."),a=r.split(".");for(let i=0;io.length-n.length).flatMap(n=>e.transitions.get(n))}function dPe(e){const r=e.config.after;if(!r)return[];const n=o=>{const a=YNe(o,e.id),i=a.type;return e.entry.push(ia(a,{id:i,delay:o})),e.exit.push(ui(i)),i};return Object.keys(r).flatMap(o=>{const a=r[o],i=typeof a=="string"?{target:a}:a,l=Number.isNaN(+o)?o:+o,s=n(l);return nc(i).map(c=>({...c,event:s,delay:l}))}).map(o=>{const{delay:a}=o;return{...gp(e,o.event,o),delay:a}})}function gp(e,r,n){const o=oY(n.target),a=n.reenter??!1,i=hPe(e,o),l={...n,actions:nc(n.actions),guard:n.guard,target:i,source:e,reenter:a,eventType:r,toJSON:()=>({...l,source:`#${e.id}`,target:i?i.map(s=>`#${s.id}`):void 0})};return l}function uPe(e){const r=new Map;if(e.config.on)for(const n of Object.keys(e.config.on)){if(n===XG)throw new Error('Null events ("") cannot be specified as a transition key. Use `always: { ... }` instead.');const o=e.config.on[n];r.set(n,Vf(o).map(a=>gp(e,n,a)))}if(e.config.onDone){const n=`xstate.done.state.${e.id}`;r.set(n,Vf(e.config.onDone).map(o=>gp(e,n,o)))}for(const n of e.invoke){if(n.onDone){const o=`xstate.done.actor.${n.id}`;r.set(o,Vf(n.onDone).map(a=>gp(e,o,a)))}if(n.onError){const o=`xstate.error.actor.${n.id}`;r.set(o,Vf(n.onError).map(a=>gp(e,o,a)))}if(n.onSnapshot){const o=`xstate.snapshot.${n.id}`;r.set(o,Vf(n.onSnapshot).map(a=>gp(e,o,a)))}}for(const n of e.after){let o=r.get(n.eventType);o||(o=[],r.set(n.eventType,o)),o.push(n)}return r}function pPe(e,r){const n=typeof r=="string"?e.states[r]:r?e.states[r.target]:void 0;if(!n&&r)throw new Error(`Initial state node "${r}" not found on parent state node #${e.id}`);const o={source:e,actions:!r||typeof r=="string"?[]:nc(r.actions),eventType:null,reenter:!1,target:n?[n]:[],toJSON:()=>({...o,source:`#${e.id}`,target:n?[`#${n.id}`]:[]})};return o}function hPe(e,r){if(r!==void 0)return r.map(n=>{if(typeof n!="string")return n;if(D3(n))return e.machine.getStateNodeById(n);const o=n[0]===YG;if(o&&!e.parent)return M3(e,n.slice(1));const a=o?e.key+n:n;if(e.parent)try{return M3(e.parent,a)}catch(i){throw new Error(`Invalid transition definition for state node '${e.id}': -${i.message}`)}else throw new Error(`Invalid target: "${n}" is not a valid target from the root node. Did you mean ".${n}"?`)})}function dY(e){const r=oY(e.config.target);return r?{target:r.map(n=>typeof n=="string"?M3(e.parent,n):n)}:e.parent.initial}function yp(e){return e.type==="history"}function uY(e){const r=pY(e);for(const n of r)for(const o of zy(n,e))r.add(o);return r}function pY(e){const r=new Set;function n(o){if(!r.has(o)){if(r.add(o),o.type==="compound")n(o.initial.target[0]);else if(o.type==="parallel")for(const a of Hf(o))n(a)}}return n(e),r}function Uf(e,r){if(D3(r))return e.machine.getStateNodeById(r);if(!e.states)throw new Error(`Unable to retrieve child state '${r}' from '${e.id}'; no child states exist.`);const n=e.states[r];if(!n)throw new Error(`Child state '${r}' does not exist on '${e.id}'`);return n}function M3(e,r){if(typeof r=="string"&&D3(r))try{return e.machine.getStateNodeById(r)}catch{}const n=tE(r).slice();let o=e;for(;n.length;){const a=n.shift();if(!a.length)break;o=Uf(o,a)}return o}function N3(e,r){if(typeof r=="string"){const a=e.states[r];if(!a)throw new Error(`State '${r}' does not exist on '${e.id}'`);return[e,a]}const n=Object.keys(r),o=n.map(a=>Uf(e,a)).filter(Boolean);return[e.machine.root,e].concat(o,n.reduce((a,i)=>{const l=Uf(e,i);if(!l)return a;const s=N3(l,r[i]);return a.concat(s)},[]))}function fPe(e,r,n,o){const a=Uf(e,r).next(n,o);return!a||!a.length?e.next(n,o):a}function mPe(e,r,n,o){const a=Object.keys(r),i=Uf(e,a[0]),l=sE(i,r[a[0]],n,o);return!l||!l.length?e.next(n,o):l}function gPe(e,r,n,o){const a=[];for(const i of Object.keys(r)){const l=r[i];if(!l)continue;const s=Uf(e,i),c=sE(s,l,n,o);c&&a.push(...c)}return a.length?a:e.next(n,o)}function sE(e,r,n,o){return typeof r=="string"?fPe(e,r,n,o):Object.keys(r).length===1?mPe(e,r,n,o):gPe(e,r,n,o)}function yPe(e){return Object.keys(e.states).map(r=>e.states[r]).filter(r=>r.type==="history")}function Cd(e,r){let n=e;for(;n.parent&&n.parent!==r;)n=n.parent;return n.parent===r}function vPe(e,r){const n=new Set(e),o=new Set(r);for(const a of n)if(o.has(a))return!0;for(const a of o)if(n.has(a))return!0;return!1}function hY(e,r,n){const o=new Set;for(const a of e){let i=!1;const l=new Set;for(const s of o)if(vPe(dE([a],r,n),dE([s],r,n)))if(Cd(a.source,s.source))l.add(s);else{i=!0;break}if(!i){for(const s of l)o.delete(s);o.add(a)}}return Array.from(o)}function bPe(e){const[r,...n]=e;for(const o of zy(r,void 0))if(n.every(a=>Cd(a,o)))return o}function cE(e,r){if(!e.target)return[];const n=new Set;for(const o of e.target)if(yp(o))if(r[o.id])for(const a of r[o.id])n.add(a);else for(const a of cE(dY(o),r))n.add(a);else n.add(o);return[...n]}function fY(e,r){const n=cE(e,r);if(!n)return;if(!e.reenter&&n.every(a=>a===e.source||Cd(a,e.source)))return e.source;const o=bPe(n.concat(e.source));if(o)return o;if(!e.reenter)return e.source.machine.root}function dE(e,r,n){const o=new Set;for(const a of e)if(a.target?.length){const i=fY(a,n);a.reenter&&a.source===i&&o.add(i);for(const l of r)Cd(l,i)&&o.add(l)}return[...o]}function xPe(e,r){if(e.length!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function uE(e,r,n,o,a,i){if(!e.length)return r;const l=new Set(r._nodes);let s=r.historyValue;const c=hY(e,l,s);let d=r;a||([d,s]=SPe(d,o,n,c,l,s,i,n.actionExecutor)),d=Gf(d,o,n,c.flatMap(p=>p.actions),i,void 0),d=kPe(d,o,n,c,l,i,s,a);const u=[...l];d.status==="done"&&(d=Gf(d,o,n,u.sort((p,f)=>f.order-p.order).flatMap(p=>p.exit),i,void 0));try{return s===r.historyValue&&xPe(r._nodes,l)?d:vp(d,{_nodes:u,historyValue:s})}catch(p){throw p}}function wPe(e,r,n,o,a){if(o.output===void 0)return;const i=eE(a.id,a.output!==void 0&&a.parent?rE(a.output,e.context,r,n.self):void 0);return rE(o.output,e.context,i,n.self)}function kPe(e,r,n,o,a,i,l,s){let c=e;const d=new Set,u=new Set;_Pe(o,l,u,d),s&&u.add(e.machine.root);const p=new Set;for(const f of[...d].sort((g,v)=>g.order-v.order)){a.add(f);const g=[];g.push(...f.entry);for(const v of f.invoke)g.push(T3(v.src,{...v,syncSnapshot:!!v.onSnapshot}));if(u.has(f)){const v=f.initial.actions;g.push(...v)}if(c=Gf(c,r,n,g,i,f.invoke.map(v=>v.id)),f.type==="final"){const v=f.parent;let w=v?.type==="parallel"?v:v?.parent,x=w||f;for(v?.type==="compound"&&i.push(eE(v.id,f.output!==void 0?rE(f.output,c.context,r,n.self):void 0));w?.type==="parallel"&&!p.has(w)&&lE(a,w);)p.add(w),i.push(eE(w.id)),x=w,w=w.parent;if(w)continue;c=vp(c,{status:"done",output:wPe(c,r,n,c.machine.root,x)})}}return c}function _Pe(e,r,n,o){for(const a of e){const i=fY(a,r);for(const s of a.target||[])!yp(s)&&(a.source!==s||a.source!==i||a.reenter)&&(o.add(s),n.add(s)),Wf(s,r,n,o);const l=cE(a,r);for(const s of l){const c=zy(s,i);i?.type==="parallel"&&c.push(i),mY(o,r,n,c,!a.source.parent&&a.reenter?void 0:i)}}}function Wf(e,r,n,o){if(yp(e))if(r[e.id]){const a=r[e.id];for(const i of a)o.add(i),Wf(i,r,n,o);for(const i of a)pE(i,e.parent,o,r,n)}else{const a=dY(e);for(const i of a.target)o.add(i),a===e.parent?.initial&&n.add(e.parent),Wf(i,r,n,o);for(const i of a.target)pE(i,e.parent,o,r,n)}else if(e.type==="compound"){const[a]=e.initial.target;yp(a)||(o.add(a),n.add(a)),Wf(a,r,n,o),pE(a,e,o,r,n)}else if(e.type==="parallel")for(const a of Hf(e).filter(i=>!yp(i)))[...o].some(i=>Cd(i,a))||(yp(a)||(o.add(a),n.add(a)),Wf(a,r,n,o))}function mY(e,r,n,o,a){for(const i of o)if((!a||Cd(i,a))&&e.add(i),i.type==="parallel")for(const l of Hf(i).filter(s=>!yp(s)))[...e].some(s=>Cd(s,l))||(e.add(l),Wf(l,r,n,e))}function pE(e,r,n,o,a){mY(n,o,a,zy(e,r))}function SPe(e,r,n,o,a,i,l,s){let c=e;const d=dE(o,a,i);d.sort((p,f)=>f.order-p.order);let u;for(const p of d)for(const f of yPe(p)){let g;f.history==="deep"?g=v=>iE(v)&&Cd(v,p):g=v=>v.parent===p,u??={...i},u[f.id]=Array.from(a).filter(g)}for(const p of d)c=Gf(c,r,n,[...p.exit,...p.invoke.map(f=>$y(f.id))],l,void 0),a.delete(p);return[c,u||i]}function EPe(e,r){return e.implementations.actions[r]}function gY(e,r,n,o,a,i){const{machine:l}=e;let s=e;for(const c of o){const d=typeof c=="function",u=d?c:EPe(l,typeof c=="string"?c:c.type),p={context:s.context,event:r,self:n.self,system:n.system},f=d||typeof c=="string"?void 0:"params"in c?typeof c.params=="function"?c.params({context:s.context,event:r}):c.params:void 0;if(!u||!("resolve"in u)){n.actionExecutor({type:typeof c=="string"?c:typeof c=="object"?c.type:c.name||"(anonymous)",info:p,params:f,exec:u});continue}const g=u,[v,w,x]=g.resolve(n,s,p,f,u,a);s=v,"retryResolve"in g&&i?.push([g,w]),"execute"in g&&n.actionExecutor({type:g.type,info:p,params:w,exec:g.execute.bind(null,n,w)}),x&&(s=gY(s,r,n,x,a,i))}return s}function Gf(e,r,n,o,a,i){const l=i?[]:void 0,s=gY(e,r,n,o,{internalQueue:a,deferredActorIds:i},l);return l?.forEach(([c,d])=>{c.retryResolve(n,s,d)}),s}function hE(e,r,n,o){let a=e;const i=[];function l(d,u,p){n.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:n.self,event:u,snapshot:d,_transitions:p}),i.push(d)}if(r.type===Cy)return a=vp(yY(a,r,n),{status:"stopped"}),l(a,r,[]),{snapshot:a,microstates:i};let s=r;if(s.type!==ZG){const d=s,u=QNe(d),p=vY(d,a);if(u&&!p.length)return a=vp(e,{status:"error",error:d.error}),l(a,d,[]),{snapshot:a,microstates:i};a=uE(p,e,n,s,!1,o),l(a,d,p)}let c=!0;for(;a.status==="active";){let d=c?CPe(a,s):[];const u=d.length?a:void 0;if(!d.length){if(!o.length)break;s=o.shift(),d=vY(s,a)}a=uE(d,a,n,s,!1,o),c=a!==u,l(a,s,d)}return a.status!=="active"&&yY(a,s,n),{snapshot:a,microstates:i}}function yY(e,r,n){return Gf(e,r,n,Object.values(e.children).map(o=>$y(o)),[],void 0)}function vY(e,r){return r.machine.getTransitionData(r,e)}function CPe(e,r){const n=new Set,o=e._nodes.filter(iE);for(const a of o)e:for(const i of[a].concat(zy(a,void 0)))if(i.always){for(const l of i.always)if(l.guard===void 0||j3(l.guard,e.context,r,e)){n.add(l);break e}}return hY(Array.from(n),new Set(e._nodes),e.historyValue)}function $Pe(e,r){const n=A3(N3(e,r));return cY(e,[...n])}function zPe(e){return!!e&&typeof e=="object"&&"machine"in e&&"value"in e}const RPe=function(e){return JG(e,this.value)},TPe=function(e){return this.tags.has(e)},jPe=function(e){const r=this.machine.getTransitionData(this,e);return!!r?.length&&r.some(n=>n.target!==void 0||n.actions.length)},APe=function(){const{_nodes:e,tags:r,machine:n,getMeta:o,toJSON:a,can:i,hasTag:l,matches:s,...c}=this;return{...c,tags:Array.from(r)}},DPe=function(){return this._nodes.reduce((e,r)=>(r.meta!==void 0&&(e[r.id]=r.meta),e),{})};function P3(e,r){return{status:e.status,output:e.output,error:e.error,machine:r,context:e.context,_nodes:e._nodes,value:cY(r.root,e._nodes),tags:new Set(e._nodes.flatMap(n=>n.tags)),children:e.children,historyValue:e.historyValue||{},matches:RPe,hasTag:TPe,can:jPe,getMeta:DPe,toJSON:APe}}function vp(e,r={}){return P3({...e,...r},e.machine)}function MPe(e){if(typeof e!="object"||e===null)return{};const r={};for(const n in e){const o=e[n];Array.isArray(o)&&(r[n]=o.map(a=>({id:a.id})))}return r}function NPe(e,r){const{_nodes:n,tags:o,machine:a,children:i,context:l,can:s,hasTag:c,matches:d,getMeta:u,toJSON:p,...f}=e,g={};for(const v in i){const w=i[v];g[v]={snapshot:w.getPersistedSnapshot(r),src:w.src,systemId:w.systemId,syncSnapshot:w._syncSnapshot}}return{...f,context:bY(l),children:g,historyValue:MPe(f.historyValue)}}function bY(e){let r;for(const n in e){const o=e[n];if(o&&typeof o=="object")if("sessionId"in o&&"send"in o&&"ref"in o)r??=Array.isArray(e)?e.slice():{...e},r[n]={xstate$$type:aE,id:o.id};else{const a=bY(o);a!==o&&(r??=Array.isArray(e)?e.slice():{...e},r[n]=a)}}return r??e}function PPe(e,r,n,o,{event:a,id:i,delay:l},{internalQueue:s}){const c=r.machine.implementations.delays;if(typeof a=="string")throw new Error(`Only event objects may be used with raise; use raise({ type: "${a}" }) instead`);const d=typeof a=="function"?a(n,o):a;let u;if(typeof l=="string"){const p=c&&c[l];u=typeof p=="function"?p(n,o):p}else u=typeof l=="function"?l(n,o):l;return typeof u!="number"&&s.push(d),[r,{event:d,id:i,delay:u},void 0]}function BPe(e,r){const{event:n,delay:o,id:a}=r;if(typeof o=="number"){e.defer(()=>{const i=e.self;e.system.scheduler.schedule(i,i,n,o,a)});return}}function ia(e,r){function n(o,a){}return n.type="xstate.raise",n.event=e,n.id=r?.id,n.delay=r?.delay,n.resolve=PPe,n.execute=BPe,n}const xY=new WeakMap;function B3(e){return{config:e,start:(r,n)=>{const{self:o,system:a,emit:i}=n,l={receivers:void 0,dispose:void 0};xY.set(o,l),l.dispose=e({input:r.input,system:a,self:o,sendBack:s=>{o.getSnapshot().status!=="stopped"&&o._parent&&a._relay(o,o._parent,s)},receive:s=>{l.receivers??=new Set,l.receivers.add(s)},emit:i})},transition:(r,n,o)=>{const a=xY.get(o.self);return n.type===Cy?(r={...r,status:"stopped",error:void 0},a.dispose?.(),r):(a.receivers?.forEach(i=>i(n)),r)},getInitialSnapshot:(r,n)=>({status:"active",output:void 0,error:void 0,input:n}),getPersistedSnapshot:r=>r,restoreSnapshot:r=>r}}const wY="xstate.promise.resolve",kY="xstate.promise.reject",I3=new WeakMap;function Ry(e){return{config:e,transition:(r,n,o)=>{if(r.status!=="active")return r;switch(n.type){case wY:{const a=n.data;return{...r,status:"done",output:a,input:void 0}}case kY:return{...r,status:"error",error:n.data,input:void 0};case Cy:return I3.get(o.self)?.abort(),{...r,status:"stopped",input:void 0};default:return r}},start:(r,{self:n,system:o,emit:a})=>{if(r.status!=="active")return;const i=new AbortController;I3.set(n,i),Promise.resolve(e({input:r.input,system:o,self:n,signal:i.signal,emit:a})).then(l=>{n.getSnapshot().status==="active"&&(I3.delete(n),o._relay(n,n,{type:wY,data:l}))},l=>{n.getSnapshot().status==="active"&&(I3.delete(n),o._relay(n,n,{type:kY,data:l}))})},getInitialSnapshot:(r,n)=>({status:"active",output:void 0,error:void 0,input:n}),getPersistedSnapshot:r=>r,restoreSnapshot:r=>r}}function IPe(e,{machine:r,context:n},o,a){const i=(l,s)=>{if(typeof l=="string"){const c=nE(r,l);if(!c)throw new Error(`Actor logic '${l}' not implemented in machine '${r.id}'`);const d=qf(c,{id:s?.id,parent:e.self,syncSnapshot:s?.syncSnapshot,input:typeof s?.input=="function"?s.input({context:n,event:o,self:e.self}):s?.input,src:l,systemId:s?.systemId});return a[d.id]=d,d}else return qf(l,{id:s?.id,parent:e.self,syncSnapshot:s?.syncSnapshot,input:s?.input,src:l,systemId:s?.systemId})};return(l,s)=>{const c=i(l,s);return a[c.id]=c,e.defer(()=>{c._processingStatus!==aa.Stopped&&c.start()}),c}}function OPe(e,r,n,o,{assignment:a}){if(!r.context)throw new Error("Cannot assign to undefined `context`. Ensure that `context` is defined in the machine config.");const i={},l={context:r.context,event:n.event,spawn:IPe(e,r,n.event,i),self:e.self,system:e.system};let s={};if(typeof a=="function")s=a(l,o);else for(const d of Object.keys(a)){const u=a[d];s[d]=typeof u=="function"?u(l,o):u}const c=Object.assign({},r.context,s);return[vp(r,{context:c,children:Object.keys(i).length?{...r.children,...i}:r.children}),void 0,void 0]}function Bt(e){function r(n,o){}return r.type="xstate.assign",r.assignment=e,r.resolve=OPe,r}const _Y=new WeakMap;function Yf(e,r,n){let o=_Y.get(e);return o?r in o||(o[r]=n()):(o={[r]:n()},_Y.set(e,o)),o[r]}const LPe={},Ty=e=>typeof e=="string"?{type:e}:typeof e=="function"?"resolve"in e?{type:e.type}:{type:e.name}:e;class O3{constructor(r,n){if(this.config=r,this.key=void 0,this.id=void 0,this.type=void 0,this.path=void 0,this.states=void 0,this.history=void 0,this.entry=void 0,this.exit=void 0,this.parent=void 0,this.machine=void 0,this.meta=void 0,this.output=void 0,this.order=-1,this.description=void 0,this.tags=[],this.transitions=void 0,this.always=void 0,this.parent=n._parent,this.key=n._key,this.machine=n._machine,this.path=this.parent?this.parent.path.concat(this.key):[],this.id=this.config.id||[this.machine.id,...this.path].join(YG),this.type=this.config.type||(this.config.states&&Object.keys(this.config.states).length?"compound":this.config.history?"history":"atomic"),this.description=this.config.description,this.order=this.machine.idMap.size,this.machine.idMap.set(this.id,this),this.states=this.config.states?tY(this.config.states,(o,a)=>new O3(o,{_parent:this,_key:a,_machine:this.machine})):LPe,this.type==="compound"&&!this.config.initial)throw new Error(`No initial state specified for compound state node "#${this.id}". Try adding { initial: "${Object.keys(this.states)[0]}" } to the state config.`);this.history=this.config.history===!0?"shallow":this.config.history||!1,this.entry=nc(this.config.entry).slice(),this.exit=nc(this.config.exit).slice(),this.meta=this.config.meta,this.output=this.type==="final"||!this.parent?this.config.output:void 0,this.tags=nc(r.tags).slice()}_initialize(){this.transitions=uPe(this),this.config.always&&(this.always=Vf(this.config.always).map(r=>gp(this,XG,r))),Object.keys(this.states).forEach(r=>{this.states[r]._initialize()})}get definition(){return{id:this.id,key:this.key,version:this.machine.version,type:this.type,initial:this.initial?{target:this.initial.target,source:this,actions:this.initial.actions.map(Ty),eventType:null,reenter:!1,toJSON:()=>({target:this.initial.target.map(r=>`#${r.id}`),source:`#${this.id}`,actions:this.initial.actions.map(Ty),eventType:null})}:void 0,history:this.history,states:tY(this.states,r=>r.definition),on:this.on,transitions:[...this.transitions.values()].flat().map(r=>({...r,actions:r.actions.map(Ty)})),entry:this.entry.map(Ty),exit:this.exit.map(Ty),meta:this.meta,order:this.order||-1,output:this.output,invoke:this.invoke,description:this.description,tags:this.tags}}toJSON(){return this.definition}get invoke(){return Yf(this,"invoke",()=>nc(this.config.invoke).map((r,n)=>{const{src:o,systemId:a}=r,i=r.id??aY(this.id,n),l=typeof o=="string"?o:`xstate.invoke.${aY(this.id,n)}`;return{...r,src:l,id:i,systemId:a,toJSON(){const{onDone:s,onError:c,...d}=r;return{...d,type:"xstate.invoke",src:l,id:i}}}}))}get on(){return Yf(this,"on",()=>[...this.transitions].flatMap(([r,n])=>n.map(o=>[r,o])).reduce((r,[n,o])=>(r[n]=r[n]||[],r[n].push(o),r),{}))}get after(){return Yf(this,"delayedTransitions",()=>dPe(this))}get initial(){return Yf(this,"initial",()=>pPe(this,this.config.initial))}next(r,n){const o=n.type,a=[];let i;const l=Yf(this,`candidates-${o}`,()=>cPe(this,o));for(const s of l){const{guard:c}=s,d=r.context;let u=!1;try{u=!c||j3(c,d,n,r)}catch(p){const f=typeof c=="string"?c:typeof c=="object"?c.type:void 0;throw new Error(`Unable to evaluate guard ${f?`'${f}' `:""}in transition for event '${o}' in state node '${this.id}': -${p.message}`)}if(u){a.push(...s.actions),i=s;break}}return i?[i]:void 0}get events(){return Yf(this,"events",()=>{const{states:r}=this,n=new Set(this.ownEvents);if(r)for(const o of Object.keys(r)){const a=r[o];if(a.states)for(const i of a.events)n.add(`${i}`)}return Array.from(n)})}get ownEvents(){const r=new Set([...this.transitions.keys()].filter(n=>this.transitions.get(n).some(o=>!(!o.target&&!o.actions.length&&!o.reenter))));return Array.from(r)}}const FPe="#";class fE{constructor(r,n){this.config=r,this.version=void 0,this.schemas=void 0,this.implementations=void 0,this.__xstatenode=!0,this.idMap=new Map,this.root=void 0,this.id=void 0,this.states=void 0,this.events=void 0,this.id=r.id||"(machine)",this.implementations={actors:n?.actors??{},actions:n?.actions??{},delays:n?.delays??{},guards:n?.guards??{}},this.version=this.config.version,this.schemas=this.config.schemas,this.transition=this.transition.bind(this),this.getInitialSnapshot=this.getInitialSnapshot.bind(this),this.getPersistedSnapshot=this.getPersistedSnapshot.bind(this),this.restoreSnapshot=this.restoreSnapshot.bind(this),this.start=this.start.bind(this),this.root=new O3(r,{_key:this.id,_machine:this}),this.root._initialize(),this.states=this.root.states,this.events=this.root.events}provide(r){const{actions:n,guards:o,actors:a,delays:i}=this.implementations;return new fE(this.config,{actions:{...n,...r.actions},guards:{...o,...r.guards},actors:{...a,...r.actors},delays:{...i,...r.delays}})}resolveState(r){const n=$Pe(this.root,r.value),o=A3(N3(this.root,n));return P3({_nodes:[...o],context:r.context||{},children:{},status:lE(o,this.root)?"done":r.status||"active",output:r.output,error:r.error,historyValue:r.historyValue},this)}transition(r,n,o){return hE(r,n,o,[]).snapshot}microstep(r,n,o){return hE(r,n,o,[]).microstates}getTransitionData(r,n){return sE(this.root,r.value,r,n)||[]}getPreInitialState(r,n,o){const{context:a}=this.config,i=P3({context:typeof a!="function"&&a?a:{},_nodes:[this.root],children:{},status:"active"},this);return typeof a=="function"?Gf(i,n,r,[Bt(({spawn:l,event:s,self:c})=>a({spawn:l,input:s.input,self:c}))],o,void 0):i}getInitialSnapshot(r,n){const o=QG(n),a=[],i=this.getPreInitialState(r,o,a),l=uE([{target:[...pY(this.root)],source:this.root,reenter:!0,actions:[],eventType:null,toJSON:null}],i,r,o,!0,a),{snapshot:s}=hE(l,o,r,a);return s}start(r){Object.values(r.children).forEach(n=>{n.getSnapshot().status==="active"&&n.start()})}getStateNodeById(r){const n=tE(r),o=n.slice(1),a=D3(n[0])?n[0].slice(FPe.length):n[0],i=this.idMap.get(a);if(!i)throw new Error(`Child state node '#${a}' does not exist on machine '${this.id}'`);return M3(i,o)}get definition(){return this.root.definition}toJSON(){return this.definition}getPersistedSnapshot(r,n){return NPe(r,n)}restoreSnapshot(r,n){const o={},a=r.children;Object.keys(a).forEach(p=>{const f=a[p],g=f.snapshot,v=f.src,w=typeof v=="string"?nE(this,v):v;if(!w)return;const x=qf(w,{id:p,parent:n.self,syncSnapshot:f.syncSnapshot,snapshot:g,src:v,systemId:f.systemId});o[p]=x});function i(p,f){if(f instanceof O3)return f;try{return p.machine.getStateNodeById(f.id)}catch{}}function l(p,f){if(!f||typeof f!="object")return{};const g={};for(const v in f){const w=f[v];for(const x of w){const k=i(p,x);k&&(g[v]??=[],g[v].push(k))}}return g}const s=l(this.root,r.historyValue),c=P3({...r,children:o,_nodes:Array.from(A3(N3(this.root,r.value))),historyValue:s},this),d=new Set;function u(p,f){if(!d.has(p)){d.add(p);for(const g in p){const v=p[g];if(v&&typeof v=="object"){if("xstate$$type"in v&&v.xstate$$type===aE){p[g]=f[v.id];continue}u(v,f)}}}}return u(c.context,o),c}}function VPe(e,r,n,o,{event:a}){const i=typeof a=="function"?a(n,o):a;return[r,{event:i},void 0]}function qPe(e,{event:r}){e.defer(()=>e.emit(r))}function mE(e){function r(n,o){}return r.type="xstate.emit",r.event=e,r.resolve=VPe,r.execute=qPe,r}let gE=(function(e){return e.Parent="#_parent",e.Internal="#_internal",e})({});function HPe(e,r,n,o,{to:a,event:i,id:l,delay:s},c){const d=r.machine.implementations.delays;if(typeof i=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${i}" }) instead`);const u=typeof i=="function"?i(n,o):i;let p;if(typeof s=="string"){const v=d&&d[s];p=typeof v=="function"?v(n,o):v}else p=typeof s=="function"?s(n,o):s;const f=typeof a=="function"?a(n,o):a;let g;if(typeof f=="string"){if(f===gE.Parent?g=e.self._parent:f===gE.Internal?g=e.self:f.startsWith("#_")?g=r.children[f.slice(2)]:g=c.deferredActorIds?.includes(f)?f:r.children[f],!g)throw new Error(`Unable to send event to actor '${f}' from machine '${r.machine.id}'.`)}else g=f||e.self;return[r,{to:g,targetId:typeof f=="string"?f:void 0,event:u,id:l,delay:p},void 0]}function UPe(e,r,n){typeof n.to=="string"&&(n.to=r.children[n.to])}function WPe(e,r){e.defer(()=>{const{to:n,event:o,delay:a,id:i}=r;if(typeof a=="number"){e.system.scheduler.schedule(e.self,n,o,a,i);return}e.system._relay(e.self,n,o.type===GNe?KG(e.self.id,o.data):o)})}function jy(e,r,n){function o(a,i){}return o.type="xstate.sendTo",o.to=e,o.event=r,o.id=n?.id,o.delay=n?.delay,o.resolve=HPe,o.retryResolve=UPe,o.execute=WPe,o}function GPe(e,r){return jy(gE.Parent,e,r)}function YPe(e,r,n,o,{collect:a}){const i=[],l=function(s){i.push(s)};return l.assign=(...s)=>{i.push(Bt(...s))},l.cancel=(...s)=>{i.push(ui(...s))},l.raise=(...s)=>{i.push(ia(...s))},l.sendTo=(...s)=>{i.push(jy(...s))},l.sendParent=(...s)=>{i.push(GPe(...s))},l.spawnChild=(...s)=>{i.push(T3(...s))},l.stopChild=(...s)=>{i.push($y(...s))},l.emit=(...s)=>{i.push(mE(...s))},a({context:n.context,event:n.event,enqueue:l,check:s=>j3(s,r.context,n.event,r),self:e.self,system:e.system},o),[r,void 0,i]}function rs(e){function r(n,o){}return r.type="xstate.enqueueActions",r.collect=e,r.resolve=YPe,r}function XPe(e,r,n,o,{value:a,label:i}){return[r,{value:typeof a=="function"?a(n,o):a,label:i},void 0]}function ZPe({logger:e},{value:r,label:n}){n?e(n,r):e(r)}function yE(e=({context:n,event:o})=>({context:n,event:o}),r){function n(o,a){}return n.type="xstate.log",n.value=e,n.label=r,n.resolve=XPe,n.execute=ZPe,n}function ht(e,r){const n=nc(r);if(!n.includes(e.type)){const o=n.length===1?`type "${n[0]}"`:`one of types "${n.join('", "')}"`;throw new Error(`Expected event ${JSON.stringify(e)} to have ${o}`)}}function KPe(e,r){return new fE(e,r)}function ns({schemas:e,actors:r,actions:n,guards:o,delays:a}){return{assign:Bt,sendTo:jy,raise:ia,log:yE,cancel:ui,stopChild:$y,enqueueActions:rs,emit:mE,spawnChild:T3,createStateConfig:i=>i,createAction:i=>i,createMachine:i=>KPe({...i,schemas:e},{actors:r,actions:n,guards:o,delays:a}),extend:i=>ns({schemas:e,actors:r,actions:{...n,...i.actions},guards:{...o,...i.guards},delays:{...a,...i.delays}})}}fV();const SY=(e,r)=>{r(e);const n=e.getSnapshot().children;n&&Object.values(n).forEach(o=>{SY(o,r)})};function QPe(e){const r=[];SY(e,o=>{r.push([o,o.getSnapshot()]),o.observers=new Set});const n=e.system.getSnapshot?.();e.stop(),e.system._snapshot=n,r.forEach(([o,a])=>{o._processingStatus=0,o._snapshot=a})}function JPe(e,...[r]){let[[n,o],a]=S.useState(()=>{const i=qf(e,r);return[e.config,i]});if(e.config!==n){const i=qf(e,{...r,snapshot:o.getPersistedSnapshot({__unsafeAllowInlineActors:!0})});a([e.config,i]),o=i}return hMe(()=>{o.logic.implementations=e.implementations}),o}function vE(e,...[r,n]){const o=JPe(e,r);return S.useEffect(()=>{if(!n)return;const a=o.subscribe(R3(n));return()=>{a.unsubscribe()}},[n]),S.useEffect(()=>(o.start(),()=>{QPe(o)}),[o]),o}function eBe(e,r){return e===r}function pn(e,r,n=eBe){const o=S.useCallback(i=>{if(!e)return()=>{};const{unsubscribe:l}=e.subscribe(i);return l},[e]),a=S.useCallback(()=>e?.getSnapshot(),[e]);return yV.useSyncExternalStoreWithSelector(o,a,a,r,n)}const bE=S.createContext(null);bE.displayName="DiagramActorSafeContext";const xE=S.createContext(null);xE.displayName="DiagramApiSafeContext";const tBe=bE.Provider,rBe=xE.Provider;function Xf(){const e=S.useContext(bE);if(e===null)throw new Error("DiagramActorRef is not provided");return e}function Nt(){const e=S.useContext(xE);if(e===null)throw new Error("DiagramApi is not provided");return e}function it(e){const r=S.useRef(e);r.current=e;const n=S.useRef(null);return n.current==null&&(n.current=((...o)=>r.current?.(...o))),n.current}function wE(e,r=Ir){const n=Xf();return pn(n,e,r)}function pi(e,r=Ir,n){const o=Xf(),a=it(e),i=S.useCallback(l=>a(l.context),n??[]);return pn(o,i,r)}function ja(e,r,n){const o=Xf(),a=it(r),i=S.useRef(!1),l=n?.once??!1;S.useEffect(()=>{if(l&&i.current)return;let s=o.on(e,c=>{a(c),i.current=!0,l&&(s?.unsubscribe(),s=null)});return()=>{s?.unsubscribe()}},[o,e,l])}const nBe=e=>e.children.overlays;function oBe(){return wE(nBe,Object.is)}const aBe=e=>e.children.search??null;function iBe(){return wE(aBe,Object.is)}function kE(e,r){e.indexOf(r)===-1&&e.push(r)}function L3(e,r){const n=e.indexOf(r);n>-1&&e.splice(n,1)}const oc=(e,r,n)=>n>r?r:n{};const ac={},EY=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function CY(e){return typeof e=="object"&&e!==null}const $Y=e=>/^0[^.\s]+$/u.test(e);function SE(e){let r;return()=>(r===void 0&&(r=e()),r)}const hi=e=>e,lBe=(e,r)=>n=>r(e(n)),Ay=(...e)=>e.reduce(lBe),Zf=(e,r,n)=>{const o=r-e;return o===0?1:(n-e)/o};class EE{constructor(){this.subscriptions=[]}add(r){return kE(this.subscriptions,r),()=>L3(this.subscriptions,r)}notify(r,n,o){const a=this.subscriptions.length;if(a)if(a===1)this.subscriptions[0](r,n,o);else for(let i=0;ie*1e3,fi=e=>e/1e3;function zY(e,r){return r?e*(1e3/r):0}const sBe=(e,r,n)=>{const o=r-e;return((n-e)%o+o)%o+e},RY=(e,r,n)=>(((1-3*n+3*r)*e+(3*n-6*r))*e+3*r)*e,cBe=1e-7,dBe=12;function uBe(e,r,n,o,a){let i,l,s=0;do l=r+(n-r)/2,i=RY(l,o,a)-e,i>0?n=l:r=l;while(Math.abs(i)>cBe&&++suBe(i,0,1,e,n);return i=>i===0||i===1?i:RY(a(i),r,o)}const TY=e=>r=>r<=.5?e(2*r)/2:(2-e(2*(1-r)))/2,jY=e=>r=>1-e(1-r),AY=Dy(.33,1.53,.69,.99),CE=jY(AY),DY=TY(CE),MY=e=>(e*=2)<1?.5*CE(e):.5*(2-Math.pow(2,-10*(e-1))),$E=e=>1-Math.sin(Math.acos(e)),NY=jY($E),PY=TY($E),pBe=Dy(.42,0,1,1),hBe=Dy(0,0,.58,1),BY=Dy(.42,0,.58,1),IY=e=>Array.isArray(e)&&typeof e[0]!="number";function OY(e,r){return IY(e)?e[sBe(0,e.length,r)]:e}const LY=e=>Array.isArray(e)&&typeof e[0]=="number",fBe={linear:hi,easeIn:pBe,easeInOut:BY,easeOut:hBe,circIn:$E,circInOut:PY,circOut:NY,backIn:CE,backInOut:DY,backOut:AY,anticipate:MY},mBe=e=>typeof e=="string",FY=e=>{if(LY(e)){_E(e.length===4);const[r,n,o,a]=e;return Dy(r,n,o,a)}else if(mBe(e))return fBe[e];return e},F3=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function gBe(e,r){let n=new Set,o=new Set,a=!1,i=!1;const l=new WeakSet;let s={delta:0,timestamp:0,isProcessing:!1};function c(u){l.has(u)&&(d.schedule(u),e()),u(s)}const d={schedule:(u,p=!1,f=!1)=>{const g=f&&a?n:o;return p&&l.add(u),g.has(u)||g.add(u),u},cancel:u=>{o.delete(u),l.delete(u)},process:u=>{if(s=u,a){i=!0;return}a=!0,[n,o]=[o,n],n.forEach(c),n.clear(),a=!1,i&&(i=!1,d.process(u))}};return d}const yBe=40;function VY(e,r){let n=!1,o=!0;const a={delta:0,timestamp:0,isProcessing:!1},i=()=>n=!0,l=F3.reduce((k,C)=>(k[C]=gBe(i),k),{}),{setup:s,read:c,resolveKeyframes:d,preUpdate:u,update:p,preRender:f,render:g,postRender:v}=l,w=()=>{const k=ac.useManualTiming?a.timestamp:performance.now();n=!1,ac.useManualTiming||(a.delta=o?1e3/60:Math.max(Math.min(k-a.timestamp,yBe),1)),a.timestamp=k,a.isProcessing=!0,s.process(a),c.process(a),d.process(a),u.process(a),p.process(a),f.process(a),g.process(a),v.process(a),a.isProcessing=!1,n&&r&&(o=!1,e(w))},x=()=>{n=!0,o=!0,a.isProcessing||e(w)};return{schedule:F3.reduce((k,C)=>{const _=l[C];return k[C]=($,z=!1,T=!1)=>(n||x(),_.schedule($,z,T)),k},{}),cancel:k=>{for(let C=0;C(V3===void 0&&la.set(so.isProcessing||ac.useManualTiming?so.timestamp:performance.now()),V3),set:e=>{V3=e,queueMicrotask(vBe)}},qY=e=>r=>typeof r=="string"&&r.startsWith(e),HY=qY("--"),bBe=qY("var(--"),RE=e=>bBe(e)?xBe.test(e.split("/*")[0].trim()):!1,xBe=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,Kf={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},My={...Kf,transform:e=>oc(0,1,e)},q3={...Kf,default:1},Ny=e=>Math.round(e*1e5)/1e5,TE=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function wBe(e){return e==null}const kBe=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,jE=(e,r)=>n=>!!(typeof n=="string"&&kBe.test(n)&&n.startsWith(e)||r&&!wBe(n)&&Object.prototype.hasOwnProperty.call(n,r)),UY=(e,r,n)=>o=>{if(typeof o!="string")return o;const[a,i,l,s]=o.match(TE);return{[e]:parseFloat(a),[r]:parseFloat(i),[n]:parseFloat(l),alpha:s!==void 0?parseFloat(s):1}},_Be=e=>oc(0,255,e),AE={...Kf,transform:e=>Math.round(_Be(e))},bp={test:jE("rgb","red"),parse:UY("red","green","blue"),transform:({red:e,green:r,blue:n,alpha:o=1})=>"rgba("+AE.transform(e)+", "+AE.transform(r)+", "+AE.transform(n)+", "+Ny(My.transform(o))+")"};function SBe(e){let r="",n="",o="",a="";return e.length>5?(r=e.substring(1,3),n=e.substring(3,5),o=e.substring(5,7),a=e.substring(7,9)):(r=e.substring(1,2),n=e.substring(2,3),o=e.substring(3,4),a=e.substring(4,5),r+=r,n+=n,o+=o,a+=a),{red:parseInt(r,16),green:parseInt(n,16),blue:parseInt(o,16),alpha:a?parseInt(a,16)/255:1}}const DE={test:jE("#"),parse:SBe,transform:bp.transform},Py=e=>({test:r=>typeof r=="string"&&r.endsWith(e)&&r.split(" ").length===1,parse:parseFloat,transform:r=>`${r}${e}`}),zd=Py("deg"),os=Py("%"),_t=Py("px"),EBe=Py("vh"),CBe=Py("vw"),WY={...os,parse:e=>os.parse(e)/100,transform:e=>os.transform(e*100)},Qf={test:jE("hsl","hue"),parse:UY("hue","saturation","lightness"),transform:({hue:e,saturation:r,lightness:n,alpha:o=1})=>"hsla("+Math.round(e)+", "+os.transform(Ny(r))+", "+os.transform(Ny(n))+", "+Ny(My.transform(o))+")"},Sn={test:e=>bp.test(e)||DE.test(e)||Qf.test(e),parse:e=>bp.test(e)?bp.parse(e):Qf.test(e)?Qf.parse(e):DE.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?bp.transform(e):Qf.transform(e),getAnimatableNone:e=>{const r=Sn.parse(e);return r.alpha=0,Sn.transform(r)}},$Be=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function zBe(e){return isNaN(e)&&typeof e=="string"&&(e.match(TE)?.length||0)+(e.match($Be)?.length||0)>0}const GY="number",YY="color",RBe="var",TBe="var(",XY="${}",jBe=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function By(e){const r=e.toString(),n=[],o={color:[],number:[],var:[]},a=[];let i=0;const l=r.replace(jBe,s=>(Sn.test(s)?(o.color.push(i),a.push(YY),n.push(Sn.parse(s))):s.startsWith(TBe)?(o.var.push(i),a.push(RBe),n.push(s)):(o.number.push(i),a.push(GY),n.push(parseFloat(s))),++i,XY)).split(XY);return{values:n,split:l,indexes:o,types:a}}function ZY(e){return By(e).values}function KY(e){const{split:r,types:n}=By(e),o=r.length;return a=>{let i="";for(let l=0;ltypeof e=="number"?0:Sn.test(e)?Sn.getAnimatableNone(e):e;function DBe(e){const r=ZY(e);return KY(e)(r.map(ABe))}const Rd={test:zBe,parse:ZY,createTransformer:KY,getAnimatableNone:DBe};function ME(e,r,n){return n<0&&(n+=1),n>1&&(n-=1),n<.16666666666666666?e+(r-e)*6*n:n<.5?r:n<.6666666666666666?e+(r-e)*(.6666666666666666-n)*6:e}function MBe({hue:e,saturation:r,lightness:n,alpha:o}){e/=360,r/=100,n/=100;let a=0,i=0,l=0;if(!r)a=i=l=n;else{const s=n<.5?n*(1+r):n+r-n*r,c=2*n-s;a=ME(c,s,e+.3333333333333333),i=ME(c,s,e),l=ME(c,s,e-.3333333333333333)}return{red:Math.round(a*255),green:Math.round(i*255),blue:Math.round(l*255),alpha:o}}function H3(e,r){return n=>n>0?r:e}const Lr=(e,r,n)=>e+(r-e)*n,NE=(e,r,n)=>{const o=e*e,a=n*(r*r-o)+o;return a<0?0:Math.sqrt(a)},NBe=[DE,bp,Qf],PBe=e=>NBe.find(r=>r.test(e));function QY(e){const r=PBe(e);if(!r)return!1;let n=r.parse(e);return r===Qf&&(n=MBe(n)),n}const JY=(e,r)=>{const n=QY(e),o=QY(r);if(!n||!o)return H3(e,r);const a={...n};return i=>(a.red=NE(n.red,o.red,i),a.green=NE(n.green,o.green,i),a.blue=NE(n.blue,o.blue,i),a.alpha=Lr(n.alpha,o.alpha,i),bp.transform(a))},PE=new Set(["none","hidden"]);function BBe(e,r){return PE.has(e)?n=>n<=0?e:r:n=>n>=1?r:e}function IBe(e,r){return n=>Lr(e,r,n)}function BE(e){return typeof e=="number"?IBe:typeof e=="string"?RE(e)?H3:Sn.test(e)?JY:FBe:Array.isArray(e)?eX:typeof e=="object"?Sn.test(e)?JY:OBe:H3}function eX(e,r){const n=[...e],o=n.length,a=e.map((i,l)=>BE(i)(i,r[l]));return i=>{for(let l=0;l{for(const i in o)n[i]=o[i](a);return n}}function LBe(e,r){const n=[],o={color:0,var:0,number:0};for(let a=0;a{const n=Rd.createTransformer(r),o=By(e),a=By(r);return o.indexes.var.length===a.indexes.var.length&&o.indexes.color.length===a.indexes.color.length&&o.indexes.number.length>=a.indexes.number.length?PE.has(e)&&!a.values.length||PE.has(r)&&!o.values.length?BBe(e,r):Ay(eX(LBe(o,a),a.values),n):H3(e,r)};function tX(e,r,n){return typeof e=="number"&&typeof r=="number"&&typeof n=="number"?Lr(e,r,n):BE(e)(e,r)}const VBe=e=>{const r=({timestamp:n})=>e(n);return{start:(n=!0)=>Dr.update(r,n),stop:()=>$d(r),now:()=>so.isProcessing?so.timestamp:la.now()}},rX=(e,r,n=10)=>{let o="";const a=Math.max(Math.round(r/n),2);for(let i=0;i=U3?1/0:r}function nX(e,r=100,n){const o=n({...e,keyframes:[0,r]}),a=Math.min(IE(o),U3);return{type:"keyframes",ease:i=>o.next(a*i).value/r,duration:fi(a)}}const qBe=5;function oX(e,r,n){const o=Math.max(r-qBe,0);return zY(n-e(o),r-o)}const rn={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},OE=.001;function HBe({duration:e=rn.duration,bounce:r=rn.bounce,velocity:n=rn.velocity,mass:o=rn.mass}){let a,i,l=1-r;l=oc(rn.minDamping,rn.maxDamping,l),e=oc(rn.minDuration,rn.maxDuration,fi(e)),l<1?(a=d=>{const u=d*l,p=u*e,f=u-n,g=LE(d,l),v=Math.exp(-p);return OE-f/g*v},i=d=>{const u=d*l*e,p=u*n+n,f=Math.pow(l,2)*Math.pow(d,2)*e,g=Math.exp(-u),v=LE(Math.pow(d,2),l);return(-a(d)+OE>0?-1:1)*((p-f)*g)/v}):(a=d=>{const u=Math.exp(-d*e),p=(d-n)*e+1;return-OE+u*p},i=d=>{const u=Math.exp(-d*e),p=(n-d)*(e*e);return u*p});const s=5/e,c=WBe(a,i,s);if(e=il(e),isNaN(c))return{stiffness:rn.stiffness,damping:rn.damping,duration:e};{const d=Math.pow(c,2)*o;return{stiffness:d,damping:l*2*Math.sqrt(o*d),duration:e}}}const UBe=12;function WBe(e,r,n){let o=n;for(let a=1;ae[n]!==void 0)}function XBe(e){let r={velocity:rn.velocity,stiffness:rn.stiffness,damping:rn.damping,mass:rn.mass,isResolvedFromDuration:!1,...e};if(!aX(e,YBe)&&aX(e,GBe))if(e.visualDuration){const n=e.visualDuration,o=2*Math.PI/(n*1.2),a=o*o,i=2*oc(.05,1,1-(e.bounce||0))*Math.sqrt(a);r={...r,mass:rn.mass,stiffness:a,damping:i}}else{const n=HBe(e);r={...r,...n,mass:rn.mass},r.isResolvedFromDuration=!0}return r}function Iy(e=rn.visualDuration,r=rn.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:r}:e;let{restSpeed:o,restDelta:a}=n;const i=n.keyframes[0],l=n.keyframes[n.keyframes.length-1],s={done:!1,value:i},{stiffness:c,damping:d,mass:u,duration:p,velocity:f,isResolvedFromDuration:g}=XBe({...n,velocity:-fi(n.velocity||0)}),v=f||0,w=d/(2*Math.sqrt(c*u)),x=l-i,k=fi(Math.sqrt(c/u)),C=Math.abs(x)<5;o||(o=C?rn.restSpeed.granular:rn.restSpeed.default),a||(a=C?rn.restDelta.granular:rn.restDelta.default);let _;if(w<1){const z=LE(k,w);_=T=>{const A=Math.exp(-w*k*T);return l-A*((v+w*k*x)/z*Math.sin(z*T)+x*Math.cos(z*T))}}else if(w===1)_=z=>l-Math.exp(-k*z)*(x+(v+k*x)*z);else{const z=k*Math.sqrt(w*w-1);_=T=>{const A=Math.exp(-w*k*T),R=Math.min(z*T,300);return l-A*((v+w*k*x)*Math.sinh(R)+z*x*Math.cosh(R))/z}}const $={calculatedDuration:g&&p||null,next:z=>{const T=_(z);if(g)s.done=z>=p;else{let A=z===0?v:0;w<1&&(A=z===0?il(v):oX(_,z,T));const R=Math.abs(A)<=o,j=Math.abs(l-T)<=a;s.done=R&&j}return s.value=s.done?l:T,s},toString:()=>{const z=Math.min(IE($),U3),T=rX(A=>$.next(z*A).value,z,30);return z+"ms "+T},toTransition:()=>{}};return $}Iy.applyToOptions=e=>{const r=nX(e,100,Iy);return e.ease=r.ease,e.duration=il(r.duration),e.type="keyframes",e};function FE({keyframes:e,velocity:r=0,power:n=.8,timeConstant:o=325,bounceDamping:a=10,bounceStiffness:i=500,modifyTarget:l,min:s,max:c,restDelta:d=.5,restSpeed:u}){const p=e[0],f={done:!1,value:p},g=R=>s!==void 0&&Rc,v=R=>s===void 0?c:c===void 0||Math.abs(s-R)-w*Math.exp(-R/o),_=R=>k+C(R),$=R=>{const j=C(R),I=_(R);f.done=Math.abs(j)<=d,f.value=f.done?k:I};let z,T;const A=R=>{g(f.value)&&(z=R,T=Iy({keyframes:[f.value,v(f.value)],velocity:oX(_,R,f.value),damping:a,stiffness:i,restDelta:d,restSpeed:u}))};return A(0),{calculatedDuration:null,next:R=>{let j=!1;return!T&&z===void 0&&(j=!0,$(R),A(R)),z!==void 0&&R>=z?T.next(R-z):(!j&&$(R),f)}}}function ZBe(e,r,n){const o=[],a=n||ac.mix||tX,i=e.length-1;for(let l=0;lr[0];if(i===2&&r[0]===r[1])return()=>r[1];const l=e[0]===e[1];e[0]>e[i-1]&&(e=[...e].reverse(),r=[...r].reverse());const s=ZBe(r,o,a),c=s.length,d=u=>{if(l&&u1)for(;pd(oc(e[0],e[i-1],u)):d}function iX(e,r){const n=e[e.length-1];for(let o=1;o<=r;o++){const a=Zf(0,r,o);e.push(Lr(n,1,a))}}function lX(e){const r=[0];return iX(r,e.length-1),r}function QBe(e,r){return e.map(n=>n*r)}function JBe(e,r){return e.map(()=>r||BY).splice(0,e.length-1)}function Oy({duration:e=300,keyframes:r,times:n,ease:o="easeInOut"}){const a=IY(o)?o.map(FY):FY(o),i={done:!1,value:r[0]},l=QBe(n&&n.length===r.length?n:lX(r),e),s=KBe(l,r,{ease:Array.isArray(a)?a:JBe(r,a)});return{calculatedDuration:e,next:c=>(i.value=s(c),i.done=c>=e,i)}}const eIe=e=>e!==null;function VE(e,{repeat:r,repeatType:n="loop"},o,a=1){const i=e.filter(eIe),l=a<0||r&&n!=="loop"&&r%2===1?0:i.length-1;return!l||o===void 0?i[l]:o}const tIe={decay:FE,inertia:FE,tween:Oy,keyframes:Oy,spring:Iy};function sX(e){typeof e.type=="string"&&(e.type=tIe[e.type])}class qE{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(r=>{this.resolve=r})}notifyFinished(){this.resolve()}then(r,n){return this.finished.then(r,n)}}const rIe=e=>e/100;class HE extends qE{constructor(r){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==la.now()&&this.tick(la.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=r,this.initAnimation(),this.play(),r.autoplay===!1&&this.pause()}initAnimation(){const{options:r}=this;sX(r);const{type:n=Oy,repeat:o=0,repeatDelay:a=0,repeatType:i,velocity:l=0}=r;let{keyframes:s}=r;const c=n||Oy;c!==Oy&&typeof s[0]!="number"&&(this.mixKeyframes=Ay(rIe,tX(s[0],s[1])),s=[0,100]);const d=c({...r,keyframes:s});i==="mirror"&&(this.mirroredGenerator=c({...r,keyframes:[...s].reverse(),velocity:-l})),d.calculatedDuration===null&&(d.calculatedDuration=IE(d));const{calculatedDuration:u}=d;this.calculatedDuration=u,this.resolvedDuration=u+a,this.totalDuration=this.resolvedDuration*(o+1)-a,this.generator=d}updateTime(r){const n=Math.round(r-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(r,n=!1){const{generator:o,totalDuration:a,mixKeyframes:i,mirroredGenerator:l,resolvedDuration:s,calculatedDuration:c}=this;if(this.startTime===null)return o.next(0);const{delay:d=0,keyframes:u,repeat:p,repeatType:f,repeatDelay:g,type:v,onUpdate:w,finalKeyframe:x}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,r):this.speed<0&&(this.startTime=Math.min(r-a/this.speed,this.startTime)),n?this.currentTime=r:this.updateTime(r);const k=this.currentTime-d*(this.playbackSpeed>=0?1:-1),C=this.playbackSpeed>=0?k<0:k>a;this.currentTime=Math.max(k,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=a);let _=this.currentTime,$=o;if(p){const R=Math.min(this.currentTime,a)/s;let j=Math.floor(R),I=R%1;!I&&R>=1&&(I=1),I===1&&j--,j=Math.min(j,p+1),j%2&&(f==="reverse"?(I=1-I,g&&(I-=g/s)):f==="mirror"&&($=l)),_=oc(0,1,I)*s}const z=C?{done:!1,value:u[0]}:$.next(_);i&&(z.value=i(z.value));let{done:T}=z;!C&&c!==null&&(T=this.playbackSpeed>=0?this.currentTime>=a:this.currentTime<=0);const A=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&T);return A&&v!==FE&&(z.value=VE(u,this.options,x,this.speed)),w&&w(z.value),A&&this.finish(),z}then(r,n){return this.finished.then(r,n)}get duration(){return fi(this.calculatedDuration)}get iterationDuration(){const{delay:r=0}=this.options||{};return this.duration+fi(r)}get time(){return fi(this.currentTime)}set time(r){r=il(r),this.currentTime=r,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=r:this.driver&&(this.startTime=this.driver.now()-r/this.playbackSpeed),this.driver?.start(!1)}get speed(){return this.playbackSpeed}set speed(r){this.updateTime(la.now());const n=this.playbackSpeed!==r;this.playbackSpeed=r,n&&(this.time=fi(this.currentTime))}play(){if(this.isStopped)return;const{driver:r=VBe,startTime:n}=this.options;this.driver||(this.driver=r(a=>this.tick(a))),this.options.onPlay?.();const o=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=o):this.holdTime!==null?this.startTime=o-this.holdTime:this.startTime||(this.startTime=n??o),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(la.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(r){return this.startTime=0,this.tick(r,!0)}attachTimeline(r){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),r.observe(this)}}function nIe(e){for(let r=1;re*180/Math.PI,UE=e=>{const r=xp(Math.atan2(e[1],e[0]));return WE(r)},oIe={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:UE,rotateZ:UE,skewX:e=>xp(Math.atan(e[1])),skewY:e=>xp(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},WE=e=>(e=e%360,e<0&&(e+=360),e),cX=UE,dX=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),uX=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),aIe={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:dX,scaleY:uX,scale:e=>(dX(e)+uX(e))/2,rotateX:e=>WE(xp(Math.atan2(e[6],e[5]))),rotateY:e=>WE(xp(Math.atan2(-e[2],e[0]))),rotateZ:cX,rotate:cX,skewX:e=>xp(Math.atan(e[4])),skewY:e=>xp(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function GE(e){return e.includes("scale")?1:0}function YE(e,r){if(!e||e==="none")return GE(r);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let o,a;if(n)o=aIe,a=n;else{const s=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);o=oIe,a=s}if(!a)return GE(r);const i=o[r],l=a[1].split(",").map(lIe);return typeof i=="function"?i(l):l[i]}const iIe=(e,r)=>{const{transform:n="none"}=getComputedStyle(e);return YE(n,r)};function lIe(e){return parseFloat(e.trim())}const Jf=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],em=new Set(Jf),pX=e=>e===Kf||e===_t,sIe=new Set(["x","y","z"]),cIe=Jf.filter(e=>!sIe.has(e));function dIe(e){const r=[];return cIe.forEach(n=>{const o=e.getValue(n);o!==void 0&&(r.push([n,o.get()]),o.set(n.startsWith("scale")?1:0))}),r}const wp={width:({x:e},{paddingLeft:r="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(r)-parseFloat(n),height:({y:e},{paddingTop:r="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(r)-parseFloat(n),top:(e,{top:r})=>parseFloat(r),left:(e,{left:r})=>parseFloat(r),bottom:({y:e},{top:r})=>parseFloat(r)+(e.max-e.min),right:({x:e},{left:r})=>parseFloat(r)+(e.max-e.min),x:(e,{transform:r})=>YE(r,"x"),y:(e,{transform:r})=>YE(r,"y")};wp.translateX=wp.x,wp.translateY=wp.y;const kp=new Set;let XE=!1,ZE=!1,KE=!1;function hX(){if(ZE){const e=Array.from(kp).filter(o=>o.needsMeasurement),r=new Set(e.map(o=>o.element)),n=new Map;r.forEach(o=>{const a=dIe(o);a.length&&(n.set(o,a),o.render())}),e.forEach(o=>o.measureInitialState()),r.forEach(o=>{o.render();const a=n.get(o);a&&a.forEach(([i,l])=>{o.getValue(i)?.set(l)})}),e.forEach(o=>o.measureEndState()),e.forEach(o=>{o.suspendedScrollY!==void 0&&window.scrollTo(0,o.suspendedScrollY)})}ZE=!1,XE=!1,kp.forEach(e=>e.complete(KE)),kp.clear()}function fX(){kp.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(ZE=!0)})}function uIe(){KE=!0,fX(),hX(),KE=!1}class QE{constructor(r,n,o,a,i,l=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...r],this.onComplete=n,this.name=o,this.motionValue=a,this.element=i,this.isAsync=l}scheduleResolve(){this.state="scheduled",this.isAsync?(kp.add(this),XE||(XE=!0,Dr.read(fX),Dr.resolveKeyframes(hX))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:r,name:n,element:o,motionValue:a}=this;if(r[0]===null){const i=a?.get(),l=r[r.length-1];if(i!==void 0)r[0]=i;else if(o&&n){const s=o.readValue(n,l);s!=null&&(r[0]=s)}r[0]===void 0&&(r[0]=l),a&&i===void 0&&a.set(r[0])}nIe(r)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(r=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,r),kp.delete(this)}cancel(){this.state==="scheduled"&&(kp.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const pIe=e=>e.startsWith("--");function hIe(e,r,n){pIe(r)?e.style.setProperty(r,n):e.style[r]=n}const fIe=SE(()=>window.ScrollTimeline!==void 0),mIe={};function gIe(e,r){const n=SE(e);return()=>mIe[r]??n()}const mX=gIe(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Ly=([e,r,n,o])=>`cubic-bezier(${e}, ${r}, ${n}, ${o})`,gX={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Ly([0,.65,.55,1]),circOut:Ly([.55,0,1,.45]),backIn:Ly([.31,.01,.66,-.59]),backOut:Ly([.33,1.53,.69,.99])};function yX(e,r){if(e)return typeof e=="function"?mX()?rX(e,r):"ease-out":LY(e)?Ly(e):Array.isArray(e)?e.map(n=>yX(n,r)||gX.easeOut):gX[e]}function yIe(e,r,n,{delay:o=0,duration:a=300,repeat:i=0,repeatType:l="loop",ease:s="easeOut",times:c}={},d=void 0){const u={[r]:n};c&&(u.offset=c);const p=yX(s,a);Array.isArray(p)&&(u.easing=p);const f={delay:o,duration:a,easing:Array.isArray(p)?"linear":p,fill:"both",iterations:i+1,direction:l==="reverse"?"alternate":"normal"};return d&&(f.pseudoElement=d),e.animate(u,f)}function JE(e){return typeof e=="function"&&"applyToOptions"in e}function vIe({type:e,...r}){return JE(e)&&mX()?e.applyToOptions(r):(r.duration??(r.duration=300),r.ease??(r.ease="easeOut"),r)}class bIe extends qE{constructor(r){if(super(),this.finishedTime=null,this.isStopped=!1,!r)return;const{element:n,name:o,keyframes:a,pseudoElement:i,allowFlatten:l=!1,finalKeyframe:s,onComplete:c}=r;this.isPseudoElement=!!i,this.allowFlatten=l,this.options=r,_E(typeof r.type!="string");const d=vIe(r);this.animation=yIe(n,o,a,d,i),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!i){const u=VE(a,this.options,s,this.speed);this.updateMotionValue?this.updateMotionValue(u):hIe(n,o,u),this.animation.cancel()}c?.(),this.notifyFinished()}}play(){this.isStopped||(this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:r}=this;r==="idle"||r==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){this.isPseudoElement||this.animation.commitStyles?.()}get duration(){const r=this.animation.effect?.getComputedTiming?.().duration||0;return fi(Number(r))}get iterationDuration(){const{delay:r=0}=this.options||{};return this.duration+fi(r)}get time(){return fi(Number(this.animation.currentTime)||0)}set time(r){this.finishedTime=null,this.animation.currentTime=il(r)}get speed(){return this.animation.playbackRate}set speed(r){r<0&&(this.finishedTime=null),this.animation.playbackRate=r}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(r){this.animation.startTime=r}attachTimeline({timeline:r,observe:n}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,r&&fIe()?(this.animation.timeline=r,hi):n(this)}}const vX={anticipate:MY,backInOut:DY,circInOut:PY};function xIe(e){return e in vX}function wIe(e){typeof e.ease=="string"&&xIe(e.ease)&&(e.ease=vX[e.ease])}const bX=10;class kIe extends bIe{constructor(r){wIe(r),sX(r),super(r),r.startTime&&(this.startTime=r.startTime),this.options=r}updateMotionValue(r){const{motionValue:n,onUpdate:o,onComplete:a,element:i,...l}=this.options;if(!n)return;if(r!==void 0){n.set(r);return}const s=new HE({...l,autoplay:!1}),c=il(this.finishedTime??this.time);n.setWithVelocity(s.sample(c-bX).value,s.sample(c).value,bX),s.stop()}}const xX=(e,r)=>r==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(Rd.test(e)||e==="0")&&!e.startsWith("url("));function _Ie(e){const r=e[0];if(e.length===1)return!0;for(let n=0;nObject.hasOwnProperty.call(Element.prototype,"animate"));function $Ie(e){const{motionValue:r,name:n,repeatDelay:o,repeatType:a,damping:i,type:l}=e;if(!(r?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:s,transformTemplate:c}=r.owner.getProps();return CIe()&&n&&EIe.has(n)&&(n!=="transform"||!c)&&!s&&!o&&a!=="mirror"&&i!==0&&l!=="inertia"}const zIe=40;class RIe extends qE{constructor({autoplay:r=!0,delay:n=0,type:o="keyframes",repeat:a=0,repeatDelay:i=0,repeatType:l="loop",keyframes:s,name:c,motionValue:d,element:u,...p}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=la.now();const f={autoplay:r,delay:n,type:o,repeat:a,repeatDelay:i,repeatType:l,name:c,motionValue:d,element:u,...p},g=u?.KeyframeResolver||QE;this.keyframeResolver=new g(s,(v,w,x)=>this.onKeyframesResolved(v,w,f,!x),c,d,u),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(r,n,o,a){this.keyframeResolver=void 0;const{name:i,type:l,velocity:s,delay:c,isHandoff:d,onUpdate:u}=o;this.resolvedAt=la.now(),SIe(r,i,l,s)||((ac.instantAnimations||!c)&&u?.(VE(r,o,n)),r[0]=r[r.length-1],eC(o),o.repeat=0);const p={startTime:a?this.resolvedAt?this.resolvedAt-this.createdAt>zIe?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...o,keyframes:r},f=!d&&$Ie(p)?new kIe({...p,element:p.motionValue.owner.current}):new HE(p);f.finished.then(()=>this.notifyFinished()).catch(hi),this.pendingTimeline&&(this.stopTimeline=f.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=f}get finished(){return this._animation?this.animation.finished:this._finished}then(r,n){return this.finished.finally(r).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),uIe()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(r){this.animation.time=r}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(r){this.animation.speed=r}get startTime(){return this.animation.startTime}attachTimeline(r){return this._animation?this.stopTimeline=this.animation.attachTimeline(r):this.pendingTimeline=r,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}class TIe{constructor(r){this.stop=()=>this.runAll("stop"),this.animations=r.filter(Boolean)}get finished(){return Promise.all(this.animations.map(r=>r.finished))}getAll(r){return this.animations[0][r]}setAll(r,n){for(let o=0;oo.attachTimeline(r));return()=>{n.forEach((o,a)=>{o&&o(),this.animations[a].stop()})}}get time(){return this.getAll("time")}set time(r){this.setAll("time",r)}get speed(){return this.getAll("speed")}set speed(r){this.setAll("speed",r)}get state(){return this.getAll("state")}get startTime(){return this.getAll("startTime")}get duration(){return wX(this.animations,"duration")}get iterationDuration(){return wX(this.animations,"iterationDuration")}runAll(r){this.animations.forEach(n=>n[r]())}play(){this.runAll("play")}pause(){this.runAll("pause")}cancel(){this.runAll("cancel")}complete(){this.runAll("complete")}}function wX(e,r){let n=0;for(let o=0;on&&(n=a)}return n}class jIe extends TIe{then(r,n){return this.finished.finally(r).then(()=>{})}}const AIe=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function DIe(e){const r=AIe.exec(e);if(!r)return[,];const[,n,o,a]=r;return[`--${n??o}`,a]}function kX(e,r,n=1){const[o,a]=DIe(e);if(!o)return;const i=window.getComputedStyle(r).getPropertyValue(o);if(i){const l=i.trim();return EY(l)?parseFloat(l):l}return RE(a)?kX(a,r,n+1):a}function tC(e,r){return e?.[r]??e?.default??e}const _X=new Set(["width","height","top","left","right","bottom",...Jf]),MIe={test:e=>e==="auto",parse:e=>e},SX=e=>r=>r.test(e),EX=[Kf,_t,os,zd,CBe,EBe,MIe],CX=e=>EX.find(SX(e));function NIe(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||$Y(e):!0}const PIe=new Set(["brightness","contrast","saturate","opacity"]);function BIe(e){const[r,n]=e.slice(0,-1).split("(");if(r==="drop-shadow")return e;const[o]=n.match(TE)||[];if(!o)return e;const a=n.replace(o,"");let i=PIe.has(r)?1:0;return o!==n&&(i*=100),r+"("+i+a+")"}const IIe=/\b([a-z-]*)\(.*?\)/gu,rC={...Rd,getAnimatableNone:e=>{const r=e.match(IIe);return r?r.map(BIe).join(" "):e}},$X={...Kf,transform:Math.round},OIe={rotate:zd,rotateX:zd,rotateY:zd,rotateZ:zd,scale:q3,scaleX:q3,scaleY:q3,scaleZ:q3,skew:zd,skewX:zd,skewY:zd,distance:_t,translateX:_t,translateY:_t,translateZ:_t,x:_t,y:_t,z:_t,perspective:_t,transformPerspective:_t,opacity:My,originX:WY,originY:WY,originZ:_t},nC={borderWidth:_t,borderTopWidth:_t,borderRightWidth:_t,borderBottomWidth:_t,borderLeftWidth:_t,borderRadius:_t,radius:_t,borderTopLeftRadius:_t,borderTopRightRadius:_t,borderBottomRightRadius:_t,borderBottomLeftRadius:_t,width:_t,maxWidth:_t,height:_t,maxHeight:_t,top:_t,right:_t,bottom:_t,left:_t,padding:_t,paddingTop:_t,paddingRight:_t,paddingBottom:_t,paddingLeft:_t,margin:_t,marginTop:_t,marginRight:_t,marginBottom:_t,marginLeft:_t,backgroundPositionX:_t,backgroundPositionY:_t,...OIe,zIndex:$X,fillOpacity:My,strokeOpacity:My,numOctaves:$X},LIe={...nC,color:Sn,backgroundColor:Sn,outlineColor:Sn,fill:Sn,stroke:Sn,borderColor:Sn,borderTopColor:Sn,borderRightColor:Sn,borderBottomColor:Sn,borderLeftColor:Sn,filter:rC,WebkitFilter:rC},zX=e=>LIe[e];function RX(e,r){let n=zX(e);return n!==rC&&(n=Rd),n.getAnimatableNone?n.getAnimatableNone(r):void 0}const FIe=new Set(["auto","none","0"]);function VIe(e,r,n){let o=0,a;for(;o{r.getValue(s).set(c)}),this.resolveNoneKeyframes()}}function TX(e,r,n){if(e instanceof EventTarget)return[e];if(typeof e=="string"){let o=document;const a=n?.[e]??o.querySelectorAll(e);return a?Array.from(a):[]}return Array.from(e)}const jX=(e,r)=>r&&typeof e=="number"?r.transform(e):e;function AX(e){return CY(e)&&"offsetHeight"in e}const DX=30,HIe=e=>!isNaN(parseFloat(e));class UIe{constructor(r,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=o=>{const a=la.now();if(this.updatedAt!==a&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(o),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const i of this.dependents)i.dirty()},this.hasAnimated=!1,this.setCurrent(r),this.owner=n.owner}setCurrent(r){this.current=r,this.updatedAt=la.now(),this.canTrackVelocity===null&&r!==void 0&&(this.canTrackVelocity=HIe(this.current))}setPrevFrameValue(r=this.current){this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt}onChange(r){return this.on("change",r)}on(r,n){this.events[r]||(this.events[r]=new EE);const o=this.events[r].add(n);return r==="change"?()=>{o(),Dr.read(()=>{this.events.change.getSize()||this.stop()})}:o}clearListeners(){for(const r in this.events)this.events[r].clear()}attach(r,n){this.passiveEffect=r,this.stopPassiveEffect=n}set(r){this.passiveEffect?this.passiveEffect(r,this.updateAndNotify):this.updateAndNotify(r)}setWithVelocity(r,n,o){this.set(n),this.prev=void 0,this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt-o}jump(r,n=!0){this.updateAndNotify(r),this.prev=r,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(r){this.dependents||(this.dependents=new Set),this.dependents.add(r)}removeDependent(r){this.dependents&&this.dependents.delete(r)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const r=la.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||r-this.updatedAt>DX)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,DX);return zY(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(r){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=r(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function _p(e,r){return new UIe(e,r)}const{schedule:oC}=VY(queueMicrotask,!1),ll={x:!1,y:!1};function MX(){return ll.x||ll.y}function WIe(e){return e==="x"||e==="y"?ll[e]?null:(ll[e]=!0,()=>{ll[e]=!1}):ll.x||ll.y?null:(ll.x=ll.y=!0,()=>{ll.x=ll.y=!1})}function NX(e,r){const n=TX(e),o=new AbortController,a={passive:!0,...r,signal:o.signal};return[n,a,()=>o.abort()]}function PX(e){return!(e.pointerType==="touch"||MX())}function GIe(e,r,n={}){const[o,a,i]=NX(e,n),l=s=>{if(!PX(s))return;const{target:c}=s,d=r(c,s);if(typeof d!="function"||!c)return;const u=p=>{PX(p)&&(d(p),c.removeEventListener("pointerleave",u))};c.addEventListener("pointerleave",u,a)};return o.forEach(s=>{s.addEventListener("pointerenter",l,a)}),i}const BX=(e,r)=>r?e===r?!0:BX(e,r.parentElement):!1,aC=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,YIe=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function XIe(e){return YIe.has(e.tagName)||e.tabIndex!==-1}const W3=new WeakSet;function IX(e){return r=>{r.key==="Enter"&&e(r)}}function iC(e,r){e.dispatchEvent(new PointerEvent("pointer"+r,{isPrimary:!0,bubbles:!0}))}const ZIe=(e,r)=>{const n=e.currentTarget;if(!n)return;const o=IX(()=>{if(W3.has(n))return;iC(n,"down");const a=IX(()=>{iC(n,"up")}),i=()=>iC(n,"cancel");n.addEventListener("keyup",a,r),n.addEventListener("blur",i,r)});n.addEventListener("keydown",o,r),n.addEventListener("blur",()=>n.removeEventListener("keydown",o),r)};function OX(e){return aC(e)&&!MX()}function KIe(e,r,n={}){const[o,a,i]=NX(e,n),l=s=>{const c=s.currentTarget;if(!OX(s))return;W3.add(c);const d=r(c,s),u=(g,v)=>{window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",f),W3.has(c)&&W3.delete(c),OX(g)&&typeof d=="function"&&d(g,{success:v})},p=g=>{u(g,c===window||c===document||n.useGlobalTarget||BX(c,g.target))},f=g=>{u(g,!1)};window.addEventListener("pointerup",p,a),window.addEventListener("pointercancel",f,a)};return o.forEach(s=>{(n.useGlobalTarget?window:s).addEventListener("pointerdown",l,a),AX(s)&&(s.addEventListener("focus",c=>ZIe(c,a)),!XIe(s)&&!s.hasAttribute("tabindex")&&(s.tabIndex=0))}),i}function lC(e){return CY(e)&&"ownerSVGElement"in e}function LX(e){return lC(e)&&e.tagName==="svg"}const to=e=>!!(e&&e.getVelocity),QIe=[...EX,Sn,Rd],JIe=e=>QIe.find(SX(e));function sC(e){return typeof e=="object"&&!Array.isArray(e)}function FX(e,r,n,o){return typeof e=="string"&&sC(r)?TX(e,n,o):e instanceof NodeList?Array.from(e):Array.isArray(e)?e:[e]}function eOe(e,r,n){return e*(r+1)}function VX(e,r,n,o){return typeof r=="number"?r:r.startsWith("-")||r.startsWith("+")?Math.max(0,e+parseFloat(r)):r==="<"?n:r.startsWith("<")?Math.max(0,n+parseFloat(r.slice(1))):o.get(r)??e}function tOe(e,r,n){for(let o=0;or&&a.at{const j=lOe($),{delay:I=0,times:P=lX(j),type:L="keyframes",repeat:H,repeatType:M,repeatDelay:V=0,...B}=z;let{ease:F=r.ease||"easeOut",duration:q}=z;const G=typeof I=="function"?I(A,R):I,U=j.length,Y=JE(L)?L:a?.[L||"keyframes"];if(U<=2&&Y){let K=100;if(U===2&&dOe(j)){const te=j[1]-j[0];K=Math.abs(te)}const Q={...B};q!==void 0&&(Q.duration=il(q));const ae=nX(Q,K,Y);F=ae.ease,q=ae.duration}q??(q=i);const Z=p+G;P.length===1&&P[0]===0&&(P[1]=1);const O=P.length-j.length;if(O>0&&iX(P,O),j.length===1&&j.unshift(null),H){q=eOe(q,H);const K=[...j],Q=[...P];F=Array.isArray(F)?[...F]:[F];const ae=[...F];for(let te=0;te{for(const w in g){const x=g[w];x.sort(oOe);const k=[],C=[],_=[];for(let z=0;ztypeof e=="number",dOe=e=>e.every(cOe),Fy=new WeakMap,cC=e=>Array.isArray(e);function UX(e){const r=[{},{}];return e?.values.forEach((n,o)=>{r[0][o]=n.get(),r[1][o]=n.getVelocity()}),r}function dC(e,r,n,o){if(typeof r=="function"){const[a,i]=UX(o);r=r(n!==void 0?n:e.custom,a,i)}if(typeof r=="string"&&(r=e.variants&&e.variants[r]),typeof r=="function"){const[a,i]=UX(o);r=r(n!==void 0?n:e.custom,a,i)}return r}function tm(e,r,n){const o=e.getProps();return dC(o,r,n!==void 0?n:o.custom,e)}function uOe(e,r,n){e.hasValue(r)?e.getValue(r).set(n):e.addValue(r,_p(n))}function pOe(e){return cC(e)?e[e.length-1]||0:e}function hOe(e,r){const n=tm(e,r);let{transitionEnd:o={},transition:a={},...i}=n||{};i={...i,...o};for(const l in i){const s=pOe(i[l]);uOe(e,l,s)}}function fOe(e){return!!(to(e)&&e.add)}function uC(e,r){const n=e.getValue("willChange");if(fOe(n))return n.add(r);if(!n&&ac.WillChange){const o=new ac.WillChange("auto");e.addValue("willChange",o),o.add(r)}}const pC=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),mOe="framerAppearId",WX="data-"+pC(mOe);function GX(e){return e.props[WX]}const gOe=e=>e!==null;function yOe(e,{repeat:r,repeatType:n="loop"},o){const a=e.filter(gOe),i=r&&n!=="loop"&&r%2===1?0:a.length-1;return a[i]}const vOe={type:"spring",stiffness:500,damping:25,restSpeed:10},bOe=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),xOe={type:"keyframes",duration:.8},wOe={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},kOe=(e,{keyframes:r})=>r.length>2?xOe:em.has(e)?e.startsWith("scale")?bOe(r[1]):vOe:wOe;function _Oe({when:e,delay:r,delayChildren:n,staggerChildren:o,staggerDirection:a,repeat:i,repeatType:l,repeatDelay:s,from:c,elapsed:d,...u}){return!!Object.keys(u).length}const hC=(e,r,n,o={},a,i)=>l=>{const s=tC(o,e)||{},c=s.delay||o.delay||0;let{elapsed:d=0}=o;d=d-il(c);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:r.getVelocity(),...s,delay:-d,onUpdate:f=>{r.set(f),s.onUpdate&&s.onUpdate(f)},onComplete:()=>{l(),s.onComplete&&s.onComplete()},name:e,motionValue:r,element:i?void 0:a};_Oe(s)||Object.assign(u,kOe(e,u)),u.duration&&(u.duration=il(u.duration)),u.repeatDelay&&(u.repeatDelay=il(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let p=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(eC(u),u.delay===0&&(p=!0)),(ac.instantAnimations||ac.skipAnimations)&&(p=!0,eC(u),u.delay=0),u.allowFlatten=!s.type&&!s.ease,p&&!i&&r.get()!==void 0){const f=yOe(u.keyframes,s);if(f!==void 0){Dr.update(()=>{u.onUpdate(f),u.onComplete()});return}}return s.isSync?new HE(u):new RIe(u)};function SOe({protectedKeys:e,needsAnimating:r},n){const o=e.hasOwnProperty(n)&&r[n]!==!0;return r[n]=!1,o}function fC(e,r,{delay:n=0,transitionOverride:o,type:a}={}){let{transition:i=e.getDefaultTransition(),transitionEnd:l,...s}=r;o&&(i=o);const c=[],d=a&&e.animationState&&e.animationState.getState()[a];for(const u in s){const p=e.getValue(u,e.latestValues[u]??null),f=s[u];if(f===void 0||d&&SOe(d,u))continue;const g={delay:n,...tC(i||{},u)},v=p.get();if(v!==void 0&&!p.isAnimating&&!Array.isArray(f)&&f===v&&!g.velocity)continue;let w=!1;if(window.MotionHandoffAnimation){const k=GX(e);if(k){const C=window.MotionHandoffAnimation(k,u,Dr);C!==null&&(g.startTime=C,w=!0)}}uC(e,u),p.start(hC(u,p,f,e.shouldReduceMotion&&_X.has(u)?{type:!1}:g,e,w));const x=p.animation;x&&c.push(x)}return l&&Promise.all(c).then(()=>{Dr.update(()=>{l&&hOe(e,l)})}),c}function YX({top:e,left:r,right:n,bottom:o}){return{x:{min:r,max:n},y:{min:e,max:o}}}function EOe({x:e,y:r}){return{top:r.min,right:e.max,bottom:r.max,left:e.min}}function COe(e,r){if(!r)return e;const n=r({x:e.left,y:e.top}),o=r({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:o.y,right:o.x}}function mC(e){return e===void 0||e===1}function gC({scale:e,scaleX:r,scaleY:n}){return!mC(e)||!mC(r)||!mC(n)}function Sp(e){return gC(e)||XX(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function XX(e){return ZX(e.x)||ZX(e.y)}function ZX(e){return e&&e!=="0%"}function G3(e,r,n){const o=e-n,a=r*o;return n+a}function KX(e,r,n,o,a){return a!==void 0&&(e=G3(e,a,o)),G3(e,n,o)+r}function yC(e,r=0,n=1,o,a){e.min=KX(e.min,r,n,o,a),e.max=KX(e.max,r,n,o,a)}function QX(e,{x:r,y:n}){yC(e.x,r.translate,r.scale,r.originPoint),yC(e.y,n.translate,n.scale,n.originPoint)}const JX=.999999999999,eZ=1.0000000000001;function $Oe(e,r,n,o=!1){const a=n.length;if(!a)return;r.x=r.y=1;let i,l;for(let s=0;sJX&&(r.x=1),r.yJX&&(r.y=1)}function rm(e,r){e.min=e.min+r,e.max=e.max+r}function tZ(e,r,n,o,a=.5){const i=Lr(e.min,e.max,a);yC(e,r,n,i,o)}function nm(e,r){tZ(e.x,r.x,r.scaleX,r.scale,r.originX),tZ(e.y,r.y,r.scaleY,r.scale,r.originY)}function rZ(e,r){return YX(COe(e.getBoundingClientRect(),r))}function zOe(e,r,n){const o=rZ(e,n),{scroll:a}=r;return a&&(rm(o.x,a.offset.x),rm(o.y,a.offset.y)),o}const nZ={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},om={};for(const e in nZ)om[e]={isEnabled:r=>nZ[e].some(n=>!!r[n])};const oZ=()=>({translate:0,scale:1,origin:0,originPoint:0}),am=()=>({x:oZ(),y:oZ()}),aZ=()=>({min:0,max:0}),En=()=>({x:aZ(),y:aZ()}),vC=typeof window<"u",Y3={current:null},bC={current:!1};function iZ(){if(bC.current=!0,!!vC)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),r=()=>Y3.current=e.matches;e.addEventListener("change",r),r()}else Y3.current=!1}function X3(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function Vy(e){return typeof e=="string"||Array.isArray(e)}const xC=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],wC=["initial",...xC];function Z3(e){return X3(e.animate)||wC.some(r=>Vy(e[r]))}function lZ(e){return!!(Z3(e)||e.variants)}function ROe(e,r,n){for(const o in r){const a=r[o],i=n[o];if(to(a))e.addValue(o,a);else if(to(i))e.addValue(o,_p(a,{owner:e}));else if(i!==a)if(e.hasValue(o)){const l=e.getValue(o);l.liveStyle===!0?l.jump(a):l.hasAnimated||l.set(a)}else{const l=e.getStaticValue(o);e.addValue(o,_p(l!==void 0?l:a,{owner:e}))}}for(const o in n)r[o]===void 0&&e.removeValue(o);return r}const sZ=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class cZ{scrapeMotionValuesFromProps(r,n,o){return{}}constructor({parent:r,props:n,presenceContext:o,reducedMotionConfig:a,blockInitialAnimation:i,visualState:l},s={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=QE,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const f=la.now();this.renderScheduledAtthis.bindToMotionValue(o,n)),bC.current||iZ(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:Y3.current,this.parent?.addChild(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),$d(this.notifyUpdate),$d(this.render),this.valueSubscriptions.forEach(r=>r()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const r in this.events)this.events[r].clear();for(const r in this.features){const n=this.features[r];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(r){this.children.add(r),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(r)}removeChild(r){this.children.delete(r),this.enteringChildren&&this.enteringChildren.delete(r)}bindToMotionValue(r,n){this.valueSubscriptions.has(r)&&this.valueSubscriptions.get(r)();const o=em.has(r);o&&this.onBindTransform&&this.onBindTransform();const a=n.on("change",l=>{this.latestValues[r]=l,this.props.onUpdate&&Dr.preRender(this.notifyUpdate),o&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let i;window.MotionCheckAppearSync&&(i=window.MotionCheckAppearSync(this,r,n)),this.valueSubscriptions.set(r,()=>{a(),i&&i(),n.owner&&n.stop()})}sortNodePosition(r){return!this.current||!this.sortInstanceNodePosition||this.type!==r.type?0:this.sortInstanceNodePosition(this.current,r.current)}updateFeatures(){let r="animation";for(r in om){const n=om[r];if(!n)continue;const{isEnabled:o,Feature:a}=n;if(!this.features[r]&&a&&o(this.props)&&(this.features[r]=new a(this)),this.features[r]){const i=this.features[r];i.isMounted?i.update():(i.mount(),i.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):En()}getStaticValue(r){return this.latestValues[r]}setStaticValue(r,n){this.latestValues[r]=n}update(r,n){(r.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=r,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let o=0;on.variantChildren.delete(r)}addValue(r,n){const o=this.values.get(r);n!==o&&(o&&this.removeValue(r),this.bindToMotionValue(r,n),this.values.set(r,n),this.latestValues[r]=n.get())}removeValue(r){this.values.delete(r);const n=this.valueSubscriptions.get(r);n&&(n(),this.valueSubscriptions.delete(r)),delete this.latestValues[r],this.removeValueFromRenderState(r,this.renderState)}hasValue(r){return this.values.has(r)}getValue(r,n){if(this.props.values&&this.props.values[r])return this.props.values[r];let o=this.values.get(r);return o===void 0&&n!==void 0&&(o=_p(n===null?void 0:n,{owner:this}),this.addValue(r,o)),o}readValue(r,n){let o=this.latestValues[r]!==void 0||!this.current?this.latestValues[r]:this.getBaseTargetFromProps(this.props,r)??this.readValueFromInstance(this.current,r,this.options);return o!=null&&(typeof o=="string"&&(EY(o)||$Y(o))?o=parseFloat(o):!JIe(o)&&Rd.test(n)&&(o=RX(r,n)),this.setBaseTarget(r,to(o)?o.get():o)),to(o)?o.get():o}setBaseTarget(r,n){this.baseTarget[r]=n}getBaseTarget(r){const{initial:n}=this.props;let o;if(typeof n=="string"||typeof n=="object"){const i=dC(this.props,n,this.presenceContext?.custom);i&&(o=i[r])}if(n&&o!==void 0)return o;const a=this.getBaseTargetFromProps(this.props,r);return a!==void 0&&!to(a)?a:this.initialValues[r]!==void 0&&o===void 0?void 0:this.baseTarget[r]}on(r,n){return this.events[r]||(this.events[r]=new EE),this.events[r].add(n)}notify(r,...n){this.events[r]&&this.events[r].notify(...n)}scheduleRenderMicrotask(){oC.render(this.render)}}class dZ extends cZ{constructor(){super(...arguments),this.KeyframeResolver=qIe}sortInstanceNodePosition(r,n){return r.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(r,n){return r.style?r.style[n]:void 0}removeValueFromRenderState(r,{vars:n,style:o}){delete n[r],delete o[r]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:r}=this.props;to(r)&&(this.childSubscription=r.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}const TOe={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},jOe=Jf.length;function AOe(e,r,n){let o="",a=!0;for(let i=0;i{if(!r.target)return e;if(typeof e=="string")if(_t.test(e))e=parseFloat(e);else return e;const n=pZ(e,r.target.x),o=pZ(e,r.target.y);return`${n}% ${o}%`}},DOe={correct:(e,{treeScale:r,projectionDelta:n})=>{const o=e,a=Rd.parse(e);if(a.length>5)return o;const i=Rd.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)}},_C={borderRadius:{...qy,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:qy,borderTopRightRadius:qy,borderBottomLeftRadius:qy,borderBottomRightRadius:qy,boxShadow:DOe};function hZ(e,{layout:r,layoutId:n}){return em.has(e)||e.startsWith("origin")||(r||n!==void 0)&&(!!_C[e]||e==="opacity")}function SC(e,r,n){const{style:o}=e,a={};for(const i in o)(to(o[i])||r.style&&to(r.style[i])||hZ(i,e)||n?.getValue(i)?.liveStyle!==void 0)&&(a[i]=o[i]);return a}function MOe(e){return window.getComputedStyle(e)}class fZ extends dZ{constructor(){super(...arguments),this.type="html",this.renderInstance=uZ}readValueFromInstance(r,n){if(em.has(n))return this.projection?.isProjecting?GE(n):iIe(r,n);{const o=MOe(r),a=(HY(n)?o.getPropertyValue(n):o[n])||0;return typeof a=="string"?a.trim():a}}measureInstanceViewportBox(r,{transformPagePoint:n}){return rZ(r,n)}build(r,n,o){kC(r,n,o.transformTemplate)}scrapeMotionValuesFromProps(r,n,o){return SC(r,n,o)}}function NOe(e,r){return e in r}class POe extends cZ{constructor(){super(...arguments),this.type="object"}readValueFromInstance(r,n){if(NOe(n,r)){const o=r[n];if(typeof o=="string"||typeof o=="number")return o}}getBaseTargetFromProps(){}removeValueFromRenderState(r,n){delete n.output[r]}measureInstanceViewportBox(){return En()}build(r,n){Object.assign(r.output,n)}renderInstance(r,{output:n}){Object.assign(r,n)}sortInstanceNodePosition(){return 0}}const BOe={offset:"stroke-dashoffset",array:"stroke-dasharray"},IOe={offset:"strokeDashoffset",array:"strokeDasharray"};function OOe(e,r,n=1,o=0,a=!0){e.pathLength=1;const i=a?BOe:IOe;e[i.offset]=_t.transform(-o);const l=_t.transform(r),s=_t.transform(n);e[i.array]=`${l} ${s}`}function mZ(e,{attrX:r,attrY:n,attrScale:o,pathLength:a,pathSpacing:i=1,pathOffset:l=0,...s},c,d,u){if(kC(e,s,d),c){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:p,style:f}=e;p.transform&&(f.transform=p.transform,delete p.transform),(f.transform||p.transformOrigin)&&(f.transformOrigin=p.transformOrigin??"50% 50%",delete p.transformOrigin),f.transform&&(f.transformBox=u?.transformBox??"fill-box",delete p.transformBox),r!==void 0&&(p.x=r),n!==void 0&&(p.y=n),o!==void 0&&(p.scale=o),a!==void 0&&OOe(p,a,i,l,!1)}const gZ=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),yZ=e=>typeof e=="string"&&e.toLowerCase()==="svg";function LOe(e,r,n,o){uZ(e,r,void 0,o);for(const a in r.attrs)e.setAttribute(gZ.has(a)?a:pC(a),r.attrs[a])}function vZ(e,r,n){const o=SC(e,r,n);for(const a in e)if(to(e[a])||to(r[a])){const i=Jf.indexOf(a)!==-1?"attr"+a.charAt(0).toUpperCase()+a.substring(1):a;o[i]=e[a]}return o}class bZ extends dZ{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=En}getBaseTargetFromProps(r,n){return r[n]}readValueFromInstance(r,n){if(em.has(n)){const o=zX(n);return o&&o.default||0}return n=gZ.has(n)?n:pC(n),r.getAttribute(n)}scrapeMotionValuesFromProps(r,n,o){return vZ(r,n,o)}build(r,n,o){mZ(r,n,this.isSVGTag,o.transformTemplate,o.style)}renderInstance(r,n,o,a){LOe(r,n,o,a)}mount(r){this.isSVGTag=yZ(r.tagName),super.mount(r)}}function FOe(e){const r={presenceContext:null,props:{},visualState:{renderState:{transform:{},transformOrigin:{},style:{},vars:{},attrs:{}},latestValues:{}}},n=lC(e)&&!LX(e)?new bZ(r):new fZ(r);n.mount(e),Fy.set(e,n)}function VOe(e){const r={presenceContext:null,props:{},visualState:{renderState:{output:{}},latestValues:{}}},n=new POe(r);n.mount(e),Fy.set(e,n)}function xZ(e,r,n){const o=to(e)?e:_p(e);return o.start(hC("",o,r,n)),o.animation}function qOe(e,r){return to(e)||typeof e=="number"||typeof e=="string"&&!sC(r)}function wZ(e,r,n,o){const a=[];if(qOe(e,r))a.push(xZ(e,sC(r)&&r.default||r,n&&(n.default||n)));else{const i=FX(e,r,o),l=i.length;for(let s=0;s{o.push(...wZ(l,a,i))}),o}function UOe(e){return Array.isArray(e)&&e.some(Array.isArray)}function WOe(e){function r(n,o,a){let i=[],l;if(UOe(n))i=HOe(n,o,e);else{const{onComplete:c,...d}=a||{};typeof c=="function"&&(l=c),i=wZ(n,o,d,e)}const s=new jIe(i);return l&&s.finished.then(l),s}return r}const GOe=WOe();function YOe(e,r){const n=la.now(),o=({timestamp:a})=>{const i=a-n;i>=r&&($d(o),e(i-r))};return Dr.setup(o,!0),()=>$d(o)}const kZ=(e,r)=>Math.abs(e-r);function XOe(e,r){const n=kZ(e.x,r.x),o=kZ(e.y,r.y);return Math.sqrt(n**2+o**2)}const Hy=S.createContext({});function im(e){const r=S.useRef(null);return r.current===null&&(r.current=e()),r.current}const EC=vC?S.useLayoutEffect:S.useEffect,K3=S.createContext(null),Ep=S.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function _Z(e,r){if(typeof e=="function")return e(r);e!=null&&(e.current=r)}function ZOe(...e){return r=>{let n=!1;const o=e.map(a=>{const i=_Z(a,r);return!n&&typeof i=="function"&&(n=!0),i});if(n)return()=>{for(let a=0;a{const{width:d,height:u,top:p,left:f,right:g}=l.current;if(r||!i.current||!d||!u)return;const v=n==="left"?`left: ${f}`:`right: ${g}`;i.current.dataset.motionPopId=a;const w=document.createElement("style");s&&(w.nonce=s);const x=o??document.head;return x.appendChild(w),w.sheet&&w.sheet.insertRule(` +`))}function wNe({children:e,rootSelector:r}){const n=yNe().tags,o=xNe(n,r);return y.jsxs(AG.Provider,{value:n,children:[o!==""&&y.jsx(kNe,{stylesheet:o}),e]})}const kNe=S.memo(({stylesheet:e})=>{const r=np()?.();return y.jsx("style",{"data-likec4-tags":!0,type:"text/css",dangerouslySetInnerHTML:{__html:e},nonce:r})});function _Ne(e){return S.useContext(AG)[e]??{color:"tomato"}}function DG(){return oi().replace("mantine-","likec4-")}var SNe="css,pos,insetX,insetY,insetEnd,end,insetStart,start,flexDir,p,pl,pr,pt,pb,py,paddingY,paddingX,px,pe,paddingEnd,ps,paddingStart,ml,mr,mt,mb,m,my,marginY,mx,marginX,me,marginEnd,ms,marginStart,ringWidth,ringColor,ring,ringOffset,w,minW,maxW,h,minH,maxH,textShadowColor,bgPosition,bgPositionX,bgPositionY,bgAttachment,bgClip,bg,bgColor,bgOrigin,bgImage,bgRepeat,bgBlendMode,bgSize,bgGradient,bgLinear,bgRadial,bgConic,rounded,roundedTopLeft,roundedTopRight,roundedBottomRight,roundedBottomLeft,roundedTop,roundedRight,roundedBottom,roundedLeft,roundedStartStart,roundedStartEnd,roundedStart,roundedEndStart,roundedEndEnd,roundedEnd,borderX,borderXWidth,borderXColor,borderY,borderYWidth,borderYColor,borderStart,borderStartWidth,borderStartColor,borderEnd,borderEndWidth,borderEndColor,shadow,shadowColor,x,y,z,scrollMarginY,scrollMarginX,scrollPaddingY,scrollPaddingX,aspectRatio,boxDecorationBreak,zIndex,boxSizing,objectPosition,objectFit,overscrollBehavior,overscrollBehaviorX,overscrollBehaviorY,position,top,left,inset,insetInline,insetBlock,insetBlockEnd,insetBlockStart,insetInlineEnd,insetInlineStart,right,bottom,float,visibility,display,hideFrom,hideBelow,flexBasis,flex,flexDirection,flexGrow,flexShrink,gridTemplateColumns,gridTemplateRows,gridColumn,gridRow,gridColumnStart,gridColumnEnd,gridAutoFlow,gridAutoColumns,gridAutoRows,gap,gridGap,gridRowGap,gridColumnGap,rowGap,columnGap,justifyContent,alignContent,alignItems,alignSelf,padding,paddingLeft,paddingRight,paddingTop,paddingBottom,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingInline,paddingInlineEnd,paddingInlineStart,marginLeft,marginRight,marginTop,marginBottom,margin,marginBlock,marginBlockEnd,marginBlockStart,marginInline,marginInlineEnd,marginInlineStart,spaceX,spaceY,outlineWidth,outlineColor,outline,outlineOffset,focusRing,focusVisibleRing,focusRingColor,focusRingOffset,focusRingWidth,focusRingStyle,divideX,divideY,divideColor,divideStyle,width,inlineSize,minWidth,minInlineSize,maxWidth,maxInlineSize,height,blockSize,minHeight,minBlockSize,maxHeight,maxBlockSize,boxSize,color,fontFamily,fontSize,fontSizeAdjust,fontPalette,fontKerning,fontFeatureSettings,fontWeight,fontSmoothing,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariationSettings,fontVariantNumeric,letterSpacing,lineHeight,textAlign,textDecoration,textDecorationColor,textEmphasisColor,textDecorationStyle,textDecorationThickness,textUnderlineOffset,textTransform,textIndent,textShadow,WebkitTextFillColor,textOverflow,verticalAlign,wordBreak,textWrap,truncate,lineClamp,listStyleType,listStylePosition,listStyleImage,listStyle,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundAttachment,backgroundClip,background,backgroundColor,backgroundOrigin,backgroundImage,backgroundRepeat,backgroundBlendMode,backgroundSize,backgroundGradient,backgroundLinear,backgroundRadial,backgroundConic,textGradient,gradientFromPosition,gradientToPosition,gradientFrom,gradientTo,gradientVia,gradientViaPosition,borderRadius,borderTopLeftRadius,borderTopRightRadius,borderBottomRightRadius,borderBottomLeftRadius,borderTopRadius,borderRightRadius,borderBottomRadius,borderLeftRadius,borderStartStartRadius,borderStartEndRadius,borderStartRadius,borderEndStartRadius,borderEndEndRadius,borderEndRadius,border,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,borderBlockStartWidth,borderBlockEndWidth,borderColor,borderInline,borderInlineWidth,borderInlineColor,borderBlock,borderBlockWidth,borderBlockColor,borderLeft,borderLeftColor,borderInlineStart,borderInlineStartWidth,borderInlineStartColor,borderRight,borderRightColor,borderInlineEnd,borderInlineEndWidth,borderInlineEndColor,borderTop,borderTopColor,borderBottom,borderBottomColor,borderBlockEnd,borderBlockEndColor,borderBlockStart,borderBlockStartColor,opacity,boxShadow,boxShadowColor,mixBlendMode,filter,brightness,contrast,grayscale,hueRotate,invert,saturate,sepia,dropShadow,blur,backdropFilter,backdropBlur,backdropBrightness,backdropContrast,backdropGrayscale,backdropHueRotate,backdropInvert,backdropOpacity,backdropSaturate,backdropSepia,borderCollapse,borderSpacing,borderSpacingX,borderSpacingY,tableLayout,transitionTimingFunction,transitionDelay,transitionDuration,transitionProperty,transition,animation,animationName,animationTimingFunction,animationDuration,animationDelay,animationPlayState,animationComposition,animationFillMode,animationDirection,animationIterationCount,animationRange,animationState,animationRangeStart,animationRangeEnd,animationTimeline,transformOrigin,transformBox,transformStyle,transform,rotate,rotateX,rotateY,rotateZ,scale,scaleX,scaleY,translate,translateX,translateY,translateZ,accentColor,caretColor,scrollBehavior,scrollbar,scrollbarColor,scrollbarGutter,scrollbarWidth,scrollMargin,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollMarginBottom,scrollMarginBlock,scrollMarginBlockEnd,scrollMarginBlockStart,scrollMarginInline,scrollMarginInlineEnd,scrollMarginInlineStart,scrollPadding,scrollPaddingBlock,scrollPaddingBlockStart,scrollPaddingBlockEnd,scrollPaddingInline,scrollPaddingInlineEnd,scrollPaddingInlineStart,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollPaddingBottom,scrollSnapAlign,scrollSnapStop,scrollSnapType,scrollSnapStrictness,scrollSnapMargin,scrollSnapMarginTop,scrollSnapMarginBottom,scrollSnapMarginLeft,scrollSnapMarginRight,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,touchAction,userSelect,overflow,overflowWrap,overflowX,overflowY,overflowAnchor,overflowBlock,overflowInline,overflowClipBox,overflowClipMargin,overscrollBehaviorBlock,overscrollBehaviorInline,fill,stroke,strokeWidth,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,srOnly,debug,appearance,backfaceVisibility,clipPath,hyphens,mask,maskImage,maskSize,textSizeAdjust,container,containerName,containerType,cursor,colorPalette,_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_complete,_incomplete,_dragging,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_grabbed,_underValue,_overValue,_atValue,_default,_optional,_open,_closed,_fullscreen,_loading,_hidden,_current,_currentPage,_currentStep,_today,_unavailable,_rangeStart,_rangeEnd,_now,_topmost,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_icon,_starting,_noscript,_invertedColors,_shapeSizeXs,_shapeSizeSm,_shapeSizeMd,_shapeSizeLg,_shapeSizeXl,_shapeRectangle,_shapePerson,_shapeBrowser,_shapeMobile,_shapeCylinder,_shapeStorage,_shapeQueue,_notDisabled,_reduceGraphics,_reduceGraphicsOnPan,_noReduceGraphics,_whenPanning,_smallZoom,_compoundTransparent,_edgeActive,_whenHovered,_whenSelectable,_whenSelected,_whenDimmed,_whenFocused,_p3,_srgb,_rec2020,xs,xsOnly,xsDown,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,xsToSm,xsToMd,xsToLg,xsToXl,smToMd,smToLg,smToXl,mdToLg,mdToXl,lgToXl,@/xs,@/sm,@/md,@/lg,@likec4-root/xs,@likec4-root/sm,@likec4-root/md,@likec4-root/lg,@likec4-dialog/xs,@likec4-dialog/sm,@likec4-dialog/md,@likec4-dialog/lg,textStyle,layerStyle,animationStyle",ENe=SNe.split(","),CNe="WebkitAppearance,WebkitBorderBefore,WebkitBorderBeforeColor,WebkitBorderBeforeStyle,WebkitBorderBeforeWidth,WebkitBoxReflect,WebkitLineClamp,WebkitMask,WebkitMaskAttachment,WebkitMaskClip,WebkitMaskComposite,WebkitMaskImage,WebkitMaskOrigin,WebkitMaskPosition,WebkitMaskPositionX,WebkitMaskPositionY,WebkitMaskRepeat,WebkitMaskRepeatX,WebkitMaskRepeatY,WebkitMaskSize,WebkitOverflowScrolling,WebkitTapHighlightColor,WebkitTextFillColor,WebkitTextStroke,WebkitTextStrokeColor,WebkitTextStrokeWidth,WebkitTouchCallout,WebkitUserModify,WebkitUserSelect,accentColor,alignContent,alignItems,alignSelf,alignTracks,all,anchorName,anchorScope,animation,animationComposition,animationDelay,animationDirection,animationDuration,animationFillMode,animationIterationCount,animationName,animationPlayState,animationRange,animationRangeEnd,animationRangeStart,animationTimeline,animationTimingFunction,appearance,aspectRatio,backdropFilter,backfaceVisibility,background,backgroundAttachment,backgroundBlendMode,backgroundClip,backgroundColor,backgroundImage,backgroundOrigin,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundRepeat,backgroundSize,blockSize,border,borderBlock,borderBlockColor,borderBlockEnd,borderBlockEndColor,borderBlockEndStyle,borderBlockEndWidth,borderBlockStart,borderBlockStartColor,borderBlockStartStyle,borderBlockStartWidth,borderBlockStyle,borderBlockWidth,borderBottom,borderBottomColor,borderBottomLeftRadius,borderBottomRightRadius,borderBottomStyle,borderBottomWidth,borderCollapse,borderColor,borderEndEndRadius,borderEndStartRadius,borderImage,borderImageOutset,borderImageRepeat,borderImageSlice,borderImageSource,borderImageWidth,borderInline,borderInlineColor,borderInlineEnd,borderInlineEndColor,borderInlineEndStyle,borderInlineEndWidth,borderInlineStart,borderInlineStartColor,borderInlineStartStyle,borderInlineStartWidth,borderInlineStyle,borderInlineWidth,borderLeft,borderLeftColor,borderLeftStyle,borderLeftWidth,borderRadius,borderRight,borderRightColor,borderRightStyle,borderRightWidth,borderSpacing,borderStartEndRadius,borderStartStartRadius,borderStyle,borderTop,borderTopColor,borderTopLeftRadius,borderTopRightRadius,borderTopStyle,borderTopWidth,borderWidth,bottom,boxAlign,boxDecorationBreak,boxDirection,boxFlex,boxFlexGroup,boxLines,boxOrdinalGroup,boxOrient,boxPack,boxShadow,boxSizing,breakAfter,breakBefore,breakInside,captionSide,caret,caretColor,caretShape,clear,clip,clipPath,clipRule,color,colorInterpolationFilters,colorScheme,columnCount,columnFill,columnGap,columnRule,columnRuleColor,columnRuleStyle,columnRuleWidth,columnSpan,columnWidth,columns,contain,containIntrinsicBlockSize,containIntrinsicHeight,containIntrinsicInlineSize,containIntrinsicSize,containIntrinsicWidth,container,containerName,containerType,content,contentVisibility,counterIncrement,counterReset,counterSet,cursor,cx,cy,d,direction,display,dominantBaseline,emptyCells,fieldSizing,fill,fillOpacity,fillRule,filter,flex,flexBasis,flexDirection,flexFlow,flexGrow,flexShrink,flexWrap,float,floodColor,floodOpacity,font,fontFamily,fontFeatureSettings,fontKerning,fontLanguageOverride,fontOpticalSizing,fontPalette,fontSize,fontSizeAdjust,fontSmooth,fontStretch,fontStyle,fontSynthesis,fontSynthesisPosition,fontSynthesisSmallCaps,fontSynthesisStyle,fontSynthesisWeight,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariantEastAsian,fontVariantEmoji,fontVariantLigatures,fontVariantNumeric,fontVariantPosition,fontVariationSettings,fontWeight,forcedColorAdjust,gap,grid,gridArea,gridAutoColumns,gridAutoFlow,gridAutoRows,gridColumn,gridColumnEnd,gridColumnGap,gridColumnStart,gridGap,gridRow,gridRowEnd,gridRowGap,gridRowStart,gridTemplate,gridTemplateAreas,gridTemplateColumns,gridTemplateRows,hangingPunctuation,height,hyphenateCharacter,hyphenateLimitChars,hyphens,imageOrientation,imageRendering,imageResolution,imeMode,initialLetter,initialLetterAlign,inlineSize,inset,insetBlock,insetBlockEnd,insetBlockStart,insetInline,insetInlineEnd,insetInlineStart,interpolateSize,isolation,justifyContent,justifyItems,justifySelf,justifyTracks,left,letterSpacing,lightingColor,lineBreak,lineClamp,lineHeight,lineHeightStep,listStyle,listStyleImage,listStylePosition,listStyleType,margin,marginBlock,marginBlockEnd,marginBlockStart,marginBottom,marginInline,marginInlineEnd,marginInlineStart,marginLeft,marginRight,marginTop,marginTrim,marker,markerEnd,markerMid,markerStart,mask,maskBorder,maskBorderMode,maskBorderOutset,maskBorderRepeat,maskBorderSlice,maskBorderSource,maskBorderWidth,maskClip,maskComposite,maskImage,maskMode,maskOrigin,maskPosition,maskRepeat,maskSize,maskType,masonryAutoFlow,mathDepth,mathShift,mathStyle,maxBlockSize,maxHeight,maxInlineSize,maxLines,maxWidth,minBlockSize,minHeight,minInlineSize,minWidth,mixBlendMode,objectFit,objectPosition,offset,offsetAnchor,offsetDistance,offsetPath,offsetPosition,offsetRotate,opacity,order,orphans,outline,outlineColor,outlineOffset,outlineStyle,outlineWidth,overflow,overflowAnchor,overflowBlock,overflowClipBox,overflowClipMargin,overflowInline,overflowWrap,overflowX,overflowY,overlay,overscrollBehavior,overscrollBehaviorBlock,overscrollBehaviorInline,overscrollBehaviorX,overscrollBehaviorY,padding,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingBottom,paddingInline,paddingInlineEnd,paddingInlineStart,paddingLeft,paddingRight,paddingTop,page,pageBreakAfter,pageBreakBefore,pageBreakInside,paintOrder,perspective,perspectiveOrigin,placeContent,placeItems,placeSelf,pointerEvents,position,positionAnchor,positionArea,positionTry,positionTryFallbacks,positionTryOrder,positionVisibility,printColorAdjust,quotes,r,resize,right,rotate,rowGap,rubyAlign,rubyMerge,rubyPosition,rx,ry,scale,scrollBehavior,scrollMargin,scrollMarginBlock,scrollMarginBlockEnd,scrollMarginBlockStart,scrollMarginBottom,scrollMarginInline,scrollMarginInlineEnd,scrollMarginInlineStart,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollPadding,scrollPaddingBlock,scrollPaddingBlockEnd,scrollPaddingBlockStart,scrollPaddingBottom,scrollPaddingInline,scrollPaddingInlineEnd,scrollPaddingInlineStart,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollSnapAlign,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapStop,scrollSnapType,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,scrollbarColor,scrollbarGutter,scrollbarWidth,shapeImageThreshold,shapeMargin,shapeOutside,shapeRendering,stopColor,stopOpacity,stroke,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,strokeWidth,tabSize,tableLayout,textAlign,textAlignLast,textAnchor,textBox,textBoxEdge,textBoxTrim,textCombineUpright,textDecoration,textDecorationColor,textDecorationLine,textDecorationSkip,textDecorationSkipInk,textDecorationStyle,textDecorationThickness,textEmphasis,textEmphasisColor,textEmphasisPosition,textEmphasisStyle,textIndent,textJustify,textOrientation,textOverflow,textRendering,textShadow,textSizeAdjust,textSpacingTrim,textTransform,textUnderlineOffset,textUnderlinePosition,textWrap,textWrapMode,textWrapStyle,timelineScope,top,touchAction,transform,transformBox,transformOrigin,transformStyle,transition,transitionBehavior,transitionDelay,transitionDuration,transitionProperty,transitionTimingFunction,translate,unicodeBidi,userSelect,vectorEffect,verticalAlign,viewTimeline,viewTimelineAxis,viewTimelineInset,viewTimelineName,viewTransitionName,visibility,whiteSpace,whiteSpaceCollapse,widows,width,willChange,wordBreak,wordSpacing,wordWrap,writingMode,x,y,zIndex,zoom,alignmentBaseline,baselineShift,colorInterpolation,colorRendering,glyphOrientationVertical",$Ne=CNe.split(",").concat(ENe),RNe=new Map($Ne.map(e=>[e,!0])),zNe=/&|@/,MG=Zn(e=>RNe.has(e)||e.startsWith("--")||zNe.test(e));const TNe=(e,r)=>!r.includes(e)&&!MG(e),jNe=(e,r)=>e.__shouldForwardProps__&&r?n=>e.__shouldForwardProps__(n)&&r(n):r,ANe=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;if(e.__cva__&&r.__cva__||e.__recipe__&&r.__recipe__)return e.merge(r);const n=new TypeError("Cannot merge cva with recipe. Please use either cva or recipe.");throw TypeError.captureStackTrace?.(n),n},DNe=e=>typeof e=="string"?e:e?.displayName||e?.name||"Component";function YS(e,r={},n={}){const o=r.__cva__||r.__recipe__?r:T1(r),a=n.shouldForwardProp||TNe,i=f=>n.forwardProps?.includes(f)?!0:a(f,o.variantKeys),l=Object.assign(n.dataAttr&&r.__name__?{"data-recipe":r.__name__}:{},n.defaultProps),s=ANe(e.__cva__,o),c=jNe(e,i),d=e.__base__||e,u=S.forwardRef(function(f,g){const{as:v=d,unstyled:w,children:x,...k}=f,C=S.useMemo(()=>Object.assign({},l,k),[k]),[_,$,R,T,A]=S.useMemo(()=>Fn(C,d7.keys,c,s.variantKeys,MG),[C]);function z(){const{css:P,...L}=T,H=s.__getCompoundVariantCss__?.(R);return Ge(s(R,!1),fe(H,L,P),C.className)}function j(){const{css:P,...L}=T,H=s.raw(R);return Ge(fe(H,L,P),C.className)}const I=()=>{if(w){const{css:P,...L}=T;return Ge(fe(L,P),C.className)}return r.__recipe__?z():j()};return S.createElement(v,{ref:g,...$,...A,...d7(_),className:I()},x??C.children)}),p=DNe(d);return u.displayName=`styled.${p}`,u.__cva__=s,u.__base__=d,u.__shouldForwardProps__=i,u}function MNe(){const e=new Map;return new Proxy(YS,{apply(r,n,o){return YS(...o)},get(r,n){return e.has(n)||e.set(n,YS(n)),e.get(n)}})}const Ed=MNe(),NG={transform(e){return e}},NNe=(e={})=>{const r=z1(NG,e);return NG.transform(r,R1)},hr=S.forwardRef(function(e,r){const[n,o]=Fn(e,[]),a=NNe(n),i={ref:r,...a,...o};return S.createElement(Ed.div,i)}),PG={transform(e){const{justify:r,gap:n,...o}=e;return{display:"flex",alignItems:"center",justifyContent:r,gap:n,flexDirection:"column",...o}},defaultValues:{alignItems:"stretch",gap:"sm"}},XS=(e={})=>{const r=z1(PG,e);return PG.transform(r,R1)},Ey=e=>fe(XS(e));Ey.raw=XS;const hp=S.forwardRef(function(e,r){const[n,o]=Fn(e,["justify","gap"]),a=XS(n),i={ref:r,...a,...o};return S.createElement(Ed.div,i)}),BG={transform(e){const{justify:r,gap:n,...o}=e;return{display:"flex",alignItems:"center",justifyContent:r,gap:n,flexDirection:"row",...o}},defaultValues:{gap:"sm"}},ZS=(e={})=>{const r=z1(BG,e);return BG.transform(r,R1)},qn=e=>fe(ZS(e));qn.raw=ZS;const Or=S.forwardRef(function(e,r){const[n,o]=Fn(e,["justify","gap"]),a=ZS(n),i={ref:r,...a,...o};return S.createElement(Ed.div,i)}),IG={transform(e){return{position:"relative",maxWidth:"8xl",mx:"auto",px:{base:"4",md:"6",lg:"8"},...e}}},OG=(e={})=>{const r=z1(IG,e);return IG.transform(r,R1)},LG=e=>fe(OG(e));LG.raw=OG;const FG={transform(e,{map:r,isCssUnit:n,isCssVar:o}){const{inline:a,block:i,...l}=e,s=c=>n(c)||o(c)?c:`token(spacing.${c}, ${c})`;return{"--bleed-x":r(a,s),"--bleed-y":r(i,s),marginInline:"calc(var(--bleed-x, 0) * -1)",marginBlock:"calc(var(--bleed-y, 0) * -1)",...l}},defaultValues:{inline:"0",block:"0"}},VG=(e={})=>{const r=z1(FG,e);return FG.transform(r,R1)},qG=e=>fe(VG(e));qG.raw=VG;const PNe=S.createContext(null),KS={didCatch:!1,error:null};let HG=class extends S.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=KS}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(e!==null){for(var r,n,o=arguments.length,a=new Array(o),i=0;i0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return e.length!==r.length||e.some((n,o)=>!Object.is(n,r[o]))}const INe=[["path",{d:"M18 6l-12 12",key:"svg-0"}],["path",{d:"M6 6l12 12",key:"svg-1"}]],fp=wt("outline","x","X",INe);function UG({error:e,resetErrorBoundary:r}){const n=e instanceof Error?e.message:"Unknown error",o=S.useRef(null);return S.useEffect(()=>{o.current?.showModal()},[]),y.jsx("dialog",{ref:o,className:fe({margin:"0",padding:"0",position:"fixed",top:"10",left:"10",width:"[calc(100vw - ({spacing.10} * 2))]",height:"max-content",maxHeight:"[calc(100vh - ({spacing.10} * 3))]",background:"likec4.overlay.body",rounded:"sm",borderWidth:3,borderColor:"likec4.overlay.border",shadow:"xl",outline:"none",_backdrop:{cursor:"zoom-out",backdropFilter:"blur(18px)",bg:"[color-mix(in oklab, {colors.likec4.overlay.backdrop} 60%, transparent)]"}}),onClick:a=>{if(a.stopPropagation(),a.target?.nodeName?.toUpperCase()==="DIALOG"){o.current?.close();return}},onClose:a=>{a.stopPropagation(),r()},children:y.jsxs(Or,{p:"xl",gap:"lg",alignItems:"flex-start",flexWrap:"nowrap",children:[y.jsx(Ta,{size:"md",radius:"xl",color:"red",children:y.jsx(fp,{style:{width:20,height:20}})}),y.jsxs(hp,{flex:"1",children:[y.jsx(at,{fz:"md",children:"Oops, something went wrong"}),y.jsx(oa,{maw:"100%",mah:400,type:"auto",children:y.jsx(at,{fz:"md",c:"red",style:{whiteSpace:"pre-wrap",userSelect:"all"},children:n})}),y.jsxs(Or,{gap:"md",mt:"md",children:[y.jsx(Vn,{size:"sm",variant:"default",onClick:()=>r(),children:"Reset"}),y.jsx(at,{fz:"sm",c:"dimmed",children:"See console for more details and report the issue if it persists."})]})]})]})})}function QS(e){return y.jsx(HG,{FallbackComponent:UG,onError:(r,n)=>{console.error(r,n)},...e})}const WG={enableEditor:!1,enableReadOnly:!0,enableCompareWithLatest:!1,enableControls:!1,enableDynamicViewWalkthrough:!1,enableElementDetails:!1,enableFocusMode:!1,enableNavigateTo:!1,enableNotations:!1,enableRelationshipBrowser:!1,enableRelationshipDetails:!1,enableSearch:!1,enableNavigationButtons:!1,enableFitView:!1,enableVscode:!1,enableElementTags:!1},JS=S.createContext(WG);function mp({children:e,features:r,overrides:n}){const o=S.useContext(JS),[a,i]=S.useState(o);return S.useEffect(()=>{i(l=>{const s={...o,...r,...n};return Ir(l,s)?l:s})},[o,r,n]),y.jsx(JS.Provider,{value:a,children:e})}const ONe={enableControls:!1,enableReadOnly:!0,enableCompareWithLatest:!1};mp.Overlays=({children:e})=>y.jsx(mp,{overrides:ONe,children:e});function sr(){return S.useContext(JS)}function LNe({feature:e,children:r,and:n=!0}){return sr()[`enable${e}`]===!0&&n?y.jsx(y.Fragment,{children:r}):null}function FNe(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global}function VNe(){const e=FNe();if(e.__xstate__)return e.__xstate__}const qNe=e=>{if(typeof window>"u")return;const r=VNe();r&&r.register(e)};class GG{constructor(r){this._process=r,this._active=!1,this._current=null,this._last=null}start(){this._active=!0,this.flush()}clear(){this._current&&(this._current.next=null,this._last=this._current)}enqueue(r){const n={value:r,next:null};if(this._current){this._last.next=n,this._last=n;return}this._current=n,this._last=n,this._active&&this.flush()}flush(){for(;this._current;){const r=this._current;this._process(r.value),this._current=r.next}this._last=null}}const YG=".",HNe="",XG="",UNe="#",WNe="*",ZG="xstate.init",GNe="xstate.error",Cy="xstate.stop";function YNe(e,r){return{type:`xstate.after.${e}.${r}`}}function eE(e,r){return{type:`xstate.done.state.${e}`,output:r}}function XNe(e,r){return{type:`xstate.done.actor.${e}`,output:r,actorId:e}}function KG(e,r){return{type:`xstate.error.actor.${e}`,error:r,actorId:e}}function QG(e){return{type:ZG,input:e}}function ts(e){setTimeout(()=>{throw e})}const ZNe=typeof Symbol=="function"&&Symbol.observable||"@@observable";function JG(e,r){const n=eY(e),o=eY(r);return typeof o=="string"?typeof n=="string"?o===n:!1:typeof n=="string"?n in o:Object.keys(n).every(a=>a in o?JG(n[a],o[a]):!1)}function tE(e){if(nY(e))return e;const r=[];let n="";for(let o=0;otypeof r>"u"||typeof r=="string"?{target:r}:r)}function oY(e){if(!(e===void 0||e===HNe))return nc(e)}function z3(e,r,n){const o=typeof e=="object",a=o?e:void 0;return{next:(o?e.next:e)?.bind(a),error:(o?e.error:r)?.bind(a),complete:(o?e.complete:n)?.bind(a)}}function aY(e,r){return`${r}.${e}`}function nE(e,r){const n=r.match(/^xstate\.invoke\.(\d+)\.(.*)/);if(!n)return e.implementations.actors[r];const[,o,a]=n,i=e.getStateNodeById(a).config.invoke;return(Array.isArray(i)?i[o]:i).src}function iY(e,r){return`${e.sessionId}.${r}`}let JNe=0;function ePe(e,r){const n=new Map,o=new Map,a=new WeakMap,i=new Set,l={},{clock:s,logger:c}=r,d={schedule:(f,g,v,w,x=Math.random().toString(36).slice(2))=>{const k={source:f,target:g,event:v,delay:w,id:x,startedAt:Date.now()},C=iY(f,x);p._snapshot._scheduledEvents[C]=k;const _=s.setTimeout(()=>{delete l[C],delete p._snapshot._scheduledEvents[C],p._relay(f,g,v)},w);l[C]=_},cancel:(f,g)=>{const v=iY(f,g),w=l[v];delete l[v],delete p._snapshot._scheduledEvents[v],w!==void 0&&s.clearTimeout(w)},cancelAll:f=>{for(const g in p._snapshot._scheduledEvents){const v=p._snapshot._scheduledEvents[g];v.source===f&&d.cancel(f,v.id)}}},u=f=>{if(!i.size)return;const g={...f,rootId:e.sessionId};i.forEach(v=>v.next?.(g))},p={_snapshot:{_scheduledEvents:(r?.snapshot&&r.snapshot.scheduler)??{}},_bookId:()=>`x:${JNe++}`,_register:(f,g)=>(n.set(f,g),f),_unregister:f=>{n.delete(f.sessionId);const g=a.get(f);g!==void 0&&(o.delete(g),a.delete(f))},get:f=>o.get(f),getAll:()=>Object.fromEntries(o.entries()),_set:(f,g)=>{const v=o.get(f);if(v&&v!==g)throw new Error(`Actor with system ID '${f}' already exists.`);o.set(f,g),a.set(g,f)},inspect:f=>{const g=z3(f);return i.add(g),{unsubscribe(){i.delete(g)}}},_sendInspectionEvent:u,_relay:(f,g,v)=>{p._sendInspectionEvent({type:"@xstate.event",sourceRef:f,actorRef:g,event:v}),g._send(v)},scheduler:d,getSnapshot:()=>({_scheduledEvents:{...p._snapshot._scheduledEvents}}),start:()=>{const f=p._snapshot._scheduledEvents;p._snapshot._scheduledEvents={};for(const g in f){const{source:v,target:w,event:x,delay:k,id:C}=f[g];d.schedule(v,w,x,k,C)}},_clock:s,_logger:c};return p}let oE=!1;const aE=1;let aa=(function(e){return e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped",e})({});const tPe={clock:{setTimeout:(e,r)=>setTimeout(e,r),clearTimeout:e=>clearTimeout(e)},logger:console.log.bind(console),devTools:!1};class rPe{constructor(r,n){this.logic=r,this._snapshot=void 0,this.clock=void 0,this.options=void 0,this.id=void 0,this.mailbox=new GG(this._process.bind(this)),this.observers=new Set,this.eventListeners=new Map,this.logger=void 0,this._processingStatus=aa.NotStarted,this._parent=void 0,this._syncSnapshot=void 0,this.ref=void 0,this._actorScope=void 0,this.systemId=void 0,this.sessionId=void 0,this.system=void 0,this._doneEvent=void 0,this.src=void 0,this._deferred=[];const o={...tPe,...n},{clock:a,logger:i,parent:l,syncSnapshot:s,id:c,systemId:d,inspect:u}=o;this.system=l?l.system:ePe(this,{clock:a,logger:i}),u&&!l&&this.system.inspect(z3(u)),this.sessionId=this.system._bookId(),this.id=c??this.sessionId,this.logger=n?.logger??this.system._logger,this.clock=n?.clock??this.system._clock,this._parent=l,this._syncSnapshot=s,this.options=o,this.src=o.src??r,this.ref=this,this._actorScope={self:this,id:this.id,sessionId:this.sessionId,logger:this.logger,defer:p=>{this._deferred.push(p)},system:this.system,stopChild:p=>{if(p._parent!==this)throw new Error(`Cannot stop child actor ${p.id} of ${this.id} because it is not a child`);p._stop()},emit:p=>{const f=this.eventListeners.get(p.type),g=this.eventListeners.get("*");if(!f&&!g)return;const v=[...f?f.values():[],...g?g.values():[]];for(const w of v)try{w(p)}catch(x){ts(x)}},actionExecutor:p=>{const f=()=>{if(this._actorScope.system._sendInspectionEvent({type:"@xstate.action",actorRef:this,action:{type:p.type,params:p.params}}),!p.exec)return;const g=oE;try{oE=!0,p.exec(p.info,p.params)}finally{oE=g}};this._processingStatus===aa.Running?f():this._deferred.push(f)}},this.send=this.send.bind(this),this.system._sendInspectionEvent({type:"@xstate.actor",actorRef:this}),d&&(this.systemId=d,this.system._set(d,this)),this._initState(n?.snapshot??n?.state),d&&this._snapshot.status!=="active"&&this.system._unregister(this)}_initState(r){try{this._snapshot=r?this.logic.restoreSnapshot?this.logic.restoreSnapshot(r,this._actorScope):r:this.logic.getInitialSnapshot(this._actorScope,this.options?.input)}catch(n){this._snapshot={status:"error",output:void 0,error:n}}}update(r,n){this._snapshot=r;let o;for(;o=this._deferred.shift();)try{o()}catch(a){this._deferred.length=0,this._snapshot={...r,status:"error",error:a}}switch(this._snapshot.status){case"active":for(const a of this.observers)try{a.next?.(r)}catch(i){ts(i)}break;case"done":for(const a of this.observers)try{a.next?.(r)}catch(i){ts(i)}this._stopProcedure(),this._complete(),this._doneEvent=XNe(this.id,this._snapshot.output),this._parent&&this.system._relay(this,this._parent,this._doneEvent);break;case"error":this._error(this._snapshot.error);break}this.system._sendInspectionEvent({type:"@xstate.snapshot",actorRef:this,event:n,snapshot:r})}subscribe(r,n,o){const a=z3(r,n,o);if(this._processingStatus!==aa.Stopped)this.observers.add(a);else switch(this._snapshot.status){case"done":try{a.complete?.()}catch(i){ts(i)}break;case"error":{const i=this._snapshot.error;if(!a.error)ts(i);else try{a.error(i)}catch(l){ts(l)}break}}return{unsubscribe:()=>{this.observers.delete(a)}}}on(r,n){let o=this.eventListeners.get(r);o||(o=new Set,this.eventListeners.set(r,o));const a=n.bind(void 0);return o.add(a),{unsubscribe:()=>{o.delete(a)}}}start(){if(this._processingStatus===aa.Running)return this;this._syncSnapshot&&this.subscribe({next:n=>{n.status==="active"&&this.system._relay(this,this._parent,{type:`xstate.snapshot.${this.id}`,snapshot:n})},error:()=>{}}),this.system._register(this.sessionId,this),this.systemId&&this.system._set(this.systemId,this),this._processingStatus=aa.Running;const r=QG(this.options.input);switch(this.system._sendInspectionEvent({type:"@xstate.event",sourceRef:this._parent,actorRef:this,event:r}),this._snapshot.status){case"done":return this.update(this._snapshot,r),this;case"error":return this._error(this._snapshot.error),this}if(this._parent||this.system.start(),this.logic.start)try{this.logic.start(this._snapshot,this._actorScope)}catch(n){return this._snapshot={...this._snapshot,status:"error",error:n},this._error(n),this}return this.update(this._snapshot,r),this.options.devTools&&this.attachDevTools(),this.mailbox.start(),this}_process(r){let n,o;try{n=this.logic.transition(this._snapshot,r,this._actorScope)}catch(a){o={err:a}}if(o){const{err:a}=o;this._snapshot={...this._snapshot,status:"error",error:a},this._error(a);return}this.update(n,r),r.type===Cy&&(this._stopProcedure(),this._complete())}_stop(){return this._processingStatus===aa.Stopped?this:(this.mailbox.clear(),this._processingStatus===aa.NotStarted?(this._processingStatus=aa.Stopped,this):(this.mailbox.enqueue({type:Cy}),this))}stop(){if(this._parent)throw new Error("A non-root actor cannot be stopped directly.");return this._stop()}_complete(){for(const r of this.observers)try{r.complete?.()}catch(n){ts(n)}this.observers.clear()}_reportError(r){if(!this.observers.size){this._parent||ts(r);return}let n=!1;for(const o of this.observers){const a=o.error;n||=!a;try{a?.(r)}catch(i){ts(i)}}this.observers.clear(),n&&ts(r)}_error(r){this._stopProcedure(),this._reportError(r),this._parent&&this.system._relay(this,this._parent,KG(this.id,r))}_stopProcedure(){return this._processingStatus!==aa.Running?this:(this.system.scheduler.cancelAll(this),this.mailbox.clear(),this.mailbox=new GG(this._process.bind(this)),this._processingStatus=aa.Stopped,this.system._unregister(this),this)}_send(r){this._processingStatus!==aa.Stopped&&this.mailbox.enqueue(r)}send(r){this.system._relay(void 0,this,r)}attachDevTools(){const{devTools:r}=this.options;r&&(typeof r=="function"?r:qNe)(this)}toJSON(){return{xstate$$type:aE,id:this.id}}getPersistedSnapshot(r){return this.logic.getPersistedSnapshot(this._snapshot,r)}[ZNe](){return this}getSnapshot(){return this._snapshot}}function qf(e,...[r]){return new rPe(e,r)}function nPe(e,r,n,o,{sendId:a}){const i=typeof a=="function"?a(n,o):a;return[r,{sendId:i},void 0]}function oPe(e,r){e.defer(()=>{e.system.scheduler.cancel(e.self,r.sendId)})}function ui(e){function r(n,o){}return r.type="xstate.cancel",r.sendId=e,r.resolve=nPe,r.execute=oPe,r}function aPe(e,r,n,o,{id:a,systemId:i,src:l,input:s,syncSnapshot:c}){const d=typeof l=="string"?nE(r.machine,l):l,u=typeof a=="function"?a(n):a;let p,f;return d&&(f=typeof s=="function"?s({context:r.context,event:n.event,self:e.self}):s,p=qf(d,{id:u,src:l,parent:e.self,syncSnapshot:c,systemId:i,input:f})),[vp(r,{children:{...r.children,[u]:p}}),{id:a,systemId:i,actorRef:p,src:l,input:f},void 0]}function iPe(e,{actorRef:r}){r&&e.defer(()=>{r._processingStatus!==aa.Stopped&&r.start()})}function T3(...[e,{id:r,systemId:n,input:o,syncSnapshot:a=!1}={}]){function i(l,s){}return i.type="xstate.spawnChild",i.id=r,i.systemId=n,i.src=e,i.input=o,i.syncSnapshot=a,i.resolve=aPe,i.execute=iPe,i}function lPe(e,r,n,o,{actorRef:a}){const i=typeof a=="function"?a(n,o):a,l=typeof i=="string"?r.children[i]:i;let s=r.children;return l&&(s={...s},delete s[l.id]),[vp(r,{children:s}),l,void 0]}function sPe(e,r){if(r){if(e.system._unregister(r),r._processingStatus!==aa.Running){e.stopChild(r);return}e.defer(()=>{e.stopChild(r)})}}function $y(e){function r(n,o){}return r.type="xstate.stopChild",r.actorRef=e,r.resolve=lPe,r.execute=sPe,r}function j3(e,r,n,o){const{machine:a}=o,i=typeof e=="function",l=i?e:a.implementations.guards[typeof e=="string"?e:e.type];if(!i&&!l)throw new Error(`Guard '${typeof e=="string"?e:e.type}' is not implemented.'.`);if(typeof l!="function")return j3(l,r,n,o);const s={context:r,event:n},c=i||typeof e=="string"?void 0:"params"in e?typeof e.params=="function"?e.params({context:r,event:n}):e.params:void 0;return"check"in l?l.check(o,s,l):l(s,c)}const iE=e=>e.type==="atomic"||e.type==="final";function Hf(e){return Object.values(e.states).filter(r=>r.type!=="history")}function Ry(e,r){const n=[];if(r===e)return n;let o=e.parent;for(;o&&o!==r;)n.push(o),o=o.parent;return n}function A3(e){const r=new Set(e),n=sY(r);for(const o of r)if(o.type==="compound"&&(!n.get(o)||!n.get(o).length))uY(o).forEach(a=>r.add(a));else if(o.type==="parallel"){for(const a of Hf(o))if(a.type!=="history"&&!r.has(a)){const i=uY(a);for(const l of i)r.add(l)}}for(const o of r){let a=o.parent;for(;a;)r.add(a),a=a.parent}return r}function lY(e,r){const n=r.get(e);if(!n)return{};if(e.type==="compound"){const a=n[0];if(a){if(iE(a))return a.key}else return{}}const o={};for(const a of n)o[a.key]=lY(a,r);return o}function sY(e){const r=new Map;for(const n of e)r.has(n)||r.set(n,[]),n.parent&&(r.has(n.parent)||r.set(n.parent,[]),r.get(n.parent).push(n));return r}function cY(e,r){const n=A3(r);return lY(e,sY(n))}function lE(e,r){return r.type==="compound"?Hf(r).some(n=>n.type==="final"&&e.has(n)):r.type==="parallel"?Hf(r).every(n=>lE(e,n)):r.type==="final"}const D3=e=>e[0]===UNe;function cPe(e,r){return e.transitions.get(r)||[...e.transitions.keys()].filter(n=>{if(n===WNe)return!0;if(!n.endsWith(".*"))return!1;const o=n.split("."),a=r.split(".");for(let i=0;io.length-n.length).flatMap(n=>e.transitions.get(n))}function dPe(e){const r=e.config.after;if(!r)return[];const n=o=>{const a=YNe(o,e.id),i=a.type;return e.entry.push(ia(a,{id:i,delay:o})),e.exit.push(ui(i)),i};return Object.keys(r).flatMap(o=>{const a=r[o],i=typeof a=="string"?{target:a}:a,l=Number.isNaN(+o)?o:+o,s=n(l);return nc(i).map(c=>({...c,event:s,delay:l}))}).map(o=>{const{delay:a}=o;return{...gp(e,o.event,o),delay:a}})}function gp(e,r,n){const o=oY(n.target),a=n.reenter??!1,i=hPe(e,o),l={...n,actions:nc(n.actions),guard:n.guard,target:i,source:e,reenter:a,eventType:r,toJSON:()=>({...l,source:`#${e.id}`,target:i?i.map(s=>`#${s.id}`):void 0})};return l}function uPe(e){const r=new Map;if(e.config.on)for(const n of Object.keys(e.config.on)){if(n===XG)throw new Error('Null events ("") cannot be specified as a transition key. Use `always: { ... }` instead.');const o=e.config.on[n];r.set(n,Vf(o).map(a=>gp(e,n,a)))}if(e.config.onDone){const n=`xstate.done.state.${e.id}`;r.set(n,Vf(e.config.onDone).map(o=>gp(e,n,o)))}for(const n of e.invoke){if(n.onDone){const o=`xstate.done.actor.${n.id}`;r.set(o,Vf(n.onDone).map(a=>gp(e,o,a)))}if(n.onError){const o=`xstate.error.actor.${n.id}`;r.set(o,Vf(n.onError).map(a=>gp(e,o,a)))}if(n.onSnapshot){const o=`xstate.snapshot.${n.id}`;r.set(o,Vf(n.onSnapshot).map(a=>gp(e,o,a)))}}for(const n of e.after){let o=r.get(n.eventType);o||(o=[],r.set(n.eventType,o)),o.push(n)}return r}function pPe(e,r){const n=typeof r=="string"?e.states[r]:r?e.states[r.target]:void 0;if(!n&&r)throw new Error(`Initial state node "${r}" not found on parent state node #${e.id}`);const o={source:e,actions:!r||typeof r=="string"?[]:nc(r.actions),eventType:null,reenter:!1,target:n?[n]:[],toJSON:()=>({...o,source:`#${e.id}`,target:n?[`#${n.id}`]:[]})};return o}function hPe(e,r){if(r!==void 0)return r.map(n=>{if(typeof n!="string")return n;if(D3(n))return e.machine.getStateNodeById(n);const o=n[0]===YG;if(o&&!e.parent)return M3(e,n.slice(1));const a=o?e.key+n:n;if(e.parent)try{return M3(e.parent,a)}catch(i){throw new Error(`Invalid transition definition for state node '${e.id}': +${i.message}`)}else throw new Error(`Invalid target: "${n}" is not a valid target from the root node. Did you mean ".${n}"?`)})}function dY(e){const r=oY(e.config.target);return r?{target:r.map(n=>typeof n=="string"?M3(e.parent,n):n)}:e.parent.initial}function yp(e){return e.type==="history"}function uY(e){const r=pY(e);for(const n of r)for(const o of Ry(n,e))r.add(o);return r}function pY(e){const r=new Set;function n(o){if(!r.has(o)){if(r.add(o),o.type==="compound")n(o.initial.target[0]);else if(o.type==="parallel")for(const a of Hf(o))n(a)}}return n(e),r}function Uf(e,r){if(D3(r))return e.machine.getStateNodeById(r);if(!e.states)throw new Error(`Unable to retrieve child state '${r}' from '${e.id}'; no child states exist.`);const n=e.states[r];if(!n)throw new Error(`Child state '${r}' does not exist on '${e.id}'`);return n}function M3(e,r){if(typeof r=="string"&&D3(r))try{return e.machine.getStateNodeById(r)}catch{}const n=tE(r).slice();let o=e;for(;n.length;){const a=n.shift();if(!a.length)break;o=Uf(o,a)}return o}function N3(e,r){if(typeof r=="string"){const a=e.states[r];if(!a)throw new Error(`State '${r}' does not exist on '${e.id}'`);return[e,a]}const n=Object.keys(r),o=n.map(a=>Uf(e,a)).filter(Boolean);return[e.machine.root,e].concat(o,n.reduce((a,i)=>{const l=Uf(e,i);if(!l)return a;const s=N3(l,r[i]);return a.concat(s)},[]))}function fPe(e,r,n,o){const a=Uf(e,r).next(n,o);return!a||!a.length?e.next(n,o):a}function mPe(e,r,n,o){const a=Object.keys(r),i=Uf(e,a[0]),l=sE(i,r[a[0]],n,o);return!l||!l.length?e.next(n,o):l}function gPe(e,r,n,o){const a=[];for(const i of Object.keys(r)){const l=r[i];if(!l)continue;const s=Uf(e,i),c=sE(s,l,n,o);c&&a.push(...c)}return a.length?a:e.next(n,o)}function sE(e,r,n,o){return typeof r=="string"?fPe(e,r,n,o):Object.keys(r).length===1?mPe(e,r,n,o):gPe(e,r,n,o)}function yPe(e){return Object.keys(e.states).map(r=>e.states[r]).filter(r=>r.type==="history")}function Cd(e,r){let n=e;for(;n.parent&&n.parent!==r;)n=n.parent;return n.parent===r}function vPe(e,r){const n=new Set(e),o=new Set(r);for(const a of n)if(o.has(a))return!0;for(const a of o)if(n.has(a))return!0;return!1}function hY(e,r,n){const o=new Set;for(const a of e){let i=!1;const l=new Set;for(const s of o)if(vPe(dE([a],r,n),dE([s],r,n)))if(Cd(a.source,s.source))l.add(s);else{i=!0;break}if(!i){for(const s of l)o.delete(s);o.add(a)}}return Array.from(o)}function bPe(e){const[r,...n]=e;for(const o of Ry(r,void 0))if(n.every(a=>Cd(a,o)))return o}function cE(e,r){if(!e.target)return[];const n=new Set;for(const o of e.target)if(yp(o))if(r[o.id])for(const a of r[o.id])n.add(a);else for(const a of cE(dY(o),r))n.add(a);else n.add(o);return[...n]}function fY(e,r){const n=cE(e,r);if(!n)return;if(!e.reenter&&n.every(a=>a===e.source||Cd(a,e.source)))return e.source;const o=bPe(n.concat(e.source));if(o)return o;if(!e.reenter)return e.source.machine.root}function dE(e,r,n){const o=new Set;for(const a of e)if(a.target?.length){const i=fY(a,n);a.reenter&&a.source===i&&o.add(i);for(const l of r)Cd(l,i)&&o.add(l)}return[...o]}function xPe(e,r){if(e.length!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function uE(e,r,n,o,a,i){if(!e.length)return r;const l=new Set(r._nodes);let s=r.historyValue;const c=hY(e,l,s);let d=r;a||([d,s]=SPe(d,o,n,c,l,s,i,n.actionExecutor)),d=Gf(d,o,n,c.flatMap(p=>p.actions),i,void 0),d=kPe(d,o,n,c,l,i,s,a);const u=[...l];d.status==="done"&&(d=Gf(d,o,n,u.sort((p,f)=>f.order-p.order).flatMap(p=>p.exit),i,void 0));try{return s===r.historyValue&&xPe(r._nodes,l)?d:vp(d,{_nodes:u,historyValue:s})}catch(p){throw p}}function wPe(e,r,n,o,a){if(o.output===void 0)return;const i=eE(a.id,a.output!==void 0&&a.parent?rE(a.output,e.context,r,n.self):void 0);return rE(o.output,e.context,i,n.self)}function kPe(e,r,n,o,a,i,l,s){let c=e;const d=new Set,u=new Set;_Pe(o,l,u,d),s&&u.add(e.machine.root);const p=new Set;for(const f of[...d].sort((g,v)=>g.order-v.order)){a.add(f);const g=[];g.push(...f.entry);for(const v of f.invoke)g.push(T3(v.src,{...v,syncSnapshot:!!v.onSnapshot}));if(u.has(f)){const v=f.initial.actions;g.push(...v)}if(c=Gf(c,r,n,g,i,f.invoke.map(v=>v.id)),f.type==="final"){const v=f.parent;let w=v?.type==="parallel"?v:v?.parent,x=w||f;for(v?.type==="compound"&&i.push(eE(v.id,f.output!==void 0?rE(f.output,c.context,r,n.self):void 0));w?.type==="parallel"&&!p.has(w)&&lE(a,w);)p.add(w),i.push(eE(w.id)),x=w,w=w.parent;if(w)continue;c=vp(c,{status:"done",output:wPe(c,r,n,c.machine.root,x)})}}return c}function _Pe(e,r,n,o){for(const a of e){const i=fY(a,r);for(const s of a.target||[])!yp(s)&&(a.source!==s||a.source!==i||a.reenter)&&(o.add(s),n.add(s)),Wf(s,r,n,o);const l=cE(a,r);for(const s of l){const c=Ry(s,i);i?.type==="parallel"&&c.push(i),mY(o,r,n,c,!a.source.parent&&a.reenter?void 0:i)}}}function Wf(e,r,n,o){if(yp(e))if(r[e.id]){const a=r[e.id];for(const i of a)o.add(i),Wf(i,r,n,o);for(const i of a)pE(i,e.parent,o,r,n)}else{const a=dY(e);for(const i of a.target)o.add(i),a===e.parent?.initial&&n.add(e.parent),Wf(i,r,n,o);for(const i of a.target)pE(i,e.parent,o,r,n)}else if(e.type==="compound"){const[a]=e.initial.target;yp(a)||(o.add(a),n.add(a)),Wf(a,r,n,o),pE(a,e,o,r,n)}else if(e.type==="parallel")for(const a of Hf(e).filter(i=>!yp(i)))[...o].some(i=>Cd(i,a))||(yp(a)||(o.add(a),n.add(a)),Wf(a,r,n,o))}function mY(e,r,n,o,a){for(const i of o)if((!a||Cd(i,a))&&e.add(i),i.type==="parallel")for(const l of Hf(i).filter(s=>!yp(s)))[...e].some(s=>Cd(s,l))||(e.add(l),Wf(l,r,n,e))}function pE(e,r,n,o,a){mY(n,o,a,Ry(e,r))}function SPe(e,r,n,o,a,i,l,s){let c=e;const d=dE(o,a,i);d.sort((p,f)=>f.order-p.order);let u;for(const p of d)for(const f of yPe(p)){let g;f.history==="deep"?g=v=>iE(v)&&Cd(v,p):g=v=>v.parent===p,u??={...i},u[f.id]=Array.from(a).filter(g)}for(const p of d)c=Gf(c,r,n,[...p.exit,...p.invoke.map(f=>$y(f.id))],l,void 0),a.delete(p);return[c,u||i]}function EPe(e,r){return e.implementations.actions[r]}function gY(e,r,n,o,a,i){const{machine:l}=e;let s=e;for(const c of o){const d=typeof c=="function",u=d?c:EPe(l,typeof c=="string"?c:c.type),p={context:s.context,event:r,self:n.self,system:n.system},f=d||typeof c=="string"?void 0:"params"in c?typeof c.params=="function"?c.params({context:s.context,event:r}):c.params:void 0;if(!u||!("resolve"in u)){n.actionExecutor({type:typeof c=="string"?c:typeof c=="object"?c.type:c.name||"(anonymous)",info:p,params:f,exec:u});continue}const g=u,[v,w,x]=g.resolve(n,s,p,f,u,a);s=v,"retryResolve"in g&&i?.push([g,w]),"execute"in g&&n.actionExecutor({type:g.type,info:p,params:w,exec:g.execute.bind(null,n,w)}),x&&(s=gY(s,r,n,x,a,i))}return s}function Gf(e,r,n,o,a,i){const l=i?[]:void 0,s=gY(e,r,n,o,{internalQueue:a,deferredActorIds:i},l);return l?.forEach(([c,d])=>{c.retryResolve(n,s,d)}),s}function hE(e,r,n,o){let a=e;const i=[];function l(d,u,p){n.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:n.self,event:u,snapshot:d,_transitions:p}),i.push(d)}if(r.type===Cy)return a=vp(yY(a,r,n),{status:"stopped"}),l(a,r,[]),{snapshot:a,microstates:i};let s=r;if(s.type!==ZG){const d=s,u=QNe(d),p=vY(d,a);if(u&&!p.length)return a=vp(e,{status:"error",error:d.error}),l(a,d,[]),{snapshot:a,microstates:i};a=uE(p,e,n,s,!1,o),l(a,d,p)}let c=!0;for(;a.status==="active";){let d=c?CPe(a,s):[];const u=d.length?a:void 0;if(!d.length){if(!o.length)break;s=o.shift(),d=vY(s,a)}a=uE(d,a,n,s,!1,o),c=a!==u,l(a,s,d)}return a.status!=="active"&&yY(a,s,n),{snapshot:a,microstates:i}}function yY(e,r,n){return Gf(e,r,n,Object.values(e.children).map(o=>$y(o)),[],void 0)}function vY(e,r){return r.machine.getTransitionData(r,e)}function CPe(e,r){const n=new Set,o=e._nodes.filter(iE);for(const a of o)e:for(const i of[a].concat(Ry(a,void 0)))if(i.always){for(const l of i.always)if(l.guard===void 0||j3(l.guard,e.context,r,e)){n.add(l);break e}}return hY(Array.from(n),new Set(e._nodes),e.historyValue)}function $Pe(e,r){const n=A3(N3(e,r));return cY(e,[...n])}function RPe(e){return!!e&&typeof e=="object"&&"machine"in e&&"value"in e}const zPe=function(e){return JG(e,this.value)},TPe=function(e){return this.tags.has(e)},jPe=function(e){const r=this.machine.getTransitionData(this,e);return!!r?.length&&r.some(n=>n.target!==void 0||n.actions.length)},APe=function(){const{_nodes:e,tags:r,machine:n,getMeta:o,toJSON:a,can:i,hasTag:l,matches:s,...c}=this;return{...c,tags:Array.from(r)}},DPe=function(){return this._nodes.reduce((e,r)=>(r.meta!==void 0&&(e[r.id]=r.meta),e),{})};function P3(e,r){return{status:e.status,output:e.output,error:e.error,machine:r,context:e.context,_nodes:e._nodes,value:cY(r.root,e._nodes),tags:new Set(e._nodes.flatMap(n=>n.tags)),children:e.children,historyValue:e.historyValue||{},matches:zPe,hasTag:TPe,can:jPe,getMeta:DPe,toJSON:APe}}function vp(e,r={}){return P3({...e,...r},e.machine)}function MPe(e){if(typeof e!="object"||e===null)return{};const r={};for(const n in e){const o=e[n];Array.isArray(o)&&(r[n]=o.map(a=>({id:a.id})))}return r}function NPe(e,r){const{_nodes:n,tags:o,machine:a,children:i,context:l,can:s,hasTag:c,matches:d,getMeta:u,toJSON:p,...f}=e,g={};for(const v in i){const w=i[v];g[v]={snapshot:w.getPersistedSnapshot(r),src:w.src,systemId:w.systemId,syncSnapshot:w._syncSnapshot}}return{...f,context:bY(l),children:g,historyValue:MPe(f.historyValue)}}function bY(e){let r;for(const n in e){const o=e[n];if(o&&typeof o=="object")if("sessionId"in o&&"send"in o&&"ref"in o)r??=Array.isArray(e)?e.slice():{...e},r[n]={xstate$$type:aE,id:o.id};else{const a=bY(o);a!==o&&(r??=Array.isArray(e)?e.slice():{...e},r[n]=a)}}return r??e}function PPe(e,r,n,o,{event:a,id:i,delay:l},{internalQueue:s}){const c=r.machine.implementations.delays;if(typeof a=="string")throw new Error(`Only event objects may be used with raise; use raise({ type: "${a}" }) instead`);const d=typeof a=="function"?a(n,o):a;let u;if(typeof l=="string"){const p=c&&c[l];u=typeof p=="function"?p(n,o):p}else u=typeof l=="function"?l(n,o):l;return typeof u!="number"&&s.push(d),[r,{event:d,id:i,delay:u},void 0]}function BPe(e,r){const{event:n,delay:o,id:a}=r;if(typeof o=="number"){e.defer(()=>{const i=e.self;e.system.scheduler.schedule(i,i,n,o,a)});return}}function ia(e,r){function n(o,a){}return n.type="xstate.raise",n.event=e,n.id=r?.id,n.delay=r?.delay,n.resolve=PPe,n.execute=BPe,n}const xY=new WeakMap;function B3(e){return{config:e,start:(r,n)=>{const{self:o,system:a,emit:i}=n,l={receivers:void 0,dispose:void 0};xY.set(o,l),l.dispose=e({input:r.input,system:a,self:o,sendBack:s=>{o.getSnapshot().status!=="stopped"&&o._parent&&a._relay(o,o._parent,s)},receive:s=>{l.receivers??=new Set,l.receivers.add(s)},emit:i})},transition:(r,n,o)=>{const a=xY.get(o.self);return n.type===Cy?(r={...r,status:"stopped",error:void 0},a.dispose?.(),r):(a.receivers?.forEach(i=>i(n)),r)},getInitialSnapshot:(r,n)=>({status:"active",output:void 0,error:void 0,input:n}),getPersistedSnapshot:r=>r,restoreSnapshot:r=>r}}const wY="xstate.promise.resolve",kY="xstate.promise.reject",I3=new WeakMap;function zy(e){return{config:e,transition:(r,n,o)=>{if(r.status!=="active")return r;switch(n.type){case wY:{const a=n.data;return{...r,status:"done",output:a,input:void 0}}case kY:return{...r,status:"error",error:n.data,input:void 0};case Cy:return I3.get(o.self)?.abort(),{...r,status:"stopped",input:void 0};default:return r}},start:(r,{self:n,system:o,emit:a})=>{if(r.status!=="active")return;const i=new AbortController;I3.set(n,i),Promise.resolve(e({input:r.input,system:o,self:n,signal:i.signal,emit:a})).then(l=>{n.getSnapshot().status==="active"&&(I3.delete(n),o._relay(n,n,{type:wY,data:l}))},l=>{n.getSnapshot().status==="active"&&(I3.delete(n),o._relay(n,n,{type:kY,data:l}))})},getInitialSnapshot:(r,n)=>({status:"active",output:void 0,error:void 0,input:n}),getPersistedSnapshot:r=>r,restoreSnapshot:r=>r}}function IPe(e,{machine:r,context:n},o,a){const i=(l,s)=>{if(typeof l=="string"){const c=nE(r,l);if(!c)throw new Error(`Actor logic '${l}' not implemented in machine '${r.id}'`);const d=qf(c,{id:s?.id,parent:e.self,syncSnapshot:s?.syncSnapshot,input:typeof s?.input=="function"?s.input({context:n,event:o,self:e.self}):s?.input,src:l,systemId:s?.systemId});return a[d.id]=d,d}else return qf(l,{id:s?.id,parent:e.self,syncSnapshot:s?.syncSnapshot,input:s?.input,src:l,systemId:s?.systemId})};return(l,s)=>{const c=i(l,s);return a[c.id]=c,e.defer(()=>{c._processingStatus!==aa.Stopped&&c.start()}),c}}function OPe(e,r,n,o,{assignment:a}){if(!r.context)throw new Error("Cannot assign to undefined `context`. Ensure that `context` is defined in the machine config.");const i={},l={context:r.context,event:n.event,spawn:IPe(e,r,n.event,i),self:e.self,system:e.system};let s={};if(typeof a=="function")s=a(l,o);else for(const d of Object.keys(a)){const u=a[d];s[d]=typeof u=="function"?u(l,o):u}const c=Object.assign({},r.context,s);return[vp(r,{context:c,children:Object.keys(i).length?{...r.children,...i}:r.children}),void 0,void 0]}function Bt(e){function r(n,o){}return r.type="xstate.assign",r.assignment=e,r.resolve=OPe,r}const _Y=new WeakMap;function Yf(e,r,n){let o=_Y.get(e);return o?r in o||(o[r]=n()):(o={[r]:n()},_Y.set(e,o)),o[r]}const LPe={},Ty=e=>typeof e=="string"?{type:e}:typeof e=="function"?"resolve"in e?{type:e.type}:{type:e.name}:e;class O3{constructor(r,n){if(this.config=r,this.key=void 0,this.id=void 0,this.type=void 0,this.path=void 0,this.states=void 0,this.history=void 0,this.entry=void 0,this.exit=void 0,this.parent=void 0,this.machine=void 0,this.meta=void 0,this.output=void 0,this.order=-1,this.description=void 0,this.tags=[],this.transitions=void 0,this.always=void 0,this.parent=n._parent,this.key=n._key,this.machine=n._machine,this.path=this.parent?this.parent.path.concat(this.key):[],this.id=this.config.id||[this.machine.id,...this.path].join(YG),this.type=this.config.type||(this.config.states&&Object.keys(this.config.states).length?"compound":this.config.history?"history":"atomic"),this.description=this.config.description,this.order=this.machine.idMap.size,this.machine.idMap.set(this.id,this),this.states=this.config.states?tY(this.config.states,(o,a)=>new O3(o,{_parent:this,_key:a,_machine:this.machine})):LPe,this.type==="compound"&&!this.config.initial)throw new Error(`No initial state specified for compound state node "#${this.id}". Try adding { initial: "${Object.keys(this.states)[0]}" } to the state config.`);this.history=this.config.history===!0?"shallow":this.config.history||!1,this.entry=nc(this.config.entry).slice(),this.exit=nc(this.config.exit).slice(),this.meta=this.config.meta,this.output=this.type==="final"||!this.parent?this.config.output:void 0,this.tags=nc(r.tags).slice()}_initialize(){this.transitions=uPe(this),this.config.always&&(this.always=Vf(this.config.always).map(r=>gp(this,XG,r))),Object.keys(this.states).forEach(r=>{this.states[r]._initialize()})}get definition(){return{id:this.id,key:this.key,version:this.machine.version,type:this.type,initial:this.initial?{target:this.initial.target,source:this,actions:this.initial.actions.map(Ty),eventType:null,reenter:!1,toJSON:()=>({target:this.initial.target.map(r=>`#${r.id}`),source:`#${this.id}`,actions:this.initial.actions.map(Ty),eventType:null})}:void 0,history:this.history,states:tY(this.states,r=>r.definition),on:this.on,transitions:[...this.transitions.values()].flat().map(r=>({...r,actions:r.actions.map(Ty)})),entry:this.entry.map(Ty),exit:this.exit.map(Ty),meta:this.meta,order:this.order||-1,output:this.output,invoke:this.invoke,description:this.description,tags:this.tags}}toJSON(){return this.definition}get invoke(){return Yf(this,"invoke",()=>nc(this.config.invoke).map((r,n)=>{const{src:o,systemId:a}=r,i=r.id??aY(this.id,n),l=typeof o=="string"?o:`xstate.invoke.${aY(this.id,n)}`;return{...r,src:l,id:i,systemId:a,toJSON(){const{onDone:s,onError:c,...d}=r;return{...d,type:"xstate.invoke",src:l,id:i}}}}))}get on(){return Yf(this,"on",()=>[...this.transitions].flatMap(([r,n])=>n.map(o=>[r,o])).reduce((r,[n,o])=>(r[n]=r[n]||[],r[n].push(o),r),{}))}get after(){return Yf(this,"delayedTransitions",()=>dPe(this))}get initial(){return Yf(this,"initial",()=>pPe(this,this.config.initial))}next(r,n){const o=n.type,a=[];let i;const l=Yf(this,`candidates-${o}`,()=>cPe(this,o));for(const s of l){const{guard:c}=s,d=r.context;let u=!1;try{u=!c||j3(c,d,n,r)}catch(p){const f=typeof c=="string"?c:typeof c=="object"?c.type:void 0;throw new Error(`Unable to evaluate guard ${f?`'${f}' `:""}in transition for event '${o}' in state node '${this.id}': +${p.message}`)}if(u){a.push(...s.actions),i=s;break}}return i?[i]:void 0}get events(){return Yf(this,"events",()=>{const{states:r}=this,n=new Set(this.ownEvents);if(r)for(const o of Object.keys(r)){const a=r[o];if(a.states)for(const i of a.events)n.add(`${i}`)}return Array.from(n)})}get ownEvents(){const r=new Set([...this.transitions.keys()].filter(n=>this.transitions.get(n).some(o=>!(!o.target&&!o.actions.length&&!o.reenter))));return Array.from(r)}}const FPe="#";class fE{constructor(r,n){this.config=r,this.version=void 0,this.schemas=void 0,this.implementations=void 0,this.__xstatenode=!0,this.idMap=new Map,this.root=void 0,this.id=void 0,this.states=void 0,this.events=void 0,this.id=r.id||"(machine)",this.implementations={actors:n?.actors??{},actions:n?.actions??{},delays:n?.delays??{},guards:n?.guards??{}},this.version=this.config.version,this.schemas=this.config.schemas,this.transition=this.transition.bind(this),this.getInitialSnapshot=this.getInitialSnapshot.bind(this),this.getPersistedSnapshot=this.getPersistedSnapshot.bind(this),this.restoreSnapshot=this.restoreSnapshot.bind(this),this.start=this.start.bind(this),this.root=new O3(r,{_key:this.id,_machine:this}),this.root._initialize(),this.states=this.root.states,this.events=this.root.events}provide(r){const{actions:n,guards:o,actors:a,delays:i}=this.implementations;return new fE(this.config,{actions:{...n,...r.actions},guards:{...o,...r.guards},actors:{...a,...r.actors},delays:{...i,...r.delays}})}resolveState(r){const n=$Pe(this.root,r.value),o=A3(N3(this.root,n));return P3({_nodes:[...o],context:r.context||{},children:{},status:lE(o,this.root)?"done":r.status||"active",output:r.output,error:r.error,historyValue:r.historyValue},this)}transition(r,n,o){return hE(r,n,o,[]).snapshot}microstep(r,n,o){return hE(r,n,o,[]).microstates}getTransitionData(r,n){return sE(this.root,r.value,r,n)||[]}getPreInitialState(r,n,o){const{context:a}=this.config,i=P3({context:typeof a!="function"&&a?a:{},_nodes:[this.root],children:{},status:"active"},this);return typeof a=="function"?Gf(i,n,r,[Bt(({spawn:l,event:s,self:c})=>a({spawn:l,input:s.input,self:c}))],o,void 0):i}getInitialSnapshot(r,n){const o=QG(n),a=[],i=this.getPreInitialState(r,o,a),l=uE([{target:[...pY(this.root)],source:this.root,reenter:!0,actions:[],eventType:null,toJSON:null}],i,r,o,!0,a),{snapshot:s}=hE(l,o,r,a);return s}start(r){Object.values(r.children).forEach(n=>{n.getSnapshot().status==="active"&&n.start()})}getStateNodeById(r){const n=tE(r),o=n.slice(1),a=D3(n[0])?n[0].slice(FPe.length):n[0],i=this.idMap.get(a);if(!i)throw new Error(`Child state node '#${a}' does not exist on machine '${this.id}'`);return M3(i,o)}get definition(){return this.root.definition}toJSON(){return this.definition}getPersistedSnapshot(r,n){return NPe(r,n)}restoreSnapshot(r,n){const o={},a=r.children;Object.keys(a).forEach(p=>{const f=a[p],g=f.snapshot,v=f.src,w=typeof v=="string"?nE(this,v):v;if(!w)return;const x=qf(w,{id:p,parent:n.self,syncSnapshot:f.syncSnapshot,snapshot:g,src:v,systemId:f.systemId});o[p]=x});function i(p,f){if(f instanceof O3)return f;try{return p.machine.getStateNodeById(f.id)}catch{}}function l(p,f){if(!f||typeof f!="object")return{};const g={};for(const v in f){const w=f[v];for(const x of w){const k=i(p,x);k&&(g[v]??=[],g[v].push(k))}}return g}const s=l(this.root,r.historyValue),c=P3({...r,children:o,_nodes:Array.from(A3(N3(this.root,r.value))),historyValue:s},this),d=new Set;function u(p,f){if(!d.has(p)){d.add(p);for(const g in p){const v=p[g];if(v&&typeof v=="object"){if("xstate$$type"in v&&v.xstate$$type===aE){p[g]=f[v.id];continue}u(v,f)}}}}return u(c.context,o),c}}function VPe(e,r,n,o,{event:a}){const i=typeof a=="function"?a(n,o):a;return[r,{event:i},void 0]}function qPe(e,{event:r}){e.defer(()=>e.emit(r))}function mE(e){function r(n,o){}return r.type="xstate.emit",r.event=e,r.resolve=VPe,r.execute=qPe,r}let gE=(function(e){return e.Parent="#_parent",e.Internal="#_internal",e})({});function HPe(e,r,n,o,{to:a,event:i,id:l,delay:s},c){const d=r.machine.implementations.delays;if(typeof i=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${i}" }) instead`);const u=typeof i=="function"?i(n,o):i;let p;if(typeof s=="string"){const v=d&&d[s];p=typeof v=="function"?v(n,o):v}else p=typeof s=="function"?s(n,o):s;const f=typeof a=="function"?a(n,o):a;let g;if(typeof f=="string"){if(f===gE.Parent?g=e.self._parent:f===gE.Internal?g=e.self:f.startsWith("#_")?g=r.children[f.slice(2)]:g=c.deferredActorIds?.includes(f)?f:r.children[f],!g)throw new Error(`Unable to send event to actor '${f}' from machine '${r.machine.id}'.`)}else g=f||e.self;return[r,{to:g,targetId:typeof f=="string"?f:void 0,event:u,id:l,delay:p},void 0]}function UPe(e,r,n){typeof n.to=="string"&&(n.to=r.children[n.to])}function WPe(e,r){e.defer(()=>{const{to:n,event:o,delay:a,id:i}=r;if(typeof a=="number"){e.system.scheduler.schedule(e.self,n,o,a,i);return}e.system._relay(e.self,n,o.type===GNe?KG(e.self.id,o.data):o)})}function jy(e,r,n){function o(a,i){}return o.type="xstate.sendTo",o.to=e,o.event=r,o.id=n?.id,o.delay=n?.delay,o.resolve=HPe,o.retryResolve=UPe,o.execute=WPe,o}function GPe(e,r){return jy(gE.Parent,e,r)}function YPe(e,r,n,o,{collect:a}){const i=[],l=function(s){i.push(s)};return l.assign=(...s)=>{i.push(Bt(...s))},l.cancel=(...s)=>{i.push(ui(...s))},l.raise=(...s)=>{i.push(ia(...s))},l.sendTo=(...s)=>{i.push(jy(...s))},l.sendParent=(...s)=>{i.push(GPe(...s))},l.spawnChild=(...s)=>{i.push(T3(...s))},l.stopChild=(...s)=>{i.push($y(...s))},l.emit=(...s)=>{i.push(mE(...s))},a({context:n.context,event:n.event,enqueue:l,check:s=>j3(s,r.context,n.event,r),self:e.self,system:e.system},o),[r,void 0,i]}function rs(e){function r(n,o){}return r.type="xstate.enqueueActions",r.collect=e,r.resolve=YPe,r}function XPe(e,r,n,o,{value:a,label:i}){return[r,{value:typeof a=="function"?a(n,o):a,label:i},void 0]}function ZPe({logger:e},{value:r,label:n}){n?e(n,r):e(r)}function yE(e=({context:n,event:o})=>({context:n,event:o}),r){function n(o,a){}return n.type="xstate.log",n.value=e,n.label=r,n.resolve=XPe,n.execute=ZPe,n}function ht(e,r){const n=nc(r);if(!n.includes(e.type)){const o=n.length===1?`type "${n[0]}"`:`one of types "${n.join('", "')}"`;throw new Error(`Expected event ${JSON.stringify(e)} to have ${o}`)}}function KPe(e,r){return new fE(e,r)}function ns({schemas:e,actors:r,actions:n,guards:o,delays:a}){return{assign:Bt,sendTo:jy,raise:ia,log:yE,cancel:ui,stopChild:$y,enqueueActions:rs,emit:mE,spawnChild:T3,createStateConfig:i=>i,createAction:i=>i,createMachine:i=>KPe({...i,schemas:e},{actors:r,actions:n,guards:o,delays:a}),extend:i=>ns({schemas:e,actors:r,actions:{...n,...i.actions},guards:{...o,...i.guards},delays:{...a,...i.delays}})}}fV();const SY=(e,r)=>{r(e);const n=e.getSnapshot().children;n&&Object.values(n).forEach(o=>{SY(o,r)})};function QPe(e){const r=[];SY(e,o=>{r.push([o,o.getSnapshot()]),o.observers=new Set});const n=e.system.getSnapshot?.();e.stop(),e.system._snapshot=n,r.forEach(([o,a])=>{o._processingStatus=0,o._snapshot=a})}function JPe(e,...[r]){let[[n,o],a]=S.useState(()=>{const i=qf(e,r);return[e.config,i]});if(e.config!==n){const i=qf(e,{...r,snapshot:o.getPersistedSnapshot({__unsafeAllowInlineActors:!0})});a([e.config,i]),o=i}return hMe(()=>{o.logic.implementations=e.implementations}),o}function vE(e,...[r,n]){const o=JPe(e,r);return S.useEffect(()=>{if(!n)return;const a=o.subscribe(z3(n));return()=>{a.unsubscribe()}},[n]),S.useEffect(()=>(o.start(),()=>{QPe(o)}),[o]),o}function eBe(e,r){return e===r}function pn(e,r,n=eBe){const o=S.useCallback(i=>{if(!e)return()=>{};const{unsubscribe:l}=e.subscribe(i);return l},[e]),a=S.useCallback(()=>e?.getSnapshot(),[e]);return yV.useSyncExternalStoreWithSelector(o,a,a,r,n)}const bE=S.createContext(null);bE.displayName="DiagramActorSafeContext";const xE=S.createContext(null);xE.displayName="DiagramApiSafeContext";const tBe=bE.Provider,rBe=xE.Provider;function Xf(){const e=S.useContext(bE);if(e===null)throw new Error("DiagramActorRef is not provided");return e}function Nt(){const e=S.useContext(xE);if(e===null)throw new Error("DiagramApi is not provided");return e}function it(e){const r=S.useRef(e);r.current=e;const n=S.useRef(null);return n.current==null&&(n.current=((...o)=>r.current?.(...o))),n.current}function wE(e,r=Ir){const n=Xf();return pn(n,e,r)}function pi(e,r=Ir,n){const o=Xf(),a=it(e),i=S.useCallback(l=>a(l.context),n??[]);return pn(o,i,r)}function ja(e,r,n){const o=Xf(),a=it(r),i=S.useRef(!1),l=n?.once??!1;S.useEffect(()=>{if(l&&i.current)return;let s=o.on(e,c=>{a(c),i.current=!0,l&&(s?.unsubscribe(),s=null)});return()=>{s?.unsubscribe()}},[o,e,l])}const nBe=e=>e.children.overlays;function oBe(){return wE(nBe,Object.is)}const aBe=e=>e.children.search??null;function iBe(){return wE(aBe,Object.is)}function kE(e,r){e.indexOf(r)===-1&&e.push(r)}function L3(e,r){const n=e.indexOf(r);n>-1&&e.splice(n,1)}const oc=(e,r,n)=>n>r?r:n{};const ac={},EY=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function CY(e){return typeof e=="object"&&e!==null}const $Y=e=>/^0[^.\s]+$/u.test(e);function SE(e){let r;return()=>(r===void 0&&(r=e()),r)}const hi=e=>e,lBe=(e,r)=>n=>r(e(n)),Ay=(...e)=>e.reduce(lBe),Zf=(e,r,n)=>{const o=r-e;return o===0?1:(n-e)/o};class EE{constructor(){this.subscriptions=[]}add(r){return kE(this.subscriptions,r),()=>L3(this.subscriptions,r)}notify(r,n,o){const a=this.subscriptions.length;if(a)if(a===1)this.subscriptions[0](r,n,o);else for(let i=0;ie*1e3,fi=e=>e/1e3;function RY(e,r){return r?e*(1e3/r):0}const sBe=(e,r,n)=>{const o=r-e;return((n-e)%o+o)%o+e},zY=(e,r,n)=>(((1-3*n+3*r)*e+(3*n-6*r))*e+3*r)*e,cBe=1e-7,dBe=12;function uBe(e,r,n,o,a){let i,l,s=0;do l=r+(n-r)/2,i=zY(l,o,a)-e,i>0?n=l:r=l;while(Math.abs(i)>cBe&&++suBe(i,0,1,e,n);return i=>i===0||i===1?i:zY(a(i),r,o)}const TY=e=>r=>r<=.5?e(2*r)/2:(2-e(2*(1-r)))/2,jY=e=>r=>1-e(1-r),AY=Dy(.33,1.53,.69,.99),CE=jY(AY),DY=TY(CE),MY=e=>(e*=2)<1?.5*CE(e):.5*(2-Math.pow(2,-10*(e-1))),$E=e=>1-Math.sin(Math.acos(e)),NY=jY($E),PY=TY($E),pBe=Dy(.42,0,1,1),hBe=Dy(0,0,.58,1),BY=Dy(.42,0,.58,1),IY=e=>Array.isArray(e)&&typeof e[0]!="number";function OY(e,r){return IY(e)?e[sBe(0,e.length,r)]:e}const LY=e=>Array.isArray(e)&&typeof e[0]=="number",fBe={linear:hi,easeIn:pBe,easeInOut:BY,easeOut:hBe,circIn:$E,circInOut:PY,circOut:NY,backIn:CE,backInOut:DY,backOut:AY,anticipate:MY},mBe=e=>typeof e=="string",FY=e=>{if(LY(e)){_E(e.length===4);const[r,n,o,a]=e;return Dy(r,n,o,a)}else if(mBe(e))return fBe[e];return e},F3=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function gBe(e,r){let n=new Set,o=new Set,a=!1,i=!1;const l=new WeakSet;let s={delta:0,timestamp:0,isProcessing:!1};function c(u){l.has(u)&&(d.schedule(u),e()),u(s)}const d={schedule:(u,p=!1,f=!1)=>{const g=f&&a?n:o;return p&&l.add(u),g.has(u)||g.add(u),u},cancel:u=>{o.delete(u),l.delete(u)},process:u=>{if(s=u,a){i=!0;return}a=!0,[n,o]=[o,n],n.forEach(c),n.clear(),a=!1,i&&(i=!1,d.process(u))}};return d}const yBe=40;function VY(e,r){let n=!1,o=!0;const a={delta:0,timestamp:0,isProcessing:!1},i=()=>n=!0,l=F3.reduce((k,C)=>(k[C]=gBe(i),k),{}),{setup:s,read:c,resolveKeyframes:d,preUpdate:u,update:p,preRender:f,render:g,postRender:v}=l,w=()=>{const k=ac.useManualTiming?a.timestamp:performance.now();n=!1,ac.useManualTiming||(a.delta=o?1e3/60:Math.max(Math.min(k-a.timestamp,yBe),1)),a.timestamp=k,a.isProcessing=!0,s.process(a),c.process(a),d.process(a),u.process(a),p.process(a),f.process(a),g.process(a),v.process(a),a.isProcessing=!1,n&&r&&(o=!1,e(w))},x=()=>{n=!0,o=!0,a.isProcessing||e(w)};return{schedule:F3.reduce((k,C)=>{const _=l[C];return k[C]=($,R=!1,T=!1)=>(n||x(),_.schedule($,R,T)),k},{}),cancel:k=>{for(let C=0;C(V3===void 0&&la.set(so.isProcessing||ac.useManualTiming?so.timestamp:performance.now()),V3),set:e=>{V3=e,queueMicrotask(vBe)}},qY=e=>r=>typeof r=="string"&&r.startsWith(e),HY=qY("--"),bBe=qY("var(--"),zE=e=>bBe(e)?xBe.test(e.split("/*")[0].trim()):!1,xBe=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,Kf={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},My={...Kf,transform:e=>oc(0,1,e)},q3={...Kf,default:1},Ny=e=>Math.round(e*1e5)/1e5,TE=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function wBe(e){return e==null}const kBe=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,jE=(e,r)=>n=>!!(typeof n=="string"&&kBe.test(n)&&n.startsWith(e)||r&&!wBe(n)&&Object.prototype.hasOwnProperty.call(n,r)),UY=(e,r,n)=>o=>{if(typeof o!="string")return o;const[a,i,l,s]=o.match(TE);return{[e]:parseFloat(a),[r]:parseFloat(i),[n]:parseFloat(l),alpha:s!==void 0?parseFloat(s):1}},_Be=e=>oc(0,255,e),AE={...Kf,transform:e=>Math.round(_Be(e))},bp={test:jE("rgb","red"),parse:UY("red","green","blue"),transform:({red:e,green:r,blue:n,alpha:o=1})=>"rgba("+AE.transform(e)+", "+AE.transform(r)+", "+AE.transform(n)+", "+Ny(My.transform(o))+")"};function SBe(e){let r="",n="",o="",a="";return e.length>5?(r=e.substring(1,3),n=e.substring(3,5),o=e.substring(5,7),a=e.substring(7,9)):(r=e.substring(1,2),n=e.substring(2,3),o=e.substring(3,4),a=e.substring(4,5),r+=r,n+=n,o+=o,a+=a),{red:parseInt(r,16),green:parseInt(n,16),blue:parseInt(o,16),alpha:a?parseInt(a,16)/255:1}}const DE={test:jE("#"),parse:SBe,transform:bp.transform},Py=e=>({test:r=>typeof r=="string"&&r.endsWith(e)&&r.split(" ").length===1,parse:parseFloat,transform:r=>`${r}${e}`}),Rd=Py("deg"),os=Py("%"),_t=Py("px"),EBe=Py("vh"),CBe=Py("vw"),WY={...os,parse:e=>os.parse(e)/100,transform:e=>os.transform(e*100)},Qf={test:jE("hsl","hue"),parse:UY("hue","saturation","lightness"),transform:({hue:e,saturation:r,lightness:n,alpha:o=1})=>"hsla("+Math.round(e)+", "+os.transform(Ny(r))+", "+os.transform(Ny(n))+", "+Ny(My.transform(o))+")"},Sn={test:e=>bp.test(e)||DE.test(e)||Qf.test(e),parse:e=>bp.test(e)?bp.parse(e):Qf.test(e)?Qf.parse(e):DE.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?bp.transform(e):Qf.transform(e),getAnimatableNone:e=>{const r=Sn.parse(e);return r.alpha=0,Sn.transform(r)}},$Be=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function RBe(e){return isNaN(e)&&typeof e=="string"&&(e.match(TE)?.length||0)+(e.match($Be)?.length||0)>0}const GY="number",YY="color",zBe="var",TBe="var(",XY="${}",jBe=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function By(e){const r=e.toString(),n=[],o={color:[],number:[],var:[]},a=[];let i=0;const l=r.replace(jBe,s=>(Sn.test(s)?(o.color.push(i),a.push(YY),n.push(Sn.parse(s))):s.startsWith(TBe)?(o.var.push(i),a.push(zBe),n.push(s)):(o.number.push(i),a.push(GY),n.push(parseFloat(s))),++i,XY)).split(XY);return{values:n,split:l,indexes:o,types:a}}function ZY(e){return By(e).values}function KY(e){const{split:r,types:n}=By(e),o=r.length;return a=>{let i="";for(let l=0;ltypeof e=="number"?0:Sn.test(e)?Sn.getAnimatableNone(e):e;function DBe(e){const r=ZY(e);return KY(e)(r.map(ABe))}const zd={test:RBe,parse:ZY,createTransformer:KY,getAnimatableNone:DBe};function ME(e,r,n){return n<0&&(n+=1),n>1&&(n-=1),n<.16666666666666666?e+(r-e)*6*n:n<.5?r:n<.6666666666666666?e+(r-e)*(.6666666666666666-n)*6:e}function MBe({hue:e,saturation:r,lightness:n,alpha:o}){e/=360,r/=100,n/=100;let a=0,i=0,l=0;if(!r)a=i=l=n;else{const s=n<.5?n*(1+r):n+r-n*r,c=2*n-s;a=ME(c,s,e+.3333333333333333),i=ME(c,s,e),l=ME(c,s,e-.3333333333333333)}return{red:Math.round(a*255),green:Math.round(i*255),blue:Math.round(l*255),alpha:o}}function H3(e,r){return n=>n>0?r:e}const Lr=(e,r,n)=>e+(r-e)*n,NE=(e,r,n)=>{const o=e*e,a=n*(r*r-o)+o;return a<0?0:Math.sqrt(a)},NBe=[DE,bp,Qf],PBe=e=>NBe.find(r=>r.test(e));function QY(e){const r=PBe(e);if(!r)return!1;let n=r.parse(e);return r===Qf&&(n=MBe(n)),n}const JY=(e,r)=>{const n=QY(e),o=QY(r);if(!n||!o)return H3(e,r);const a={...n};return i=>(a.red=NE(n.red,o.red,i),a.green=NE(n.green,o.green,i),a.blue=NE(n.blue,o.blue,i),a.alpha=Lr(n.alpha,o.alpha,i),bp.transform(a))},PE=new Set(["none","hidden"]);function BBe(e,r){return PE.has(e)?n=>n<=0?e:r:n=>n>=1?r:e}function IBe(e,r){return n=>Lr(e,r,n)}function BE(e){return typeof e=="number"?IBe:typeof e=="string"?zE(e)?H3:Sn.test(e)?JY:FBe:Array.isArray(e)?eX:typeof e=="object"?Sn.test(e)?JY:OBe:H3}function eX(e,r){const n=[...e],o=n.length,a=e.map((i,l)=>BE(i)(i,r[l]));return i=>{for(let l=0;l{for(const i in o)n[i]=o[i](a);return n}}function LBe(e,r){const n=[],o={color:0,var:0,number:0};for(let a=0;a{const n=zd.createTransformer(r),o=By(e),a=By(r);return o.indexes.var.length===a.indexes.var.length&&o.indexes.color.length===a.indexes.color.length&&o.indexes.number.length>=a.indexes.number.length?PE.has(e)&&!a.values.length||PE.has(r)&&!o.values.length?BBe(e,r):Ay(eX(LBe(o,a),a.values),n):H3(e,r)};function tX(e,r,n){return typeof e=="number"&&typeof r=="number"&&typeof n=="number"?Lr(e,r,n):BE(e)(e,r)}const VBe=e=>{const r=({timestamp:n})=>e(n);return{start:(n=!0)=>Dr.update(r,n),stop:()=>$d(r),now:()=>so.isProcessing?so.timestamp:la.now()}},rX=(e,r,n=10)=>{let o="";const a=Math.max(Math.round(r/n),2);for(let i=0;i=U3?1/0:r}function nX(e,r=100,n){const o=n({...e,keyframes:[0,r]}),a=Math.min(IE(o),U3);return{type:"keyframes",ease:i=>o.next(a*i).value/r,duration:fi(a)}}const qBe=5;function oX(e,r,n){const o=Math.max(r-qBe,0);return RY(n-e(o),r-o)}const rn={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},OE=.001;function HBe({duration:e=rn.duration,bounce:r=rn.bounce,velocity:n=rn.velocity,mass:o=rn.mass}){let a,i,l=1-r;l=oc(rn.minDamping,rn.maxDamping,l),e=oc(rn.minDuration,rn.maxDuration,fi(e)),l<1?(a=d=>{const u=d*l,p=u*e,f=u-n,g=LE(d,l),v=Math.exp(-p);return OE-f/g*v},i=d=>{const u=d*l*e,p=u*n+n,f=Math.pow(l,2)*Math.pow(d,2)*e,g=Math.exp(-u),v=LE(Math.pow(d,2),l);return(-a(d)+OE>0?-1:1)*((p-f)*g)/v}):(a=d=>{const u=Math.exp(-d*e),p=(d-n)*e+1;return-OE+u*p},i=d=>{const u=Math.exp(-d*e),p=(n-d)*(e*e);return u*p});const s=5/e,c=WBe(a,i,s);if(e=il(e),isNaN(c))return{stiffness:rn.stiffness,damping:rn.damping,duration:e};{const d=Math.pow(c,2)*o;return{stiffness:d,damping:l*2*Math.sqrt(o*d),duration:e}}}const UBe=12;function WBe(e,r,n){let o=n;for(let a=1;ae[n]!==void 0)}function XBe(e){let r={velocity:rn.velocity,stiffness:rn.stiffness,damping:rn.damping,mass:rn.mass,isResolvedFromDuration:!1,...e};if(!aX(e,YBe)&&aX(e,GBe))if(e.visualDuration){const n=e.visualDuration,o=2*Math.PI/(n*1.2),a=o*o,i=2*oc(.05,1,1-(e.bounce||0))*Math.sqrt(a);r={...r,mass:rn.mass,stiffness:a,damping:i}}else{const n=HBe(e);r={...r,...n,mass:rn.mass},r.isResolvedFromDuration=!0}return r}function Iy(e=rn.visualDuration,r=rn.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:r}:e;let{restSpeed:o,restDelta:a}=n;const i=n.keyframes[0],l=n.keyframes[n.keyframes.length-1],s={done:!1,value:i},{stiffness:c,damping:d,mass:u,duration:p,velocity:f,isResolvedFromDuration:g}=XBe({...n,velocity:-fi(n.velocity||0)}),v=f||0,w=d/(2*Math.sqrt(c*u)),x=l-i,k=fi(Math.sqrt(c/u)),C=Math.abs(x)<5;o||(o=C?rn.restSpeed.granular:rn.restSpeed.default),a||(a=C?rn.restDelta.granular:rn.restDelta.default);let _;if(w<1){const R=LE(k,w);_=T=>{const A=Math.exp(-w*k*T);return l-A*((v+w*k*x)/R*Math.sin(R*T)+x*Math.cos(R*T))}}else if(w===1)_=R=>l-Math.exp(-k*R)*(x+(v+k*x)*R);else{const R=k*Math.sqrt(w*w-1);_=T=>{const A=Math.exp(-w*k*T),z=Math.min(R*T,300);return l-A*((v+w*k*x)*Math.sinh(z)+R*x*Math.cosh(z))/R}}const $={calculatedDuration:g&&p||null,next:R=>{const T=_(R);if(g)s.done=R>=p;else{let A=R===0?v:0;w<1&&(A=R===0?il(v):oX(_,R,T));const z=Math.abs(A)<=o,j=Math.abs(l-T)<=a;s.done=z&&j}return s.value=s.done?l:T,s},toString:()=>{const R=Math.min(IE($),U3),T=rX(A=>$.next(R*A).value,R,30);return R+"ms "+T},toTransition:()=>{}};return $}Iy.applyToOptions=e=>{const r=nX(e,100,Iy);return e.ease=r.ease,e.duration=il(r.duration),e.type="keyframes",e};function FE({keyframes:e,velocity:r=0,power:n=.8,timeConstant:o=325,bounceDamping:a=10,bounceStiffness:i=500,modifyTarget:l,min:s,max:c,restDelta:d=.5,restSpeed:u}){const p=e[0],f={done:!1,value:p},g=z=>s!==void 0&&zc,v=z=>s===void 0?c:c===void 0||Math.abs(s-z)-w*Math.exp(-z/o),_=z=>k+C(z),$=z=>{const j=C(z),I=_(z);f.done=Math.abs(j)<=d,f.value=f.done?k:I};let R,T;const A=z=>{g(f.value)&&(R=z,T=Iy({keyframes:[f.value,v(f.value)],velocity:oX(_,z,f.value),damping:a,stiffness:i,restDelta:d,restSpeed:u}))};return A(0),{calculatedDuration:null,next:z=>{let j=!1;return!T&&R===void 0&&(j=!0,$(z),A(z)),R!==void 0&&z>=R?T.next(z-R):(!j&&$(z),f)}}}function ZBe(e,r,n){const o=[],a=n||ac.mix||tX,i=e.length-1;for(let l=0;lr[0];if(i===2&&r[0]===r[1])return()=>r[1];const l=e[0]===e[1];e[0]>e[i-1]&&(e=[...e].reverse(),r=[...r].reverse());const s=ZBe(r,o,a),c=s.length,d=u=>{if(l&&u1)for(;pd(oc(e[0],e[i-1],u)):d}function iX(e,r){const n=e[e.length-1];for(let o=1;o<=r;o++){const a=Zf(0,r,o);e.push(Lr(n,1,a))}}function lX(e){const r=[0];return iX(r,e.length-1),r}function QBe(e,r){return e.map(n=>n*r)}function JBe(e,r){return e.map(()=>r||BY).splice(0,e.length-1)}function Oy({duration:e=300,keyframes:r,times:n,ease:o="easeInOut"}){const a=IY(o)?o.map(FY):FY(o),i={done:!1,value:r[0]},l=QBe(n&&n.length===r.length?n:lX(r),e),s=KBe(l,r,{ease:Array.isArray(a)?a:JBe(r,a)});return{calculatedDuration:e,next:c=>(i.value=s(c),i.done=c>=e,i)}}const eIe=e=>e!==null;function VE(e,{repeat:r,repeatType:n="loop"},o,a=1){const i=e.filter(eIe),l=a<0||r&&n!=="loop"&&r%2===1?0:i.length-1;return!l||o===void 0?i[l]:o}const tIe={decay:FE,inertia:FE,tween:Oy,keyframes:Oy,spring:Iy};function sX(e){typeof e.type=="string"&&(e.type=tIe[e.type])}class qE{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(r=>{this.resolve=r})}notifyFinished(){this.resolve()}then(r,n){return this.finished.then(r,n)}}const rIe=e=>e/100;class HE extends qE{constructor(r){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==la.now()&&this.tick(la.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=r,this.initAnimation(),this.play(),r.autoplay===!1&&this.pause()}initAnimation(){const{options:r}=this;sX(r);const{type:n=Oy,repeat:o=0,repeatDelay:a=0,repeatType:i,velocity:l=0}=r;let{keyframes:s}=r;const c=n||Oy;c!==Oy&&typeof s[0]!="number"&&(this.mixKeyframes=Ay(rIe,tX(s[0],s[1])),s=[0,100]);const d=c({...r,keyframes:s});i==="mirror"&&(this.mirroredGenerator=c({...r,keyframes:[...s].reverse(),velocity:-l})),d.calculatedDuration===null&&(d.calculatedDuration=IE(d));const{calculatedDuration:u}=d;this.calculatedDuration=u,this.resolvedDuration=u+a,this.totalDuration=this.resolvedDuration*(o+1)-a,this.generator=d}updateTime(r){const n=Math.round(r-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(r,n=!1){const{generator:o,totalDuration:a,mixKeyframes:i,mirroredGenerator:l,resolvedDuration:s,calculatedDuration:c}=this;if(this.startTime===null)return o.next(0);const{delay:d=0,keyframes:u,repeat:p,repeatType:f,repeatDelay:g,type:v,onUpdate:w,finalKeyframe:x}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,r):this.speed<0&&(this.startTime=Math.min(r-a/this.speed,this.startTime)),n?this.currentTime=r:this.updateTime(r);const k=this.currentTime-d*(this.playbackSpeed>=0?1:-1),C=this.playbackSpeed>=0?k<0:k>a;this.currentTime=Math.max(k,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=a);let _=this.currentTime,$=o;if(p){const z=Math.min(this.currentTime,a)/s;let j=Math.floor(z),I=z%1;!I&&z>=1&&(I=1),I===1&&j--,j=Math.min(j,p+1),j%2&&(f==="reverse"?(I=1-I,g&&(I-=g/s)):f==="mirror"&&($=l)),_=oc(0,1,I)*s}const R=C?{done:!1,value:u[0]}:$.next(_);i&&(R.value=i(R.value));let{done:T}=R;!C&&c!==null&&(T=this.playbackSpeed>=0?this.currentTime>=a:this.currentTime<=0);const A=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&T);return A&&v!==FE&&(R.value=VE(u,this.options,x,this.speed)),w&&w(R.value),A&&this.finish(),R}then(r,n){return this.finished.then(r,n)}get duration(){return fi(this.calculatedDuration)}get iterationDuration(){const{delay:r=0}=this.options||{};return this.duration+fi(r)}get time(){return fi(this.currentTime)}set time(r){r=il(r),this.currentTime=r,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=r:this.driver&&(this.startTime=this.driver.now()-r/this.playbackSpeed),this.driver?.start(!1)}get speed(){return this.playbackSpeed}set speed(r){this.updateTime(la.now());const n=this.playbackSpeed!==r;this.playbackSpeed=r,n&&(this.time=fi(this.currentTime))}play(){if(this.isStopped)return;const{driver:r=VBe,startTime:n}=this.options;this.driver||(this.driver=r(a=>this.tick(a))),this.options.onPlay?.();const o=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=o):this.holdTime!==null?this.startTime=o-this.holdTime:this.startTime||(this.startTime=n??o),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(la.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(r){return this.startTime=0,this.tick(r,!0)}attachTimeline(r){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),r.observe(this)}}function nIe(e){for(let r=1;re*180/Math.PI,UE=e=>{const r=xp(Math.atan2(e[1],e[0]));return WE(r)},oIe={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:UE,rotateZ:UE,skewX:e=>xp(Math.atan(e[1])),skewY:e=>xp(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},WE=e=>(e=e%360,e<0&&(e+=360),e),cX=UE,dX=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),uX=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),aIe={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:dX,scaleY:uX,scale:e=>(dX(e)+uX(e))/2,rotateX:e=>WE(xp(Math.atan2(e[6],e[5]))),rotateY:e=>WE(xp(Math.atan2(-e[2],e[0]))),rotateZ:cX,rotate:cX,skewX:e=>xp(Math.atan(e[4])),skewY:e=>xp(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function GE(e){return e.includes("scale")?1:0}function YE(e,r){if(!e||e==="none")return GE(r);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let o,a;if(n)o=aIe,a=n;else{const s=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);o=oIe,a=s}if(!a)return GE(r);const i=o[r],l=a[1].split(",").map(lIe);return typeof i=="function"?i(l):l[i]}const iIe=(e,r)=>{const{transform:n="none"}=getComputedStyle(e);return YE(n,r)};function lIe(e){return parseFloat(e.trim())}const Jf=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],em=new Set(Jf),pX=e=>e===Kf||e===_t,sIe=new Set(["x","y","z"]),cIe=Jf.filter(e=>!sIe.has(e));function dIe(e){const r=[];return cIe.forEach(n=>{const o=e.getValue(n);o!==void 0&&(r.push([n,o.get()]),o.set(n.startsWith("scale")?1:0))}),r}const wp={width:({x:e},{paddingLeft:r="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(r)-parseFloat(n),height:({y:e},{paddingTop:r="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(r)-parseFloat(n),top:(e,{top:r})=>parseFloat(r),left:(e,{left:r})=>parseFloat(r),bottom:({y:e},{top:r})=>parseFloat(r)+(e.max-e.min),right:({x:e},{left:r})=>parseFloat(r)+(e.max-e.min),x:(e,{transform:r})=>YE(r,"x"),y:(e,{transform:r})=>YE(r,"y")};wp.translateX=wp.x,wp.translateY=wp.y;const kp=new Set;let XE=!1,ZE=!1,KE=!1;function hX(){if(ZE){const e=Array.from(kp).filter(o=>o.needsMeasurement),r=new Set(e.map(o=>o.element)),n=new Map;r.forEach(o=>{const a=dIe(o);a.length&&(n.set(o,a),o.render())}),e.forEach(o=>o.measureInitialState()),r.forEach(o=>{o.render();const a=n.get(o);a&&a.forEach(([i,l])=>{o.getValue(i)?.set(l)})}),e.forEach(o=>o.measureEndState()),e.forEach(o=>{o.suspendedScrollY!==void 0&&window.scrollTo(0,o.suspendedScrollY)})}ZE=!1,XE=!1,kp.forEach(e=>e.complete(KE)),kp.clear()}function fX(){kp.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(ZE=!0)})}function uIe(){KE=!0,fX(),hX(),KE=!1}class QE{constructor(r,n,o,a,i,l=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...r],this.onComplete=n,this.name=o,this.motionValue=a,this.element=i,this.isAsync=l}scheduleResolve(){this.state="scheduled",this.isAsync?(kp.add(this),XE||(XE=!0,Dr.read(fX),Dr.resolveKeyframes(hX))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:r,name:n,element:o,motionValue:a}=this;if(r[0]===null){const i=a?.get(),l=r[r.length-1];if(i!==void 0)r[0]=i;else if(o&&n){const s=o.readValue(n,l);s!=null&&(r[0]=s)}r[0]===void 0&&(r[0]=l),a&&i===void 0&&a.set(r[0])}nIe(r)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(r=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,r),kp.delete(this)}cancel(){this.state==="scheduled"&&(kp.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const pIe=e=>e.startsWith("--");function hIe(e,r,n){pIe(r)?e.style.setProperty(r,n):e.style[r]=n}const fIe=SE(()=>window.ScrollTimeline!==void 0),mIe={};function gIe(e,r){const n=SE(e);return()=>mIe[r]??n()}const mX=gIe(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Ly=([e,r,n,o])=>`cubic-bezier(${e}, ${r}, ${n}, ${o})`,gX={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Ly([0,.65,.55,1]),circOut:Ly([.55,0,1,.45]),backIn:Ly([.31,.01,.66,-.59]),backOut:Ly([.33,1.53,.69,.99])};function yX(e,r){if(e)return typeof e=="function"?mX()?rX(e,r):"ease-out":LY(e)?Ly(e):Array.isArray(e)?e.map(n=>yX(n,r)||gX.easeOut):gX[e]}function yIe(e,r,n,{delay:o=0,duration:a=300,repeat:i=0,repeatType:l="loop",ease:s="easeOut",times:c}={},d=void 0){const u={[r]:n};c&&(u.offset=c);const p=yX(s,a);Array.isArray(p)&&(u.easing=p);const f={delay:o,duration:a,easing:Array.isArray(p)?"linear":p,fill:"both",iterations:i+1,direction:l==="reverse"?"alternate":"normal"};return d&&(f.pseudoElement=d),e.animate(u,f)}function JE(e){return typeof e=="function"&&"applyToOptions"in e}function vIe({type:e,...r}){return JE(e)&&mX()?e.applyToOptions(r):(r.duration??(r.duration=300),r.ease??(r.ease="easeOut"),r)}class bIe extends qE{constructor(r){if(super(),this.finishedTime=null,this.isStopped=!1,!r)return;const{element:n,name:o,keyframes:a,pseudoElement:i,allowFlatten:l=!1,finalKeyframe:s,onComplete:c}=r;this.isPseudoElement=!!i,this.allowFlatten=l,this.options=r,_E(typeof r.type!="string");const d=vIe(r);this.animation=yIe(n,o,a,d,i),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!i){const u=VE(a,this.options,s,this.speed);this.updateMotionValue?this.updateMotionValue(u):hIe(n,o,u),this.animation.cancel()}c?.(),this.notifyFinished()}}play(){this.isStopped||(this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:r}=this;r==="idle"||r==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){this.isPseudoElement||this.animation.commitStyles?.()}get duration(){const r=this.animation.effect?.getComputedTiming?.().duration||0;return fi(Number(r))}get iterationDuration(){const{delay:r=0}=this.options||{};return this.duration+fi(r)}get time(){return fi(Number(this.animation.currentTime)||0)}set time(r){this.finishedTime=null,this.animation.currentTime=il(r)}get speed(){return this.animation.playbackRate}set speed(r){r<0&&(this.finishedTime=null),this.animation.playbackRate=r}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(r){this.animation.startTime=r}attachTimeline({timeline:r,observe:n}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,r&&fIe()?(this.animation.timeline=r,hi):n(this)}}const vX={anticipate:MY,backInOut:DY,circInOut:PY};function xIe(e){return e in vX}function wIe(e){typeof e.ease=="string"&&xIe(e.ease)&&(e.ease=vX[e.ease])}const bX=10;class kIe extends bIe{constructor(r){wIe(r),sX(r),super(r),r.startTime&&(this.startTime=r.startTime),this.options=r}updateMotionValue(r){const{motionValue:n,onUpdate:o,onComplete:a,element:i,...l}=this.options;if(!n)return;if(r!==void 0){n.set(r);return}const s=new HE({...l,autoplay:!1}),c=il(this.finishedTime??this.time);n.setWithVelocity(s.sample(c-bX).value,s.sample(c).value,bX),s.stop()}}const xX=(e,r)=>r==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(zd.test(e)||e==="0")&&!e.startsWith("url("));function _Ie(e){const r=e[0];if(e.length===1)return!0;for(let n=0;nObject.hasOwnProperty.call(Element.prototype,"animate"));function $Ie(e){const{motionValue:r,name:n,repeatDelay:o,repeatType:a,damping:i,type:l}=e;if(!(r?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:s,transformTemplate:c}=r.owner.getProps();return CIe()&&n&&EIe.has(n)&&(n!=="transform"||!c)&&!s&&!o&&a!=="mirror"&&i!==0&&l!=="inertia"}const RIe=40;class zIe extends qE{constructor({autoplay:r=!0,delay:n=0,type:o="keyframes",repeat:a=0,repeatDelay:i=0,repeatType:l="loop",keyframes:s,name:c,motionValue:d,element:u,...p}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=la.now();const f={autoplay:r,delay:n,type:o,repeat:a,repeatDelay:i,repeatType:l,name:c,motionValue:d,element:u,...p},g=u?.KeyframeResolver||QE;this.keyframeResolver=new g(s,(v,w,x)=>this.onKeyframesResolved(v,w,f,!x),c,d,u),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(r,n,o,a){this.keyframeResolver=void 0;const{name:i,type:l,velocity:s,delay:c,isHandoff:d,onUpdate:u}=o;this.resolvedAt=la.now(),SIe(r,i,l,s)||((ac.instantAnimations||!c)&&u?.(VE(r,o,n)),r[0]=r[r.length-1],eC(o),o.repeat=0);const p={startTime:a?this.resolvedAt?this.resolvedAt-this.createdAt>RIe?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...o,keyframes:r},f=!d&&$Ie(p)?new kIe({...p,element:p.motionValue.owner.current}):new HE(p);f.finished.then(()=>this.notifyFinished()).catch(hi),this.pendingTimeline&&(this.stopTimeline=f.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=f}get finished(){return this._animation?this.animation.finished:this._finished}then(r,n){return this.finished.finally(r).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),uIe()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(r){this.animation.time=r}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(r){this.animation.speed=r}get startTime(){return this.animation.startTime}attachTimeline(r){return this._animation?this.stopTimeline=this.animation.attachTimeline(r):this.pendingTimeline=r,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}class TIe{constructor(r){this.stop=()=>this.runAll("stop"),this.animations=r.filter(Boolean)}get finished(){return Promise.all(this.animations.map(r=>r.finished))}getAll(r){return this.animations[0][r]}setAll(r,n){for(let o=0;oo.attachTimeline(r));return()=>{n.forEach((o,a)=>{o&&o(),this.animations[a].stop()})}}get time(){return this.getAll("time")}set time(r){this.setAll("time",r)}get speed(){return this.getAll("speed")}set speed(r){this.setAll("speed",r)}get state(){return this.getAll("state")}get startTime(){return this.getAll("startTime")}get duration(){return wX(this.animations,"duration")}get iterationDuration(){return wX(this.animations,"iterationDuration")}runAll(r){this.animations.forEach(n=>n[r]())}play(){this.runAll("play")}pause(){this.runAll("pause")}cancel(){this.runAll("cancel")}complete(){this.runAll("complete")}}function wX(e,r){let n=0;for(let o=0;on&&(n=a)}return n}class jIe extends TIe{then(r,n){return this.finished.finally(r).then(()=>{})}}const AIe=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function DIe(e){const r=AIe.exec(e);if(!r)return[,];const[,n,o,a]=r;return[`--${n??o}`,a]}function kX(e,r,n=1){const[o,a]=DIe(e);if(!o)return;const i=window.getComputedStyle(r).getPropertyValue(o);if(i){const l=i.trim();return EY(l)?parseFloat(l):l}return zE(a)?kX(a,r,n+1):a}function tC(e,r){return e?.[r]??e?.default??e}const _X=new Set(["width","height","top","left","right","bottom",...Jf]),MIe={test:e=>e==="auto",parse:e=>e},SX=e=>r=>r.test(e),EX=[Kf,_t,os,Rd,CBe,EBe,MIe],CX=e=>EX.find(SX(e));function NIe(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||$Y(e):!0}const PIe=new Set(["brightness","contrast","saturate","opacity"]);function BIe(e){const[r,n]=e.slice(0,-1).split("(");if(r==="drop-shadow")return e;const[o]=n.match(TE)||[];if(!o)return e;const a=n.replace(o,"");let i=PIe.has(r)?1:0;return o!==n&&(i*=100),r+"("+i+a+")"}const IIe=/\b([a-z-]*)\(.*?\)/gu,rC={...zd,getAnimatableNone:e=>{const r=e.match(IIe);return r?r.map(BIe).join(" "):e}},$X={...Kf,transform:Math.round},OIe={rotate:Rd,rotateX:Rd,rotateY:Rd,rotateZ:Rd,scale:q3,scaleX:q3,scaleY:q3,scaleZ:q3,skew:Rd,skewX:Rd,skewY:Rd,distance:_t,translateX:_t,translateY:_t,translateZ:_t,x:_t,y:_t,z:_t,perspective:_t,transformPerspective:_t,opacity:My,originX:WY,originY:WY,originZ:_t},nC={borderWidth:_t,borderTopWidth:_t,borderRightWidth:_t,borderBottomWidth:_t,borderLeftWidth:_t,borderRadius:_t,radius:_t,borderTopLeftRadius:_t,borderTopRightRadius:_t,borderBottomRightRadius:_t,borderBottomLeftRadius:_t,width:_t,maxWidth:_t,height:_t,maxHeight:_t,top:_t,right:_t,bottom:_t,left:_t,padding:_t,paddingTop:_t,paddingRight:_t,paddingBottom:_t,paddingLeft:_t,margin:_t,marginTop:_t,marginRight:_t,marginBottom:_t,marginLeft:_t,backgroundPositionX:_t,backgroundPositionY:_t,...OIe,zIndex:$X,fillOpacity:My,strokeOpacity:My,numOctaves:$X},LIe={...nC,color:Sn,backgroundColor:Sn,outlineColor:Sn,fill:Sn,stroke:Sn,borderColor:Sn,borderTopColor:Sn,borderRightColor:Sn,borderBottomColor:Sn,borderLeftColor:Sn,filter:rC,WebkitFilter:rC},RX=e=>LIe[e];function zX(e,r){let n=RX(e);return n!==rC&&(n=zd),n.getAnimatableNone?n.getAnimatableNone(r):void 0}const FIe=new Set(["auto","none","0"]);function VIe(e,r,n){let o=0,a;for(;o{r.getValue(s).set(c)}),this.resolveNoneKeyframes()}}function TX(e,r,n){if(e instanceof EventTarget)return[e];if(typeof e=="string"){let o=document;const a=n?.[e]??o.querySelectorAll(e);return a?Array.from(a):[]}return Array.from(e)}const jX=(e,r)=>r&&typeof e=="number"?r.transform(e):e;function AX(e){return CY(e)&&"offsetHeight"in e}const DX=30,HIe=e=>!isNaN(parseFloat(e));class UIe{constructor(r,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=o=>{const a=la.now();if(this.updatedAt!==a&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(o),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const i of this.dependents)i.dirty()},this.hasAnimated=!1,this.setCurrent(r),this.owner=n.owner}setCurrent(r){this.current=r,this.updatedAt=la.now(),this.canTrackVelocity===null&&r!==void 0&&(this.canTrackVelocity=HIe(this.current))}setPrevFrameValue(r=this.current){this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt}onChange(r){return this.on("change",r)}on(r,n){this.events[r]||(this.events[r]=new EE);const o=this.events[r].add(n);return r==="change"?()=>{o(),Dr.read(()=>{this.events.change.getSize()||this.stop()})}:o}clearListeners(){for(const r in this.events)this.events[r].clear()}attach(r,n){this.passiveEffect=r,this.stopPassiveEffect=n}set(r){this.passiveEffect?this.passiveEffect(r,this.updateAndNotify):this.updateAndNotify(r)}setWithVelocity(r,n,o){this.set(n),this.prev=void 0,this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt-o}jump(r,n=!0){this.updateAndNotify(r),this.prev=r,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(r){this.dependents||(this.dependents=new Set),this.dependents.add(r)}removeDependent(r){this.dependents&&this.dependents.delete(r)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const r=la.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||r-this.updatedAt>DX)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,DX);return RY(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(r){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=r(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function _p(e,r){return new UIe(e,r)}const{schedule:oC}=VY(queueMicrotask,!1),ll={x:!1,y:!1};function MX(){return ll.x||ll.y}function WIe(e){return e==="x"||e==="y"?ll[e]?null:(ll[e]=!0,()=>{ll[e]=!1}):ll.x||ll.y?null:(ll.x=ll.y=!0,()=>{ll.x=ll.y=!1})}function NX(e,r){const n=TX(e),o=new AbortController,a={passive:!0,...r,signal:o.signal};return[n,a,()=>o.abort()]}function PX(e){return!(e.pointerType==="touch"||MX())}function GIe(e,r,n={}){const[o,a,i]=NX(e,n),l=s=>{if(!PX(s))return;const{target:c}=s,d=r(c,s);if(typeof d!="function"||!c)return;const u=p=>{PX(p)&&(d(p),c.removeEventListener("pointerleave",u))};c.addEventListener("pointerleave",u,a)};return o.forEach(s=>{s.addEventListener("pointerenter",l,a)}),i}const BX=(e,r)=>r?e===r?!0:BX(e,r.parentElement):!1,aC=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,YIe=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function XIe(e){return YIe.has(e.tagName)||e.tabIndex!==-1}const W3=new WeakSet;function IX(e){return r=>{r.key==="Enter"&&e(r)}}function iC(e,r){e.dispatchEvent(new PointerEvent("pointer"+r,{isPrimary:!0,bubbles:!0}))}const ZIe=(e,r)=>{const n=e.currentTarget;if(!n)return;const o=IX(()=>{if(W3.has(n))return;iC(n,"down");const a=IX(()=>{iC(n,"up")}),i=()=>iC(n,"cancel");n.addEventListener("keyup",a,r),n.addEventListener("blur",i,r)});n.addEventListener("keydown",o,r),n.addEventListener("blur",()=>n.removeEventListener("keydown",o),r)};function OX(e){return aC(e)&&!MX()}function KIe(e,r,n={}){const[o,a,i]=NX(e,n),l=s=>{const c=s.currentTarget;if(!OX(s))return;W3.add(c);const d=r(c,s),u=(g,v)=>{window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",f),W3.has(c)&&W3.delete(c),OX(g)&&typeof d=="function"&&d(g,{success:v})},p=g=>{u(g,c===window||c===document||n.useGlobalTarget||BX(c,g.target))},f=g=>{u(g,!1)};window.addEventListener("pointerup",p,a),window.addEventListener("pointercancel",f,a)};return o.forEach(s=>{(n.useGlobalTarget?window:s).addEventListener("pointerdown",l,a),AX(s)&&(s.addEventListener("focus",c=>ZIe(c,a)),!XIe(s)&&!s.hasAttribute("tabindex")&&(s.tabIndex=0))}),i}function lC(e){return CY(e)&&"ownerSVGElement"in e}function LX(e){return lC(e)&&e.tagName==="svg"}const to=e=>!!(e&&e.getVelocity),QIe=[...EX,Sn,zd],JIe=e=>QIe.find(SX(e));function sC(e){return typeof e=="object"&&!Array.isArray(e)}function FX(e,r,n,o){return typeof e=="string"&&sC(r)?TX(e,n,o):e instanceof NodeList?Array.from(e):Array.isArray(e)?e:[e]}function eOe(e,r,n){return e*(r+1)}function VX(e,r,n,o){return typeof r=="number"?r:r.startsWith("-")||r.startsWith("+")?Math.max(0,e+parseFloat(r)):r==="<"?n:r.startsWith("<")?Math.max(0,n+parseFloat(r.slice(1))):o.get(r)??e}function tOe(e,r,n){for(let o=0;or&&a.at{const j=lOe($),{delay:I=0,times:P=lX(j),type:L="keyframes",repeat:H,repeatType:M,repeatDelay:V=0,...B}=R;let{ease:F=r.ease||"easeOut",duration:q}=R;const G=typeof I=="function"?I(A,z):I,U=j.length,Y=JE(L)?L:a?.[L||"keyframes"];if(U<=2&&Y){let K=100;if(U===2&&dOe(j)){const te=j[1]-j[0];K=Math.abs(te)}const Q={...B};q!==void 0&&(Q.duration=il(q));const ae=nX(Q,K,Y);F=ae.ease,q=ae.duration}q??(q=i);const Z=p+G;P.length===1&&P[0]===0&&(P[1]=1);const O=P.length-j.length;if(O>0&&iX(P,O),j.length===1&&j.unshift(null),H){q=eOe(q,H);const K=[...j],Q=[...P];F=Array.isArray(F)?[...F]:[F];const ae=[...F];for(let te=0;te{for(const w in g){const x=g[w];x.sort(oOe);const k=[],C=[],_=[];for(let R=0;Rtypeof e=="number",dOe=e=>e.every(cOe),Fy=new WeakMap,cC=e=>Array.isArray(e);function UX(e){const r=[{},{}];return e?.values.forEach((n,o)=>{r[0][o]=n.get(),r[1][o]=n.getVelocity()}),r}function dC(e,r,n,o){if(typeof r=="function"){const[a,i]=UX(o);r=r(n!==void 0?n:e.custom,a,i)}if(typeof r=="string"&&(r=e.variants&&e.variants[r]),typeof r=="function"){const[a,i]=UX(o);r=r(n!==void 0?n:e.custom,a,i)}return r}function tm(e,r,n){const o=e.getProps();return dC(o,r,n!==void 0?n:o.custom,e)}function uOe(e,r,n){e.hasValue(r)?e.getValue(r).set(n):e.addValue(r,_p(n))}function pOe(e){return cC(e)?e[e.length-1]||0:e}function hOe(e,r){const n=tm(e,r);let{transitionEnd:o={},transition:a={},...i}=n||{};i={...i,...o};for(const l in i){const s=pOe(i[l]);uOe(e,l,s)}}function fOe(e){return!!(to(e)&&e.add)}function uC(e,r){const n=e.getValue("willChange");if(fOe(n))return n.add(r);if(!n&&ac.WillChange){const o=new ac.WillChange("auto");e.addValue("willChange",o),o.add(r)}}const pC=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),mOe="framerAppearId",WX="data-"+pC(mOe);function GX(e){return e.props[WX]}const gOe=e=>e!==null;function yOe(e,{repeat:r,repeatType:n="loop"},o){const a=e.filter(gOe),i=r&&n!=="loop"&&r%2===1?0:a.length-1;return a[i]}const vOe={type:"spring",stiffness:500,damping:25,restSpeed:10},bOe=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),xOe={type:"keyframes",duration:.8},wOe={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},kOe=(e,{keyframes:r})=>r.length>2?xOe:em.has(e)?e.startsWith("scale")?bOe(r[1]):vOe:wOe;function _Oe({when:e,delay:r,delayChildren:n,staggerChildren:o,staggerDirection:a,repeat:i,repeatType:l,repeatDelay:s,from:c,elapsed:d,...u}){return!!Object.keys(u).length}const hC=(e,r,n,o={},a,i)=>l=>{const s=tC(o,e)||{},c=s.delay||o.delay||0;let{elapsed:d=0}=o;d=d-il(c);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:r.getVelocity(),...s,delay:-d,onUpdate:f=>{r.set(f),s.onUpdate&&s.onUpdate(f)},onComplete:()=>{l(),s.onComplete&&s.onComplete()},name:e,motionValue:r,element:i?void 0:a};_Oe(s)||Object.assign(u,kOe(e,u)),u.duration&&(u.duration=il(u.duration)),u.repeatDelay&&(u.repeatDelay=il(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let p=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(eC(u),u.delay===0&&(p=!0)),(ac.instantAnimations||ac.skipAnimations)&&(p=!0,eC(u),u.delay=0),u.allowFlatten=!s.type&&!s.ease,p&&!i&&r.get()!==void 0){const f=yOe(u.keyframes,s);if(f!==void 0){Dr.update(()=>{u.onUpdate(f),u.onComplete()});return}}return s.isSync?new HE(u):new zIe(u)};function SOe({protectedKeys:e,needsAnimating:r},n){const o=e.hasOwnProperty(n)&&r[n]!==!0;return r[n]=!1,o}function fC(e,r,{delay:n=0,transitionOverride:o,type:a}={}){let{transition:i=e.getDefaultTransition(),transitionEnd:l,...s}=r;o&&(i=o);const c=[],d=a&&e.animationState&&e.animationState.getState()[a];for(const u in s){const p=e.getValue(u,e.latestValues[u]??null),f=s[u];if(f===void 0||d&&SOe(d,u))continue;const g={delay:n,...tC(i||{},u)},v=p.get();if(v!==void 0&&!p.isAnimating&&!Array.isArray(f)&&f===v&&!g.velocity)continue;let w=!1;if(window.MotionHandoffAnimation){const k=GX(e);if(k){const C=window.MotionHandoffAnimation(k,u,Dr);C!==null&&(g.startTime=C,w=!0)}}uC(e,u),p.start(hC(u,p,f,e.shouldReduceMotion&&_X.has(u)?{type:!1}:g,e,w));const x=p.animation;x&&c.push(x)}return l&&Promise.all(c).then(()=>{Dr.update(()=>{l&&hOe(e,l)})}),c}function YX({top:e,left:r,right:n,bottom:o}){return{x:{min:r,max:n},y:{min:e,max:o}}}function EOe({x:e,y:r}){return{top:r.min,right:e.max,bottom:r.max,left:e.min}}function COe(e,r){if(!r)return e;const n=r({x:e.left,y:e.top}),o=r({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:o.y,right:o.x}}function mC(e){return e===void 0||e===1}function gC({scale:e,scaleX:r,scaleY:n}){return!mC(e)||!mC(r)||!mC(n)}function Sp(e){return gC(e)||XX(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function XX(e){return ZX(e.x)||ZX(e.y)}function ZX(e){return e&&e!=="0%"}function G3(e,r,n){const o=e-n,a=r*o;return n+a}function KX(e,r,n,o,a){return a!==void 0&&(e=G3(e,a,o)),G3(e,n,o)+r}function yC(e,r=0,n=1,o,a){e.min=KX(e.min,r,n,o,a),e.max=KX(e.max,r,n,o,a)}function QX(e,{x:r,y:n}){yC(e.x,r.translate,r.scale,r.originPoint),yC(e.y,n.translate,n.scale,n.originPoint)}const JX=.999999999999,eZ=1.0000000000001;function $Oe(e,r,n,o=!1){const a=n.length;if(!a)return;r.x=r.y=1;let i,l;for(let s=0;sJX&&(r.x=1),r.yJX&&(r.y=1)}function rm(e,r){e.min=e.min+r,e.max=e.max+r}function tZ(e,r,n,o,a=.5){const i=Lr(e.min,e.max,a);yC(e,r,n,i,o)}function nm(e,r){tZ(e.x,r.x,r.scaleX,r.scale,r.originX),tZ(e.y,r.y,r.scaleY,r.scale,r.originY)}function rZ(e,r){return YX(COe(e.getBoundingClientRect(),r))}function ROe(e,r,n){const o=rZ(e,n),{scroll:a}=r;return a&&(rm(o.x,a.offset.x),rm(o.y,a.offset.y)),o}const nZ={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},om={};for(const e in nZ)om[e]={isEnabled:r=>nZ[e].some(n=>!!r[n])};const oZ=()=>({translate:0,scale:1,origin:0,originPoint:0}),am=()=>({x:oZ(),y:oZ()}),aZ=()=>({min:0,max:0}),En=()=>({x:aZ(),y:aZ()}),vC=typeof window<"u",Y3={current:null},bC={current:!1};function iZ(){if(bC.current=!0,!!vC)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),r=()=>Y3.current=e.matches;e.addEventListener("change",r),r()}else Y3.current=!1}function X3(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function Vy(e){return typeof e=="string"||Array.isArray(e)}const xC=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],wC=["initial",...xC];function Z3(e){return X3(e.animate)||wC.some(r=>Vy(e[r]))}function lZ(e){return!!(Z3(e)||e.variants)}function zOe(e,r,n){for(const o in r){const a=r[o],i=n[o];if(to(a))e.addValue(o,a);else if(to(i))e.addValue(o,_p(a,{owner:e}));else if(i!==a)if(e.hasValue(o)){const l=e.getValue(o);l.liveStyle===!0?l.jump(a):l.hasAnimated||l.set(a)}else{const l=e.getStaticValue(o);e.addValue(o,_p(l!==void 0?l:a,{owner:e}))}}for(const o in n)r[o]===void 0&&e.removeValue(o);return r}const sZ=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class cZ{scrapeMotionValuesFromProps(r,n,o){return{}}constructor({parent:r,props:n,presenceContext:o,reducedMotionConfig:a,blockInitialAnimation:i,visualState:l},s={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=QE,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const f=la.now();this.renderScheduledAtthis.bindToMotionValue(o,n)),bC.current||iZ(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:Y3.current,this.parent?.addChild(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),$d(this.notifyUpdate),$d(this.render),this.valueSubscriptions.forEach(r=>r()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const r in this.events)this.events[r].clear();for(const r in this.features){const n=this.features[r];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(r){this.children.add(r),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(r)}removeChild(r){this.children.delete(r),this.enteringChildren&&this.enteringChildren.delete(r)}bindToMotionValue(r,n){this.valueSubscriptions.has(r)&&this.valueSubscriptions.get(r)();const o=em.has(r);o&&this.onBindTransform&&this.onBindTransform();const a=n.on("change",l=>{this.latestValues[r]=l,this.props.onUpdate&&Dr.preRender(this.notifyUpdate),o&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let i;window.MotionCheckAppearSync&&(i=window.MotionCheckAppearSync(this,r,n)),this.valueSubscriptions.set(r,()=>{a(),i&&i(),n.owner&&n.stop()})}sortNodePosition(r){return!this.current||!this.sortInstanceNodePosition||this.type!==r.type?0:this.sortInstanceNodePosition(this.current,r.current)}updateFeatures(){let r="animation";for(r in om){const n=om[r];if(!n)continue;const{isEnabled:o,Feature:a}=n;if(!this.features[r]&&a&&o(this.props)&&(this.features[r]=new a(this)),this.features[r]){const i=this.features[r];i.isMounted?i.update():(i.mount(),i.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):En()}getStaticValue(r){return this.latestValues[r]}setStaticValue(r,n){this.latestValues[r]=n}update(r,n){(r.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=r,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let o=0;on.variantChildren.delete(r)}addValue(r,n){const o=this.values.get(r);n!==o&&(o&&this.removeValue(r),this.bindToMotionValue(r,n),this.values.set(r,n),this.latestValues[r]=n.get())}removeValue(r){this.values.delete(r);const n=this.valueSubscriptions.get(r);n&&(n(),this.valueSubscriptions.delete(r)),delete this.latestValues[r],this.removeValueFromRenderState(r,this.renderState)}hasValue(r){return this.values.has(r)}getValue(r,n){if(this.props.values&&this.props.values[r])return this.props.values[r];let o=this.values.get(r);return o===void 0&&n!==void 0&&(o=_p(n===null?void 0:n,{owner:this}),this.addValue(r,o)),o}readValue(r,n){let o=this.latestValues[r]!==void 0||!this.current?this.latestValues[r]:this.getBaseTargetFromProps(this.props,r)??this.readValueFromInstance(this.current,r,this.options);return o!=null&&(typeof o=="string"&&(EY(o)||$Y(o))?o=parseFloat(o):!JIe(o)&&zd.test(n)&&(o=zX(r,n)),this.setBaseTarget(r,to(o)?o.get():o)),to(o)?o.get():o}setBaseTarget(r,n){this.baseTarget[r]=n}getBaseTarget(r){const{initial:n}=this.props;let o;if(typeof n=="string"||typeof n=="object"){const i=dC(this.props,n,this.presenceContext?.custom);i&&(o=i[r])}if(n&&o!==void 0)return o;const a=this.getBaseTargetFromProps(this.props,r);return a!==void 0&&!to(a)?a:this.initialValues[r]!==void 0&&o===void 0?void 0:this.baseTarget[r]}on(r,n){return this.events[r]||(this.events[r]=new EE),this.events[r].add(n)}notify(r,...n){this.events[r]&&this.events[r].notify(...n)}scheduleRenderMicrotask(){oC.render(this.render)}}class dZ extends cZ{constructor(){super(...arguments),this.KeyframeResolver=qIe}sortInstanceNodePosition(r,n){return r.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(r,n){return r.style?r.style[n]:void 0}removeValueFromRenderState(r,{vars:n,style:o}){delete n[r],delete o[r]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:r}=this.props;to(r)&&(this.childSubscription=r.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}const TOe={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},jOe=Jf.length;function AOe(e,r,n){let o="",a=!0;for(let i=0;i{if(!r.target)return e;if(typeof e=="string")if(_t.test(e))e=parseFloat(e);else return e;const n=pZ(e,r.target.x),o=pZ(e,r.target.y);return`${n}% ${o}%`}},DOe={correct:(e,{treeScale:r,projectionDelta:n})=>{const o=e,a=zd.parse(e);if(a.length>5)return o;const i=zd.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)}},_C={borderRadius:{...qy,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:qy,borderTopRightRadius:qy,borderBottomLeftRadius:qy,borderBottomRightRadius:qy,boxShadow:DOe};function hZ(e,{layout:r,layoutId:n}){return em.has(e)||e.startsWith("origin")||(r||n!==void 0)&&(!!_C[e]||e==="opacity")}function SC(e,r,n){const{style:o}=e,a={};for(const i in o)(to(o[i])||r.style&&to(r.style[i])||hZ(i,e)||n?.getValue(i)?.liveStyle!==void 0)&&(a[i]=o[i]);return a}function MOe(e){return window.getComputedStyle(e)}class fZ extends dZ{constructor(){super(...arguments),this.type="html",this.renderInstance=uZ}readValueFromInstance(r,n){if(em.has(n))return this.projection?.isProjecting?GE(n):iIe(r,n);{const o=MOe(r),a=(HY(n)?o.getPropertyValue(n):o[n])||0;return typeof a=="string"?a.trim():a}}measureInstanceViewportBox(r,{transformPagePoint:n}){return rZ(r,n)}build(r,n,o){kC(r,n,o.transformTemplate)}scrapeMotionValuesFromProps(r,n,o){return SC(r,n,o)}}function NOe(e,r){return e in r}class POe extends cZ{constructor(){super(...arguments),this.type="object"}readValueFromInstance(r,n){if(NOe(n,r)){const o=r[n];if(typeof o=="string"||typeof o=="number")return o}}getBaseTargetFromProps(){}removeValueFromRenderState(r,n){delete n.output[r]}measureInstanceViewportBox(){return En()}build(r,n){Object.assign(r.output,n)}renderInstance(r,{output:n}){Object.assign(r,n)}sortInstanceNodePosition(){return 0}}const BOe={offset:"stroke-dashoffset",array:"stroke-dasharray"},IOe={offset:"strokeDashoffset",array:"strokeDasharray"};function OOe(e,r,n=1,o=0,a=!0){e.pathLength=1;const i=a?BOe:IOe;e[i.offset]=_t.transform(-o);const l=_t.transform(r),s=_t.transform(n);e[i.array]=`${l} ${s}`}function mZ(e,{attrX:r,attrY:n,attrScale:o,pathLength:a,pathSpacing:i=1,pathOffset:l=0,...s},c,d,u){if(kC(e,s,d),c){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:p,style:f}=e;p.transform&&(f.transform=p.transform,delete p.transform),(f.transform||p.transformOrigin)&&(f.transformOrigin=p.transformOrigin??"50% 50%",delete p.transformOrigin),f.transform&&(f.transformBox=u?.transformBox??"fill-box",delete p.transformBox),r!==void 0&&(p.x=r),n!==void 0&&(p.y=n),o!==void 0&&(p.scale=o),a!==void 0&&OOe(p,a,i,l,!1)}const gZ=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),yZ=e=>typeof e=="string"&&e.toLowerCase()==="svg";function LOe(e,r,n,o){uZ(e,r,void 0,o);for(const a in r.attrs)e.setAttribute(gZ.has(a)?a:pC(a),r.attrs[a])}function vZ(e,r,n){const o=SC(e,r,n);for(const a in e)if(to(e[a])||to(r[a])){const i=Jf.indexOf(a)!==-1?"attr"+a.charAt(0).toUpperCase()+a.substring(1):a;o[i]=e[a]}return o}class bZ extends dZ{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=En}getBaseTargetFromProps(r,n){return r[n]}readValueFromInstance(r,n){if(em.has(n)){const o=RX(n);return o&&o.default||0}return n=gZ.has(n)?n:pC(n),r.getAttribute(n)}scrapeMotionValuesFromProps(r,n,o){return vZ(r,n,o)}build(r,n,o){mZ(r,n,this.isSVGTag,o.transformTemplate,o.style)}renderInstance(r,n,o,a){LOe(r,n,o,a)}mount(r){this.isSVGTag=yZ(r.tagName),super.mount(r)}}function FOe(e){const r={presenceContext:null,props:{},visualState:{renderState:{transform:{},transformOrigin:{},style:{},vars:{},attrs:{}},latestValues:{}}},n=lC(e)&&!LX(e)?new bZ(r):new fZ(r);n.mount(e),Fy.set(e,n)}function VOe(e){const r={presenceContext:null,props:{},visualState:{renderState:{output:{}},latestValues:{}}},n=new POe(r);n.mount(e),Fy.set(e,n)}function xZ(e,r,n){const o=to(e)?e:_p(e);return o.start(hC("",o,r,n)),o.animation}function qOe(e,r){return to(e)||typeof e=="number"||typeof e=="string"&&!sC(r)}function wZ(e,r,n,o){const a=[];if(qOe(e,r))a.push(xZ(e,sC(r)&&r.default||r,n&&(n.default||n)));else{const i=FX(e,r,o),l=i.length;for(let s=0;s{o.push(...wZ(l,a,i))}),o}function UOe(e){return Array.isArray(e)&&e.some(Array.isArray)}function WOe(e){function r(n,o,a){let i=[],l;if(UOe(n))i=HOe(n,o,e);else{const{onComplete:c,...d}=a||{};typeof c=="function"&&(l=c),i=wZ(n,o,d,e)}const s=new jIe(i);return l&&s.finished.then(l),s}return r}const GOe=WOe();function YOe(e,r){const n=la.now(),o=({timestamp:a})=>{const i=a-n;i>=r&&($d(o),e(i-r))};return Dr.setup(o,!0),()=>$d(o)}const kZ=(e,r)=>Math.abs(e-r);function XOe(e,r){const n=kZ(e.x,r.x),o=kZ(e.y,r.y);return Math.sqrt(n**2+o**2)}const Hy=S.createContext({});function im(e){const r=S.useRef(null);return r.current===null&&(r.current=e()),r.current}const EC=vC?S.useLayoutEffect:S.useEffect,K3=S.createContext(null),Ep=S.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function _Z(e,r){if(typeof e=="function")return e(r);e!=null&&(e.current=r)}function ZOe(...e){return r=>{let n=!1;const o=e.map(a=>{const i=_Z(a,r);return!n&&typeof i=="function"&&(n=!0),i});if(n)return()=>{for(let a=0;a{const{width:d,height:u,top:p,left:f,right:g}=l.current;if(r||!i.current||!d||!u)return;const v=n==="left"?`left: ${f}`:`right: ${g}`;i.current.dataset.motionPopId=a;const w=document.createElement("style");s&&(w.nonce=s);const x=o??document.head;return x.appendChild(w),w.sheet&&w.sheet.insertRule(` [data-motion-pop-id="${a}"] { position: absolute !important; width: ${d}px !important; @@ -116,7 +116,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(QOe,{isPresent:r,childRef:i,sizeRef:l,children:S.cloneElement(e,{ref:c})})}const eLe=({children:e,initial:r,isPresent:n,onExitComplete:o,custom:a,presenceAffectsLayout:i,mode:l,anchorX:s,root:c})=>{const d=im(tLe),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(JOe,{isPresent:n,anchorX:s,root:c,children:e})),y.jsx(K3.Provider,{value:f,children:e})};function tLe(){return new Map}function SZ(e=!0){const r=S.useContext(K3);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 Q3=e=>e.key||"";function EZ(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]=SZ(l),p=S.useMemo(()=>EZ(e),[e]),f=l&&!d?[]:p.map(Q3),g=S.useRef(!0),v=S.useRef(p),w=im(()=>new Map),[x,k]=S.useState(p),[C,_]=S.useState(p);EC(()=>{g.current=!1,v.current=p;for(let T=0;T{const A=Q3(T),R=l&&!d?!1:p===C||f.includes(A),j=()=>{if(w.has(A))w.set(A,!0);else return;let I=!0;w.forEach(P=>{P||(I=!1)}),I&&(z?.(),_(v.current),l&&u?.(),o&&o())};return y.jsx(eLe,{isPresent:R,initial:!g.current||n?void 0:!1,custom:r,presenceAffectsLayout:a,mode:i,root:c,onExitComplete:R?void 0:j,anchorX:s,children:T},A)})})},rLe=S.createContext(null);function nLe(){const e=S.useRef(!1);return EC(()=>(e.current=!0,()=>{e.current=!1}),[]),e}function oLe(){const e=nLe(),[r,n]=S.useState(0),o=S.useCallback(()=>{e.current&&n(r+1)},[r]);return[S.useCallback(()=>Dr.postRender(o),[o]),r]}const aLe=e=>!e.isLayoutDirty&&e.willUpdate(!1);function iLe(){const e=new Set,r=new WeakMap,n=()=>e.forEach(aLe);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 CZ=e=>e===!0,lLe=e=>CZ(e===!0)||e==="id",lm=({children:e,id:r,inherit:n=!0})=>{const o=S.useContext(Hy),a=S.useContext(rLe),[i,l]=oLe(),s=S.useRef(null),c=o.id||a;s.current===null&&(lLe(n)&&c&&(r=r?c+"-"+r:c),s.current={id:r,group:CZ(n)&&o.group||iLe()});const d=S.useMemo(()=>({...s.current,forceRender:i}),[l]);return y.jsx(Hy.Provider,{value:d,children:e})},CC=S.createContext({strict:!1});function $C(e){for(const r in e)om[r]={...om[r],...e[r]}}function sLe({children:e,features:r,strict:n=!1}){const[,o]=S.useState(!zC(r)),a=S.useRef(void 0);if(!zC(r)){const{renderer:i,...l}=r;a.current=i,$C(l)}return S.useEffect(()=>{zC(r)&&r().then(({renderer:i,...l})=>{$C(l),a.current=i,o(!0)})},[]),y.jsx(CC.Provider,{value:{renderer:a.current,strict:n},children:e})}function zC(e){return typeof e=="function"}const cLe=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function J3(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||cLe.has(e)}let $Z=e=>!J3(e);function zZ(e){typeof e=="function"&&($Z=r=>r.startsWith("on")?!J3(r):e(r))}try{zZ(require("@emotion/is-prop-valid").default)}catch{}function dLe(e,r,n){const o={};for(const a in e)a==="values"&&typeof e.values=="object"||($Z(a)||n===!0&&J3(a)||!r&&!J3(a)||e.draggable&&a.startsWith("onDrag"))&&(o[a]=e[a]);return o}function uLe({children:e,isValidProp:r,...n}){r&&zZ(r),n={...S.useContext(Ep),...n},n.isStatic=im(()=>n.isStatic);const o=S.useMemo(()=>n,[JSON.stringify(n.transition),n.transformPagePoint,n.reducedMotion]);return y.jsx(Ep.Provider,{value:o,children:e})}const e2=S.createContext({});function pLe(e,r){if(Z3(e)){const{initial:n,animate:o}=e;return{initial:n===!1||Vy(n)?n:void 0,animate:Vy(o)?o:void 0}}return e.inherit!==!1?r:{}}function hLe(e){const{initial:r,animate:n}=pLe(e,S.useContext(e2));return S.useMemo(()=>({initial:r,animate:n}),[RZ(r),RZ(n)])}function RZ(e){return Array.isArray(e)?e.join(" "):e}const RC=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function TZ(e,r,n){for(const o in r)!to(r[o])&&!hZ(o,n)&&(e[o]=r[o])}function fLe({transformTemplate:e},r){return S.useMemo(()=>{const n=RC();return kC(n,r,e),Object.assign({},n.vars,n.style)},[r])}function mLe(e,r){const n=e.style||{},o={};return TZ(o,n,e),Object.assign(o,fLe(e,r)),o}function gLe(e,r){const n={},o=mLe(e,r);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,o.userSelect=o.WebkitUserSelect=o.WebkitTouchCallout="none",o.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=o,n}const jZ=()=>({...RC(),attrs:{}});function yLe(e,r,n,o){const a=S.useMemo(()=>{const i=jZ();return mZ(i,r,yZ(o),e.transformTemplate,e.style),{...i.attrs,style:{...i.style}}},[r]);if(e.style){const i={};TZ(i,e.style,e),a.style={...i,...a.style}}return a}const vLe=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function TC(e){return typeof e!="string"||e.includes("-")?!1:!!(vLe.indexOf(e)>-1||/[A-Z]/u.test(e))}function bLe(e,r,n,{latestValues:o},a,i=!1){const l=(TC(e)?yLe:gLe)(r,o,a,e),s=dLe(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 t2(e){return to(e)?e.get():e}function xLe({scrapeMotionValuesFromProps:e,createRenderState:r},n,o,a){return{latestValues:wLe(n,o,a,e),renderState:r()}}function wLe(e,r,n,o){const a={},i=o(e,{});for(const f in i)a[f]=t2(i[f]);let{initial:l,animate:s}=e;const c=Z3(e),d=lZ(e);r&&d&&!c&&e.inherit!==!1&&(l===void 0&&(l=r.initial),s===void 0&&(s=r.animate));let u=n?n.initial===!1:!1;u=u||l===!1;const p=u?s:l;if(p&&typeof p!="boolean"&&!X3(p)){const f=Array.isArray(p)?p:[p];for(let g=0;g(r,n)=>{const o=S.useContext(e2),a=S.useContext(K3),i=()=>xLe(e,r,o,a);return n?i():im(i)},kLe=AZ({scrapeMotionValuesFromProps:SC,createRenderState:RC}),_Le=AZ({scrapeMotionValuesFromProps:vZ,createRenderState:jZ}),SLe=Symbol.for("motionComponentSymbol");function sm(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function ELe(e,r,n){return S.useCallback(o=>{o&&e.onMount&&e.onMount(o),r&&(o?r.mount(o):r.unmount()),n&&(typeof n=="function"?n(o):sm(n)&&(n.current=o))},[r])}const DZ=S.createContext({});function CLe(e,r,n,o,a){const{visualElement:i}=S.useContext(e2),l=S.useContext(CC),s=S.useContext(K3),c=S.useContext(Ep).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(DZ);u&&!u.projection&&a&&(u.type==="html"||u.type==="svg")&&$Le(d.current,n,a,p);const f=S.useRef(!1);S.useInsertionEffect(()=>{u&&f.current&&u.update(n,s)});const g=n[WX],v=S.useRef(!!g&&!window.MotionHandoffIsComplete?.(g)&&window.MotionHasOptimisedAnimation?.(g));return EC(()=>{u&&(f.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),u.scheduleRenderMicrotask(),v.current&&u.animationState&&u.animationState.animateChanges())}),S.useEffect(()=>{u&&(!v.current&&u.animationState&&u.animationState.animateChanges(),v.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(g)}),v.current=!1),u.enteringChildren=void 0)}),u}function $Le(e,r,n,o){const{layoutId: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:MZ(e.parent)),e.projection.setOptions({layoutId:a,layout:i,alwaysMeasureLayout:!!l||s&&sm(s),visualElement:e,animationType:typeof i=="string"?i:"both",initialPromotionConfig:o,crossfade:u,layoutScroll:c,layoutRoot:d})}function MZ(e){if(e)return e.options.allowProjection!==!1?e.projection:MZ(e.parent)}function r2(e,{forwardMotionProps:r=!1}={},n,o){n&&$C(n);const a=TC(e)?_Le:kLe;function i(s,c){let d;const u={...S.useContext(Ep),...s,layoutId:zLe(s)},{isStatic:p}=u,f=hLe(s),g=a(s,p);if(!p&&vC){RLe();const v=TLe(u);d=v.MeasureLayout,f.visualElement=CLe(e,g,u,o,v.ProjectionNode)}return y.jsxs(e2.Provider,{value:f,children:[d&&f.visualElement?y.jsx(d,{visualElement:f.visualElement,...u}):null,bLe(e,s,ELe(g,f.visualElement,c),g,p,r)]})}i.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const l=S.forwardRef(i);return l[SLe]=e,l}function zLe({layoutId:e}){const r=S.useContext(Hy).id;return r&&e!==void 0?r+"-"+e:e}function RLe(e,r){S.useContext(CC).strict}function TLe(e){const{drag:r,layout:n}=om;if(!r&&!n)return{};const o={...r,...n};return{MeasureLayout:r?.isEnabled(e)||n?.isEnabled(e)?o.MeasureLayout:void 0,ProjectionNode:o.ProjectionNode}}function jLe(e,r){if(typeof Proxy>"u")return r2;const n=new Map,o=(i,l)=>r2(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,r2(l,void 0,e,r)),n.get(l))})}const mi=jLe(),ALe=(e,r)=>TC(e)?new bZ(r):new fZ(r,{allowProjection:e!==S.Fragment});function NZ(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 jC(e,r,n={}){const o=tm(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(fC(e,o,n)):()=>Promise.resolve(),l=e.variantChildren&&e.variantChildren.size?(c=0)=>{const{delayChildren:d=0,staggerChildren:u,staggerDirection:p}=a;return DLe(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 DLe(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(jC(c,r,{...l,delay:n+(typeof o=="function"?0:o)+NZ(e.variantChildren,c,o,a,i)}).then(()=>c.notify("AnimationComplete",r)));return Promise.all(s)}function MLe(e,r,n={}){e.notify("AnimationStart",r);let o;if(Array.isArray(r)){const a=r.map(i=>jC(e,i,n));o=Promise.all(a)}else if(typeof r=="string")o=jC(e,r,n);else{const a=typeof r=="function"?tm(e,r,n.custom):r;o=Promise.all(fC(e,a,n))}return o.then(()=>{e.notify("AnimationComplete",r)})}function PZ(e,r){if(!Array.isArray(r))return!1;const n=r.length;if(n!==e.length)return!1;for(let o=0;oPromise.all(r.map(({animation:n,options:o})=>MLe(e,n,o)))}function OLe(e){let r=ILe(e),n=IZ(),o=!0;const a=c=>(d,u)=>{const p=tm(e,u,c==="exit"?e.presenceContext?.custom:void 0);if(p){const{transition:f,transitionEnd:g,...v}=p;d={...d,...v,...g}}return d};function i(c){r=c(e)}function l(c){const{props:d}=e,u=BZ(e.parent)||{},p=[],f=new Set;let g={},v=1/0;for(let x=0;xv&&$,j=!1;const I=Array.isArray(_)?_:[_];let P=I.reduce(a(k),{});z===!1&&(P={});const{prevResolvedValues:L={}}=C,H={...L,...P},M=B=>{R=!0,f.has(B)&&(j=!0,f.delete(B)),C.needsAnimating[B]=!0;const F=e.getValue(B);F&&(F.liveStyle=!1)};for(const B in H){const F=P[B],q=L[B];if(g.hasOwnProperty(B))continue;let G=!1;cC(F)&&cC(q)?G=!PZ(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=T&&A;R&&(!V||j)&&p.push(...I.map(B=>{const F={type:k};if(typeof B=="string"&&o&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:q}=e,G=tm(q,B);if(q.enteringChildren&&G){const{delayChildren:U}=G.transition||{};F.delay=NZ(q.enteringChildren,e,U)}}return{animation:B,options:F}}))}if(f.size){const x={};if(typeof d.initial!="boolean"){const k=tm(e,Array.isArray(d.initial)?d.initial[0]:d.initial);k&&k.transition&&(x.transition=k.transition)}f.forEach(k=>{const C=e.getBaseTarget(k),_=e.getValue(k);_&&(_.liveStyle=!0),x[k]=C??null}),p.push({animation:x})}let w=!!p.length;return o&&(d.initial===!1||d.initial===d.animate)&&!e.manuallyAnimateOnMount&&(w=!1),o=!1,w?r(p):Promise.resolve()}function s(c,d){if(n[c].isActive===d)return Promise.resolve();e.variantChildren?.forEach(p=>p.animationState?.setActive(c,d)),n[c].isActive=d;const u=l(c);for(const p in n)n[p].protectedKeys={};return u}return{animateChanges:l,setActive:s,setAnimateFunction:i,getState:()=>n,reset:()=>{n=IZ()}}}function LLe(e,r){return typeof r=="string"?r!==e:Array.isArray(r)?!PZ(r,e):!1}function Cp(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function IZ(){return{animate:Cp(!0),whileInView:Cp(),whileHover:Cp(),whileTap:Cp(),whileDrag:Cp(),whileFocus:Cp(),exit:Cp()}}class Td{constructor(r){this.isMounted=!1,this.node=r}update(){}}class FLe extends Td{constructor(r){super(r),r.animationState||(r.animationState=OLe(r))}updateAnimationControlsSubscription(){const{animate:r}=this.node.getProps();X3(r)&&(this.unmountControls=r.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:r}=this.node.getProps(),{animate:n}=this.node.prevProps||{};r!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let VLe=0;class qLe extends Td{constructor(){super(...arguments),this.id=VLe++}update(){if(!this.node.presenceContext)return;const{isPresent:r,onExitComplete:n}=this.node.presenceContext,{isPresent:o}=this.node.prevPresenceContext||{};if(!this.node.animationState||r===o)return;const 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 HLe={animation:{Feature:FLe},exit:{Feature:qLe}};function Uy(e,r,n,o={passive:!0}){return e.addEventListener(r,n,o),()=>e.removeEventListener(r,n)}function Wy(e){return{point:{x:e.pageX,y:e.pageY}}}const ULe=e=>r=>aC(r)&&e(r,Wy(r));function Gy(e,r,n,o){return Uy(e,r,ULe(n),o)}const OZ=1e-4,WLe=1-OZ,GLe=1+OZ,LZ=.01,YLe=0-LZ,XLe=0+LZ;function Vo(e){return e.max-e.min}function ZLe(e,r,n){return Math.abs(e-r)<=n}function FZ(e,r,n,o=.5){e.origin=o,e.originPoint=Lr(r.min,r.max,e.origin),e.scale=Vo(n)/Vo(r),e.translate=Lr(n.min,n.max,e.origin)-e.originPoint,(e.scale>=WLe&&e.scale<=GLe||isNaN(e.scale))&&(e.scale=1),(e.translate>=YLe&&e.translate<=XLe||isNaN(e.translate))&&(e.translate=0)}function Yy(e,r,n,o){FZ(e.x,r.x,n.x,o?o.originX:void 0),FZ(e.y,r.y,n.y,o?o.originY:void 0)}function VZ(e,r,n){e.min=n.min+r.min,e.max=e.min+Vo(r)}function KLe(e,r,n){VZ(e.x,r.x,n.x),VZ(e.y,r.y,n.y)}function qZ(e,r,n){e.min=r.min-n.min,e.max=e.min+Vo(r)}function n2(e,r,n){qZ(e.x,r.x,n.x),qZ(e.y,r.y,n.y)}function gi(e){return[e("x"),e("y")]}const HZ=({current:e})=>e?e.ownerDocument.defaultView:null;class UZ{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=DC(this.lastMoveEventInfo,this.history),g=this.startEvent!==null,v=XOe(f.offset,{x:0,y:0})>=this.distanceThreshold;if(!g&&!v)return;const{point:w}=f,{timestamp:x}=so;this.history.push({...w,timestamp:x});const{onStart:k,onMove:C}=this.handlers;g||(k&&k(this.lastMoveEvent,f),this.startEvent=this.lastMoveEvent),C&&C(this.lastMoveEvent,f)},this.handlePointerMove=(f,g)=>{this.lastMoveEvent=f,this.lastMoveEventInfo=AC(g,this.transformPagePoint),Dr.update(this.updatePoint,!0)},this.handlePointerUp=(f,g)=>{this.end();const{onEnd:v,onSessionEnd:w,resumeAnimation:x}=this.handlers;if(this.dragSnapToOrigin&&x&&x(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const k=DC(f.type==="pointercancel"?this.lastMoveEventInfo:AC(g,this.transformPagePoint),this.history);this.startEvent&&v&&v(f,k),w&&w(f,k)},!aC(r))return;this.dragSnapToOrigin=i,this.handlers=n,this.transformPagePoint=o,this.distanceThreshold=l,this.contextWindow=a||window;const s=Wy(r),c=AC(s,this.transformPagePoint),{point:d}=c,{timestamp:u}=so;this.history=[{...d,timestamp:u}];const{onSessionStart:p}=n;p&&p(r,DC(c,this.history)),this.removeListeners=Ay(Gy(this.contextWindow,"pointermove",this.handlePointerMove),Gy(this.contextWindow,"pointerup",this.handlePointerUp),Gy(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(r){this.handlers=r}end(){this.removeListeners&&this.removeListeners(),$d(this.updatePoint)}}function AC(e,r){return r?{point:r(e.point)}:e}function WZ(e,r){return{x:e.x-r.x,y:e.y-r.y}}function DC({point:e},r){return{point:e,delta:WZ(e,GZ(r)),offset:WZ(e,QLe(r)),velocity:JLe(r,.1)}}function QLe(e){return e[0]}function GZ(e){return e[e.length-1]}function JLe(e,r){if(e.length<2)return{x:0,y:0};let n=e.length-1,o=null;const a=GZ(e);for(;n>=0&&(o=e[n],!(a.timestamp-o.timestamp>il(r)));)n--;if(!o)return{x:0,y:0};const i=fi(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 eFe(e,{min:r,max:n},o){return r!==void 0&&en&&(e=o?Lr(n,e,o.max):Math.min(e,n)),e}function YZ(e,r,n){return{min:r!==void 0?e.min+r:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function tFe(e,{top:r,left:n,bottom:o,right:a}){return{x:YZ(e.x,n,a),y:YZ(e.y,r,o)}}function XZ(e,r){let n=r.min-e.min,o=r.max-e.max;return r.max-r.mino?n=Zf(r.min,r.max-o,e.min):o>a&&(n=Zf(e.min,e.max-a,r.min)),oc(0,1,n)}function oFe(e,r){const n={};return r.min!==void 0&&(n.min=r.min-e.min),r.max!==void 0&&(n.max=r.max-e.min),n}const MC=.35;function aFe(e=MC){return e===!1?e=0:e===!0&&(e=MC),{x:ZZ(e,"left","right"),y:ZZ(e,"top","bottom")}}function ZZ(e,r,n){return{min:KZ(e,r),max:KZ(e,n)}}function KZ(e,r){return typeof e=="number"?e:e[r]||0}const iFe=new WeakMap;class lFe{constructor(r){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=En(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=r}start(r,{snapToCursor:n=!1,distanceThreshold:o}={}){const{presenceContext: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(Wy(p).point)},l=(p,f)=>{const{drag:g,dragPropagation:v,onDragStart:w}=this.getProps();if(g&&!v&&(this.openDragLock&&this.openDragLock(),this.openDragLock=WIe(g),!this.openDragLock))return;this.latestPointerEvent=p,this.latestPanInfo=f,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),gi(k=>{let C=this.getAxisMotionValue(k).get()||0;if(os.test(C)){const{projection:_}=this.visualElement;if(_&&_.layout){const $=_.layout.layoutBox[k];$&&(C=Vo($)*(parseFloat(C)/100))}}this.originPoint[k]=C}),w&&Dr.postRender(()=>w(p,f)),uC(this.visualElement,"transform");const{animationState:x}=this.visualElement;x&&x.setActive("whileDrag",!0)},s=(p,f)=>{this.latestPointerEvent=p,this.latestPanInfo=f;const{dragPropagation:g,dragDirectionLock:v,onDirectionLock:w,onDrag:x}=this.getProps();if(!g&&!this.openDragLock)return;const{offset:k}=f;if(v&&this.currentDirection===null){this.currentDirection=sFe(k),this.currentDirection!==null&&w&&w(this.currentDirection);return}this.updateAxis("x",f.point,k),this.updateAxis("y",f.point,k),this.visualElement.render(),x&&x(p,f)},c=(p,f)=>{this.latestPointerEvent=p,this.latestPanInfo=f,this.stop(p,f),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>gi(p=>this.getAnimationState(p)==="paused"&&this.getAxisMotionValue(p).animation?.play()),{dragSnapToOrigin:u}=this.getProps();this.panSession=new UZ(r,{onSessionStart:i,onStart:l,onMove:s,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:o,contextWindow:HZ(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||!o2(r,a,this.currentDirection))return;const i=this.getAxisMotionValue(r);let l=this.originPoint[r]+o[r];this.constraints&&this.constraints[r]&&(l=eFe(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&&sm(r)?this.constraints||(this.constraints=this.resolveRefConstraints()):r&&o?this.constraints=tFe(o.layoutBox,r):this.constraints=!1,this.elastic=aFe(n),a!==this.constraints&&o&&this.constraints&&!this.hasMutatedConstraints&&gi(i=>{this.constraints!==!1&&this.getAxisMotionValue(i)&&(this.constraints[i]=oFe(o.layoutBox[i],this.constraints[i]))})}resolveRefConstraints(){const{dragConstraints:r,onMeasureDragConstraints:n}=this.getProps();if(!r||!sm(r))return!1;const o=r.current,{projection:a}=this.visualElement;if(!a||!a.layout)return!1;const i=zOe(o,a.root,this.visualElement.getTransformPagePoint());let l=rFe(a.layout.layoutBox,i);if(n){const s=n(EOe(l));this.hasMutatedConstraints=!!s,s&&(l=YX(s))}return l}startAnimation(r){const{drag:n,dragMomentum:o,dragElastic:a,dragTransition:i,dragSnapToOrigin:l,onDragTransitionEnd:s}=this.getProps(),c=this.constraints||{},d=gi(u=>{if(!o2(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 uC(this.visualElement,r),o.start(hC(r,o,0,n,this.visualElement,!1))}stopAnimation(){gi(r=>this.getAxisMotionValue(r).stop())}pauseAnimation(){gi(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){gi(n=>{const{drag:o}=this.getProps();if(!o2(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(!sm(n)||!o||!this.constraints)return;this.stopAnimation();const a={x:0,y:0};gi(l=>{const s=this.getAxisMotionValue(l);if(s&&this.constraints!==!1){const c=s.get();a[l]=nFe({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(),gi(l=>{if(!o2(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;iFe.set(this.visualElement,this);const r=this.visualElement.current,n=Gy(r,"pointerdown",c=>{const{drag:d,dragListener:u=!0}=this.getProps();d&&u&&this.start(c)}),o=()=>{const{dragConstraints:c}=this.getProps();sm(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:a}=this.visualElement,i=a.addEventListener("measure",o);a&&!a.layout&&(a.root&&a.root.updateScroll(),a.updateLayout()),Dr.read(o);const l=Uy(window,"resize",()=>this.scalePositionWithinConstraints()),s=a.addEventListener("didUpdate",(({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(gi(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=MC,dragMomentum:s=!0}=r;return{...r,drag:n,dragDirectionLock:o,dragPropagation:a,dragConstraints:i,dragElastic:l,dragMomentum:s}}}function o2(e,r,n){return(r===!0||r===e)&&(n===null||n===e)}function sFe(e,r=10){let n=null;return Math.abs(e.y)>r?n="y":Math.abs(e.x)>r&&(n="x"),n}class cFe extends Td{constructor(r){super(r),this.removeGroupControls=hi,this.removeListeners=hi,this.controls=new lFe(r)}mount(){const{dragControls:r}=this.node.getProps();r&&(this.removeGroupControls=r.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||hi}unmount(){this.removeGroupControls(),this.removeListeners()}}const QZ=e=>(r,n)=>{e&&Dr.postRender(()=>e(r,n))};class dFe extends Td{constructor(){super(...arguments),this.removePointerDownListener=hi}onPointerDown(r){this.session=new UZ(r,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:HZ(this.node)})}createPanHandlers(){const{onPanSessionStart:r,onPanStart:n,onPan:o,onPanEnd:a}=this.node.getProps();return{onSessionStart:QZ(r),onStart:QZ(n),onMove:o,onEnd:(i,l)=>{delete this.session,a&&Dr.postRender(()=>a(i,l))}}}mount(){this.removePointerDownListener=Gy(this.node.current,"pointerdown",r=>this.onPointerDown(r))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const a2={hasAnimatedSinceResize:!0,hasEverUpdated:!1};let NC=!1;class uFe extends S.Component{componentDidMount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o,layoutId:a}=this.props,{projection:i}=r;i&&(n.group&&n.group.add(i),o&&o.register&&a&&o.register(i),NC&&i.root.didUpdate(),i.addEventListener("animationComplete",()=>{this.safeToRemove()}),i.setOptions({...i.options,onExitComplete:()=>this.safeToRemove()})),a2.hasEverUpdated=!0}getSnapshotBeforeUpdate(r){const{layoutDependency:n,visualElement:o,drag:a,isPresent:i}=this.props,{projection:l}=o;return l&&(l.isPresent=i,NC=!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(),oC.postRender(()=>{!r.currentAnimation&&r.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o}=this.props,{projection:a}=r;NC=!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 JZ(e){const[r,n]=SZ(),o=S.useContext(Hy);return y.jsx(uFe,{...e,layoutGroup:o,switchLayoutGroup:S.useContext(DZ),isPresent:r,safeToRemove:n})}const pFe=(e,r)=>e.depth-r.depth;class hFe{constructor(){this.children=[],this.isDirty=!1}add(r){kE(this.children,r),this.isDirty=!0}remove(r){L3(this.children,r),this.isDirty=!0}forEach(r){this.isDirty&&this.children.sort(pFe),this.isDirty=!1,this.children.forEach(r)}}const eK=["TopLeft","TopRight","BottomLeft","BottomRight"],fFe=eK.length,tK=e=>typeof e=="string"?parseFloat(e):e,rK=e=>typeof e=="number"||_t.test(e);function mFe(e,r,n,o,a,i){a?(e.opacity=Lr(0,n.opacity??1,gFe(o)),e.opacityExit=Lr(r.opacity??1,0,yFe(o))):i&&(e.opacity=Lr(r.opacity??1,n.opacity??1,o));for(let l=0;lor?1:n(Zf(e,r,o))}function aK(e,r){e.min=r.min,e.max=r.max}function sl(e,r){aK(e.x,r.x),aK(e.y,r.y)}function iK(e,r){e.translate=r.translate,e.scale=r.scale,e.originPoint=r.originPoint,e.origin=r.origin}function lK(e,r,n,o,a){return e-=r,e=G3(e,1/n,o),a!==void 0&&(e=G3(e,1/a,o)),e}function vFe(e,r=0,n=1,o=.5,a,i=e,l=e){if(os.test(r)&&(r=parseFloat(r),r=Lr(l.min,l.max,r/100)-l.min),typeof r!="number")return;let s=Lr(i.min,i.max,o);e===i&&(s-=r),e.min=lK(e.min,r,n,s,a),e.max=lK(e.max,r,n,s,a)}function sK(e,r,[n,o,a],i,l){vFe(e,r[n],r[o],r[a],r.scale,i,l)}const bFe=["x","scaleX","originX"],xFe=["y","scaleY","originY"];function cK(e,r,n,o){sK(e.x,r,bFe,n?n.x:void 0,o?o.x:void 0),sK(e.y,r,xFe,n?n.y:void 0,o?o.y:void 0)}function dK(e){return e.translate===0&&e.scale===1}function uK(e){return dK(e.x)&&dK(e.y)}function pK(e,r){return e.min===r.min&&e.max===r.max}function wFe(e,r){return pK(e.x,r.x)&&pK(e.y,r.y)}function hK(e,r){return Math.round(e.min)===Math.round(r.min)&&Math.round(e.max)===Math.round(r.max)}function fK(e,r){return hK(e.x,r.x)&&hK(e.y,r.y)}function mK(e){return Vo(e.x)/Vo(e.y)}function gK(e,r){return e.translate===r.translate&&e.scale===r.scale&&e.originPoint===r.originPoint}class kFe{constructor(){this.members=[]}add(r){kE(this.members,r),r.scheduleRender()}remove(r){if(L3(this.members,r),r===this.prevLead&&(this.prevLead=void 0),r===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(r){const n=this.members.findIndex(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 _Fe(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 PC=["","X","Y","Z"],SFe=1e3;let EFe=0;function BC(e,r,n,o){const{latestValues:a}=r;a[e]&&(n[e]=a[e],r.setStaticValue(e,0),o&&(o[e]=0))}function yK(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:r}=e.options;if(!r)return;const n=GX(r);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:a,layoutId:i}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Dr,!(a||i))}const{parent:o}=e;o&&!o.hasCheckedOptimisedAppear&&yK(o)}function vK({attachResizeListener:e,defaultParent:r,measureScroll:n,checkIsScrollRoot:o,resetTransform:a}){return class{constructor(i={},l=r?.()){this.id=EFe++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(zFe),this.nodes.forEach(AFe),this.nodes.forEach(DFe),this.nodes.forEach(RFe)},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=YOe(p,250),a2.hasAnimatedSinceResize&&(a2.hasAnimatedSinceResize=!1,this.nodes.forEach(wK)))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&c&&(l||s)&&this.addEventListener("didUpdate",({delta:d,hasLayoutChanged:u,hasRelativeLayoutChanged:p,layout:f})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||c.getDefaultTransition()||IFe,{onLayoutAnimationStart:v,onLayoutAnimationComplete:w}=c.getProps(),x=!this.targetLayout||!fK(this.targetLayout,f),k=!u&&p;if(this.options.layoutRoot||this.resumeFrom||k||u&&(x||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const C={...tC(g,"layout"),onPlay:v,onComplete:w};(c.shouldReduceMotion||this.options.layoutRoot)&&(C.delay=0,C.type=!1),this.startAnimation(C),this.setAnimationOrigin(d,k)}else u||wK(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(),$d(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(MFe),this.animationId++)}getTransformTemplate(){const{visualElement: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&&yK(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let d=0;d{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Vo(this.snapshot.measuredBox.x)&&!Vo(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let s=0;s{const $=_/1e3;kK(u.x,i.x,$),kK(u.y,i.y,$),this.setTargetDelta(u),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(n2(p,this.layout.layoutBox,this.relativeParent.layout.layoutBox),PFe(this.relativeTarget,this.relativeTargetOrigin,p,$),C&&wFe(this.relativeTarget,C)&&(this.isProjectionDirty=!1),C||(C=En()),sl(C,this.relativeTarget)),v&&(this.animationValues=d,mFe(d,c,this.latestValues,$,k,x)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=$},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(i){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&($d(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Dr.update(()=>{a2.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=_p(0)),this.currentAnimation=xZ(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(SFe),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&&$K(this.options.animationType,this.layout.layoutBox,c.layoutBox)){s=this.target||En();const u=Vo(this.layout.layoutBox.x);s.x.min=i.target.x.min,s.x.max=s.x.min+u;const p=Vo(this.layout.layoutBox.y);s.y.min=i.target.y.min,s.y.max=s.y.min+p}sl(l,s),nm(l,d),Yy(this.projectionDeltaWithTransform,this.layoutCorrected,l,d)}}registerSharedNode(i,l){this.sharedNodes.has(i)||this.sharedNodes.set(i,new kFe),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&&BC("z",i,c,this.animationValues);for(let d=0;di.currentAnimation?.stop()),this.root.nodes.forEach(bK),this.root.sharedNodes.clear()}}}function CFe(e){e.updateLayout()}function $Fe(e){const r=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&r&&e.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:o}=e.layout,{animationType:a}=e.options,i=r.source!==e.layout.source;a==="size"?gi(u=>{const p=i?r.measuredBox[u]:r.layoutBox[u],f=Vo(p);p.min=n[u].min,p.max=p.min+f}):$K(a,r.layoutBox,n)&&gi(u=>{const p=i?r.measuredBox[u]:r.layoutBox[u],f=Vo(n[u]);p.max=p.min+f,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[u].max=e.relativeTarget[u].min+f)});const l=am();Yy(l,n,r.layoutBox);const s=am();i?Yy(s,e.applyTransform(o,!0),r.measuredBox):Yy(s,n,r.layoutBox);const c=!uK(l);let d=!1;if(!e.resumeFrom){const u=e.getClosestProjectingParent();if(u&&!u.resumeFrom){const{snapshot:p,layout:f}=u;if(p&&f){const g=En();n2(g,r.layoutBox,p.layoutBox);const v=En();n2(v,n,f.layoutBox),fK(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 zFe(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 RFe(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function TFe(e){e.clearSnapshot()}function bK(e){e.clearMeasurements()}function xK(e){e.isLayoutDirty=!1}function jFe(e){const{visualElement:r}=e.options;r&&r.getProps().onBeforeLayoutMeasure&&r.notify("BeforeLayoutMeasure"),e.resetTransform()}function wK(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function AFe(e){e.resolveTargetDelta()}function DFe(e){e.calcProjection()}function MFe(e){e.resetSkewAndRotation()}function NFe(e){e.removeLeadSnapshot()}function kK(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 _K(e,r,n,o){e.min=Lr(r.min,n.min,o),e.max=Lr(r.max,n.max,o)}function PFe(e,r,n,o){_K(e.x,r.x,n.x,o),_K(e.y,r.y,n.y,o)}function BFe(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const IFe={duration:.45,ease:[.4,0,.1,1]},SK=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),EK=SK("applewebkit/")&&!SK("chrome/")?Math.round:hi;function CK(e){e.min=EK(e.min),e.max=EK(e.max)}function OFe(e){CK(e.x),CK(e.y)}function $K(e,r,n){return e==="position"||e==="preserve-aspect"&&!ZLe(mK(r),mK(n),.2)}function LFe(e){return e!==e.root&&e.scroll?.wasRoot}const FFe=vK({attachResizeListener:(e,r)=>Uy(e,"resize",r),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),IC={current:void 0},zK=vK({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!IC.current){const e=new FFe({});e.mount(window),e.setOptions({layoutScroll:!0}),IC.current=e}return IC.current},resetTransform:(e,r)=>{e.style.transform=r!==void 0?r:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),VFe={pan:{Feature:dFe},drag:{Feature:cFe,ProjectionNode:zK,MeasureLayout:JZ}};function RK(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,Wy(r)))}class qFe extends Td{mount(){const{current:r}=this.node;r&&(this.unmount=GIe(r,(n,o)=>(RK(this.node,o,"Start"),a=>RK(this.node,a,"End"))))}unmount(){}}class HFe extends Td{constructor(){super(...arguments),this.isActive=!1}onFocus(){let r=!1;try{r=this.node.current.matches(":focus-visible")}catch{r=!0}!r||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=Ay(Uy(this.node.current,"focus",()=>this.onFocus()),Uy(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function TK(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,Wy(r)))}class UFe extends Td{mount(){const{current:r}=this.node;r&&(this.unmount=KIe(r,(n,o)=>(TK(this.node,o,"Start"),(a,{success:i})=>TK(this.node,a,i?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const OC=new WeakMap,LC=new WeakMap,WFe=e=>{const r=OC.get(e.target);r&&r(e)},GFe=e=>{e.forEach(WFe)};function YFe({root:e,...r}){const n=e||document;LC.has(n)||LC.set(n,{});const o=LC.get(n),a=JSON.stringify(r);return o[a]||(o[a]=new IntersectionObserver(GFe,{root:e,...r})),o[a]}function XFe(e,r,n){const o=YFe(r);return OC.set(e,n),o.observe(e),()=>{OC.delete(e),o.unobserve(e)}}const ZFe={some:0,all:1};class KFe extends Td{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:r={}}=this.node.getProps(),{root:n,margin:o,amount:a="some",once:i}=r,l={root:n?n.current:void 0,rootMargin:o,threshold:typeof a=="number"?a:ZFe[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 XFe(this.node.current,l,s)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:r,prevProps:n}=this.node;["amount","margin","root"].some(QFe(r,n))&&this.startObserver()}unmount(){}}function QFe({viewport:e={}},{viewport:r={}}={}){return n=>e[n]!==r[n]}const JFe={inView:{Feature:KFe},tap:{Feature:UFe},focus:{Feature:HFe},hover:{Feature:qFe}},eVe={layout:{ProjectionNode:zK,MeasureLayout:JZ}},tVe={renderer:ALe,...HLe,...JFe},rVe={...tVe,...VFe,...eVe};function jK(e){const r=im(()=>_p(e)),{isStatic:n}=S.useContext(Ep);if(n){const[,o]=S.useState(e);S.useEffect(()=>r.on("change",o),[])}return r}function nVe(){!bC.current&&iZ();const[e]=S.useState(Y3.current);return e}function AK(){const e=nVe(),{reducedMotion:r}=S.useContext(Ep);return r==="never"?!1:r==="always"?!0:e}class oVe{constructor(){this.componentControls=new Set}subscribe(r){return this.componentControls.add(r),()=>this.componentControls.delete(r)}start(r,n){this.componentControls.forEach(o=>{o.start(r.nativeEvent||r,n)})}cancel(){this.componentControls.forEach(r=>{r.cancel()})}stop(){this.componentControls.forEach(r=>{r.stop()})}}const aVe=()=>new oVe;function iVe(){return im(aVe)}const FC=S.createContext(null);FC.displayName="ElementDetailsActorContext";const lVe=()=>{const e=S.useContext(FC);if(e===null)throw new Error("ElementDetailsActorRef is not provided");return e},yi=(e,r,n)=>{const o=a=>({[e]:"__ignore__",...r,...Vu(a)});return{recipeFn:(a,i=!0)=>{const l=cL({conditions:{shift:fL,finalize:hL,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{toHash:(c,d)=>d(c.join(":")),transform:(c,d)=>(j5e(e,n,a,c),d==="__ignore__"?{className:e}:(d=a7(d),{className:`${e}--${c}_${d}`}))}}),s=o(a);if(i){const c=u7(n,s);return Ge(l(s),fe(c))}return l(s)},getVariantProps:o,__getCompoundVariantCss__:a=>u7(n,o(a))}},as=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;const n=(...i)=>Ge(e(...i),r(...i)),o=c7(e.variantKeys,r.variantKeys),a=o.reduce((i,l)=>(i[l]=c7(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)}})},VC=yi("action-btn",{size:"md",radius:"md",variant:"filled"},[]),DK={variant:["transparent","filled"],size:["sm","md"],radius:["sm","md"]},MK=Object.keys(DK),i2=Object.assign(Zn(VC.recipeFn),{__recipe__:!0,__name__:"actionBtn",__getCompoundVariantCss__:VC.__getCompoundVariantCss__,raw:e=>e,variantKeys:MK,variantMap:DK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,MK)},getVariantProps:VC.getVariantProps}),qC=yi("likec4-compound-node",{},[]),NK={isTransparent:["false","true"],inverseColor:["true","false"],borderStyle:["solid","dashed","dotted","none"]},PK=Object.keys(NK),sVe=Object.assign(Zn(qC.recipeFn),{__recipe__:!0,__name__:"compoundNode",__getCompoundVariantCss__:qC.__getCompoundVariantCss__,raw:e=>e,variantKeys:PK,variantMap:NK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,PK)},getVariantProps:qC.getVariantProps}),HC=yi("likec4-edge-action-btn",{},[]),BK={},IK=Object.keys(BK),cVe=Object.assign(Zn(HC.recipeFn),{__recipe__:!0,__name__:"edgeActionBtn",__getCompoundVariantCss__:HC.__getCompoundVariantCss__,raw:e=>e,variantKeys:IK,variantMap:BK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,IK)},getVariantProps:HC.getVariantProps}),UC=yi("likec4-edge-label",{pointerEvents:"all",isStepEdge:!1,cursor:"default"},[]),OK={pointerEvents:["none","all"],cursor:["pointer","default"],isStepEdge:["false","true"]},LK=Object.keys(OK),dVe=Object.assign(Zn(UC.recipeFn),{__recipe__:!0,__name__:"edgeLabel",__getCompoundVariantCss__:UC.__getCompoundVariantCss__,raw:e=>e,variantKeys:LK,variantMap:OK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,LK)},getVariantProps:UC.getVariantProps}),FK={},uVe=[],pVe=[["path","likec4-edge__path"],["pathBg","likec4-edge__pathBg"],["markersCtx","likec4-edge__markersCtx"],["middlePoint","likec4-edge__middlePoint"]],hVe=pVe.map(([e,r])=>[e,yi(r,FK,s7(uVe,e))]),fVe=Zn((e={})=>Object.fromEntries(hVe.map(([r,n])=>[r,n.recipeFn(e)]))),VK=[],mVe=e=>({...FK,...Vu(e)}),gVe=Object.assign(fVe,{__recipe__:!1,__name__:"edgePath",raw:e=>e,classNameMap:{},variantKeys:VK,variantMap:{},splitVariantProps(e){return Fn(e,VK)},getVariantProps:mVe}),WC=yi("likec4-element-node-data",{},[]),qK={},HK=Object.keys(qK),yVe=Object.assign(Zn(WC.recipeFn),{__recipe__:!0,__name__:"elementNodeData",__getCompoundVariantCss__:WC.__getCompoundVariantCss__,raw:e=>e,variantKeys:HK,variantMap:qK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,HK)},getVariantProps:WC.getVariantProps}),GC=yi("likec4-element-shape",{},[]),UK={shapetype:["html","svg"]},WK=Object.keys(UK),GK=Object.assign(Zn(GC.recipeFn),{__recipe__:!0,__name__:"elementShapeRecipe",__getCompoundVariantCss__:GC.__getCompoundVariantCss__,raw:e=>e,variantKeys:WK,variantMap:UK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,WK)},getVariantProps:GC.getVariantProps}),YC=yi("likec4-tag",{autoTextColor:!1},[]),YK={autoTextColor:["false","true"]},XK=Object.keys(YK),vVe=Object.assign(Zn(YC.recipeFn),{__recipe__:!0,__name__:"likec4tag",__getCompoundVariantCss__:YC.__getCompoundVariantCss__,raw:e=>e,variantKeys:XK,variantMap:YK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,XK)},getVariantProps:YC.getVariantProps}),XC=yi("likec4-markdown-block",{uselikec4palette:!1,value:"markdown"},[]),ZK={uselikec4palette:["true","false"],value:["markdown","plaintext"]},KK=Object.keys(ZK),bVe=Object.assign(Zn(XC.recipeFn),{__recipe__:!0,__name__:"markdownBlock",__getCompoundVariantCss__:XC.__getCompoundVariantCss__,raw:e=>e,variantKeys:KK,variantMap:ZK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,KK)},getVariantProps:XC.getVariantProps}),ZC=yi("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"}}}]),QK={variant:["default","filled"],type:["default","warning"]},JK=Object.keys(QK),eQ=Object.assign(Zn(ZC.recipeFn),{__recipe__:!0,__name__:"navigationPanelActionIcon",__getCompoundVariantCss__:ZC.__getCompoundVariantCss__,raw:e=>e,variantKeys:JK,variantMap:QK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,JK)},getVariantProps:ZC.getVariantProps}),KC=yi("likec4-overlay",{fullscreen:!1,withBackdrop:!0},[]),tQ={fullscreen:["false","true"],withBackdrop:["false","true"]},rQ=Object.keys(tQ),xVe=Object.assign(Zn(KC.recipeFn),{__recipe__:!0,__name__:"overlay",__getCompoundVariantCss__:KC.__getCompoundVariantCss__,raw:e=>e,variantKeys:rQ,variantMap:tQ,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,rQ)},getVariantProps:KC.getVariantProps}),nQ={truncateLabel:!1},wVe=[],kVe=[["root","likec4-navlink__root"],["body","likec4-navlink__body"],["section","likec4-navlink__section"],["label","likec4-navlink__label"],["description","likec4-navlink__description"]],_Ve=kVe.map(([e,r])=>[e,yi(r,nQ,s7(wVe,e))]),SVe=Zn((e={})=>Object.fromEntries(_Ve.map(([r,n])=>[r,n.recipeFn(e)]))),oQ=["truncateLabel"],EVe=e=>({...nQ,...Vu(e)}),CVe=Object.assign(SVe,{__recipe__:!1,__name__:"navigationLink",raw:e=>e,classNameMap:{},variantKeys:oQ,variantMap:{truncateLabel:["true","false"]},splitVariantProps(e){return Fn(e,oQ)},getVariantProps:EVe});function aQ(){return pf()}function QC(e,r){return Dt(it(e),r??Ir)}function JC(){return vr()}const $Ve=e=>Math.round(e.transform[2]*100)/100;function zVe(){return Dt($Ve)}const RVe=e=>e.transform[2]<.2;function TVe(){return Dt(RVe)}const{abs:Xy,cos:ic,sin:cm,acos:jVe,atan2:Zy,sqrt:jd,pow:vi}=Math;function Ky(e){return e<0?-vi(-e,.3333333333333333):vi(e,.3333333333333333)}const iQ=Math.PI,l2=2*iQ,Ad=iQ/2,AVe=1e-6,e$=Number.MAX_SAFE_INTEGER||9007199254740991,t$=Number.MIN_SAFE_INTEGER||-9007199254740991,DVe={x:0,y:0,z:0},Oe={Tvalues:[-.06405689286260563,.06405689286260563,-.1911188674736163,.1911188674736163,-.3150426796961634,.3150426796961634,-.4337935076260451,.4337935076260451,-.5454214713888396,.5454214713888396,-.6480936519369755,.6480936519369755,-.7401241915785544,.7401241915785544,-.820001985973903,.820001985973903,-.8864155270044011,.8864155270044011,-.9382745520027328,.9382745520027328,-.9747285559713095,.9747285559713095,-.9951872199970213,.9951872199970213],Cvalues:[.12793819534675216,.12793819534675216,.1258374563468283,.1258374563468283,.12167047292780339,.12167047292780339,.1155056680537256,.1155056680537256,.10744427011596563,.10744427011596563,.09761865210411388,.09761865210411388,.08619016153195327,.08619016153195327,.0733464814110803,.0733464814110803,.05929858491543678,.05929858491543678,.04427743881741981,.04427743881741981,.028531388628933663,.028531388628933663,.0123412297999872,.0123412297999872],arcfn:function(e,r){const n=r(e);let o=n.x*n.x+n.y*n.y;return typeof n.z<"u"&&(o+=n.z*n.z),jd(o)},compute:function(e,r,n){if(e===0)return r[0].t=0,r[0];const o=r.length-1;if(e===1)return r[o].t=1,r[o];const 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],DVe],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=vi(e,r)+vi(1-e,r),o=n-1;return Xy(o/n)},projectionratio:function(e,r){if(r!==2&&r!==3)return!1;if(typeof e>"u")e=.5;else if(e===0||e===1)return e;const n=vi(1-e,r),o=vi(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 Oe.lli8(a,i,l,s,c,d,u,p)},lli:function(e,r){return Oe.lli4(e,e.c,r,r.c)},makeline:function(e,r){return new Fr(e.x,e.y,(e.x+r.x)/2,(e.y+r.y)/2,r.x,r.y)},findbbox:function(e){let r=e$,n=e$,o=t$,a=t$;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=Oe.makeline(r.points[o-1],e.points[0]),l=Oe.makeline(e.points[a-1],r.points[0]),s={startcap:i,forward:e,back:r,endcap:l,bbox:Oe.findbbox([i,e,r,l])};return s.intersections=function(c){return Oe.shapeintersections(s,s.bbox,c,c.bbox,n)},s},getminmax:function(e,r,n){if(!n)return{min:0,max:0};let o=e$,a=t$,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=-Zy(r.p2.y-o,r.p2.x-n),i=function(l){return{x:(l.x-n)*ic(a)-(l.y-o)*cm(a),y:(l.x-n)*cm(a)+(l.y-o)*ic(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=Oe.align(e,r),a=function(A){return 0<=A&&A<=1};if(n===2){const A=o[0].y,R=o[1].y,j=o[2].y,I=A-2*R+j;if(I!==0){const P=-jd(R*R-A*j),L=-A+R,H=-(P+L)/I,M=-(-P+L)/I;return[H,M].filter(a)}else if(R!==j&&I===0)return[(2*R-j)/(2*R-2*j)].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(Oe.approximately(d,0)){if(Oe.approximately(u,0))return Oe.approximately(p,0)?[]:[-f/p].filter(a);const A=jd(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,T;if(k<0){const A=-g/3,R=A*A*A,j=jd(R),I=-w/(2*j),P=I<-1?-1:I>1?1:I,L=jVe(P),H=Ky(j),M=2*H;return $=M*ic(L/3)-u/3,z=M*ic((L+l2)/3)-u/3,T=M*ic((L+2*l2)/3)-u/3,[$,z,T].filter(a)}else{if(k===0)return C=x<0?Ky(-x):-Ky(x),$=2*C-u/3,z=-C-u/3,[$,z].filter(a);{const A=jd(k);return C=Ky(-x+A),_=Ky(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=-jd(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=Oe.compute(e,r),f=Oe.compute(e,n),g=p.x*p.x+p.y*p.y;if(o?(i=jd(vi(p.y*f.z-f.y*p.z,2)+vi(p.z*f.x-f.z*p.x,2)+vi(p.x*f.y-f.x*p.y,2)),l=vi(g+p.z*p.z,3/2)):(i=p.x*f.y-p.y*f.x,l=vi(g,3/2)),i===0||l===0)return{k:0,r:0};if(d=i/l,u=l/i,!a){const v=Oe.curvature(e-.001,r,n,o,!0).k,w=Oe.curvature(e+.001,r,n,o,!0).k;c=(w-d+(d-v))/2,s=(Xy(w-d)+Xy(d-v))/2}return{k:d,r:u,dk:c,adk:s}},inflections:function(e){if(e.length<4)return[];const r=Oe.align(e,{p1:e[0],p2:e.slice(-1)[0]}),n=r[2].x*r[1].y,o=r[3].x*r[1].y,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(Oe.approximately(l,0)){if(!Oe.approximately(s,0)){let f=-c/s;if(0<=f&&f<=1)return[f]}return[]}const d=2*l;if(Oe.approximately(d,0))return[];const u=s*s-4*l*c;if(u<0)return[];const p=Math.sqrt(u);return[(p-s)/d,-(s+p)/d].filter(function(f){return 0<=f&&f<=1})},bboxoverlap:function(e,r){const n=["x","y"],o=n.length;for(let 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.sizeT||T>A)&&(z+=l2),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+Jy(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=Oe.dist(n,l.C));const s=i*(1-a)/a,c=Oe.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 Oe}getUtils(){return Fr.getUtils()}static get PolyBezier(){return Qy}valueOf(){return this.toString()}toString(){return Oe.pointsToString(this.points)}toSVG(){if(this._3d)return!1;const r=this.points,n=r[0].x,o=r[0].y,a=["M",n,o,this.order===2?"Q":"C"];for(let i=1,l=r.length;i0}length(){return Oe.length(this.derivative.bind(this))}static getABC(r=2,n,o,a,i=.5){const l=Oe.projectionratio(i,r),s=1-l,c={x:l*n.x+s*a.x,y:l*n.y+s*a.y},d=Oe.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?Oe.computeWithRatios(r,this.points,this.ratios,this._3d):Oe.compute(r,this.points,this._3d,this.ratios)}raise(){const r=this.points,n=[r[0]],o=r.length;for(let 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(Oe.numberSort))}).bind(this)),r.values=n.sort(Oe.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]=Oe.getminmax(this,o,r[o])}).bind(this)),n}overlaps(r){const n=this.bbox(),o=r.bbox();return Oe.bboxoverlap(n,o)}offset(r,n){if(typeof n<"u"){const o=this.get(r),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=Oe.angle(this.points[0],this.points[3],this.points[1]),i=Oe.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),Jy(PVe(o))(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=Oe.lli4(c[0],c[0].c,c[1],c[1].c);if(!u)throw new Error("cannot scale this curve. Try reducing it first.");return[0,1].forEach(function(p){const f=d[p*n]=Oe.copy(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=e0(g.x*g.x+g.y*g.y);g.x/=w,g.y/=w,d[p+1]={x:f.x+v*g.x,y:f.y+v*g.y}}}),new Fr(d)):([0,1].forEach(p=>{if(n===2&&p)return;const f=d[p*n],g=this.derivative(p),v={x:f.x+g.x,y:f.y+g.y};d[p+1]=Oe.lli4(f,v,u,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),T=this.points[0],A=this.points[this.points.length-1];let R,j,I;o===void 0&&(o=r,a=n),R={x:T.x+z.x*r,y:T.y+z.y*r},I={x:A.x+z.x*o,y:A.y+z.y*o},j={x:(R.x+I.x)/2,y:(R.y+I.y)/2};const P=[R,j,I];R={x:T.x-z.x*n,y:T.y-z.y*n},I={x:A.x-z.x*a,y:A.y-z.y*a},j={x:(R.x+I.x)/2,y:(R.y+I.y)/2};const L=[I,j,R],H=Oe.makeline(L[2],P[0]),M=Oe.makeline(P[2],L[0]),V=[H,new Fr(P),M,new Fr(L)];return new Qy(V)}const 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,T,A,R,j){return function(I){const P=R/A,L=(R+j)/A,H=T-z;return Oe.map(I,0,1,z+P*H,z+L*H)}}i.forEach(function(z){const T=z.length();f?(s.push(z.scale(g(r,o,p,u,T))),c.push(z.scale(g(-n,-a,p,u,T)))):(s.push(z.scale(r)),c.push(z.scale(-n))),u+=T}),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=Oe.makeline(x,v),_=Oe.makeline(w,k),$=[C].concat(s).concat([_]).concat(c);return new Qy($)}outlineshapes(r,n,o){n=n||r;const 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 Oe.between(s.x,n,a)&&Oe.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=Oe.dist(r,n),d=Oe.dist(r,l),u=Oe.dist(r,s);return Jy(d-c)+Jy(u-c)}_iterate(r,n){let o=0,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=Oe.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*MVe(d.e),y:d.y+d.r*NVe(d.e)};d.e+=Oe.angle({x:d.x,y:d.y},x,this.get(1))}break}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 cQ(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}const r$=e=>({x:Math.round(e.internals.positionAbsolute.x),y:Math.round(e.internals.positionAbsolute.y),width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0});function n$(e){const{width:r,height:n}=_o(e),{x:o,y:a}=e.internals.positionAbsolute;return{x:Math.round(o+r/2),y:Math.round(a+n/2)}}function s2(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 c2(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 d2(e,r){const n=a9(e)?{x:e[0],y:e[1]}:e,o=a9(r)?{x:r[0],y:r[1]}:r;return IVe(n,o)<2.1}function IVe(e,r){return Math.hypot(r.x-e.x,r.y-e.y)}function nn(e){return e.stopPropagation()}function OVe(e){let[r,...n]=e;He(r,"start should be defined");let o=`M ${r[0]},${r[1]}`;for(;xn(n,3);){const[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 u2=S.forwardRef(({tag:e,cursor:r,className:n,style:o,...a},i)=>{const l=_Ne(e);return y.jsxs(hr,{ref:i,"data-likec4-tag":e,className:Ge(vVe({autoTextColor:GO(l)}),n),...a,style:{cursor:r,...o},children:[y.jsx("span",{children:"#"}),y.jsx("span",{children:e})]})}),LVe=(e,r)=>e.data.width===r.data.width&&tt(e.data.tags,r.data.tags)&&(e.data.hovered??!1)===(r.data.hovered??!1),t0=S.memo(({id:e,data:{tags:r,width:n,hovered:o=!1}})=>{const{hovered:a,ref:i}=b9(),{hovered:l,ref:s}=b9(),[c,d]=Zze(!1,o?120:300);S.useEffect(()=>{d(x=>x?o||a||l:o&&(a||l))},[a,l,o]);const u=zVe(),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(r9,{isVisible:c,align:"start",position:Ue.Bottom,children:y.jsx(Or,{ref:s,css:{gap:"0.5",alignItems:"baseline",flexWrap:"wrap",pb:"sm",translate:"auto",x:"[-8px]",maxWidth:w},children:r.map(x=>y.jsx(u2,{tag:x,cursor:"pointer",className:fe({userSelect:"none",...p&&{fontSize:"lg",borderRadius:"[4px]",px:"1.5"}}),onClick:k=>{k.stopPropagation(),f.openSearch(`#${x}`)},onMouseEnter:()=>g(x),onMouseLeave:v},x))})})]})},LVe);t0.displayName="ElementTags";const FVe=S.forwardRef((e,r)=>y.jsx("svg",{height:"24",width:"24",fill:"currentColor",...e,viewBox:"0 0 24 24",ref:r,children:y.jsx("path",{d:"M12 1C5.923 1 1 5.923 1 12c0 4.867 3.149 8.979 7.521 10.436.55.096.756-.233.756-.522 0-.262-.013-1.128-.013-2.049-2.764.509-3.479-.674-3.699-1.292-.124-.317-.66-1.293-1.127-1.554-.385-.207-.936-.715-.014-.729.866-.014 1.485.797 1.691 1.128.99 1.663 2.571 1.196 3.204.907.096-.715.385-1.196.701-1.471-2.448-.275-5.005-1.224-5.005-5.432 0-1.196.426-2.186 1.128-2.956-.111-.275-.496-1.402.11-2.915 0 0 .921-.288 3.024 1.128a10.193 10.193 0 0 1 2.75-.371c.936 0 1.871.123 2.75.371 2.104-1.43 3.025-1.128 3.025-1.128.605 1.513.221 2.64.111 2.915.701.77 1.127 1.747 1.127 2.956 0 4.222-2.571 5.157-5.019 5.432.399.344.743 1.004.743 2.035 0 1.471-.014 2.654-.014 3.025 0 .289.206.632.756.522C19.851 20.979 23 16.854 23 12c0-6.077-4.922-11-11-11Z"})})),VVe=[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]],dQ=wt("outline","check","Check",VVe),qVe=[["path",{d:"M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]],HVe=wt("outline","copy","Copy",qVe),uQ="https://github.com/",o$=S.forwardRef(({value:e,className:r,...n},o)=>{const a=e.url.includes("://")?e.url:new window.URL(e.url,window.location.href).toString();let i=a.startsWith(uQ);return y.jsx(ec,{ref:o,variant:"default",radius:"sm",size:"sm",tt:"none",leftSection:e.title?y.jsx(y.Fragment,{children:e.title}):null,rightSection:y.jsx(UW,{value: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(dQ,{}):y.jsx(HVe,{stroke:2.5})})}),...n,className:Ge(r,"group"),classNames:{root:fe({flexWrap:"nowrap",minHeight:24,maxWidth:500,userSelect:"all",pr:"0",backgroundColor:{base:"transparent",_hover:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]"}}}),section:fe({'&:is([data-position="left"])':{color:"mantine.colors.dimmed",userSelect:"none",pointerEvents:"none",_groupHover:{color:"[var(--badge-color)]",opacity:.7}}})},children:y.jsxs(Ed.a,{href: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(FVe,{height:"12",width:"12",style:{verticalAlign:"middle",marginRight:"4px"}}),i?a.replace(uQ,""):a]})})});function UVe(){return S.useContext(GS)}function WVe(){const e=S.useContext(GS);if(!e)throw new Error("No LikeC4ViewModel in context found");return e}const p2="--_blur",h2="--_opacity",GVe=fe({boxSizing:"border-box",margin:"0",padding:"0",position:"fixed",inset:"0",width:"100vw",height:"100vh",maxWidth:"100vw",maxHeight:"100vh",background:"transparent",border:"transparent",_backdrop:{backdropFilter:"auto",backdropBlur:`var(${p2})`,backgroundColor:`[rgb(36 36 36 / var(${h2}, 5%))]`}}),YVe=fe({position:"absolute",pointerEvents:"all",display:"flex",flexDirection:"column",padding:"4",gap:"lg",justifyContent:"stretch",color:"mantine.colors.text",boxShadow:"md",overflow:"hidden",border:"none",background:`[ + `),()=>{x.contains(w)&&x.removeChild(w)}},[r]),y.jsx(QOe,{isPresent:r,childRef:i,sizeRef:l,children:S.cloneElement(e,{ref:c})})}const eLe=({children:e,initial:r,isPresent:n,onExitComplete:o,custom:a,presenceAffectsLayout:i,mode:l,anchorX:s,root:c})=>{const d=im(tLe),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(JOe,{isPresent:n,anchorX:s,root:c,children:e})),y.jsx(K3.Provider,{value:f,children:e})};function tLe(){return new Map}function SZ(e=!0){const r=S.useContext(K3);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 Q3=e=>e.key||"";function EZ(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]=SZ(l),p=S.useMemo(()=>EZ(e),[e]),f=l&&!d?[]:p.map(Q3),g=S.useRef(!0),v=S.useRef(p),w=im(()=>new Map),[x,k]=S.useState(p),[C,_]=S.useState(p);EC(()=>{g.current=!1,v.current=p;for(let T=0;T{const A=Q3(T),z=l&&!d?!1:p===C||f.includes(A),j=()=>{if(w.has(A))w.set(A,!0);else return;let I=!0;w.forEach(P=>{P||(I=!1)}),I&&(R?.(),_(v.current),l&&u?.(),o&&o())};return y.jsx(eLe,{isPresent:z,initial:!g.current||n?void 0:!1,custom:r,presenceAffectsLayout:a,mode:i,root:c,onExitComplete:z?void 0:j,anchorX:s,children:T},A)})})},rLe=S.createContext(null);function nLe(){const e=S.useRef(!1);return EC(()=>(e.current=!0,()=>{e.current=!1}),[]),e}function oLe(){const e=nLe(),[r,n]=S.useState(0),o=S.useCallback(()=>{e.current&&n(r+1)},[r]);return[S.useCallback(()=>Dr.postRender(o),[o]),r]}const aLe=e=>!e.isLayoutDirty&&e.willUpdate(!1);function iLe(){const e=new Set,r=new WeakMap,n=()=>e.forEach(aLe);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 CZ=e=>e===!0,lLe=e=>CZ(e===!0)||e==="id",lm=({children:e,id:r,inherit:n=!0})=>{const o=S.useContext(Hy),a=S.useContext(rLe),[i,l]=oLe(),s=S.useRef(null),c=o.id||a;s.current===null&&(lLe(n)&&c&&(r=r?c+"-"+r:c),s.current={id:r,group:CZ(n)&&o.group||iLe()});const d=S.useMemo(()=>({...s.current,forceRender:i}),[l]);return y.jsx(Hy.Provider,{value:d,children:e})},CC=S.createContext({strict:!1});function $C(e){for(const r in e)om[r]={...om[r],...e[r]}}function sLe({children:e,features:r,strict:n=!1}){const[,o]=S.useState(!RC(r)),a=S.useRef(void 0);if(!RC(r)){const{renderer:i,...l}=r;a.current=i,$C(l)}return S.useEffect(()=>{RC(r)&&r().then(({renderer:i,...l})=>{$C(l),a.current=i,o(!0)})},[]),y.jsx(CC.Provider,{value:{renderer:a.current,strict:n},children:e})}function RC(e){return typeof e=="function"}const cLe=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function J3(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||cLe.has(e)}let $Z=e=>!J3(e);function RZ(e){typeof e=="function"&&($Z=r=>r.startsWith("on")?!J3(r):e(r))}try{RZ(require("@emotion/is-prop-valid").default)}catch{}function dLe(e,r,n){const o={};for(const a in e)a==="values"&&typeof e.values=="object"||($Z(a)||n===!0&&J3(a)||!r&&!J3(a)||e.draggable&&a.startsWith("onDrag"))&&(o[a]=e[a]);return o}function uLe({children:e,isValidProp:r,...n}){r&&RZ(r),n={...S.useContext(Ep),...n},n.isStatic=im(()=>n.isStatic);const o=S.useMemo(()=>n,[JSON.stringify(n.transition),n.transformPagePoint,n.reducedMotion]);return y.jsx(Ep.Provider,{value:o,children:e})}const e2=S.createContext({});function pLe(e,r){if(Z3(e)){const{initial:n,animate:o}=e;return{initial:n===!1||Vy(n)?n:void 0,animate:Vy(o)?o:void 0}}return e.inherit!==!1?r:{}}function hLe(e){const{initial:r,animate:n}=pLe(e,S.useContext(e2));return S.useMemo(()=>({initial:r,animate:n}),[zZ(r),zZ(n)])}function zZ(e){return Array.isArray(e)?e.join(" "):e}const zC=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function TZ(e,r,n){for(const o in r)!to(r[o])&&!hZ(o,n)&&(e[o]=r[o])}function fLe({transformTemplate:e},r){return S.useMemo(()=>{const n=zC();return kC(n,r,e),Object.assign({},n.vars,n.style)},[r])}function mLe(e,r){const n=e.style||{},o={};return TZ(o,n,e),Object.assign(o,fLe(e,r)),o}function gLe(e,r){const n={},o=mLe(e,r);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,o.userSelect=o.WebkitUserSelect=o.WebkitTouchCallout="none",o.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=o,n}const jZ=()=>({...zC(),attrs:{}});function yLe(e,r,n,o){const a=S.useMemo(()=>{const i=jZ();return mZ(i,r,yZ(o),e.transformTemplate,e.style),{...i.attrs,style:{...i.style}}},[r]);if(e.style){const i={};TZ(i,e.style,e),a.style={...i,...a.style}}return a}const vLe=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function TC(e){return typeof e!="string"||e.includes("-")?!1:!!(vLe.indexOf(e)>-1||/[A-Z]/u.test(e))}function bLe(e,r,n,{latestValues:o},a,i=!1){const l=(TC(e)?yLe:gLe)(r,o,a,e),s=dLe(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 t2(e){return to(e)?e.get():e}function xLe({scrapeMotionValuesFromProps:e,createRenderState:r},n,o,a){return{latestValues:wLe(n,o,a,e),renderState:r()}}function wLe(e,r,n,o){const a={},i=o(e,{});for(const f in i)a[f]=t2(i[f]);let{initial:l,animate:s}=e;const c=Z3(e),d=lZ(e);r&&d&&!c&&e.inherit!==!1&&(l===void 0&&(l=r.initial),s===void 0&&(s=r.animate));let u=n?n.initial===!1:!1;u=u||l===!1;const p=u?s:l;if(p&&typeof p!="boolean"&&!X3(p)){const f=Array.isArray(p)?p:[p];for(let g=0;g(r,n)=>{const o=S.useContext(e2),a=S.useContext(K3),i=()=>xLe(e,r,o,a);return n?i():im(i)},kLe=AZ({scrapeMotionValuesFromProps:SC,createRenderState:zC}),_Le=AZ({scrapeMotionValuesFromProps:vZ,createRenderState:jZ}),SLe=Symbol.for("motionComponentSymbol");function sm(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function ELe(e,r,n){return S.useCallback(o=>{o&&e.onMount&&e.onMount(o),r&&(o?r.mount(o):r.unmount()),n&&(typeof n=="function"?n(o):sm(n)&&(n.current=o))},[r])}const DZ=S.createContext({});function CLe(e,r,n,o,a){const{visualElement:i}=S.useContext(e2),l=S.useContext(CC),s=S.useContext(K3),c=S.useContext(Ep).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(DZ);u&&!u.projection&&a&&(u.type==="html"||u.type==="svg")&&$Le(d.current,n,a,p);const f=S.useRef(!1);S.useInsertionEffect(()=>{u&&f.current&&u.update(n,s)});const g=n[WX],v=S.useRef(!!g&&!window.MotionHandoffIsComplete?.(g)&&window.MotionHasOptimisedAnimation?.(g));return EC(()=>{u&&(f.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),u.scheduleRenderMicrotask(),v.current&&u.animationState&&u.animationState.animateChanges())}),S.useEffect(()=>{u&&(!v.current&&u.animationState&&u.animationState.animateChanges(),v.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(g)}),v.current=!1),u.enteringChildren=void 0)}),u}function $Le(e,r,n,o){const{layoutId: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:MZ(e.parent)),e.projection.setOptions({layoutId:a,layout:i,alwaysMeasureLayout:!!l||s&&sm(s),visualElement:e,animationType:typeof i=="string"?i:"both",initialPromotionConfig:o,crossfade:u,layoutScroll:c,layoutRoot:d})}function MZ(e){if(e)return e.options.allowProjection!==!1?e.projection:MZ(e.parent)}function r2(e,{forwardMotionProps:r=!1}={},n,o){n&&$C(n);const a=TC(e)?_Le:kLe;function i(s,c){let d;const u={...S.useContext(Ep),...s,layoutId:RLe(s)},{isStatic:p}=u,f=hLe(s),g=a(s,p);if(!p&&vC){zLe();const v=TLe(u);d=v.MeasureLayout,f.visualElement=CLe(e,g,u,o,v.ProjectionNode)}return y.jsxs(e2.Provider,{value:f,children:[d&&f.visualElement?y.jsx(d,{visualElement:f.visualElement,...u}):null,bLe(e,s,ELe(g,f.visualElement,c),g,p,r)]})}i.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const l=S.forwardRef(i);return l[SLe]=e,l}function RLe({layoutId:e}){const r=S.useContext(Hy).id;return r&&e!==void 0?r+"-"+e:e}function zLe(e,r){S.useContext(CC).strict}function TLe(e){const{drag:r,layout:n}=om;if(!r&&!n)return{};const o={...r,...n};return{MeasureLayout:r?.isEnabled(e)||n?.isEnabled(e)?o.MeasureLayout:void 0,ProjectionNode:o.ProjectionNode}}function jLe(e,r){if(typeof Proxy>"u")return r2;const n=new Map,o=(i,l)=>r2(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,r2(l,void 0,e,r)),n.get(l))})}const mi=jLe(),ALe=(e,r)=>TC(e)?new bZ(r):new fZ(r,{allowProjection:e!==S.Fragment});function NZ(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 jC(e,r,n={}){const o=tm(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(fC(e,o,n)):()=>Promise.resolve(),l=e.variantChildren&&e.variantChildren.size?(c=0)=>{const{delayChildren:d=0,staggerChildren:u,staggerDirection:p}=a;return DLe(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 DLe(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(jC(c,r,{...l,delay:n+(typeof o=="function"?0:o)+NZ(e.variantChildren,c,o,a,i)}).then(()=>c.notify("AnimationComplete",r)));return Promise.all(s)}function MLe(e,r,n={}){e.notify("AnimationStart",r);let o;if(Array.isArray(r)){const a=r.map(i=>jC(e,i,n));o=Promise.all(a)}else if(typeof r=="string")o=jC(e,r,n);else{const a=typeof r=="function"?tm(e,r,n.custom):r;o=Promise.all(fC(e,a,n))}return o.then(()=>{e.notify("AnimationComplete",r)})}function PZ(e,r){if(!Array.isArray(r))return!1;const n=r.length;if(n!==e.length)return!1;for(let o=0;oPromise.all(r.map(({animation:n,options:o})=>MLe(e,n,o)))}function OLe(e){let r=ILe(e),n=IZ(),o=!0;const a=c=>(d,u)=>{const p=tm(e,u,c==="exit"?e.presenceContext?.custom:void 0);if(p){const{transition:f,transitionEnd:g,...v}=p;d={...d,...v,...g}}return d};function i(c){r=c(e)}function l(c){const{props:d}=e,u=BZ(e.parent)||{},p=[],f=new Set;let g={},v=1/0;for(let x=0;xv&&$,j=!1;const I=Array.isArray(_)?_:[_];let P=I.reduce(a(k),{});R===!1&&(P={});const{prevResolvedValues:L={}}=C,H={...L,...P},M=B=>{z=!0,f.has(B)&&(j=!0,f.delete(B)),C.needsAnimating[B]=!0;const F=e.getValue(B);F&&(F.liveStyle=!1)};for(const B in H){const F=P[B],q=L[B];if(g.hasOwnProperty(B))continue;let G=!1;cC(F)&&cC(q)?G=!PZ(F,q):G=F!==q,G?F!=null?M(B):f.add(B):F!==void 0&&f.has(B)?M(B):C.protectedKeys[B]=!0}C.prevProp=_,C.prevResolvedValues=P,C.isActive&&(g={...g,...P}),o&&e.blockInitialAnimation&&(z=!1);const V=T&&A;z&&(!V||j)&&p.push(...I.map(B=>{const F={type:k};if(typeof B=="string"&&o&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:q}=e,G=tm(q,B);if(q.enteringChildren&&G){const{delayChildren:U}=G.transition||{};F.delay=NZ(q.enteringChildren,e,U)}}return{animation:B,options:F}}))}if(f.size){const x={};if(typeof d.initial!="boolean"){const k=tm(e,Array.isArray(d.initial)?d.initial[0]:d.initial);k&&k.transition&&(x.transition=k.transition)}f.forEach(k=>{const C=e.getBaseTarget(k),_=e.getValue(k);_&&(_.liveStyle=!0),x[k]=C??null}),p.push({animation:x})}let w=!!p.length;return o&&(d.initial===!1||d.initial===d.animate)&&!e.manuallyAnimateOnMount&&(w=!1),o=!1,w?r(p):Promise.resolve()}function s(c,d){if(n[c].isActive===d)return Promise.resolve();e.variantChildren?.forEach(p=>p.animationState?.setActive(c,d)),n[c].isActive=d;const u=l(c);for(const p in n)n[p].protectedKeys={};return u}return{animateChanges:l,setActive:s,setAnimateFunction:i,getState:()=>n,reset:()=>{n=IZ()}}}function LLe(e,r){return typeof r=="string"?r!==e:Array.isArray(r)?!PZ(r,e):!1}function Cp(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function IZ(){return{animate:Cp(!0),whileInView:Cp(),whileHover:Cp(),whileTap:Cp(),whileDrag:Cp(),whileFocus:Cp(),exit:Cp()}}class Td{constructor(r){this.isMounted=!1,this.node=r}update(){}}class FLe extends Td{constructor(r){super(r),r.animationState||(r.animationState=OLe(r))}updateAnimationControlsSubscription(){const{animate:r}=this.node.getProps();X3(r)&&(this.unmountControls=r.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:r}=this.node.getProps(),{animate:n}=this.node.prevProps||{};r!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let VLe=0;class qLe extends Td{constructor(){super(...arguments),this.id=VLe++}update(){if(!this.node.presenceContext)return;const{isPresent:r,onExitComplete:n}=this.node.presenceContext,{isPresent:o}=this.node.prevPresenceContext||{};if(!this.node.animationState||r===o)return;const 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 HLe={animation:{Feature:FLe},exit:{Feature:qLe}};function Uy(e,r,n,o={passive:!0}){return e.addEventListener(r,n,o),()=>e.removeEventListener(r,n)}function Wy(e){return{point:{x:e.pageX,y:e.pageY}}}const ULe=e=>r=>aC(r)&&e(r,Wy(r));function Gy(e,r,n,o){return Uy(e,r,ULe(n),o)}const OZ=1e-4,WLe=1-OZ,GLe=1+OZ,LZ=.01,YLe=0-LZ,XLe=0+LZ;function Vo(e){return e.max-e.min}function ZLe(e,r,n){return Math.abs(e-r)<=n}function FZ(e,r,n,o=.5){e.origin=o,e.originPoint=Lr(r.min,r.max,e.origin),e.scale=Vo(n)/Vo(r),e.translate=Lr(n.min,n.max,e.origin)-e.originPoint,(e.scale>=WLe&&e.scale<=GLe||isNaN(e.scale))&&(e.scale=1),(e.translate>=YLe&&e.translate<=XLe||isNaN(e.translate))&&(e.translate=0)}function Yy(e,r,n,o){FZ(e.x,r.x,n.x,o?o.originX:void 0),FZ(e.y,r.y,n.y,o?o.originY:void 0)}function VZ(e,r,n){e.min=n.min+r.min,e.max=e.min+Vo(r)}function KLe(e,r,n){VZ(e.x,r.x,n.x),VZ(e.y,r.y,n.y)}function qZ(e,r,n){e.min=r.min-n.min,e.max=e.min+Vo(r)}function n2(e,r,n){qZ(e.x,r.x,n.x),qZ(e.y,r.y,n.y)}function gi(e){return[e("x"),e("y")]}const HZ=({current:e})=>e?e.ownerDocument.defaultView:null;class UZ{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=DC(this.lastMoveEventInfo,this.history),g=this.startEvent!==null,v=XOe(f.offset,{x:0,y:0})>=this.distanceThreshold;if(!g&&!v)return;const{point:w}=f,{timestamp:x}=so;this.history.push({...w,timestamp:x});const{onStart:k,onMove:C}=this.handlers;g||(k&&k(this.lastMoveEvent,f),this.startEvent=this.lastMoveEvent),C&&C(this.lastMoveEvent,f)},this.handlePointerMove=(f,g)=>{this.lastMoveEvent=f,this.lastMoveEventInfo=AC(g,this.transformPagePoint),Dr.update(this.updatePoint,!0)},this.handlePointerUp=(f,g)=>{this.end();const{onEnd:v,onSessionEnd:w,resumeAnimation:x}=this.handlers;if(this.dragSnapToOrigin&&x&&x(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const k=DC(f.type==="pointercancel"?this.lastMoveEventInfo:AC(g,this.transformPagePoint),this.history);this.startEvent&&v&&v(f,k),w&&w(f,k)},!aC(r))return;this.dragSnapToOrigin=i,this.handlers=n,this.transformPagePoint=o,this.distanceThreshold=l,this.contextWindow=a||window;const s=Wy(r),c=AC(s,this.transformPagePoint),{point:d}=c,{timestamp:u}=so;this.history=[{...d,timestamp:u}];const{onSessionStart:p}=n;p&&p(r,DC(c,this.history)),this.removeListeners=Ay(Gy(this.contextWindow,"pointermove",this.handlePointerMove),Gy(this.contextWindow,"pointerup",this.handlePointerUp),Gy(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(r){this.handlers=r}end(){this.removeListeners&&this.removeListeners(),$d(this.updatePoint)}}function AC(e,r){return r?{point:r(e.point)}:e}function WZ(e,r){return{x:e.x-r.x,y:e.y-r.y}}function DC({point:e},r){return{point:e,delta:WZ(e,GZ(r)),offset:WZ(e,QLe(r)),velocity:JLe(r,.1)}}function QLe(e){return e[0]}function GZ(e){return e[e.length-1]}function JLe(e,r){if(e.length<2)return{x:0,y:0};let n=e.length-1,o=null;const a=GZ(e);for(;n>=0&&(o=e[n],!(a.timestamp-o.timestamp>il(r)));)n--;if(!o)return{x:0,y:0};const i=fi(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 eFe(e,{min:r,max:n},o){return r!==void 0&&en&&(e=o?Lr(n,e,o.max):Math.min(e,n)),e}function YZ(e,r,n){return{min:r!==void 0?e.min+r:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function tFe(e,{top:r,left:n,bottom:o,right:a}){return{x:YZ(e.x,n,a),y:YZ(e.y,r,o)}}function XZ(e,r){let n=r.min-e.min,o=r.max-e.max;return r.max-r.mino?n=Zf(r.min,r.max-o,e.min):o>a&&(n=Zf(e.min,e.max-a,r.min)),oc(0,1,n)}function oFe(e,r){const n={};return r.min!==void 0&&(n.min=r.min-e.min),r.max!==void 0&&(n.max=r.max-e.min),n}const MC=.35;function aFe(e=MC){return e===!1?e=0:e===!0&&(e=MC),{x:ZZ(e,"left","right"),y:ZZ(e,"top","bottom")}}function ZZ(e,r,n){return{min:KZ(e,r),max:KZ(e,n)}}function KZ(e,r){return typeof e=="number"?e:e[r]||0}const iFe=new WeakMap;class lFe{constructor(r){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=En(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=r}start(r,{snapToCursor:n=!1,distanceThreshold:o}={}){const{presenceContext: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(Wy(p).point)},l=(p,f)=>{const{drag:g,dragPropagation:v,onDragStart:w}=this.getProps();if(g&&!v&&(this.openDragLock&&this.openDragLock(),this.openDragLock=WIe(g),!this.openDragLock))return;this.latestPointerEvent=p,this.latestPanInfo=f,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),gi(k=>{let C=this.getAxisMotionValue(k).get()||0;if(os.test(C)){const{projection:_}=this.visualElement;if(_&&_.layout){const $=_.layout.layoutBox[k];$&&(C=Vo($)*(parseFloat(C)/100))}}this.originPoint[k]=C}),w&&Dr.postRender(()=>w(p,f)),uC(this.visualElement,"transform");const{animationState:x}=this.visualElement;x&&x.setActive("whileDrag",!0)},s=(p,f)=>{this.latestPointerEvent=p,this.latestPanInfo=f;const{dragPropagation:g,dragDirectionLock:v,onDirectionLock:w,onDrag:x}=this.getProps();if(!g&&!this.openDragLock)return;const{offset:k}=f;if(v&&this.currentDirection===null){this.currentDirection=sFe(k),this.currentDirection!==null&&w&&w(this.currentDirection);return}this.updateAxis("x",f.point,k),this.updateAxis("y",f.point,k),this.visualElement.render(),x&&x(p,f)},c=(p,f)=>{this.latestPointerEvent=p,this.latestPanInfo=f,this.stop(p,f),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>gi(p=>this.getAnimationState(p)==="paused"&&this.getAxisMotionValue(p).animation?.play()),{dragSnapToOrigin:u}=this.getProps();this.panSession=new UZ(r,{onSessionStart:i,onStart:l,onMove:s,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:o,contextWindow:HZ(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||!o2(r,a,this.currentDirection))return;const i=this.getAxisMotionValue(r);let l=this.originPoint[r]+o[r];this.constraints&&this.constraints[r]&&(l=eFe(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&&sm(r)?this.constraints||(this.constraints=this.resolveRefConstraints()):r&&o?this.constraints=tFe(o.layoutBox,r):this.constraints=!1,this.elastic=aFe(n),a!==this.constraints&&o&&this.constraints&&!this.hasMutatedConstraints&&gi(i=>{this.constraints!==!1&&this.getAxisMotionValue(i)&&(this.constraints[i]=oFe(o.layoutBox[i],this.constraints[i]))})}resolveRefConstraints(){const{dragConstraints:r,onMeasureDragConstraints:n}=this.getProps();if(!r||!sm(r))return!1;const o=r.current,{projection:a}=this.visualElement;if(!a||!a.layout)return!1;const i=ROe(o,a.root,this.visualElement.getTransformPagePoint());let l=rFe(a.layout.layoutBox,i);if(n){const s=n(EOe(l));this.hasMutatedConstraints=!!s,s&&(l=YX(s))}return l}startAnimation(r){const{drag:n,dragMomentum:o,dragElastic:a,dragTransition:i,dragSnapToOrigin:l,onDragTransitionEnd:s}=this.getProps(),c=this.constraints||{},d=gi(u=>{if(!o2(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 uC(this.visualElement,r),o.start(hC(r,o,0,n,this.visualElement,!1))}stopAnimation(){gi(r=>this.getAxisMotionValue(r).stop())}pauseAnimation(){gi(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){gi(n=>{const{drag:o}=this.getProps();if(!o2(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(!sm(n)||!o||!this.constraints)return;this.stopAnimation();const a={x:0,y:0};gi(l=>{const s=this.getAxisMotionValue(l);if(s&&this.constraints!==!1){const c=s.get();a[l]=nFe({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(),gi(l=>{if(!o2(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;iFe.set(this.visualElement,this);const r=this.visualElement.current,n=Gy(r,"pointerdown",c=>{const{drag:d,dragListener:u=!0}=this.getProps();d&&u&&this.start(c)}),o=()=>{const{dragConstraints:c}=this.getProps();sm(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:a}=this.visualElement,i=a.addEventListener("measure",o);a&&!a.layout&&(a.root&&a.root.updateScroll(),a.updateLayout()),Dr.read(o);const l=Uy(window,"resize",()=>this.scalePositionWithinConstraints()),s=a.addEventListener("didUpdate",(({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(gi(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=MC,dragMomentum:s=!0}=r;return{...r,drag:n,dragDirectionLock:o,dragPropagation:a,dragConstraints:i,dragElastic:l,dragMomentum:s}}}function o2(e,r,n){return(r===!0||r===e)&&(n===null||n===e)}function sFe(e,r=10){let n=null;return Math.abs(e.y)>r?n="y":Math.abs(e.x)>r&&(n="x"),n}class cFe extends Td{constructor(r){super(r),this.removeGroupControls=hi,this.removeListeners=hi,this.controls=new lFe(r)}mount(){const{dragControls:r}=this.node.getProps();r&&(this.removeGroupControls=r.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||hi}unmount(){this.removeGroupControls(),this.removeListeners()}}const QZ=e=>(r,n)=>{e&&Dr.postRender(()=>e(r,n))};class dFe extends Td{constructor(){super(...arguments),this.removePointerDownListener=hi}onPointerDown(r){this.session=new UZ(r,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:HZ(this.node)})}createPanHandlers(){const{onPanSessionStart:r,onPanStart:n,onPan:o,onPanEnd:a}=this.node.getProps();return{onSessionStart:QZ(r),onStart:QZ(n),onMove:o,onEnd:(i,l)=>{delete this.session,a&&Dr.postRender(()=>a(i,l))}}}mount(){this.removePointerDownListener=Gy(this.node.current,"pointerdown",r=>this.onPointerDown(r))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const a2={hasAnimatedSinceResize:!0,hasEverUpdated:!1};let NC=!1;class uFe extends S.Component{componentDidMount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o,layoutId:a}=this.props,{projection:i}=r;i&&(n.group&&n.group.add(i),o&&o.register&&a&&o.register(i),NC&&i.root.didUpdate(),i.addEventListener("animationComplete",()=>{this.safeToRemove()}),i.setOptions({...i.options,onExitComplete:()=>this.safeToRemove()})),a2.hasEverUpdated=!0}getSnapshotBeforeUpdate(r){const{layoutDependency:n,visualElement:o,drag:a,isPresent:i}=this.props,{projection:l}=o;return l&&(l.isPresent=i,NC=!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(),oC.postRender(()=>{!r.currentAnimation&&r.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o}=this.props,{projection:a}=r;NC=!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 JZ(e){const[r,n]=SZ(),o=S.useContext(Hy);return y.jsx(uFe,{...e,layoutGroup:o,switchLayoutGroup:S.useContext(DZ),isPresent:r,safeToRemove:n})}const pFe=(e,r)=>e.depth-r.depth;class hFe{constructor(){this.children=[],this.isDirty=!1}add(r){kE(this.children,r),this.isDirty=!0}remove(r){L3(this.children,r),this.isDirty=!0}forEach(r){this.isDirty&&this.children.sort(pFe),this.isDirty=!1,this.children.forEach(r)}}const eK=["TopLeft","TopRight","BottomLeft","BottomRight"],fFe=eK.length,tK=e=>typeof e=="string"?parseFloat(e):e,rK=e=>typeof e=="number"||_t.test(e);function mFe(e,r,n,o,a,i){a?(e.opacity=Lr(0,n.opacity??1,gFe(o)),e.opacityExit=Lr(r.opacity??1,0,yFe(o))):i&&(e.opacity=Lr(r.opacity??1,n.opacity??1,o));for(let l=0;lor?1:n(Zf(e,r,o))}function aK(e,r){e.min=r.min,e.max=r.max}function sl(e,r){aK(e.x,r.x),aK(e.y,r.y)}function iK(e,r){e.translate=r.translate,e.scale=r.scale,e.originPoint=r.originPoint,e.origin=r.origin}function lK(e,r,n,o,a){return e-=r,e=G3(e,1/n,o),a!==void 0&&(e=G3(e,1/a,o)),e}function vFe(e,r=0,n=1,o=.5,a,i=e,l=e){if(os.test(r)&&(r=parseFloat(r),r=Lr(l.min,l.max,r/100)-l.min),typeof r!="number")return;let s=Lr(i.min,i.max,o);e===i&&(s-=r),e.min=lK(e.min,r,n,s,a),e.max=lK(e.max,r,n,s,a)}function sK(e,r,[n,o,a],i,l){vFe(e,r[n],r[o],r[a],r.scale,i,l)}const bFe=["x","scaleX","originX"],xFe=["y","scaleY","originY"];function cK(e,r,n,o){sK(e.x,r,bFe,n?n.x:void 0,o?o.x:void 0),sK(e.y,r,xFe,n?n.y:void 0,o?o.y:void 0)}function dK(e){return e.translate===0&&e.scale===1}function uK(e){return dK(e.x)&&dK(e.y)}function pK(e,r){return e.min===r.min&&e.max===r.max}function wFe(e,r){return pK(e.x,r.x)&&pK(e.y,r.y)}function hK(e,r){return Math.round(e.min)===Math.round(r.min)&&Math.round(e.max)===Math.round(r.max)}function fK(e,r){return hK(e.x,r.x)&&hK(e.y,r.y)}function mK(e){return Vo(e.x)/Vo(e.y)}function gK(e,r){return e.translate===r.translate&&e.scale===r.scale&&e.originPoint===r.originPoint}class kFe{constructor(){this.members=[]}add(r){kE(this.members,r),r.scheduleRender()}remove(r){if(L3(this.members,r),r===this.prevLead&&(this.prevLead=void 0),r===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(r){const n=this.members.findIndex(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 _Fe(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 PC=["","X","Y","Z"],SFe=1e3;let EFe=0;function BC(e,r,n,o){const{latestValues:a}=r;a[e]&&(n[e]=a[e],r.setStaticValue(e,0),o&&(o[e]=0))}function yK(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:r}=e.options;if(!r)return;const n=GX(r);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:a,layoutId:i}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Dr,!(a||i))}const{parent:o}=e;o&&!o.hasCheckedOptimisedAppear&&yK(o)}function vK({attachResizeListener:e,defaultParent:r,measureScroll:n,checkIsScrollRoot:o,resetTransform:a}){return class{constructor(i={},l=r?.()){this.id=EFe++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(RFe),this.nodes.forEach(AFe),this.nodes.forEach(DFe),this.nodes.forEach(zFe)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=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=YOe(p,250),a2.hasAnimatedSinceResize&&(a2.hasAnimatedSinceResize=!1,this.nodes.forEach(wK)))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&c&&(l||s)&&this.addEventListener("didUpdate",({delta:d,hasLayoutChanged:u,hasRelativeLayoutChanged:p,layout:f})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||c.getDefaultTransition()||IFe,{onLayoutAnimationStart:v,onLayoutAnimationComplete:w}=c.getProps(),x=!this.targetLayout||!fK(this.targetLayout,f),k=!u&&p;if(this.options.layoutRoot||this.resumeFrom||k||u&&(x||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const C={...tC(g,"layout"),onPlay:v,onComplete:w};(c.shouldReduceMotion||this.options.layoutRoot)&&(C.delay=0,C.type=!1),this.startAnimation(C),this.setAnimationOrigin(d,k)}else u||wK(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(),$d(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(MFe),this.animationId++)}getTransformTemplate(){const{visualElement: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&&yK(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let d=0;d{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Vo(this.snapshot.measuredBox.x)&&!Vo(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let s=0;s{const $=_/1e3;kK(u.x,i.x,$),kK(u.y,i.y,$),this.setTargetDelta(u),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(n2(p,this.layout.layoutBox,this.relativeParent.layout.layoutBox),PFe(this.relativeTarget,this.relativeTargetOrigin,p,$),C&&wFe(this.relativeTarget,C)&&(this.isProjectionDirty=!1),C||(C=En()),sl(C,this.relativeTarget)),v&&(this.animationValues=d,mFe(d,c,this.latestValues,$,k,x)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=$},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(i){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&($d(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Dr.update(()=>{a2.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=_p(0)),this.currentAnimation=xZ(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(SFe),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&&$K(this.options.animationType,this.layout.layoutBox,c.layoutBox)){s=this.target||En();const u=Vo(this.layout.layoutBox.x);s.x.min=i.target.x.min,s.x.max=s.x.min+u;const p=Vo(this.layout.layoutBox.y);s.y.min=i.target.y.min,s.y.max=s.y.min+p}sl(l,s),nm(l,d),Yy(this.projectionDeltaWithTransform,this.layoutCorrected,l,d)}}registerSharedNode(i,l){this.sharedNodes.has(i)||this.sharedNodes.set(i,new kFe),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&&BC("z",i,c,this.animationValues);for(let d=0;di.currentAnimation?.stop()),this.root.nodes.forEach(bK),this.root.sharedNodes.clear()}}}function CFe(e){e.updateLayout()}function $Fe(e){const r=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&r&&e.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:o}=e.layout,{animationType:a}=e.options,i=r.source!==e.layout.source;a==="size"?gi(u=>{const p=i?r.measuredBox[u]:r.layoutBox[u],f=Vo(p);p.min=n[u].min,p.max=p.min+f}):$K(a,r.layoutBox,n)&&gi(u=>{const p=i?r.measuredBox[u]:r.layoutBox[u],f=Vo(n[u]);p.max=p.min+f,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[u].max=e.relativeTarget[u].min+f)});const l=am();Yy(l,n,r.layoutBox);const s=am();i?Yy(s,e.applyTransform(o,!0),r.measuredBox):Yy(s,n,r.layoutBox);const c=!uK(l);let d=!1;if(!e.resumeFrom){const u=e.getClosestProjectingParent();if(u&&!u.resumeFrom){const{snapshot:p,layout:f}=u;if(p&&f){const g=En();n2(g,r.layoutBox,p.layoutBox);const v=En();n2(v,n,f.layoutBox),fK(g,v)||(d=!0),u.options.layoutRoot&&(e.relativeTarget=v,e.relativeTargetOrigin=g,e.relativeParent=u)}}}e.notifyListeners("didUpdate",{layout:n,snapshot:r,delta:s,layoutDelta:l,hasLayoutChanged:c,hasRelativeLayoutChanged:d})}else if(e.isLead()){const{onExitComplete:n}=e.options;n&&n()}e.options.transition=void 0}function RFe(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function zFe(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function TFe(e){e.clearSnapshot()}function bK(e){e.clearMeasurements()}function xK(e){e.isLayoutDirty=!1}function jFe(e){const{visualElement:r}=e.options;r&&r.getProps().onBeforeLayoutMeasure&&r.notify("BeforeLayoutMeasure"),e.resetTransform()}function wK(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function AFe(e){e.resolveTargetDelta()}function DFe(e){e.calcProjection()}function MFe(e){e.resetSkewAndRotation()}function NFe(e){e.removeLeadSnapshot()}function kK(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 _K(e,r,n,o){e.min=Lr(r.min,n.min,o),e.max=Lr(r.max,n.max,o)}function PFe(e,r,n,o){_K(e.x,r.x,n.x,o),_K(e.y,r.y,n.y,o)}function BFe(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const IFe={duration:.45,ease:[.4,0,.1,1]},SK=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),EK=SK("applewebkit/")&&!SK("chrome/")?Math.round:hi;function CK(e){e.min=EK(e.min),e.max=EK(e.max)}function OFe(e){CK(e.x),CK(e.y)}function $K(e,r,n){return e==="position"||e==="preserve-aspect"&&!ZLe(mK(r),mK(n),.2)}function LFe(e){return e!==e.root&&e.scroll?.wasRoot}const FFe=vK({attachResizeListener:(e,r)=>Uy(e,"resize",r),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),IC={current:void 0},RK=vK({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!IC.current){const e=new FFe({});e.mount(window),e.setOptions({layoutScroll:!0}),IC.current=e}return IC.current},resetTransform:(e,r)=>{e.style.transform=r!==void 0?r:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),VFe={pan:{Feature:dFe},drag:{Feature:cFe,ProjectionNode:RK,MeasureLayout:JZ}};function zK(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,Wy(r)))}class qFe extends Td{mount(){const{current:r}=this.node;r&&(this.unmount=GIe(r,(n,o)=>(zK(this.node,o,"Start"),a=>zK(this.node,a,"End"))))}unmount(){}}class HFe extends Td{constructor(){super(...arguments),this.isActive=!1}onFocus(){let r=!1;try{r=this.node.current.matches(":focus-visible")}catch{r=!0}!r||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=Ay(Uy(this.node.current,"focus",()=>this.onFocus()),Uy(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function TK(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,Wy(r)))}class UFe extends Td{mount(){const{current:r}=this.node;r&&(this.unmount=KIe(r,(n,o)=>(TK(this.node,o,"Start"),(a,{success:i})=>TK(this.node,a,i?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const OC=new WeakMap,LC=new WeakMap,WFe=e=>{const r=OC.get(e.target);r&&r(e)},GFe=e=>{e.forEach(WFe)};function YFe({root:e,...r}){const n=e||document;LC.has(n)||LC.set(n,{});const o=LC.get(n),a=JSON.stringify(r);return o[a]||(o[a]=new IntersectionObserver(GFe,{root:e,...r})),o[a]}function XFe(e,r,n){const o=YFe(r);return OC.set(e,n),o.observe(e),()=>{OC.delete(e),o.unobserve(e)}}const ZFe={some:0,all:1};class KFe extends Td{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:r={}}=this.node.getProps(),{root:n,margin:o,amount:a="some",once:i}=r,l={root:n?n.current:void 0,rootMargin:o,threshold:typeof a=="number"?a:ZFe[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 XFe(this.node.current,l,s)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:r,prevProps:n}=this.node;["amount","margin","root"].some(QFe(r,n))&&this.startObserver()}unmount(){}}function QFe({viewport:e={}},{viewport:r={}}={}){return n=>e[n]!==r[n]}const JFe={inView:{Feature:KFe},tap:{Feature:UFe},focus:{Feature:HFe},hover:{Feature:qFe}},eVe={layout:{ProjectionNode:RK,MeasureLayout:JZ}},tVe={renderer:ALe,...HLe,...JFe},rVe={...tVe,...VFe,...eVe};function jK(e){const r=im(()=>_p(e)),{isStatic:n}=S.useContext(Ep);if(n){const[,o]=S.useState(e);S.useEffect(()=>r.on("change",o),[])}return r}function nVe(){!bC.current&&iZ();const[e]=S.useState(Y3.current);return e}function AK(){const e=nVe(),{reducedMotion:r}=S.useContext(Ep);return r==="never"?!1:r==="always"?!0:e}class oVe{constructor(){this.componentControls=new Set}subscribe(r){return this.componentControls.add(r),()=>this.componentControls.delete(r)}start(r,n){this.componentControls.forEach(o=>{o.start(r.nativeEvent||r,n)})}cancel(){this.componentControls.forEach(r=>{r.cancel()})}stop(){this.componentControls.forEach(r=>{r.stop()})}}const aVe=()=>new oVe;function iVe(){return im(aVe)}const FC=S.createContext(null);FC.displayName="ElementDetailsActorContext";const lVe=()=>{const e=S.useContext(FC);if(e===null)throw new Error("ElementDetailsActorRef is not provided");return e},yi=(e,r,n)=>{const o=a=>({[e]:"__ignore__",...r,...Vu(a)});return{recipeFn:(a,i=!0)=>{const l=cL({conditions:{shift:fL,finalize:hL,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{toHash:(c,d)=>d(c.join(":")),transform:(c,d)=>(j5e(e,n,a,c),d==="__ignore__"?{className:e}:(d=a7(d),{className:`${e}--${c}_${d}`}))}}),s=o(a);if(i){const c=u7(n,s);return Ge(l(s),fe(c))}return l(s)},getVariantProps:o,__getCompoundVariantCss__:a=>u7(n,o(a))}},as=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;const n=(...i)=>Ge(e(...i),r(...i)),o=c7(e.variantKeys,r.variantKeys),a=o.reduce((i,l)=>(i[l]=c7(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)}})},VC=yi("action-btn",{size:"md",radius:"md",variant:"filled"},[]),DK={variant:["transparent","filled"],size:["sm","md"],radius:["sm","md"]},MK=Object.keys(DK),i2=Object.assign(Zn(VC.recipeFn),{__recipe__:!0,__name__:"actionBtn",__getCompoundVariantCss__:VC.__getCompoundVariantCss__,raw:e=>e,variantKeys:MK,variantMap:DK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,MK)},getVariantProps:VC.getVariantProps}),qC=yi("likec4-compound-node",{},[]),NK={isTransparent:["false","true"],inverseColor:["true","false"],borderStyle:["solid","dashed","dotted","none"]},PK=Object.keys(NK),sVe=Object.assign(Zn(qC.recipeFn),{__recipe__:!0,__name__:"compoundNode",__getCompoundVariantCss__:qC.__getCompoundVariantCss__,raw:e=>e,variantKeys:PK,variantMap:NK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,PK)},getVariantProps:qC.getVariantProps}),HC=yi("likec4-edge-action-btn",{},[]),BK={},IK=Object.keys(BK),cVe=Object.assign(Zn(HC.recipeFn),{__recipe__:!0,__name__:"edgeActionBtn",__getCompoundVariantCss__:HC.__getCompoundVariantCss__,raw:e=>e,variantKeys:IK,variantMap:BK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,IK)},getVariantProps:HC.getVariantProps}),UC=yi("likec4-edge-label",{pointerEvents:"all",isStepEdge:!1,cursor:"default"},[]),OK={pointerEvents:["none","all"],cursor:["pointer","default"],isStepEdge:["false","true"]},LK=Object.keys(OK),dVe=Object.assign(Zn(UC.recipeFn),{__recipe__:!0,__name__:"edgeLabel",__getCompoundVariantCss__:UC.__getCompoundVariantCss__,raw:e=>e,variantKeys:LK,variantMap:OK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,LK)},getVariantProps:UC.getVariantProps}),FK={},uVe=[],pVe=[["path","likec4-edge__path"],["pathBg","likec4-edge__pathBg"],["markersCtx","likec4-edge__markersCtx"],["middlePoint","likec4-edge__middlePoint"]],hVe=pVe.map(([e,r])=>[e,yi(r,FK,s7(uVe,e))]),fVe=Zn((e={})=>Object.fromEntries(hVe.map(([r,n])=>[r,n.recipeFn(e)]))),VK=[],mVe=e=>({...FK,...Vu(e)}),gVe=Object.assign(fVe,{__recipe__:!1,__name__:"edgePath",raw:e=>e,classNameMap:{},variantKeys:VK,variantMap:{},splitVariantProps(e){return Fn(e,VK)},getVariantProps:mVe}),WC=yi("likec4-element-node-data",{},[]),qK={},HK=Object.keys(qK),yVe=Object.assign(Zn(WC.recipeFn),{__recipe__:!0,__name__:"elementNodeData",__getCompoundVariantCss__:WC.__getCompoundVariantCss__,raw:e=>e,variantKeys:HK,variantMap:qK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,HK)},getVariantProps:WC.getVariantProps}),GC=yi("likec4-element-shape",{},[]),UK={shapetype:["html","svg"]},WK=Object.keys(UK),GK=Object.assign(Zn(GC.recipeFn),{__recipe__:!0,__name__:"elementShapeRecipe",__getCompoundVariantCss__:GC.__getCompoundVariantCss__,raw:e=>e,variantKeys:WK,variantMap:UK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,WK)},getVariantProps:GC.getVariantProps}),YC=yi("likec4-tag",{autoTextColor:!1},[]),YK={autoTextColor:["false","true"]},XK=Object.keys(YK),vVe=Object.assign(Zn(YC.recipeFn),{__recipe__:!0,__name__:"likec4tag",__getCompoundVariantCss__:YC.__getCompoundVariantCss__,raw:e=>e,variantKeys:XK,variantMap:YK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,XK)},getVariantProps:YC.getVariantProps}),XC=yi("likec4-markdown-block",{uselikec4palette:!1,value:"markdown"},[]),ZK={uselikec4palette:["true","false"],value:["markdown","plaintext"]},KK=Object.keys(ZK),bVe=Object.assign(Zn(XC.recipeFn),{__recipe__:!0,__name__:"markdownBlock",__getCompoundVariantCss__:XC.__getCompoundVariantCss__,raw:e=>e,variantKeys:KK,variantMap:ZK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,KK)},getVariantProps:XC.getVariantProps}),ZC=yi("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"}}}]),QK={variant:["default","filled"],type:["default","warning"]},JK=Object.keys(QK),eQ=Object.assign(Zn(ZC.recipeFn),{__recipe__:!0,__name__:"navigationPanelActionIcon",__getCompoundVariantCss__:ZC.__getCompoundVariantCss__,raw:e=>e,variantKeys:JK,variantMap:QK,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,JK)},getVariantProps:ZC.getVariantProps}),KC=yi("likec4-overlay",{fullscreen:!1,withBackdrop:!0},[]),tQ={fullscreen:["false","true"],withBackdrop:["false","true"]},rQ=Object.keys(tQ),xVe=Object.assign(Zn(KC.recipeFn),{__recipe__:!0,__name__:"overlay",__getCompoundVariantCss__:KC.__getCompoundVariantCss__,raw:e=>e,variantKeys:rQ,variantMap:tQ,merge(e){return as(this,e)},splitVariantProps(e){return Fn(e,rQ)},getVariantProps:KC.getVariantProps}),nQ={truncateLabel:!1},wVe=[],kVe=[["root","likec4-navlink__root"],["body","likec4-navlink__body"],["section","likec4-navlink__section"],["label","likec4-navlink__label"],["description","likec4-navlink__description"]],_Ve=kVe.map(([e,r])=>[e,yi(r,nQ,s7(wVe,e))]),SVe=Zn((e={})=>Object.fromEntries(_Ve.map(([r,n])=>[r,n.recipeFn(e)]))),oQ=["truncateLabel"],EVe=e=>({...nQ,...Vu(e)}),CVe=Object.assign(SVe,{__recipe__:!1,__name__:"navigationLink",raw:e=>e,classNameMap:{},variantKeys:oQ,variantMap:{truncateLabel:["true","false"]},splitVariantProps(e){return Fn(e,oQ)},getVariantProps:EVe});function aQ(){return pf()}function QC(e,r){return Dt(it(e),r??Ir)}function JC(){return vr()}const $Ve=e=>Math.round(e.transform[2]*100)/100;function RVe(){return Dt($Ve)}const zVe=e=>e.transform[2]<.2;function TVe(){return Dt(zVe)}const{abs:Xy,cos:ic,sin:cm,acos:jVe,atan2:Zy,sqrt:jd,pow:vi}=Math;function Ky(e){return e<0?-vi(-e,.3333333333333333):vi(e,.3333333333333333)}const iQ=Math.PI,l2=2*iQ,Ad=iQ/2,AVe=1e-6,e$=Number.MAX_SAFE_INTEGER||9007199254740991,t$=Number.MIN_SAFE_INTEGER||-9007199254740991,DVe={x:0,y:0,z:0},Oe={Tvalues:[-.06405689286260563,.06405689286260563,-.1911188674736163,.1911188674736163,-.3150426796961634,.3150426796961634,-.4337935076260451,.4337935076260451,-.5454214713888396,.5454214713888396,-.6480936519369755,.6480936519369755,-.7401241915785544,.7401241915785544,-.820001985973903,.820001985973903,-.8864155270044011,.8864155270044011,-.9382745520027328,.9382745520027328,-.9747285559713095,.9747285559713095,-.9951872199970213,.9951872199970213],Cvalues:[.12793819534675216,.12793819534675216,.1258374563468283,.1258374563468283,.12167047292780339,.12167047292780339,.1155056680537256,.1155056680537256,.10744427011596563,.10744427011596563,.09761865210411388,.09761865210411388,.08619016153195327,.08619016153195327,.0733464814110803,.0733464814110803,.05929858491543678,.05929858491543678,.04427743881741981,.04427743881741981,.028531388628933663,.028531388628933663,.0123412297999872,.0123412297999872],arcfn:function(e,r){const n=r(e);let o=n.x*n.x+n.y*n.y;return typeof n.z<"u"&&(o+=n.z*n.z),jd(o)},compute:function(e,r,n){if(e===0)return r[0].t=0,r[0];const o=r.length-1;if(e===1)return r[o].t=1,r[o];const 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],DVe],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=vi(e,r)+vi(1-e,r),o=n-1;return Xy(o/n)},projectionratio:function(e,r){if(r!==2&&r!==3)return!1;if(typeof e>"u")e=.5;else if(e===0||e===1)return e;const n=vi(1-e,r),o=vi(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 Oe.lli8(a,i,l,s,c,d,u,p)},lli:function(e,r){return Oe.lli4(e,e.c,r,r.c)},makeline:function(e,r){return new Fr(e.x,e.y,(e.x+r.x)/2,(e.y+r.y)/2,r.x,r.y)},findbbox:function(e){let r=e$,n=e$,o=t$,a=t$;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=Oe.makeline(r.points[o-1],e.points[0]),l=Oe.makeline(e.points[a-1],r.points[0]),s={startcap:i,forward:e,back:r,endcap:l,bbox:Oe.findbbox([i,e,r,l])};return s.intersections=function(c){return Oe.shapeintersections(s,s.bbox,c,c.bbox,n)},s},getminmax:function(e,r,n){if(!n)return{min:0,max:0};let o=e$,a=t$,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=-Zy(r.p2.y-o,r.p2.x-n),i=function(l){return{x:(l.x-n)*ic(a)-(l.y-o)*cm(a),y:(l.x-n)*cm(a)+(l.y-o)*ic(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=Oe.align(e,r),a=function(A){return 0<=A&&A<=1};if(n===2){const A=o[0].y,z=o[1].y,j=o[2].y,I=A-2*z+j;if(I!==0){const P=-jd(z*z-A*j),L=-A+z,H=-(P+L)/I,M=-(-P+L)/I;return[H,M].filter(a)}else if(z!==j&&I===0)return[(2*z-j)/(2*z-2*j)].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(Oe.approximately(d,0)){if(Oe.approximately(u,0))return Oe.approximately(p,0)?[]:[-f/p].filter(a);const A=jd(p*p-4*u*f),z=2*u;return[(A-p)/z,(-p-A)/z].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,_,$,R,T;if(k<0){const A=-g/3,z=A*A*A,j=jd(z),I=-w/(2*j),P=I<-1?-1:I>1?1:I,L=jVe(P),H=Ky(j),M=2*H;return $=M*ic(L/3)-u/3,R=M*ic((L+l2)/3)-u/3,T=M*ic((L+2*l2)/3)-u/3,[$,R,T].filter(a)}else{if(k===0)return C=x<0?Ky(-x):-Ky(x),$=2*C-u/3,R=-C-u/3,[$,R].filter(a);{const A=jd(k);return C=Ky(-x+A),_=Ky(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=-jd(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=Oe.compute(e,r),f=Oe.compute(e,n),g=p.x*p.x+p.y*p.y;if(o?(i=jd(vi(p.y*f.z-f.y*p.z,2)+vi(p.z*f.x-f.z*p.x,2)+vi(p.x*f.y-f.x*p.y,2)),l=vi(g+p.z*p.z,3/2)):(i=p.x*f.y-p.y*f.x,l=vi(g,3/2)),i===0||l===0)return{k:0,r:0};if(d=i/l,u=l/i,!a){const v=Oe.curvature(e-.001,r,n,o,!0).k,w=Oe.curvature(e+.001,r,n,o,!0).k;c=(w-d+(d-v))/2,s=(Xy(w-d)+Xy(d-v))/2}return{k:d,r:u,dk:c,adk:s}},inflections:function(e){if(e.length<4)return[];const r=Oe.align(e,{p1:e[0],p2:e.slice(-1)[0]}),n=r[2].x*r[1].y,o=r[3].x*r[1].y,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(Oe.approximately(l,0)){if(!Oe.approximately(s,0)){let f=-c/s;if(0<=f&&f<=1)return[f]}return[]}const d=2*l;if(Oe.approximately(d,0))return[];const u=s*s-4*l*c;if(u<0)return[];const p=Math.sqrt(u);return[(p-s)/d,-(s+p)/d].filter(function(f){return 0<=f&&f<=1})},bboxoverlap:function(e,r){const n=["x","y"],o=n.length;for(let 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.sizeT||T>A)&&(R+=l2),R>A&&(z=A,A=R,R=z)):A4){if(arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");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+Jy(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=Oe.dist(n,l.C));const s=i*(1-a)/a,c=Oe.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},R={x:o.x+(_.x-o.x)/(1-a),y:o.y+(_.y-o.y)/(1-a)};return new Fr(r,$,R,o)}static getUtils(){return Oe}getUtils(){return Fr.getUtils()}static get PolyBezier(){return Qy}valueOf(){return this.toString()}toString(){return Oe.pointsToString(this.points)}toSVG(){if(this._3d)return!1;const r=this.points,n=r[0].x,o=r[0].y,a=["M",n,o,this.order===2?"Q":"C"];for(let i=1,l=r.length;i0}length(){return Oe.length(this.derivative.bind(this))}static getABC(r=2,n,o,a,i=.5){const l=Oe.projectionratio(i,r),s=1-l,c={x:l*n.x+s*a.x,y:l*n.y+s*a.y},d=Oe.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?Oe.computeWithRatios(r,this.points,this.ratios,this._3d):Oe.compute(r,this.points,this._3d,this.ratios)}raise(){const r=this.points,n=[r[0]],o=r.length;for(let 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(Oe.numberSort))}).bind(this)),r.values=n.sort(Oe.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]=Oe.getminmax(this,o,r[o])}).bind(this)),n}overlaps(r){const n=this.bbox(),o=r.bbox();return Oe.bboxoverlap(n,o)}offset(r,n){if(typeof n<"u"){const o=this.get(r),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=Oe.angle(this.points[0],this.points[3],this.points[1]),i=Oe.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),Jy(PVe(o))(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=Oe.lli4(c[0],c[0].c,c[1],c[1].c);if(!u)throw new Error("cannot scale this curve. Try reducing it first.");return[0,1].forEach(function(p){const f=d[p*n]=Oe.copy(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=e0(g.x*g.x+g.y*g.y);g.x/=w,g.y/=w,d[p+1]={x:f.x+v*g.x,y:f.y+v*g.y}}}),new Fr(d)):([0,1].forEach(p=>{if(n===2&&p)return;const f=d[p*n],g=this.derivative(p),v={x:f.x+g.x,y:f.y+g.y};d[p+1]=Oe.lli4(f,v,u,i[p+1])}),new Fr(d))}outline(r,n,o,a){if(n=n===void 0?r:n,this._linear){const R=this.normal(0),T=this.points[0],A=this.points[this.points.length-1];let z,j,I;o===void 0&&(o=r,a=n),z={x:T.x+R.x*r,y:T.y+R.y*r},I={x:A.x+R.x*o,y:A.y+R.y*o},j={x:(z.x+I.x)/2,y:(z.y+I.y)/2};const P=[z,j,I];z={x:T.x-R.x*n,y:T.y-R.y*n},I={x:A.x-R.x*a,y:A.y-R.y*a},j={x:(z.x+I.x)/2,y:(z.y+I.y)/2};const L=[I,j,z],H=Oe.makeline(L[2],P[0]),M=Oe.makeline(P[2],L[0]),V=[H,new Fr(P),M,new Fr(L)];return new Qy(V)}const 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(R,T,A,z,j){return function(I){const P=z/A,L=(z+j)/A,H=T-R;return Oe.map(I,0,1,R+P*H,R+L*H)}}i.forEach(function(R){const T=R.length();f?(s.push(R.scale(g(r,o,p,u,T))),c.push(R.scale(g(-n,-a,p,u,T)))):(s.push(R.scale(r)),c.push(R.scale(-n))),u+=T}),c=c.map(function(R){return d=R.points,d[3]?R.points=[d[3],d[2],d[1],d[0]]:R.points=[d[2],d[1],d[0]],R}).reverse();const v=s[0].points[0],w=s[l-1].points[s[l-1].points.length-1],x=c[l-1].points[c[l-1].points.length-1],k=c[0].points[0],C=Oe.makeline(x,v),_=Oe.makeline(w,k),$=[C].concat(s).concat([_]).concat(c);return new Qy($)}outlineshapes(r,n,o){n=n||r;const 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 Oe.between(s.x,n,a)&&Oe.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=Oe.dist(r,n),d=Oe.dist(r,l),u=Oe.dist(r,s);return Jy(d-c)+Jy(u-c)}_iterate(r,n){let o=0,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=Oe.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*MVe(d.e),y:d.y+d.r*NVe(d.e)};d.e+=Oe.angle({x:d.x,y:d.y},x,this.get(1))}break}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 cQ(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}const r$=e=>({x:Math.round(e.internals.positionAbsolute.x),y:Math.round(e.internals.positionAbsolute.y),width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0});function n$(e){const{width:r,height:n}=_o(e),{x:o,y:a}=e.internals.positionAbsolute;return{x:Math.round(o+r/2),y:Math.round(a+n/2)}}function s2(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 c2(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 d2(e,r){const n=a9(e)?{x:e[0],y:e[1]}:e,o=a9(r)?{x:r[0],y:r[1]}:r;return IVe(n,o)<2.1}function IVe(e,r){return Math.hypot(r.x-e.x,r.y-e.y)}function nn(e){return e.stopPropagation()}function OVe(e){let[r,...n]=e;He(r,"start should be defined");let o=`M ${r[0]},${r[1]}`;for(;xn(n,3);){const[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 u2=S.forwardRef(({tag:e,cursor:r,className:n,style:o,...a},i)=>{const l=_Ne(e);return y.jsxs(hr,{ref:i,"data-likec4-tag":e,className:Ge(vVe({autoTextColor:GO(l)}),n),...a,style:{cursor:r,...o},children:[y.jsx("span",{children:"#"}),y.jsx("span",{children:e})]})}),LVe=(e,r)=>e.data.width===r.data.width&&tt(e.data.tags,r.data.tags)&&(e.data.hovered??!1)===(r.data.hovered??!1),t0=S.memo(({id:e,data:{tags:r,width:n,hovered:o=!1}})=>{const{hovered:a,ref:i}=b9(),{hovered:l,ref:s}=b9(),[c,d]=ZRe(!1,o?120:300);S.useEffect(()=>{d(x=>x?o||a||l:o&&(a||l))},[a,l,o]);const u=RVe(),p=u>1.2,f=Nt(),g=x=>{f.send({type:"tag.highlight",tag:x})},v=S.useCallback(()=>{f.send({type:"tag.unhighlight"})},[]);if(!r||r.length===0)return null;const w=Math.max(Math.round(n*u)-10,200);return y.jsxs(y.Fragment,{children:[y.jsx("div",{ref: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(r9,{isVisible:c,align:"start",position:Ue.Bottom,children:y.jsx(Or,{ref:s,css:{gap:"0.5",alignItems:"baseline",flexWrap:"wrap",pb:"sm",translate:"auto",x:"[-8px]",maxWidth:w},children:r.map(x=>y.jsx(u2,{tag:x,cursor:"pointer",className:fe({userSelect:"none",...p&&{fontSize:"lg",borderRadius:"[4px]",px:"1.5"}}),onClick:k=>{k.stopPropagation(),f.openSearch(`#${x}`)},onMouseEnter:()=>g(x),onMouseLeave:v},x))})})]})},LVe);t0.displayName="ElementTags";const FVe=S.forwardRef((e,r)=>y.jsx("svg",{height:"24",width:"24",fill:"currentColor",...e,viewBox:"0 0 24 24",ref:r,children:y.jsx("path",{d:"M12 1C5.923 1 1 5.923 1 12c0 4.867 3.149 8.979 7.521 10.436.55.096.756-.233.756-.522 0-.262-.013-1.128-.013-2.049-2.764.509-3.479-.674-3.699-1.292-.124-.317-.66-1.293-1.127-1.554-.385-.207-.936-.715-.014-.729.866-.014 1.485.797 1.691 1.128.99 1.663 2.571 1.196 3.204.907.096-.715.385-1.196.701-1.471-2.448-.275-5.005-1.224-5.005-5.432 0-1.196.426-2.186 1.128-2.956-.111-.275-.496-1.402.11-2.915 0 0 .921-.288 3.024 1.128a10.193 10.193 0 0 1 2.75-.371c.936 0 1.871.123 2.75.371 2.104-1.43 3.025-1.128 3.025-1.128.605 1.513.221 2.64.111 2.915.701.77 1.127 1.747 1.127 2.956 0 4.222-2.571 5.157-5.019 5.432.399.344.743 1.004.743 2.035 0 1.471-.014 2.654-.014 3.025 0 .289.206.632.756.522C19.851 20.979 23 16.854 23 12c0-6.077-4.922-11-11-11Z"})})),VVe=[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]],dQ=wt("outline","check","Check",VVe),qVe=[["path",{d:"M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]],HVe=wt("outline","copy","Copy",qVe),uQ="https://github.com/",o$=S.forwardRef(({value:e,className:r,...n},o)=>{const a=e.url.includes("://")?e.url:new window.URL(e.url,window.location.href).toString();let i=a.startsWith(uQ);return y.jsx(ec,{ref:o,variant:"default",radius:"sm",size:"sm",tt:"none",leftSection:e.title?y.jsx(y.Fragment,{children:e.title}):null,rightSection:y.jsx(UW,{value: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(dQ,{}):y.jsx(HVe,{stroke:2.5})})}),...n,className:Ge(r,"group"),classNames:{root:fe({flexWrap:"nowrap",minHeight:24,maxWidth:500,userSelect:"all",pr:"0",backgroundColor:{base:"transparent",_hover:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]"}}}),section:fe({'&:is([data-position="left"])':{color:"mantine.colors.dimmed",userSelect:"none",pointerEvents:"none",_groupHover:{color:"[var(--badge-color)]",opacity:.7}}})},children:y.jsxs(Ed.a,{href: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(FVe,{height:"12",width:"12",style:{verticalAlign:"middle",marginRight:"4px"}}),i?a.replace(uQ,""):a]})})});function UVe(){return S.useContext(GS)}function WVe(){const e=S.useContext(GS);if(!e)throw new Error("No LikeC4ViewModel in context found");return e}const p2="--_blur",h2="--_opacity",GVe=fe({boxSizing:"border-box",margin:"0",padding:"0",position:"fixed",inset:"0",width:"100vw",height:"100vh",maxWidth:"100vw",maxHeight:"100vh",background:"transparent",border:"transparent",_backdrop:{backdropFilter:"auto",backdropBlur:`var(${p2})`,backgroundColor:`[rgb(36 36 36 / var(${h2}, 5%))]`}}),YVe=fe({position:"absolute",pointerEvents:"all",display:"flex",flexDirection:"column",padding:"4",gap:"lg",justifyContent:"stretch",color:"mantine.colors.text",boxShadow:"md",overflow:"hidden",border:"none",background:`[ linear-gradient(180deg, color-mix(in oklab, var(--likec4-palette-fill) 60%, transparent), color-mix(in oklab, var(--likec4-palette-fill) 20%, transparent) 8px, @@ -131,7 +131,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"}}),f2="--view-title-color",m2="--icon-color",QVe=fe({width:"100%",background:"mantine.colors.body",borderRadius:"sm",padding:"[10px 8px]",transition:"fast",border:"1px dashed",borderColor:"mantine.colors.defaultBorder",[f2]:"{colors.mantine.colors.dark[1]}",_hover:{background:"mantine.colors.defaultHover",[m2]:"{colors.mantine.colors.dark[1]}",[f2]:"{colors.mantine.colors.defaultColor}"},_dark:{background:"mantine.colors.dark[6]"},_light:{[m2]:"{colors.mantine.colors.gray[6]}",[f2]:"{colors.mantine.colors.gray[7]}",_hover:{[m2]:"{colors.mantine.colors.gray[7]}"}},"& .mantine-ThemeIcon-root":{transition:"fast",color:`[var(${m2}, {colors.mantine.colors.dark[2]})]`,"--ti-size":"22px",_hover:{color:"mantine.colors.defaultColor"}},"& > *":{transition:"all 130ms {easings.inOut}"},"&:hover > *":{transitionTimingFunction:"out",transform:"translateX(1.6px)"}}),JVe=fe({transition:"fast",color:`[var(${f2}, {colors.mantine.colors.gray[7]})]`,fontSize:"15px",fontWeight:500,lineHeight:"1.4"}),eqe=fe({flex:1,display:"flex",flexDirection:"column",justifyContent:"stretch",overflow:"hidden",gap:"sm"}),tqe=fe({background:"mantine.colors.gray[1]",borderRadius:"sm",flexWrap:"nowrap",gap:"1.5",padding:"1",_dark:{background:"mantine.colors.dark[7]"}}),rqe=fe({fontSize:"xs",fontWeight:500,flexGrow:1,padding:"[6px 8px]",transition:"fast",borderRadius:"sm",color:"mantine.colors.gray[7]",_hover:{transitionTimingFunction:"out",color:"mantine.colors.defaultColor",background:"mantine.colors.gray[3]"},"&[data-active]":{transition:"none",background:"mantine.colors.white",shadow:"xs",color:"mantine.colors.defaultColor"},_dark:{color:"mantine.colors.dark[1]",_hover:{color:"mantine.colors.white",background:"mantine.colors.dark[6]"},"&:is([data-active])":{color:"mantine.colors.white",background:"mantine.colors.dark[5]"}}}),nqe=fe({flex:1,overflow:"hidden",position:"relative","&:not(:has(.mantine-ScrollArea-root))":{paddingLeft:"1",paddingRight:"1"},"& .mantine-ScrollArea-root":{width:"100%",height:"100%","& > div":{paddingLeft:"1",paddingRight:"1"}}}),oqe=fe({flex:1,display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content max-content",gap:"[24px 20px]",alignItems:"baseline",justifyItems:"stretch"}),aqe=fe({justifySelf:"end",textAlign:"right",userSelect:"none"}),iqe=fe({position:"absolute",width:"14px",height:"14px",border:"3.5px solid",borderColor:"mantine.colors.dark[3]",borderTop:"none",borderLeft:"none",borderRadius:"2px",bottom:"0.5",right:"0.5",transition:"fast",cursor:"se-resize",_hover:{borderWidth:"4px",borderColor:"mantine.colors.dark[1]"}}),lqe=[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]],i$=wt("outline","chevron-down","ChevronDown",lqe),sqe=[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]],Dd=wt("outline","chevron-right","ChevronRight",sqe);function pQ({children:e}){return y.jsx(y.Fragment,{children:e})}function hQ({value:e,isExpanded:r}){const[n,o]=S.useState(!1),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 cqe({values:e,isExpanded:r}){return r?y.jsx(Lo,{gap:"xs",children:e.map((n,o)=>y.jsxs(Js,{align:"center",gap:"xs",children:[y.jsx(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(hQ,{value:n,isExpanded:!0})})]},o))}):y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center",padding:"xs",gap:"xs",flexWrap:"wrap",minWidth:0,overflow:"hidden"}),children:e.map((n,o)=>y.jsxs(Js,{align:"center",gap:"xs",style:{minWidth:0},children:[y.jsx(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(Js,{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(i$,{size:12}):y.jsx(Dd,{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(cqe,{values:n,isExpanded:a}):y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center"}),children:y.jsx(hQ,{value:n[0]||"",isExpanded:a})})})]})}const uqe=fe({"&[data-level='1']":{marginBottom:"sm"}}),pqe=fe({cursor:"default",marginTop:"0",marginBottom:"0"}),fQ=fe({transition:"fast",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.dark[1]"},"& > *":{transition:"fast"},_hover:{transitionTimingFunction:"out","& > :not([data-no-transform])":{transitionTimingFunction:"out",transform:"translateX(1px)"}}}),hqe=Ge(fQ),fqe=Ge(fQ,fe({cursor:"pointer",width:"100%",justifyContent:"stretch",flexWrap:"nowrap",height:"36px",paddingInlineStart:"[16px]",paddingInlineEnd:"2.5",borderRadius:"sm",alignItems:"center",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.gray.lightColor"},_hover:{background:"mantine.colors.gray.lightHover"},"& .tabler-icon":{transition:"fast",width:"90%",opacity:.65}})),mqe=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]],r0=wt("outline","info-circle","InfoCircle",mqe),gqe=[["path",{d:"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M12 12m-5 0a5 5 0 1 0 10 0a5 5 0 1 0 -10 0",key:"svg-1"}],["path",{d:"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-2"}]],yqe=wt("outline","target","Target",gqe),vqe=[["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-0"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-2"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-3"}],["path",{d:"M8 11a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-4"}],["path",{d:"M16 16l-2.5 -2.5",key:"svg-5"}]],bi=wt("outline","zoom-scan","ZoomScan",vqe),bqe=({node:e})=>y.jsxs(en,{className:hqe,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})]}),xqe=({instance:e})=>{const r=Nt(),n=r.currentView.id,o=[...e.views()];return y.jsxs(en,{className:fqe,gap:4,children:[y.jsx(Ta,{color:"gray",variant:"transparent",size:"xs",flex:0,children:y.jsx(yqe,{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(Ta,{size:"sm",variant:"transparent",color:"gray",children:y.jsx(bi,{stroke:1.8,opacity:.65})}),styles:{itemSection:{marginInlineEnd:$e(8)}},onClick:i=>{i.stopPropagation(),r.navigateTo(a.id)},children:a.title},a.id))})]})]})]})},wqe=()=>{},kqe=S.memo(({elementFqn:e})=>{const r=Fo().element(e),n=[...r.deployments()],o=_y({multiple:!1});o.setHoveredNode=wqe;const a=S.useMemo(()=>{let i=[],l=new Map;for(const s of r.deployments()){let c={label:y.jsx(xqe,{instance:s}),value:s.id,type:"instance",children:[]};l.set(s.id,c);let d=s.parent;for(;d;){let u=l.get(d.id);if(u){u.children.push(c);break}u={label:y.jsx(bqe,{node:d}),value:d.id,type:"node",children:[c]},l.set(d.id,u),c=u,d=d.parent}!d&&!i.includes(c)&&i.push(c)}return i},[r]);return S.useEffect(()=>{o.expandAllNodes()},[a]),n.length===0?y.jsx(f3,{variant:"light",color:"gray",icon:y.jsx(r0,{}),children:"This element does not have any deployments"}):y.jsx(Ff,{levelOffset:"sm",allowRangeSelection:!1,classNames:{node:uqe,label:pqe},styles:{root:{position:"relative",width:"min-content",minWidth:300}},data: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})})}),_qe=()=>{},mQ=(e,r)=>{if(e===r)return!0;if(e.length!==r.length)return!1;for(const[n,o]of e.entries())if(!(o===r[n]||Ir(o,r[n])))return!1;return!0};function $p(e,r,n,o){const a=kL();K5e(a?_qe:e,r,mQ,o)}function Sqe(){const e=typeof window<"u"&&typeof window.devicePixelRatio=="number"?window.devicePixelRatio:1;return ti(Math.floor(e),{min:1,max:4})}let g2;function Md(e){return g2??=Sqe(),g2<2?Math.round(e):Math.round(e*g2)/g2}function Eqe(e){switch(e){case"dots":return Qi.Dots;case"lines":return Qi.Lines;case"cross":return Qi.Cross;default:Qo(e)}}const Cqe=(e,r)=>typeof e.background=="string"&&typeof r.background=="string"?e.background===r.background:tt(e.background,r.background),gQ=S.memo(({background:e})=>typeof e=="string"?y.jsx(bq,{variant:Eqe(e),size:2,gap:20}):y.jsx(bq,{...e}),Cqe);gQ.displayName="Background";const yQ=(e,r)=>(e.data.dimmed??!1)===r?e:{...e,data:{...e.data,dimmed:r}};function $qe(e,r){return r!==void 0?yQ(e,r):n=>yQ(n,e)}const vQ=(e,r)=>(e.data.hovered??!1)===r?e:{...e,data:{...e.data,hovered:r}};function zqe(e,r){return r!==void 0?vQ(e,r):n=>vQ(n,e)}function bQ(e,r){return Nq(e.data,r)?e:{...e,data:{...e.data,...r}}}function Rqe(e,r){return r!==void 0?bQ(e,r):n=>bQ(n,e)}const tr={setDimmed:$qe,setHovered:zqe,setData:Rqe},lc={Compound:1,Edge:20,Element:20,Max:30},xi=.05,l$=3,y2={default:"16px",withControls:{top:"58px",left:"16px",right:"16px",bottom:"16px"}};function s$({nodes:e,edges:r,onEdgesChange:n,onNodesChange:o,className: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 T=S.useMemo(()=>({minZoom:xi,maxZoom:1,padding:f,includeHiddenNodes:!1}),[f]),A=d!=="transparent"&&d!=="solid",R=TVe(),j=JC(),{colorScheme:I}=mTe();return p||(p=I==="auto"?"system":I),y.jsxs(REe,{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?l$:1,minZoom:l?xi:1,fitView:g,fitViewOptions:T,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=Md(L),B=Md(H);(L!==V||H!==B)&&j.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(gQ,{background:d}),w&&y.jsx(jqe,{onViewportResize:w}),u]})}const Tqe=({width:e,height:r})=>(e||1)*(r||1),jqe=({onViewportResize:e})=>{const r=Dt(Tqe);return $p(e,[r]),null},xQ=S.createContext(null);function wQ(){return mt(S.useContext(xQ),"No RelationshipsBrowserActorContext")}function v2(e,r=Ir){const n=wQ();return pn(n,e,r)}function n0(){const e=wQ();return S.useMemo(()=>({actor:e,get rootElementId(){return`relationships-browser-${e.sessionId.replaceAll(":","_")}`},getState:()=>e.getSnapshot().context,send:e.send,updateView:r=>{e.getSnapshot().status==="active"&&e.send({type:"update.view",layouted:r})},changeScope:r=>{e.send({type:"change.scope",scope:r})},navigateTo:(r,n)=>{e.send({type:"navigate.to",subject:r,fromNode:n})},fitDiagram:()=>{e.send({type:"fitDiagram"})},close:()=>{e._parent?e._parent?.send({type:"close",actorId:e.id}):e.send({type:"close"})}}),[e])}var c$,kQ;function d$(){if(kQ)return c$;kQ=1;var e="\0",r="\0",n="";class o{_isDirected=!0;_isMultigraph=!1;_isCompound=!1;_label;_defaultNodeLabelFn=()=>{};_defaultEdgeLabelFn=()=>{};_nodes={};_in={};_preds={};_out={};_sucs={};_edgeObjs={};_edgeLabels={};_nodeCount=0;_edgeCount=0;_parent;_children;constructor(u){u&&(this._isDirected=Object.hasOwn(u,"directed")?u.directed:!0,this._isMultigraph=Object.hasOwn(u,"multigraph")?u.multigraph:!1,this._isCompound=Object.hasOwn(u,"compound")?u.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[r]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(u){return this._label=u,this}graph(){return this._label}setDefaultNodeLabel(u){return this._defaultNodeLabelFn=u,typeof u!="function"&&(this._defaultNodeLabelFn=()=>u),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var u=this;return this.nodes().filter(p=>Object.keys(u._in[p]).length===0)}sinks(){var u=this;return this.nodes().filter(p=>Object.keys(u._out[p]).length===0)}setNodes(u,p){var f=arguments,g=this;return u.forEach(function(v){f.length>1?g.setNode(v,p):g.setNode(v)}),this}setNode(u,p){return Object.hasOwn(this._nodes,u)?(arguments.length>1&&(this._nodes[u]=p),this):(this._nodes[u]=arguments.length>1?p:this._defaultNodeLabelFn(u),this._isCompound&&(this._parent[u]=r,this._children[u]={},this._children[r][u]=!0),this._in[u]={},this._preds[u]={},this._out[u]={},this._sucs[u]={},++this._nodeCount,this)}node(u){return this._nodes[u]}hasNode(u){return Object.hasOwn(this._nodes,u)}removeNode(u){var p=this;if(Object.hasOwn(this._nodes,u)){var f=g=>p.removeEdge(p._edgeObjs[g]);delete this._nodes[u],this._isCompound&&(this._removeFromParentsChildList(u),delete this._parent[u],this.children(u).forEach(function(g){p.setParent(g)}),delete this._children[u]),Object.keys(this._in[u]).forEach(f),delete this._in[u],delete this._preds[u],Object.keys(this._out[u]).forEach(f),delete this._out[u],delete this._sucs[u],--this._nodeCount}return this}setParent(u,p){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(p===void 0)p=r;else{p+="";for(var f=p;f!==void 0;f=this.parent(f))if(f===u)throw new Error("Setting "+p+" as parent of "+u+" would create a cycle");this.setNode(p)}return this.setNode(u),this._removeFromParentsChildList(u),this._parent[u]=p,this._children[p][u]=!0,this}_removeFromParentsChildList(u){delete this._children[this._parent[u]][u]}parent(u){if(this._isCompound){var p=this._parent[u];if(p!==r)return p}}children(u=r){if(this._isCompound){var p=this._children[u];if(p)return Object.keys(p)}else{if(u===r)return this.nodes();if(this.hasNode(u))return[]}}predecessors(u){var p=this._preds[u];if(p)return Object.keys(p)}successors(u){var p=this._sucs[u];if(p)return Object.keys(p)}neighbors(u){var p=this.predecessors(u);if(p){const g=new Set(p);for(var f of this.successors(u))g.add(f);return Array.from(g.values())}}isLeaf(u){var p;return this.isDirected()?p=this.successors(u):p=this.neighbors(u),p.length===0}filterNodes(u){var p=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});p.setGraph(this.graph());var f=this;Object.entries(this._nodes).forEach(function([w,x]){u(w)&&p.setNode(w,x)}),Object.values(this._edgeObjs).forEach(function(w){p.hasNode(w.v)&&p.hasNode(w.w)&&p.setEdge(w,f.edge(w))});var g={};function v(w){var x=f.parent(w);return x===void 0||p.hasNode(x)?(g[w]=x,x):x in g?g[x]:v(x)}return this._isCompound&&p.nodes().forEach(w=>p.setParent(w,v(w))),p}setDefaultEdgeLabel(u){return this._defaultEdgeLabelFn=u,typeof u!="function"&&(this._defaultEdgeLabelFn=()=>u),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(u,p){var f=this,g=arguments;return u.reduce(function(v,w){return g.length>1?f.setEdge(v,w,p):f.setEdge(v,w),w}),this}setEdge(){var u,p,f,g,v=!1,w=arguments[0];typeof w=="object"&&w!==null&&"v"in w?(u=w.v,p=w.w,f=w.name,arguments.length===2&&(g=arguments[1],v=!0)):(u=w,p=arguments[1],f=arguments[3],arguments.length>2&&(g=arguments[2],v=!0)),u=""+u,p=""+p,f!==void 0&&(f=""+f);var x=l(this._isDirected,u,p,f);if(Object.hasOwn(this._edgeLabels,x))return v&&(this._edgeLabels[x]=g),this;if(f!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(u),this.setNode(p),this._edgeLabels[x]=v?g:this._defaultEdgeLabelFn(u,p,f);var k=s(this._isDirected,u,p,f);return u=k.v,p=k.w,Object.freeze(k),this._edgeObjs[x]=k,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 _Q,SQ;function Aqe(){return SQ||(SQ=1,_Q="2.2.4"),_Q}var EQ,CQ;function Dqe(){return CQ||(CQ=1,EQ={Graph:d$(),version:Aqe()}),EQ}var u$,$Q;function Mqe(){if($Q)return u$;$Q=1;var e=d$();u$={write:r,read: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 u$}var p$,zQ;function Nqe(){if(zQ)return p$;zQ=1,p$=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 p$}var h$,RQ;function TQ(){if(RQ)return h$;RQ=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 f$}var m$,DQ;function Pqe(){if(DQ)return m$;DQ=1;var e=AQ();m$=r;function r(n,o,a){return n.nodes().reduce(function(i,l){return i[l]=e(n,l,o,a),i},{})}return m$}var g$,MQ;function NQ(){if(MQ)return g$;MQ=1,g$=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 g$}var y$,PQ;function Bqe(){if(PQ)return y$;PQ=1;var e=NQ();y$=r;function r(n){return e(n).filter(function(o){return o.length>1||o.length===1&&n.hasEdge(o[0],o[0])})}return y$}var v$,BQ;function Iqe(){if(BQ)return v$;BQ=1,v$=r;var e=()=>1;function r(o,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 w$}var k$,qQ;function Lqe(){if(qQ)return k$;qQ=1;var e=VQ();k$=r;function r(n,o){return e(n,o,"post")}return k$}var _$,HQ;function Fqe(){if(HQ)return _$;HQ=1;var e=VQ();_$=r;function r(n,o){return e(n,o,"pre")}return _$}var S$,UQ;function Vqe(){if(UQ)return S$;UQ=1;var e=d$(),r=TQ();S$=n;function n(o,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 S$}var WQ,GQ;function qqe(){return GQ||(GQ=1,WQ={components:Nqe(),dijkstra:AQ(),dijkstraAll:Pqe(),findCycles:Bqe(),floydWarshall:Iqe(),isAcyclic:Oqe(),postorder:Lqe(),preorder:Fqe(),prim:Vqe(),tarjan:NQ(),topsort:OQ()}),WQ}var E$,YQ;function cl(){if(YQ)return E$;YQ=1;var e=Dqe();return E$={Graph:e.Graph,json:Mqe(),alg:qqe(),version:e.version},E$}var C$,XQ;function Hqe(){if(XQ)return C$;XQ=1;class e{constructor(){let 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 C$=e,C$}var $$,ZQ;function Uqe(){if(ZQ)return $$;ZQ=1;let e=cl().Graph,r=Hqe();$$=o;let n=()=>1;function o(d,u){if(d.nodeCount()<=1)return[];let p=l(d,u||n);return 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;pj.setNode(I,R.node(I))),R.edges().forEach(I=>{let P=j.edge(I.v,I.w)||{weight:0,minlen:1},L=R.edge(I);j.setEdge(I.v,I.w,{weight:P.weight+L.weight,minlen:Math.max(P.minlen,L.minlen)})}),j}function o(R){let j=new e({multigraph:R.isMultigraph()}).setGraph(R.graph());return R.nodes().forEach(I=>{R.children(I).length||j.setNode(I,R.node(I))}),R.edges().forEach(I=>{j.setEdge(I,R.edge(I))}),j}function a(R){let j=R.nodes().map(I=>{let P={};return R.outEdges(I).forEach(L=>{P[L.w]=(P[L.w]||0)+R.edge(L).weight}),P});return A(R.nodes(),j)}function i(R){let j=R.nodes().map(I=>{let P={};return R.inEdges(I).forEach(L=>{P[L.v]=(P[L.v]||0)+R.edge(L).weight}),P});return A(R.nodes(),j)}function l(R,j){let I=R.x,P=R.y,L=j.x-I,H=j.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:I+B,y:P+F}}function s(R){let j=$(v(R)+1).map(()=>[]);return R.nodes().forEach(I=>{let P=R.node(I),L=P.rank;L!==void 0&&(j[L][P.order]=I)}),j}function c(R){let j=R.nodes().map(P=>{let L=R.node(P).rank;return L===void 0?Number.MAX_VALUE:L}),I=g(Math.min,j);R.nodes().forEach(P=>{let L=R.node(P);Object.hasOwn(L,"rank")&&(L.rank-=I)})}function d(R){let j=R.nodes().map(M=>R.node(M).rank),I=g(Math.min,j),P=[];R.nodes().forEach(M=>{let V=R.node(M).rank-I;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,j,I,P){let L={width:0,height:0};return arguments.length>=4&&(L.rank=I,L.order=P),r(R,"border",L,j)}function p(R,j=f){const I=[];for(let P=0;Pf){const I=p(j);return R.apply(null,I.map(P=>R.apply(null,P)))}else return R.apply(null,j)}function v(R){const j=R.nodes().map(I=>{let P=R.node(I).rank;return P===void 0?Number.MIN_VALUE:P});return g(Math.max,j)}function w(R,j){let I={lhs:[],rhs:[]};return R.forEach(P=>{j(P)?I.lhs.push(P):I.rhs.push(P)}),I}function x(R,j){let I=Date.now();try{return j()}finally{console.log(R+" time: "+(Date.now()-I)+"ms")}}function k(R,j){return j()}let C=0;function _(R){var j=++C;return R+(""+j)}function $(R,j,I=1){j==null&&(j=R,R=0);let P=H=>HjP[j]),Object.entries(R).reduce((P,[L,H])=>(P[L]=I(H,L),P),{})}function A(R,j){return R.reduce((I,P,L)=>(I[P]=j[L],I),{})}return z$}var R$,QQ;function Wqe(){if(QQ)return R$;QQ=1;let e=Uqe(),r=$n().uniqueId;R$={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 R$}var T$,JQ;function Gqe(){if(JQ)return T$;JQ=1;let e=$n();T$={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 T$}var j$,eJ;function b2(){if(eJ)return j$;eJ=1;const{applyWithChunking:e}=$n();j$={longestPath:r,slack:n};function r(o){var 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 j$}var A$,tJ;function rJ(){if(tJ)return A$;tJ=1;var e=cl().Graph,r=b2().slack;A$=n;function n(l){var s=new e({directed:!1}),c=l.nodes()[0],d=l.nodeCount();s.setNode(c,{});for(var u,p;o(s,l){var p=u.v,f=d===p?u.w:p;!l.hasNode(f)&&!r(s,u)&&(l.setNode(f,{}),l.setEdge(d,f,{}),c(f))})}return l.nodes().forEach(c),l.nodeCount()}function 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 A$}var D$,nJ;function Yqe(){if(nJ)return D$;nJ=1;var e=rJ(),r=b2().slack,n=b2().longestPath,o=cl().alg.preorder,a=cl().alg.postorder,i=$n().simplify;D$=l,l.initLowLimValues=u,l.initCutValues=s,l.calcCutValue=d,l.leaveEdge=f,l.enterEdge=g,l.exchangeEdges=v;function l(C){C=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($),T=z.parent;C.edge($,T).cutvalue=d(C,_,$)}function d(C,_,$){var z=C.node($),T=z.parent,A=!0,R=_.edge($,T),j=0;return R||(A=!1,R=_.edge(T,$)),j=R.weight,_.nodeEdges($).forEach(I=>{var P=I.v===$,L=P?I.w:I.v;if(L!==T){var H=P===A,M=_.edge(I).weight;if(j+=H?M:-M,x(C,$,L)){var V=C.edge($,L).cutvalue;j+=H?-V:V}}}),j}function u(C,_){arguments.length<2&&(_=C.nodes()[0]),p(C,{},1,_)}function p(C,_,$,z,T){var A=$,R=C.node(z);return _[z]=!0,C.neighbors(z).forEach(j=>{Object.hasOwn(_,j)||($=p(C,_,$,j,z))}),R.low=A,R.lim=$++,T?R.parent=T:delete R.parent,$}function f(C){return C.edges().find(_=>C.edge(_).cutvalue<0)}function g(C,_,$){var z=$.v,T=$.w;_.hasEdge(z,T)||(z=$.w,T=$.v);var A=C.node(z),R=C.node(T),j=A,I=!1;A.lim>R.lim&&(j=R,I=!0);var P=_.edges().filter(L=>I===k(C,C.node(L.v),j)&&I!==k(C,C.node(L.w),j));return P.reduce((L,H)=>r(_,H)!_.node(T).parent),z=o(C,$);z=z.slice(1),z.forEach(T=>{var A=C.node(T).parent,R=_.edge(T,A),j=!1;R||(R=_.edge(A,T),j=!0),_.node(T).rank=_.node(A).rank+(j?R.minlen:-R.minlen)})}function x(C,_,$){return C.hasEdge(_,$)}function k(C,_,$){return $.low<=_.lim&&_.lim<=$.lim}return D$}var M$,oJ;function Xqe(){if(oJ)return M$;oJ=1;var e=b2(),r=e.longestPath,n=rJ(),o=Yqe();M$=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 M$}var N$,aJ;function Zqe(){if(aJ)return N$;aJ=1,N$=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 N$}var P$,iJ;function Kqe(){if(iJ)return P$;iJ=1;let e=$n();P$={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,T=_!==$?1:u-p[f]+1;l.setEdge(v,_,{weight:z,minlen:T,nestingEdge:!0}),l.setEdge($,w,{weight:z,minlen:T,nestingEdge:!0})}),l.parent(f)||l.setEdge(s,v,{weight:0,minlen:u+p[f]})}function o(l){var s={};function c(d,u){var p=l.children(d);p&&p.length&&p.forEach(f=>c(f,u+1)),s[d]=u}return l.children().forEach(d=>c(d,1)),s}function 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 P$}var B$,lJ;function Qqe(){if(lJ)return B$;lJ=1;let e=$n();B$=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 I$}var O$,cJ;function eHe(){if(cJ)return O$;cJ=1;let e=$n();O$=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 O$}var L$,dJ;function tHe(){if(dJ)return L$;dJ=1;let e=$n().zipObject;L$=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 L$}var F$,uJ;function rHe(){if(uJ)return F$;uJ=1,F$=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 F$}var V$,pJ;function nHe(){if(pJ)return V$;pJ=1;let e=$n();V$=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 V$}var q$,hJ;function oHe(){if(hJ)return q$;hJ=1;let e=$n();q$=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 q$}var H$,fJ;function aHe(){if(fJ)return H$;fJ=1;let e=rHe(),r=nHe(),n=oHe();H$=o;function o(l,s,c,d){let u=l.children(s),p=l.node(s),f=p?p.borderLeft:void 0,g=p?p.borderRight:void 0,v={};f&&(u=u.filter(C=>C!==f&&C!==g));let w=e(l,u);w.forEach(C=>{if(l.children(C.v).length){let _=o(l,C.v,c,d);v[C.v]=_,Object.hasOwn(_,"barycenter")&&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 H$}var U$,mJ;function iHe(){if(mJ)return U$;mJ=1;let e=cl().Graph,r=$n();U$=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 U$}var W$,gJ;function lHe(){if(gJ)return W$;gJ=1,W$=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 W$}var G$,yJ;function sHe(){if(yJ)return G$;yJ=1;let e=eHe(),r=tHe(),n=aHe(),o=iHe(),a=lHe(),i=cl().Graph,l=$n();G$=s;function s(p,f){if(f&&typeof f.customOrder=="function"){f.customOrder(p,s);return}let g=l.maxRank(p),v=c(p,l.range(1,g+1),"inEdges"),w=c(p,l.range(g-1,-1,-1),"outEdges"),x=e(p);if(u(p,x),f&&f.disableOptimalOrderHeuristic)return;let k=Number.POSITIVE_INFINITY,C;for(let _=0,$=0;$<4;++_,++$){d(_%2?v:w,_%4>=2),x=l.buildLayerMatrix(p);let 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 G$}var Y$,vJ;function cHe(){if(vJ)return Y$;vJ=1;let e=cl().Graph,r=$n();Y$={positionX:g,findType1Conflicts:n,findType2Conflicts:o,addConflict:i,hasConflict:l,verticalAlignment:s,horizontalCompaction:c,alignCoordinates:p,findSmallestWidthAlignment:u,balance:f};function n(x,k){let C={};function _($,z){let T=0,A=0,R=$.length,j=z[z.length-1];return z.forEach((I,P)=>{let L=a(x,I),H=L?x.node(L).order:R;(L||I===j)&&(z.slice(A,P+1).forEach(M=>{x.predecessors(M).forEach(V=>{let B=x.node(V),F=B.order;(F{I=z[P],x.node(I).dummy&&x.predecessors(I).forEach(L=>{let H=x.node(L);H.dummy&&(H.orderj)&&i(C,L,I)})})}function $(z,T){let A=-1,R,j=0;return T.forEach((I,P)=>{if(x.node(I).dummy==="border"){let L=x.predecessors(I);L.length&&(R=x.node(L[0]).order,_(T,j,P,A,R),j=P,A=R)}_(T,j,T.length,R,z.length)}),T}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={},T={};return k.forEach(A=>{A.forEach((R,j)=>{$[R]=R,z[R]=R,T[R]=j})}),k.forEach(A=>{let R=-1;A.forEach(j=>{let I=_(j);if(I.length){I=I.sort((L,H)=>T[L]-T[H]);let P=(I.length-1)/2;for(let L=Math.floor(P),H=Math.ceil(P);L<=H;++L){let M=I[L];z[j]===j&&RMath.max(L,z[H.v]+T.edge(H)),0)}function I(P){let L=T.outEdges(P).reduce((M,V)=>Math.min(M,z[V.w]-T.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(j,T.predecessors.bind(T)),R(I,T.successors.bind(T)),Object.keys(_).forEach(P=>z[P]=z[C[P]]),z}function d(x,k,C,_){let $=new e,z=x.graph(),T=v(z.nodesep,z.edgesep,_);return k.forEach(A=>{let R;A.forEach(j=>{let I=C[j];if($.setNode(I),R){var P=C[R],L=$.edge(P,I);$.setEdge(P,I,Math.max(T(x,j,R),L||0))}R=j})}),$}function u(x,k){return Object.values(k).reduce((C,_)=>{let $=Number.NEGATIVE_INFINITY,z=Number.POSITIVE_INFINITY;Object.entries(_).forEach(([A,R])=>{let j=w(x,A)/2;$=Math.max(R+j,$),z=Math.min(R-j,z)});const T=$-z;return T{["l","r"].forEach(T=>{let A=z+T,R=x[A];if(R===k)return;let j=Object.values(R),I=_-r.applyWithChunking(Math.min,j);T!=="l"&&(I=$-r.applyWithChunking(Math.max,j)),I&&(x[A]=r.mapValues(R,P=>P+I))})})}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,T)=>z-T);return($[1]+$[2])/2}})}function g(x){let k=r.buildLayerMatrix(x),C=Object.assign(n(x,k),o(x,k)),_={},$;["u","d"].forEach(T=>{$=T==="u"?k:Object.values(k).reverse(),["l","r"].forEach(A=>{A==="r"&&($=$.map(P=>Object.values(P).reverse()));let R=(T==="u"?x.predecessors:x.successors).bind(x),j=s(x,$,C,R),I=c(x,$,j.root,j.align,A==="r");A==="r"&&(I=r.mapValues(I,P=>-P)),_[T+A]=I})});let z=u(x,_);return p(_,z),f(_,x.graph().align)}function v(x,k,C){return(_,$,z)=>{let T=_.node($),A=_.node(z),R=0,j;if(R+=T.width/2,Object.hasOwn(T,"labelpos"))switch(T.labelpos.toLowerCase()){case"l":j=-T.width/2;break;case"r":j=T.width/2;break}if(j&&(R+=C?j:-j),j=0,R+=(T.dummy?k:x)/2,R+=(A.dummy?k:x)/2,R+=A.width/2,Object.hasOwn(A,"labelpos"))switch(A.labelpos.toLowerCase()){case"l":j=A.width/2;break;case"r":j=-A.width/2;break}return j&&(R+=C?j:-j),j=0,R}}function w(x,k){return x.node(k).width}return Y$}var X$,bJ;function dHe(){if(bJ)return X$;bJ=1;let e=$n(),r=cHe().positionX;X$=n;function n(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 X$}var Z$,xJ;function uHe(){if(xJ)return Z$;xJ=1;let e=Wqe(),r=Gqe(),n=Xqe(),o=$n().normalizeRanks,a=Zqe(),i=$n().removeEmptyRanks,l=Kqe(),s=Qqe(),c=Jqe(),d=sHe(),u=dHe(),p=$n(),f=cl().Graph;Z$=g;function g(O,W){let K=W&&W.debugTiming?p.time:p.notime;K("layout",()=>{let Q=K(" buildLayoutGraph",()=>R(O));K(" runLayout",()=>v(Q,K,W)),K(" updateInputGraph",()=>w(O,Q))})}function v(O,W,K){W(" makeSpaceForEdgeLabels",()=>j(O)),W(" removeSelfEdges",()=>q(O)),W(" acyclic",()=>e.run(O)),W(" nestingGraph.run",()=>l.run(O)),W(" rank",()=>n(p.asNonCompoundGraph(O))),W(" injectEdgeLabelProxies",()=>I(O)),W(" removeEmptyRanks",()=>i(O)),W(" nestingGraph.cleanup",()=>l.cleanup(O)),W(" normalizeRanks",()=>o(O)),W(" assignRankMinMax",()=>P(O)),W(" removeEdgeLabelProxies",()=>L(O)),W(" normalize.run",()=>r.run(O)),W(" parentDummyChains",()=>a(O)),W(" addBorderSegments",()=>s(O)),W(" order",()=>d(O,K)),W(" insertSelfEdges",()=>G(O)),W(" adjustCoordinateSystem",()=>c.adjust(O)),W(" position",()=>u(O)),W(" positionSelfEdges",()=>U(O)),W(" removeBorderNodes",()=>F(O)),W(" normalize.undo",()=>r.undo(O)),W(" fixupEdgeLabelCoords",()=>V(O)),W(" undoCoordinateSystem",()=>c.undo(O)),W(" translateGraph",()=>H(O)),W(" assignNodeIntersects",()=>M(O)),W(" reversePoints",()=>B(O)),W(" acyclic.undo",()=>e.undo(O))}function w(O,W){O.nodes().forEach(K=>{let Q=O.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))}),O.edges().forEach(K=>{let Q=O.edge(K),ae=W.edge(K);Q.points=ae.points,Object.hasOwn(ae,"x")&&(Q.x=ae.x,Q.y=ae.y)}),O.graph().width=W.graph().width,O.graph().height=W.graph().height}let x=["nodesep","edgesep","ranksep","marginx","marginy"],k={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},C=["acyclicer","ranker","rankdir","align"],_=["width","height","rank"],$={width:0,height:0},z=["minlen","weight","width","height","labeloffset"],T={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},A=["labelpos"];function R(O){let W=new f({multigraph:!0,compound:!0}),K=Z(O.graph());return W.setGraph(Object.assign({},k,Y(K,x),p.pick(K,C))),O.nodes().forEach(Q=>{let ae=Z(O.node(Q));const te=Y(ae,_);Object.keys($).forEach(re=>{te[re]===void 0&&(te[re]=$[re])}),W.setNode(Q,te),W.setParent(Q,O.parent(Q))}),O.edges().forEach(Q=>{let ae=Z(O.edge(Q));W.setEdge(Q,Object.assign({},T,Y(ae,z),p.pick(ae,A)))}),W}function j(O){let W=O.graph();W.ranksep/=2,O.edges().forEach(K=>{let Q=O.edge(K);Q.minlen*=2,Q.labelpos.toLowerCase()!=="c"&&(W.rankdir==="TB"||W.rankdir==="BT"?Q.width+=Q.labeloffset:Q.height+=Q.labeloffset)})}function I(O){O.edges().forEach(W=>{let K=O.edge(W);if(K.width&&K.height){let Q=O.node(W.v),ae={rank:(O.node(W.w).rank-Q.rank)/2+Q.rank,e:W};p.addDummyNode(O,"edge-proxy",ae,"_ep")}})}function P(O){let W=0;O.nodes().forEach(K=>{let Q=O.node(K);Q.borderTop&&(Q.minRank=O.node(Q.borderTop).rank,Q.maxRank=O.node(Q.borderBottom).rank,W=Math.max(W,Q.maxRank))}),O.graph().maxRank=W}function L(O){O.nodes().forEach(W=>{let K=O.node(W);K.dummy==="edge-proxy"&&(O.edge(K.e).labelRank=K.rank,O.removeNode(W))})}function H(O){let W=Number.POSITIVE_INFINITY,K=0,Q=Number.POSITIVE_INFINITY,ae=0,te=O.graph(),re=te.marginx||0,ue=te.marginy||0;function _e(ce){let pe=ce.x,xe=ce.y,je=ce.width,Be=ce.height;W=Math.min(W,pe-je/2),K=Math.max(K,pe+je/2),Q=Math.min(Q,xe-Be/2),ae=Math.max(ae,xe+Be/2)}O.nodes().forEach(ce=>_e(O.node(ce))),O.edges().forEach(ce=>{let pe=O.edge(ce);Object.hasOwn(pe,"x")&&_e(pe)}),W-=re,Q-=ue,O.nodes().forEach(ce=>{let pe=O.node(ce);pe.x-=W,pe.y-=Q}),O.edges().forEach(ce=>{let pe=O.edge(ce);pe.points.forEach(xe=>{xe.x-=W,xe.y-=Q}),Object.hasOwn(pe,"x")&&(pe.x-=W),Object.hasOwn(pe,"y")&&(pe.y-=Q)}),te.width=K-W+re,te.height=ae-Q+ue}function M(O){O.edges().forEach(W=>{let K=O.edge(W),Q=O.node(W.v),ae=O.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(O){O.edges().forEach(W=>{let K=O.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(O){O.edges().forEach(W=>{let K=O.edge(W);K.reversed&&K.points.reverse()})}function F(O){O.nodes().forEach(W=>{if(O.children(W).length){let K=O.node(W),Q=O.node(K.borderTop),ae=O.node(K.borderBottom),te=O.node(K.borderLeft[K.borderLeft.length-1]),re=O.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}}),O.nodes().forEach(W=>{O.node(W).dummy==="border"&&O.removeNode(W)})}function q(O){O.edges().forEach(W=>{if(W.v===W.w){var K=O.node(W.v);K.selfEdges||(K.selfEdges=[]),K.selfEdges.push({e:W,label:O.edge(W)}),O.removeEdge(W)}})}function G(O){var W=p.buildLayerMatrix(O);W.forEach(K=>{var Q=0;K.forEach((ae,te)=>{var re=O.node(ae);re.order=te+Q,(re.selfEdges||[]).forEach(ue=>{p.addDummyNode(O,"selfedge",{width:ue.label.width,height:ue.label.height,rank:re.rank,order:te+ ++Q,e:ue.e,label:ue.label},"_se")}),delete re.selfEdges})})}function U(O){O.nodes().forEach(W=>{var K=O.node(W);if(K.dummy==="selfedge"){var Q=O.node(K.e.v),ae=Q.x+Q.width/2,te=Q.y,re=K.x-ae,ue=Q.height/2;O.setEdge(K.e,K.label),O.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(O,W){return p.mapValues(p.pick(O,W),Number)}function Z(O){var W={};return O&&Object.entries(O).forEach(([K,Q])=>{typeof K=="string"&&(K=K.toLowerCase()),W[K]=Q}),W}return Z$}var K$,wJ;function pHe(){if(wJ)return K$;wJ=1;let e=$n(),r=cl().Graph;K$={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 K$}var kJ,_J;function hHe(){return _J||(_J=1,kJ="1.1.8"),kJ}var SJ,EJ;function fHe(){return EJ||(EJ=1,SJ={graphlib:cl(),layout:uHe(),debug:pHe(),util:{time:$n().time,notime:$n().notime},version:hHe()}),SJ}var mHe=fHe();const x2=Y7(mHe),co={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:140,height:10,minlen:1,weight:1},emptyNodeOffset:120,nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function gHe(){const e=new x2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...co.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...co.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const Q$="-port";function J$(e,r,n){const o=new Ln(i=>({id:`${e}-${i}`,portId:`${e}-${i}`})),a=hx(r);for(const i of a.sorted){const l=a.children(i).length>0,s=i.id,c=`${e}-${s}`,d=l?`${c}${Q$}`: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 yHe(e){return x2.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 w2;(e=>{e.Empty="@empty"})(w2||(w2={}));function vHe(e,r){const n=gHe(),o=J$("incomers",e.incomers,n),a=J$("subjects",e.subjects,n),i=J$("outgoers",e.outgoers,n),l=[];Jr(XCe(Jr(C1(e.incoming),un($=>({id:$.source.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:o.byId($.source.id).graph,target:a.byId($.target.id).graph,relation:$}))),Jr(C1(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}`})),g$e(rp("expr")),f$e($=>{const z=$[0].source,T=$[0].target,A=$[0].expr;n.node(z.id).outPorts.push(T.id),n.node(T.id).inPorts.push(z.id),n.setEdge(z.portId,T.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:T.id,targetHandle:T.id+"_in"+(n.node(T.id).inPorts.length-1),relations:un($,rp("relation"))})}));for(const $ of a.graphNodes.values()){const z=$.id,T=n.node(z);if(T.isCompound)continue;const A=Math.max(n.inEdges(z)?.length??0,n.outEdges(z)?.length??0);A>2&&(T.height=T.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=yHe(n),u=Jr(s,ep($=>$.id===$.portId),hw($=>[$.id,d($.id)]));function p($){return u[$]??=Jr(n.children($)??[],ep(z=>!z.endsWith(Q$)),un(z=>p(z)),Wq(z=>{He(z.length>0,`Node ${$} has no nested nodes`)}),mw((z,T)=>({minY:Math.min(z.minY,T.position.y),maxY:Math.max(z.maxY,T.position.y+T.height)}),{minY:1/0,maxY:-1/0}),({minY:z,maxY:T})=>{const{position:{x:A},width:R}=d($);return z=z-co.compound.paddingTop,T=T+co.compound.paddingBottom,{position:{x:A,y:z},width:R,height:T-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,T)=>Jr(T,un((A,R)=>({port:$+"_"+z+R,topY:p(A).position.y})),gw(rp("topY")),un(rp("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:T,outPorts:A,column:R}=n.node($);let{position:j,width:I,height:P}=p($);if(!z){if(P=Math.min(C.height,300),j.y=C.position.y+C.height/2-P/2,R==="incomers")I=C.position.x-co.emptyNodeOffset-j.x;else{const q=j.x+I;j.x=C.position.x+C.width+co.emptyNodeOffset,I=q-j.x}return{id:$,parent:null,x:j.x,y:j.y,title:"empty node",description:null,technology:null,tags:[],links:[],color:"muted",shape:"rectangle",style:{border:"dashed",opacity:50},kind:w2.Empty,level:0,labelBBox:{x:j.x,y:j.y,width:I,height:P},children:[],width:I,height:P,column:R,ports:{in:[],out:[]},existsInCurrentView:!1}}const L=n.parent($),H=(n.children($)??[]).filter(q=>!q.endsWith(Q$));w=Math.min(w,j.x),x=Math.min(x,j.y);const M=r?E1(z.scopedViews(),q=>q.id!==r.id)?.id??null:null,V=r?.findNodeWithElement(z.id),B=r&&!V?E1(z.ancestors(),q=>!!r.findNodeWithElement(q.id))?.id:null,F=V??(B&&r?.findNodeWithElement(B));return{id:$,parent:L??null,x:j.x,y:j.y,title:z.title,description:Fs(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:j.x,y:j.y,width:I,height:P},style:ud({...(V??F)?.style,...z.$element.style},["color","shape","icon"]),navigateTo:M,...H.length>0&&{depth:g($)},children:H,width:I,height:P,column:R,ports:{in:v($,"in",T),out:v($,"out",A)},existsInCurrentView:!!V}});return{subjectExistsInScope:!r||r.includesElement(k.id),bounds:{x:Math.min(w,0),y:Math.min(x,0),width:n.graph().width??100,height:n.graph().height??100},nodes:_,edges:n.edges().reduce(($,z)=>{const T=n.edge(z),A=z.name;if(!A)return $;const{name:R,source:j,sourceFqn:I,target:P,targetFqn:L,relations:H,sourceHandle:M,targetHandle:V}=mt(Q1(l,U=>U.name===A)),B=fw(H),F=B?.title??"untitled",q=H.length>1,G=fw(yw(H.flatMap(U=>U.navigateTo?.id?U.navigateTo.id:[])));return $.push(_1({id:R,sourceFqn:I,source:j,sourceHandle:M,targetFqn:L,target:P,targetHandle:V,label:q?`${H.length} relationships`:F,navigateTo:G,color:B?.color??"gray",existsInCurrentView:!r||H.every(U=>r.includesRelation(U.id)),points:T.points.map(U=>[U.x,U.y]),line:B?.line??"dashed",head:B?.head,tail:B?.tail,relations:H.map(U=>U.id),parent:null})),$},[])}}function bHe(e,r,n){const o=Fo();return S.useMemo(()=>{const a=r?o.findView(r):null,i=vHe(KO(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,KO])}const o0=(e,r)=>zb(e.label,r.label);function ez(e){return{label:e.title,value:e.id,children:[...e.children()].map(ez).sort(o0)}}function xHe(e){const r=Fo();return S.useMemo(()=>e?[...r.view(e).roots()].map(ez).sort(o0):[...r.roots()].map(ez).sort(o0),[r,e??null])}const wHe=fe({margin:"0"}),kHe=fe({_hover:{backgroundColor:"mantine.colors.gray[0]",_dark:{backgroundColor:"mantine.colors.defaultHover",color:"mantine.colors.white"}}}),CJ=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),_He=Object.freeze(Object.defineProperty({__proto__:null,label:kHe,node:wHe,scrollArea:CJ},Symbol.toStringTag,{value:"Module"})),SHe=[["path",{d:"M8 9l4 -4l4 4",key:"svg-0"}],["path",{d:"M16 15l-4 4l-4 -4",key:"svg-1"}]],tz=wt("outline","selector","Selector",SHe),EHe=e=>{const r=e.context.layouted?.subjectExistsInScope??!1;return{subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,subjectExistsInScope:r,enableSelectSubject:e.context.enableSelectSubject,enableChangeScope:e.context.enableChangeScope}},CHe=()=>{},$He=S.memo(()=>{const e=n0(),{subjectId:r,viewId:n,scope:o,subjectExistsInScope:a,enableSelectSubject:i,enableChangeScope:l}=v2(EHe),s=S.useRef(null),c=S.useRef(null),d=Fo().findElement(r),u=xHe(o==="view"&&n?n:void 0),p=_y({multiple:!1});return p.setHoveredNode=CHe,S.useEffect(()=>{Du(r).reverse().forEach(f=>{p.expand(f)}),p.select(r)},[r]),y.jsxs(en,{ref:s,gap:"xs",pos:"relative",children:[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(kd,{children:y.jsx(Vn,{size:"xs",variant:"default",maw:250,rightSection:y.jsx(tz,{size:16}),children:y.jsx(at,{fz:"xs",fw:"500",truncate:!0,children:d?.title??"???"})})}),y.jsx(Qs,{p:0,miw:250,maw:400,children:y.jsx(oa,{scrollbars:"y",type:"never",viewportRef:c,className:CJ,children:y.jsx(Ff,{allowRangeSelection:!1,selectOnClick:!1,tree:p,data:u,classNames:_He,levelOffset:8,styles:{root:{maxWidth:400,overflow:"hidden"},label:{paddingTop:5,paddingBottom:6}},renderNode:({node:f,selected:g,expanded:v,elementProps:w,hasChildren:x})=>y.jsxs(en,{gap:2,wrap:"nowrap",...w,py:"3",children:[y.jsx(lr,{variant:"subtle",size:18,c:"dimmed",style:{visibility:x?"visible":"hidden"},children:y.jsx(Dd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${v?"90deg":"0"})`,width:"80%"}})}),y.jsx(Se,{flex:"1 1 100%",w:"100%",onClick:k=>{k.stopPropagation(),p.select(f.value),p.expand(f.value),e.navigateTo(f.value)},children:y.jsx(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(Of,{flex:"1 0 auto",size:"xs",withItemsBorders:!1,value:o,styles:{label:{paddingLeft:8,paddingRight:8}},onChange:f=>{e.changeScope(f)},data:[{label:"Global",value:"global"},{label:y.jsx("span",{children:"Current view"}),value:"view",disabled:!a}]})})})]})]})}),k2=(e,r)=>Math.abs(e-r)<2.5,zHe=(e,r)=>e.id===r.id&&tt(e.selected??!1,r.selected??!1)&&tt(e.animated??!1,r.animated??!1)&&tt(e.source,r.source)&&k2(e.sourceX,r.sourceX)&&k2(e.sourceY,r.sourceY)&&tt(e.sourceHandleId??null,r.sourceHandleId??null)&&tt(e.sourcePosition,r.sourcePosition)&&tt(e.target,r.target)&&k2(e.targetY,r.targetY)&&k2(e.targetX,r.targetX)&&tt(e.targetHandleId??null,r.targetHandleId??null)&&tt(e.targetPosition,r.targetPosition)&&tt(e.data,r.data);function rz(e){const r=S.memo(e,zHe);return r.displayName=`MemoEdge(${e.displayName||e.name})`,r}function $J(e,r){return r2(e,r)}const wi=$J("button"),zr=$J("div"),a0=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=k1(e)?IO(e):null,g=Kn(r)||Kn(n);return y.jsxs(zr,{ref:p,className:Ge("likec4-edge-label",dVe({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]})]})});a0.displayName="EdgeLabel";function _2({icon:e,onClick:r}){return y.jsx(lr,{className:Ge("nodrag nopan",cVe()),onPointerDownCapture:nn,onClick:r,role:"button",onDoubleClick:nn,children:e??y.jsx(bi,{})})}function i0({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 RHe=e=>y.jsx("marker",{viewBox:"-4 -4 14 16",refX:5,refY:4,markerWidth:"7",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M0,0 L7,4 L0,8 L4,4 Z",stroke:"context-stroke",fill:"context-stroke",strokeDasharray:0,strokeWidth:1,strokeLinecap:"round"})}),THe=e=>y.jsx("marker",{viewBox:"-1 -1 12 10",refX:4,refY:3,markerWidth:"8",markerHeight:"6",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 0 0 L 8 3 L 0 6 L 1 3 z",fill:"context-stroke",strokeWidth:0})}),jHe=e=>y.jsx("marker",{viewBox:"-1 -1 12 12",refX:8,refY:4,markerWidth:"8",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 8 0 L 0 4 L 8 8 M 8 4 L 0 4",fill:"none",strokeWidth:1})}),AHe=e=>y.jsx("marker",{viewBox:"-1 -1 12 10",refX:4,refY:3,markerWidth:"8",markerHeight:"6",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 0 0 L 8 3 L 0 6 L 1 3 z",stroke:"context-stroke",fill:"context-stroke",strokeWidth:1.25,strokeLinejoin:"miter",strokeLinecap:"square"})}),DHe=e=>y.jsx("marker",{viewBox:"-4 -4 16 14",refX:5,refY:4,markerWidth:"10",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M5,0 L10,4 L5,8 L0,4 Z",fill:"context-stroke",strokeWidth:0,strokeLinecap:"round"})}),MHe=e=>y.jsx("marker",{viewBox:"-4 -4 16 14",refX:6,refY:4,markerWidth:"10",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M5,0 L10,4 L5,8 L0,4 Z",stroke:"context-stroke",fill:"context-stroke",strokeWidth:1.25,strokeLinecap:"round"})}),NHe=e=>y.jsx("marker",{viewBox:"0 0 10 10",refX:4,refY:4,markerWidth:"6",markerHeight:"6",...e,children:y.jsx("circle",{strokeWidth:0,fill:"context-stroke",cx:4,cy:4,r:3})}),PHe=e=>y.jsx("marker",{viewBox:"0 0 10 10",refX:4,refY:4,markerWidth:"6",markerHeight:"6",...e,children:y.jsx("circle",{strokeWidth:1.25,stroke:"context-stroke",fill:"context-stroke",cx:4,cy:4,r:3})}),zJ={Arrow:THe,Crow:jHe,OArrow:AHe,Open:RHe,Diamond:DHe,ODiamond:MHe,Dot:NHe,ODot:PHe};function RJ(e){if(!(!e||e==="none"))switch(e){case"normal":return"Arrow";case"crow":return"Crow";case"onormal":return"OArrow";case"diamond":return"Diamond";case"odiamond":return"ODiamond";case"open":case"vee":return"Open";case"dot":return"Dot";case"odot":return"ODot";default:Qo(e)}}const l0=S.forwardRef(({edgeProps:{id:e,data:{line:r,dir:n,tail:o,head:a},selectable:i=!0,style:l,interactionWidth:s},isDragging:c=!1,onEdgePointerDown:d,strokeWidth:u,svgPath:p},f)=>{let g=RJ(o),v=RJ(a??"normal");n==="back"&&([g,v]=[v,g]);const w=g?zJ[g]:null,x=v?zJ[v]:null,k=r==="dotted",C=k||r==="dashed";let _;k?_="1,8":C&&(_="8,10");const $=gVe();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})]})]})});l0.displayName="EdgePath";const TJ=e=>{if(e!==void 0)return Iq(e)?`${Math.round(e)}px`:e};function S2({edgeProps:{id:e,selected:r=!1,data:{hovered:n=!1,active:o=!1,dimmed:a=!1,labelBBox:i,color:l="gray"},animated:s},labelPosition:c,className:d,style:u,children:p,...f}){let g=QC(S.useCallback(k=>k.edgeLookup.get(e)?.zIndex??lc.Edge,[e]));(n||o)&&(g+=100);let v=c?.x??i?.x,w=c?.y??i?.y;if(v===void 0||w===void 0)return null;const x=c?.translate??"";return y.jsx(yq,{children:y.jsx("div",{...f,className:Ge("nodrag nopan","likec4-edge-label-container",d),"data-likec4-hovered":n,"data-likec4-color":l,"data-edge-active":o,"data-edge-animated":s||o,...r!==!1&&{"data-likec4-selected":r},...a!==!1&&{"data-likec4-dimmed":a},style:{...i&&{maxWidth:i.width+18},zIndex:g,...u,transform:`translate(${TJ(v)}, ${TJ(w)}) ${x}`},children:p},e)})}const BHe=rz(e=>{const r=n0(),{enableNavigateTo:n}=sr(),{data:{navigateTo:o,relations:a,existsInCurrentView:i}}=e,[l,s,c]=Zx(e),d=Nt(),u=a.length>1||!i,p=u?{...e,data:{...e.data,line:"solid",color:"amber"}}:e;let f=y.jsx(a0,{edgeProps:p,className:fe({transition:"fast"}),children:n&&o&&y.jsx(_2,{...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(i0,{...p,children:[y.jsx(l0,{edgeProps:p,svgPath:l,...u&&{strokeWidth:5}}),y.jsx(S2,{edgeProps:p,labelPosition:{x:s,y:c,translate:"translate(-50%, 0)"},style:{maxWidth:Math.min(Math.abs(e.targetX-e.sourceX-70),250)},children:f})]})}),IHe=fe({width:"100%",height:"100%",border:"3px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"md",display:"flex",justifyContent:"center",alignItems:"center"});function OHe({data:{column:e}}){return y.jsx(Se,{className:IHe,children:y.jsxs(at,{c:"dimmed",fz:"lg",fw:500,children:["No ",e==="incomers"?"incoming":"outgoing"]})})}const LHe=e=>e.context.view.id;function E2(){const e=Xf();return pn(e,LHe)}const FHe=e=>e.context.view;function VHe(){const e=Xf();return pn(e,FHe,Ir)}const qHe=[["path",{d:"M3 6a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-0"}],["path",{d:"M21 11v-3a2 2 0 0 0 -2 -2h-6l3 3m0 -6l-3 3",key:"svg-1"}],["path",{d:"M3 13v3a2 2 0 0 0 2 2h6l-3 -3m0 6l3 -3",key:"svg-2"}],["path",{d:"M15 18a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-3"}]],s0=wt("outline","transform","Transform",qHe),HHe=[["path",{d:"M4 21v-4a3 3 0 0 1 3 -3h5",key:"svg-0"}],["path",{d:"M9 17l3 -3l-3 -3",key:"svg-1"}],["path",{d:"M14 3v4a1 1 0 0 0 1 1h4",key:"svg-2"}],["path",{d:"M5 11v-6a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-9.5",key:"svg-3"}]],dm=wt("outline","file-symlink","FileSymlink",HHe),UHe=[["path",{d:"M13 3l0 7l6 0l-8 11l0 -7l-6 0l8 -11",key:"svg-0"}]],WHe=wt("outline","bolt","Bolt",UHe),GHe=qn({position:"absolute",zIndex:1,justifyContent:"center",alignItems:"center",_smallZoom:{display:"none"}}),YHe=qn({gap:"1.5",justifyContent:"center",alignItems:"center"});function C2({selected:e=!1,data:{hovered:r=!1},buttons:n}){const o=oi();return n.length?y.jsx(hr,{className:GHe,style:{top:"calc(100% - 30px)",transform:"translateX(-50%)",left:"50%",width:"auto",minHeight:30},children:y.jsx(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",YHe),children:n.map((a,i)=>y.jsx(lr,{component:wi,className:i2({}),initial:!1,whileTap:{scale:1},whileHover:{scale:1.3},onClick:a.onClick,onDoubleClick:nn,children:a.icon||y.jsx(WHe,{})},`${o}-${a.key??i}`))})}):null}const XHe=e=>e.context.subject,ZHe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),a=E2(),i=n0(),l=v2(XHe),{navigateTo:s,fqn:c}=e.data,d=S.useMemo(()=>{const u=[];return s&&r&&a!==s&&u.push({key:"navigate",icon:y.jsx(bi,{}),onClick:p=>{p.stopPropagation(),o.navigateTo(s)}}),c!==l&&u.push({key:"relationships",icon:y.jsx(s0,{}),onClick:p=>{p.stopPropagation(),i.navigateTo(c,e.id)}}),n&&u.push({key:"goToSource",icon:y.jsx(dm,{}),onClick:p=>{p.stopPropagation(),o.openSource({element:c})}}),u},[s,r,a,c,l,n,o,i,e.id]);return y.jsx(C2,{buttons:d,...e})};function c0({nodeProps:{data:{hovered:e=!1,dimmed:r=!1,...n}},className:o,children:a,style:i,...l}){let s=ti(n.style.opacity??100,{min:0,max:100});const c=s<99,d=65,u=d+ti((100-d)*(s/100),{min:0,max:100-d}),p=sVe({isTransparent:c,inverseColor:s<60,borderStyle:n.style.border??(c?"dashed":"none")}),f=ti(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 d0({data:e}){const r=bx({element:e,className:"likec4-compound-icon"});return y.jsxs("div",{className:"likec4-compound-title-container",children:[r,y.jsx(at,{component:"h3",className:"likec4-compound-title",truncate:"end",children:e.title})]})}const jJ=T1({base:{transitionDuration:"normal"},variants:{delay:{true:{transitionDelay:{base:"0.2s",_hover:"0s"}}}}}),KHe=[["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"}]],nz=wt("outline","id","Id",KHe);function AJ({data:{hovered:e=!1},icon:r,onClick:n}){const o=g9(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",jJ({delay:e&&!o}),i2({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(nz,{stroke:1.8,style:{width:"75%"}})})})}const QHe=fe({position:"relative",width:"full",height:"full",padding:"0",margin:"0",display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",_focusVisible:{outline:"none"},_whenSelectable:{pointerEvents:"all",_before:{content:'" "',position:"absolute",top:"[calc(100% - 4px)]",left:"0",width:"full",height:"24px",background:"transparent",pointerEvents:"all"}},_reduceGraphicsOnPan:{_before:{display:"none"}},":where(.react-flow__node.selectable:not(.dragging)) &":{cursor:"pointer"}}),um=S.forwardRef(({nodeProps:{selected:e=!1,selectable:r=!1,data:{hovered:n=!1,dimmed:o=!1,...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}=$b(a.style??{});return y.jsx(zr,{ref:d,className:Ge(QHe,"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})});um.displayName="ElementNodeContainer";function DJ(e,r,n=.065){const o=Math.round(e/2),a=o,i=Md(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(Js,{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(i$,{size:12}):y.jsx(Dd,{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(cqe,{values:n,isExpanded:a}):y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center"}),children:y.jsx(hQ,{value:n[0]||"",isExpanded:a})})})]})}const uqe=fe({"&[data-level='1']":{marginBottom:"sm"}}),pqe=fe({cursor:"default",marginTop:"0",marginBottom:"0"}),fQ=fe({transition:"fast",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.dark[1]"},"& > *":{transition:"fast"},_hover:{transitionTimingFunction:"out","& > :not([data-no-transform])":{transitionTimingFunction:"out",transform:"translateX(1px)"}}}),hqe=Ge(fQ),fqe=Ge(fQ,fe({cursor:"pointer",width:"100%",justifyContent:"stretch",flexWrap:"nowrap",height:"36px",paddingInlineStart:"[16px]",paddingInlineEnd:"2.5",borderRadius:"sm",alignItems:"center",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.gray.lightColor"},_hover:{background:"mantine.colors.gray.lightHover"},"& .tabler-icon":{transition:"fast",width:"90%",opacity:.65}})),mqe=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]],r0=wt("outline","info-circle","InfoCircle",mqe),gqe=[["path",{d:"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M12 12m-5 0a5 5 0 1 0 10 0a5 5 0 1 0 -10 0",key:"svg-1"}],["path",{d:"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-2"}]],yqe=wt("outline","target","Target",gqe),vqe=[["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-0"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-2"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-3"}],["path",{d:"M8 11a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-4"}],["path",{d:"M16 16l-2.5 -2.5",key:"svg-5"}]],bi=wt("outline","zoom-scan","ZoomScan",vqe),bqe=({node:e})=>y.jsxs(en,{className:hqe,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})]}),xqe=({instance:e})=>{const r=Nt(),n=r.currentView.id,o=[...e.views()];return y.jsxs(en,{className:fqe,gap:4,children:[y.jsx(Ta,{color:"gray",variant:"transparent",size:"xs",flex:0,children:y.jsx(yqe,{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(Ta,{size:"sm",variant:"transparent",color:"gray",children:y.jsx(bi,{stroke:1.8,opacity:.65})}),styles:{itemSection:{marginInlineEnd:$e(8)}},onClick:i=>{i.stopPropagation(),r.navigateTo(a.id)},children:a.title},a.id))})]})]})]})},wqe=()=>{},kqe=S.memo(({elementFqn:e})=>{const r=Fo().element(e),n=[...r.deployments()],o=_y({multiple:!1});o.setHoveredNode=wqe;const a=S.useMemo(()=>{let i=[],l=new Map;for(const s of r.deployments()){let c={label:y.jsx(xqe,{instance:s}),value:s.id,type:"instance",children:[]};l.set(s.id,c);let d=s.parent;for(;d;){let u=l.get(d.id);if(u){u.children.push(c);break}u={label:y.jsx(bqe,{node:d}),value:d.id,type:"node",children:[c]},l.set(d.id,u),c=u,d=d.parent}!d&&!i.includes(c)&&i.push(c)}return i},[r]);return S.useEffect(()=>{o.expandAllNodes()},[a]),n.length===0?y.jsx(f3,{variant:"light",color:"gray",icon:y.jsx(r0,{}),children:"This element does not have any deployments"}):y.jsx(Ff,{levelOffset:"sm",allowRangeSelection:!1,classNames:{node:uqe,label:pqe},styles:{root:{position:"relative",width:"min-content",minWidth:300}},data: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})})}),_qe=()=>{},mQ=(e,r)=>{if(e===r)return!0;if(e.length!==r.length)return!1;for(const[n,o]of e.entries())if(!(o===r[n]||Ir(o,r[n])))return!1;return!0};function $p(e,r,n,o){const a=kL();K5e(a?_qe:e,r,mQ,o)}function Sqe(){const e=typeof window<"u"&&typeof window.devicePixelRatio=="number"?window.devicePixelRatio:1;return ti(Math.floor(e),{min:1,max:4})}let g2;function Md(e){return g2??=Sqe(),g2<2?Math.round(e):Math.round(e*g2)/g2}function Eqe(e){switch(e){case"dots":return Qi.Dots;case"lines":return Qi.Lines;case"cross":return Qi.Cross;default:Qo(e)}}const Cqe=(e,r)=>typeof e.background=="string"&&typeof r.background=="string"?e.background===r.background:tt(e.background,r.background),gQ=S.memo(({background:e})=>typeof e=="string"?y.jsx(bq,{variant:Eqe(e),size:2,gap:20}):y.jsx(bq,{...e}),Cqe);gQ.displayName="Background";const yQ=(e,r)=>(e.data.dimmed??!1)===r?e:{...e,data:{...e.data,dimmed:r}};function $qe(e,r){return r!==void 0?yQ(e,r):n=>yQ(n,e)}const vQ=(e,r)=>(e.data.hovered??!1)===r?e:{...e,data:{...e.data,hovered:r}};function Rqe(e,r){return r!==void 0?vQ(e,r):n=>vQ(n,e)}function bQ(e,r){return Nq(e.data,r)?e:{...e,data:{...e.data,...r}}}function zqe(e,r){return r!==void 0?bQ(e,r):n=>bQ(n,e)}const tr={setDimmed:$qe,setHovered:Rqe,setData:zqe},lc={Compound:1,Edge:20,Element:20,Max:30},xi=.05,l$=3,y2={default:"16px",withControls:{top:"58px",left:"16px",right:"16px",bottom:"16px"}};function s$({nodes:e,edges:r,onEdgesChange:n,onNodesChange:o,className: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:$,...R}){const T=S.useMemo(()=>({minZoom:xi,maxZoom:1,padding:f,includeHiddenNodes:!1}),[f]),A=d!=="transparent"&&d!=="solid",z=TVe(),j=JC(),{colorScheme:I}=mTe();return p||(p=I==="auto"?"system":I),y.jsxs(zEe,{colorMode:p,nodes:e,edges:r,className:Ge(d==="transparent"&&"bg-transparent",a),...z&&{"data-likec4-zoom-small":!0},zoomOnPinch:l,zoomOnScroll:!i&&l,...!l&&{zoomActivationKeyCode:null},zoomOnDoubleClick:v,maxZoom:l?l$:1,minZoom:l?xi:1,fitView:g,fitViewOptions:T,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=Md(L),B=Md(H);(L!==V||H!==B)&&j.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,...R,children:[A&&y.jsx(gQ,{background:d}),w&&y.jsx(jqe,{onViewportResize:w}),u]})}const Tqe=({width:e,height:r})=>(e||1)*(r||1),jqe=({onViewportResize:e})=>{const r=Dt(Tqe);return $p(e,[r]),null},xQ=S.createContext(null);function wQ(){return mt(S.useContext(xQ),"No RelationshipsBrowserActorContext")}function v2(e,r=Ir){const n=wQ();return pn(n,e,r)}function n0(){const e=wQ();return S.useMemo(()=>({actor:e,get rootElementId(){return`relationships-browser-${e.sessionId.replaceAll(":","_")}`},getState:()=>e.getSnapshot().context,send:e.send,updateView:r=>{e.getSnapshot().status==="active"&&e.send({type:"update.view",layouted:r})},changeScope:r=>{e.send({type:"change.scope",scope:r})},navigateTo:(r,n)=>{e.send({type:"navigate.to",subject:r,fromNode:n})},fitDiagram:()=>{e.send({type:"fitDiagram"})},close:()=>{e._parent?e._parent?.send({type:"close",actorId:e.id}):e.send({type:"close"})}}),[e])}var c$,kQ;function d$(){if(kQ)return c$;kQ=1;var e="\0",r="\0",n="";class o{_isDirected=!0;_isMultigraph=!1;_isCompound=!1;_label;_defaultNodeLabelFn=()=>{};_defaultEdgeLabelFn=()=>{};_nodes={};_in={};_preds={};_out={};_sucs={};_edgeObjs={};_edgeLabels={};_nodeCount=0;_edgeCount=0;_parent;_children;constructor(u){u&&(this._isDirected=Object.hasOwn(u,"directed")?u.directed:!0,this._isMultigraph=Object.hasOwn(u,"multigraph")?u.multigraph:!1,this._isCompound=Object.hasOwn(u,"compound")?u.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[r]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(u){return this._label=u,this}graph(){return this._label}setDefaultNodeLabel(u){return this._defaultNodeLabelFn=u,typeof u!="function"&&(this._defaultNodeLabelFn=()=>u),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var u=this;return this.nodes().filter(p=>Object.keys(u._in[p]).length===0)}sinks(){var u=this;return this.nodes().filter(p=>Object.keys(u._out[p]).length===0)}setNodes(u,p){var f=arguments,g=this;return u.forEach(function(v){f.length>1?g.setNode(v,p):g.setNode(v)}),this}setNode(u,p){return Object.hasOwn(this._nodes,u)?(arguments.length>1&&(this._nodes[u]=p),this):(this._nodes[u]=arguments.length>1?p:this._defaultNodeLabelFn(u),this._isCompound&&(this._parent[u]=r,this._children[u]={},this._children[r][u]=!0),this._in[u]={},this._preds[u]={},this._out[u]={},this._sucs[u]={},++this._nodeCount,this)}node(u){return this._nodes[u]}hasNode(u){return Object.hasOwn(this._nodes,u)}removeNode(u){var p=this;if(Object.hasOwn(this._nodes,u)){var f=g=>p.removeEdge(p._edgeObjs[g]);delete this._nodes[u],this._isCompound&&(this._removeFromParentsChildList(u),delete this._parent[u],this.children(u).forEach(function(g){p.setParent(g)}),delete this._children[u]),Object.keys(this._in[u]).forEach(f),delete this._in[u],delete this._preds[u],Object.keys(this._out[u]).forEach(f),delete this._out[u],delete this._sucs[u],--this._nodeCount}return this}setParent(u,p){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(p===void 0)p=r;else{p+="";for(var f=p;f!==void 0;f=this.parent(f))if(f===u)throw new Error("Setting "+p+" as parent of "+u+" would create a cycle");this.setNode(p)}return this.setNode(u),this._removeFromParentsChildList(u),this._parent[u]=p,this._children[p][u]=!0,this}_removeFromParentsChildList(u){delete this._children[this._parent[u]][u]}parent(u){if(this._isCompound){var p=this._parent[u];if(p!==r)return p}}children(u=r){if(this._isCompound){var p=this._children[u];if(p)return Object.keys(p)}else{if(u===r)return this.nodes();if(this.hasNode(u))return[]}}predecessors(u){var p=this._preds[u];if(p)return Object.keys(p)}successors(u){var p=this._sucs[u];if(p)return Object.keys(p)}neighbors(u){var p=this.predecessors(u);if(p){const g=new Set(p);for(var f of this.successors(u))g.add(f);return Array.from(g.values())}}isLeaf(u){var p;return this.isDirected()?p=this.successors(u):p=this.neighbors(u),p.length===0}filterNodes(u){var p=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});p.setGraph(this.graph());var f=this;Object.entries(this._nodes).forEach(function([w,x]){u(w)&&p.setNode(w,x)}),Object.values(this._edgeObjs).forEach(function(w){p.hasNode(w.v)&&p.hasNode(w.w)&&p.setEdge(w,f.edge(w))});var g={};function v(w){var x=f.parent(w);return x===void 0||p.hasNode(x)?(g[w]=x,x):x in g?g[x]:v(x)}return this._isCompound&&p.nodes().forEach(w=>p.setParent(w,v(w))),p}setDefaultEdgeLabel(u){return this._defaultEdgeLabelFn=u,typeof u!="function"&&(this._defaultEdgeLabelFn=()=>u),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(u,p){var f=this,g=arguments;return u.reduce(function(v,w){return g.length>1?f.setEdge(v,w,p):f.setEdge(v,w),w}),this}setEdge(){var u,p,f,g,v=!1,w=arguments[0];typeof w=="object"&&w!==null&&"v"in w?(u=w.v,p=w.w,f=w.name,arguments.length===2&&(g=arguments[1],v=!0)):(u=w,p=arguments[1],f=arguments[3],arguments.length>2&&(g=arguments[2],v=!0)),u=""+u,p=""+p,f!==void 0&&(f=""+f);var x=l(this._isDirected,u,p,f);if(Object.hasOwn(this._edgeLabels,x))return v&&(this._edgeLabels[x]=g),this;if(f!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(u),this.setNode(p),this._edgeLabels[x]=v?g:this._defaultEdgeLabelFn(u,p,f);var k=s(this._isDirected,u,p,f);return u=k.v,p=k.w,Object.freeze(k),this._edgeObjs[x]=k,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 _Q,SQ;function Aqe(){return SQ||(SQ=1,_Q="2.2.4"),_Q}var EQ,CQ;function Dqe(){return CQ||(CQ=1,EQ={Graph:d$(),version:Aqe()}),EQ}var u$,$Q;function Mqe(){if($Q)return u$;$Q=1;var e=d$();u$={write:r,read: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 u$}var p$,RQ;function Nqe(){if(RQ)return p$;RQ=1,p$=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 p$}var h$,zQ;function TQ(){if(zQ)return h$;zQ=1;class e{_arr=[];_keyIndices={};size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,o){var 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 f$}var m$,DQ;function Pqe(){if(DQ)return m$;DQ=1;var e=AQ();m$=r;function r(n,o,a){return n.nodes().reduce(function(i,l){return i[l]=e(n,l,o,a),i},{})}return m$}var g$,MQ;function NQ(){if(MQ)return g$;MQ=1,g$=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 g$}var y$,PQ;function Bqe(){if(PQ)return y$;PQ=1;var e=NQ();y$=r;function r(n){return e(n).filter(function(o){return o.length>1||o.length===1&&n.hasEdge(o[0],o[0])})}return y$}var v$,BQ;function Iqe(){if(BQ)return v$;BQ=1,v$=r;var e=()=>1;function r(o,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 w$}var k$,qQ;function Lqe(){if(qQ)return k$;qQ=1;var e=VQ();k$=r;function r(n,o){return e(n,o,"post")}return k$}var _$,HQ;function Fqe(){if(HQ)return _$;HQ=1;var e=VQ();_$=r;function r(n,o){return e(n,o,"pre")}return _$}var S$,UQ;function Vqe(){if(UQ)return S$;UQ=1;var e=d$(),r=TQ();S$=n;function n(o,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 S$}var WQ,GQ;function qqe(){return GQ||(GQ=1,WQ={components:Nqe(),dijkstra:AQ(),dijkstraAll:Pqe(),findCycles:Bqe(),floydWarshall:Iqe(),isAcyclic:Oqe(),postorder:Lqe(),preorder:Fqe(),prim:Vqe(),tarjan:NQ(),topsort:OQ()}),WQ}var E$,YQ;function cl(){if(YQ)return E$;YQ=1;var e=Dqe();return E$={Graph:e.Graph,json:Mqe(),alg:qqe(),version:e.version},E$}var C$,XQ;function Hqe(){if(XQ)return C$;XQ=1;class e{constructor(){let 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 C$=e,C$}var $$,ZQ;function Uqe(){if(ZQ)return $$;ZQ=1;let e=cl().Graph,r=Hqe();$$=o;let n=()=>1;function o(d,u){if(d.nodeCount()<=1)return[];let p=l(d,u||n);return 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;pj.setNode(I,z.node(I))),z.edges().forEach(I=>{let P=j.edge(I.v,I.w)||{weight:0,minlen:1},L=z.edge(I);j.setEdge(I.v,I.w,{weight:P.weight+L.weight,minlen:Math.max(P.minlen,L.minlen)})}),j}function o(z){let j=new e({multigraph:z.isMultigraph()}).setGraph(z.graph());return z.nodes().forEach(I=>{z.children(I).length||j.setNode(I,z.node(I))}),z.edges().forEach(I=>{j.setEdge(I,z.edge(I))}),j}function a(z){let j=z.nodes().map(I=>{let P={};return z.outEdges(I).forEach(L=>{P[L.w]=(P[L.w]||0)+z.edge(L).weight}),P});return A(z.nodes(),j)}function i(z){let j=z.nodes().map(I=>{let P={};return z.inEdges(I).forEach(L=>{P[L.v]=(P[L.v]||0)+z.edge(L).weight}),P});return A(z.nodes(),j)}function l(z,j){let I=z.x,P=z.y,L=j.x-I,H=j.y-P,M=z.width/2,V=z.height/2;if(!L&&!H)throw new Error("Not possible to find intersection inside of the rectangle");let B,F;return Math.abs(H)*M>Math.abs(L)*V?(H<0&&(V=-V),B=V*L/H,F=V):(L<0&&(M=-M),B=M,F=M*H/L),{x:I+B,y:P+F}}function s(z){let j=$(v(z)+1).map(()=>[]);return z.nodes().forEach(I=>{let P=z.node(I),L=P.rank;L!==void 0&&(j[L][P.order]=I)}),j}function c(z){let j=z.nodes().map(P=>{let L=z.node(P).rank;return L===void 0?Number.MAX_VALUE:L}),I=g(Math.min,j);z.nodes().forEach(P=>{let L=z.node(P);Object.hasOwn(L,"rank")&&(L.rank-=I)})}function d(z){let j=z.nodes().map(M=>z.node(M).rank),I=g(Math.min,j),P=[];z.nodes().forEach(M=>{let V=z.node(M).rank-I;P[V]||(P[V]=[]),P[V].push(M)});let L=0,H=z.graph().nodeRankFactor;Array.from(P).forEach((M,V)=>{M===void 0&&V%H!==0?--L:M!==void 0&&L&&M.forEach(B=>z.node(B).rank+=L)})}function u(z,j,I,P){let L={width:0,height:0};return arguments.length>=4&&(L.rank=I,L.order=P),r(z,"border",L,j)}function p(z,j=f){const I=[];for(let P=0;Pf){const I=p(j);return z.apply(null,I.map(P=>z.apply(null,P)))}else return z.apply(null,j)}function v(z){const j=z.nodes().map(I=>{let P=z.node(I).rank;return P===void 0?Number.MIN_VALUE:P});return g(Math.max,j)}function w(z,j){let I={lhs:[],rhs:[]};return z.forEach(P=>{j(P)?I.lhs.push(P):I.rhs.push(P)}),I}function x(z,j){let I=Date.now();try{return j()}finally{console.log(z+" time: "+(Date.now()-I)+"ms")}}function k(z,j){return j()}let C=0;function _(z){var j=++C;return z+(""+j)}function $(z,j,I=1){j==null&&(j=z,z=0);let P=H=>HjP[j]),Object.entries(z).reduce((P,[L,H])=>(P[L]=I(H,L),P),{})}function A(z,j){return z.reduce((I,P,L)=>(I[P]=j[L],I),{})}return R$}var z$,QQ;function Wqe(){if(QQ)return z$;QQ=1;let e=Uqe(),r=$n().uniqueId;z$={run:n,undo: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 z$}var T$,JQ;function Gqe(){if(JQ)return T$;JQ=1;let e=$n();T$={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 T$}var j$,eJ;function b2(){if(eJ)return j$;eJ=1;const{applyWithChunking:e}=$n();j$={longestPath:r,slack:n};function r(o){var 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 j$}var A$,tJ;function rJ(){if(tJ)return A$;tJ=1;var e=cl().Graph,r=b2().slack;A$=n;function n(l){var s=new e({directed:!1}),c=l.nodes()[0],d=l.nodeCount();s.setNode(c,{});for(var u,p;o(s,l){var p=u.v,f=d===p?u.w:p;!l.hasNode(f)&&!r(s,u)&&(l.setNode(f,{}),l.setEdge(d,f,{}),c(f))})}return l.nodes().forEach(c),l.nodeCount()}function 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 A$}var D$,nJ;function Yqe(){if(nJ)return D$;nJ=1;var e=rJ(),r=b2().slack,n=b2().longestPath,o=cl().alg.preorder,a=cl().alg.postorder,i=$n().simplify;D$=l,l.initLowLimValues=u,l.initCutValues=s,l.calcCutValue=d,l.leaveEdge=f,l.enterEdge=g,l.exchangeEdges=v;function l(C){C=i(C),n(C);var _=e(C);u(_),s(_,C);for(var $,R;$=f(_);)R=g(_,C,$),v(_,C,$,R)}function s(C,_){var $=a(C,C.nodes());$=$.slice(0,$.length-1),$.forEach(R=>c(C,_,R))}function c(C,_,$){var R=C.node($),T=R.parent;C.edge($,T).cutvalue=d(C,_,$)}function d(C,_,$){var R=C.node($),T=R.parent,A=!0,z=_.edge($,T),j=0;return z||(A=!1,z=_.edge(T,$)),j=z.weight,_.nodeEdges($).forEach(I=>{var P=I.v===$,L=P?I.w:I.v;if(L!==T){var H=P===A,M=_.edge(I).weight;if(j+=H?M:-M,x(C,$,L)){var V=C.edge($,L).cutvalue;j+=H?-V:V}}}),j}function u(C,_){arguments.length<2&&(_=C.nodes()[0]),p(C,{},1,_)}function p(C,_,$,R,T){var A=$,z=C.node(R);return _[R]=!0,C.neighbors(R).forEach(j=>{Object.hasOwn(_,j)||($=p(C,_,$,j,R))}),z.low=A,z.lim=$++,T?z.parent=T:delete z.parent,$}function f(C){return C.edges().find(_=>C.edge(_).cutvalue<0)}function g(C,_,$){var R=$.v,T=$.w;_.hasEdge(R,T)||(R=$.w,T=$.v);var A=C.node(R),z=C.node(T),j=A,I=!1;A.lim>z.lim&&(j=z,I=!0);var P=_.edges().filter(L=>I===k(C,C.node(L.v),j)&&I!==k(C,C.node(L.w),j));return P.reduce((L,H)=>r(_,H)!_.node(T).parent),R=o(C,$);R=R.slice(1),R.forEach(T=>{var A=C.node(T).parent,z=_.edge(T,A),j=!1;z||(z=_.edge(A,T),j=!0),_.node(T).rank=_.node(A).rank+(j?z.minlen:-z.minlen)})}function x(C,_,$){return C.hasEdge(_,$)}function k(C,_,$){return $.low<=_.lim&&_.lim<=$.lim}return D$}var M$,oJ;function Xqe(){if(oJ)return M$;oJ=1;var e=b2(),r=e.longestPath,n=rJ(),o=Yqe();M$=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 M$}var N$,aJ;function Zqe(){if(aJ)return N$;aJ=1,N$=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 N$}var P$,iJ;function Kqe(){if(iJ)return P$;iJ=1;let e=$n();P$={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,R=C.borderTop?d:2*d,T=_!==$?1:u-p[f]+1;l.setEdge(v,_,{weight:R,minlen:T,nestingEdge:!0}),l.setEdge($,w,{weight:R,minlen:T,nestingEdge:!0})}),l.parent(f)||l.setEdge(s,v,{weight:0,minlen:u+p[f]})}function o(l){var s={};function c(d,u){var p=l.children(d);p&&p.length&&p.forEach(f=>c(f,u+1)),s[d]=u}return l.children().forEach(d=>c(d,1)),s}function 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 P$}var B$,lJ;function Qqe(){if(lJ)return B$;lJ=1;let e=$n();B$=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 I$}var O$,cJ;function eHe(){if(cJ)return O$;cJ=1;let e=$n();O$=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 O$}var L$,dJ;function tHe(){if(dJ)return L$;dJ=1;let e=$n().zipObject;L$=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 L$}var F$,uJ;function rHe(){if(uJ)return F$;uJ=1,F$=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 F$}var V$,pJ;function nHe(){if(pJ)return V$;pJ=1;let e=$n();V$=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 V$}var q$,hJ;function oHe(){if(hJ)return q$;hJ=1;let e=$n();q$=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 q$}var H$,fJ;function aHe(){if(fJ)return H$;fJ=1;let e=rHe(),r=nHe(),n=oHe();H$=o;function o(l,s,c,d){let u=l.children(s),p=l.node(s),f=p?p.borderLeft:void 0,g=p?p.borderRight:void 0,v={};f&&(u=u.filter(C=>C!==f&&C!==g));let w=e(l,u);w.forEach(C=>{if(l.children(C.v).length){let _=o(l,C.v,c,d);v[C.v]=_,Object.hasOwn(_,"barycenter")&&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 H$}var U$,mJ;function iHe(){if(mJ)return U$;mJ=1;let e=cl().Graph,r=$n();U$=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 U$}var W$,gJ;function lHe(){if(gJ)return W$;gJ=1,W$=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 W$}var G$,yJ;function sHe(){if(yJ)return G$;yJ=1;let e=eHe(),r=tHe(),n=aHe(),o=iHe(),a=lHe(),i=cl().Graph,l=$n();G$=s;function s(p,f){if(f&&typeof f.customOrder=="function"){f.customOrder(p,s);return}let g=l.maxRank(p),v=c(p,l.range(1,g+1),"inEdges"),w=c(p,l.range(g-1,-1,-1),"outEdges"),x=e(p);if(u(p,x),f&&f.disableOptimalOrderHeuristic)return;let k=Number.POSITIVE_INFINITY,C;for(let _=0,$=0;$<4;++_,++$){d(_%2?v:w,_%4>=2),x=l.buildLayerMatrix(p);let R=r(p,x);R{v.has(x)||v.set(x,[]),v.get(x).push(k)};for(const x of p.nodes()){const k=p.node(x);if(typeof k.rank=="number"&&w(k.rank,x),typeof k.minRank=="number"&&typeof k.maxRank=="number")for(let C=k.minRank;C<=k.maxRank;C++)C!==k.rank&&w(C,x)}return f.map(function(x){return o(p,x,g,v.get(x)||[])})}function d(p,f){let g=new 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 G$}var Y$,vJ;function cHe(){if(vJ)return Y$;vJ=1;let e=cl().Graph,r=$n();Y$={positionX:g,findType1Conflicts:n,findType2Conflicts:o,addConflict:i,hasConflict:l,verticalAlignment:s,horizontalCompaction:c,alignCoordinates:p,findSmallestWidthAlignment:u,balance:f};function n(x,k){let C={};function _($,R){let T=0,A=0,z=$.length,j=R[R.length-1];return R.forEach((I,P)=>{let L=a(x,I),H=L?x.node(L).order:z;(L||I===j)&&(R.slice(A,P+1).forEach(M=>{x.predecessors(M).forEach(V=>{let B=x.node(V),F=B.order;(F{I=R[P],x.node(I).dummy&&x.predecessors(I).forEach(L=>{let H=x.node(L);H.dummy&&(H.orderj)&&i(C,L,I)})})}function $(R,T){let A=-1,z,j=0;return T.forEach((I,P)=>{if(x.node(I).dummy==="border"){let L=x.predecessors(I);L.length&&(z=x.node(L[0]).order,_(T,j,P,A,z),j=P,A=z)}_(T,j,T.length,z,R.length)}),T}return k.length&&k.reduce($),C}function 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 $={},R={},T={};return k.forEach(A=>{A.forEach((z,j)=>{$[z]=z,R[z]=z,T[z]=j})}),k.forEach(A=>{let z=-1;A.forEach(j=>{let I=_(j);if(I.length){I=I.sort((L,H)=>T[L]-T[H]);let P=(I.length-1)/2;for(let L=Math.floor(P),H=Math.ceil(P);L<=H;++L){let M=I[L];R[j]===j&&zMath.max(L,R[H.v]+T.edge(H)),0)}function I(P){let L=T.outEdges(P).reduce((M,V)=>Math.min(M,R[V.w]-T.edge(V)),Number.POSITIVE_INFINITY),H=x.node(P);L!==Number.POSITIVE_INFINITY&&H.borderType!==A&&(R[P]=Math.max(R[P],L))}return z(j,T.predecessors.bind(T)),z(I,T.successors.bind(T)),Object.keys(_).forEach(P=>R[P]=R[C[P]]),R}function d(x,k,C,_){let $=new e,R=x.graph(),T=v(R.nodesep,R.edgesep,_);return k.forEach(A=>{let z;A.forEach(j=>{let I=C[j];if($.setNode(I),z){var P=C[z],L=$.edge(P,I);$.setEdge(P,I,Math.max(T(x,j,z),L||0))}z=j})}),$}function u(x,k){return Object.values(k).reduce((C,_)=>{let $=Number.NEGATIVE_INFINITY,R=Number.POSITIVE_INFINITY;Object.entries(_).forEach(([A,z])=>{let j=w(x,A)/2;$=Math.max(z+j,$),R=Math.min(z-j,R)});const T=$-R;return T{["l","r"].forEach(T=>{let A=R+T,z=x[A];if(z===k)return;let j=Object.values(z),I=_-r.applyWithChunking(Math.min,j);T!=="l"&&(I=$-r.applyWithChunking(Math.max,j)),I&&(x[A]=r.mapValues(z,P=>P+I))})})}function f(x,k){return r.mapValues(x.ul,(C,_)=>{if(k)return x[k.toLowerCase()][_];{let $=Object.values(x).map(R=>R[_]).sort((R,T)=>R-T);return($[1]+$[2])/2}})}function g(x){let k=r.buildLayerMatrix(x),C=Object.assign(n(x,k),o(x,k)),_={},$;["u","d"].forEach(T=>{$=T==="u"?k:Object.values(k).reverse(),["l","r"].forEach(A=>{A==="r"&&($=$.map(P=>Object.values(P).reverse()));let z=(T==="u"?x.predecessors:x.successors).bind(x),j=s(x,$,C,z),I=c(x,$,j.root,j.align,A==="r");A==="r"&&(I=r.mapValues(I,P=>-P)),_[T+A]=I})});let R=u(x,_);return p(_,R),f(_,x.graph().align)}function v(x,k,C){return(_,$,R)=>{let T=_.node($),A=_.node(R),z=0,j;if(z+=T.width/2,Object.hasOwn(T,"labelpos"))switch(T.labelpos.toLowerCase()){case"l":j=-T.width/2;break;case"r":j=T.width/2;break}if(j&&(z+=C?j:-j),j=0,z+=(T.dummy?k:x)/2,z+=(A.dummy?k:x)/2,z+=A.width/2,Object.hasOwn(A,"labelpos"))switch(A.labelpos.toLowerCase()){case"l":j=A.width/2;break;case"r":j=-A.width/2;break}return j&&(z+=C?j:-j),j=0,z}}function w(x,k){return x.node(k).width}return Y$}var X$,bJ;function dHe(){if(bJ)return X$;bJ=1;let e=$n(),r=cHe().positionX;X$=n;function n(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 X$}var Z$,xJ;function uHe(){if(xJ)return Z$;xJ=1;let e=Wqe(),r=Gqe(),n=Xqe(),o=$n().normalizeRanks,a=Zqe(),i=$n().removeEmptyRanks,l=Kqe(),s=Qqe(),c=Jqe(),d=sHe(),u=dHe(),p=$n(),f=cl().Graph;Z$=g;function g(O,W){let K=W&&W.debugTiming?p.time:p.notime;K("layout",()=>{let Q=K(" buildLayoutGraph",()=>z(O));K(" runLayout",()=>v(Q,K,W)),K(" updateInputGraph",()=>w(O,Q))})}function v(O,W,K){W(" makeSpaceForEdgeLabels",()=>j(O)),W(" removeSelfEdges",()=>q(O)),W(" acyclic",()=>e.run(O)),W(" nestingGraph.run",()=>l.run(O)),W(" rank",()=>n(p.asNonCompoundGraph(O))),W(" injectEdgeLabelProxies",()=>I(O)),W(" removeEmptyRanks",()=>i(O)),W(" nestingGraph.cleanup",()=>l.cleanup(O)),W(" normalizeRanks",()=>o(O)),W(" assignRankMinMax",()=>P(O)),W(" removeEdgeLabelProxies",()=>L(O)),W(" normalize.run",()=>r.run(O)),W(" parentDummyChains",()=>a(O)),W(" addBorderSegments",()=>s(O)),W(" order",()=>d(O,K)),W(" insertSelfEdges",()=>G(O)),W(" adjustCoordinateSystem",()=>c.adjust(O)),W(" position",()=>u(O)),W(" positionSelfEdges",()=>U(O)),W(" removeBorderNodes",()=>F(O)),W(" normalize.undo",()=>r.undo(O)),W(" fixupEdgeLabelCoords",()=>V(O)),W(" undoCoordinateSystem",()=>c.undo(O)),W(" translateGraph",()=>H(O)),W(" assignNodeIntersects",()=>M(O)),W(" reversePoints",()=>B(O)),W(" acyclic.undo",()=>e.undo(O))}function w(O,W){O.nodes().forEach(K=>{let Q=O.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))}),O.edges().forEach(K=>{let Q=O.edge(K),ae=W.edge(K);Q.points=ae.points,Object.hasOwn(ae,"x")&&(Q.x=ae.x,Q.y=ae.y)}),O.graph().width=W.graph().width,O.graph().height=W.graph().height}let x=["nodesep","edgesep","ranksep","marginx","marginy"],k={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},C=["acyclicer","ranker","rankdir","align"],_=["width","height","rank"],$={width:0,height:0},R=["minlen","weight","width","height","labeloffset"],T={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},A=["labelpos"];function z(O){let W=new f({multigraph:!0,compound:!0}),K=Z(O.graph());return W.setGraph(Object.assign({},k,Y(K,x),p.pick(K,C))),O.nodes().forEach(Q=>{let ae=Z(O.node(Q));const te=Y(ae,_);Object.keys($).forEach(re=>{te[re]===void 0&&(te[re]=$[re])}),W.setNode(Q,te),W.setParent(Q,O.parent(Q))}),O.edges().forEach(Q=>{let ae=Z(O.edge(Q));W.setEdge(Q,Object.assign({},T,Y(ae,R),p.pick(ae,A)))}),W}function j(O){let W=O.graph();W.ranksep/=2,O.edges().forEach(K=>{let Q=O.edge(K);Q.minlen*=2,Q.labelpos.toLowerCase()!=="c"&&(W.rankdir==="TB"||W.rankdir==="BT"?Q.width+=Q.labeloffset:Q.height+=Q.labeloffset)})}function I(O){O.edges().forEach(W=>{let K=O.edge(W);if(K.width&&K.height){let Q=O.node(W.v),ae={rank:(O.node(W.w).rank-Q.rank)/2+Q.rank,e:W};p.addDummyNode(O,"edge-proxy",ae,"_ep")}})}function P(O){let W=0;O.nodes().forEach(K=>{let Q=O.node(K);Q.borderTop&&(Q.minRank=O.node(Q.borderTop).rank,Q.maxRank=O.node(Q.borderBottom).rank,W=Math.max(W,Q.maxRank))}),O.graph().maxRank=W}function L(O){O.nodes().forEach(W=>{let K=O.node(W);K.dummy==="edge-proxy"&&(O.edge(K.e).labelRank=K.rank,O.removeNode(W))})}function H(O){let W=Number.POSITIVE_INFINITY,K=0,Q=Number.POSITIVE_INFINITY,ae=0,te=O.graph(),re=te.marginx||0,ue=te.marginy||0;function _e(ce){let pe=ce.x,xe=ce.y,je=ce.width,Be=ce.height;W=Math.min(W,pe-je/2),K=Math.max(K,pe+je/2),Q=Math.min(Q,xe-Be/2),ae=Math.max(ae,xe+Be/2)}O.nodes().forEach(ce=>_e(O.node(ce))),O.edges().forEach(ce=>{let pe=O.edge(ce);Object.hasOwn(pe,"x")&&_e(pe)}),W-=re,Q-=ue,O.nodes().forEach(ce=>{let pe=O.node(ce);pe.x-=W,pe.y-=Q}),O.edges().forEach(ce=>{let pe=O.edge(ce);pe.points.forEach(xe=>{xe.x-=W,xe.y-=Q}),Object.hasOwn(pe,"x")&&(pe.x-=W),Object.hasOwn(pe,"y")&&(pe.y-=Q)}),te.width=K-W+re,te.height=ae-Q+ue}function M(O){O.edges().forEach(W=>{let K=O.edge(W),Q=O.node(W.v),ae=O.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(O){O.edges().forEach(W=>{let K=O.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(O){O.edges().forEach(W=>{let K=O.edge(W);K.reversed&&K.points.reverse()})}function F(O){O.nodes().forEach(W=>{if(O.children(W).length){let K=O.node(W),Q=O.node(K.borderTop),ae=O.node(K.borderBottom),te=O.node(K.borderLeft[K.borderLeft.length-1]),re=O.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}}),O.nodes().forEach(W=>{O.node(W).dummy==="border"&&O.removeNode(W)})}function q(O){O.edges().forEach(W=>{if(W.v===W.w){var K=O.node(W.v);K.selfEdges||(K.selfEdges=[]),K.selfEdges.push({e:W,label:O.edge(W)}),O.removeEdge(W)}})}function G(O){var W=p.buildLayerMatrix(O);W.forEach(K=>{var Q=0;K.forEach((ae,te)=>{var re=O.node(ae);re.order=te+Q,(re.selfEdges||[]).forEach(ue=>{p.addDummyNode(O,"selfedge",{width:ue.label.width,height:ue.label.height,rank:re.rank,order:te+ ++Q,e:ue.e,label:ue.label},"_se")}),delete re.selfEdges})})}function U(O){O.nodes().forEach(W=>{var K=O.node(W);if(K.dummy==="selfedge"){var Q=O.node(K.e.v),ae=Q.x+Q.width/2,te=Q.y,re=K.x-ae,ue=Q.height/2;O.setEdge(K.e,K.label),O.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(O,W){return p.mapValues(p.pick(O,W),Number)}function Z(O){var W={};return O&&Object.entries(O).forEach(([K,Q])=>{typeof K=="string"&&(K=K.toLowerCase()),W[K]=Q}),W}return Z$}var K$,wJ;function pHe(){if(wJ)return K$;wJ=1;let e=$n(),r=cl().Graph;K$={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 K$}var kJ,_J;function hHe(){return _J||(_J=1,kJ="1.1.8"),kJ}var SJ,EJ;function fHe(){return EJ||(EJ=1,SJ={graphlib:cl(),layout:uHe(),debug:pHe(),util:{time:$n().time,notime:$n().notime},version:hHe()}),SJ}var mHe=fHe();const x2=Y7(mHe),co={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:140,height:10,minlen:1,weight:1},emptyNodeOffset:120,nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function gHe(){const e=new x2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...co.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...co.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const Q$="-port";function J$(e,r,n){const o=new Ln(i=>({id:`${e}-${i}`,portId:`${e}-${i}`})),a=hx(r);for(const i of a.sorted){const l=a.children(i).length>0,s=i.id,c=`${e}-${s}`,d=l?`${c}${Q$}`: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 yHe(e){return x2.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 w2;(e=>{e.Empty="@empty"})(w2||(w2={}));function vHe(e,r){const n=gHe(),o=J$("incomers",e.incomers,n),a=J$("subjects",e.subjects,n),i=J$("outgoers",e.outgoers,n),l=[];Jr(XCe(Jr(C1(e.incoming),un($=>({id:$.source.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:o.byId($.source.id).graph,target:a.byId($.target.id).graph,relation:$}))),Jr(C1(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}`})),g$e(rp("expr")),f$e($=>{const R=$[0].source,T=$[0].target,A=$[0].expr;n.node(R.id).outPorts.push(T.id),n.node(T.id).inPorts.push(R.id),n.setEdge(R.portId,T.portId,{...co.edgeLabel},A),l.push({name:A,sourceFqn:$[0].sourceFqn,targetFqn:$[0].targetFqn,source:R.id,sourceHandle:R.id+"_out"+(n.node(R.id).outPorts.length-1),target:T.id,targetHandle:T.id+"_in"+(n.node(T.id).inPorts.length-1),relations:un($,rp("relation"))})}));for(const $ of a.graphNodes.values()){const R=$.id,T=n.node(R);if(T.isCompound)continue;const A=Math.max(n.inEdges(R)?.length??0,n.outEdges(R)?.length??0);A>2&&(T.height=T.height+(A-3)*14)}const s=[...o.graphNodes.values(),...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 R of a.graphNodes.values())n.setEdge($,R.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 R of a.graphNodes.values())n.setEdge(R.portId,$);s.push({id:$,portId:$})}const c=n.edgeCount();if(c>10)for(const $ of n.edges())n.setEdge($,{...co.edgeLabel,width:c>25?800:400});const d=yHe(n),u=Jr(s,ep($=>$.id===$.portId),hw($=>[$.id,d($.id)]));function p($){return u[$]??=Jr(n.children($)??[],ep(R=>!R.endsWith(Q$)),un(R=>p(R)),Wq(R=>{He(R.length>0,`Node ${$} has no nested nodes`)}),mw((R,T)=>({minY:Math.min(R.minY,T.position.y),maxY:Math.max(R.maxY,T.position.y+T.height)}),{minY:1/0,maxY:-1/0}),({minY:R,maxY:T})=>{const{position:{x:A},width:z}=d($);return R=R-co.compound.paddingTop,T=T+co.compound.paddingBottom,{position:{x:A,y:R},width:z,height:T-R}})}function f($){const R=n.parent($);return R?f(R)+1:0}function g($){const R=n.children($)??[];return R.length===0?0:1+Math.max(...R.map(g))}const v=($,R,T)=>Jr(T,un((A,z)=>({port:$+"_"+R+z,topY:p(A).position.y})),gw(rp("topY")),un(rp("port")));let w=0,x=0;const[k]=[...a.root];He(k,"Subjects should not be empty");let C=p(a.graphNodes.get(k.id).id);const _=s.map(({id:$})=>{const{element:R,inPorts:T,outPorts:A,column:z}=n.node($);let{position:j,width:I,height:P}=p($);if(!R){if(P=Math.min(C.height,300),j.y=C.position.y+C.height/2-P/2,z==="incomers")I=C.position.x-co.emptyNodeOffset-j.x;else{const q=j.x+I;j.x=C.position.x+C.width+co.emptyNodeOffset,I=q-j.x}return{id:$,parent:null,x:j.x,y:j.y,title:"empty node",description:null,technology:null,tags:[],links:[],color:"muted",shape:"rectangle",style:{border:"dashed",opacity:50},kind:w2.Empty,level:0,labelBBox:{x:j.x,y:j.y,width:I,height:P},children:[],width:I,height:P,column:z,ports:{in:[],out:[]},existsInCurrentView:!1}}const L=n.parent($),H=(n.children($)??[]).filter(q=>!q.endsWith(Q$));w=Math.min(w,j.x),x=Math.min(x,j.y);const M=r?E1(R.scopedViews(),q=>q.id!==r.id)?.id??null:null,V=r?.findNodeWithElement(R.id),B=r&&!V?E1(R.ancestors(),q=>!!r.findNodeWithElement(q.id))?.id:null,F=V??(B&&r?.findNodeWithElement(B));return{id:$,parent:L??null,x:j.x,y:j.y,title:R.title,description:Fs(R.$element)??null,technology:R.technology,tags:[...R.tags],links:null,color:F?.color??R.color,shape:V?.shape??R.shape,icon:V?.icon??R.icon??"none",modelRef:R.id,kind:R.kind,level:f($),labelBBox:{x:j.x,y:j.y,width:I,height:P},style:ud({...(V??F)?.style,...R.$element.style},["color","shape","icon"]),navigateTo:M,...H.length>0&&{depth:g($)},children:H,width:I,height:P,column:z,ports:{in:v($,"in",T),out:v($,"out",A)},existsInCurrentView:!!V}});return{subjectExistsInScope:!r||r.includesElement(k.id),bounds:{x:Math.min(w,0),y:Math.min(x,0),width:n.graph().width??100,height:n.graph().height??100},nodes:_,edges:n.edges().reduce(($,R)=>{const T=n.edge(R),A=R.name;if(!A)return $;const{name:z,source:j,sourceFqn:I,target:P,targetFqn:L,relations:H,sourceHandle:M,targetHandle:V}=mt(Q1(l,U=>U.name===A)),B=fw(H),F=B?.title??"untitled",q=H.length>1,G=fw(yw(H.flatMap(U=>U.navigateTo?.id?U.navigateTo.id:[])));return $.push(_1({id:z,sourceFqn:I,source:j,sourceHandle:M,targetFqn:L,target:P,targetHandle:V,label:q?`${H.length} relationships`:F,navigateTo:G,color:B?.color??"gray",existsInCurrentView:!r||H.every(U=>r.includesRelation(U.id)),points:T.points.map(U=>[U.x,U.y]),line:B?.line??"dashed",head:B?.head,tail:B?.tail,relations:H.map(U=>U.id),parent:null})),$},[])}}function bHe(e,r,n){const o=Fo();return S.useMemo(()=>{const a=r?o.findView(r):null,i=vHe(KO(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,KO])}const o0=(e,r)=>Rb(e.label,r.label);function eR(e){return{label:e.title,value:e.id,children:[...e.children()].map(eR).sort(o0)}}function xHe(e){const r=Fo();return S.useMemo(()=>e?[...r.view(e).roots()].map(eR).sort(o0):[...r.roots()].map(eR).sort(o0),[r,e??null])}const wHe=fe({margin:"0"}),kHe=fe({_hover:{backgroundColor:"mantine.colors.gray[0]",_dark:{backgroundColor:"mantine.colors.defaultHover",color:"mantine.colors.white"}}}),CJ=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),_He=Object.freeze(Object.defineProperty({__proto__:null,label:kHe,node:wHe,scrollArea:CJ},Symbol.toStringTag,{value:"Module"})),SHe=[["path",{d:"M8 9l4 -4l4 4",key:"svg-0"}],["path",{d:"M16 15l-4 4l-4 -4",key:"svg-1"}]],tR=wt("outline","selector","Selector",SHe),EHe=e=>{const r=e.context.layouted?.subjectExistsInScope??!1;return{subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,subjectExistsInScope:r,enableSelectSubject:e.context.enableSelectSubject,enableChangeScope:e.context.enableChangeScope}},CHe=()=>{},$He=S.memo(()=>{const e=n0(),{subjectId:r,viewId:n,scope:o,subjectExistsInScope:a,enableSelectSubject:i,enableChangeScope:l}=v2(EHe),s=S.useRef(null),c=S.useRef(null),d=Fo().findElement(r),u=xHe(o==="view"&&n?n:void 0),p=_y({multiple:!1});return p.setHoveredNode=CHe,S.useEffect(()=>{Du(r).reverse().forEach(f=>{p.expand(f)}),p.select(r)},[r]),y.jsxs(en,{ref:s,gap:"xs",pos:"relative",children:[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(kd,{children:y.jsx(Vn,{size:"xs",variant:"default",maw:250,rightSection:y.jsx(tR,{size:16}),children:y.jsx(at,{fz:"xs",fw:"500",truncate:!0,children:d?.title??"???"})})}),y.jsx(Qs,{p:0,miw:250,maw:400,children:y.jsx(oa,{scrollbars:"y",type:"never",viewportRef:c,className:CJ,children:y.jsx(Ff,{allowRangeSelection:!1,selectOnClick:!1,tree:p,data:u,classNames:_He,levelOffset:8,styles:{root:{maxWidth:400,overflow:"hidden"},label:{paddingTop:5,paddingBottom:6}},renderNode:({node:f,selected:g,expanded:v,elementProps:w,hasChildren:x})=>y.jsxs(en,{gap:2,wrap:"nowrap",...w,py:"3",children:[y.jsx(lr,{variant:"subtle",size:18,c:"dimmed",style:{visibility:x?"visible":"hidden"},children:y.jsx(Dd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${v?"90deg":"0"})`,width:"80%"}})}),y.jsx(Se,{flex:"1 1 100%",w:"100%",onClick:k=>{k.stopPropagation(),p.select(f.value),p.expand(f.value),e.navigateTo(f.value)},children:y.jsx(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(Of,{flex:"1 0 auto",size:"xs",withItemsBorders:!1,value:o,styles:{label:{paddingLeft:8,paddingRight:8}},onChange:f=>{e.changeScope(f)},data:[{label:"Global",value:"global"},{label:y.jsx("span",{children:"Current view"}),value:"view",disabled:!a}]})})})]})]})}),k2=(e,r)=>Math.abs(e-r)<2.5,RHe=(e,r)=>e.id===r.id&&tt(e.selected??!1,r.selected??!1)&&tt(e.animated??!1,r.animated??!1)&&tt(e.source,r.source)&&k2(e.sourceX,r.sourceX)&&k2(e.sourceY,r.sourceY)&&tt(e.sourceHandleId??null,r.sourceHandleId??null)&&tt(e.sourcePosition,r.sourcePosition)&&tt(e.target,r.target)&&k2(e.targetY,r.targetY)&&k2(e.targetX,r.targetX)&&tt(e.targetHandleId??null,r.targetHandleId??null)&&tt(e.targetPosition,r.targetPosition)&&tt(e.data,r.data);function rR(e){const r=S.memo(e,RHe);return r.displayName=`MemoEdge(${e.displayName||e.name})`,r}function $J(e,r){return r2(e,r)}const wi=$J("button"),Rr=$J("div"),a0=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=k1(e)?IO(e):null,g=Kn(r)||Kn(n);return y.jsxs(Rr,{ref:p,className:Ge("likec4-edge-label",dVe({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]})]})});a0.displayName="EdgeLabel";function _2({icon:e,onClick:r}){return y.jsx(lr,{className:Ge("nodrag nopan",cVe()),onPointerDownCapture:nn,onClick:r,role:"button",onDoubleClick:nn,children:e??y.jsx(bi,{})})}function i0({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 zHe=e=>y.jsx("marker",{viewBox:"-4 -4 14 16",refX:5,refY:4,markerWidth:"7",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M0,0 L7,4 L0,8 L4,4 Z",stroke:"context-stroke",fill:"context-stroke",strokeDasharray:0,strokeWidth:1,strokeLinecap:"round"})}),THe=e=>y.jsx("marker",{viewBox:"-1 -1 12 10",refX:4,refY:3,markerWidth:"8",markerHeight:"6",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 0 0 L 8 3 L 0 6 L 1 3 z",fill:"context-stroke",strokeWidth:0})}),jHe=e=>y.jsx("marker",{viewBox:"-1 -1 12 12",refX:8,refY:4,markerWidth:"8",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 8 0 L 0 4 L 8 8 M 8 4 L 0 4",fill:"none",strokeWidth:1})}),AHe=e=>y.jsx("marker",{viewBox:"-1 -1 12 10",refX:4,refY:3,markerWidth:"8",markerHeight:"6",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 0 0 L 8 3 L 0 6 L 1 3 z",stroke:"context-stroke",fill:"context-stroke",strokeWidth:1.25,strokeLinejoin:"miter",strokeLinecap:"square"})}),DHe=e=>y.jsx("marker",{viewBox:"-4 -4 16 14",refX:5,refY:4,markerWidth:"10",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M5,0 L10,4 L5,8 L0,4 Z",fill:"context-stroke",strokeWidth:0,strokeLinecap:"round"})}),MHe=e=>y.jsx("marker",{viewBox:"-4 -4 16 14",refX:6,refY:4,markerWidth:"10",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M5,0 L10,4 L5,8 L0,4 Z",stroke:"context-stroke",fill:"context-stroke",strokeWidth:1.25,strokeLinecap:"round"})}),NHe=e=>y.jsx("marker",{viewBox:"0 0 10 10",refX:4,refY:4,markerWidth:"6",markerHeight:"6",...e,children:y.jsx("circle",{strokeWidth:0,fill:"context-stroke",cx:4,cy:4,r:3})}),PHe=e=>y.jsx("marker",{viewBox:"0 0 10 10",refX:4,refY:4,markerWidth:"6",markerHeight:"6",...e,children:y.jsx("circle",{strokeWidth:1.25,stroke:"context-stroke",fill:"context-stroke",cx:4,cy:4,r:3})}),RJ={Arrow:THe,Crow:jHe,OArrow:AHe,Open:zHe,Diamond:DHe,ODiamond:MHe,Dot:NHe,ODot:PHe};function zJ(e){if(!(!e||e==="none"))switch(e){case"normal":return"Arrow";case"crow":return"Crow";case"onormal":return"OArrow";case"diamond":return"Diamond";case"odiamond":return"ODiamond";case"open":case"vee":return"Open";case"dot":return"Dot";case"odot":return"ODot";default:Qo(e)}}const l0=S.forwardRef(({edgeProps:{id:e,data:{line:r,dir:n,tail:o,head:a},selectable:i=!0,style:l,interactionWidth:s},isDragging:c=!1,onEdgePointerDown:d,strokeWidth:u,svgPath:p},f)=>{let g=zJ(o),v=zJ(a??"normal");n==="back"&&([g,v]=[v,g]);const w=g?RJ[g]:null,x=v?RJ[v]:null,k=r==="dotted",C=k||r==="dashed";let _;k?_="1,8":C&&(_="8,10");const $=gVe();return y.jsxs(y.Fragment,{children:[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})]})]})});l0.displayName="EdgePath";const TJ=e=>{if(e!==void 0)return Iq(e)?`${Math.round(e)}px`:e};function S2({edgeProps:{id:e,selected:r=!1,data:{hovered:n=!1,active:o=!1,dimmed:a=!1,labelBBox:i,color:l="gray"},animated:s},labelPosition:c,className:d,style:u,children:p,...f}){let g=QC(S.useCallback(k=>k.edgeLookup.get(e)?.zIndex??lc.Edge,[e]));(n||o)&&(g+=100);let v=c?.x??i?.x,w=c?.y??i?.y;if(v===void 0||w===void 0)return null;const x=c?.translate??"";return y.jsx(yq,{children:y.jsx("div",{...f,className:Ge("nodrag nopan","likec4-edge-label-container",d),"data-likec4-hovered":n,"data-likec4-color":l,"data-edge-active":o,"data-edge-animated":s||o,...r!==!1&&{"data-likec4-selected":r},...a!==!1&&{"data-likec4-dimmed":a},style:{...i&&{maxWidth:i.width+18},zIndex:g,...u,transform:`translate(${TJ(v)}, ${TJ(w)}) ${x}`},children:p},e)})}const BHe=rR(e=>{const r=n0(),{enableNavigateTo:n}=sr(),{data:{navigateTo:o,relations:a,existsInCurrentView:i}}=e,[l,s,c]=Zx(e),d=Nt(),u=a.length>1||!i,p=u?{...e,data:{...e.data,line:"solid",color:"amber"}}:e;let f=y.jsx(a0,{edgeProps:p,className:fe({transition:"fast"}),children:n&&o&&y.jsx(_2,{...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(i0,{...p,children:[y.jsx(l0,{edgeProps:p,svgPath:l,...u&&{strokeWidth:5}}),y.jsx(S2,{edgeProps:p,labelPosition:{x:s,y:c,translate:"translate(-50%, 0)"},style:{maxWidth:Math.min(Math.abs(e.targetX-e.sourceX-70),250)},children:f})]})}),IHe=fe({width:"100%",height:"100%",border:"3px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"md",display:"flex",justifyContent:"center",alignItems:"center"});function OHe({data:{column:e}}){return y.jsx(Se,{className:IHe,children:y.jsxs(at,{c:"dimmed",fz:"lg",fw:500,children:["No ",e==="incomers"?"incoming":"outgoing"]})})}const LHe=e=>e.context.view.id;function E2(){const e=Xf();return pn(e,LHe)}const FHe=e=>e.context.view;function VHe(){const e=Xf();return pn(e,FHe,Ir)}const qHe=[["path",{d:"M3 6a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-0"}],["path",{d:"M21 11v-3a2 2 0 0 0 -2 -2h-6l3 3m0 -6l-3 3",key:"svg-1"}],["path",{d:"M3 13v3a2 2 0 0 0 2 2h6l-3 -3m0 6l3 -3",key:"svg-2"}],["path",{d:"M15 18a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-3"}]],s0=wt("outline","transform","Transform",qHe),HHe=[["path",{d:"M4 21v-4a3 3 0 0 1 3 -3h5",key:"svg-0"}],["path",{d:"M9 17l3 -3l-3 -3",key:"svg-1"}],["path",{d:"M14 3v4a1 1 0 0 0 1 1h4",key:"svg-2"}],["path",{d:"M5 11v-6a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-9.5",key:"svg-3"}]],dm=wt("outline","file-symlink","FileSymlink",HHe),UHe=[["path",{d:"M13 3l0 7l6 0l-8 11l0 -7l-6 0l8 -11",key:"svg-0"}]],WHe=wt("outline","bolt","Bolt",UHe),GHe=qn({position:"absolute",zIndex:1,justifyContent:"center",alignItems:"center",_smallZoom:{display:"none"}}),YHe=qn({gap:"1.5",justifyContent:"center",alignItems:"center"});function C2({selected:e=!1,data:{hovered:r=!1},buttons:n}){const o=oi();return n.length?y.jsx(hr,{className:GHe,style:{top:"calc(100% - 30px)",transform:"translateX(-50%)",left:"50%",width:"auto",minHeight:30},children:y.jsx(Rr,{layoutRoot:!0,initial:!1,style:{originY:0},animate:{opacity:r||e?1:.75,scale:r?1.1:e?.9:.8,y:r||e?6:0},layoutDependency:`${r}-${e}`,"data-likec4-hovered":r,className:Ge("nodrag nopan",YHe),children:n.map((a,i)=>y.jsx(lr,{component:wi,className:i2({}),initial:!1,whileTap:{scale:1},whileHover:{scale:1.3},onClick:a.onClick,onDoubleClick:nn,children:a.icon||y.jsx(WHe,{})},`${o}-${a.key??i}`))})}):null}const XHe=e=>e.context.subject,ZHe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),a=E2(),i=n0(),l=v2(XHe),{navigateTo:s,fqn:c}=e.data,d=S.useMemo(()=>{const u=[];return s&&r&&a!==s&&u.push({key:"navigate",icon:y.jsx(bi,{}),onClick:p=>{p.stopPropagation(),o.navigateTo(s)}}),c!==l&&u.push({key:"relationships",icon:y.jsx(s0,{}),onClick:p=>{p.stopPropagation(),i.navigateTo(c,e.id)}}),n&&u.push({key:"goToSource",icon:y.jsx(dm,{}),onClick:p=>{p.stopPropagation(),o.openSource({element:c})}}),u},[s,r,a,c,l,n,o,i,e.id]);return y.jsx(C2,{buttons:d,...e})};function c0({nodeProps:{data:{hovered:e=!1,dimmed:r=!1,...n}},className:o,children:a,style:i,...l}){let s=ti(n.style.opacity??100,{min:0,max:100});const c=s<99,d=65,u=d+ti((100-d)*(s/100),{min:0,max:100-d}),p=sVe({isTransparent:c,inverseColor:s<60,borderStyle:n.style.border??(c?"dashed":"none")}),f=ti(n.depth??1,{min:1,max:5});return y.jsx(Rr,{className:Ge(p,o),initial:!1,"data-likec4-hovered":e,"data-likec4-color":n.color,"data-compound-depth":f,...r!==!1&&{"data-likec4-dimmed":r},style:{...i,"--_border-transparency":`${u}%`,"--_compound-transparency":`${s}%`},...l,children:a})}function d0({data:e}){const r=bx({element:e,className:"likec4-compound-icon"});return y.jsxs("div",{className:"likec4-compound-title-container",children:[r,y.jsx(at,{component:"h3",className:"likec4-compound-title",truncate:"end",children:e.title})]})}const jJ=T1({base:{transitionDuration:"normal"},variants:{delay:{true:{transitionDelay:{base:"0.2s",_hover:"0s"}}}}}),KHe=[["path",{d:"M3 4m0 3a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v10a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3z",key:"svg-0"}],["path",{d:"M9 10m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M15 8l2 0",key:"svg-2"}],["path",{d:"M15 12l2 0",key:"svg-3"}],["path",{d:"M7 16l10 0",key:"svg-4"}]],nR=wt("outline","id","Id",KHe);function AJ({data:{hovered:e=!1},icon:r,onClick:n}){const o=g9(e,e?130:0)[0]&&e;return y.jsx(Rr,{initial:!1,animate:{scale:o?1.2:1},whileHover:{scale:1.4},whileTap:{scale:1},className:"likec4-compound-details details-button",children:y.jsx(lr,{className:Ge("nodrag nopan",jJ({delay:e&&!o}),i2({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(nR,{stroke:1.8,style:{width:"75%"}})})})}const QHe=fe({position:"relative",width:"full",height:"full",padding:"0",margin:"0",display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",_focusVisible:{outline:"none"},_whenSelectable:{pointerEvents:"all",_before:{content:'" "',position:"absolute",top:"[calc(100% - 4px)]",left:"0",width:"full",height:"24px",background:"transparent",pointerEvents:"all"}},_reduceGraphicsOnPan:{_before:{display:"none"}},":where(.react-flow__node.selectable:not(.dragging)) &":{cursor:"pointer"}}),um=S.forwardRef(({nodeProps:{selected:e=!1,selectable:r=!1,data:{hovered:n=!1,dimmed:o=!1,...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}=$b(a.style??{});return y.jsx(Rr,{ref:d,className:Ge(QHe,"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})});um.displayName="ElementNodeContainer";function DJ(e,r,n=.065){const o=Math.round(e/2),a=o,i=Md(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 @@ -142,11 +142,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 zp={width:115,height:120,path:"M57.9197 0C10.9124 0 33.5766 54.75 33.5766 54.75C38.6131 62.25 45.3285 60.75 45.3285 66C45.3285 70.5 39.4526 72 33.5766 72.75C24.3431 72.75 15.9489 71.25 7.55474 84.75C2.51825 93 0 120 0 120H115C115 120 112.482 93 108.285 84.75C99.8905 70.5 91.4963 72.75 82.2628 72C76.3869 71.25 70.5109 69.75 70.5109 65.25C70.5109 60.75 77.2263 62.25 82.2628 54C82.2628 54.75 104.927 0 57.9197 0V0Z"};function NJ({shape:e,w:r,h:n}){switch(e){case"mobile":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,"data-likec4-fill":"mix-stroke",strokeWidth:0}),y.jsxs("g",{"data-likec4-fill":"fill",strokeWidth:0,children:[y.jsx("circle",{cx:17,cy:n/2,r:12}),y.jsx("rect",{x:33,y:12,width:r-44,height:n-24,rx:5})]})]});case"browser":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,"data-likec4-fill":"mix-stroke",strokeWidth:0}),y.jsxs("g",{"data-likec4-fill":"fill",strokeWidth:0,children:[y.jsx("circle",{cx:16,cy:17,r:7}),y.jsx("circle",{cx:36,cy:17,r:7}),y.jsx("circle",{cx:56,cy:17,r:7}),y.jsx("rect",{x:70,y:8,width:r-80,height:17,rx:4}),y.jsx("rect",{x:10,y:32,width:r-20,height:n-42,rx:4})]})]});case"person":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,strokeWidth:0}),y.jsx("svg",{x:r-zp.width-6,y:n-zp.height,width:zp.width,height:zp.height,viewBox:`0 0 ${zp.width} ${zp.height}`,"data-likec4-fill":"mix-stroke",children:y.jsx("path",{strokeWidth:0,d:zp.path})})]});case"queue":{const{path:o,rx:a,ry:i}=MJ(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}=DJ(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 Qo(e)}}function JHe({shape:e,w:r,h:n}){let o;switch(e){case"queue":o=y.jsx("path",{d:MJ(r,n).path});break;case"storage":case"cylinder":{o=y.jsx("path",{d:DJ(r,n).path});break}default:{o=y.jsx("rect",{x:-3,y:-3,width:r+6,height:n+6,rx:8});break}}return y.jsx("g",{className:"likec4-shape-outline",children:o})}function eUe({multiple:e,withOutLine:r}){return y.jsxs("div",{className:GK({shapetype:"html"}),children:[e&&y.jsx("div",{className:"likec4-shape-multiple"}),r&&y.jsx("div",{className:"likec4-shape-outline"})]})}function pm({data:e,width:r,height:n,showSeletionOutline:o=!0}){let 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(eUe,{multiple:l,withOutLine:o});const s=GK({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(NJ,{shape:e.shape,w:a,h:i})}),y.jsxs("svg",{className:s,viewBox:`0 0 ${a} ${i}`,children:[o&&y.jsx(JHe,{shape:e.shape,w:a,h:i}),y.jsx(NJ,{shape:e.shape,w:a,h:i})]})]})}const Rp=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(bVe({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})});Rp.displayName="Markdown";const PJ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,ref:n,className:Ge(e,yVe(),"likec4-element")})),BJ=({data:e,...r})=>y.jsx(bx,{element:e,...r}),IJ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,className:Ge(e,"likec4-element-node-content"),ref:n})),OJ=S.forwardRef(({data:{title:e,style:r},className:n,...o},a)=>{const{size:i}=$b(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})}),LJ=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}),FJ=S.forwardRef(({data:{description:e,style:r},className:n,...o},a)=>{if(!e)return null;const i=ur.from(e),{size:l}=$b(r);return y.jsx(Rp,{...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 dl({iconSize:e,data:r}){return y.jsxs(PJ,{style:Iq(e)?{"--likec4-icon-size":`${e}px`}:void 0,children:[y.jsx(BJ,{data:r}),y.jsxs(IJ,{children:[y.jsx(OJ,{data:r}),y.jsx(LJ,{data:r}),y.jsx(FJ,{data:r})]})]})}dl.Root=PJ,dl.Icon=BJ,dl.Content=IJ,dl.Title=OJ,dl.Technology=LJ,dl.Description=FJ;const tUe=fe({position:"absolute",top:"0.5",right:"0.5",_shapeBrowser:{right:"[5px]"},_shapeCylinder:{top:"[14px]"},_shapeStorage:{top:"[14px]"},_shapeQueue:{top:"[1px]",right:"3"},_smallZoom:{display:"none"},_print:{display:"none"}});function oz({selected:e=!1,data:{hovered:r=!1},icon:n,onClick:o}){return y.jsx(hr,{className:Ge(tUe,"details-button"),children:y.jsx(lr,{className:Ge("nodrag nopan",i2({variant:"transparent"})),component:wi,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(nz,{stroke:1.8,style:{width:"75%"}})})})}const rUe=e=>{const r=Nt();return y.jsx(oz,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})};function nUe(e){const{enableElementTags:r}=sr();return y.jsxs(um,{layoutId:e.id,nodeProps:e,children:[y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(rUe,{...e}),y.jsx(ZHe,{...e}),y.jsx(aUe,{...e})]},e.id)}function oUe(e){const r=Nt();return y.jsxs(c0,{layoutId:e.id,nodeProps:e,children:[y.jsx(d0,{...e}),y.jsx(AJ,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}}),y.jsx(iUe,{...e})]},e.id)}const aUe=({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))]}),iUe=({data:e})=>y.jsxs(y.Fragment,{children:[e.ports.in.map((r,n)=>y.jsx(Oo,{id:r,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r)),e.ports.out.map((r,n)=>y.jsx(Oo,{id:r,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r))]}),lUe=[["path",{d:"M15 6l-6 6l6 6",key:"svg-0"}]],VJ=wt("outline","chevron-left","ChevronLeft",lUe),sUe={element:nUe,compound:oUe,empty:OHe},cUe={relationship:BHe};function qJ({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={initialNodes:[],initialEdges:[]}),y.jsx(xQ.Provider,{value:e,children:y.jsx(lw,{...r.current,children:y.jsx(lm,{id:e.sessionId,inherit:!1,children:y.jsx(Cn,{children:y.jsx(pUe,{})})})})})}const dUe=e=>({isActive:e.hasTag("active"),nodes:e.context.xynodes,edges:e.context.xyedges}),uUe=(e,r)=>e.isActive===r.isActive&&Ir(e.nodes,r.nodes)&&Ir(e.edges,r.edges),pUe=S.memo(()=>{const e=n0(),{isActive:r,nodes:n,edges:o}=v2(dUe,uUe);return y.jsx(s$,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","relationships-browser"),nodeTypes:sUe,edgeTypes:cUe,fitView:!1,onNodeClick: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(fUe,{})})}),hUe=e=>({subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,closeable:e.context.closeable}),fUe=S.memo(()=>{const e=n0(),{subjectId:r,viewId:n,scope:o,closeable:a}=v2(hUe),i=vr(),l=pf();S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:i})},[i,l.viewportInitialized,e]);const s=bHe(r,n,o),[c,d,{history:u,current:p}]=zH(r);S.useEffect(()=>{c!==r&&d.set(r)},[r]),S.useEffect(()=>{c!==r&&e.navigateTo(c)},[c,e]),_L(()=>{e.updateView(s)},[s,e]);const f=p>0,g=p+1d.back(),onStepForward:()=>d.forward()}),a&&y.jsx(sd,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:v=>{v.stopPropagation(),e.close()},children:y.jsx(fp,{})})})]})}),mUe=({hasStepBack:e,hasStepForward:r,onStepBack:n,onStepForward:o})=>y.jsx(sd,{position:"top-left",children:y.jsxs(en,{gap:4,wrap:"nowrap",children:[y.jsxs(Cn,{mode:"popLayout",children:[e&&y.jsx(mi.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(VJ,{})})},"back"),r&&y.jsx(mi.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(Dd,{})})},"forward")]}),y.jsx($He,{})]})}),gUe=fe({display:"inline-block",fontSize:"sm",fontWeight:500,whiteSpace:"nowrap",padding:"[3px 6px]",borderRadius:3,background:"var(--likec4-palette-fill)/75",lineHeight:1.2,color:"var(--likec4-palette-hiContrast)"}),yUe=fe({_light:{background:"mantine.colors.gray[1]","&[data-missing":{}},"&[data-missing]":{color:"mantine.colors.orange[4]",background:"mantine.colors.orange[8]/15",borderColor:"mantine.colors.orange[5]/20",_light:{color:"mantine.colors.orange[8]"}}}),vUe=fe({flex:"1 1 100%",position:"relative",width:"100%",height:"100%",background:"mantine.colors.body",border:"1px solid {colors.mantine.colors.defaultBorder}",borderRadius:"sm",_light:{borderColor:"mantine.colors.gray[3]",background:"mantine.colors.gray[1]"}});fe({_before:{content:'"scope:"',position:"absolute",top:"0",left:"2",fontSize:"xxs",fontWeight:500,lineHeight:"1",color:"mantine.colors.dimmed",opacity:.85,transform:"translateY(-100%) translateY(-2px)"},_light:{"& .mantine-SegmentedControl-root":{background:"mantine.colors.gray[3]"}}}),fe({display:"inline-block",fontSize:"xl",fontWeight:600,padding:"[1px 5px]",minWidth:24,textAlign:"center",borderRadius:"sm",background:"mantine.colors.dark[7]",color:"mantine.colors.defaultColor","&[data-zero]":{color:"mantine.colors.dimmed"},"&[data-missing]":{color:"mantine.colors.orange[4]",background:"mantine.colors.orange[8]/20"}});const bUe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M13 18l6 -6",key:"svg-1"}],["path",{d:"M13 6l6 6",key:"svg-2"}]],hm=wt("outline","arrow-right","ArrowRight",bUe),xUe=[["path",{d:"M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6",key:"svg-0"}],["path",{d:"M11 13l9 -9",key:"svg-1"}],["path",{d:"M15 4h5v5",key:"svg-2"}]],HJ=wt("outline","external-link","ExternalLink",xUe),wUe=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1});function kUe({node:e,element:r}){const n=Nt(),o=lVe(),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?yw([...e.incoming()].flatMap(u=>u.$edge.relations)):[],c=e?yw([...e.outgoing()].flatMap(u=>u.$edge.relations)):[],d=[...i,...l].filter(u=>!s.includes(u)&&!c.includes(u)).length;return y.jsxs(Lo,{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(UJ,{title:"incoming",total:i.length,included:s.length}),y.jsx(Ta,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(hm,{style:{width:16}})}),y.jsx(at,{className:gUe,children:Jg(r.id)}),y.jsx(Ta,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(hm,{style:{width:16}})}),y.jsx(UJ,{title:"outgoing",total:l.length,included:c.length})]})}),d>0&&y.jsx(wUe,{label:"Current view does not include some relationships",children:y.jsxs(en,{mt:"xs",gap:6,c:"orange",style:{cursor:"pointer"},children:[y.jsx(r0,{style:{width:14}}),y.jsxs(at,{fz:"sm",children:[d," relationship",d>1?"s are":" is"," hidden"]})]})})]}),y.jsx(Se,{className:vUe,children:a&&y.jsxs(y.Fragment,{children:[y.jsx(qJ,{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(HJ,{stroke:1.6,style:{width:"70%"}})})})]})})]})}function UJ({title:e,total:r,included:n}){return y.jsx(Af,{withBorder:!0,shadow:"none",className:yUe,px:"md",py:"xs",radius:"md",mod:{zero:r===0,missing:r!==n},children:y.jsxs(Lo,{gap:4,align:"flex-end",children:[y.jsx(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 _Ue=fe({marginTop:"sm",marginBottom:"sm"}),SUe=fe({display:"inline-flex",transition:"fast",border:"1px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"sm",px:"md",py:"xs",alignItems:"center",cursor:"pointer",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.dark[1]"},"& > *":{transition:"fast"},_hover:{transitionTimingFunction:"out",borderStyle:"solid",color:"mantine.colors.defaultColor",background:"mantine.colors.defaultHover","& > *":{transitionTimingFunction:"out",transform:"translateX(1px)"}}}),az=({element:e})=>y.jsx(Se,{className:SUe,children:y.jsx(at,{component:"div",fz:"sm",fw:"500",children:e.title})}),EUe=()=>{};function CUe({element:e}){const r=_y({multiple:!1});r.setHoveredNode=EUe;const n=S.useMemo(()=>{let o=1;const a=l=>({label:l,value:`msg${o++}`,type:"message",children:[]}),i={label:y.jsx(az,{type:"current",element:e}),value:e.id,element:e,type:"current",children:[...e.children()].map(l=>({label:y.jsx(az,{type:"descedant",element:l}),value:l.id,element:l,type:"descedant",children:[]}))};return i.children.length===0&&i.children.push(a(y.jsx(_3,{radius:"sm",children:"no nested"}))),[[...e.ancestors()].reduce((l,s)=>({label:y.jsx(az,{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(f3,{variant:"light",color:"orange",title:"In development",icon:y.jsx(r0,{}),children:["We need your feedback. Share your thoughts and ideas -"," ",y.jsx(mS,{fz:"sm",fw:500,underline:"hover",c:"orange",href:"https://github.com/likec4/likec4/discussions/",target:"_blank",children:"GitHub discussions"})]}),y.jsx(Ff,{levelOffset:"xl",allowRangeSelection:!1,expandOnClick:!1,expandOnSpace:!1,classNames:{label:_Ue},data:n,tree:r})]})}const $Ue=[["path",{d:"M12 4l-8 4l8 4l8 -4l-8 -4",key:"svg-0"}],["path",{d:"M4 12l8 4l8 -4",key:"svg-1"}],["path",{d:"M4 16l8 4l8 -4",key:"svg-2"}]],iz=wt("outline","stack-2","Stack2",$Ue),WJ=sp.withProps({mb:8,labelPosition:"left",variant:"dashed"}),GJ=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4}),YJ=at.withProps({component:"div",fz:11,fw:500,c:"dimmed",lh:1}),u0=at.withProps({component:"div",fz:"xs",c:"dimmed",className:aqe}),fm=24,zUe=["Properties","Relationships","Views","Structure","Deployments"];function RUe({viewId:e,fromNode:r,rectFromNode:n,fqn:o,onClose:a}){const[i,l]=S.useState(!1),s=fRe(),c=s.width||window.innerWidth||1200,d=s.height||window.innerHeight||800,[u,p]=cRe({key:"likec4:element-details:active-tab",defaultValue:"Properties"}),f=Nt(),g=WVe(),v=r?g.findNode(r):g.findNodeWithElement(o),w=g.$model.element(o),[x,k]=Jr([...w.views()],un(Z=>Z.$view),qq(Z=>Z._type==="element"&&Z.viewOf===o));let C=v?.navigateTo?.$view??w.defaultView?.$view??null;C?.id===e&&(C=null);const _=fw(w.links),$=iVe(),z=(v?.$node.children?.length??0)>0,T=Math.min(700,c-fm*2),A=Math.min(650,d-fm*2),R=n?{x:n.x+(z?n.width-T/2:n.width/2),y:n.y+(z?0:n.height/2)}:{x:c/2,y:d/2},j=n?Math.min(n.width/T,n.height/A,.9):1,I=Math.round(ti(R.x-T/2,{min:fm,max:c-T-fm})),P=Math.round(ti(R.y-(z?0:60),{min:fm,max:d-A-fm})),L=ti((R.x-I)/T,{min:.1,max:.9}),H=ti((R.y-P)/A,{min:.1,max:.9}),M=jK(T),V=jK(A);$p(()=>{M.set(T),V.set(A)},[T,A]);const B=S.useCallback((Z,O)=>{M.set(Math.max(M.get()+O.delta.x,320)),V.set(Math.max(V.get()+O.delta.y,300))},[]),F=S.useRef(null),q=Kh(a),G=h7(()=>{q.current()},[],50),U=v?.$node.notation??null,Y=bx({element:{id:o,title:w.title,icon:v?.icon??w.icon},className:KVe});return wx(()=>{F.current?.open||F.current?.showModal()},20),wx(()=>{l(!0)},220),y.jsx(mi.dialog,{ref:F,className:Ge(GVe,ny.classNames.fullWidth),layout:!0,initial:{[p2]:"0px",[h2]:"5%"},animate:{[p2]:"3px",[h2]:"60%"},exit:{[p2]:"0px",[h2]:"0%",transition:{duration:.1}},onClick:Z=>{Z.stopPropagation(),Z.target?.nodeName?.toUpperCase()==="DIALOG"&&F.current?.close()},onDoubleClick:nn,onPointerDown:nn,onClose:Z=>{Z.stopPropagation(),G()},children:y.jsx(ny,{forwardProps:!0,removeScrollBar:!1,children:y.jsxs(mi.div,{layout:!0,layoutRoot:!0,drag:!0,dragControls:$,dragElastic:0,dragMomentum:!1,dragListener:!1,"data-likec4-color":v?.color??w.color,className:YVe,initial:{top:P,left:I,width:T,height:A,opacity:0,originX:L,originY:H,scale:Math.max(j,.65)},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9,translateY:-10,transition:{duration:.1}},style:{width:M,height:V},children:[y.jsxs("div",{className:XVe,onPointerDown:Z=>$.start(Z),children:[y.jsxs(Or,{alignItems:"start",justify:"space-between",gap:"sm",mb:"sm",flexWrap:"nowrap",children:[y.jsxs(Or,{alignItems:"start",gap:"sm",style:{cursor:"default"},flexWrap:"nowrap",children:[Y,y.jsxs("div",{children:[y.jsx(at,{component:"div",className:ZVe,children:w.title}),U&&y.jsx(at,{component:"div",c:"dimmed",fz:"sm",fw:500,lh:1.3,lineClamp:1,children:U})]})]}),y.jsx(lp,{size:"lg",onClick:Z=>{Z.stopPropagation(),G()}})]}),y.jsxs(Or,{alignItems:"baseline",gap:"sm",flexWrap:"nowrap",children:[y.jsxs("div",{children:[y.jsx(YJ,{children:"kind"}),y.jsx(ec,{radius:"sm",size:"sm",fw:600,color:"gray",style:{cursor:"pointer"},onClick:Z=>{Z.stopPropagation(),f.openSearch(`kind:${w.kind}`)},children:w.kind})]}),y.jsxs("div",{style:{flex:1},children:[y.jsx(YJ,{children:"tags"}),y.jsxs(Js,{gap:4,flex:1,mt:6,wrap:"wrap",children:[w.tags.map(Z=>y.jsx(u2,{tag:Z,cursor:"pointer",onClick:O=>{O.stopPropagation(),f.openSearch(`#${Z}`)}},Z)),w.tags.length===0&&y.jsx(ec,{radius:"sm",size:"sm",fw:600,color:"gray",children:"—"})]})]}),y.jsxs(s3,{style:{alignSelf:"flex-start"},children:[_&&y.jsx(lr,{component:"a",href:_.url,target:"_blank",size:"lg",variant:"default",radius:"sm",children:y.jsx(HJ,{stroke:1.6,style:{width:"65%"}})}),y.jsx(LNe,{feature:"Vscode",children:y.jsx(GJ,{label:"Open source",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:Z=>{Z.stopPropagation(),f.openSource({element:w.id})},children:y.jsx(dm,{stroke:1.8,style:{width:"62%"}})})})}),C&&y.jsx(GJ,{label:"Open default view",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:Z=>{Z.stopPropagation(),f.navigateTo(C.id,r??void 0)},children:y.jsx(bi,{style:{width:"70%"}})})})]})]})]}),y.jsx(pQ,{children:y.jsxs(up,{value:u,onChange:Z=>p(Z),variant:"none",classNames:{root:eqe,list:tqe,tab:rqe,panel:nqe},children:[y.jsx(ky,{children:zUe.map(Z=>y.jsx(Lf,{value:Z,children:Z},Z))}),y.jsx(rc,{value:"Properties",children:y.jsx(es,{scrollbars:"y",type:"scroll",offsetScrollbars:!0,children:y.jsxs(Se,{className:oqe,pt:"xs",children:[w.hasSummary&&y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"summary"}),y.jsx(Rp,{value:w.summary})]}),y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"description"}),y.jsx(Rp,{value:w.description,emptyText:"no description"})]}),w.technology&&y.jsx(TUe,{title:"technology",children:w.technology}),w.links.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"links"}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:w.links.map((Z,O)=>y.jsx(o$,{value:Z},O))})]}),w.$element.metadata&&y.jsx(jUe,{value:w.$element.metadata})]})})}),y.jsx(rc,{value:"Relationships",children:y.jsx(mp,{overrides:{enableRelationshipBrowser:!1,enableNavigateTo:!1},children:i&&u==="Relationships"&&y.jsx(kUe,{element:w,node:v??null})})}),y.jsx(rc,{value:"Views",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsxs(Lo,{gap:"lg",children:[x.length>0&&y.jsxs(Se,{children:[y.jsx(WJ,{label:"views of the element (scoped)"}),y.jsx(Lo,{gap:"sm",children:x.map(Z=>y.jsx(XJ,{view:Z,onNavigateTo:O=>f.navigateTo(O,r??void 0)},Z.id))})]}),k.length>0&&y.jsxs(Se,{children:[y.jsx(WJ,{label:"views including this element"}),y.jsx(Lo,{gap:"sm",children:k.map(Z=>y.jsx(XJ,{view:Z,onNavigateTo:O=>f.navigateTo(O,r??void 0)},Z.id))})]})]})})}),y.jsx(rc,{value:"Structure",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsx(CUe,{element:w})})}),y.jsx(rc,{value:"Deployments",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsx(kqe,{elementFqn:w.id})})})]})}),y.jsx(mi.div,{className:iqe,drag:!0,dragElastic:0,dragMomentum:!1,onDrag:B,dragConstraints:{top:0,left:0,right:0,bottom:0}})]})})})}const XJ=({view:e,onNavigateTo:r})=>y.jsx(pr,{className:QVe,onClick:n=>r(e.id,n),children:y.jsxs(en,{gap:6,align:"start",wrap:"nowrap",children:[y.jsx(Ta,{size:"sm",variant:"transparent",children:e._type==="deployment"?y.jsx(iz,{stroke:1.8}):y.jsx(bi,{stroke:1.8})}),y.jsx(Se,{children:y.jsx(at,{component:"div",className:JVe,lineClamp:1,children:e.title||"untitled"})})]})});function TUe({title:e,emptyValue:r="undefined",children:n,style:o,...a}){return y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:e}),y.jsx(at,{component:"div",...ty(n)&&{c:"dimmed"},fz:"md",style:{whiteSpace:"preserve-breaks",userSelect:"all",...o},...a,children:n||r})]})}function jUe({value:e}){const r=uw(e).sort(([n],[o])=>n.localeCompare(o));return y.jsx(pQ,{children:y.jsxs(y.Fragment,{children:[y.jsx(u0,{style:{justifySelf:"end",textAlign:"right"},children:"metadata"}),y.jsx(Se,{className:fe({display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content",gap:"[12px 16px]",alignItems:"baseline",justifyItems:"stretch"}),children:r.map(([n,o])=>y.jsx(dqe,{label:n,value:o},n))})]})})}const AUe=e=>({viewId:e.context.currentView.id,fromNode:e.context.initiatedFrom.node,rectFromNode:e.context.initiatedFrom.clientRect,fqn:e.context.subject});function DUe({actorRef:e,onClose:r}){const n=pn(e,AUe,Ir);return y.jsx(FC.Provider,{value:e,children:y.jsx(RUe,{onClose:r,...n})})}const $2="--_blur",z2="--_opacity",MUe="--_level",p0=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=bH(p),v=S.useRef(null),w=S.useRef(!1),x=AK()!==!0,k=S.useRef(e);k.current=e;const C=h7(()=>{w.current||(w.current=!0,k.current())},[],50);S.useLayoutEffect(()=>{v.current?.open||v.current?.showModal()},[]),wx(()=>{f(!0)},c>0?c:void 0);const _=xVe({fullscreen:i,withBackdrop:l});let $=o>0?"50%":"60%";return s?.opacity!==void 0&&($=`${s.opacity*100}%`),y.jsx(mi.dialog,{ref:$r(v,g,u),className:Ge(n?.dialog,r,_,i&&ny.classNames.fullWidth),layout:!0,style:{[MUe]:o},...x?{initial:{[$2]:"0px",[z2]:"0%",scale:.85,opacity:0},animate:{[$2]:o>0?"4px":"8px",[z2]:$,scale:1,opacity:1,translateY:0},exit:{opacity:0,scale:.98,translateY:-20,[$2]:"0px",[z2]:"0%"}}:{initial:{[$2]:"8px",[z2]:$}},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(ny,{forwardProps:!0,children:y.jsx("div",{className:Ge(n?.body,"likec4-overlay-body"),children:p&&y.jsx(y.Fragment,{children:a})})})})});p0.displayName="Overlay";const R2=(e,r)=>e.size>2&&r.size!==e.size?new Set(Jc([...hx(e).flatten(),...r])):e.size>1?new Set(Jc([...e])):e;function NUe(e,r){const n=new Set,o=new Set,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:R2(n,i.sources),targets:R2(a,i.targets),relationships:o}}function PUe({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]=Vke.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:R2(n,i.sources),targets:R2(a,i.targets),relationships:o}}const ZJ=S.createContext(null);function lz(){return mt(S.useContext(ZJ),"No RelationshipDetailsActorContext")}function KJ(e,r=Ir){const n=it(e),o=lz();return pn(o,n,r)}function sz(){const e=lz();return S.useMemo(()=>({actor:e,get rootElementId(){return`relationship-details-${e.sessionId.replaceAll(":","_")}`},getState:()=>e.getSnapshot().context,send:e.send,navigateTo:(...r)=>{r.length===1?e.send({type:"navigate.to",params:{edgeId:r[0]}}):e.send({type:"navigate.to",params:{source:r[0],target:r[1]}})},fitDiagram:()=>{e.send({type:"fitDiagram"})},close:()=>{e._parent?e._parent?.send({type:"close",actorId:e.id}):e.send({type:"close"})}}),[e])}const ul={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:220,height:14},nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function BUe(){const e=new x2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...ul.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...ul.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const cz="-port";function QJ(e,r,n){const o=new Ln(i=>({id:`${e}-${i}`,portId:`${e}-${i}`})),a=hx(r);for(const i of a.sorted){const l=a.children(i).length>0,s=i.id,c=`${e}-${s}`,d=l?`${c}${cz}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:i,isCompound:l,portId:d,inPorts:[],outPorts:[],width:ul.nodeWidth,height:ul.nodeHeight}),l&&(n.setNode(d,{element:i,portId:d,isCompound:l,inPorts:[],outPorts:[],width:ul.nodeWidth-ul.dagre.ranksep,height:ul.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 IUe(e){return x2.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 OUe(e,r){const n=BUe(),o=QJ("sources",e.sources,n),a=QJ("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,{...ul.edgeLabel},$),{name:$,source:C.id,sourceHandle:C.id+"_out"+(n.node(C.id).outPorts.length-1),target:_.id,targetHandle:_.id+"_in"+(n.node(_.id).inPorts.length-1),relationship:k}}),l=[...o.graphNodes.values(),...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,{...ul.edgeLabel,width:s>10?800:400});const c=IUe(n),d=Jr(l,ep(k=>k.id===k.portId),hw(k=>[k.id,c(k.id)]));function u(k){return d[k]??=Jr(n.children(k)??[],ep(C=>!C.endsWith(cz)),un(C=>u(C)),Wq(C=>{He(C.length>0,`Node ${k} has no nested nodes`)}),mw((C,_)=>({minY:Math.min(C.minY,_.position.y),maxY:Math.max(C.maxY,_.position.y+_.height)}),{minY:1/0,maxY:-1/0}),({minY:C,maxY:_})=>{const{position:{x:$},width:z}=c(k);return C=C-ul.compound.paddingTop,_=_+ul.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})),gw(rp("topY")),un(rp("port")));let v=0,w=0;const x=l.map(({id:k})=>{const{element:C,inPorts:_,outPorts:$,column:z}=n.node(k);let{position:T,width:A,height:R}=u(k);const j=n.parent(k),I=(n.children(k)??[]).filter(V=>!V.endsWith(cz));v=Math.min(v,T.x),w=Math.min(w,T.y);const P=r?E1(C.scopedViews(),V=>V.id!==r.id)?.id??null:null,L=r?.findNodeWithElement(C.id),H=r&&!L?E1(C.ancestors(),V=>!!r.findNodeWithElement(V.id))?.id:null,M=L??(H&&r?.findNodeWithElement(H));return _1({id:k,parent:j??null,x:T.x,y:T.y,title:C.title,description:Fs(C.$element)??null,technology:C.technology,tags:[...C.tags],links:null,color:M?.color??C.color,shape:L?.shape??C.shape,icon:L?.icon??C.icon??"none",modelRef:C.id,kind:C.kind,level:p(k),labelBBox:{x:T.x,y:T.y,width:A,height:R},style:ud({...(L??M)?.style,...C.$element.style},["shape","color","icon"]),navigateTo:P,...I.length>0&&{depth:f(k)},children:I,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:T,target:A,relationship:R,sourceHandle:j,targetHandle:I}=Q1(i,V=>V.name===$),P=R.title??"untitled",L=R.navigateTo?.id??null,H=Fs(R.$relationship)??null,M=R.technology??null;return k.push({id:z,source:T,sourceHandle:j,target:A,targetHandle:I,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 dz=fe.raw({display:"inline-flex",alignItems:"center",padding:"[6px 2px 0 2px]","& .mantine-Text-root":{color:"mantine.colors.text/90",fontSize:"xs",fontWeight:500,lineHeight:"1.2"}}),JJ=fe({paddingLeft:"1",gridColumn:1},dz),LUe=fe({gridColumn:2},dz),eee=fe({gridColumn:3,paddingRight:"1"},dz),tee="likec4-edge-label",FUe=Ge(tee,fe({display:"grid",gridColumnStart:1,gridColumnEnd:4,borderBottom:"1px solid",borderBottomColor:"mantine.colors.defaultBorder",marginBottom:"0",padding:"[0 4px 5px 4px]",width:"100%","& .mantine-Text-root":{fontSize:"xxs",fontWeight:400,lineHeight:"xs",color:"mantine.colors.dimmed"}})),VUe=fe({display:"contents",[`&:last-child .${tee}`]:{borderBottom:"none",marginBottom:"0"},"& > *":{transition:"all 0.15s ease-in"},"&:is(:hover, [data-selected=true]) > *":{transition:"all 0.15s ease-out",cursor:"pointer",backgroundColor:"mantine.colors.defaultHover"}}),qUe=fe({display:"grid",gridTemplateColumns:"1fr 30px 1fr",gridAutoRows:"min-content max-content",gap:"0",alignItems:"stretch"});fe({display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content max-content",gap:"[10px 12px]",alignItems:"baseline",justifyItems:"start"});const HUe=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),UUe=({edge:e,view:r})=>{const n=sz(),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(kd,{children:y.jsxs(Vn,{size:"xs",variant:"default",fw:"500",style:{padding:"0.25rem 0.75rem"},rightSection:y.jsx(tz,{size:16}),children:[y.jsx(Se,{className:JJ,maw:160,p:0,mod:{"likec4-color":a.color},children:y.jsx(at,{component:"span",truncate:!0,children:a.title})}),y.jsx(Ta,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(hm,{style:{width:"80%"}})}),y.jsx(Se,{className:eee,maw:160,p:0,mod:{"likec4-color":i.color},children:y.jsx(at,{component:"span",truncate:!0,children:i.title})})]})}),y.jsx(Qs,{p:0,miw:250,maw:400,children:y.jsx(oa,{className:HUe,scrollbars:"y",type:"never",viewportRef:o,children:y.jsx(Se,{className:qUe,p:"xs",maw:400,children:l.map(s=>y.jsxs("div",{className:VUe,"data-selected":s.id===e.id,onClick:c=>{c.stopPropagation(),n.navigateTo(s.id)},children:[y.jsx(Se,{className:JJ,mod:{"edge-id":s.id,"likec4-color":s.source.color},children:y.jsx(at,{component:"span",truncate:!0,children:s.source.title})}),y.jsx(Se,{className:LUe,children:y.jsx(Ta,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(hm,{style:{width:"80%"}})})}),y.jsx(Se,{className:eee,mod:{"likec4-color":s.target.color},children:y.jsx(at,{component:"span",truncate:!0,children:s.target.title})}),y.jsx(Se,{className:FUe,children:y.jsx(at,{component:"span",truncate:!0,children:s.label||"untitled"})})]},s.id))})})})]})},WUe=rz(e=>{const{enableNavigateTo:r}=sr(),{data:{navigateTo:n}}=e,[o,a,i]=Zx(e),l=Nt();return y.jsxs(i0,{...e,children:[y.jsx(l0,{edgeProps:e,svgPath:o}),y.jsx(S2,{edgeProps:e,labelPosition:{x:a,y:i,translate:"translate(-50%, 0)"},style:{maxWidth:Math.abs(e.targetX-e.sourceX-100)},children:y.jsx(a0,{edgeProps:e,children:r&&n&&y.jsx(_2,{...e,onClick:s=>{s.stopPropagation(),l.navigateTo(n)}})})})]})}),GUe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),a=E2(),i=[],{navigateTo:l,fqn:s}=e.data;return l&&r&&a!==l&&i.push({key:"navigate",icon:y.jsx(bi,{}),onClick:c=>{c.stopPropagation(),o.navigateTo(l)}}),s&&i.push({key:"relationships",icon:y.jsx(s0,{}),onClick:c=>{c.stopPropagation(),o.openRelationshipsBrowser(s)}}),s&&n&&i.push({key:"goToSource",icon:y.jsx(dm,{}),onClick:c=>{c.stopPropagation(),o.openSource({element:s})}}),y.jsx(C2,{buttons:i,...e})};function YUe(e,r){return e.id===r.id&&tt(e.type,r.type)&&tt(e.selected??!1,r.selected??!1)&&tt(e.dragging??!1,r.dragging??!1)&&tt(e.width??0,r.width??0)&&tt(e.height??0,r.height??0)&&tt(e.zIndex??0,r.zIndex??0)&&tt(e.data,r.data)}const ree=Symbol.for("isMemoized");function sc(e,r="Node"){if(e.hasOwnProperty(ree))return e;const n=S.memo(e,YUe);return n.displayName=r,Object.defineProperty(n,ree,{enumerable:!1,writable:!1,value:!0}),n}const nee=e=>{const r=Nt();return y.jsx(oz,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})},XUe=sc(e=>{const{enableElementTags:r}=sr();return y.jsxs(um,{nodeProps:e,children:[y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(nee,{...e}),y.jsx(GUe,{...e}),y.jsx(KUe,{...e})]})}),ZUe=sc(e=>y.jsxs(c0,{nodeProps:e,children:[y.jsx(nee,{...e}),y.jsx(d0,{...e}),y.jsx(QUe,{...e})]})),KUe=({data:{ports:e,height:r}})=>y.jsxs(y.Fragment,{children:[e.in.map((n,o)=>y.jsx(Oo,{id:n,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.in.length+1))}px`}},n)),e.out.map((n,o)=>y.jsx(Oo,{id:n,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.out.length+1))}px`}},n))]}),QUe=({data:e})=>y.jsxs(y.Fragment,{children:[e.ports.in.map((r,n)=>y.jsx(Oo,{id:r,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r)),e.ports.out.map((r,n)=>y.jsx(Oo,{id:r,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r))]}),JUe={element:XUe,compound:ZUe},eWe={relationship:WUe};function tWe({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={defaultNodes:[],defaultEdges:[]}),y.jsx(ZJ.Provider,{value:e,children:y.jsx(lw,{...r.current,children:y.jsx(lm,{id:e.sessionId,inherit:!1,children:y.jsxs(Cn,{children:[y.jsx(aWe,{},"xyflow"),y.jsx(nWe,{},"sync")]})})})})}const rWe=e=>({...e.context.subject,viewId:e.context.viewId}),nWe=S.memo(()=>{const e=lz(),r=pn(e,rWe,tt),n=Fo(),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=NUe([c.id],o)}else if(r.source&&r.target)s=PUe({source:n.element(r.source),target:n.element(r.target)});else return null;return OUe(s,o)},[r,o,n]),i=vr(),l=pf();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}),oWe=({context:e})=>({initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges}),aWe=S.memo(()=>{const e=sz(),{initialized:r,nodes:n,edges:o}=KJ(oWe,tt);return y.jsxs(s$,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","likec4-relationship-details"),nodeTypes:JUe,edgeTypes:eWe,onNodesChange:Qn(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(lWe,{}),y.jsx(sd,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:a=>{a.stopPropagation(),e.close()},children:y.jsx(fp,{})})})]})}),iWe=({context:e})=>({subject:e.subject,viewId:e.viewId}),lWe=S.memo(()=>{const{subject:e,viewId:r}=KJ(iWe,tt),n=Fo().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):Q1(o,i=>i.source.element?.id===e.source&&i.target.element?.id===e.target)||Q1(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(sWe,{edge:a.$edge,view:n.$view}):null}),sWe=({edge:e,view:r})=>{const n=sz(),o=e.id,[a,i,{history:l,current:s}]=zH(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(VJ,{})})},"back"),d&&y.jsx(mi.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(Dd,{})})},"forward"),y.jsx(en,{gap:"xs",wrap:"nowrap",ml:"sm",children:y.jsx(UUe,{edge:e,view:r})})]})})})},cWe=e=>e.context.overlays.map(r=>{switch(r.type){case"relationshipsBrowser":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;case"relationshipDetails":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;case"elementDetails":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;default:Qo(r)}}).filter(Bq),dWe=(e,r)=>e.length===r.length&&e.every((n,o)=>n.actorRef===r[o].actorRef);function uWe({overlaysActorRef:e}){const r=Nt(),n=pn(e,cWe,dWe),o=AK()??!1,a=n.some(s=>s.type==="elementDetails");S.useEffect(()=>{const s=r.getContext().xystore.getState().domNode?.querySelector(".react-flow__renderer");if(!s||o)return;const c=GOe(s,{opacity: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(p0,{overlayLevel:c,onClose:()=>i(s.actorRef),children:y.jsx(qJ,{actorRef:s.actorRef})},s.actorRef.sessionId);case"relationshipDetails":return y.jsx(p0,{overlayLevel:c,onClose:()=>i(s.actorRef),children:y.jsx(tWe,{actorRef:s.actorRef})},s.actorRef.sessionId);case"elementDetails":return y.jsx(DUe,{actorRef:s.actorRef,onClose:()=>i(s.actorRef)},s.actorRef.sessionId);default:Qo(s)}});return y.jsx(mp.Overlays,{children:y.jsx(QS,{onReset:()=>e.send({type:"close.all"}),children:y.jsx(lm,{children:y.jsx(Cn,{mode:"popLayout",children:l})})})})}const[pWe,Nd]=ni("SearchActorContext"),hWe=e=>e.context.searchValue;function fWe(){const e=Nd(),r=pn(e,hWe),n=S.useCallback(o=>{e.send({type:"change.search",search:o})},[e]);return[r,n]}const mWe=e=>{const r=e.context.searchValue.trim().toLowerCase();return r.length>1?r:""};function uz(){const e=Nd();return S.useDeferredValue(pn(e,mWe))}function gWe(){const e=Nd();return S.useCallback(r=>{e.send({type:"change.search",search:r})},[e])}const yWe=e=>e.context.pickViewFor;function vWe(){const e=Nd();return pn(e,yWe)}const pz=fe.raw({outline:"none",background:"mantine.colors.primary[8]",borderColor:"mantine.colors.primary[9]"}),T2=".mantine-Tree-node:focus > .mantine-Tree-label &",bWe=fe.raw({display:"flex",width:"100%",background:"mantine.colors.body",rounded:"sm",padding:"[12px 8px 12px 14px]",minHeight:"60px",gap:"2",border:"1px solid",borderColor:"mantine.colors.defaultBorder",_hover:{...pz,borderColor:"mantine.colors.primary[9]",background:"mantine.colors.primary[8]/60"},_focus:pz,[T2]:pz,_dark:{borderColor:"transparent",background:"mantine.colors.dark[6]/80"},_light:{background:"mantine.colors.white/80",_hover:{borderColor:"mantine.colors.primary[6]",backgroundColor:"mantine.colors.primary[5]"}}}),j2="likec4-focusable",A2={ref:"var(--likec4-icon-size, 24px)"},xWe=fe.raw({color:{base:"mantine.colors.dimmed",_light:"mantine.colors.gray[5]",_groupHover:"mantine.colors.primary[0]",_groupFocus:"mantine.colors.primary[0]"},[T2]:{color:"mantine.colors.primary[0]"},flex:`0 0 ${A2.ref}`,height:A2.ref,width:A2.ref,display:"flex",alignItems:"center",justifyContent:"center",alignSelf:"flex-start","--ti-size":A2.ref,"& svg, & img":{width:"100%",height:"auto",maxHeight:"100%",pointerEvents:"none"},"& img":{objectFit:"contain"},"&.likec4-shape-icon svg":{strokeWidth:1.5}}),wWe=fe.raw({fontSize:"16px",fontWeight:500,lineHeight:"1.1",":where([data-disabled]) &":{opacity:.4},color:{base:"mantine.colors.dark[1]",_light:"mantine.colors.gray[7]",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"},_groupFocus:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}},[T2]:{color:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}}}),oee=fe.raw({color:{base:"mantine.colors.dimmed",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.primary[0]"},_groupFocus:"mantine.colors.primary[0]"},[T2]:{color:"mantine.colors.primary[0]"}}),kWe=fe.raw(oee,{marginTop:"1",fontSize:"12px",lineHeight:"1.4",":where([data-disabled]) &":{opacity:.85}}),_We=fe({width:"100%",height:"100%",border:"2px dashed",borderColor:"mantine.colors.defaultBorder",rounded:"md",display:"flex",justifyContent:"center",alignItems:"center",fontSize:"md",color:"mantine.colors.dimmed",padding:"md",paddingBlock:"xl"}),aee=A5e({slots:["root","icon","title","description","descriptionColor"],className:"search-button",base:{root:bWe,icon:xWe,title:wWe,description:kWe,descriptionColor:oee}}),hz="@container likec4-tree (max-width: 450px)",SWe=fe({outline:"none",marginBottom:"2"}),EWe=fe(LG.raw({containerName:"likec4-tree"}),{containerType:"inline-size",height:"100%"}),CWe=fe({display:"flex",alignItems:"baseline",outline:"none !important",gap:"1"}),$We=fe({marginTop:"2"}),zWe=fe({color:"mantine.colors.dimmed"}),RWe=fe({[hz]:{flexDirection:"column-reverse",alignItems:"flex-start",gap:"0.5"}}),TWe=fe({fontSize:"10px",lineHeight:"1.3",display:"block",fontWeight:500,whiteSpace:"nowrap",padding:"[1px 5px]",borderRadius:"4px",background:"mantine.colors.dark[9]/30",_light:{background:"mantine.colors.gray[3]/20"}}),jWe=fe({"--likec4-icon-size":"24px",[hz]:{"--likec4-icon-size":"18px"}}),AWe=fe({flex:0,fontSize:"10px",fontWeight:500,whiteSpace:"nowrap",lineHeight:"1.1",[hz]:{display:"none"}});function ki(e){e.stopPropagation(),e.preventDefault()}function iee(e){const r=e.getBoundingClientRect();return r.y+Math.floor(r.height/2)}function h0(e){if(!e){console.error("moveFocusToSearchInput: from is null or undefined");return}const r=e.getRootNode();if(!ey(r.querySelector)){console.error("moveFocusToSearchInput: root.querySelector is not a function");return}let n=r.querySelector("[data-likec4-search-input]");if(n){const o=n.value.length;n.focus(),n.setSelectionRange(o,o)}}function D2(e){if(!e){console.error("focusToFirstFoundElement: from is null or undefined");return}const r=e.getRootNode();if(!ey(r.querySelector)){console.error("focusToFirstFoundElement: root.querySelector is not a function");return}r.querySelector(`[data-likec4-search] .${j2}`)?.focus()}function lee(e,r,n=`.${j2}`){if(!e)return console.error("queryAllFocusable: from is null or undefined"),[];const o=e.getRootNode();return ey(o.querySelectorAll)?[...o.querySelectorAll(`[data-likec4-search-${r}] ${n}`)]:(console.error("queryAllFocusable: root.querySelectorAll is not a function"),[])}function see(e){setTimeout(e,300)}const DWe="likec4-view-btn",MWe=Ge(fe({flexWrap:"nowrap",display:"flex","&[data-disabled] .mantine-ThemeIcon-root":{opacity:.45}}),DWe);fe({marginTop:"1",fontSize:"13px",lineHeight:"1.4",":where(.likec4-view-btn[data-disabled]) &":{opacity:.85}});const cee=()=>y.jsx(hr,{className:_We,children:"Nothing found"}),NWe=S.memo(()=>{const e=S.useRef(null);let r=[...Fo().views()],n=uz();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(Lo,{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=lee(e.current,"elements",".likec4-element-button");let l=i.length>1?i.find((s,c,d)=>iee(s)>a||c===d.length-1):null;l??=hf(i),l&&(o.stopPropagation(),l.focus());return}},children:[r.length===0&&y.jsx(cee,{}),r.length>0&&y.jsx(o3,{children:y.jsx(pr,{"data-likec4-view":!0,tabIndex:-1,onFocus:o=>{o.stopPropagation(),h0(e.current)}})}),r.map((o,a)=>y.jsx(zr,{layoutId:`@view${o.id}`,children:y.jsx(fz,{view:o,search:n,tabIndex:a===0?0:-1})},o.id))]})}),M2=aee();function fz({className:e,view:r,loop:n=!1,search:o,focusOnElement:a,...i}){const l=Nd(),s=Nt(),c=r.id,d=E2(),u=c===d,p=()=>{l.send({type:"close"}),see(()=>{if(u&&a){s.focusOnElement(a);return}s.navigateTo(c,void 0,a)})};return y.jsxs(pr,{...i,className:Ge(M2.root,"group",j2,MWe,e),"data-likec4-view":r.id,...u&&!a&&{"data-disabled":!0},onClick:f=>{f.stopPropagation(),p()},onKeyDown:ay({siblingSelector:"[data-likec4-view]",parentSelector:"[data-likec4-search-views]",activateOnFocus:!1,loop:n,orientation:"vertical",onKeyDown:f=>{f.nativeEvent.code==="Space"&&(f.stopPropagation(),p())}}),children:[y.jsx(Ta,{variant:"transparent",className:M2.icon,children:r.isDeploymentView()?y.jsx(iz,{stroke:1.8}):y.jsx(bi,{stroke:1.8})}),y.jsxs(hr,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",children:[y.jsx(tc,{component:"div",highlight:o,className:M2.title,children:r.title||"untitled"}),u&&y.jsx(ec,{size:"xs",fz:9,radius:"sm",children:"current"})]}),y.jsx(tc,{highlight:r.description.nonEmpty?o:"",component:"div",className:M2.description,lineClamp:1,children:r.description.text||"No description"})]})]})}const mm=aee(),PWe=S.memo(()=>{const e=Fo(),r=uz(),n=S.useMemo(()=>{const a=r.split(".");let i;tp(a)||a[0]==="kind:"?i=e.elements():i=Is(e.elements(),d=>r.startsWith("kind:")?d.kind.toLocaleLowerCase().startsWith(r.slice(5)):r.startsWith("#")?d.tags.some(u=>u.toLocaleLowerCase().includes(r.slice(1))):(d.title+" "+d.id+" "+d.summary.text).toLocaleLowerCase().includes(r));const l={},{all:s,roots:c}=Jr([...i],Jc,mw((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(o0)):d.roots.push(p),d.all.push(p),d},{all:[],roots:[]}));return{all:s,byid:l,roots:c.sort(o0)}},[e,r]),o=dee();return n.all.length===0?y.jsx(cee,{}):y.jsx(IWe,{data:n,handleClick:o})}),BWe=()=>{};function IWe({data:{all:e,byid:r,roots:n},handleClick:o}){const a=_y({multiple:!1});a.setHoveredNode=BWe,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&&(ki(l),h0(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=lee(s,"views");let f=p.length>1?p.find((g,v,w)=>iee(g)>u||v===w.length-1):null;f??=hf(p),f&&(ki(l),f.focus());return}if(l.key===" "||l.key==="Enter"){ki(l),o(d.element);return}}});return y.jsx(Ff,{"data-likec4-search-elements":!0,allowRangeSelection:!1,clearSelectionOnOutsideClick:!0,selectOnClick:!1,tree:a,data:n,levelOffset:"lg",classNames:{root:EWe,node:Ge(j2,SWe),label:CWe,subtree:$We},onKeyDownCapture:i,renderNode:OWe})}function OWe({node:e,elementProps:r,hasChildren:n,expanded:o}){const{element:a,searchTerms:i}=e,l=G5e({element:{id:a.id,title:a.title,shape:a.shape,icon:a.icon},className:Ge(mm.icon,jWe)}),s=[...a.views()],c=dee(),d=`@tree.${e.value}`;return y.jsxs(zr,{layoutId:d,...r,children:[y.jsx(lr,{variant:"transparent",size:16,tabIndex:-1,className:Ge(zWe),style:{visibility:n?"visible":"hidden"},children:y.jsx(Dd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${o?"90deg":"0"})`,width:"100%"}})}),y.jsxs(pr,{component:wi,layout:!0,tabIndex:-1,"data-value":a.id,className:Ge(mm.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:RWe,children:[y.jsx(tc,{component:"div",highlight:i,className:mm.title,children:e.label}),y.jsx(_n,{label:a.id,withinPortal:!1,fz:"xs",disabled:!a.id.includes("."),children:y.jsx(tc,{component:"div",highlight:i,className:Ge(TWe,mm.descriptionColor),children:Jg(a.id)})})]}),y.jsx(tc,{component:"div",highlight:i,className:mm.description,lineClamp:1,children:a.summary.text||"No description"})]}),y.jsx(at,{component:"div",className:Ge(AWe,mm.descriptionColor),fz:"xs",children:s.length===0?"No views":y.jsxs(y.Fragment,{children:[s.length," view",s.length>1?"s":""]})})]})]})}function dee(){const e=Nt(),r=Nd();return it(n=>{const o=[...n.views()];if(o.length===0)return;const a=n.id,i=fw(o)?.id;if(!i){r.send({type:"pickview.open",elementFqn:a});return}const l=i===e.currentView.id;r.send({type:"close"}),see(()=>{if(l){e.focusOnElement(a);return}e.navigateTo(i,void 0,a)})})}const LWe=fe({border:"transparent",background:{base:"transparent",_focusWithin:{base:"mantine.colors.gray[4]/55 !important",_dark:"mantine.colors.dark[5]/55 !important"},_groupHover:{base:"mantine.colors.gray[3]/35",_dark:"mantine.colors.dark[5]/35"}}}),FWe=fe({position:"absolute",inset:"0",width:"100%",height:"100%",backgroundColor:"[rgb(34 34 34 / 0.7)]",zIndex:902,backdropFilter:"auto",backdropBlur:"10px",_light:{backgroundColor:"[rgb(255 255 255 / 0.6)]"}}),VWe=fe({position:"absolute",top:"[2rem]",left:"[50%]",width:"100%",maxWidth:"600px",minWidth:"200px",transform:"translateX(-50%)",zIndex:903}),uee=fe({marginTop:"2","& + &":{marginTop:"[32px]"}});fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}});function qWe({elementFqn:e}){const r=Nd(),n=Fo().element(e),o=[],a=[];for(const l of n.views())l.viewOf===n?o.push(l):a.push(l);const i=()=>{r.send({type:"pickview.close"})};return kf("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:FWe,onClick:l=>{l.stopPropagation(),i()}},"pickview-backdrop"),y.jsx(l3,{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:VWe,"data-likec4-search-views":!0,children:[y.jsxs(en,{px:"sm",py:"md",justify:"space-between",children:[y.jsx(pp,{order:2,lh:1,children:"Select view"}),y.jsx(lr,{size:"md",variant:"default",onClick:l=>{l.stopPropagation(),i()},children:y.jsx(fp,{})})]}),y.jsxs(oa,{mah:"calc(100vh - 110px)",type:"never",children:[o.length>0&&y.jsxs(Lo,{gap:"sm",px:"sm",className:uee,children:[y.jsx(pp,{order:6,c:"dimmed",children:"scoped views of the element"}),o.map((l,s)=>y.jsx(fz,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0}},l.id))]}),a.length>0&&y.jsxs(Lo,{gap:"sm",px:"sm",className:uee,children:[y.jsx(pp,{order:6,c:"dimmed",children:"views including this element"}),a.map((l,s)=>y.jsx(fz,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0&&o.length===0}},l.id))]})]})]},"pickview")})]})}function HWe(){const e=S.useRef(null);let r=Fo().tagsSortedByUsage,n=gWe(),o=uz(),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(Or,{ref:e,css:{gap:"md",paddingLeft:"[48px]",flexWrap:"nowrap"},children:[y.jsx(Or,{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(u2,{tag:l,className:fe({userSelect:"none",cursor:"pointer"}),onClick:s=>{s.stopPropagation(),n(`#${l}`),setTimeout(()=>{D2(e.current)},350)}},l))}),i&&y.jsx(Vn,{size:"compact-xs",variant:"light",onClick:l=>{l.stopPropagation(),n(""),h0(e.current)},rightSection:y.jsx(fp,{size:14}),children:"Clear"})]}))}const UWe=[["path",{d:"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M21 21l-6 -6",key:"svg-1"}]],mz=wt("outline","search","Search",UWe);function pee(e){return e.match(/^(k|ki|kin|kind|kind:)$/)!=null}const WWe=["#","kind:"],GWe=S.memo(()=>{const e=Nd(),r=Fo(),n=S.useRef(null),{ref:o,focused:a}=kRe(),[i,l]=fWe(),s=IW({scrollBehavior:"smooth",loop:!1});kf("keydown",u=>{try{!a&&(u.key==="Backspace"||u.key.startsWith("Arrow")||u.key.match(new RegExp("^\\p{L}$","u")))&&h0(n.current)}catch(p){console.warn(p)}});let c=[],d=!1;switch(!0){case 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(fy,{children:"No tags found"},"empty-tags")]):(d=r.tags.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(my,{value:`#${f}`,children:[y.jsx(at,{component:"span",opacity:.5,mr:1,fz:"sm",children:"#"}),f]},f)));break}case i.startsWith("kind:"):case pee(i):{const u=i.length>5?i.slice(5).toLocaleLowerCase():"";let p=l9(r.specification.elements);u&&(p=p.filter(f=>f.toLocaleLowerCase().includes(u))),p.length===0?(d=!1,c=[y.jsx(fy,{children:"No kinds found"},"empty-kinds")]):(d=p.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(my,{value:`kind:${f}`,children:[y.jsx(at,{component:"span",opacity:.5,mr:1,fz:"sm",children:"kind:"}),f]},f)));break}}return y.jsxs(eo,{onOptionSubmit:u=>{l(u),s.resetSelectedOption(),WWe.includes(u)||(s.closeDropdown(),setTimeout(()=>{D2(n.current)},350))},width:"max-content",position:"bottom-start",shadow:"md",offset:{mainAxis:4,crossAxis:50},store:s,withinPortal:!1,children:[y.jsx(kS,{children:y.jsx(Ra,{ref:$r(n,o),placeholder:"Search by title, description or start with # or kind:",autoFocus:!0,"data-autofocus":!0,"data-likec4-search-input":!0,tabIndex:0,classNames:{input:LWe},size:"lg",value:i,leftSection:y.jsx(mz,{style:{width:$e(20)},stroke:2}),rightSection:y.jsx(Ra.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(),ki(u);case c.length===1:return s.selectFirstOption()&&s.clickSelectedOption(),ki(u);case pee(i):return l("kind:"),ki(u)}return}if(u.key==="Backspace"&&s.dropdownOpened){if(i==="kind:")return l(""),s.resetSelectedOption(),ki(u);if(i.startsWith("kind:")&&d)return l("kind:"),s.resetSelectedOption(),ki(u);if(i.startsWith("#")&&d)return l("#"),s.resetSelectedOption(),ki(u)}if(u.key==="Escape"&&s.dropdownOpened&&c.length>0){ki(u),s.closeDropdown();return}if(u.key==="ArrowUp"&&s.dropdownOpened&&i===""&&s.getSelectedOptionIndex()===0){s.closeDropdown(),ki(u);return}if(u.key==="ArrowDown"&&(!s.dropdownOpened||c.length===0||d||i===""&&s.getSelectedOptionIndex()===c.length-1)){s.closeDropdown(),ki(u),D2(n.current);return}}})}),y.jsx(m3,{hidden:c.length===0,style:{minWidth:300},children:y.jsx(g3,{children:y.jsx(oa,{mah:"min(322px, calc(100cqh - 50px))",type:"scroll",children:c})})})]})}),YWe=fe({backgroundColor:"[rgb(34 34 34 / var(--_opacity, 95%))]",_light:{backgroundColor:"[rgb(250 250 250 / var(--_opacity, 95%))]"},backdropFilter:"auto",backdropBlur:"var(--_blur, 10px)"}),XWe=fe({width:"100%",height:"100%",maxHeight:"100vh",overflow:"hidden",display:"flex",flexDirection:"column",justifyContent:"stretch",gap:"sm",paddingTop:"[20px]",paddingLeft:"md",paddingRight:"md",paddingBottom:"sm",background:"[transparent]"}),ZWe=e=>!e.matches("inactive");function KWe({searchActorRef:e}){const r=pn(e,ZWe),n=()=>{e.send({type:"open"})},o=it(()=>{e.send({type:"close"})});return bRe([["mod+k",n,{preventDefault:!0}],["mod+f",n,{preventDefault:!0}]]),y.jsx(pWe,{value:e,children:y.jsx(mp.Overlays,{children:y.jsx(HG,{FallbackComponent:UG,onReset:o,children:y.jsx(Cn,{children:r&&y.jsx(p0,{fullscreen:!0,withBackdrop:!1,backdrop:{opacity:.9},classes:{dialog:YWe,body:XWe},openDelay:0,onClose:o,"data-likec4-search":"true",children:y.jsx(QWe,{searchActorRef:e})})})})})})}const hee=fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}}),QWe=({searchActorRef:e})=>{const r=S.useRef(null),n=vWe();return wx(()=>{Kn(e.getSnapshot().context.openedWithSearch)&&D2(r.current)},150),y.jsxs(hr,{ref:r,display:"contents",children:[y.jsx(en,{className:"group",wrap:"nowrap",onClick:o=>{o.stopPropagation(),h0(r.current)},children:y.jsxs(hp,{flex:1,px:"sm",children:[y.jsx(GWe,{}),y.jsx(HWe,{})]})}),y.jsxs(yy,{children:[y.jsx(cp,{span:6,children:y.jsx(pp,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Elements"})}),y.jsx(cp,{span:6,children:y.jsx(pp,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Views"})})]}),y.jsxs(yy,{className:fe({containerName:"likec4-search-elements",containerType:"size",overflow:"hidden",flexGrow:1}),children:[y.jsx(cp,{span:6,children:y.jsx(es,{type:"scroll",className:hee,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(lm,{id:"likec4-search-elements",children:y.jsx(PWe,{})})})})}),y.jsx(cp,{span:6,children:y.jsx(es,{type:"scroll",className:hee,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(lm,{id:"likec4-search-views",children:y.jsx(NWe,{})})})})})]}),n&&y.jsx(qWe,{elementFqn:n})]})};function JWe({children:e}){const r=S.useContext(WS);if(!r)throw new Error("PortalToContainer must be used within RootContainer");return y.jsx(py,{target:r.ref.current??`#${r.id}`,children:e})}const fee={onNavigateTo:null,onNodeClick:null,onNodeContextMenu:null,onCanvasContextMenu:null,onEdgeClick:null,onEdgeContextMenu:null,onCanvasClick:null,onCanvasDblClick:null,onBurgerMenuClick:null,onOpenSource:null,onInitialized:null,onLayoutTypeChange:null},gz=l9(fee),mee=S.createContext({...hw(gz,e=>[e,null]),handlersRef:{current:fee}});function eGe({handlers:e,children:r}){const n=Kh(e),o=gz.map(i=>ey(e[i])),a=S.useMemo(()=>({...hw(gz,i=>n.current[i]?[i,(...l)=>n.current[i]?.(...l)]:[i,null]),handlersRef:n}),[n,...o]);return y.jsx(mee.Provider,{value:a,children:r})}function gm(){return S.useContext(mee)}const gee=(e,r)=>e.find(o=>"modelFqn"in o.data&&o.data.modelFqn===r)||null;function 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 ym(e,r){return e.view.nodes.find(n=>n.id===r)??null}function yz(e,r){return e.view.edges.find(n=>n.id===r)??null}function tGe(e){const r=new Map,n=e.context.xynodes.reduce((o,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 rGe=32;function nGe(e){const r=mt(e.context.activeWalkthrough),n=mt(e.context.xyedges.find(c=>c.id===r.stepId)),o=e.context.xystore.getState(),a=mt(o.nodeLookup.get(n.source)),i=mt(o.nodeLookup.get(n.target)),l=EF([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??=oGe(n,o),s?s=ko.merge(s,l):s=l,{duration:350,bounds:ko.expand(s,rGe)}}function oGe(e,r){const n=r.nodeLookup.get(e.source),o=r.nodeLookup.get(e.target);if(!n||!o)return null;const a=WF({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 vz(e){switch(e.type){case"element":case"compound-element":case"seq-actor":return e.data.modelFqn;case"deployment":case"compound-deployment":return e.data.modelFqn??e.data.deploymentFqn;case"seq-parallel":case"view-group":return null;default:Qo(e)}}function aGe(e,r){const n=e.lastOnNavigate?.fromNode,o=n&&e.xynodes.find(l=>l.id===n),a=o&&vz(o),i=a&&r.xynodes.find(l=>vz(l)===a);return{fromNode:o,toNode:i}}function iGe(e,r){let{width:n,height:o,transform:a}=e.xystore.getState();const i=Math.max(a[2],1);return Ws(r,n,o,xi,i,e.fitViewPadding)}const lGe=ns({delays:{"open timeout":({context:e})=>e.openTimeout,"close timeout":600,"long idle":1500},actions:{"update edgeId":Bt(({context:e,event:r})=>(ht(r,["xyedge.select","xyedge.mouseEnter"]),{edgeId:r.edgeId,edgeSelected:e.edgeSelected||r.type==="xyedge.select"})),"increase open timeout":Bt(()=>({openTimeout:800})),"decrease open timeout":Bt(()=>({openTimeout:300})),"reset edgeId":Bt({edgeId:null,edgeSelected:!1})},guards:{"edge was selected":({context:e})=>e.edgeSelected,"edge was hovered":({context:e})=>!e.edgeSelected}}).createMachine({id:"breadcrumbs",context:()=>({edgeId:null,edgeSelected:!1,openTimeout:800}),initial:"idle",on:{close:{target:"#idle",actions:["reset edgeId","increase open timeout"]}},states:{idle:{id:"idle",on:{"xyedge.mouseEnter":{target:"opening",actions:"update edgeId"},"xyedge.select":{target:"active",actions:"update edgeId"}},after:{"long idle":{actions:"increase open timeout"}}},opening:{on:{"xyedge.mouseLeave":{target:"idle"},"xyedge.select":{target:"active",actions:"update edgeId"}},after:{"open timeout":{actions:"decrease open timeout",target:"active"}}},active:{tags:["opened"],initial:"opened",exit:"reset edgeId",on:{"xyedge.unselect":{target:"idle",actions:"increase open timeout"},"xyedge.select":{actions:"update edgeId"}},states:{opened:{on:{"dropdown.mouseEnter":{target:"hovered"},"xyedge.mouseLeave":{guard:"edge was hovered",target:"closing"}}},hovered:{on:{"dropdown.mouseLeave":[{guard:"edge was selected",target:"opened"},{target:"closing"}]}},closing:{on:{"xyedge.mouseEnter":{guard:"edge was hovered",target:"opened",actions:"update edgeId"},"xyedge.select":{target:"opened",actions:"update edgeId"},"dropdown.mouseEnter":{target:"hovered"}},after:{"close timeout":{target:"#idle"}}}}}}}),sGe=lGe,yee=fe({display:"block",fontSize:"xxs",fontWeight:500,whiteSpace:"nowrap",paddingX:"1",paddingY:"0.5",borderRadius:"[2px]",background:{_light:"var(--likec4-palette-fill)/90",_dark:"var(--likec4-palette-fill)/60"},lineHeight:"1",color:{_light:"var(--likec4-palette-hiContrast)",_dark:"var(--likec4-palette-loContrast)"}}),cGe=fe({whiteSpaceCollapse:"preserve-breaks",fontSize:"sm",lineHeight:"sm",userSelect:"all"});function dGe(e){let r=null;for(const n of e.xyedges)if(n.selected){if(r){r=null;break}r=n.data.id}return{viewId:e.view.id,selected:r}}const uGe=S.memo(()=>{const e=Fo(),r=vE(sGe),n=Nt(),{viewId:o,selected:a}=pi(dGe),i=pn(r,g=>g.hasTag("opened")?g.context.edgeId:null);ja("navigateTo",()=>{r.send({type:"close"})}),ja("edgeMouseEnter",({edge:g})=>{r.send({type:"xyedge.mouseEnter",edgeId:g.data.id})}),ja("edgeMouseLeave",()=>{r.send({type:"xyedge.mouseLeave"})}),ja("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}=pi(g=>{const v=i?yz(g,i):null,w=v?ym(g,v.source):null,x=v?ym(g,v.target):null;return{diagramEdge:v,sourceNode:w,targetNode:x}},Ir,[i]);if(!c||!d||!u||tp(c.relations))return null;const[p,f]=Jr(c.relations,un(g=>{try{return e.relationship(g)}catch(v){return console.error(`View is cached and likec4model missing relationship ${g} from ${d.id} -> ${u.id}`,v),null}}),ep(Kn),qq(g=>g.source.id===d.id&&g.target.id===u.id));return p.length===0&&f.length===0?(console.warn("No relationships found diagram edge",{diagramEdge:c,sourceNode:d,targetNode:u}),null):y.jsx(JWe,{children:y.jsx(fGe,{viewId:o,direct:p,nested:f,diagramEdge:c,sourceNode:d,targetNode:u,onMouseEnter:l,onMouseLeave:s})})}),pGe=(e,r)=>r?.querySelector(`.likec4-edge-label[data-edge-id="${e}"]`)??r?.querySelector(`.likec4-edge-middle-point[data-edge-id="${e}"]`)??null,hGe=8,fGe=({viewId:e,diagramEdge:r,direct:n,nested:o,sourceNode:a,targetNode:i,onMouseEnter:l,onMouseLeave:s})=>{const c=S.useRef(null),{enableNavigateTo:d,enableVscode:u,enableCompareWithLatest:p}=sr(),{onOpenSource:f}=gm(),g=dNe(),[v,w]=S.useState(null);S.useLayoutEffect(()=>{w(pGe(r.id,g.current))},[r]),S.useEffect(()=>{const C=v,_=c.current;if(!C||!_)return;let $=!1;const z=Zw(C,_,()=>{$U(C,_,{placement:"bottom-start",middleware:[_U(4),Kje({crossAxis:!0,allowedPlacements:["bottom-start","bottom-end","left-start","top-start","top-end","right-start","right-end","left-end"]}),SU({apply({availableHeight:T,availableWidth:A,elements:R}){$||Object.assign(R.floating.style,{maxWidth:`${ti(Md(A),{min:220,max:400})}px`,maxHeight:`${ti(Md(T),{min:100,max:500})}px`})}}),EU({padding:hGe*2})]}).then(({x:T,y:A,middlewareData:R})=>{$||(_.style.transform=`translate(${Md(T)}px, ${Md(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(sp,{}),y.jsx(gGe,{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(oa,{ref:c,onMouseEnter:l,onMouseLeave:s,type:"auto",scrollbars:"y",scrollbarSize:6,styles:{viewport:{overscrollBehavior:"contain",minWidth:200,minHeight:40}},className:Ge(fe({layerStyle:"likec4.dropdown",p:"0",pointerEvents:{base:"all",_whenPanning:"none"},position:"absolute",top:"0",left:"0",width:"max-content",cursor:"default"})),children:y.jsxs(hp,{css:{gap:"3",padding:"4",paddingTop:"2"},children:[p&&y.jsx(mGe,{diagramEdge:r}),y.jsx(Vn,{variant:"default",color:"gray",size:"compact-xs",style:{alignSelf:"flex-start",fontWeight:500,"--button-fz":"var(--font-sizes-xxs)"},onClick:C=>{C.stopPropagation(),x.openRelationshipDetails(r.id)},children:"browse relationships"}),n.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{children:"DIRECT RELATIONSHIPS"}),n.map(k)]}),o.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{css:{mt:n.length>0?"2":"0"},children:"RESOLVED FROM NESTED"}),o.map(k)]})]})})},mGe=({diagramEdge:e})=>{const r=e.drifts;return!r||r.length===0?null:y.jsx(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:r.map(n=>y.jsxs(at,{mt:2,size:"sm",lh:"xs",children:["- ",n]},n))})},gGe=S.forwardRef(({viewId:e,relationship:r,sourceNode:n,targetNode:o,onNavigateTo:a,onOpenSource:i},l)=>{const s=vee(r,"source",n),c=vee(r,"target",o),d=a&&r.navigateTo?.id!==e?r.navigateTo?.id:void 0,u=r.links,p=r.hasMetadata()?uw(r.getMetadata()).sort(([g],[v])=>g.localeCompare(v)):null,f=p&&y.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[y.jsx("div",{style:{fontWeight:600,fontSize:"10px",color:"#868e96",marginBottom:"2px",letterSpacing:"0.5px",textTransform:"uppercase"},children:"Metadata"}),y.jsx("div",{style:{borderTop:"1px solid rgba(0, 0, 0, 0.1)",paddingTop:"6px",display:"flex",flexDirection:"column",gap:"6px"},children:p.map(([g,v])=>{const w=Array.isArray(v)?v.join(", "):v;return y.jsxs("div",{style:{display:"flex",gap:"12px",fontSize:"12px",lineHeight:"1.4"},children:[y.jsxs("span",{style:{fontWeight:600,minWidth:"110px",color:"#495057"},children:[g,":"]}),y.jsx("span",{style:{color:"#212529",wordBreak:"break-word",flex:1},children:w})]},g)})})]});return y.jsxs(hp,{ref:l,className:qG({block:"2",inline:"2",paddingY:"2.5",paddingX:"2",gap:"1",rounded:"sm",backgroundColor:{_hover:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]/70"}}}),children:[y.jsx(Or,{gap:"0.5",children:y.jsxs(dp,{openDelay:200,children:[y.jsx(f0,{label:s.full,offset:2,position:"top-start",children:y.jsx(at,{component:"div","data-likec4-color":n.color,className:yee,children:s.short})}),y.jsx(hm,{stroke:2.5,size:"11px",opacity:.65}),y.jsx(f0,{label:c.full,offset:2,position:"top-start",children:y.jsx(at,{component:"div","data-likec4-color":o.color,className:yee,children:c.short})}),d&&y.jsx(f0,{label:"Open dynamic view",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),a?.(d)},style:{alignSelf:"flex-end"},role:"button",children:y.jsx(bi,{size:"80%",stroke:2})})}),i&&y.jsx(f0,{label:"Open source",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),i()},role:"button",children:y.jsx(dm,{size:"80%",stroke:2})})})]})}),y.jsxs(Or,{gap:"xs",alignItems:"center",children:[y.jsx(hr,{className:cGe,children:r.title||"untitled"}),f&&y.jsx(f0,{label:f,w:350,position:"right",offset:10,openDelay:300,withArrow:!0,bg:"white",c:"dark",withinPortal:!0,styles:{tooltip:{boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)",border:"1px solid #dee2e6"}},children:y.jsx(hr,{display:"inline-flex",children:y.jsx(r0,{size:14,opacity:.5,style:{flexShrink:0,cursor:"help"}})})})]}),r.kind&&y.jsxs(Or,{gap:"2",children:[y.jsx(vm,{children:"kind"}),y.jsx(at,{size:"xs",className:fe({userSelect:"all"}),children:r.kind})]}),r.technology&&y.jsxs(Or,{gap:"2",children:[y.jsx(vm,{children:"technology"}),y.jsx(at,{size:"xs",className:fe({userSelect:"all"}),children:r.technology})]}),r.summary.nonEmpty&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{children:"description"}),y.jsx(hr,{css:{paddingLeft:"2.5",py:"1.5",borderLeft:"2px dotted",borderLeftColor:{base:"mantine.colors.gray[3]",_dark:"mantine.colors.dark[4]"}},children:y.jsx(Rp,{value:r.summary,fontSize:"sm",textScale:.875})})]}),u.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{children:"links"}),y.jsx(Or,{gap:"1",flexWrap:"wrap",children:u.map(g=>y.jsx(o$,{size:"sm",value:g},g.url))})]})]})}),vm=Ed("div",{base:{display:"block",fontSize:"xxs",fontWeight:500,userSelect:"none",lineHeight:"sm",color:"mantine.colors.dimmed"}}),f0=_n.withProps({color:"dark",fz:"xs",label:"",children:null,offset:8,withinPortal:!1});function vee(e,r,n){const o=e.isDeploymentRelation()?n.id:n.modelRef||"",a=e[r].id,i=Jg(o)+a.slice(o.length);return{full:a,short:i}}function bm(){const e=uNe();return S.useMemo(()=>e?{portalProps:{target:e},withinPortal:!0}:{withinPortal:!1},[e])}const yGe=ns({delays:{"open timeout":500,"close timeout":350},actions:{"update activatedBy":Bt({activatedBy:({context:e,event:r})=>{switch(!0){case r.type.includes("click"):return"click";case r.type.includes("mouseEnter"):return"hover";default:return e.activatedBy}}}),"keep dropdown open":Bt({activatedBy:"click"}),"update selected folder":Bt(({event:e})=>e.type==="breadcrumbs.click.root"?{selectedFolder:""}:(ht(e,["breadcrumbs.click.folder","select.folder"]),{selectedFolder:e.folderPath})),"reset selected folder":Bt({selectedFolder:({context:e})=>e.viewModel?.folder.path??""}),"update inputs":Bt(({context:e,event:r})=>{ht(r,"update.inputs");const n=r.inputs.viewModel?.id!==e.viewModel?.id;let o=e.selectedFolder;return r.inputs.viewModel?.folder.path.startsWith(o)||(o=r.inputs.viewModel?.folder.path??""),{view:r.inputs.view,viewModel:r.inputs.viewModel,selectedFolder:o,activatedBy:n?"hover":e.activatedBy}}),"reset search query":Bt({searchQuery:""}),"update search query":Bt(({event:e})=>(ht(e,"searchQuery.change"),{searchQuery:e.value??""})),"emit navigateTo":mE(({event:e})=>(ht(e,"select.view"),{type:"navigateTo",viewId:e.viewId}))},guards:{"was opened on hover":({context:e})=>e.activatedBy==="hover","has search query":({context:e})=>!tp(e.searchQuery),"search query is empty":({context:e})=>tp(e.searchQuery)}}).createMachine({id:"breadcrumbs",context:({input:e})=>({...e,breadcrumbs:[],activatedBy:"hover",selectedFolder:"",searchQuery:"",folderColumns:[]}),initial:"idle",entry:["update activatedBy","reset selected folder"],on:{"update.inputs":{actions:"update inputs"},"searchQuery.change":{actions:["update search query",ia({type:"searchQuery.changed"})]}},states:{idle:{id:"idle",on:{"breadcrumbs.mouseEnter.*":{target:"pending",actions:"update activatedBy"},"breadcrumbs.click.*":{target:"active",actions:"update activatedBy"}}},pending:{on:{"breadcrumbs.mouseEnter.*":{actions:"update activatedBy"},"breadcrumbs.mouseLeave.*":{target:"idle"},"breadcrumbs.click.*":{target:"active",actions:"update activatedBy"}},after:{"open timeout":{target:"active"}}},active:{tags:["active"],initial:"decide",on:{"dropdown.dismiss":{target:"#idle"},"breadcrumbs.mouseLeave":{guard:"was opened on hover",target:".closing"},"dropdown.mouseLeave":{guard:"was opened on hover",target:".closing"},"searchQuery.changed":{target:".decide"}},states:{decide:{always:[{guard:"has search query",target:"search"},{target:"opened"}]},opened:{on:{"searchQuery.changed":{guard:"has search query",actions:"keep dropdown open",target:"search"},"breadcrumbs.click.viewtitle":{actions:"reset selected folder"},"breadcrumbs.click.*":{actions:"update selected folder"},"select.folder":{actions:["keep dropdown open","update selected folder"]},"select.view":{actions:["emit navigateTo"]}}},search:{on:{"breadcrumbs.click.viewtitle":{actions:["reset search query","reset selected folder"],target:"opened"},"breadcrumbs.click.*":{actions:["reset search query","update selected folder"],target:"opened"},"select.view":{actions:["emit navigateTo"]}}},closing:{on:{"breadcrumbs.mouseEnter.*":{target:"decide"},"dropdown.mouseEnter":{target:"decide"}},after:{"close timeout":{target:"#idle"}}}}}}}),vGe=yGe,bz=S.createContext(null);bz.displayName="NavigationPanelActorSafeContext";const bGe=bz.Provider,xz=()=>{const e=S.useContext(bz);if(e===null)throw new Error("NavigationPanelActorRef is not found in the context");return e};function wz(e,r=Ir){const n=xz();return pn(n,e,r)}function xGe(e,r=Ir){return wz(n=>e(n.context),r)}function m0(){const e=xz();return S.useMemo(()=>({actorRef:e,send:r=>e.send(r),selectFolder:r=>e.send({type:"select.folder",folderPath:r}),selectView:r=>e.send({type:"select.view",viewId:r}),isOpened:()=>e.getSnapshot().hasTag("active"),clearSearch:()=>e.send({type:"searchQuery.change",value:""}),closeDropdown:()=>e.send({type:"dropdown.dismiss"})}),[e])}const bee=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1}),xee=()=>y.jsx(Ta,{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(Dd,{})});y3.withProps({separator:y.jsx(xee,{}),separatorMargin:4});const cc=S.forwardRef(({variant:e="default",className:r,disabled:n=!1,type:o,...a},i)=>y.jsx(lr,{size:"md",variant:"transparent",radius:"sm",component:wi,...!n&&{whileHover:{scale:1.085},whileTap:{scale:1,translateY:1}},disabled:n,...a,className:Ge(r,eQ({variant:e,type:o})),ref:i})),N2=T1({base:{fontSize:"sm",fontWeight:"500",transition:"fast",color:{base:"likec4.panel.action",_hover:"likec4.panel.action.hover"}},variants:{truncate:{true:{truncate:!0}},dimmed:{true:{color:{base:"likec4.panel.text.dimmed",_hover:"likec4.panel.action"}}}}}),wGe=S.forwardRef((e,r)=>y.jsxs("svg",{ref:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 222 56",...e,children:[y.jsx("path",{fill:"#5E98AF",d:"M33.95 33.78V0H2.37A2.37 2.37 0 0 0 0 2.35V33.9h33.95v-.12ZM38.57 33.78H55.6v-14.6c0-1.3-1.06-2.35-2.36-2.35H38.57v16.95ZM33.95 38.37H17.04v14.6c0 1.29 1.06 2.35 2.36 2.35h14.67V38.37h-.12ZM38.57 38.37v16.95h14.67c1.3 0 2.36-1.06 2.36-2.36v-14.6H38.57Z"}),y.jsx("path",{className:fe({fill:"[#FCFBF7]",_light:{fill:"[#222221]"}}),d:"M71.61 12.08c-.06 3.61.3 29.95.23 31.87 0 1.8 0 3.6.06 5.41 0 .3.18.58.47.58 4.1.18 8.13-.17 12.22-.11 1.34.05 2.69 0 3.97 0 1.29-.06 1.4-.59 1.35-1.63-.06-1.63-.06-3.08-.06-4.65-.06-.82-.53-1.11-1.23-1.11-2.4.06-4.8-.06-7.19.06-.4.06-.82.06-1.23.06-.7-.06-.87-.24-.93-1v-.86c-.18-4.83.17-9.83.17-14.66-.06-4.07 0-7.73-.06-11.34 0-1.57 0-3.14-.05-4.65-.06-.93 0-1.92-.24-2.85-.11-.35-.29-.81-.7-.81h-5.5c-.93 0-1.22.64-1.28 1.57v4.12ZM103.81 35c-.17-6.63-.1-13.67-.05-20.24 0-2.04-.12-4.25-.12-6.28 0-2.21-.87-2.1-2.04-2.15-1.7-.06-2.46-.06-4.15-.06-1.11-.06-1.58.23-1.58 1.34 0 5.7-.18 21.8-.12 24.13.06 2.33.3 12.91.18 15.24-.06.81 0 1.62.06 2.44.05.29.23.58.7.58 1.93-.12 3.74-.12 5.67-.17.7-.06 1.28-.24 1.58-1 .05-.4-.12-11.04-.12-13.83Zm13.92 4.47c0-2.03-.3-7.56-.23-8.72 0-.17.11-.4.17-.4.12 0 .35.11.41.17 1.87 2.44 10.64 19.36 11.7 19.42.28.06.58.06.87.06 1.99-.12 3.74 0 5.73 0 2.04 0 .7-1.98.35-2.5-.53-.76-7.48-13.14-7.9-13.9-1.16-1.98-2.16-4.13-3.32-6.05-.12-.23-.24-.58-.18-.81.12-.7.3-1.34.59-1.98a93.18 93.18 0 0 1 4.55-8.14c1.88-2.97 2.93-4.83 4.45-7.5.35-.64.58-1.34.82-2.1.05-.29-.18-.58-.53-.58-1.11-.05-5.15 0-6.43 0-.59 0-1.17.12-1.46.64-.76 1.46-8.6 15.7-9.35 16.98-.06.12-.24.18-.41.18 0 0-.12-.18-.12-.3-.06-3.25.53-13.9.4-16.04-.05-1.28-.28-1.4-1.57-1.46-1.4-.05-3.33-.05-4.73-.05-1.3 0-1.4.7-1.58 1.62-.06.18-.06 5.64-.06 8.09 0 3.54-.3 25.76.11 32.8 0 .7.18 1.1.77 1.1 1.57-.12 3.91 0 5.49 0 1.11 0 1.29-.12 1.29-1.98 0-2.5.23-4.77.23-7.85 0-.23-.06-.46-.06-.7Zm25.66-1.4h-.06c0 1.46-.05 2.97 0 4.49.06 1.86.18 3.72.3 5.58 0 .64.17.81.76.93 1.22.29 2.4.35 3.62.35 3.16-.12 6.31.11 9.47 0 1.29-.06 1.87.06 3.16-.18 1.17-.23 1.58-.87 1.58-2.61-.12-1.1-.06-1.57-.06-2.91 0-1.92-1.35-2.56-2.52-2.5-.81.06-4.73-.06-6.31-.06-2.63.06-2.22.4-2.22-2.33 0-2.2.06-5.05.06-7.32 0-1.22.11-1.63 1.28-1.63h7.31c1.17.17 1.99-.64 1.99-1.86 0-1.22.12-1.28.12-2.5l-.18-1.75c-.12-.99-.47-1.33-1.46-1.33-.64 0-1.29.05-1.93.11-2.52.18-3.68-.17-6.14 0-.82 0-.93-.11-1-.87-.23-2.27 0-4.77.24-7.04.06-.93.3-1.1 1.17-1.16l8.24-.06c1.11-.11 1.46-.06 1.4-1.16-.11-1.69.06-3.43-.11-5.12-.12-.93-.41-1.1-1.46-1.1-1.76.05-2.17.05-3.92.17-1.75.06-8.77.06-10.46.06-2.46 0-2.63-.18-2.7 2.8-.1 2.32-.05 4.7-.05 7.09 0 4.07-.23 18.66-.12 21.92Zm47.76-24.82c.06-1.92 0-3.5 0-5.35 0-2.15-3.92-1.92-5.32-1.86a18.95 18.95 0 0 0-15.08 9.77c-.82 1.57-1.4 3.2-1.81 4.88a34 34 0 0 0-.59 12.15c.41 3.78 1.4 7.56 3.74 10.59 4.04 5.3 11.46 7.15 17.83 6.16.3-.06.59-.11.82-.29.18-.11.35-.35.35-.58l.18-3.31c.06-1.05 0-1 0-2.04 0-1.4-2.93-.35-4.74-.35-1.75 0-3.62-.06-5.2-.87-2.8-1.57-4.38-4.71-5.26-7.68-1-3.2-1.23-6.63-.64-9.88.7-4.25 2.74-9.13 7.25-10.59 2.57-.87 5.31-.58 7.89-.29.35.06.58-.17.58-.46Zm26.77 15.3c.06-2.5 0-14.84 0-18.38.06-.82 0-1.63-.11-2.45-.06-.99-.24-1.28-1.29-1.33h-4.44c-.82 0-1.35.4-1.82 1.27-1.34 3.2-10.75 24.02-12.15 26.58-.53.99-1 1.63-1 2.68v4.24c0 .76-.06 1.28 1.23 1.28l11.1-.06c1.47 0 1.47.3 1.47 1.1 0 .88-.12 4.9-.12 5.3 0 .58.12 1.16 1.23 1.16h5.08c1.23 0 1.23-.7 1.23-2.03.06-1.17-.06-3.5-.06-4.66 0-.93.18-.98 1.76-.98 1.22 0 1.75-.12 1.75-.88.06-1.57 0-2.67 0-4.42 0-1.04-.93-.98-2.92-.98-.65 0-.7-.18-.7-1.05-.12-1.8-.24-4.6-.24-6.4Zm-7.25-5.94c-.05.7-.11 10.82-.11 12.27-.06.81-.24 1.05-1 1.1-1.93.06-3.85.06-5.78.06-.47 0-.65-.4-.41-.87.23-.4 4.85-11.57 6.13-14.48.18-.17.24-.35.41-.52.18-.12.41-.18.59-.23.06 0 .23.29.23.46 0 .76-.06 1.51-.06 2.21Z"})]})),kGe=S.forwardRef((e,r)=>y.jsx("svg",{ref:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 56 56",...e,children:y.jsx("path",{fill:"#5E98AF",d:"M33.95 33.78V0H2.37A2.37 2.37 0 0 0 0 2.35V33.9h33.95v-.12ZM38.57 33.78H55.6v-14.6c0-1.3-1.06-2.35-2.36-2.35H38.57v16.95ZM33.95 38.37H17.04v14.6c0 1.29 1.06 2.35 2.36 2.35h14.67V38.37h-.12ZM38.57 38.37v16.95h14.67c1.3 0 2.36-1.06 2.36-2.36v-14.6H38.57Z"})})),_Ge=()=>{const e=m0(),{onBurgerMenuClick:r}=gm();return y.jsx(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(wGe,{className:fe({display:{base:"none","@/md":"block"}})}),y.jsx(kGe,{className:fe({display:{base:"block","@/md":"none"}})})]})})},SGe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M5 12l6 6",key:"svg-1"}],["path",{d:"M5 12l6 -6",key:"svg-2"}]],EGe=wt("outline","arrow-left","ArrowLeft",SGe),CGe=()=>{const e=Nt(),{hasStepBack:r,hasStepForward:n}=pi(o=>({hasStepBack:o.navigationHistory.currentIndex>0,hasStepForward:o.navigationHistory.currentIndex{o.stopPropagation(),e.navigate("back")},children:y.jsx(EGe,{size:14})}),y.jsx(cc,{disabled:!n,onClick:o=>{o.stopPropagation(),e.navigate("forward")},children:y.jsx(hm,{size:14})})]})},$Ge=[["path",{d:"M9 15l6 -6",key:"svg-0"}],["path",{d:"M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464",key:"svg-1"}],["path",{d:"M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463",key:"svg-2"}]],zGe=wt("outline","link","Link",$Ge),RGe=({context:e})=>{const r=e.view;return{id:r.id,title:e.viewModel?.title??(r.title&&n7(r.title))??"Untitled View",description:e.viewModel?.description??ur.from(r.description),tags:r.tags??[],links:r.links??[]}},TGe=e=>{const[r,n]=S.useState(!1),o=wz(RGe,tt),a=bm();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(jGe,{linksCount:o.links.length,onOpen:()=>n(!0)}),r&&y.jsx(AGe,{data:o,onClose:()=>n(!1)})]})},jGe=({linksCount:e,onOpen:r})=>y.jsx(br.Target,{children:y.jsxs(pr,{component:wi,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(nz,{size:16,stroke:1.8}),e>0&&y.jsxs(Or,{gap:"[1px]",children:[y.jsx(zGe,{size:14,stroke:2}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8},children:e})]})]})}),wee=Ed("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}}),AGe=({data:{id:e,title:r,description:n,tags:o,links:a},onClose:i})=>{const l=Nt();return ja("paneClick",i),ja("nodeClick",i),y.jsxs(br.Dropdown,{className:Ge("nowheel nopan nodrag",Ey({margin:"xs",layerStyle:"likec4.dropdown",gap:"md",padding:"md",paddingBottom:"lg",pointerEvents:"all",maxWidth:"calc(100cqw - 52px)",minWidth:"200px",maxHeight:"calc(100cqh - 100px)",width:"max-content",cursor:"default",overflow:"auto",overscrollBehavior:"contain","@/sm":{minWidth:400,maxWidth:550},"@/lg":{maxWidth:700}})),children:[y.jsxs("section",{children:[y.jsx(at,{component:"div",fw:500,size:"xl",lh:"sm",children:r}),y.jsxs(Or,{alignItems:"flex-start",mt:"1",children:[y.jsx(DGe,{label:"id",value:e}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:o.map(s=>y.jsx(u2,{tag:s,cursor:"pointer",onClick:c=>{c.stopPropagation(),l.openSearch(`#${s}`)}},s))})]})]}),a.length>0&&y.jsxs("section",{className:qn({alignItems:"baseline"}),children:[y.jsx(wee,{children:"Links"}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:a.map((s,c)=>y.jsx(o$,{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(wee,{children:"Description"}),y.jsx(Rp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})]})},DGe=({label:e,value:r})=>y.jsxs(Or,{gap:"0.5",children:[y.jsx(MGe,{children:e}),y.jsx(ec,{size:"sm",radius:"sm",variant:"light",color:"gray",tt:"none",fw:500,classNames:{root:fe({width:"max-content",overflow:"visible",px:"1",color:{_dark:"mantine.colors.gray[4]",_light:"mantine.colors.gray[8]"}}),label:fe({overflow:"visible"}),section:fe({opacity:.5,userSelect:"none",marginInlineEnd:"0.5"})},children:r})]}),MGe=Ed("div",{base:{color:"mantine.colors.dimmed",fontWeight:500,fontSize:"xxs",userSelect:"none"}}),NGe=()=>{const e=E2(),{enableVscode:r}=sr(),{onOpenSource:n}=gm();return r?y.jsx(bee,{label:"Open View Source",children:y.jsx(cc,{onClick:o=>{o.stopPropagation(),n?.({view:e})},children:y.jsx(dm,{style:{width:"60%",height:"60%"}})})}):null};function kee(e,r){if(e._type==="dynamic")try{if(r??=e.variant,r==="sequence")return e.sequenceLayout.bounds}catch{}return e.bounds}function PGe({points:e,controlPoints:r,labelBBox:n}){let o=1/0,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 BGe({nodes:e,edges:r}){return ko.expand(ko.merge(...e,...r.map(PGe)),10)}function _ee(e){const{view:{drifts:r,_layout:n,...o},xynodes: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(!d2(v,p)||p.width!==w||p.height!==x)&&c.add(p.id),{...p,shape:g.shape,color:g.color,style:{...g.style},x:Math.floor(v.x),y:Math.floor(v.y),width:Math.ceil(w),height:Math.ceil(x)}}),u=un(o.edges,p=>{const f=s.get(p.id);if(!f)return console.error(`Internal edge not found for ${p.id}`),p;const g=f.data;let v=g.controlPoints??[];const w=c.has(f.source)||c.has(f.target);v.length===0&&w&&(v=c2(g.points));const x={...ud(p,["controlPoints","labelBBox"]),points:g.points};return g.labelBBox&&(x.labelBBox=g.labelBBox),xn(v,1)&&(x.controlPoints=v),x});return{op:"save-view-snapshot",layout:{...o,_layout:"manual",bounds:BGe({nodes:d,edges:u}),nodes:d,edges:u}}}const IGe=function(e){return e.get("diagram")},See=function(e){return e.get("diagram").getSnapshot().context},Eee=()=>zn.raise({type:"sync"},{delay:200,id:"sync"}),xm=()=>zn.cancel("sync"),Cee=(e=50)=>zn.raise(({event:r})=>r,{delay:e}),$ee=e=>e.op==="reset-manual-layout"||e.op==="save-view-snapshot",zee=ep(S$e($ee)),Ree=()=>zn.assign(({system:e})=>{const r=See(e);return{beforeEditing:{xynodes:r.xynodes.map(({measured:n,...o})=>({...ud(o,["selected","dragging","resizing"]),data:ud(o.data,["dimmed","hovered"]),measured:n,initialWidth:n?.width??o.width??o.initialWidth,initialHeight:n?.height??o.height??o.initialHeight})),xyedges:r.xyedges.map(n=>({...ud(n,["selected"]),data:ud(n.data,["active","dimmed","hovered"])})),change:_ee(r),view:r.view,synched:!1}}}),OGe=()=>zn.enqueueActions(({enqueue:e,event:r})=>{e(Ree()),r.type==="edit.start"&&e.assign({editing:r.subject})}),LGe=()=>zn.stopChild("hotkey"),kz=()=>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"})}),Tee=()=>zn.assign(({context:e})=>{const r=e.beforeEditing;return r?{beforeEditing:null,editing:null,history:[...e.history,r]}:{editing:null}}),_z=()=>zn.enqueueActions(({event:e,enqueue:r})=>{if(e.type==="edit.finish"&&e.wasChanged){r(Tee()),r(Eee());return}r.assign({beforeEditing:null,editing:null})}),FGe=()=>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}))})),VGe=()=>zn.assign(({context:e})=>e.history.length<=1?{history:[]}:{history:e.history.slice(0,e.history.length-1)}),qGe=()=>zn.enqueueActions(({context:e,enqueue:r,system:n})=>{const o=dd(e.history);if(!o)return;r(xm()),r(VGe()),r(kz());const a=IGe(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(Eee())}),Sz=()=>zn.assign(({context:e,system:r})=>{const n=See(r),o=_ee(n);return{pendingChanges:[...zee(e.pendingChanges),o]}}),HGe=B3(({sendBack:e})=>{const r=$w([["mod + z",n=>{n.stopPropagation(),e({type:"undo"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),UGe=Ry(()=>{throw new Error("Not implemented")}),WGe=Ry(()=>{throw new Error("Not implemented")}),jee=function(e){return e.system.get("diagram")},zn=ns({delays:{"350ms":350,waitBeforeSync:2e3},actors:{applyLatest:UGe,executeChange:WGe,hotkey:HGe},guards:{"has pending":({context:e})=>e.pendingChanges.length>0,"can undo":({context:e})=>e.history.length>0}}),Hn={idle:{target:"#idle"},editing:{target:"#editing"},afterEdit:{target:"#afterEdit"},pending:{target:"#pending"},applyLatestToManual:{target:"#applyLatestToManual"},executeChanges:{target:"#executeChanges"}},GGe=zn.createStateConfig({id:"idle",on:{sync:{...Hn.pending},"edit.start":{...Hn.editing}}}),YGe=zn.createStateConfig({id:"editing",tags:"pending",entry:[OGe(),xm()],on:{change:{actions:_z(),...Hn.executeChanges},"edit.finish":{actions:_z(),...Hn.afterEdit},undo:{actions:_z(),...Hn.idle}}}),XGe=zn.createStateConfig({id:"pending",tags:["pending"],entry:kz(),on:{sync:{reenter:!0,...Hn.pending},"edit.start":{actions:[Sz()],...Hn.editing}},after:{waitBeforeSync:{actions:[Sz()],...Hn.executeChanges}}}),ZGe=zn.createStateConfig({id:"afterEdit",always:[{guard:"has pending",...Hn.pending},{...Hn.idle}]}),KGe=zn.createStateConfig({id:"applyLatestToManual",entry:[xm(),Ree()],initial:"call",on:{"*":{actions:[yE(({event:e})=>`applyLatestToManual received unexpected event: ${e.type}`),Cee(350)]}},states:{call:{invoke:{src:"applyLatest",input:({context:e})=>{const r=e.beforeEditing?.change.layout;return{current:r&&r._layout==="manual"?r:void 0,viewId:e.viewId}},onDone:{actions:jy(jee,({event:e})=>({type:"update.view",view:e.output.updated}),{delay:10}),target:"wait"},onError:{actions:[Bt({beforeEditing:null,pendingChanges:[]}),({event:e})=>{console.error(e.error)}],...Hn.idle}}},wait:{entry:Tee(),after:{"350ms":{actions:[Sz(),kz()],...Hn.executeChanges}}}}}),QGe=zn.createStateConfig({id:"executeChanges",entry:[Bt(({event:e,context:r})=>{if(e.type==="change"){if($ee(e.change))return{pendingChanges:[...zee(r.pendingChanges),e.change]};if(!r.pendingChanges.includes(e.change))return{pendingChanges:[...r.pendingChanges,e.change]}}return{}}),xm()],invoke:{src:"executeChange",input:({context:e})=>({changes:e.pendingChanges,viewId:e.viewId}),onDone:{actions:rs(({context:e,enqueue:r})=>{const n=Q1(e.pendingChanges,o=>o.op==="save-view-snapshot");n&&r.sendTo(jee,{type:"update.view-bounds",bounds:n.layout.bounds}),r.assign({pendingChanges:[]})}),...Hn.idle},onError:{actions:({event:e})=>{console.error(e.error)},...Hn.afterEdit}},on:{"*":{actions:Cee()}}}),JGe=zn.createMachine({id:"editor",context:({input:e})=>({viewId:e.viewId,beforeEditing:null,editing:null,pendingChanges:[],history:[]}),initial:"idle",states:{idle:GGe,editing:YGe,pending:XGe,afterEdit:ZGe,applyLatestToManual:KGe,executeChanges:QGe},on:{cancel:{actions:[xm(),Bt({editing:null,beforeEditing:null,pendingChanges:[]})],...Hn.idle},synced:{actions:FGe()},undo:{guard:"can undo",actions:qGe(),...Hn.idle},change:{...Hn.executeChanges},applyLatestToManual:{...Hn.applyLatestToManual},reset:{actions:[xm(),Bt({history:[],editing:null,beforeEditing:null,pendingChanges:[]}),LGe()],...Hn.idle}}}),Aee=JGe,Dee={};function Mee(e,r){return e===r?e:(r=r.map(n=>{const o=e.find(l=>l.id===n.id&&l.type===n.type&&l.source===n.source&&l.target===n.target);if(!o)return n;const 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??Dee,n.style??Dee)?o:{...ry(o,ri),...ry(n,ri),data:i}}),Oq(e,r)?e:r)}function Ez(e,r){return ri(r)?Mee(e,r):(r=e,n=>Mee(n,r))}const P2={};function Nee(e,r){return e===r?e:(r=r.map(n=>{const o=e.find(p=>p.id===n.id&&p.type===n.type);if(!o)return n;const a=Nq(o.data,n.data);let i=a?o.data:n.data;a||(ri(o.data.hovered)&&!ri(n.data.hovered)&&(i={...i,hovered:o.data.hovered}),ri(o.data.dimmed)&&!ri(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??P2,n.domAttributes??P2)&&tt(o.style??P2,n.style??P2))return o;const u=c&&d?o.handles:n.handles;return{...ry(o,(p,f)=>ri(p)&&f!=="parentId"),..."measured"in o&&{measured:{width:n.width??n.initialWidth,height:n.height??n.initialHeight}},...ry(n,ri),width:n.width??n.initialWidth,height:n.height??n.initialHeight,...u&&{handles:u},data:i}}),Oq(e,r)?e:r)}function B2(e,r){return ri(r)?Nee(e,r):(r=e,n=>Nee(n,r))}const Cz={top:"40px",bottom:"22px",left:"22px",right:"22px"};function Pee(e){const r=[],n=[],o=new Map,a=x8.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==w1;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?lc.Compound:lc.Element,style:{width:s.width,height:s.height},initialWidth:s.width,initialHeight:s.height,...c&&{parentId:c.id}},g=s.modelRef??null,v={navigateTo:s.navigateTo??null};switch(!0){case s.kind===w2.Empty:{r.push({...f,type:"empty",data:{column:s.column}});break}case(d&&!!g):{r.push({...f,type:"compound",data:{id:p,column:s.column,title:s.title,color:s.color,shape:s.shape,style:s.style,depth:s.depth??0,icon:s.icon??"none",ports:s.ports,existsInCurrentView:s.existsInCurrentView,fqn:g,...v}});break}default:He(g,"Element should have either modelRef or deploymentRef"),r.push({...f,type:"element",data:{id:p,column:s.column,fqn:g,title:s.title,technology:s.technology,description:s.description,height:s.height,width:s.width,color:s.color,shape:s.shape,icon:s.icon??"none",ports:s.ports,style:s.style,existsInCurrentView:s.existsInCurrentView,tags:s.tags,...v}})}}for(const s of e.edges){const c=s.source,d=s.target,u=s.id;if(!xn(s.points,2)){console.error("edge should have at least 2 points",s);continue}if(!xn(s.relations,1)){console.error("edge should have at least 1 relation",s);continue}n.push({id:u,type:"relationship",source:c,target:d,sourceHandle:s.sourceHandle,targetHandle:s.targetHandle,data:{sourceFqn:s.sourceFqn,targetFqn:s.targetFqn,relations:s.relations,color:s.color??"gray",label:s.label,navigateTo:s.navigateTo??null,line:s.line??"dashed",existsInCurrentView:s.existsInCurrentView},interactionWidth:20})}return{xynodes:r,xyedges:n}}const Bee=e=>e.find(r=>r.data.column==="subjects"&&ty(r.parentId)),eYe=Ry(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=Pee(s),f=()=>{const{nodes:j,edges:I}=l.getState();return{xynodes:B2(j,p.xynodes),xyedges:Ez(I,p.xyedges)}},g=mt(r._parent);let v=i.getZoom();const w=Math.max(v,1),x=Ws(s.bounds,d,u,xi,w,Cz),k=p.xynodes.find(j=>j.type!=="empty"&&j.data.column==="subjects"&&j.data.fqn===o)??Bee(p.xynodes),C=Bee(c),_=a?c.find(j=>j.id===a):c.find(j=>j.type!=="empty"&&j.data.column!=="subjects"&&j.data.fqn===o);if(!k||!_||k.type==="empty"||!C||k.data.fqn===C.data.fqn)return await 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),T=n$(z),A=new Set;if(c.forEach(j=>{if(j.id!==_.id){if(j.data.column==="subjects"){A.add(j.id);return}j.parentId&&(j.parentId===_.id||A.has(j.parentId))&&A.add(j.id)}}),c=B2(c,c.flatMap(j=>A.has(j.id)?[]:j.id!==_.id?{...j,data:{...j.data,dimmed:j.data.column==="subjects"?"immediate":!0}}:{...ud(j,["parentId"]),position:{x:T.x-j.initialWidth/2,y:T.y-j.initialHeight/2},zIndex:lc.Max,hidden:!1,data:{...j.data,dimmed:!1}})),g.send({type:"update.xydata",xynodes:c,xyedges:[]}),await XO(120),p.xynodes=p.xynodes.map(tr.setDimmed(!1)),n.aborted)return f();const R=300;return i.setCenter(T.x,T.y,{zoom:v,duration:R,interpolate:"smooth"}),await XO(R),await i.setCenter($.x,$.y,{zoom:v}),f()}),dc=ns({actors:{layouter:eYe},guards:{hasViewId:({context:e})=>e.viewId!==null,isReady:({context:e})=>e.xyflow!==null&&e.xystore!==null&&e.layouted!==null,anotherSubject:({context:e,event:r})=>r.type==="update.view"?e.layouted?.subject!==r.layouted.subject:!1}}),Iee=()=>dc.assign(({event:e})=>(ht(e,"xyflow.init"),{xyflow:e.instance,xystore:e.store})),Oee=()=>dc.assign(({event:e})=>(ht(e,"update.view"),{layouted:e.layouted,...Pee(e.layouted)})),tYe=()=>dc.createAction(({context:e})=>{He(e.xystore,"xystore is not initialized");const{domNode:r,updateNodeInternals:n}=e.xystore.getState(),o=new Set(e.xyedges.flatMap(l=>[l.source,l.target]));if(o.size===0||!r)return;const 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})}),$z=e=>dc.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=Ws(a,c,d,xi,s,Cz);i.setViewport(u,o>0?{duration:o,interpolate:"smooth"}:void 0).catch(console.error)}else i.fitView({minZoom:xi,maxZoom:s,padding:Cz,...o>0&&{duration:o,interpolate:"smooth"}}).catch(console.error)}),rYe=()=>dc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyNodeChanges"),{xynodes:rw(r.changes,e.xynodes)})),nYe=()=>dc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyEdgeChanges"),{xyedges:nw(r.changes,e.xyedges)})),Lee=()=>dc.enqueueActions(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=Rr(e).diagramActorRef,o=r.edge.data.relations;xn(o,1)&&n.send({type:"open.source",relation:o[0]})}),Fee=()=>dc.assign({xyflow:null,layouted:null,xystore:null,xyedges:[],xynodes:[]}),oYe=dc.createMachine({id:"relationships-browser",context:({input:e})=>({subject:e.subject,viewId:e.viewId,scope:e.viewId?e.scope:"global",closeable:e.closeable??!0,enableSelectSubject:e.enableSelectSubject??!0,enableChangeScope:e.enableChangeScope??!0,xyflow:null,xystore:null,layouted:null,navigateFromNode:null,xynodes:[],xyedges:[]}),initial:"initializing",on:{"xyflow.applyNodeChanges":{actions:rYe()},"xyflow.applyEdgeChanges":{actions:nYe()}},states:{initializing:{on:{"xyflow.init":{actions:Iee(),target:"isReady"},"update.view":{actions:Oee(),target:"isReady"},stop:"closed",close:"closed"}},isReady:{always:[{guard:"isReady",actions:[$z({duration:0}),ia({type:"xyflow.updateNodeInternals"},{delay:150})],target:"active"},{target:"initializing"}]},active:{initial:"idle",tags:["active"],on:{"xyflow.nodeClick":{actions:rs(({event:e,enqueue:r})=>{if("fqn"in e.node.data){const n=e.node.data.fqn;r.raise({type:"navigate.to",subject:n,fromNode:e.node.id})}})},"xyflow.edgeClick":[{guard:"hasViewId",actions:rs(({event:e,context:r,system:n,enqueue:o})=>{e.edge.selected||e.edge.data.relations.length>1?o.sendTo(Rr(n).overlaysActorRef,{type:"open.relationshipDetails",viewId:r.viewId,source:e.edge.data.sourceFqn,target:e.edge.data.targetFqn}):o(Lee())})},{actions:Lee()}],"navigate.to":{actions:[Bt({subject:({event:e})=>e.subject,viewId:({event:e,context:r})=>e.viewId??r.viewId??null,navigateFromNode:({event:e})=>e.fromNode??null})]},"xyflow.paneDblClick":{actions:$z()},"update.view":{actions:Oee(),target:".layouting"},"change.scope":{actions:Bt({scope:({event:e})=>e.scope})},"xyflow.updateNodeInternals":{actions:tYe()},fitDiagram:{actions:$z()},"xyflow.resized":{actions:[ui("fitDiagram"),ia({type:"fitDiagram"},{id:"fitDiagram",delay:300})]},"xyflow.init":{actions:Iee()},"xyflow.unmount":{target:"initializing"},close:"closed"},states:{idle:{on:{"xyflow.edgeMouseEnter":{actions:[Bt({xyedges:({context:e,event:r})=>{const n=e.xyedges.some(o=>o.data.dimmed!==!1||o.selected);return e.xyedges.map(o=>o.id===r.edge.id?tr.setData(o,{hovered:!0,dimmed:!1}):n&&!o.selected?tr.setDimmed(o,"immediate"):o)}}),ui("undim.edges"),ui("dim.nonhovered.edges"),ia({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)}),ui("dim.nonhovered.edges"),ia({type:"undim.edges"},{id:"undim.edges",delay:400})]},"dim.nonhovered.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(r=>r.data.hovered?r:tr.setDimmed(r,r.data.dimmed==="immediate"?"immediate":!0))})},"undim.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(tr.setDimmed(!1))})},"xyflow.selectionChange":{actions:rs(({event:e,context:r,enqueue:n})=>{e.edges.length===0&&r.xyedges.some(o=>o.data.dimmed)&&!r.xyedges.some(o=>o.data.hovered)&&n.raise({type:"undim.edges"})})}}},layouting:{invoke:{id:"layouter",src:"layouter",input:({context:e})=>({subjectId:e.subject,navigateFromNode:e.navigateFromNode,xyflow:mt(e.xyflow),xystore:mt(e.xystore),update:mt(e.layouted)}),onDone:{target:"idle",actions:rs(({enqueue:e,event:r})=>{e.assign({xynodes:r.output.xynodes,xyedges:r.output.xyedges,navigateFromNode:null}),e.raise({type:"fitDiagram",duration:200},{id:"fitDiagram",delay:50});for(let n=1;n<8;n++)e.raise({type:"xyflow.updateNodeInternals"},{delay:120+n*75})})}},on:{"update.xydata":{actions:Bt({xynodes:({event:e})=>e.xynodes,xyedges:({event:e})=>e.xyedges})},"xyflow.applyEdgeChanges":{},"xyflow.applyNodeChanges":{}}}}},closed:{id:"closed",type:"final",entry:Fee()}},exit:Fee()}),Vee=oYe,aYe=ns({actors:{relationshipsBrowserLogic:Vee}}).createMachine({id:"element-details",context:({input:e})=>({...e,initiatedFrom:{node:e.initiatedFrom?.node??null,clientRect:e.initiatedFrom?.clientRect??null}}),initial:"active",states:{active:{entry:T3("relationshipsBrowserLogic",{id:({self:e})=>`${e.id}-relationships`,input:({context:e})=>({subject:e.subject,viewId:e.currentView.id,scope:"view",enableSelectSubject:!1,enableChangeScope:!0,closeable:!1})}),exit:[jy(({self:e})=>`${e.id}-relationships`,{type:"close"}),$y(({self:e})=>`${e.id}-relationships`)],on:{"change.subject":{actions:Bt({subject:({event:e})=>e.subject})},close:"closed"}},closed:{id:"closed",type:"final"}}}),iYe=aYe;function lYe(e){const r=[],n=[],o=new Map,a=x8.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?lc.Compound:lc.Element,style:{width:s.width,height:s.height},initialWidth:s.width,initialHeight:s.height,...c&&{parentId:c.id}},g=s.modelRef,v={navigateTo:s.navigateTo??null};switch(!0){case d:{r.push({...f,type:"compound",data:{id:p,column:s.column,title:s.title,color:s.color,style:s.style,depth:s.depth??0,icon:s.icon??"none",ports:s.ports,fqn:g,...v}});break}default:r.push({...f,type:"element",data:{id:p,column:s.column,fqn:g,title:s.title,technology:s.technology,description:s.description??null,height:s.height,width:s.width,color:s.color,shape:s.shape,icon:s.icon??"none",ports:s.ports,style:s.style,tags:s.tags,...v}})}}for(const{source:s,target:c,relationId:d,label:u,technology:p,description:f,navigateTo:g=null,color:v="gray",line:w="dashed",...x}of e.edges){const k=x.id;n.push({id:k,type:"relationship",source:s,target:c,sourceHandle:x.sourceHandle,targetHandle:x.targetHandle,deletable:!1,data:{relationId:d,label:u,color:v,navigateTo:g,line:w,description:f??null,...p&&{technology:p}}})}return{xynodes:r,xyedges:n,bounds:e.bounds}}function qee(e){return"edgeId"in e?(He(pw(e.edgeId),"edgeId is required"),{edgeId:e.edgeId}):{source:e.source,target:e.target}}const Hee={x:"22px",y:"22px"},sYe=ns({actions:{"xyflow:fitDiagram":({context:e},r)=>{let{duration:n,bounds:o}=r??{};n??=450;const{xyflow: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=Ws(o,s,c,xi,l,Hee);a.setViewport(d,n>0?{duration:n}:void 0).catch(console.error)}else a.fitView({minZoom:xi,maxZoom:l,padding:Hee,...n>0&&{duration:n,interpolate:"smooth"}}).catch(console.error)},"xyflow:updateNodeInternals":({context:e})=>{He(e.xystore,"xystore is not initialized");const{domNode:r,updateNodeInternals:n}=e.xystore.getState(),o=new Set(e.xyedges.flatMap(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}=lYe(r.data);let i=e.initialized;return i.xydata||(i={...i,xydata:!0}),{initialized:i,xynodes:B2(e.xynodes,n),xyedges:Ez(e.xyedges,o),bounds:Ir(e.bounds,a)?e.bounds:a}}),"open relationship source":rs(({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:qee(e),viewId:e.viewId,bounds:{x:0,y:0,width:200,height:200},initialized:{xydata:!1,xyflow:!1},xyflow:null,xystore:null,xynodes:[],xyedges:[]}),states:{initializing:{on:{"xyflow.init":{actions:"updateXYFlow",target:"isReady"},"update.layoutData":{actions:"updateLayoutData",target:"isReady"},close:{target:"closed"}}},isReady:{always:[{guard:"isReady",actions:[{type:"xyflow:fitDiagram",params:{duration:0}},ia({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)}}),ui("undim.edges"),ui("dim.nonhovered.edges"),ia({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)}),ui("dim.nonhovered.edges"),ia({type:"undim.edges"},{id:"undim.edges",delay:400})]},"dim.nonhovered.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(r=>tr.setDimmed(r,r.data.hovered!==!0))})},"undim.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.some(r=>r.selected===!0)?e.xyedges.map(r=>tr.setDimmed(r,r.selected!==!0?r.data.dimmed||"immediate":!1)):e.xyedges.map(tr.setDimmed(!1))})},"xyflow.selectionChange":{actions:rs(({event:e,context:r,enqueue:n})=>{e.edges.length===0&&r.xyedges.some(o=>o.data.dimmed)&&!r.xyedges.some(o=>o.data.hovered)&&n.raise({type:"undim.edges"})})},"update.layoutData":{actions:["updateLayoutData",ui("fitDiagram"),ia({type:"fitDiagram",duration:0},{id:"fitDiagram",delay:50}),ia({type:"xyflow.updateNodeInternals"},{delay:75})]},"xyflow.init":{actions:"updateXYFlow"},"xyflow.applyNodeChanges":{actions:Bt({xynodes:({context:e,event:r})=>rw(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:Bt({xyedges:({context:e,event:r})=>nw(r.changes,e.xyedges)})},"xyflow.paneDblClick":{actions:"xyflow:fitDiagram"},"xyflow.edgeClick":{actions:"open relationship source"},"navigate.to":{actions:Bt({subject:({event:e})=>qee(e.params),viewId:({context:e,event:r})=>r.params.viewId??e.viewId})},close:{target:"closed"}},exit:Bt({xyedges:[],xynodes:[],initialized:{xydata:!1,xyflow:!1},xyflow:null,xystore:null})},closed:{type:"final"}},on:{fitDiagram:{actions:{type:"xyflow:fitDiagram",params:rp("event")}},"xyflow.resized":{actions:[ui("fitDiagram"),ia({type:"fitDiagram"},{id:"fitDiagram",delay:200})]},"xyflow.updateNodeInternals":{actions:"xyflow:updateNodeInternals"}}}),cYe=sYe;var Pd={},ft={},Uee=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},wm={},Wee;function zz(){if(Wee)return wm;Wee=1,Object.defineProperty(wm,"__esModule",{value:!0});function e(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof Uee<"u")return Uee}function r(){const 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 wm.devToolsAdapter=o,wm.getGlobal=e,wm.registerService=n,wm}var Gee;function I2(){if(Gee)return ft;Gee=1;var e=zz();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(j(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,De={},{clock:Fe,logger:rt}=ee,lt={schedule:(Ke,pt,vt,Lt,No=Math.random().toString(36).slice(2))=>{const uh={source:Ke,target:pt,event:vt,delay:Lt,id:No,startedAt:Date.now()},Va=F(Ke,No);Ze._snapshot._scheduledEvents[Va]=uh;const su=Fe.setTimeout(()=>{delete De[Va],delete Ze._snapshot._scheduledEvents[Va],Ze._relay(Ke,pt,vt)},Lt);De[Va]=su},cancel:(Ke,pt)=>{const vt=F(Ke,pt),Lt=De[vt];delete De[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)}}},Ot=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:Ot,_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:uh,id:Va}=Ke[pt];lt.schedule(vt,Lt,No,uh,Va)}},_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 O={clock:{setTimeout:(J,ee)=>setTimeout(J,ee),clearTimeout:J=>clearTimeout(J)},logger:console.log.bind(console),devTools:!1};class W{constructor(ee,oe){this.logic=ee,this._snapshot=void 0,this.clock=void 0,this.options=void 0,this.id=void 0,this.mailbox=new r(this._process.bind(this)),this.observers=new Set,this.eventListeners=new Map,this.logger=void 0,this._processingStatus=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={...O,...oe},{clock:le,logger:ve,parent:De,syncSnapshot:Fe,id:rt,systemId:lt,inspect:Ot}=ie;this.system=De?De.system:G(this,{clock:le,logger:ve}),Ot&&!De&&this.system.inspect(H(Ot)),this.sessionId=this.system._bookId(),this.id=rt??this.sessionId,this.logger=oe?.logger??this.system._logger,this.clock=oe?.clock??this.system._clock,this._parent=De,this._syncSnapshot=Fe,this.options=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(De){w(De)}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:De,input:Fe,syncSnapshot:rt}){const lt=typeof De=="string"?V(ee.machine,De):De,Ot=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:Ot,src:De,parent:J.self,syncSnapshot:rt,systemId:ve,input:Ke})),[Gr(ee,{children:{...ee.children,[Ot]:Ze}}),{id:le,systemId:ve,actorRef:Ze,src:De,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(De,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,De=typeof ve=="string"?ee.children[ve]:ve;let Fe=ee.children;return De&&(Fe={...Fe},delete Fe[De.id]),[Gr(ee,{children:Fe}),De,void 0]}function xe(J,ee){if(ee){if(J.system._unregister(ee),ee._processingStatus!==Z.Running){J.stopChild(ee);return}J.defer(()=>{J.stopChild(ee)})}}function je(J){function ee(oe,ie){}return ee.type="xstate.stopChild",ee.actorRef=J,ee.resolve=pe,ee.execute=xe,ee}const Be=je;function Je(J,ee,{stateValue:oe}){if(typeof oe=="string"&&Ht(oe)){const 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 It(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",De=ve?J:le.implementations.guards[typeof J=="string"?J:J.type];if(!ve&&!De)throw new Error(`Guard '${typeof J=="string"?J:J.type}' is not implemented.'.`);if(typeof De!="function")return Et(De,ee,oe,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 De?De.check(ie,Fe,De):De(Fe,rt)}const be=J=>J.type==="atomic"||J.type==="final";function ke(J){return Object.values(J.states).filter(ee=>ee.type!=="history")}function Ye(J,ee){const oe=[];if(ee===J)return oe;let ie=J.parent;for(;ie&&ie!==ee;)oe.push(ie),ie=ie.parent;return oe}function yt(J){const ee=new Set(J),oe=Tr(ee);for(const ie of ee)if(ie.type==="compound"&&(!oe.get(ie)||!oe.get(ie).length))ua(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=ua(le);for(const De of ve)ee.add(De)}}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 Tr(J){const ee=new Map;for(const oe of J)ee.has(oe)||ee.set(oe,[]),oe.parent&&(ee.has(oe.parent)||ee.set(oe.parent,[]),ee.get(oe.parent).push(oe));return ee}function er(J,ee){const oe=yt(ee);return xt(J,Tr(oe))}function qt(J,ee){return ee.type==="compound"?ke(ee).some(oe=>oe.type==="final"&&J.has(oe)):ee.type==="parallel"?ke(ee).every(oe=>qt(J,oe)):ee.type==="final"}const Ht=J=>J[0]===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(lu(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,De=Number.isNaN(+ie)?ie:+ie,Fe=oe(De);return A(ve).map(rt=>({...rt,event:Fe,delay:De}))}).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),De={...oe,actions:A(oe.actions),guard:oe.guard,target:ve,source:J,reenter:le,eventType:ee,toJSON:()=>({...De,source:`#${J.id}`,target:ve?ve.map(Fe=>`#${Fe.id}`):void 0})};return De}function Wn(J){const ee=new Map;if(J.config.on)for(const oe of Object.keys(J.config.on)){if(oe===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 xs(J,oe.slice(1));const le=ie?J.key+oe:oe;if(J.parent)try{return xs(J.parent,le)}catch(ve){throw new Error(`Invalid transition definition for state node '${J.id}': -${ve.message}`)}else throw new Error(`Invalid target: "${oe}" is not a valid target from the root node. Did you mean ".${oe}"?`)})}function Yo(J){const ee=L(J.config.target);return ee?{target:ee.map(oe=>typeof oe=="string"?xs(J.parent,oe):oe)}:J.parent.initial}function jo(J){return J.type==="history"}function ua(J){const ee=Dl(J);for(const oe of ee)for(const ie of Ye(oe,J))ee.add(ie);return ee}function Dl(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 xs(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 ws(J,ee){if(typeof ee=="string"){const le=J.states[ee];if(!le)throw new Error(`State '${ee}' does not exist on '${J.id}'`);return[J,le]}const oe=Object.keys(ee),ie=oe.map(le=>Ao(J,le)).filter(Boolean);return[J.machine.root,J].concat(ie,oe.reduce((le,ve)=>{const De=Ao(J,ve);if(!De)return le;const Fe=ws(De,ee[ve]);return le.concat(Fe)},[]))}function Rc(J,ee,oe,ie){const le=Ao(J,ee).next(oe,ie);return!le||!le.length?J.next(oe,ie):le}function Ml(J,ee,oe,ie){const le=Object.keys(ee),ve=Ao(J,le[0]),De=ks(ve,ee[le[0]],oe,ie);return!De||!De.length?J.next(oe,ie):De}function lh(J,ee,oe,ie){const le=[];for(const ve of Object.keys(ee)){const De=ee[ve];if(!De)continue;const Fe=Ao(J,ve),rt=ks(Fe,De,oe,ie);rt&&le.push(...rt)}return le.length?le:J.next(oe,ie)}function ks(J,ee,oe,ie){return typeof ee=="string"?Rc(J,ee,oe,ie):Object.keys(ee).length===1?Ml(J,ee,oe,ie):lh(J,ee,oe,ie)}function tu(J){return Object.keys(J.states).map(ee=>J.states[ee]).filter(ee=>ee.type==="history")}function Xo(J,ee){let oe=J;for(;oe.parent&&oe.parent!==ee;)oe=oe.parent;return oe.parent===ee}function Tc(J,ee){const oe=new Set(J),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 _s(J,ee,oe){const ie=new Set;for(const le of J){let ve=!1;const De=new Set;for(const Fe of ie)if(Tc(Nr([le],ee,oe),Nr([Fe],ee,oe)))if(Xo(le.source,Fe.source))De.add(Fe);else{ve=!0;break}if(!ve){for(const Fe of De)ie.delete(Fe);ie.add(le)}}return Array.from(ie)}function ru(J){const[ee,...oe]=J;for(const ie of Ye(ee,void 0))if(oe.every(le=>Xo(le,ie)))return ie}function Ss(J,ee){if(!J.target)return[];const oe=new Set;for(const ie of J.target)if(jo(ie))if(ee[ie.id])for(const le of ee[ie.id])oe.add(le);else for(const le of Ss(Yo(ie),ee))oe.add(le);else oe.add(ie);return[...oe]}function Zo(J,ee){const oe=Ss(J,ee);if(!oe)return;if(!J.reenter&&oe.every(le=>le===J.source||Xo(le,J.source)))return J.source;const ie=ru(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=Zo(le,oe);le.reenter&&le.source===ve&&ie.add(ve);for(const De of ee)Xo(De,ve)&&ie.add(De)}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 De=new Set(ee._nodes);let Fe=ee.historyValue;const rt=_s(J,De,Fe);let lt=ee;le||([lt,Fe]=Ri(lt,ie,oe,rt,De,Fe,ve,oe.actionExecutor)),lt=ho(lt,ie,oe,rt.flatMap(Ze=>Ze.actions),ve,void 0),lt=jc(lt,ie,oe,rt,De,ve,Fe,le);const Ot=[...De];lt.status==="done"&&(lt=ho(lt,ie,oe,Ot.sort((Ze,Ke)=>Ke.order-Ze.order).flatMap(Ze=>Ze.exit),ve,void 0));try{return Fe===ee.historyValue&&Mn(ee._nodes,De)?lt:Gr(lt,{_nodes:Ot,historyValue:Fe})}catch(Ze){throw Ze}}function Nl(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 jc(J,ee,oe,ie,le,ve,De,Fe){let rt=J;const lt=new Set,Ot=new Set;sh(ie,De,Ot,lt),Fe&&Ot.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(Ot.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:Nl(rt,ee,oe,rt.machine.root,No)})}}return rt}function sh(J,ee,oe,ie){for(const le of J){const ve=Zo(le,ee);for(const Fe of le.target||[])!jo(Fe)&&(le.source!==Fe||le.source!==ve||le.reenter)&&(ie.add(Fe),oe.add(Fe)),La(Fe,ee,oe,ie);const De=Ss(le,ee);for(const Fe of De){const rt=Ye(Fe,ve);ve?.type==="parallel"&&rt.push(ve),zi(ie,ee,oe,rt,!le.source.parent&&le.reenter?void 0:ve)}}}function La(J,ee,oe,ie){if(jo(J))if(ee[J.id]){const le=ee[J.id];for(const ve of le)ie.add(ve),La(ve,ee,oe,ie);for(const ve of le)Pl(ve,J.parent,ie,ee,oe)}else{const le=Yo(J);for(const ve of le.target)ie.add(ve),le===J.parent?.initial&&oe.add(J.parent),La(ve,ee,oe,ie);for(const ve of le.target)Pl(ve,J.parent,ie,ee,oe)}else if(J.type==="compound"){const[le]=J.initial.target;jo(le)||(ie.add(le),oe.add(le)),La(le,ee,oe,ie),Pl(le,J,ie,ee,oe)}else if(J.type==="parallel")for(const le of ke(J).filter(ve=>!jo(ve)))[...ie].some(ve=>Xo(ve,le))||(jo(le)||(ie.add(le),oe.add(le)),La(le,ee,oe,ie))}function zi(J,ee,oe,ie,le){for(const ve of ie)if((!le||Xo(ve,le))&&J.add(ve),ve.type==="parallel")for(const De of ke(ve).filter(Fe=>!jo(Fe)))[...J].some(Fe=>Xo(Fe,De))||(J.add(De),La(De,ee,oe,J))}function Pl(J,ee,oe,ie,le){zi(oe,ie,le,Ye(J,ee))}function Ri(J,ee,oe,ie,le,ve,De,Fe){let rt=J;const lt=Nr(ie,le,ve);lt.sort((Ze,Ke)=>Ke.order-Ze.order);let Ot;for(const Ze of lt)for(const Ke of tu(Ze)){let pt;Ke.history==="deep"?pt=vt=>be(vt)&&Xo(vt,Ze):pt=vt=>vt.parent===Ze,Ot??={...ve},Ot[Ke.id]=Array.from(le).filter(pt)}for(const Ze of lt)rt=ho(rt,ee,oe,[...Ze.exit,...Ze.invoke.map(Ke=>je(Ke.id))],De,void 0),le.delete(Ze);return[rt,Ot||ve]}function Ti(J,ee){return J.implementations.actions[ee]}function pa(J,ee,oe,ie,le,ve){const{machine:De}=J;let Fe=J;for(const rt of ie){const lt=typeof rt=="function",Ot=lt?rt:Ti(De,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(!Ot||!("resolve"in Ot)){oe.actionExecutor({type:typeof rt=="string"?rt:typeof rt=="object"?rt.type:rt.name||"(anonymous)",info:Ze,params:Ke,exec:Ot});continue}const pt=Ot,[vt,Lt,No]=pt.resolve(oe,Fe,Ze,Ke,Ot,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=pa(Fe,ee,oe,No,le,ve))}return Fe}function ho(J,ee,oe,ie,le,ve){const De=ve?[]:void 0,Fe=pa(J,ee,oe,ie,{internalQueue:le,deferredActorIds:ve},De);return De?.forEach(([rt,lt])=>{rt.retryResolve(oe,Fe,lt)}),Fe}function Wr(J,ee,oe,ie){let le=J;const ve=[];function De(lt,Ot,Ze){oe.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:oe.self,event:Ot,snapshot:lt,_transitions:Ze}),ve.push(lt)}if(ee.type===d)return le=Gr(Ac(le,ee,oe),{status:"stopped"}),De(le,ee,[]),{snapshot:le,microstates:ve};let Fe=ee;if(Fe.type!==s){const lt=Fe,Ot=I(lt),Ze=Dc(lt,le);if(Ot&&!Ze.length)return le=Gr(J,{status:"error",error:lt.error}),De(le,lt,[]),{snapshot:le,microstates:ve};le=Do(Ze,J,oe,Fe,!1,ie),De(le,lt,Ze)}let rt=!0;for(;le.status==="active";){let lt=rt?Fa(le,Fe):[];const Ot=lt.length?le:void 0;if(!lt.length){if(!ie.length)break;Fe=ie.shift(),lt=Dc(Fe,le)}le=Do(lt,le,oe,Fe,!1,ie),rt=le!==Ot,De(le,Fe,lt)}return le.status!=="active"&&Ac(le,Fe,oe),{snapshot:le,microstates:ve}}function Ac(J,ee,oe){return ho(J,ee,oe,Object.values(J.children).map(ie=>je(ie)),[],void 0)}function Dc(J,ee){return ee.machine.getTransitionData(ee,J)}function Fa(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 De of ve.always)if(De.guard===void 0||Et(De.guard,J.context,ee,J)){oe.add(De);break e}}return _s(Array.from(oe),new Set(J._nodes),J.historyValue)}function ji(J,ee){const oe=yt(ws(J,ee));return er(J,[...oe])}function nu(J){return!!J&&typeof J=="object"&&"machine"in J&&"value"in J}const Es=function(J){return k(J,this.value)},ou=function(J){return this.tags.has(J)},ch=function(J){const ee=this.machine.getTransitionData(this,J);return!!ee?.length&&ee.some(oe=>oe.target!==void 0||oe.actions.length)},Cs=function(){const{_nodes:J,tags:ee,machine:oe,getMeta:ie,toJSON:le,can:ve,hasTag:De,matches:Fe,...rt}=this;return{...rt,tags:Array.from(ee)}},$s=function(){return this._nodes.reduce((J,ee)=>(ee.meta!==void 0&&(J[ee.id]=ee.meta),J),{})};function Mo(J,ee){return{status:J.status,output:J.output,error:J.error,machine:ee,context:J.context,_nodes:J._nodes,value:er(ee.root,J._nodes),tags:new Set(J._nodes.flatMap(oe=>oe.tags)),children:J.children,historyValue:J.historyValue||{},matches:Es,hasTag:ou,can:ch,getMeta:$s,toJSON:Cs}}function Gr(J,ee={}){return Mo({...J,...ee},J.machine)}function au(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 dh(J,ee){const{_nodes:oe,tags:ie,machine:le,children:ve,context:De,can:Fe,hasTag:rt,matches:lt,getMeta:Ot,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:Ai(De),children:pt,historyValue:au(Ke.historyValue)}}function Ai(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=Ai(ie);le!==ie&&(ee??=Array.isArray(J)?J.slice():{...J},ee[oe]=le)}}return ee??J}function iu(J,ee,oe,ie,{event:le,id:ve,delay:De},{internalQueue:Fe}){const rt=ee.machine.implementations.delays;if(typeof le=="string")throw new Error(`Only event objects may be used with raise; use raise({ type: "${le}" }) instead`);const lt=typeof le=="function"?le(oe,ie):le;let Ot;if(typeof De=="string"){const Ze=rt&&rt[De];Ot=typeof Ze=="function"?Ze(oe,ie):Ze}else Ot=typeof De=="function"?De(oe,ie):De;return typeof Ot!="number"&&Fe.push(lt),[ee,{event:lt,id:ve,delay:Ot},void 0]}function Di(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 lu(J,ee){function oe(ie,le){}return oe.type="xstate.raise",oe.event=J,oe.id=ee?.id,oe.delay=ee?.delay,oe.resolve=iu,oe.execute=Di,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=Dl,ft.getPersistedSnapshot=dh,ft.getStateNodeByPath=xs,ft.getStateNodes=ws,ft.interpret=Q,ft.isInFinalState=qt,ft.isMachineSnapshot=nu,ft.isStateId=Ht,ft.macrostep=Wr,ft.mapValues=z,ft.matchesState=k,ft.microstep=Do,ft.not=St,ft.or=It,ft.pathToStateValue=$,ft.raise=lu,ft.resolveActionsAndContext=ho,ft.resolveReferencedActor=V,ft.resolveStateValue=ji,ft.spawnChild=ce,ft.stateIn=st,ft.stop=Be,ft.stopChild=je,ft.toArray=A,ft.toObserver=H,ft.toStatePath=C,ft.toTransitionConfigArray=P,ft.transitionNode=ks,ft}var Yee;function dYe(){if(Yee)return Pd;Yee=1,Object.defineProperty(Pd,"__esModule",{value:!0});var e=I2();return zz(),Pd.and=e.and,Pd.evaluateGuard=e.evaluateGuard,Pd.not=e.not,Pd.or=e.or,Pd.stateIn=e.stateIn,Pd}var Bd=dYe();const uYe=B3(({sendBack:e})=>{const r=$w([["Escape",n=>{n.stopPropagation(),e({type:"close"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),pl=ns({actors:{relationshipDetails:cYe,elementDetails:iYe,relationshipsBrowser:Vee,hotkey:uYe},guards:{"has overlays?":({context:e})=>e.overlays.length>0,"close specific overlay?":({context:e,event:r})=>(ht(r,"close"),pw(r.actorId)&&e.overlays.some(n=>n.id===r.actorId)),"last: is relationshipDetails?":({context:e})=>dd(e.overlays)?.type==="relationshipDetails","last: is relationshipsBrowser?":({context:e})=>dd(e.overlays)?.type==="relationshipsBrowser"}}),pYe=()=>pl.enqueueActions(({context:e,enqueue:r})=>{if(e.overlays.length===0)return;const n=dd(e.overlays)?.id;n&&(r.sendTo(n,{type:"close"}),r.stopChild(n),r.assign({overlays:e.overlays.filter(o=>o.id!==n)}))}),hYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"close");const o=n.actorId;if(!pw(o))return;const 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)}))}),Xee=()=>pl.enqueueActions(({context:e,enqueue:r})=>{for(const{id:n}of U$e(e.overlays))r.sendTo(n,{type:"close"}),r.stopChild(n);r.assign({overlays:[]})}),fYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{if(ht(n,"open.elementDetails"),e.overlays.some(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}]})}),mYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipDetails");const o=dd(e.overlays);if(o?.type==="relationshipDetails"){r.sendTo(o.id,{...n,type:"navigate.to"});return}const 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"}]})}),gYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipsBrowser");const o=dd(e.overlays);if(o?.type==="relationshipsBrowser"){r.sendTo(o.id,{type:"navigate.to",subject:n.subject,viewId:n.viewId});return}const 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}]})}),Zee=()=>pl.enqueueActions(({enqueue:e,event:r})=>{switch(ht(r,["open.elementDetails","open.relationshipDetails","open.relationshipsBrowser"]),r.type){case"open.elementDetails":e(fYe());break;case"open.relationshipDetails":e(mYe());break;case"open.relationshipsBrowser":e(gYe());break}}),yYe=()=>pl.spawnChild("hotkey",{id:"hotkey"}),Kee=()=>pl.stopChild("hotkey"),Qee=()=>pl.enqueueActions(({enqueue:e,context:r})=>{r.overlays.length===0&&e.raise({type:"close"})}),vYe=pl.createMachine({id:"overlays",context:()=>({seq:1,overlays:[]}),initial:"idle",states:{idle:{on:{"open.*":{actions:Zee(),target:"active"}}},active:{entry:[yYe()],exit:[Kee()],on:{"open.*":{actions:Zee()},close:[{guard:Bd.not("has overlays?"),target:"idle"},{guard:"close specific overlay?",actions:[hYe(),Qee()]},{actions:[pYe(),Qee()]}],"close.all":{actions:[Xee()],target:"idle"}}},final:{entry:[Xee(),Kee()],type:"final"}}}),bYe=vYe,xYe=ns({actions:{"change searchValue":Bt({searchValue:({event:e,context:r})=>(ht(e,["change.search","open"]),e.search??r.searchValue)}),"reset pickViewFor":Bt({pickViewFor:()=>null})}}).createMachine({id:"search",context:{openedWithSearch:null,searchValue:"",pickViewFor:null},initial:"inactive",on:{close:{target:".inactive",actions:"reset pickViewFor"}},states:{inactive:{on:{open:{target:"opened",actions:[Bt({openedWithSearch:({event:e})=>e.search??null,searchValue:({event:e,context:r})=>e.search??r.searchValue})]}}},opened:{on:{open:{actions:"change searchValue"},"change.search":{actions:"change searchValue"},"pickview.open":{target:"pickView",actions:Bt({pickViewFor:({event:e})=>e.elementFqn})}}},pickView:{on:{"pickview.close":{target:"opened",actions:"reset pickViewFor"}}}}}),wYe=xYe,kYe=B3(({sendBack:e})=>{const r=$w([["Escape",o=>{o.stopPropagation(),e({type:"key.esc"})},{preventDefault:!0}]]),n=$w([["ArrowLeft",o=>{o.stopPropagation(),e({type:"key.arrow.left"})},{preventDefault:!0}],["ArrowUp",o=>{o.stopPropagation(),e({type:"key.arrow.up"})},{preventDefault:!0}],["ArrowRight",o=>{o.stopPropagation(),e({type:"key.arrow.right"})},{preventDefault:!0}],["ArrowDown",o=>{o.stopPropagation(),e({type:"key.arrow.down"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r),document.body.addEventListener("keydown",n,{capture:!0}),()=>{document.body.removeEventListener("keydown",r),document.body.removeEventListener("keydown",n,{capture:!0})}}),_Ye=B3(({sendBack:e})=>{const r=()=>{e({type:"media.print.on"})},n=()=>{e({type:"media.print.off"})};return window.addEventListener("beforeprint",r),window.addEventListener("afterprint",n),()=>{window.removeEventListener("beforeprint",r),window.removeEventListener("afterprint",n)}}),O2=e=>{let r=e.toggledFeatures;const n=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}},Rz=e=>O2(e).enableReadOnly,Qe=ns({actors:{hotkeyActorLogic:kYe,overlaysActorLogic:bYe,searchActorLogic:wYe,mediaPrintActorLogic:_Ye,editorActor:Aee},guards:{isReady:({context:e})=>e.initialized.xydata&&e.initialized.xyflow,"enabled: Editor":({context:e})=>e.features.enableEditor,"enabled: FitView":({context:e})=>e.features.enableFitView,"enabled: FocusMode":({context:e})=>e.features.enableFocusMode&&Rz(e),"enabled: Readonly":({context:e})=>Rz(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})=>!Rz(e),"is dynamic view":({context:e})=>e.view._type==="dynamic","is same view":({context:e,event:r})=>{if(ht(r,["update.view","navigate.to"]),r.type==="update.view")return e.view.id===r.view.id;if(r.type==="navigate.to")return e.view.id===r.viewId;Qo(r.type)},"is another view":({context:e,event:r})=>{if(ht(r,["update.view","navigate.to"]),r.type==="update.view")return e.view.id!==r.view.id;if(r.type==="navigate.to")return e.view.id!==r.viewId;Qo(r.type)},"click: node has modelFqn":({event:e})=>(ht(e,"xyflow.nodeClick"),"modelFqn"in e.node.data),"click: selected node":({event:e})=>(ht(e,"xyflow.nodeClick"),e.node.selected===!0),"click: same node":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.lastClickedNode?.id===r.node.id),"click: focused node":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.focusedNode===r.node.id),"click: node has connections":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.xyedges.some(n=>n.source===r.node.id||n.target===r.node.id)),"click: selected edge":({event:e})=>(ht(e,["xyflow.edgeClick","xyflow.edgeDoubleClick"]),e.edge.selected===!0||e.edge.data.active===!0)}}),Rn={idle:"#idle",focused:"#focused",walkthrough:"#walkthrough",printing:"#printing",navigating:"#navigating"},SYe=[["path",{d:"M3 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M9 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0",key:"svg-1"}],["path",{d:"M13 11v-4a4 4 0 1 1 8 0v4",key:"svg-2"}]],Jee=wt("outline","lock-open-2","LockOpen2",SYe),EYe=[["path",{d:"M5 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-6z",key:"svg-0"}],["path",{d:"M11 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0",key:"svg-1"}],["path",{d:"M8 11v-4a4 4 0 1 1 8 0v4",key:"svg-2"}]],CYe=wt("outline","lock","Lock",EYe),$Ye=e=>{const r=O2(e).enableCompareWithLatest&&!!e.view.drifts&&e.view._layout==="auto",n=e.view._type==="dynamic"&&e.dynamicViewVariant==="sequence",o=!Kn(e.activeWalkthrough);return{visible:e.features.enableEditor&&o,disabled:r||n,isReadOnly:e.toggledFeatures.enableReadOnly??!1}},zYe=()=>{const{visible:e,disabled:r,isReadOnly:n}=pi($Ye),o=Nt();return y.jsx(Cn,{mode:"popLayout",children:e&&y.jsxs(pr,{component:wi,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(Jee,{size:14,stroke:2,style:{display:n?"none":void 0}}),y.jsx(CYe,{size:14,stroke:2,style:{display:n?void 0:"none"}}),y.jsx(zr,{className:fe({fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8}),style:{display:n?"block":"none"},children:"Edit"})]})})},RYe=[["path",{d:"M6 4v16a1 1 0 0 0 1.524 .852l13 -8a1 1 0 0 0 0 -1.704l-13 -8a1 1 0 0 0 -1.524 .852z",key:"svg-0"}]],TYe=wt("filled","player-play-filled","PlayerPlayFilled",RYe),ete=S.forwardRef((e,r)=>y.jsx(Vn,{variant:"filled",size:"xs",fw:"500",...e,ref:r,component:wi,whileTap:{scale:.95},layout:"position",layoutId:"trigger-dynamic-walkthrough",className:fe({flexShrink:0})}));function jYe(){const{enableReadOnly:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=m0();let 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(bee,{label:a,children:y.jsx(ete,{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(TYe,{size:10}),children:"Start"})})}const AYe=S.forwardRef(({value:e,onChange:r},n)=>y.jsx(zr,{ref:n,layout:"position",children:y.jsx(Of,{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 DYe(){const e=pi(n=>n.dynamicViewVariant),r=Nt();return y.jsxs(Cn,{children:[y.jsx(AYe,{value:e,onChange:n=>{r.switchDynamicViewVariant(n)}}),y.jsx(jYe,{},"trigger-dynamic-walkthrough")]})}const tte=S.memo(()=>{const{enableSearch:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=lf();return y.jsx(Cn,{children:e&&!r&&y.jsxs(pr,{component:wi,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(mz,{size:14,stroke:2.5}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8,whiteSpace:"nowrap"},children:o?"⌘ + K":"Ctrl + K"})]})})});tte.displayName="SearchControl";const MYe=({context:e})=>{const r=e.view.drifts??null;if(!e.features.enableCompareWithLatest||!r||r.length===0)return{hasEditor:!1,isEnabled:!1,isEditable:!1,isActive:!1,drifts:[],canApplyLatest:!1,layout:e.view._layout??"auto"};const{enableCompareWithLatest:n,enableReadOnly:o}=O2(e);return{hasEditor:e.features.enableEditor,isEnabled:!0,isEditable:!o,isActive:n===!0,drifts:r,canApplyLatest:!r.includes("type-changed"),layout:e.view._layout??"auto"}};function Tz(){const e=Xf(),r=pn(e,MYe,Ir),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 NYe=[["path",{d:"M12 9v4",key:"svg-0"}],["path",{d:"M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0z",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]],rte=wt("outline","alert-triangle","AlertTriangle",NYe),nte=S.memo(()=>{const[e,{toggleCompare:r}]=Tz(),n=bm(),{drifts:o,isActive:a,isEnabled:i}=e;return y.jsx(Cn,{propagate:!0,children:i&&!a&&y.jsxs(Bf,{position:"bottom-start",openDelay:600,closeDelay:200,floatingStrategy:"absolute",offset:{mainAxis:4,crossAxis:-22},...n,children:[y.jsx(AS,{children:y.jsx(pr,{component:wi,layout:"position",onClick:l=>{l.stopPropagation(),r()},whileTap:{scale:.95,translateY:1},className:Ge("group",eQ({variant:"filled",type:"warning"}),qn({gap:"xxs",padding:"1.5",rounded:"sm",userSelect:"none",cursor:"pointer",fontSize:"xs",fontWeight:600})),children:a?y.jsx(y.Fragment,{children:"Stop Compare"}):y.jsx(rte,{size:18})})}),y.jsx(TS,{p:"0",children:y.jsxs(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"View is out of sync",children:[y.jsx(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"})]})})]})})});nte.displayName="ManualLayoutWarning";const PYe=({context:e})=>{const r=e.view,n=e.viewModel?.folder;return{folders:!n||n.isRoot?[]:n.breadcrumbs.map(o=>({folderPath:o.path,title:o.title})),viewId:r.id,viewTitle:e.viewModel?.title??(r.title&&n7(r.title))??"Untitled View",isDynamicView:(e.viewModel?._type??r._type)==="dynamic"}},ote=S.memo(()=>{const e=m0(),{enableNavigationButtons:r,enableDynamicViewWalkthrough:n}=sr(),{folders:o,viewTitle:a,isDynamicView:i}=pn(e.actorRef,PYe,tt),l=o.flatMap(({folderPath:c,title:d},u)=>[y.jsx(pr,{component:wi,className:Ge(N2({dimmed:!0,truncate:!0}),"mantine-active",fe({userSelect:"none",maxWidth:"200px",display:{base:"none","@/md":"block"}})),initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},title:d,onMouseEnter:()=>e.send({type:"breadcrumbs.mouseEnter.folder",folderPath:c}),onMouseLeave:()=>e.send({type:"breadcrumbs.mouseLeave.folder",folderPath:c}),onClick:p=>{p.stopPropagation(),e.send({type:"breadcrumbs.click.folder",folderPath:c})},children:d},c),y.jsx(xee,{},`separator-${u}`)]),s=y.jsx(pr,{component:wi,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:Ge("mantine-active",N2({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(_Ge,{},"burger-button"),r&&y.jsx(CGe,{},"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(TGe,{onOpen:()=>e.closeDropdown()}),y.jsx(NGe,{}),y.jsx(zYe,{})]},"actions"),n&&i&&y.jsx(DYe,{},"dynamic-view-controls"),y.jsx(tte,{},"search-control"),y.jsx(nte,{},"outdated-manual-layout-warning")]})});ote.displayName="NavigationPanelControls";const jz=S.forwardRef(({className:e,truncateLabel:r=!0,...n},o)=>y.jsx(IS,{...n,component:"button",classNames:CVe({truncateLabel:r}),className:Ge("group","mantine-active",e),ref:o}));jz.displayName="NavigationLink";const BYe=S.createContext(null),IYe=[],OYe=()=>{},LYe={projects:IYe,onProjectChange:OYe};function FYe(){return S.useContext(BYe)??LYe}function VYe(){const e=S.useContext(Sy);if(!e)throw new Error("No LikeC4ModelProvider found");return e.projectId}const qYe=S.memo(e=>{const{projects:r,onProjectChange:n}=FYe(),o=VYe();return r.length<=1?null:y.jsxs(Or,{gap:"0.5",alignItems:"baseline",children:[y.jsx(hr,{css:{fontWeight:"400",fontSize:"xxs",color:"likec4.panel.text.dimmed",userSelect:"none"},children:"Project"}),y.jsxs(tn,{withinPortal:!1,shadow:"md",position:"bottom-start",offset:{mainAxis:2},children:[y.jsx(w3,{children:y.jsx(Vn,{tabIndex:-1,autoFocus:!1,variant:"subtle",size:"compact-xs",color:"gray",classNames:{root:fe({fontWeight:"400",fontSize:"xxs",height:"auto",lineHeight:1.1,color:{_light:"mantine.colors.gray[9]"}}),section:fe({'&:is([data-position="right"])':{marginInlineStart:"1"}})},rightSection:y.jsx(i$,{opacity:.5,size:12,stroke:1.5}),children:o})}),y.jsx(vy,{children:r.map(({id:a,title:i})=>y.jsx(by,{onClick:l=>{if(o===a){l.stopPropagation();return}n(a)},children:i??a},a))})]})]})}),HYe=[["path",{d:"M10.52 2.614a2.095 2.095 0 0 1 2.835 -.117l.126 .117l7.905 7.905c.777 .777 .816 2.013 .117 2.836l-.117 .126l-7.905 7.905a2.094 2.094 0 0 1 -2.836 .117l-.126 -.117l-7.907 -7.906a2.096 2.096 0 0 1 -.115 -2.835l.117 -.126l7.905 -7.905zm5.969 9.535l.01 -.116l-.003 -.12l-.016 -.114l-.03 -.11l-.044 -.112l-.052 -.098l-.076 -.105l-.07 -.081l-3.5 -3.5l-.095 -.083a1 1 0 0 0 -1.226 0l-.094 .083l-.083 .094a1 1 0 0 0 0 1.226l.083 .094l1.792 1.793h-5.085l-.117 .007a1 1 0 0 0 0 1.986l.117 .007h5.085l-1.792 1.793l-.083 .094a1 1 0 0 0 1.403 1.403l.094 -.083l3.5 -3.5l.097 -.112l.05 -.074l.037 -.067l.05 -.112l.023 -.076l.025 -.117z",key:"svg-0"}]],UYe=wt("filled","direction-sign-filled","DirectionSignFilled",HYe),WYe=[["path",{d:"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z",key:"svg-0"}]],GYe=wt("filled","star-filled","StarFilled",WYe),YYe=[["path",{d:"M9 3a1 1 0 0 1 .608 .206l.1 .087l2.706 2.707h6.586a3 3 0 0 1 2.995 2.824l.005 .176v8a3 3 0 0 1 -2.824 2.995l-.176 .005h-14a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-11a3 3 0 0 1 2.824 -2.995l.176 -.005h4z",key:"svg-0"}]],XYe=wt("filled","folder-filled","FolderFilled",YYe),ate=ay({siblingSelector:"[data-likec4-focusable]",parentSelector:"[data-likec4-breadcrumbs-dropdown]",activateOnFocus:!1,loop:!0,orientation:"vertical"});function ZYe(e){return e.context.searchQuery.trim().length>=2}const ite=S.memo(()=>{const e=m0(),r=wz(ZYe);ja("paneClick",()=>{e.closeDropdown()}),ja("nodeClick",()=>{e.closeDropdown()}),ja("edgeClick",()=>{e.closeDropdown()});const n=ERe(o=>{e.send({type:"searchQuery.change",value:o})},250);return y.jsxs(Qs,{className:Ge("nowheel",Ey({layerStyle:"likec4.dropdown",gap:"xs",pointerEvents:"all"})),"data-likec4-breadcrumbs-dropdown":!0,onMouseLeave:()=>e.send({type:"dropdown.mouseLeave"}),onMouseEnter:()=>e.send({type:"dropdown.mouseEnter"}),children:[y.jsx(qYe,{}),y.jsx(Or,{gap:"xs",children:y.jsx(sXe,{defaultValue:e.actorRef.getSnapshot().context.searchQuery,onChange:n})}),y.jsx(oa,{scrollbars:"x",type:"auto",offsetScrollbars:"present",classNames:{root:fe({maxWidth:["calc(100vw - 50px)","calc(100cqw - 50px)"]})},styles:{viewport:{overscrollBehavior:"none"}},children:r?y.jsx(JYe,{}):y.jsx(aXe,{})})]})});ite.displayName="NavigationPanelDropdown";function KYe(e){return gx(e.context.searchQuery)}const QYe=JP(_a),JYe=S.memo(()=>{const e=Fo(),r=m0(),n=pn(r.actorRef,KYe),o=S.useDeferredValue(n),a=o.includes(_a),i=a?o.split(_a):o,[l,s]=S.useState([]);return S.useEffect(()=>{s(c=>{const d=Jr(e.views(),Is(u=>a&&u.$view.title?gx(u.$view.title).toLowerCase().includes(o):u.id.toLowerCase().includes(o)||!!u.title?.toLowerCase().includes(o)),jke(20),C1(),G$e((u,p)=>QYe(u.folder.path,p.folder.path)));return Ir(d,c)?c:d})},[e,o,a]),l.length===0?y.jsx("div",{children:"no results"}):y.jsx(oa,{scrollbars:"xy",offsetScrollbars:!1,className:fe({width:"100%",maxWidth:["calc(100vw - 250px)","calc(100cqw - 250px)"],maxHeight:["calc(100vh - 200px)","calc(100cqh - 200px)"]}),children:y.jsx(hp,{gap:"0.5",children:l.map(c=>y.jsx(tXe,{view:c,highlight:i,onClick:d=>{d.stopPropagation(),r.selectView(c.id)},"data-likec4-focusable":!0,onKeyDown:ate},c.id))})})}),eXe=qn({gap:"xxs",rounded:"sm",px:"xs",py:"xxs",_hover:{backgroundColor:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]"}},_focus:{outline:"none",color:"mantine.colors.primary.lightColor!",backgroundColor:"mantine.colors.primary.lightHover!"}}),lte=fe({_groupFocus:{color:"[inherit!]",transition:"none"}});function tXe({view:e,highlight:r,...n}){const o=e.folder,a=cte[e.id==="index"?"index":e._type],i=y.jsx(tc,{component:"div",className:Ge(lte,N2({truncate:!0}),fe({"& > mark":{backgroundColor:{base:"mantine.colors.yellow[2]/90",_dark:"mantine.colors.yellow[5]/80",_groupFocus:"[transparent]"},color:{_groupFocus:"[inherit!]"}}})),maw:350,highlight:r,children:e.title??e.id},e.id),l=Ge(n.className,"group",eXe);if(o.isRoot)return y.jsxs(pr,{...n,className:l,children:[a,i]});const s=o.breadcrumbs.map(c=>y.jsx(tc,{component:"div",className:Ge(fe({_groupHover:{color:"mantine.colors.dimmed"}}),lte,N2({dimmed:!0,truncate:!0})),maw:170,highlight:a9(r)?r:[],children:c.title},c.path));return s.push(y.jsxs(Or,{gap:"[4px]",children:[a,i]})),y.jsxs(pr,{...n,className:l,children:[ste,y.jsx(y3,{separator:y.jsx(Dd,{size:12,stroke:1.5}),separatorMargin:3,children:s})]})}const rXe=y.jsx(Dd,{size:12,stroke:1.5,className:"mantine-rotate-rtl"}),ste=y.jsx(XYe,{size:16,className:fe({opacity:{base:.3,_groupHover:.5,_groupActive:.5,_groupFocus:.5}})}),L2=fe({opacity:{base:.3,_dark:.5,_groupHover:.8,_groupActive:.8,_groupFocus:.8}}),cte={index:y.jsx(GYe,{size:16,className:L2}),element:y.jsx(bi,{size:18,stroke:2,className:L2}),deployment:y.jsx(iz,{size:16,stroke:1.5,className:L2}),dynamic:y.jsx(UYe,{size:18,className:L2})},nXe=oa.withProps({scrollbars:"y",className:fe({maxHeight:["calc(100vh - 160px)","calc(100cqh - 160px)"]})});function dte(e,r){return{folderPath:e.path,items:[...e.folders.map(n=>({type:"folder",folderPath:n.path,title:n.title,selected:r.selectedFolder.startsWith(n.path)})),...e.views.map(n=>({type:"view",viewType:n.id==="index"?"index":n._type,viewId:n.id,title:n.title??n.id,description:n.description.nonEmpty&&n.description.text||null,selected:n.id===r.viewModel?.id}))]}}const oXe=e=>{const r=e.viewModel;if(!r)return[];const n=r.$model,o=[dte(n.rootViewFolder,e)],a=n.viewFolder(e.selectedFolder);if(!a.isRoot)for(const i of a.breadcrumbs)o.push(dte(i,e));return o},aXe=S.memo(()=>{const e=xGe(oXe,tt);return y.jsx(Or,{gap:"xs",alignItems:"stretch",children:e.flatMap((r,n)=>[n>0&&y.jsx(sp,{orientation:"vertical"},"divider"+n),y.jsx(iXe,{data:r,isLast:n>0&&n==e.length-1},r.folderPath)])})});function iXe({data:e,isLast:r}){const n=S.useRef(null),o=xz(),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 Q5e(()=>{r&&n.current&&n.current.scrollIntoView({block:"nearest",inline:"nearest",behavior:"smooth"})}),y.jsx(hr,{mb:"1",ref:n,children:y.jsx(nXe,{children:y.jsx(hp,{gap:"0.5",children:e.items.map((i,l)=>y.jsx(lXe,{columnItem:i,onClick:a(i)},`${e.folderPath}/${i.type}/${l}`))})})})}function lXe({columnItem:e,...r}){switch(e.type){case"folder":return y.jsx(jz,{variant:"light",active:e.selected,label:e.title,leftSection:ste,rightSection:rXe,maw:"300px",miw:"200px",...r},e.folderPath);case"view":return y.jsx(jz,{variant:"filled",active:e.selected,label:e.title,description:e.description,leftSection:cte[e.viewType],maw:"300px",miw:"200px",...r},e.viewId);default:Qo(e)}}function sXe(e){const[r,n]=Ys({...e,finalValue:""});return y.jsx(Ra,{size:"xs",placeholder:"Search by title or id",variant:"unstyled",height:$e(26),value:r,onKeyDown:ate,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(mz,{size:14}),rightSectionPointerEvents:"all",rightSectionWidth:"min-content",rightSection:!e.value||tp(e.value)?null:y.jsx(Vn,{variant:"subtle",h:"100%",size:"compact-xs",color:"gray",onClick:o=>{o.stopPropagation(),n("")},children:"clear"})})}const cXe=Ed("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}});function dXe(e){const r=_$e(e.activeWalkthrough),n=r?e.xyedges.findIndex(o=>o.id===e.activeWalkthrough?.stepId):-1;return{isActive:r,isParallel:r&&Kn(e.activeWalkthrough?.parallelPrefix),hasNext:r&&n0,notes:r?e.xyedges[n]?.data?.notes??null:null}}const uXe=S.memo(()=>{const{isActive:e,notes:r}=pi(dXe),n=r?ur.from(r):ur.EMPTY;return y.jsx(Cn,{children:e&&!n.isEmpty&&y.jsx(mi.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(oa,{className:Ey({position:"absolute",layerStyle:"likec4.dropdown",gap:"sm",padding:"md",paddingTop:"xxs",pointerEvents:"all",maxWidth:"calc(100cqw - 32px)",minWidth:"calc(100cqw - 50px)",maxHeight:"calc(100cqh - 100px)",width:"max-content",cursor:"default",overflow:"auto",overscrollBehavior:"contain","@/sm":{minWidth:400,maxWidth:550},"@/lg":{maxWidth:700}}),type:"scroll",children:[y.jsx(cXe,{children:"Notes"}),y.jsx(Rp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})})})});function pXe({disabled:e=!1,onApplyLatestToManual:r,onResetManualLayout:n}){return y.jsxs(tn,{withinPortal:!1,floatingStrategy:"absolute",shadow:"lg",position:"bottom-start",offset:{mainAxis:4},disabled:e,children:[y.jsx(tn.Target,{children:y.jsxs(pr,{disabled:e,className:Ge("mantine-active",qn({gap:"2",py:"1.5",px:"2",lineHeight:"1",textStyle:"xs",fontWeight:"medium",layerStyle:"likec4.panel.action",userSelect:"none"})),children:[y.jsx(hr,{children:"Actions"}),y.jsx(i$,{size:12,stroke:2,opacity:.7})]})}),y.jsxs(tn.Dropdown,{children:[y.jsxs(tn.Item,{disabled:!r,onClick:r,rightSection:r&&y.jsx(_n,{onClick:nn,position:"right-start",label:y.jsxs(y.Fragment,{children:["Applies changes from the latest auto-layouted",y.jsx("br",{}),"to saved snapshot, preserving (as possible)",y.jsx("br",{}),"manual adjustments.",y.jsx("br",{}),y.jsx("br",{}),"You can undo this action."]}),children:y.jsx(r0,{size:14,stroke:1.7,opacity:.5})}),children:["Sync with latest",!r&&y.jsx(hr,{textStyle:"xs",children:"view type is changed"})]}),y.jsx(tn.Item,{onClick:n,children:"Remove manual layout"})]})]})}function hXe({value:e,onChange:r}){const n=S.useMemo(()=>[{value:"manual",label:"Saved manual"},{value:"auto",label:"Latest auto"}],[]);return y.jsx(zr,{layout:"position",children:y.jsx(Of,{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 ute=sp.withProps({mx:2,size:"xs",orientation:"vertical"});function fXe(){const[e,{toggleCompare:r,switchLayout:n,resetManualLayout:o,applyLatestToManual:a}]=Tz();return y.jsxs(y.Fragment,{children:[y.jsx(hr,{css:{textStyle:"xs",color:"likec4.panel.text",userSelect:"none"},children:"Compare"}),y.jsx(hXe,{value:e.layout,onChange:n}),e.hasEditor&&y.jsxs(Or,{gap:"1",children:[y.jsx(ute,{}),y.jsx(pXe,{disabled:e.layout==="auto",onResetManualLayout:o,onApplyLatestToManual:e.canApplyLatest?a:void 0}),y.jsx(ute,{})]}),y.jsx(cc,{size:"sm",onClick:i=>{i.stopPropagation(),r()},children:y.jsx(fp,{})})]})}const pte=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(fXe,{})})})});pte.displayName="ComparePanel";const g0=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,position:"right"}),mXe=[["path",{d:"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-1"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-2"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-3"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-4"}]],gXe=wt("outline","focus-centered","FocusCentered",mXe),yXe=()=>{const e=Nt();return y.jsx(g0,{label:"Center camera",children:y.jsx(cc,{onClick:()=>e.fitDiagram(),children:y.jsx(gXe,{})})})};fe({gap:"xxs",_empty:{display:"none"}}),fe({top:"md",left:"md",margin:"0",pointerEvents:"none","& :where(button, .action-icon, [role='dialog'])":{pointerEvents:"all"},"& .action-icon":{"--ai-size":"2rem"},"& .tabler-icon":{width:"65%",height:"65%"},_reduceGraphics:{"& .action-icon":{"--ai-radius":"0px"}}}),fe({shadow:{base:"md",_whenPanning:"none"}}),fe({"& .tabler-icon":{width:"65%",height:"65%"}});const F2=fe({flex:"1 1 40%",textAlign:"center",fontWeight:500,padding:"[4px 6px]",fontSize:"11px",zIndex:1}),vXe=fe({background:"mantine.colors.gray[2]",borderRadius:"sm",border:"1px solid",borderColor:"mantine.colors.gray[4]",_dark:{background:"mantine.colors.dark[5]",borderColor:"mantine.colors.dark[4]"}}),bXe=fe({position:"relative",borderRadius:"sm",background:"mantine.colors.gray[3]",boxShadow:"inset 1px 1px 3px 0px #00000024",_dark:{background:"mantine.colors.dark[7]"}}),xXe=fe({position:"absolute",width:8,height:8,border:"2px solid",borderColor:"mantine.colors.gray[5]",borderRadius:3,transform:"translate(-50%, -50%)"}),wXe=[["path",{d:"M5 4h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1",key:"svg-0"}],["path",{d:"M5 16h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1",key:"svg-1"}],["path",{d:"M15 12h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1",key:"svg-2"}],["path",{d:"M15 4h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1",key:"svg-3"}]],kXe=wt("outline","layout-dashboard","LayoutDashboard",wXe),_Xe=e=>({viewId:e.view.id,isManualLayout:e.view._layout==="manual",autoLayout:e.view.autoLayout}),SXe=()=>{const e=Nt(),[r,n]=S.useState(null),[o,a]=S.useState({}),{autoLayout:i,viewId:l,isManualLayout:s}=pi(_Xe),{ref:c,hovered:d}=b9(),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(kd,{children:y.jsx(g0,{label:"Change Auto Layout",children:y.jsx(cc,{children:y.jsx(kXe,{})})})}),y.jsx(Qs,{className:"likec4-top-left-panel",p:8,pt:6,opacity:d?.6:1,children:y.jsxs(Se,{pos:"relative",ref:n,children:[y.jsx(h3,{target:o[i.direction],parent:r,className:vXe}),y.jsx(Se,{mb:10,children:y.jsx(at,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Auto layout:"})}),y.jsxs(Js,{gap:2,wrap:"wrap",justify:"stretch",maw:160,children:[y.jsx(pr,{className:F2,ref:u("TB"),onClick:p("TB"),children:"Top-Bottom"}),y.jsx(pr,{className:F2,ref:u("BT"),onClick:p("BT"),children:"Bottom-Top"}),y.jsx(pr,{className:F2,ref:u("LR"),onClick:p("LR"),children:"Left-Right"}),y.jsx(pr,{className:F2,ref:u("RL"),onClick:p("RL"),children:"Right-Left"})]}),y.jsx(Se,{my:10,children:y.jsx(at,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Spacing:"})}),y.jsx(EXe,{ref:c,isVertical:i.direction==="TB"||i.direction==="BT",nodeSep:i.nodeSep,rankSep:i.rankSep,onChange:f},l)]})})]})},km=400,EXe=S.forwardRef(({isVertical:e,nodeSep:r,rankSep:n,onChange:o},a)=>{e||([r,n]=[n,r]);const i=h7(({x:f,y:g})=>{e||([f,g]=[g,f]),o(Math.round(f*km),Math.round(g*km))},[o,e],250,2e3),[l,s]=Ys({defaultValue:dRe({x:(r??100)/km,y:(n??120)/km}),onChange:i}),{ref:c}=kH(s);let d=Math.round(l.x*km),u=Math.round(l.y*km);e||([d,u]=[u,d]);const p=$r(c,a);return y.jsxs(Se,{ref:p,className:bXe,pt:"100%",children:[y.jsx(Se,{className:xXe,style:{left:`${l.x*100}%`,top:`${l.y*100}%`}}),y.jsx(Se,{pos:"absolute",left:2,bottom:2,children:y.jsxs(at,{component:"div",fz:8,c:"dimmed",fw:500,children:[u,", ",d]})})]})}),CXe=[["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M10 4l4 16",key:"svg-1"}],["path",{d:"M12 12l-8 2",key:"svg-2"}]],$Xe=wt("outline","layout-collage","LayoutCollage",CXe),zXe=[["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M4 12h8",key:"svg-1"}],["path",{d:"M12 15h8",key:"svg-2"}],["path",{d:"M12 9h8",key:"svg-3"}],["path",{d:"M12 4v16",key:"svg-4"}]],hte=wt("outline","layout-board-split","LayoutBoardSplit",zXe),RXe=[["path",{d:"M4 4l0 16",key:"svg-0"}],["path",{d:"M8 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-1"}]],TXe=wt("outline","layout-align-left","LayoutAlignLeft",RXe),jXe=[["path",{d:"M12 4l0 5",key:"svg-0"}],["path",{d:"M12 15l0 5",key:"svg-1"}],["path",{d:"M6 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-2"}]],AXe=wt("outline","layout-align-center","LayoutAlignCenter",jXe),DXe=[["path",{d:"M20 4l0 16",key:"svg-0"}],["path",{d:"M4 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-1"}]],MXe=wt("outline","layout-align-right","LayoutAlignRight",DXe),NXe=[["path",{d:"M4 4l16 0",key:"svg-0"}],["path",{d:"M9 8m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-1"}]],PXe=wt("outline","layout-align-top","LayoutAlignTop",NXe),BXe=[["path",{d:"M4 12l5 0",key:"svg-0"}],["path",{d:"M15 12l5 0",key:"svg-1"}],["path",{d:"M9 6m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-2"}]],IXe=wt("outline","layout-align-middle","LayoutAlignMiddle",BXe),OXe=[["path",{d:"M4 20l16 0",key:"svg-0"}],["path",{d:"M9 4m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-1"}]],LXe=wt("outline","layout-align-bottom","LayoutAlignBottom",OXe),FXe=[["path",{d:"M6 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-0"}],["path",{d:"M18 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M12 19h4.5c.71 0 1.372 -.212 1.924 -.576m1.545 -2.459a3.5 3.5 0 0 0 -3.469 -3.965h-.499m-4 0h-3.501a3.5 3.5 0 0 1 -2.477 -5.972m2.477 -1.028h3.5",key:"svg-2"}],["path",{d:"M3 3l18 18",key:"svg-3"}]],VXe=wt("outline","route-off","RouteOff",FXe),uc=({label:e,icon:r,onClick:n})=>y.jsx(g0,{label:e,withinPortal:!1,position:"top",children:y.jsx(cc,{classNames:{root:"action-icon",icon:fe({"& > svg":{width:"70%",height:"70%"}})},onClick:n,children:r})}),fte=S.memo(()=>{const e=Nt(),r=bm();return y.jsxs(br,{position:"right",offset:{mainAxis:12},clickOutsideEvents:["pointerdown"],...r,children:[y.jsx(kd,{children:y.jsx(g0,{label:"Manual layouting tools",children:y.jsx(cc,{children:y.jsx($Xe,{})})})}),y.jsx(Qs,{className:qn({gap:"0.5",layerStyle:"likec4.panel",padding:"1",pointerEvents:"all"}),children:y.jsxs(dp,{children:[y.jsx(uc,{label:"Align in columns",icon:y.jsx(hte,{}),onClick:n=>{n.stopPropagation(),e.align("Column")}}),y.jsx(uc,{label:"Align left",icon:y.jsx(TXe,{}),onClick:n=>{n.stopPropagation(),e.align("Left")}}),y.jsx(uc,{label:"Align center",icon:y.jsx(AXe,{}),onClick:n=>{n.stopPropagation(),e.align("Center")}}),y.jsx(uc,{label:"Align right",icon:y.jsx(MXe,{}),onClick:n=>{n.stopPropagation(),e.align("Right")}}),y.jsx(uc,{label:"Align in rows",icon:y.jsx(hte,{style:{transform:"rotate(90deg)"}}),onClick:n=>{n.stopPropagation(),e.align("Row")}}),y.jsx(uc,{label:"Align top",icon:y.jsx(PXe,{}),onClick:n=>{n.stopPropagation(),e.align("Top")}}),y.jsx(uc,{label:"Align middle",icon:y.jsx(IXe,{}),onClick:n=>{n.stopPropagation(),e.align("Middle")}}),y.jsx(uc,{label:"Align bottom",icon:y.jsx(LXe,{}),onClick:n=>{n.stopPropagation(),e.align("Bottom")}}),y.jsx(uc,{label:"Reset all control points",icon:y.jsx(VXe,{}),onClick:n=>{n.stopPropagation(),e.resetEdgeControlPoints()}})]})})]})});fte.displayName="ManualLayoutToolsButton";const qXe=()=>{const e=Nt();return y.jsx(g0,{label:"Switch to Read-only",children:y.jsx(cc,{onClick:()=>e.toggleFeature("ReadOnly"),children:y.jsx(Jee,{size:14,stroke:2})})})};function HXe(){const{enableReadOnly:e}=sr();return y.jsx(Cn,{children:!e&&y.jsx(zr,{layout:"position",className:Ey({gap:"xs",layerStyle:"likec4.panel",position:"relative",cursor:"pointer",padding:"xxs",pointerEvents:"all"}),initial:{opacity:0,translateX:-20},animate:{opacity:1,translateX:0},exit:{opacity:0,translateX:-20},children:y.jsxs(dp,{openDelay:600,closeDelay:120,children:[y.jsx(SXe,{}),y.jsx(fte,{}),y.jsx(yXe,{}),y.jsx(qXe,{})]})})})}const UXe=[["path",{d:"M17 4h-10a3 3 0 0 0 -3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3 -3v-10a3 3 0 0 0 -3 -3z",key:"svg-0"}]],WXe=wt("filled","player-stop-filled","PlayerStopFilled",UXe),GXe=[["path",{d:"M19.496 4.136l-12 7a1 1 0 0 0 0 1.728l12 7a1 1 0 0 0 1.504 -.864v-14a1 1 0 0 0 -1.504 -.864z",key:"svg-0"}],["path",{d:"M4 4a1 1 0 0 1 .993 .883l.007 .117v14a1 1 0 0 1 -1.993 .117l-.007 -.117v-14a1 1 0 0 1 1 -1z",key:"svg-1"}]],YXe=wt("filled","player-skip-back-filled","PlayerSkipBackFilled",GXe),XXe=[["path",{d:"M3 5v14a1 1 0 0 0 1.504 .864l12 -7a1 1 0 0 0 0 -1.728l-12 -7a1 1 0 0 0 -1.504 .864z",key:"svg-0"}],["path",{d:"M20 4a1 1 0 0 1 .993 .883l.007 .117v14a1 1 0 0 1 -1.993 .117l-.007 -.117v-14a1 1 0 0 1 1 -1z",key:"svg-1"}]],ZXe=wt("filled","player-skip-forward-filled","PlayerSkipForwardFilled",XXe),mte=Vn.withProps({component:wi,layout:"position",whileTap:{scale:.95},variant:"light",size:"xs",fw:"500"}),KXe=()=>{const{portalProps:e}=bm();return y.jsx(py,{...e,children:y.jsx(hr,{css:{position:"absolute",margin:"0",padding:"0",top:"0",left:"0",width:"100%",height:"100%",border:"2px solid",borderColor:"mantine.colors.orange[6]",pointerEvents:"none",md:{borderWidth:4}}})})};function QXe(){const e=Nt(),{isParallel:r,hasNext:n,hasPrevious:o,currentStep:a,totalSteps:i}=pi(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(ete,{variant:"light",size:"xs",color:"orange",mr:"sm",onClick:l=>{l.stopPropagation(),e.stopWalkthrough()},rightSection:y.jsx(WXe,{size:10}),children:"Stop"},"stop-walkthrough"),y.jsx(mte,{disabled:!o,onClick:()=>e.walkthroughStep("previous"),leftSection:y.jsx(YXe,{size:10}),children:"Previous"},"prev"),y.jsxs(ec,{component: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(mte,{disabled:!n,onClick:()=>e.walkthroughStep("next"),rightSection:y.jsx(ZXe,{size:10}),children:"Next"},"next"),r&&y.jsx(KXe,{},"parallel-frame")]})}const gte=S.memo(()=>{const e=Nt(),r=VHe(),n=UVe(),o=vE(vGe,{input:{view:r,viewModel:n}});return S.useEffect(()=>{const 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(hp,{css:{alignItems:"flex-start",pointerEvents:"none",position:"absolute",top:"0",left:"0",margin:"0",width:"100%",gap:"xxs",maxWidth:["calc(100vw)","calc(100cqw)"],"@/sm":{margin:"xs",gap:"xs",width:"max-content",maxWidth:["calc(100vw - 2 * {spacing.md})","calc(100cqw - 2 * {spacing.md})"]},_print:{display:"none"}},children:y.jsxs(bGe,{value:o,children:[y.jsx(JXe,{actor:o}),y.jsx(pte,{}),y.jsx(uXe,{}),y.jsx(HXe,{})]})})});gte.displayName="NavigationPanel";const JXe=({actor:e})=>{const r=pn(e,o=>o.hasTag("active")),n=bm();return y.jsxs(br,{offset:{mainAxis:4},opened:r,position:"bottom-start",trapFocus:r,...n,clickOutsideEvents:["pointerdown","mousedown","click"],onDismiss:()=>e.send({type:"dropdown.dismiss"}),children:[y.jsx(eZe,{actor:e}),r&&y.jsx(ite,{})]})},eZe=({actor:e})=>{const r=pi(n=>n.activeWalkthrough!==null);return y.jsx(lm,{children:y.jsx(kd,{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(QXe,{}):y.jsx(ote,{})})})})})},Az=fe({position:"absolute",bottom:"0",right:"0",padding:"2",margin:"0",width:"min-content",height:"min-content",_print:{display:"none"}}),tZe=fe({"--ai-radius":"0px",_noReduceGraphics:{"--ai-radius":"{radii.md}"}}),rZe=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"}}),nZe=fe({padding:"xxs"}),oZe=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 Rp={width:115,height:120,path:"M57.9197 0C10.9124 0 33.5766 54.75 33.5766 54.75C38.6131 62.25 45.3285 60.75 45.3285 66C45.3285 70.5 39.4526 72 33.5766 72.75C24.3431 72.75 15.9489 71.25 7.55474 84.75C2.51825 93 0 120 0 120H115C115 120 112.482 93 108.285 84.75C99.8905 70.5 91.4963 72.75 82.2628 72C76.3869 71.25 70.5109 69.75 70.5109 65.25C70.5109 60.75 77.2263 62.25 82.2628 54C82.2628 54.75 104.927 0 57.9197 0V0Z"};function NJ({shape:e,w:r,h:n}){switch(e){case"mobile":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,"data-likec4-fill":"mix-stroke",strokeWidth:0}),y.jsxs("g",{"data-likec4-fill":"fill",strokeWidth:0,children:[y.jsx("circle",{cx:17,cy:n/2,r:12}),y.jsx("rect",{x:33,y:12,width:r-44,height:n-24,rx:5})]})]});case"browser":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,"data-likec4-fill":"mix-stroke",strokeWidth:0}),y.jsxs("g",{"data-likec4-fill":"fill",strokeWidth:0,children:[y.jsx("circle",{cx:16,cy:17,r:7}),y.jsx("circle",{cx:36,cy:17,r:7}),y.jsx("circle",{cx:56,cy:17,r:7}),y.jsx("rect",{x:70,y:8,width:r-80,height:17,rx:4}),y.jsx("rect",{x:10,y:32,width:r-20,height:n-42,rx:4})]})]});case"person":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,strokeWidth:0}),y.jsx("svg",{x:r-Rp.width-6,y:n-Rp.height,width:Rp.width,height:Rp.height,viewBox:`0 0 ${Rp.width} ${Rp.height}`,"data-likec4-fill":"mix-stroke",children:y.jsx("path",{strokeWidth:0,d:Rp.path})})]});case"queue":{const{path:o,rx:a,ry:i}=MJ(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}=DJ(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 Qo(e)}}function JHe({shape:e,w:r,h:n}){let o;switch(e){case"queue":o=y.jsx("path",{d:MJ(r,n).path});break;case"storage":case"cylinder":{o=y.jsx("path",{d:DJ(r,n).path});break}default:{o=y.jsx("rect",{x:-3,y:-3,width:r+6,height:n+6,rx:8});break}}return y.jsx("g",{className:"likec4-shape-outline",children:o})}function eUe({multiple:e,withOutLine:r}){return y.jsxs("div",{className:GK({shapetype:"html"}),children:[e&&y.jsx("div",{className:"likec4-shape-multiple"}),r&&y.jsx("div",{className:"likec4-shape-outline"})]})}function pm({data:e,width:r,height:n,showSeletionOutline:o=!0}){let 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(eUe,{multiple:l,withOutLine:o});const s=GK({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(NJ,{shape:e.shape,w:a,h:i})}),y.jsxs("svg",{className:s,viewBox:`0 0 ${a} ${i}`,children:[o&&y.jsx(JHe,{shape:e.shape,w:a,h:i}),y.jsx(NJ,{shape:e.shape,w:a,h:i})]})]})}const zp=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(bVe({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})});zp.displayName="Markdown";const PJ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,ref:n,className:Ge(e,yVe(),"likec4-element")})),BJ=({data:e,...r})=>y.jsx(bx,{element:e,...r}),IJ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,className:Ge(e,"likec4-element-node-content"),ref:n})),OJ=S.forwardRef(({data:{title:e,style:r},className:n,...o},a)=>{const{size:i}=$b(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})}),LJ=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}),FJ=S.forwardRef(({data:{description:e,style:r},className:n,...o},a)=>{if(!e)return null;const i=ur.from(e),{size:l}=$b(r);return y.jsx(zp,{...o,className:Ge(n,"likec4-element-description",fe({lineClamp:l==="sm"||l==="xs"?3:5})),"data-likec4-node-description":"",value:i,uselikec4palette:!0,hideIfEmpty:!0,style:{maxHeight:i.isMarkdown?"8rem":void 0},ref:a})});function dl({iconSize:e,data:r}){return y.jsxs(PJ,{style:Iq(e)?{"--likec4-icon-size":`${e}px`}:void 0,children:[y.jsx(BJ,{data:r}),y.jsxs(IJ,{children:[y.jsx(OJ,{data:r}),y.jsx(LJ,{data:r}),y.jsx(FJ,{data:r})]})]})}dl.Root=PJ,dl.Icon=BJ,dl.Content=IJ,dl.Title=OJ,dl.Technology=LJ,dl.Description=FJ;const tUe=fe({position:"absolute",top:"0.5",right:"0.5",_shapeBrowser:{right:"[5px]"},_shapeCylinder:{top:"[14px]"},_shapeStorage:{top:"[14px]"},_shapeQueue:{top:"[1px]",right:"3"},_smallZoom:{display:"none"},_print:{display:"none"}});function oR({selected:e=!1,data:{hovered:r=!1},icon:n,onClick:o}){return y.jsx(hr,{className:Ge(tUe,"details-button"),children:y.jsx(lr,{className:Ge("nodrag nopan",i2({variant:"transparent"})),component:wi,initial:!1,style:{originX:.45,originY:.55},animate:r||e?{scale:1.2,opacity:.8}:{scale:1,opacity:.5},whileHover:{scale:1.4,opacity:1},whileTap:{scale:1.15},onClick:o,onDoubleClick:nn,children:n??y.jsx(nR,{stroke:1.8,style:{width:"75%"}})})})}const rUe=e=>{const r=Nt();return y.jsx(oR,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})};function nUe(e){const{enableElementTags:r}=sr();return y.jsxs(um,{layoutId:e.id,nodeProps:e,children:[y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(rUe,{...e}),y.jsx(ZHe,{...e}),y.jsx(aUe,{...e})]},e.id)}function oUe(e){const r=Nt();return y.jsxs(c0,{layoutId:e.id,nodeProps:e,children:[y.jsx(d0,{...e}),y.jsx(AJ,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}}),y.jsx(iUe,{...e})]},e.id)}const aUe=({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))]}),iUe=({data:e})=>y.jsxs(y.Fragment,{children:[e.ports.in.map((r,n)=>y.jsx(Oo,{id:r,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r)),e.ports.out.map((r,n)=>y.jsx(Oo,{id:r,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r))]}),lUe=[["path",{d:"M15 6l-6 6l6 6",key:"svg-0"}]],VJ=wt("outline","chevron-left","ChevronLeft",lUe),sUe={element:nUe,compound:oUe,empty:OHe},cUe={relationship:BHe};function qJ({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={initialNodes:[],initialEdges:[]}),y.jsx(xQ.Provider,{value:e,children:y.jsx(lw,{...r.current,children:y.jsx(lm,{id:e.sessionId,inherit:!1,children:y.jsx(Cn,{children:y.jsx(pUe,{})})})})})}const dUe=e=>({isActive:e.hasTag("active"),nodes:e.context.xynodes,edges:e.context.xyedges}),uUe=(e,r)=>e.isActive===r.isActive&&Ir(e.nodes,r.nodes)&&Ir(e.edges,r.edges),pUe=S.memo(()=>{const e=n0(),{isActive:r,nodes:n,edges:o}=v2(dUe,uUe);return y.jsx(s$,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","relationships-browser"),nodeTypes:sUe,edgeTypes:cUe,fitView:!1,onNodeClick: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(fUe,{})})}),hUe=e=>({subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,closeable:e.context.closeable}),fUe=S.memo(()=>{const e=n0(),{subjectId:r,viewId:n,scope:o,closeable:a}=v2(hUe),i=vr(),l=pf();S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:i})},[i,l.viewportInitialized,e]);const s=bHe(r,n,o),[c,d,{history:u,current:p}]=RH(r);S.useEffect(()=>{c!==r&&d.set(r)},[r]),S.useEffect(()=>{c!==r&&e.navigateTo(c)},[c,e]),_L(()=>{e.updateView(s)},[s,e]);const f=p>0,g=p+1d.back(),onStepForward:()=>d.forward()}),a&&y.jsx(sd,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:v=>{v.stopPropagation(),e.close()},children:y.jsx(fp,{})})})]})}),mUe=({hasStepBack:e,hasStepForward:r,onStepBack:n,onStepForward:o})=>y.jsx(sd,{position:"top-left",children:y.jsxs(en,{gap:4,wrap:"nowrap",children:[y.jsxs(Cn,{mode:"popLayout",children:[e&&y.jsx(mi.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(VJ,{})})},"back"),r&&y.jsx(mi.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(Dd,{})})},"forward")]}),y.jsx($He,{})]})}),gUe=fe({display:"inline-block",fontSize:"sm",fontWeight:500,whiteSpace:"nowrap",padding:"[3px 6px]",borderRadius:3,background:"var(--likec4-palette-fill)/75",lineHeight:1.2,color:"var(--likec4-palette-hiContrast)"}),yUe=fe({_light:{background:"mantine.colors.gray[1]","&[data-missing":{}},"&[data-missing]":{color:"mantine.colors.orange[4]",background:"mantine.colors.orange[8]/15",borderColor:"mantine.colors.orange[5]/20",_light:{color:"mantine.colors.orange[8]"}}}),vUe=fe({flex:"1 1 100%",position:"relative",width:"100%",height:"100%",background:"mantine.colors.body",border:"1px solid {colors.mantine.colors.defaultBorder}",borderRadius:"sm",_light:{borderColor:"mantine.colors.gray[3]",background:"mantine.colors.gray[1]"}});fe({_before:{content:'"scope:"',position:"absolute",top:"0",left:"2",fontSize:"xxs",fontWeight:500,lineHeight:"1",color:"mantine.colors.dimmed",opacity:.85,transform:"translateY(-100%) translateY(-2px)"},_light:{"& .mantine-SegmentedControl-root":{background:"mantine.colors.gray[3]"}}}),fe({display:"inline-block",fontSize:"xl",fontWeight:600,padding:"[1px 5px]",minWidth:24,textAlign:"center",borderRadius:"sm",background:"mantine.colors.dark[7]",color:"mantine.colors.defaultColor","&[data-zero]":{color:"mantine.colors.dimmed"},"&[data-missing]":{color:"mantine.colors.orange[4]",background:"mantine.colors.orange[8]/20"}});const bUe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M13 18l6 -6",key:"svg-1"}],["path",{d:"M13 6l6 6",key:"svg-2"}]],hm=wt("outline","arrow-right","ArrowRight",bUe),xUe=[["path",{d:"M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6",key:"svg-0"}],["path",{d:"M11 13l9 -9",key:"svg-1"}],["path",{d:"M15 4h5v5",key:"svg-2"}]],HJ=wt("outline","external-link","ExternalLink",xUe),wUe=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1});function kUe({node:e,element:r}){const n=Nt(),o=lVe(),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?yw([...e.incoming()].flatMap(u=>u.$edge.relations)):[],c=e?yw([...e.outgoing()].flatMap(u=>u.$edge.relations)):[],d=[...i,...l].filter(u=>!s.includes(u)&&!c.includes(u)).length;return y.jsxs(Lo,{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(UJ,{title:"incoming",total:i.length,included:s.length}),y.jsx(Ta,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(hm,{style:{width:16}})}),y.jsx(at,{className:gUe,children:Jg(r.id)}),y.jsx(Ta,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(hm,{style:{width:16}})}),y.jsx(UJ,{title:"outgoing",total:l.length,included:c.length})]})}),d>0&&y.jsx(wUe,{label:"Current view does not include some relationships",children:y.jsxs(en,{mt:"xs",gap:6,c:"orange",style:{cursor:"pointer"},children:[y.jsx(r0,{style:{width:14}}),y.jsxs(at,{fz:"sm",children:[d," relationship",d>1?"s are":" is"," hidden"]})]})})]}),y.jsx(Se,{className:vUe,children:a&&y.jsxs(y.Fragment,{children:[y.jsx(qJ,{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(HJ,{stroke:1.6,style:{width:"70%"}})})})]})})]})}function UJ({title:e,total:r,included:n}){return y.jsx(Af,{withBorder:!0,shadow:"none",className:yUe,px:"md",py:"xs",radius:"md",mod:{zero:r===0,missing:r!==n},children:y.jsxs(Lo,{gap:4,align:"flex-end",children:[y.jsx(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 _Ue=fe({marginTop:"sm",marginBottom:"sm"}),SUe=fe({display:"inline-flex",transition:"fast",border:"1px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"sm",px:"md",py:"xs",alignItems:"center",cursor:"pointer",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.dark[1]"},"& > *":{transition:"fast"},_hover:{transitionTimingFunction:"out",borderStyle:"solid",color:"mantine.colors.defaultColor",background:"mantine.colors.defaultHover","& > *":{transitionTimingFunction:"out",transform:"translateX(1px)"}}}),aR=({element:e})=>y.jsx(Se,{className:SUe,children:y.jsx(at,{component:"div",fz:"sm",fw:"500",children:e.title})}),EUe=()=>{};function CUe({element:e}){const r=_y({multiple:!1});r.setHoveredNode=EUe;const n=S.useMemo(()=>{let o=1;const a=l=>({label:l,value:`msg${o++}`,type:"message",children:[]}),i={label:y.jsx(aR,{type:"current",element:e}),value:e.id,element:e,type:"current",children:[...e.children()].map(l=>({label:y.jsx(aR,{type:"descedant",element:l}),value:l.id,element:l,type:"descedant",children:[]}))};return i.children.length===0&&i.children.push(a(y.jsx(_3,{radius:"sm",children:"no nested"}))),[[...e.ancestors()].reduce((l,s)=>({label:y.jsx(aR,{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(f3,{variant:"light",color:"orange",title:"In development",icon:y.jsx(r0,{}),children:["We need your feedback. Share your thoughts and ideas -"," ",y.jsx(mS,{fz:"sm",fw:500,underline:"hover",c:"orange",href:"https://github.com/likec4/likec4/discussions/",target:"_blank",children:"GitHub discussions"})]}),y.jsx(Ff,{levelOffset:"xl",allowRangeSelection:!1,expandOnClick:!1,expandOnSpace:!1,classNames:{label:_Ue},data:n,tree:r})]})}const $Ue=[["path",{d:"M12 4l-8 4l8 4l8 -4l-8 -4",key:"svg-0"}],["path",{d:"M4 12l8 4l8 -4",key:"svg-1"}],["path",{d:"M4 16l8 4l8 -4",key:"svg-2"}]],iR=wt("outline","stack-2","Stack2",$Ue),WJ=sp.withProps({mb:8,labelPosition:"left",variant:"dashed"}),GJ=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4}),YJ=at.withProps({component:"div",fz:11,fw:500,c:"dimmed",lh:1}),u0=at.withProps({component:"div",fz:"xs",c:"dimmed",className:aqe}),fm=24,RUe=["Properties","Relationships","Views","Structure","Deployments"];function zUe({viewId:e,fromNode:r,rectFromNode:n,fqn:o,onClose:a}){const[i,l]=S.useState(!1),s=fze(),c=s.width||window.innerWidth||1200,d=s.height||window.innerHeight||800,[u,p]=cze({key:"likec4:element-details:active-tab",defaultValue:"Properties"}),f=Nt(),g=WVe(),v=r?g.findNode(r):g.findNodeWithElement(o),w=g.$model.element(o),[x,k]=Jr([...w.views()],un(Z=>Z.$view),qq(Z=>Z._type==="element"&&Z.viewOf===o));let C=v?.navigateTo?.$view??w.defaultView?.$view??null;C?.id===e&&(C=null);const _=fw(w.links),$=iVe(),R=(v?.$node.children?.length??0)>0,T=Math.min(700,c-fm*2),A=Math.min(650,d-fm*2),z=n?{x:n.x+(R?n.width-T/2:n.width/2),y:n.y+(R?0:n.height/2)}:{x:c/2,y:d/2},j=n?Math.min(n.width/T,n.height/A,.9):1,I=Math.round(ti(z.x-T/2,{min:fm,max:c-T-fm})),P=Math.round(ti(z.y-(R?0:60),{min:fm,max:d-A-fm})),L=ti((z.x-I)/T,{min:.1,max:.9}),H=ti((z.y-P)/A,{min:.1,max:.9}),M=jK(T),V=jK(A);$p(()=>{M.set(T),V.set(A)},[T,A]);const B=S.useCallback((Z,O)=>{M.set(Math.max(M.get()+O.delta.x,320)),V.set(Math.max(V.get()+O.delta.y,300))},[]),F=S.useRef(null),q=Kh(a),G=h7(()=>{q.current()},[],50),U=v?.$node.notation??null,Y=bx({element:{id:o,title:w.title,icon:v?.icon??w.icon},className:KVe});return wx(()=>{F.current?.open||F.current?.showModal()},20),wx(()=>{l(!0)},220),y.jsx(mi.dialog,{ref:F,className:Ge(GVe,ny.classNames.fullWidth),layout:!0,initial:{[p2]:"0px",[h2]:"5%"},animate:{[p2]:"3px",[h2]:"60%"},exit:{[p2]:"0px",[h2]:"0%",transition:{duration:.1}},onClick:Z=>{Z.stopPropagation(),Z.target?.nodeName?.toUpperCase()==="DIALOG"&&F.current?.close()},onDoubleClick:nn,onPointerDown:nn,onClose:Z=>{Z.stopPropagation(),G()},children:y.jsx(ny,{forwardProps:!0,removeScrollBar:!1,children:y.jsxs(mi.div,{layout:!0,layoutRoot:!0,drag:!0,dragControls:$,dragElastic:0,dragMomentum:!1,dragListener:!1,"data-likec4-color":v?.color??w.color,className:YVe,initial:{top:P,left:I,width:T,height:A,opacity:0,originX:L,originY:H,scale:Math.max(j,.65)},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9,translateY:-10,transition:{duration:.1}},style:{width:M,height:V},children:[y.jsxs("div",{className:XVe,onPointerDown:Z=>$.start(Z),children:[y.jsxs(Or,{alignItems:"start",justify:"space-between",gap:"sm",mb:"sm",flexWrap:"nowrap",children:[y.jsxs(Or,{alignItems:"start",gap:"sm",style:{cursor:"default"},flexWrap:"nowrap",children:[Y,y.jsxs("div",{children:[y.jsx(at,{component:"div",className:ZVe,children:w.title}),U&&y.jsx(at,{component:"div",c:"dimmed",fz:"sm",fw:500,lh:1.3,lineClamp:1,children:U})]})]}),y.jsx(lp,{size:"lg",onClick:Z=>{Z.stopPropagation(),G()}})]}),y.jsxs(Or,{alignItems:"baseline",gap:"sm",flexWrap:"nowrap",children:[y.jsxs("div",{children:[y.jsx(YJ,{children:"kind"}),y.jsx(ec,{radius:"sm",size:"sm",fw:600,color:"gray",style:{cursor:"pointer"},onClick:Z=>{Z.stopPropagation(),f.openSearch(`kind:${w.kind}`)},children:w.kind})]}),y.jsxs("div",{style:{flex:1},children:[y.jsx(YJ,{children:"tags"}),y.jsxs(Js,{gap:4,flex:1,mt:6,wrap:"wrap",children:[w.tags.map(Z=>y.jsx(u2,{tag:Z,cursor:"pointer",onClick:O=>{O.stopPropagation(),f.openSearch(`#${Z}`)}},Z)),w.tags.length===0&&y.jsx(ec,{radius:"sm",size:"sm",fw:600,color:"gray",children:"—"})]})]}),y.jsxs(s3,{style:{alignSelf:"flex-start"},children:[_&&y.jsx(lr,{component:"a",href:_.url,target:"_blank",size:"lg",variant:"default",radius:"sm",children:y.jsx(HJ,{stroke:1.6,style:{width:"65%"}})}),y.jsx(LNe,{feature:"Vscode",children:y.jsx(GJ,{label:"Open source",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:Z=>{Z.stopPropagation(),f.openSource({element:w.id})},children:y.jsx(dm,{stroke:1.8,style:{width:"62%"}})})})}),C&&y.jsx(GJ,{label:"Open default view",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:Z=>{Z.stopPropagation(),f.navigateTo(C.id,r??void 0)},children:y.jsx(bi,{style:{width:"70%"}})})})]})]})]}),y.jsx(pQ,{children:y.jsxs(up,{value:u,onChange:Z=>p(Z),variant:"none",classNames:{root:eqe,list:tqe,tab:rqe,panel:nqe},children:[y.jsx(ky,{children:RUe.map(Z=>y.jsx(Lf,{value:Z,children:Z},Z))}),y.jsx(rc,{value:"Properties",children:y.jsx(es,{scrollbars:"y",type:"scroll",offsetScrollbars:!0,children:y.jsxs(Se,{className:oqe,pt:"xs",children:[w.hasSummary&&y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"summary"}),y.jsx(zp,{value:w.summary})]}),y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"description"}),y.jsx(zp,{value:w.description,emptyText:"no description"})]}),w.technology&&y.jsx(TUe,{title:"technology",children:w.technology}),w.links.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"links"}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:w.links.map((Z,O)=>y.jsx(o$,{value:Z},O))})]}),w.$element.metadata&&y.jsx(jUe,{value:w.$element.metadata})]})})}),y.jsx(rc,{value:"Relationships",children:y.jsx(mp,{overrides:{enableRelationshipBrowser:!1,enableNavigateTo:!1},children:i&&u==="Relationships"&&y.jsx(kUe,{element:w,node:v??null})})}),y.jsx(rc,{value:"Views",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsxs(Lo,{gap:"lg",children:[x.length>0&&y.jsxs(Se,{children:[y.jsx(WJ,{label:"views of the element (scoped)"}),y.jsx(Lo,{gap:"sm",children:x.map(Z=>y.jsx(XJ,{view:Z,onNavigateTo:O=>f.navigateTo(O,r??void 0)},Z.id))})]}),k.length>0&&y.jsxs(Se,{children:[y.jsx(WJ,{label:"views including this element"}),y.jsx(Lo,{gap:"sm",children:k.map(Z=>y.jsx(XJ,{view:Z,onNavigateTo:O=>f.navigateTo(O,r??void 0)},Z.id))})]})]})})}),y.jsx(rc,{value:"Structure",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsx(CUe,{element:w})})}),y.jsx(rc,{value:"Deployments",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsx(kqe,{elementFqn:w.id})})})]})}),y.jsx(mi.div,{className:iqe,drag:!0,dragElastic:0,dragMomentum:!1,onDrag:B,dragConstraints:{top:0,left:0,right:0,bottom:0}})]})})})}const XJ=({view:e,onNavigateTo:r})=>y.jsx(pr,{className:QVe,onClick:n=>r(e.id,n),children:y.jsxs(en,{gap:6,align:"start",wrap:"nowrap",children:[y.jsx(Ta,{size:"sm",variant:"transparent",children:e._type==="deployment"?y.jsx(iR,{stroke:1.8}):y.jsx(bi,{stroke:1.8})}),y.jsx(Se,{children:y.jsx(at,{component:"div",className:JVe,lineClamp:1,children:e.title||"untitled"})})]})});function TUe({title:e,emptyValue:r="undefined",children:n,style:o,...a}){return y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:e}),y.jsx(at,{component:"div",...ty(n)&&{c:"dimmed"},fz:"md",style:{whiteSpace:"preserve-breaks",userSelect:"all",...o},...a,children:n||r})]})}function jUe({value:e}){const r=uw(e).sort(([n],[o])=>n.localeCompare(o));return y.jsx(pQ,{children:y.jsxs(y.Fragment,{children:[y.jsx(u0,{style:{justifySelf:"end",textAlign:"right"},children:"metadata"}),y.jsx(Se,{className:fe({display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content",gap:"[12px 16px]",alignItems:"baseline",justifyItems:"stretch"}),children:r.map(([n,o])=>y.jsx(dqe,{label:n,value:o},n))})]})})}const AUe=e=>({viewId:e.context.currentView.id,fromNode:e.context.initiatedFrom.node,rectFromNode:e.context.initiatedFrom.clientRect,fqn:e.context.subject});function DUe({actorRef:e,onClose:r}){const n=pn(e,AUe,Ir);return y.jsx(FC.Provider,{value:e,children:y.jsx(zUe,{onClose:r,...n})})}const $2="--_blur",R2="--_opacity",MUe="--_level",p0=S.forwardRef(({onClose:e,className:r,classes:n,overlayLevel:o=0,children:a,fullscreen:i=!1,withBackdrop:l=!0,backdrop:s,openDelay:c=130,...d},u)=>{const[p,f]=S.useState(c===0),g=bH(p),v=S.useRef(null),w=S.useRef(!1),x=AK()!==!0,k=S.useRef(e);k.current=e;const C=h7(()=>{w.current||(w.current=!0,k.current())},[],50);S.useLayoutEffect(()=>{v.current?.open||v.current?.showModal()},[]),wx(()=>{f(!0)},c>0?c:void 0);const _=xVe({fullscreen:i,withBackdrop:l});let $=o>0?"50%":"60%";return s?.opacity!==void 0&&($=`${s.opacity*100}%`),y.jsx(mi.dialog,{ref:$r(v,g,u),className:Ge(n?.dialog,r,_,i&&ny.classNames.fullWidth),layout:!0,style:{[MUe]:o},...x?{initial:{[$2]:"0px",[R2]:"0%",scale:.85,opacity:0},animate:{[$2]:o>0?"4px":"8px",[R2]:$,scale:1,opacity:1,translateY:0},exit:{opacity:0,scale:.98,translateY:-20,[$2]:"0px",[R2]:"0%"}}:{initial:{[$2]:"8px",[R2]:$}},onClick:R=>{if(R.stopPropagation(),R.target?.nodeName?.toUpperCase()==="DIALOG"){v.current?.close();return}},onCancel:R=>{R.preventDefault(),R.stopPropagation(),C()},onDoubleClick:nn,onPointerDown:nn,onClose:R=>{R.stopPropagation(),C()},...d,children:y.jsx(ny,{forwardProps:!0,children:y.jsx("div",{className:Ge(n?.body,"likec4-overlay-body"),children:p&&y.jsx(y.Fragment,{children:a})})})})});p0.displayName="Overlay";const z2=(e,r)=>e.size>2&&r.size!==e.size?new Set(Jc([...hx(e).flatten(),...r])):e.size>1?new Set(Jc([...e])):e;function NUe(e,r){const n=new Set,o=new Set,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:z2(n,i.sources),targets:z2(a,i.targets),relationships:o}}function PUe({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]=Vke.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:z2(n,i.sources),targets:z2(a,i.targets),relationships:o}}const ZJ=S.createContext(null);function lR(){return mt(S.useContext(ZJ),"No RelationshipDetailsActorContext")}function KJ(e,r=Ir){const n=it(e),o=lR();return pn(o,n,r)}function sR(){const e=lR();return S.useMemo(()=>({actor:e,get rootElementId(){return`relationship-details-${e.sessionId.replaceAll(":","_")}`},getState:()=>e.getSnapshot().context,send:e.send,navigateTo:(...r)=>{r.length===1?e.send({type:"navigate.to",params:{edgeId:r[0]}}):e.send({type:"navigate.to",params:{source:r[0],target:r[1]}})},fitDiagram:()=>{e.send({type:"fitDiagram"})},close:()=>{e._parent?e._parent?.send({type:"close",actorId:e.id}):e.send({type:"close"})}}),[e])}const ul={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:220,height:14},nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function BUe(){const e=new x2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...ul.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...ul.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const cR="-port";function QJ(e,r,n){const o=new Ln(i=>({id:`${e}-${i}`,portId:`${e}-${i}`})),a=hx(r);for(const i of a.sorted){const l=a.children(i).length>0,s=i.id,c=`${e}-${s}`,d=l?`${c}${cR}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:i,isCompound:l,portId:d,inPorts:[],outPorts:[],width:ul.nodeWidth,height:ul.nodeHeight}),l&&(n.setNode(d,{element:i,portId:d,isCompound:l,inPorts:[],outPorts:[],width:ul.nodeWidth-ul.dagre.ranksep,height:ul.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 IUe(e){return x2.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 OUe(e,r){const n=BUe(),o=QJ("sources",e.sources,n),a=QJ("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,{...ul.edgeLabel},$),{name:$,source:C.id,sourceHandle:C.id+"_out"+(n.node(C.id).outPorts.length-1),target:_.id,targetHandle:_.id+"_in"+(n.node(_.id).inPorts.length-1),relationship:k}}),l=[...o.graphNodes.values(),...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,{...ul.edgeLabel,width:s>10?800:400});const c=IUe(n),d=Jr(l,ep(k=>k.id===k.portId),hw(k=>[k.id,c(k.id)]));function u(k){return d[k]??=Jr(n.children(k)??[],ep(C=>!C.endsWith(cR)),un(C=>u(C)),Wq(C=>{He(C.length>0,`Node ${k} has no nested nodes`)}),mw((C,_)=>({minY:Math.min(C.minY,_.position.y),maxY:Math.max(C.maxY,_.position.y+_.height)}),{minY:1/0,maxY:-1/0}),({minY:C,maxY:_})=>{const{position:{x:$},width:R}=c(k);return C=C-ul.compound.paddingTop,_=_+ul.compound.paddingBottom,{position:{x:$,y:C},width:R,height:_-C}})}function p(k){const C=n.parent(k);return C?p(C)+1:0}function f(k){const C=n.children(k)??[];return C.length===0?0:1+Math.max(...C.map(f))}const g=(k,C,_)=>Jr(_,un(($,R)=>({port:k+"_"+C+R,topY:u($).position.y})),gw(rp("topY")),un(rp("port")));let v=0,w=0;const x=l.map(({id:k})=>{const{element:C,inPorts:_,outPorts:$,column:R}=n.node(k);let{position:T,width:A,height:z}=u(k);const j=n.parent(k),I=(n.children(k)??[]).filter(V=>!V.endsWith(cR));v=Math.min(v,T.x),w=Math.min(w,T.y);const P=r?E1(C.scopedViews(),V=>V.id!==r.id)?.id??null:null,L=r?.findNodeWithElement(C.id),H=r&&!L?E1(C.ancestors(),V=>!!r.findNodeWithElement(V.id))?.id:null,M=L??(H&&r?.findNodeWithElement(H));return _1({id:k,parent:j??null,x:T.x,y:T.y,title:C.title,description:Fs(C.$element)??null,technology:C.technology,tags:[...C.tags],links:null,color:M?.color??C.color,shape:L?.shape??C.shape,icon:L?.icon??C.icon??"none",modelRef:C.id,kind:C.kind,level:p(k),labelBBox:{x:T.x,y:T.y,width:A,height:z},style:ud({...(L??M)?.style,...C.$element.style},["shape","color","icon"]),navigateTo:P,...I.length>0&&{depth:f(k)},children:I,width:A,height:z,column:R,ports:{in:g(k,"in",_),out:g(k,"out",$)}})});return{bounds:{x:Math.min(v,0),y:Math.min(w,0),width:n.graph().width??100,height:n.graph().height??100},nodes:x,edges:n.edges().reduce((k,C)=>{const _=n.edge(C),$=C.name;if(!$)return k;const{name:R,source:T,target:A,relationship:z,sourceHandle:j,targetHandle:I}=Q1(i,V=>V.name===$),P=z.title??"untitled",L=z.navigateTo?.id??null,H=Fs(z.$relationship)??null,M=z.technology??null;return k.push({id:R,source:T,sourceHandle:j,target:A,targetHandle:I,label:P,color:z.color,description:H,...L&&{navigateTo:L},...M&&{technology:M},points:_.points.map(V=>[V.x,V.y]),line:z.line,relationId:z.id,parent:null}),k},[])}}const dR=fe.raw({display:"inline-flex",alignItems:"center",padding:"[6px 2px 0 2px]","& .mantine-Text-root":{color:"mantine.colors.text/90",fontSize:"xs",fontWeight:500,lineHeight:"1.2"}}),JJ=fe({paddingLeft:"1",gridColumn:1},dR),LUe=fe({gridColumn:2},dR),eee=fe({gridColumn:3,paddingRight:"1"},dR),tee="likec4-edge-label",FUe=Ge(tee,fe({display:"grid",gridColumnStart:1,gridColumnEnd:4,borderBottom:"1px solid",borderBottomColor:"mantine.colors.defaultBorder",marginBottom:"0",padding:"[0 4px 5px 4px]",width:"100%","& .mantine-Text-root":{fontSize:"xxs",fontWeight:400,lineHeight:"xs",color:"mantine.colors.dimmed"}})),VUe=fe({display:"contents",[`&:last-child .${tee}`]:{borderBottom:"none",marginBottom:"0"},"& > *":{transition:"all 0.15s ease-in"},"&:is(:hover, [data-selected=true]) > *":{transition:"all 0.15s ease-out",cursor:"pointer",backgroundColor:"mantine.colors.defaultHover"}}),qUe=fe({display:"grid",gridTemplateColumns:"1fr 30px 1fr",gridAutoRows:"min-content max-content",gap:"0",alignItems:"stretch"});fe({display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content max-content",gap:"[10px 12px]",alignItems:"baseline",justifyItems:"start"});const HUe=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),UUe=({edge:e,view:r})=>{const n=sR(),o=S.useRef(null),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(kd,{children:y.jsxs(Vn,{size:"xs",variant:"default",fw:"500",style:{padding:"0.25rem 0.75rem"},rightSection:y.jsx(tR,{size:16}),children:[y.jsx(Se,{className:JJ,maw:160,p:0,mod:{"likec4-color":a.color},children:y.jsx(at,{component:"span",truncate:!0,children:a.title})}),y.jsx(Ta,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(hm,{style:{width:"80%"}})}),y.jsx(Se,{className:eee,maw:160,p:0,mod:{"likec4-color":i.color},children:y.jsx(at,{component:"span",truncate:!0,children:i.title})})]})}),y.jsx(Qs,{p:0,miw:250,maw:400,children:y.jsx(oa,{className:HUe,scrollbars:"y",type:"never",viewportRef:o,children:y.jsx(Se,{className:qUe,p:"xs",maw:400,children:l.map(s=>y.jsxs("div",{className:VUe,"data-selected":s.id===e.id,onClick:c=>{c.stopPropagation(),n.navigateTo(s.id)},children:[y.jsx(Se,{className:JJ,mod:{"edge-id":s.id,"likec4-color":s.source.color},children:y.jsx(at,{component:"span",truncate:!0,children:s.source.title})}),y.jsx(Se,{className:LUe,children:y.jsx(Ta,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(hm,{style:{width:"80%"}})})}),y.jsx(Se,{className:eee,mod:{"likec4-color":s.target.color},children:y.jsx(at,{component:"span",truncate:!0,children:s.target.title})}),y.jsx(Se,{className:FUe,children:y.jsx(at,{component:"span",truncate:!0,children:s.label||"untitled"})})]},s.id))})})})]})},WUe=rR(e=>{const{enableNavigateTo:r}=sr(),{data:{navigateTo:n}}=e,[o,a,i]=Zx(e),l=Nt();return y.jsxs(i0,{...e,children:[y.jsx(l0,{edgeProps:e,svgPath:o}),y.jsx(S2,{edgeProps:e,labelPosition:{x:a,y:i,translate:"translate(-50%, 0)"},style:{maxWidth:Math.abs(e.targetX-e.sourceX-100)},children:y.jsx(a0,{edgeProps:e,children:r&&n&&y.jsx(_2,{...e,onClick:s=>{s.stopPropagation(),l.navigateTo(n)}})})})]})}),GUe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),a=E2(),i=[],{navigateTo:l,fqn:s}=e.data;return l&&r&&a!==l&&i.push({key:"navigate",icon:y.jsx(bi,{}),onClick:c=>{c.stopPropagation(),o.navigateTo(l)}}),s&&i.push({key:"relationships",icon:y.jsx(s0,{}),onClick:c=>{c.stopPropagation(),o.openRelationshipsBrowser(s)}}),s&&n&&i.push({key:"goToSource",icon:y.jsx(dm,{}),onClick:c=>{c.stopPropagation(),o.openSource({element:s})}}),y.jsx(C2,{buttons:i,...e})};function YUe(e,r){return e.id===r.id&&tt(e.type,r.type)&&tt(e.selected??!1,r.selected??!1)&&tt(e.dragging??!1,r.dragging??!1)&&tt(e.width??0,r.width??0)&&tt(e.height??0,r.height??0)&&tt(e.zIndex??0,r.zIndex??0)&&tt(e.data,r.data)}const ree=Symbol.for("isMemoized");function sc(e,r="Node"){if(e.hasOwnProperty(ree))return e;const n=S.memo(e,YUe);return n.displayName=r,Object.defineProperty(n,ree,{enumerable:!1,writable:!1,value:!0}),n}const nee=e=>{const r=Nt();return y.jsx(oR,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})},XUe=sc(e=>{const{enableElementTags:r}=sr();return y.jsxs(um,{nodeProps:e,children:[y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(nee,{...e}),y.jsx(GUe,{...e}),y.jsx(KUe,{...e})]})}),ZUe=sc(e=>y.jsxs(c0,{nodeProps:e,children:[y.jsx(nee,{...e}),y.jsx(d0,{...e}),y.jsx(QUe,{...e})]})),KUe=({data:{ports:e,height:r}})=>y.jsxs(y.Fragment,{children:[e.in.map((n,o)=>y.jsx(Oo,{id:n,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.in.length+1))}px`}},n)),e.out.map((n,o)=>y.jsx(Oo,{id:n,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.out.length+1))}px`}},n))]}),QUe=({data:e})=>y.jsxs(y.Fragment,{children:[e.ports.in.map((r,n)=>y.jsx(Oo,{id:r,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r)),e.ports.out.map((r,n)=>y.jsx(Oo,{id:r,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r))]}),JUe={element:XUe,compound:ZUe},eWe={relationship:WUe};function tWe({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={defaultNodes:[],defaultEdges:[]}),y.jsx(ZJ.Provider,{value:e,children:y.jsx(lw,{...r.current,children:y.jsx(lm,{id:e.sessionId,inherit:!1,children:y.jsxs(Cn,{children:[y.jsx(aWe,{},"xyflow"),y.jsx(nWe,{},"sync")]})})})})}const rWe=e=>({...e.context.subject,viewId:e.context.viewId}),nWe=S.memo(()=>{const e=lR(),r=pn(e,rWe,tt),n=Fo(),o=n.findView(r.viewId)??null,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=NUe([c.id],o)}else if(r.source&&r.target)s=PUe({source:n.element(r.source),target:n.element(r.target)});else return null;return OUe(s,o)},[r,o,n]),i=vr(),l=pf();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}),oWe=({context:e})=>({initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges}),aWe=S.memo(()=>{const e=sR(),{initialized:r,nodes:n,edges:o}=KJ(oWe,tt);return y.jsxs(s$,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","likec4-relationship-details"),nodeTypes:JUe,edgeTypes:eWe,onNodesChange:Qn(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(lWe,{}),y.jsx(sd,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:a=>{a.stopPropagation(),e.close()},children:y.jsx(fp,{})})})]})}),iWe=({context:e})=>({subject:e.subject,viewId:e.viewId}),lWe=S.memo(()=>{const{subject:e,viewId:r}=KJ(iWe,tt),n=Fo().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):Q1(o,i=>i.source.element?.id===e.source&&i.target.element?.id===e.target)||Q1(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(sWe,{edge:a.$edge,view:n.$view}):null}),sWe=({edge:e,view:r})=>{const n=sR(),o=e.id,[a,i,{history:l,current:s}]=RH(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(VJ,{})})},"back"),d&&y.jsx(mi.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(Dd,{})})},"forward"),y.jsx(en,{gap:"xs",wrap:"nowrap",ml:"sm",children:y.jsx(UUe,{edge:e,view:r})})]})})})},cWe=e=>e.context.overlays.map(r=>{switch(r.type){case"relationshipsBrowser":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;case"relationshipDetails":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;case"elementDetails":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;default:Qo(r)}}).filter(Bq),dWe=(e,r)=>e.length===r.length&&e.every((n,o)=>n.actorRef===r[o].actorRef);function uWe({overlaysActorRef:e}){const r=Nt(),n=pn(e,cWe,dWe),o=AK()??!1,a=n.some(s=>s.type==="elementDetails");S.useEffect(()=>{const s=r.getContext().xystore.getState().domNode?.querySelector(".react-flow__renderer");if(!s||o)return;const c=GOe(s,{opacity: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(p0,{overlayLevel:c,onClose:()=>i(s.actorRef),children:y.jsx(qJ,{actorRef:s.actorRef})},s.actorRef.sessionId);case"relationshipDetails":return y.jsx(p0,{overlayLevel:c,onClose:()=>i(s.actorRef),children:y.jsx(tWe,{actorRef:s.actorRef})},s.actorRef.sessionId);case"elementDetails":return y.jsx(DUe,{actorRef:s.actorRef,onClose:()=>i(s.actorRef)},s.actorRef.sessionId);default:Qo(s)}});return y.jsx(mp.Overlays,{children:y.jsx(QS,{onReset:()=>e.send({type:"close.all"}),children:y.jsx(lm,{children:y.jsx(Cn,{mode:"popLayout",children:l})})})})}const[pWe,Nd]=ni("SearchActorContext"),hWe=e=>e.context.searchValue;function fWe(){const e=Nd(),r=pn(e,hWe),n=S.useCallback(o=>{e.send({type:"change.search",search:o})},[e]);return[r,n]}const mWe=e=>{const r=e.context.searchValue.trim().toLowerCase();return r.length>1?r:""};function uR(){const e=Nd();return S.useDeferredValue(pn(e,mWe))}function gWe(){const e=Nd();return S.useCallback(r=>{e.send({type:"change.search",search:r})},[e])}const yWe=e=>e.context.pickViewFor;function vWe(){const e=Nd();return pn(e,yWe)}const pR=fe.raw({outline:"none",background:"mantine.colors.primary[8]",borderColor:"mantine.colors.primary[9]"}),T2=".mantine-Tree-node:focus > .mantine-Tree-label &",bWe=fe.raw({display:"flex",width:"100%",background:"mantine.colors.body",rounded:"sm",padding:"[12px 8px 12px 14px]",minHeight:"60px",gap:"2",border:"1px solid",borderColor:"mantine.colors.defaultBorder",_hover:{...pR,borderColor:"mantine.colors.primary[9]",background:"mantine.colors.primary[8]/60"},_focus:pR,[T2]:pR,_dark:{borderColor:"transparent",background:"mantine.colors.dark[6]/80"},_light:{background:"mantine.colors.white/80",_hover:{borderColor:"mantine.colors.primary[6]",backgroundColor:"mantine.colors.primary[5]"}}}),j2="likec4-focusable",A2={ref:"var(--likec4-icon-size, 24px)"},xWe=fe.raw({color:{base:"mantine.colors.dimmed",_light:"mantine.colors.gray[5]",_groupHover:"mantine.colors.primary[0]",_groupFocus:"mantine.colors.primary[0]"},[T2]:{color:"mantine.colors.primary[0]"},flex:`0 0 ${A2.ref}`,height:A2.ref,width:A2.ref,display:"flex",alignItems:"center",justifyContent:"center",alignSelf:"flex-start","--ti-size":A2.ref,"& svg, & img":{width:"100%",height:"auto",maxHeight:"100%",pointerEvents:"none"},"& img":{objectFit:"contain"},"&.likec4-shape-icon svg":{strokeWidth:1.5}}),wWe=fe.raw({fontSize:"16px",fontWeight:500,lineHeight:"1.1",":where([data-disabled]) &":{opacity:.4},color:{base:"mantine.colors.dark[1]",_light:"mantine.colors.gray[7]",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"},_groupFocus:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}},[T2]:{color:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}}}),oee=fe.raw({color:{base:"mantine.colors.dimmed",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.primary[0]"},_groupFocus:"mantine.colors.primary[0]"},[T2]:{color:"mantine.colors.primary[0]"}}),kWe=fe.raw(oee,{marginTop:"1",fontSize:"12px",lineHeight:"1.4",":where([data-disabled]) &":{opacity:.85}}),_We=fe({width:"100%",height:"100%",border:"2px dashed",borderColor:"mantine.colors.defaultBorder",rounded:"md",display:"flex",justifyContent:"center",alignItems:"center",fontSize:"md",color:"mantine.colors.dimmed",padding:"md",paddingBlock:"xl"}),aee=A5e({slots:["root","icon","title","description","descriptionColor"],className:"search-button",base:{root:bWe,icon:xWe,title:wWe,description:kWe,descriptionColor:oee}}),hR="@container likec4-tree (max-width: 450px)",SWe=fe({outline:"none",marginBottom:"2"}),EWe=fe(LG.raw({containerName:"likec4-tree"}),{containerType:"inline-size",height:"100%"}),CWe=fe({display:"flex",alignItems:"baseline",outline:"none !important",gap:"1"}),$We=fe({marginTop:"2"}),RWe=fe({color:"mantine.colors.dimmed"}),zWe=fe({[hR]:{flexDirection:"column-reverse",alignItems:"flex-start",gap:"0.5"}}),TWe=fe({fontSize:"10px",lineHeight:"1.3",display:"block",fontWeight:500,whiteSpace:"nowrap",padding:"[1px 5px]",borderRadius:"4px",background:"mantine.colors.dark[9]/30",_light:{background:"mantine.colors.gray[3]/20"}}),jWe=fe({"--likec4-icon-size":"24px",[hR]:{"--likec4-icon-size":"18px"}}),AWe=fe({flex:0,fontSize:"10px",fontWeight:500,whiteSpace:"nowrap",lineHeight:"1.1",[hR]:{display:"none"}});function ki(e){e.stopPropagation(),e.preventDefault()}function iee(e){const r=e.getBoundingClientRect();return r.y+Math.floor(r.height/2)}function h0(e){if(!e){console.error("moveFocusToSearchInput: from is null or undefined");return}const r=e.getRootNode();if(!ey(r.querySelector)){console.error("moveFocusToSearchInput: root.querySelector is not a function");return}let n=r.querySelector("[data-likec4-search-input]");if(n){const o=n.value.length;n.focus(),n.setSelectionRange(o,o)}}function D2(e){if(!e){console.error("focusToFirstFoundElement: from is null or undefined");return}const r=e.getRootNode();if(!ey(r.querySelector)){console.error("focusToFirstFoundElement: root.querySelector is not a function");return}r.querySelector(`[data-likec4-search] .${j2}`)?.focus()}function lee(e,r,n=`.${j2}`){if(!e)return console.error("queryAllFocusable: from is null or undefined"),[];const o=e.getRootNode();return ey(o.querySelectorAll)?[...o.querySelectorAll(`[data-likec4-search-${r}] ${n}`)]:(console.error("queryAllFocusable: root.querySelectorAll is not a function"),[])}function see(e){setTimeout(e,300)}const DWe="likec4-view-btn",MWe=Ge(fe({flexWrap:"nowrap",display:"flex","&[data-disabled] .mantine-ThemeIcon-root":{opacity:.45}}),DWe);fe({marginTop:"1",fontSize:"13px",lineHeight:"1.4",":where(.likec4-view-btn[data-disabled]) &":{opacity:.85}});const cee=()=>y.jsx(hr,{className:_We,children:"Nothing found"}),NWe=S.memo(()=>{const e=S.useRef(null);let r=[...Fo().views()],n=uR();return n&&(n.startsWith("kind:")?r=[]:r=r.filter(o=>n.startsWith("#")?o.tags.some(a=>a.toLocaleLowerCase().includes(n.slice(1))):`${o.id} ${o.title} ${o.description.text}`.toLocaleLowerCase().includes(n))),y.jsxs(Lo,{ref:e,renderRoot:o=>y.jsx(Rr,{layout:!0,...o}),gap:8,"data-likec4-search-views":!0,onKeyDown:o=>{if(o.key==="ArrowLeft"||o.key==="ArrowRight"){const a=o.target.getBoundingClientRect().y,i=lee(e.current,"elements",".likec4-element-button");let l=i.length>1?i.find((s,c,d)=>iee(s)>a||c===d.length-1):null;l??=hf(i),l&&(o.stopPropagation(),l.focus());return}},children:[r.length===0&&y.jsx(cee,{}),r.length>0&&y.jsx(o3,{children:y.jsx(pr,{"data-likec4-view":!0,tabIndex:-1,onFocus:o=>{o.stopPropagation(),h0(e.current)}})}),r.map((o,a)=>y.jsx(Rr,{layoutId:`@view${o.id}`,children:y.jsx(fR,{view:o,search:n,tabIndex:a===0?0:-1})},o.id))]})}),M2=aee();function fR({className:e,view:r,loop:n=!1,search:o,focusOnElement:a,...i}){const l=Nd(),s=Nt(),c=r.id,d=E2(),u=c===d,p=()=>{l.send({type:"close"}),see(()=>{if(u&&a){s.focusOnElement(a);return}s.navigateTo(c,void 0,a)})};return y.jsxs(pr,{...i,className:Ge(M2.root,"group",j2,MWe,e),"data-likec4-view":r.id,...u&&!a&&{"data-disabled":!0},onClick:f=>{f.stopPropagation(),p()},onKeyDown:ay({siblingSelector:"[data-likec4-view]",parentSelector:"[data-likec4-search-views]",activateOnFocus:!1,loop:n,orientation:"vertical",onKeyDown:f=>{f.nativeEvent.code==="Space"&&(f.stopPropagation(),p())}}),children:[y.jsx(Ta,{variant:"transparent",className:M2.icon,children:r.isDeploymentView()?y.jsx(iR,{stroke:1.8}):y.jsx(bi,{stroke:1.8})}),y.jsxs(hr,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",children:[y.jsx(tc,{component:"div",highlight:o,className:M2.title,children:r.title||"untitled"}),u&&y.jsx(ec,{size:"xs",fz:9,radius:"sm",children:"current"})]}),y.jsx(tc,{highlight:r.description.nonEmpty?o:"",component:"div",className:M2.description,lineClamp:1,children:r.description.text||"No description"})]})]})}const mm=aee(),PWe=S.memo(()=>{const e=Fo(),r=uR(),n=S.useMemo(()=>{const a=r.split(".");let i;tp(a)||a[0]==="kind:"?i=e.elements():i=Is(e.elements(),d=>r.startsWith("kind:")?d.kind.toLocaleLowerCase().startsWith(r.slice(5)):r.startsWith("#")?d.tags.some(u=>u.toLocaleLowerCase().includes(r.slice(1))):(d.title+" "+d.id+" "+d.summary.text).toLocaleLowerCase().includes(r));const l={},{all:s,roots:c}=Jr([...i],Jc,mw((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(o0)):d.roots.push(p),d.all.push(p),d},{all:[],roots:[]}));return{all:s,byid:l,roots:c.sort(o0)}},[e,r]),o=dee();return n.all.length===0?y.jsx(cee,{}):y.jsx(IWe,{data:n,handleClick:o})}),BWe=()=>{};function IWe({data:{all:e,byid:r,roots:n},handleClick:o}){const a=_y({multiple:!1});a.setHoveredNode=BWe,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&&(ki(l),h0(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=lee(s,"views");let f=p.length>1?p.find((g,v,w)=>iee(g)>u||v===w.length-1):null;f??=hf(p),f&&(ki(l),f.focus());return}if(l.key===" "||l.key==="Enter"){ki(l),o(d.element);return}}});return y.jsx(Ff,{"data-likec4-search-elements":!0,allowRangeSelection:!1,clearSelectionOnOutsideClick:!0,selectOnClick:!1,tree:a,data:n,levelOffset:"lg",classNames:{root:EWe,node:Ge(j2,SWe),label:CWe,subtree:$We},onKeyDownCapture:i,renderNode:OWe})}function OWe({node:e,elementProps:r,hasChildren:n,expanded:o}){const{element:a,searchTerms:i}=e,l=G5e({element:{id:a.id,title:a.title,shape:a.shape,icon:a.icon},className:Ge(mm.icon,jWe)}),s=[...a.views()],c=dee(),d=`@tree.${e.value}`;return y.jsxs(Rr,{layoutId:d,...r,children:[y.jsx(lr,{variant:"transparent",size:16,tabIndex:-1,className:Ge(RWe),style:{visibility:n?"visible":"hidden"},children:y.jsx(Dd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${o?"90deg":"0"})`,width:"100%"}})}),y.jsxs(pr,{component:wi,layout:!0,tabIndex:-1,"data-value":a.id,className:Ge(mm.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:zWe,children:[y.jsx(tc,{component:"div",highlight:i,className:mm.title,children:e.label}),y.jsx(_n,{label:a.id,withinPortal:!1,fz:"xs",disabled:!a.id.includes("."),children:y.jsx(tc,{component:"div",highlight:i,className:Ge(TWe,mm.descriptionColor),children:Jg(a.id)})})]}),y.jsx(tc,{component:"div",highlight:i,className:mm.description,lineClamp:1,children:a.summary.text||"No description"})]}),y.jsx(at,{component:"div",className:Ge(AWe,mm.descriptionColor),fz:"xs",children:s.length===0?"No views":y.jsxs(y.Fragment,{children:[s.length," view",s.length>1?"s":""]})})]})]})}function dee(){const e=Nt(),r=Nd();return it(n=>{const o=[...n.views()];if(o.length===0)return;const a=n.id,i=fw(o)?.id;if(!i){r.send({type:"pickview.open",elementFqn:a});return}const l=i===e.currentView.id;r.send({type:"close"}),see(()=>{if(l){e.focusOnElement(a);return}e.navigateTo(i,void 0,a)})})}const LWe=fe({border:"transparent",background:{base:"transparent",_focusWithin:{base:"mantine.colors.gray[4]/55 !important",_dark:"mantine.colors.dark[5]/55 !important"},_groupHover:{base:"mantine.colors.gray[3]/35",_dark:"mantine.colors.dark[5]/35"}}}),FWe=fe({position:"absolute",inset:"0",width:"100%",height:"100%",backgroundColor:"[rgb(34 34 34 / 0.7)]",zIndex:902,backdropFilter:"auto",backdropBlur:"10px",_light:{backgroundColor:"[rgb(255 255 255 / 0.6)]"}}),VWe=fe({position:"absolute",top:"[2rem]",left:"[50%]",width:"100%",maxWidth:"600px",minWidth:"200px",transform:"translateX(-50%)",zIndex:903}),uee=fe({marginTop:"2","& + &":{marginTop:"[32px]"}});fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}});function qWe({elementFqn:e}){const r=Nd(),n=Fo().element(e),o=[],a=[];for(const l of n.views())l.viewOf===n?o.push(l):a.push(l);const i=()=>{r.send({type:"pickview.close"})};return kf("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(Rr,{className:FWe,onClick:l=>{l.stopPropagation(),i()}},"pickview-backdrop"),y.jsx(l3,{children:y.jsxs(Rr,{initial:{opacity:0,scale:.95,originY:0,translateX:"-50%",translateY:-20},animate:{opacity:1,scale:1,translateY:0},exit:{opacity:0,scale:.98,translateY:-20,transition:{duration:.1}},className:VWe,"data-likec4-search-views":!0,children:[y.jsxs(en,{px:"sm",py:"md",justify:"space-between",children:[y.jsx(pp,{order:2,lh:1,children:"Select view"}),y.jsx(lr,{size:"md",variant:"default",onClick:l=>{l.stopPropagation(),i()},children:y.jsx(fp,{})})]}),y.jsxs(oa,{mah:"calc(100vh - 110px)",type:"never",children:[o.length>0&&y.jsxs(Lo,{gap:"sm",px:"sm",className:uee,children:[y.jsx(pp,{order:6,c:"dimmed",children:"scoped views of the element"}),o.map((l,s)=>y.jsx(fR,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0}},l.id))]}),a.length>0&&y.jsxs(Lo,{gap:"sm",px:"sm",className:uee,children:[y.jsx(pp,{order:6,c:"dimmed",children:"views including this element"}),a.map((l,s)=>y.jsx(fR,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0&&o.length===0}},l.id))]})]})]},"pickview")})]})}function HWe(){const e=S.useRef(null);let r=Fo().tagsSortedByUsage,n=gWe(),o=uR(),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(Or,{ref:e,css:{gap:"md",paddingLeft:"[48px]",flexWrap:"nowrap"},children:[y.jsx(Or,{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(u2,{tag:l,className:fe({userSelect:"none",cursor:"pointer"}),onClick:s=>{s.stopPropagation(),n(`#${l}`),setTimeout(()=>{D2(e.current)},350)}},l))}),i&&y.jsx(Vn,{size:"compact-xs",variant:"light",onClick:l=>{l.stopPropagation(),n(""),h0(e.current)},rightSection:y.jsx(fp,{size:14}),children:"Clear"})]}))}const UWe=[["path",{d:"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M21 21l-6 -6",key:"svg-1"}]],mR=wt("outline","search","Search",UWe);function pee(e){return e.match(/^(k|ki|kin|kind|kind:)$/)!=null}const WWe=["#","kind:"],GWe=S.memo(()=>{const e=Nd(),r=Fo(),n=S.useRef(null),{ref:o,focused:a}=kze(),[i,l]=fWe(),s=IW({scrollBehavior:"smooth",loop:!1});kf("keydown",u=>{try{!a&&(u.key==="Backspace"||u.key.startsWith("Arrow")||u.key.match(new RegExp("^\\p{L}$","u")))&&h0(n.current)}catch(p){console.warn(p)}});let c=[],d=!1;switch(!0){case 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(fy,{children:"No tags found"},"empty-tags")]):(d=r.tags.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(my,{value:`#${f}`,children:[y.jsx(at,{component:"span",opacity:.5,mr:1,fz:"sm",children:"#"}),f]},f)));break}case i.startsWith("kind:"):case pee(i):{const u=i.length>5?i.slice(5).toLocaleLowerCase():"";let p=l9(r.specification.elements);u&&(p=p.filter(f=>f.toLocaleLowerCase().includes(u))),p.length===0?(d=!1,c=[y.jsx(fy,{children:"No kinds found"},"empty-kinds")]):(d=p.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(my,{value:`kind:${f}`,children:[y.jsx(at,{component:"span",opacity:.5,mr:1,fz:"sm",children:"kind:"}),f]},f)));break}}return y.jsxs(eo,{onOptionSubmit:u=>{l(u),s.resetSelectedOption(),WWe.includes(u)||(s.closeDropdown(),setTimeout(()=>{D2(n.current)},350))},width:"max-content",position:"bottom-start",shadow:"md",offset:{mainAxis:4,crossAxis:50},store:s,withinPortal:!1,children:[y.jsx(kS,{children:y.jsx(za,{ref:$r(n,o),placeholder:"Search by title, description or start with # or kind:",autoFocus:!0,"data-autofocus":!0,"data-likec4-search-input":!0,tabIndex:0,classNames:{input:LWe},size:"lg",value:i,leftSection:y.jsx(mR,{style:{width:$e(20)},stroke:2}),rightSection:y.jsx(za.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(),ki(u);case c.length===1:return s.selectFirstOption()&&s.clickSelectedOption(),ki(u);case pee(i):return l("kind:"),ki(u)}return}if(u.key==="Backspace"&&s.dropdownOpened){if(i==="kind:")return l(""),s.resetSelectedOption(),ki(u);if(i.startsWith("kind:")&&d)return l("kind:"),s.resetSelectedOption(),ki(u);if(i.startsWith("#")&&d)return l("#"),s.resetSelectedOption(),ki(u)}if(u.key==="Escape"&&s.dropdownOpened&&c.length>0){ki(u),s.closeDropdown();return}if(u.key==="ArrowUp"&&s.dropdownOpened&&i===""&&s.getSelectedOptionIndex()===0){s.closeDropdown(),ki(u);return}if(u.key==="ArrowDown"&&(!s.dropdownOpened||c.length===0||d||i===""&&s.getSelectedOptionIndex()===c.length-1)){s.closeDropdown(),ki(u),D2(n.current);return}}})}),y.jsx(m3,{hidden:c.length===0,style:{minWidth:300},children:y.jsx(g3,{children:y.jsx(oa,{mah:"min(322px, calc(100cqh - 50px))",type:"scroll",children:c})})})]})}),YWe=fe({backgroundColor:"[rgb(34 34 34 / var(--_opacity, 95%))]",_light:{backgroundColor:"[rgb(250 250 250 / var(--_opacity, 95%))]"},backdropFilter:"auto",backdropBlur:"var(--_blur, 10px)"}),XWe=fe({width:"100%",height:"100%",maxHeight:"100vh",overflow:"hidden",display:"flex",flexDirection:"column",justifyContent:"stretch",gap:"sm",paddingTop:"[20px]",paddingLeft:"md",paddingRight:"md",paddingBottom:"sm",background:"[transparent]"}),ZWe=e=>!e.matches("inactive");function KWe({searchActorRef:e}){const r=pn(e,ZWe),n=()=>{e.send({type:"open"})},o=it(()=>{e.send({type:"close"})});return bze([["mod+k",n,{preventDefault:!0}],["mod+f",n,{preventDefault:!0}]]),y.jsx(pWe,{value:e,children:y.jsx(mp.Overlays,{children:y.jsx(HG,{FallbackComponent:UG,onReset:o,children:y.jsx(Cn,{children:r&&y.jsx(p0,{fullscreen:!0,withBackdrop:!1,backdrop:{opacity:.9},classes:{dialog:YWe,body:XWe},openDelay:0,onClose:o,"data-likec4-search":"true",children:y.jsx(QWe,{searchActorRef:e})})})})})})}const hee=fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}}),QWe=({searchActorRef:e})=>{const r=S.useRef(null),n=vWe();return wx(()=>{Kn(e.getSnapshot().context.openedWithSearch)&&D2(r.current)},150),y.jsxs(hr,{ref:r,display:"contents",children:[y.jsx(en,{className:"group",wrap:"nowrap",onClick:o=>{o.stopPropagation(),h0(r.current)},children:y.jsxs(hp,{flex:1,px:"sm",children:[y.jsx(GWe,{}),y.jsx(HWe,{})]})}),y.jsxs(yy,{children:[y.jsx(cp,{span:6,children:y.jsx(pp,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Elements"})}),y.jsx(cp,{span:6,children:y.jsx(pp,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Views"})})]}),y.jsxs(yy,{className:fe({containerName:"likec4-search-elements",containerType:"size",overflow:"hidden",flexGrow:1}),children:[y.jsx(cp,{span:6,children:y.jsx(es,{type:"scroll",className:hee,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(lm,{id:"likec4-search-elements",children:y.jsx(PWe,{})})})})}),y.jsx(cp,{span:6,children:y.jsx(es,{type:"scroll",className:hee,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(lm,{id:"likec4-search-views",children:y.jsx(NWe,{})})})})})]}),n&&y.jsx(qWe,{elementFqn:n})]})};function JWe({children:e}){const r=S.useContext(WS);if(!r)throw new Error("PortalToContainer must be used within RootContainer");return y.jsx(py,{target:r.ref.current??`#${r.id}`,children:e})}const fee={onNavigateTo:null,onNodeClick:null,onNodeContextMenu:null,onCanvasContextMenu:null,onEdgeClick:null,onEdgeContextMenu:null,onCanvasClick:null,onCanvasDblClick:null,onBurgerMenuClick:null,onOpenSource:null,onInitialized:null,onLayoutTypeChange:null},gR=l9(fee),mee=S.createContext({...hw(gR,e=>[e,null]),handlersRef:{current:fee}});function eGe({handlers:e,children:r}){const n=Kh(e),o=gR.map(i=>ey(e[i])),a=S.useMemo(()=>({...hw(gR,i=>n.current[i]?[i,(...l)=>n.current[i]?.(...l)]:[i,null]),handlersRef:n}),[n,...o]);return y.jsx(mee.Provider,{value:a,children:r})}function gm(){return S.useContext(mee)}const gee=(e,r)=>e.find(o=>"modelFqn"in o.data&&o.data.modelFqn===r)||null;function zr(e){return{get overlaysActorRef(){return e.get("overlays")??null},get diagramActorRef(){return mt(e.get("diagram"),"Diagram actor not found")},get searchActorRef(){return e.get("search")??null},get editorActorRef(){return e.get("editor")??null}}}zr.editorActor=({system:e})=>e.get("editor"),zr.overlaysActor=({system:e})=>e.get("overlays"),zr.diagramActor=({system:e})=>e.get("diagram"),zr.searchActor=({system:e})=>e.get("search");function ym(e,r){return e.view.nodes.find(n=>n.id===r)??null}function yR(e,r){return e.view.edges.find(n=>n.id===r)??null}function tGe(e){const r=new Map,n=e.context.xynodes.reduce((o,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 rGe=32;function nGe(e){const r=mt(e.context.activeWalkthrough),n=mt(e.context.xyedges.find(c=>c.id===r.stepId)),o=e.context.xystore.getState(),a=mt(o.nodeLookup.get(n.source)),i=mt(o.nodeLookup.get(n.target)),l=EF([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??=oGe(n,o),s?s=ko.merge(s,l):s=l,{duration:350,bounds:ko.expand(s,rGe)}}function oGe(e,r){const n=r.nodeLookup.get(e.source),o=r.nodeLookup.get(e.target);if(!n||!o)return null;const a=WF({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 vR(e){switch(e.type){case"element":case"compound-element":case"seq-actor":return e.data.modelFqn;case"deployment":case"compound-deployment":return e.data.modelFqn??e.data.deploymentFqn;case"seq-parallel":case"view-group":return null;default:Qo(e)}}function aGe(e,r){const n=e.lastOnNavigate?.fromNode,o=n&&e.xynodes.find(l=>l.id===n),a=o&&vR(o),i=a&&r.xynodes.find(l=>vR(l)===a);return{fromNode:o,toNode:i}}function iGe(e,r){let{width:n,height:o,transform:a}=e.xystore.getState();const i=Math.max(a[2],1);return Ws(r,n,o,xi,i,e.fitViewPadding)}const lGe=ns({delays:{"open timeout":({context:e})=>e.openTimeout,"close timeout":600,"long idle":1500},actions:{"update edgeId":Bt(({context:e,event:r})=>(ht(r,["xyedge.select","xyedge.mouseEnter"]),{edgeId:r.edgeId,edgeSelected:e.edgeSelected||r.type==="xyedge.select"})),"increase open timeout":Bt(()=>({openTimeout:800})),"decrease open timeout":Bt(()=>({openTimeout:300})),"reset edgeId":Bt({edgeId:null,edgeSelected:!1})},guards:{"edge was selected":({context:e})=>e.edgeSelected,"edge was hovered":({context:e})=>!e.edgeSelected}}).createMachine({id:"breadcrumbs",context:()=>({edgeId:null,edgeSelected:!1,openTimeout:800}),initial:"idle",on:{close:{target:"#idle",actions:["reset edgeId","increase open timeout"]}},states:{idle:{id:"idle",on:{"xyedge.mouseEnter":{target:"opening",actions:"update edgeId"},"xyedge.select":{target:"active",actions:"update edgeId"}},after:{"long idle":{actions:"increase open timeout"}}},opening:{on:{"xyedge.mouseLeave":{target:"idle"},"xyedge.select":{target:"active",actions:"update edgeId"}},after:{"open timeout":{actions:"decrease open timeout",target:"active"}}},active:{tags:["opened"],initial:"opened",exit:"reset edgeId",on:{"xyedge.unselect":{target:"idle",actions:"increase open timeout"},"xyedge.select":{actions:"update edgeId"}},states:{opened:{on:{"dropdown.mouseEnter":{target:"hovered"},"xyedge.mouseLeave":{guard:"edge was hovered",target:"closing"}}},hovered:{on:{"dropdown.mouseLeave":[{guard:"edge was selected",target:"opened"},{target:"closing"}]}},closing:{on:{"xyedge.mouseEnter":{guard:"edge was hovered",target:"opened",actions:"update edgeId"},"xyedge.select":{target:"opened",actions:"update edgeId"},"dropdown.mouseEnter":{target:"hovered"}},after:{"close timeout":{target:"#idle"}}}}}}}),sGe=lGe,yee=fe({display:"block",fontSize:"xxs",fontWeight:500,whiteSpace:"nowrap",paddingX:"1",paddingY:"0.5",borderRadius:"[2px]",background:{_light:"var(--likec4-palette-fill)/90",_dark:"var(--likec4-palette-fill)/60"},lineHeight:"1",color:{_light:"var(--likec4-palette-hiContrast)",_dark:"var(--likec4-palette-loContrast)"}}),cGe=fe({whiteSpaceCollapse:"preserve-breaks",fontSize:"sm",lineHeight:"sm",userSelect:"all"});function dGe(e){let r=null;for(const n of e.xyedges)if(n.selected){if(r){r=null;break}r=n.data.id}return{viewId:e.view.id,selected:r}}const uGe=S.memo(()=>{const e=Fo(),r=vE(sGe),n=Nt(),{viewId:o,selected:a}=pi(dGe),i=pn(r,g=>g.hasTag("opened")?g.context.edgeId:null);ja("navigateTo",()=>{r.send({type:"close"})}),ja("edgeMouseEnter",({edge:g})=>{r.send({type:"xyedge.mouseEnter",edgeId:g.data.id})}),ja("edgeMouseLeave",()=>{r.send({type:"xyedge.mouseLeave"})}),ja("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}=pi(g=>{const v=i?yR(g,i):null,w=v?ym(g,v.source):null,x=v?ym(g,v.target):null;return{diagramEdge:v,sourceNode:w,targetNode:x}},Ir,[i]);if(!c||!d||!u||tp(c.relations))return null;const[p,f]=Jr(c.relations,un(g=>{try{return e.relationship(g)}catch(v){return console.error(`View is cached and likec4model missing relationship ${g} from ${d.id} -> ${u.id}`,v),null}}),ep(Kn),qq(g=>g.source.id===d.id&&g.target.id===u.id));return p.length===0&&f.length===0?(console.warn("No relationships found diagram edge",{diagramEdge:c,sourceNode:d,targetNode:u}),null):y.jsx(JWe,{children:y.jsx(fGe,{viewId:o,direct:p,nested:f,diagramEdge:c,sourceNode:d,targetNode:u,onMouseEnter:l,onMouseLeave:s})})}),pGe=(e,r)=>r?.querySelector(`.likec4-edge-label[data-edge-id="${e}"]`)??r?.querySelector(`.likec4-edge-middle-point[data-edge-id="${e}"]`)??null,hGe=8,fGe=({viewId:e,diagramEdge:r,direct:n,nested:o,sourceNode:a,targetNode:i,onMouseEnter:l,onMouseLeave:s})=>{const c=S.useRef(null),{enableNavigateTo:d,enableVscode:u,enableCompareWithLatest:p}=sr(),{onOpenSource:f}=gm(),g=dNe(),[v,w]=S.useState(null);S.useLayoutEffect(()=>{w(pGe(r.id,g.current))},[r]),S.useEffect(()=>{const C=v,_=c.current;if(!C||!_)return;let $=!1;const R=Zw(C,_,()=>{$U(C,_,{placement:"bottom-start",middleware:[_U(4),Kje({crossAxis:!0,allowedPlacements:["bottom-start","bottom-end","left-start","top-start","top-end","right-start","right-end","left-end"]}),SU({apply({availableHeight:T,availableWidth:A,elements:z}){$||Object.assign(z.floating.style,{maxWidth:`${ti(Md(A),{min:220,max:400})}px`,maxHeight:`${ti(Md(T),{min:100,max:500})}px`})}}),EU({padding:hGe*2})]}).then(({x:T,y:A,middlewareData:z})=>{$||(_.style.transform=`translate(${Md(T)}px, ${Md(A)}px)`,_.style.visibility=z.hide?.referenceHidden?"hidden":"visible")})},{ancestorResize:!1,animationFrame:!0});return()=>{$=!0,R()}},[v]);const x=Nt(),k=S.useCallback((C,_)=>y.jsxs(S.Fragment,{children:[_>0&&y.jsx(sp,{}),y.jsx(gGe,{viewId:e,relationship:C,sourceNode: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(oa,{ref:c,onMouseEnter:l,onMouseLeave:s,type:"auto",scrollbars:"y",scrollbarSize:6,styles:{viewport:{overscrollBehavior:"contain",minWidth:200,minHeight:40}},className:Ge(fe({layerStyle:"likec4.dropdown",p:"0",pointerEvents:{base:"all",_whenPanning:"none"},position:"absolute",top:"0",left:"0",width:"max-content",cursor:"default"})),children:y.jsxs(hp,{css:{gap:"3",padding:"4",paddingTop:"2"},children:[p&&y.jsx(mGe,{diagramEdge:r}),y.jsx(Vn,{variant:"default",color:"gray",size:"compact-xs",style:{alignSelf:"flex-start",fontWeight:500,"--button-fz":"var(--font-sizes-xxs)"},onClick:C=>{C.stopPropagation(),x.openRelationshipDetails(r.id)},children:"browse relationships"}),n.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{children:"DIRECT RELATIONSHIPS"}),n.map(k)]}),o.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{css:{mt:n.length>0?"2":"0"},children:"RESOLVED FROM NESTED"}),o.map(k)]})]})})},mGe=({diagramEdge:e})=>{const r=e.drifts;return!r||r.length===0?null:y.jsx(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:r.map(n=>y.jsxs(at,{mt:2,size:"sm",lh:"xs",children:["- ",n]},n))})},gGe=S.forwardRef(({viewId:e,relationship:r,sourceNode:n,targetNode:o,onNavigateTo:a,onOpenSource:i},l)=>{const s=vee(r,"source",n),c=vee(r,"target",o),d=a&&r.navigateTo?.id!==e?r.navigateTo?.id:void 0,u=r.links,p=r.hasMetadata()?uw(r.getMetadata()).sort(([g],[v])=>g.localeCompare(v)):null,f=p&&y.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[y.jsx("div",{style:{fontWeight:600,fontSize:"10px",color:"#868e96",marginBottom:"2px",letterSpacing:"0.5px",textTransform:"uppercase"},children:"Metadata"}),y.jsx("div",{style:{borderTop:"1px solid rgba(0, 0, 0, 0.1)",paddingTop:"6px",display:"flex",flexDirection:"column",gap:"6px"},children:p.map(([g,v])=>{const w=Array.isArray(v)?v.join(", "):v;return y.jsxs("div",{style:{display:"flex",gap:"12px",fontSize:"12px",lineHeight:"1.4"},children:[y.jsxs("span",{style:{fontWeight:600,minWidth:"110px",color:"#495057"},children:[g,":"]}),y.jsx("span",{style:{color:"#212529",wordBreak:"break-word",flex:1},children:w})]},g)})})]});return y.jsxs(hp,{ref:l,className:qG({block:"2",inline:"2",paddingY:"2.5",paddingX:"2",gap:"1",rounded:"sm",backgroundColor:{_hover:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]/70"}}}),children:[y.jsx(Or,{gap:"0.5",children:y.jsxs(dp,{openDelay:200,children:[y.jsx(f0,{label:s.full,offset:2,position:"top-start",children:y.jsx(at,{component:"div","data-likec4-color":n.color,className:yee,children:s.short})}),y.jsx(hm,{stroke:2.5,size:"11px",opacity:.65}),y.jsx(f0,{label:c.full,offset:2,position:"top-start",children:y.jsx(at,{component:"div","data-likec4-color":o.color,className:yee,children:c.short})}),d&&y.jsx(f0,{label:"Open dynamic view",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),a?.(d)},style:{alignSelf:"flex-end"},role:"button",children:y.jsx(bi,{size:"80%",stroke:2})})}),i&&y.jsx(f0,{label:"Open source",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),i()},role:"button",children:y.jsx(dm,{size:"80%",stroke:2})})})]})}),y.jsxs(Or,{gap:"xs",alignItems:"center",children:[y.jsx(hr,{className:cGe,children:r.title||"untitled"}),f&&y.jsx(f0,{label:f,w:350,position:"right",offset:10,openDelay:300,withArrow:!0,bg:"white",c:"dark",withinPortal:!0,styles:{tooltip:{boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)",border:"1px solid #dee2e6"}},children:y.jsx(hr,{display:"inline-flex",children:y.jsx(r0,{size:14,opacity:.5,style:{flexShrink:0,cursor:"help"}})})})]}),r.kind&&y.jsxs(Or,{gap:"2",children:[y.jsx(vm,{children:"kind"}),y.jsx(at,{size:"xs",className:fe({userSelect:"all"}),children:r.kind})]}),r.technology&&y.jsxs(Or,{gap:"2",children:[y.jsx(vm,{children:"technology"}),y.jsx(at,{size:"xs",className:fe({userSelect:"all"}),children:r.technology})]}),r.summary.nonEmpty&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{children:"description"}),y.jsx(hr,{css:{paddingLeft:"2.5",py:"1.5",borderLeft:"2px dotted",borderLeftColor:{base:"mantine.colors.gray[3]",_dark:"mantine.colors.dark[4]"}},children:y.jsx(zp,{value:r.summary,fontSize:"sm",textScale:.875})})]}),u.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{children:"links"}),y.jsx(Or,{gap:"1",flexWrap:"wrap",children:u.map(g=>y.jsx(o$,{size:"sm",value:g},g.url))})]})]})}),vm=Ed("div",{base:{display:"block",fontSize:"xxs",fontWeight:500,userSelect:"none",lineHeight:"sm",color:"mantine.colors.dimmed"}}),f0=_n.withProps({color:"dark",fz:"xs",label:"",children:null,offset:8,withinPortal:!1});function vee(e,r,n){const o=e.isDeploymentRelation()?n.id:n.modelRef||"",a=e[r].id,i=Jg(o)+a.slice(o.length);return{full:a,short:i}}function bm(){const e=uNe();return S.useMemo(()=>e?{portalProps:{target:e},withinPortal:!0}:{withinPortal:!1},[e])}const yGe=ns({delays:{"open timeout":500,"close timeout":350},actions:{"update activatedBy":Bt({activatedBy:({context:e,event:r})=>{switch(!0){case r.type.includes("click"):return"click";case r.type.includes("mouseEnter"):return"hover";default:return e.activatedBy}}}),"keep dropdown open":Bt({activatedBy:"click"}),"update selected folder":Bt(({event:e})=>e.type==="breadcrumbs.click.root"?{selectedFolder:""}:(ht(e,["breadcrumbs.click.folder","select.folder"]),{selectedFolder:e.folderPath})),"reset selected folder":Bt({selectedFolder:({context:e})=>e.viewModel?.folder.path??""}),"update inputs":Bt(({context:e,event:r})=>{ht(r,"update.inputs");const n=r.inputs.viewModel?.id!==e.viewModel?.id;let o=e.selectedFolder;return r.inputs.viewModel?.folder.path.startsWith(o)||(o=r.inputs.viewModel?.folder.path??""),{view:r.inputs.view,viewModel:r.inputs.viewModel,selectedFolder:o,activatedBy:n?"hover":e.activatedBy}}),"reset search query":Bt({searchQuery:""}),"update search query":Bt(({event:e})=>(ht(e,"searchQuery.change"),{searchQuery:e.value??""})),"emit navigateTo":mE(({event:e})=>(ht(e,"select.view"),{type:"navigateTo",viewId:e.viewId}))},guards:{"was opened on hover":({context:e})=>e.activatedBy==="hover","has search query":({context:e})=>!tp(e.searchQuery),"search query is empty":({context:e})=>tp(e.searchQuery)}}).createMachine({id:"breadcrumbs",context:({input:e})=>({...e,breadcrumbs:[],activatedBy:"hover",selectedFolder:"",searchQuery:"",folderColumns:[]}),initial:"idle",entry:["update activatedBy","reset selected folder"],on:{"update.inputs":{actions:"update inputs"},"searchQuery.change":{actions:["update search query",ia({type:"searchQuery.changed"})]}},states:{idle:{id:"idle",on:{"breadcrumbs.mouseEnter.*":{target:"pending",actions:"update activatedBy"},"breadcrumbs.click.*":{target:"active",actions:"update activatedBy"}}},pending:{on:{"breadcrumbs.mouseEnter.*":{actions:"update activatedBy"},"breadcrumbs.mouseLeave.*":{target:"idle"},"breadcrumbs.click.*":{target:"active",actions:"update activatedBy"}},after:{"open timeout":{target:"active"}}},active:{tags:["active"],initial:"decide",on:{"dropdown.dismiss":{target:"#idle"},"breadcrumbs.mouseLeave":{guard:"was opened on hover",target:".closing"},"dropdown.mouseLeave":{guard:"was opened on hover",target:".closing"},"searchQuery.changed":{target:".decide"}},states:{decide:{always:[{guard:"has search query",target:"search"},{target:"opened"}]},opened:{on:{"searchQuery.changed":{guard:"has search query",actions:"keep dropdown open",target:"search"},"breadcrumbs.click.viewtitle":{actions:"reset selected folder"},"breadcrumbs.click.*":{actions:"update selected folder"},"select.folder":{actions:["keep dropdown open","update selected folder"]},"select.view":{actions:["emit navigateTo"]}}},search:{on:{"breadcrumbs.click.viewtitle":{actions:["reset search query","reset selected folder"],target:"opened"},"breadcrumbs.click.*":{actions:["reset search query","update selected folder"],target:"opened"},"select.view":{actions:["emit navigateTo"]}}},closing:{on:{"breadcrumbs.mouseEnter.*":{target:"decide"},"dropdown.mouseEnter":{target:"decide"}},after:{"close timeout":{target:"#idle"}}}}}}}),vGe=yGe,bR=S.createContext(null);bR.displayName="NavigationPanelActorSafeContext";const bGe=bR.Provider,xR=()=>{const e=S.useContext(bR);if(e===null)throw new Error("NavigationPanelActorRef is not found in the context");return e};function wR(e,r=Ir){const n=xR();return pn(n,e,r)}function xGe(e,r=Ir){return wR(n=>e(n.context),r)}function m0(){const e=xR();return S.useMemo(()=>({actorRef:e,send:r=>e.send(r),selectFolder:r=>e.send({type:"select.folder",folderPath:r}),selectView:r=>e.send({type:"select.view",viewId:r}),isOpened:()=>e.getSnapshot().hasTag("active"),clearSearch:()=>e.send({type:"searchQuery.change",value:""}),closeDropdown:()=>e.send({type:"dropdown.dismiss"})}),[e])}const bee=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1}),xee=()=>y.jsx(Ta,{component:Rr,variant:"transparent",size:16,className:fe({display:{base:"none","@/md":"flex"},color:{base:"mantine.colors.gray[5]",_dark:"mantine.colors.dark[3]"}}),children:y.jsx(Dd,{})});y3.withProps({separator:y.jsx(xee,{}),separatorMargin:4});const cc=S.forwardRef(({variant:e="default",className:r,disabled:n=!1,type:o,...a},i)=>y.jsx(lr,{size:"md",variant:"transparent",radius:"sm",component:wi,...!n&&{whileHover:{scale:1.085},whileTap:{scale:1,translateY:1}},disabled:n,...a,className:Ge(r,eQ({variant:e,type:o})),ref:i})),N2=T1({base:{fontSize:"sm",fontWeight:"500",transition:"fast",color:{base:"likec4.panel.action",_hover:"likec4.panel.action.hover"}},variants:{truncate:{true:{truncate:!0}},dimmed:{true:{color:{base:"likec4.panel.text.dimmed",_hover:"likec4.panel.action"}}}}}),wGe=S.forwardRef((e,r)=>y.jsxs("svg",{ref:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 222 56",...e,children:[y.jsx("path",{fill:"#5E98AF",d:"M33.95 33.78V0H2.37A2.37 2.37 0 0 0 0 2.35V33.9h33.95v-.12ZM38.57 33.78H55.6v-14.6c0-1.3-1.06-2.35-2.36-2.35H38.57v16.95ZM33.95 38.37H17.04v14.6c0 1.29 1.06 2.35 2.36 2.35h14.67V38.37h-.12ZM38.57 38.37v16.95h14.67c1.3 0 2.36-1.06 2.36-2.36v-14.6H38.57Z"}),y.jsx("path",{className:fe({fill:"[#FCFBF7]",_light:{fill:"[#222221]"}}),d:"M71.61 12.08c-.06 3.61.3 29.95.23 31.87 0 1.8 0 3.6.06 5.41 0 .3.18.58.47.58 4.1.18 8.13-.17 12.22-.11 1.34.05 2.69 0 3.97 0 1.29-.06 1.4-.59 1.35-1.63-.06-1.63-.06-3.08-.06-4.65-.06-.82-.53-1.11-1.23-1.11-2.4.06-4.8-.06-7.19.06-.4.06-.82.06-1.23.06-.7-.06-.87-.24-.93-1v-.86c-.18-4.83.17-9.83.17-14.66-.06-4.07 0-7.73-.06-11.34 0-1.57 0-3.14-.05-4.65-.06-.93 0-1.92-.24-2.85-.11-.35-.29-.81-.7-.81h-5.5c-.93 0-1.22.64-1.28 1.57v4.12ZM103.81 35c-.17-6.63-.1-13.67-.05-20.24 0-2.04-.12-4.25-.12-6.28 0-2.21-.87-2.1-2.04-2.15-1.7-.06-2.46-.06-4.15-.06-1.11-.06-1.58.23-1.58 1.34 0 5.7-.18 21.8-.12 24.13.06 2.33.3 12.91.18 15.24-.06.81 0 1.62.06 2.44.05.29.23.58.7.58 1.93-.12 3.74-.12 5.67-.17.7-.06 1.28-.24 1.58-1 .05-.4-.12-11.04-.12-13.83Zm13.92 4.47c0-2.03-.3-7.56-.23-8.72 0-.17.11-.4.17-.4.12 0 .35.11.41.17 1.87 2.44 10.64 19.36 11.7 19.42.28.06.58.06.87.06 1.99-.12 3.74 0 5.73 0 2.04 0 .7-1.98.35-2.5-.53-.76-7.48-13.14-7.9-13.9-1.16-1.98-2.16-4.13-3.32-6.05-.12-.23-.24-.58-.18-.81.12-.7.3-1.34.59-1.98a93.18 93.18 0 0 1 4.55-8.14c1.88-2.97 2.93-4.83 4.45-7.5.35-.64.58-1.34.82-2.1.05-.29-.18-.58-.53-.58-1.11-.05-5.15 0-6.43 0-.59 0-1.17.12-1.46.64-.76 1.46-8.6 15.7-9.35 16.98-.06.12-.24.18-.41.18 0 0-.12-.18-.12-.3-.06-3.25.53-13.9.4-16.04-.05-1.28-.28-1.4-1.57-1.46-1.4-.05-3.33-.05-4.73-.05-1.3 0-1.4.7-1.58 1.62-.06.18-.06 5.64-.06 8.09 0 3.54-.3 25.76.11 32.8 0 .7.18 1.1.77 1.1 1.57-.12 3.91 0 5.49 0 1.11 0 1.29-.12 1.29-1.98 0-2.5.23-4.77.23-7.85 0-.23-.06-.46-.06-.7Zm25.66-1.4h-.06c0 1.46-.05 2.97 0 4.49.06 1.86.18 3.72.3 5.58 0 .64.17.81.76.93 1.22.29 2.4.35 3.62.35 3.16-.12 6.31.11 9.47 0 1.29-.06 1.87.06 3.16-.18 1.17-.23 1.58-.87 1.58-2.61-.12-1.1-.06-1.57-.06-2.91 0-1.92-1.35-2.56-2.52-2.5-.81.06-4.73-.06-6.31-.06-2.63.06-2.22.4-2.22-2.33 0-2.2.06-5.05.06-7.32 0-1.22.11-1.63 1.28-1.63h7.31c1.17.17 1.99-.64 1.99-1.86 0-1.22.12-1.28.12-2.5l-.18-1.75c-.12-.99-.47-1.33-1.46-1.33-.64 0-1.29.05-1.93.11-2.52.18-3.68-.17-6.14 0-.82 0-.93-.11-1-.87-.23-2.27 0-4.77.24-7.04.06-.93.3-1.1 1.17-1.16l8.24-.06c1.11-.11 1.46-.06 1.4-1.16-.11-1.69.06-3.43-.11-5.12-.12-.93-.41-1.1-1.46-1.1-1.76.05-2.17.05-3.92.17-1.75.06-8.77.06-10.46.06-2.46 0-2.63-.18-2.7 2.8-.1 2.32-.05 4.7-.05 7.09 0 4.07-.23 18.66-.12 21.92Zm47.76-24.82c.06-1.92 0-3.5 0-5.35 0-2.15-3.92-1.92-5.32-1.86a18.95 18.95 0 0 0-15.08 9.77c-.82 1.57-1.4 3.2-1.81 4.88a34 34 0 0 0-.59 12.15c.41 3.78 1.4 7.56 3.74 10.59 4.04 5.3 11.46 7.15 17.83 6.16.3-.06.59-.11.82-.29.18-.11.35-.35.35-.58l.18-3.31c.06-1.05 0-1 0-2.04 0-1.4-2.93-.35-4.74-.35-1.75 0-3.62-.06-5.2-.87-2.8-1.57-4.38-4.71-5.26-7.68-1-3.2-1.23-6.63-.64-9.88.7-4.25 2.74-9.13 7.25-10.59 2.57-.87 5.31-.58 7.89-.29.35.06.58-.17.58-.46Zm26.77 15.3c.06-2.5 0-14.84 0-18.38.06-.82 0-1.63-.11-2.45-.06-.99-.24-1.28-1.29-1.33h-4.44c-.82 0-1.35.4-1.82 1.27-1.34 3.2-10.75 24.02-12.15 26.58-.53.99-1 1.63-1 2.68v4.24c0 .76-.06 1.28 1.23 1.28l11.1-.06c1.47 0 1.47.3 1.47 1.1 0 .88-.12 4.9-.12 5.3 0 .58.12 1.16 1.23 1.16h5.08c1.23 0 1.23-.7 1.23-2.03.06-1.17-.06-3.5-.06-4.66 0-.93.18-.98 1.76-.98 1.22 0 1.75-.12 1.75-.88.06-1.57 0-2.67 0-4.42 0-1.04-.93-.98-2.92-.98-.65 0-.7-.18-.7-1.05-.12-1.8-.24-4.6-.24-6.4Zm-7.25-5.94c-.05.7-.11 10.82-.11 12.27-.06.81-.24 1.05-1 1.1-1.93.06-3.85.06-5.78.06-.47 0-.65-.4-.41-.87.23-.4 4.85-11.57 6.13-14.48.18-.17.24-.35.41-.52.18-.12.41-.18.59-.23.06 0 .23.29.23.46 0 .76-.06 1.51-.06 2.21Z"})]})),kGe=S.forwardRef((e,r)=>y.jsx("svg",{ref:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 56 56",...e,children:y.jsx("path",{fill:"#5E98AF",d:"M33.95 33.78V0H2.37A2.37 2.37 0 0 0 0 2.35V33.9h33.95v-.12ZM38.57 33.78H55.6v-14.6c0-1.3-1.06-2.35-2.36-2.35H38.57v16.95ZM33.95 38.37H17.04v14.6c0 1.29 1.06 2.35 2.36 2.35h14.67V38.37h-.12ZM38.57 38.37v16.95h14.67c1.3 0 2.36-1.06 2.36-2.36v-14.6H38.57Z"})})),_Ge=()=>{const e=m0(),{onBurgerMenuClick:r}=gm();return y.jsx(Rr,{layout:"position",children:y.jsxs(pr,{onMouseEnter:()=>{e.send({type:"breadcrumbs.mouseEnter.root"})},onMouseLeave:()=>{e.send({type:"breadcrumbs.mouseLeave.root"})},onClick:n=>{n.stopPropagation(),r&&e.isOpened()&&setTimeout(()=>{r()},100),e.send({type:"breadcrumbs.click.root"})},className:Ge("mantine-active",qn({padding:"0.5",width:{base:"[20px]","@/md":"[64px]"}})),children:[y.jsx(wGe,{className:fe({display:{base:"none","@/md":"block"}})}),y.jsx(kGe,{className:fe({display:{base:"block","@/md":"none"}})})]})})},SGe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M5 12l6 6",key:"svg-1"}],["path",{d:"M5 12l6 -6",key:"svg-2"}]],EGe=wt("outline","arrow-left","ArrowLeft",SGe),CGe=()=>{const e=Nt(),{hasStepBack:r,hasStepForward:n}=pi(o=>({hasStepBack:o.navigationHistory.currentIndex>0,hasStepForward:o.navigationHistory.currentIndex{o.stopPropagation(),e.navigate("back")},children:y.jsx(EGe,{size:14})}),y.jsx(cc,{disabled:!n,onClick:o=>{o.stopPropagation(),e.navigate("forward")},children:y.jsx(hm,{size:14})})]})},$Ge=[["path",{d:"M9 15l6 -6",key:"svg-0"}],["path",{d:"M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464",key:"svg-1"}],["path",{d:"M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463",key:"svg-2"}]],RGe=wt("outline","link","Link",$Ge),zGe=({context:e})=>{const r=e.view;return{id:r.id,title:e.viewModel?.title??(r.title&&n7(r.title))??"Untitled View",description:e.viewModel?.description??ur.from(r.description),tags:r.tags??[],links:r.links??[]}},TGe=e=>{const[r,n]=S.useState(!1),o=wR(zGe,tt),a=bm();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(jGe,{linksCount:o.links.length,onOpen:()=>n(!0)}),r&&y.jsx(AGe,{data:o,onClose:()=>n(!1)})]})},jGe=({linksCount:e,onOpen:r})=>y.jsx(br.Target,{children:y.jsxs(pr,{component:wi,layout:"position",whileTap:{scale:.95,translateY:1},onClick:n=>{n.stopPropagation(),r()},className:Ge("group",qn({gap:"2",paddingInline:"2",paddingBlock:"1",rounded:"sm",userSelect:"none",cursor:"pointer",color:{base:"likec4.panel.action",_hover:"likec4.panel.action.hover"},backgroundColor:{_hover:"likec4.panel.action.bg.hover"},display:{base:"none","@/xs":"flex"}}),""),children:[y.jsx(nR,{size:16,stroke:1.8}),e>0&&y.jsxs(Or,{gap:"[1px]",children:[y.jsx(RGe,{size:14,stroke:2}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8},children:e})]})]})}),wee=Ed("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}}),AGe=({data:{id:e,title:r,description:n,tags:o,links:a},onClose:i})=>{const l=Nt();return ja("paneClick",i),ja("nodeClick",i),y.jsxs(br.Dropdown,{className:Ge("nowheel nopan nodrag",Ey({margin:"xs",layerStyle:"likec4.dropdown",gap:"md",padding:"md",paddingBottom:"lg",pointerEvents:"all",maxWidth:"calc(100cqw - 52px)",minWidth:"200px",maxHeight:"calc(100cqh - 100px)",width:"max-content",cursor:"default",overflow:"auto",overscrollBehavior:"contain","@/sm":{minWidth:400,maxWidth:550},"@/lg":{maxWidth:700}})),children:[y.jsxs("section",{children:[y.jsx(at,{component:"div",fw:500,size:"xl",lh:"sm",children:r}),y.jsxs(Or,{alignItems:"flex-start",mt:"1",children:[y.jsx(DGe,{label:"id",value:e}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:o.map(s=>y.jsx(u2,{tag:s,cursor:"pointer",onClick:c=>{c.stopPropagation(),l.openSearch(`#${s}`)}},s))})]})]}),a.length>0&&y.jsxs("section",{className:qn({alignItems:"baseline"}),children:[y.jsx(wee,{children:"Links"}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:a.map((s,c)=>y.jsx(o$,{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(wee,{children:"Description"}),y.jsx(zp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})]})},DGe=({label:e,value:r})=>y.jsxs(Or,{gap:"0.5",children:[y.jsx(MGe,{children:e}),y.jsx(ec,{size:"sm",radius:"sm",variant:"light",color:"gray",tt:"none",fw:500,classNames:{root:fe({width:"max-content",overflow:"visible",px:"1",color:{_dark:"mantine.colors.gray[4]",_light:"mantine.colors.gray[8]"}}),label:fe({overflow:"visible"}),section:fe({opacity:.5,userSelect:"none",marginInlineEnd:"0.5"})},children:r})]}),MGe=Ed("div",{base:{color:"mantine.colors.dimmed",fontWeight:500,fontSize:"xxs",userSelect:"none"}}),NGe=()=>{const e=E2(),{enableVscode:r}=sr(),{onOpenSource:n}=gm();return r?y.jsx(bee,{label:"Open View Source",children:y.jsx(cc,{onClick:o=>{o.stopPropagation(),n?.({view:e})},children:y.jsx(dm,{style:{width:"60%",height:"60%"}})})}):null};function kee(e,r){if(e._type==="dynamic")try{if(r??=e.variant,r==="sequence")return e.sequenceLayout.bounds}catch{}return e.bounds}function PGe({points:e,controlPoints:r,labelBBox:n}){let o=1/0,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 BGe({nodes:e,edges:r}){return ko.expand(ko.merge(...e,...r.map(PGe)),10)}function _ee(e){const{view:{drifts:r,_layout:n,...o},xynodes: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(!d2(v,p)||p.width!==w||p.height!==x)&&c.add(p.id),{...p,shape:g.shape,color:g.color,style:{...g.style},x:Math.floor(v.x),y:Math.floor(v.y),width:Math.ceil(w),height:Math.ceil(x)}}),u=un(o.edges,p=>{const f=s.get(p.id);if(!f)return console.error(`Internal edge not found for ${p.id}`),p;const g=f.data;let v=g.controlPoints??[];const w=c.has(f.source)||c.has(f.target);v.length===0&&w&&(v=c2(g.points));const x={...ud(p,["controlPoints","labelBBox"]),points:g.points};return g.labelBBox&&(x.labelBBox=g.labelBBox),xn(v,1)&&(x.controlPoints=v),x});return{op:"save-view-snapshot",layout:{...o,_layout:"manual",bounds:BGe({nodes:d,edges:u}),nodes:d,edges:u}}}const IGe=function(e){return e.get("diagram")},See=function(e){return e.get("diagram").getSnapshot().context},Eee=()=>Rn.raise({type:"sync"},{delay:200,id:"sync"}),xm=()=>Rn.cancel("sync"),Cee=(e=50)=>Rn.raise(({event:r})=>r,{delay:e}),$ee=e=>e.op==="reset-manual-layout"||e.op==="save-view-snapshot",Ree=ep(S$e($ee)),zee=()=>Rn.assign(({system:e})=>{const r=See(e);return{beforeEditing:{xynodes:r.xynodes.map(({measured:n,...o})=>({...ud(o,["selected","dragging","resizing"]),data:ud(o.data,["dimmed","hovered"]),measured:n,initialWidth:n?.width??o.width??o.initialWidth,initialHeight:n?.height??o.height??o.initialHeight})),xyedges:r.xyedges.map(n=>({...ud(n,["selected"]),data:ud(n.data,["active","dimmed","hovered"])})),change:_ee(r),view:r.view,synched:!1}}}),OGe=()=>Rn.enqueueActions(({enqueue:e,event:r})=>{e(zee()),r.type==="edit.start"&&e.assign({editing:r.subject})}),LGe=()=>Rn.stopChild("hotkey"),kR=()=>Rn.enqueueActions(({check:e,enqueue:r,self:n})=>{const o=e("can undo"),a=n.getSnapshot().children.hotkey;if(!o&&a){r.stopChild(a);return}o&&!a&&r.spawnChild("hotkey",{id:"hotkey"})}),Tee=()=>Rn.assign(({context:e})=>{const r=e.beforeEditing;return r?{beforeEditing:null,editing:null,history:[...e.history,r]}:{editing:null}}),_R=()=>Rn.enqueueActions(({event:e,enqueue:r})=>{if(e.type==="edit.finish"&&e.wasChanged){r(Tee()),r(Eee());return}r.assign({beforeEditing:null,editing:null})}),FGe=()=>Rn.assign(({context:e})=>({beforeEditing:e.beforeEditing&&e.beforeEditing.synched===!1?{...e.beforeEditing,synched:!0}:e.beforeEditing,history:e.history.map(r=>({...r,synched:!0}))})),VGe=()=>Rn.assign(({context:e})=>e.history.length<=1?{history:[]}:{history:e.history.slice(0,e.history.length-1)}),qGe=()=>Rn.enqueueActions(({context:e,enqueue:r,system:n})=>{const o=dd(e.history);if(!o)return;r(xm()),r(VGe()),r(kR());const a=IGe(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(Eee())}),SR=()=>Rn.assign(({context:e,system:r})=>{const n=See(r),o=_ee(n);return{pendingChanges:[...Ree(e.pendingChanges),o]}}),HGe=B3(({sendBack:e})=>{const r=$w([["mod + z",n=>{n.stopPropagation(),e({type:"undo"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),UGe=zy(()=>{throw new Error("Not implemented")}),WGe=zy(()=>{throw new Error("Not implemented")}),jee=function(e){return e.system.get("diagram")},Rn=ns({delays:{"350ms":350,waitBeforeSync:2e3},actors:{applyLatest:UGe,executeChange:WGe,hotkey:HGe},guards:{"has pending":({context:e})=>e.pendingChanges.length>0,"can undo":({context:e})=>e.history.length>0}}),Hn={idle:{target:"#idle"},editing:{target:"#editing"},afterEdit:{target:"#afterEdit"},pending:{target:"#pending"},applyLatestToManual:{target:"#applyLatestToManual"},executeChanges:{target:"#executeChanges"}},GGe=Rn.createStateConfig({id:"idle",on:{sync:{...Hn.pending},"edit.start":{...Hn.editing}}}),YGe=Rn.createStateConfig({id:"editing",tags:"pending",entry:[OGe(),xm()],on:{change:{actions:_R(),...Hn.executeChanges},"edit.finish":{actions:_R(),...Hn.afterEdit},undo:{actions:_R(),...Hn.idle}}}),XGe=Rn.createStateConfig({id:"pending",tags:["pending"],entry:kR(),on:{sync:{reenter:!0,...Hn.pending},"edit.start":{actions:[SR()],...Hn.editing}},after:{waitBeforeSync:{actions:[SR()],...Hn.executeChanges}}}),ZGe=Rn.createStateConfig({id:"afterEdit",always:[{guard:"has pending",...Hn.pending},{...Hn.idle}]}),KGe=Rn.createStateConfig({id:"applyLatestToManual",entry:[xm(),zee()],initial:"call",on:{"*":{actions:[yE(({event:e})=>`applyLatestToManual received unexpected event: ${e.type}`),Cee(350)]}},states:{call:{invoke:{src:"applyLatest",input:({context:e})=>{const r=e.beforeEditing?.change.layout;return{current:r&&r._layout==="manual"?r:void 0,viewId:e.viewId}},onDone:{actions:jy(jee,({event:e})=>({type:"update.view",view:e.output.updated}),{delay:10}),target:"wait"},onError:{actions:[Bt({beforeEditing:null,pendingChanges:[]}),({event:e})=>{console.error(e.error)}],...Hn.idle}}},wait:{entry:Tee(),after:{"350ms":{actions:[SR(),kR()],...Hn.executeChanges}}}}}),QGe=Rn.createStateConfig({id:"executeChanges",entry:[Bt(({event:e,context:r})=>{if(e.type==="change"){if($ee(e.change))return{pendingChanges:[...Ree(r.pendingChanges),e.change]};if(!r.pendingChanges.includes(e.change))return{pendingChanges:[...r.pendingChanges,e.change]}}return{}}),xm()],invoke:{src:"executeChange",input:({context:e})=>({changes:e.pendingChanges,viewId:e.viewId}),onDone:{actions:rs(({context:e,enqueue:r})=>{const n=Q1(e.pendingChanges,o=>o.op==="save-view-snapshot");n&&r.sendTo(jee,{type:"update.view-bounds",bounds:n.layout.bounds}),r.assign({pendingChanges:[]})}),...Hn.idle},onError:{actions:({event:e})=>{console.error(e.error)},...Hn.afterEdit}},on:{"*":{actions:Cee()}}}),JGe=Rn.createMachine({id:"editor",context:({input:e})=>({viewId:e.viewId,beforeEditing:null,editing:null,pendingChanges:[],history:[]}),initial:"idle",states:{idle:GGe,editing:YGe,pending:XGe,afterEdit:ZGe,applyLatestToManual:KGe,executeChanges:QGe},on:{cancel:{actions:[xm(),Bt({editing:null,beforeEditing:null,pendingChanges:[]})],...Hn.idle},synced:{actions:FGe()},undo:{guard:"can undo",actions:qGe(),...Hn.idle},change:{...Hn.executeChanges},applyLatestToManual:{...Hn.applyLatestToManual},reset:{actions:[xm(),Bt({history:[],editing:null,beforeEditing:null,pendingChanges:[]}),LGe()],...Hn.idle}}}),Aee=JGe,Dee={};function Mee(e,r){return e===r?e:(r=r.map(n=>{const o=e.find(l=>l.id===n.id&&l.type===n.type&&l.source===n.source&&l.target===n.target);if(!o)return n;const 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??Dee,n.style??Dee)?o:{...ry(o,ri),...ry(n,ri),data:i}}),Oq(e,r)?e:r)}function ER(e,r){return ri(r)?Mee(e,r):(r=e,n=>Mee(n,r))}const P2={};function Nee(e,r){return e===r?e:(r=r.map(n=>{const o=e.find(p=>p.id===n.id&&p.type===n.type);if(!o)return n;const a=Nq(o.data,n.data);let i=a?o.data:n.data;a||(ri(o.data.hovered)&&!ri(n.data.hovered)&&(i={...i,hovered:o.data.hovered}),ri(o.data.dimmed)&&!ri(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??P2,n.domAttributes??P2)&&tt(o.style??P2,n.style??P2))return o;const u=c&&d?o.handles:n.handles;return{...ry(o,(p,f)=>ri(p)&&f!=="parentId"),..."measured"in o&&{measured:{width:n.width??n.initialWidth,height:n.height??n.initialHeight}},...ry(n,ri),width:n.width??n.initialWidth,height:n.height??n.initialHeight,...u&&{handles:u},data:i}}),Oq(e,r)?e:r)}function B2(e,r){return ri(r)?Nee(e,r):(r=e,n=>Nee(n,r))}const CR={top:"40px",bottom:"22px",left:"22px",right:"22px"};function Pee(e){const r=[],n=[],o=new Map,a=x8.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==w1;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?lc.Compound:lc.Element,style:{width:s.width,height:s.height},initialWidth:s.width,initialHeight:s.height,...c&&{parentId:c.id}},g=s.modelRef??null,v={navigateTo:s.navigateTo??null};switch(!0){case s.kind===w2.Empty:{r.push({...f,type:"empty",data:{column:s.column}});break}case(d&&!!g):{r.push({...f,type:"compound",data:{id:p,column:s.column,title:s.title,color:s.color,shape:s.shape,style:s.style,depth:s.depth??0,icon:s.icon??"none",ports:s.ports,existsInCurrentView:s.existsInCurrentView,fqn:g,...v}});break}default:He(g,"Element should have either modelRef or deploymentRef"),r.push({...f,type:"element",data:{id:p,column:s.column,fqn:g,title:s.title,technology:s.technology,description:s.description,height:s.height,width:s.width,color:s.color,shape:s.shape,icon:s.icon??"none",ports:s.ports,style:s.style,existsInCurrentView:s.existsInCurrentView,tags:s.tags,...v}})}}for(const s of e.edges){const c=s.source,d=s.target,u=s.id;if(!xn(s.points,2)){console.error("edge should have at least 2 points",s);continue}if(!xn(s.relations,1)){console.error("edge should have at least 1 relation",s);continue}n.push({id:u,type:"relationship",source:c,target:d,sourceHandle:s.sourceHandle,targetHandle:s.targetHandle,data:{sourceFqn:s.sourceFqn,targetFqn:s.targetFqn,relations:s.relations,color:s.color??"gray",label:s.label,navigateTo:s.navigateTo??null,line:s.line??"dashed",existsInCurrentView:s.existsInCurrentView},interactionWidth:20})}return{xynodes:r,xyedges:n}}const Bee=e=>e.find(r=>r.data.column==="subjects"&&ty(r.parentId)),eYe=zy(async({input:e,self:r,signal:n})=>{const{subjectId:o,navigateFromNode:a,xyflow:i,xystore:l,update:s}=e;let{nodes:c,width:d,height:u}=l.getState();const p=Pee(s),f=()=>{const{nodes:j,edges:I}=l.getState();return{xynodes:B2(j,p.xynodes),xyedges:ER(I,p.xyedges)}},g=mt(r._parent);let v=i.getZoom();const w=Math.max(v,1),x=Ws(s.bounds,d,u,xi,w,CR),k=p.xynodes.find(j=>j.type!=="empty"&&j.data.column==="subjects"&&j.data.fqn===o)??Bee(p.xynodes),C=Bee(c),_=a?c.find(j=>j.id===a):c.find(j=>j.type!=="empty"&&j.data.column!=="subjects"&&j.data.fqn===o);if(!k||!_||k.type==="empty"||!C||k.data.fqn===C.data.fqn)return await i.setViewport(x),f();const $={x:k.position.x+(k.initialWidth??0)/2,y:k.position.y+(k.initialHeight??0)/2},R=i.getInternalNode(C.id),T=n$(R),A=new Set;if(c.forEach(j=>{if(j.id!==_.id){if(j.data.column==="subjects"){A.add(j.id);return}j.parentId&&(j.parentId===_.id||A.has(j.parentId))&&A.add(j.id)}}),c=B2(c,c.flatMap(j=>A.has(j.id)?[]:j.id!==_.id?{...j,data:{...j.data,dimmed:j.data.column==="subjects"?"immediate":!0}}:{...ud(j,["parentId"]),position:{x:T.x-j.initialWidth/2,y:T.y-j.initialHeight/2},zIndex:lc.Max,hidden:!1,data:{...j.data,dimmed:!1}})),g.send({type:"update.xydata",xynodes:c,xyedges:[]}),await XO(120),p.xynodes=p.xynodes.map(tr.setDimmed(!1)),n.aborted)return f();const z=300;return i.setCenter(T.x,T.y,{zoom:v,duration:z,interpolate:"smooth"}),await XO(z),await i.setCenter($.x,$.y,{zoom:v}),f()}),dc=ns({actors:{layouter:eYe},guards:{hasViewId:({context:e})=>e.viewId!==null,isReady:({context:e})=>e.xyflow!==null&&e.xystore!==null&&e.layouted!==null,anotherSubject:({context:e,event:r})=>r.type==="update.view"?e.layouted?.subject!==r.layouted.subject:!1}}),Iee=()=>dc.assign(({event:e})=>(ht(e,"xyflow.init"),{xyflow:e.instance,xystore:e.store})),Oee=()=>dc.assign(({event:e})=>(ht(e,"update.view"),{layouted:e.layouted,...Pee(e.layouted)})),tYe=()=>dc.createAction(({context:e})=>{He(e.xystore,"xystore is not initialized");const{domNode:r,updateNodeInternals:n}=e.xystore.getState(),o=new Set(e.xyedges.flatMap(l=>[l.source,l.target]));if(o.size===0||!r)return;const 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})}),$R=e=>dc.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=Ws(a,c,d,xi,s,CR);i.setViewport(u,o>0?{duration:o,interpolate:"smooth"}:void 0).catch(console.error)}else i.fitView({minZoom:xi,maxZoom:s,padding:CR,...o>0&&{duration:o,interpolate:"smooth"}}).catch(console.error)}),rYe=()=>dc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyNodeChanges"),{xynodes:rw(r.changes,e.xynodes)})),nYe=()=>dc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyEdgeChanges"),{xyedges:nw(r.changes,e.xyedges)})),Lee=()=>dc.enqueueActions(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=zr(e).diagramActorRef,o=r.edge.data.relations;xn(o,1)&&n.send({type:"open.source",relation:o[0]})}),Fee=()=>dc.assign({xyflow:null,layouted:null,xystore:null,xyedges:[],xynodes:[]}),oYe=dc.createMachine({id:"relationships-browser",context:({input:e})=>({subject:e.subject,viewId:e.viewId,scope:e.viewId?e.scope:"global",closeable:e.closeable??!0,enableSelectSubject:e.enableSelectSubject??!0,enableChangeScope:e.enableChangeScope??!0,xyflow:null,xystore:null,layouted:null,navigateFromNode:null,xynodes:[],xyedges:[]}),initial:"initializing",on:{"xyflow.applyNodeChanges":{actions:rYe()},"xyflow.applyEdgeChanges":{actions:nYe()}},states:{initializing:{on:{"xyflow.init":{actions:Iee(),target:"isReady"},"update.view":{actions:Oee(),target:"isReady"},stop:"closed",close:"closed"}},isReady:{always:[{guard:"isReady",actions:[$R({duration:0}),ia({type:"xyflow.updateNodeInternals"},{delay:150})],target:"active"},{target:"initializing"}]},active:{initial:"idle",tags:["active"],on:{"xyflow.nodeClick":{actions:rs(({event:e,enqueue:r})=>{if("fqn"in e.node.data){const n=e.node.data.fqn;r.raise({type:"navigate.to",subject:n,fromNode:e.node.id})}})},"xyflow.edgeClick":[{guard:"hasViewId",actions:rs(({event:e,context:r,system:n,enqueue:o})=>{e.edge.selected||e.edge.data.relations.length>1?o.sendTo(zr(n).overlaysActorRef,{type:"open.relationshipDetails",viewId:r.viewId,source:e.edge.data.sourceFqn,target:e.edge.data.targetFqn}):o(Lee())})},{actions:Lee()}],"navigate.to":{actions:[Bt({subject:({event:e})=>e.subject,viewId:({event:e,context:r})=>e.viewId??r.viewId??null,navigateFromNode:({event:e})=>e.fromNode??null})]},"xyflow.paneDblClick":{actions:$R()},"update.view":{actions:Oee(),target:".layouting"},"change.scope":{actions:Bt({scope:({event:e})=>e.scope})},"xyflow.updateNodeInternals":{actions:tYe()},fitDiagram:{actions:$R()},"xyflow.resized":{actions:[ui("fitDiagram"),ia({type:"fitDiagram"},{id:"fitDiagram",delay:300})]},"xyflow.init":{actions:Iee()},"xyflow.unmount":{target:"initializing"},close:"closed"},states:{idle:{on:{"xyflow.edgeMouseEnter":{actions:[Bt({xyedges:({context:e,event:r})=>{const n=e.xyedges.some(o=>o.data.dimmed!==!1||o.selected);return e.xyedges.map(o=>o.id===r.edge.id?tr.setData(o,{hovered:!0,dimmed:!1}):n&&!o.selected?tr.setDimmed(o,"immediate"):o)}}),ui("undim.edges"),ui("dim.nonhovered.edges"),ia({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)}),ui("dim.nonhovered.edges"),ia({type:"undim.edges"},{id:"undim.edges",delay:400})]},"dim.nonhovered.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(r=>r.data.hovered?r:tr.setDimmed(r,r.data.dimmed==="immediate"?"immediate":!0))})},"undim.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(tr.setDimmed(!1))})},"xyflow.selectionChange":{actions:rs(({event:e,context:r,enqueue:n})=>{e.edges.length===0&&r.xyedges.some(o=>o.data.dimmed)&&!r.xyedges.some(o=>o.data.hovered)&&n.raise({type:"undim.edges"})})}}},layouting:{invoke:{id:"layouter",src:"layouter",input:({context:e})=>({subjectId:e.subject,navigateFromNode:e.navigateFromNode,xyflow:mt(e.xyflow),xystore:mt(e.xystore),update:mt(e.layouted)}),onDone:{target:"idle",actions:rs(({enqueue:e,event:r})=>{e.assign({xynodes:r.output.xynodes,xyedges:r.output.xyedges,navigateFromNode:null}),e.raise({type:"fitDiagram",duration:200},{id:"fitDiagram",delay:50});for(let n=1;n<8;n++)e.raise({type:"xyflow.updateNodeInternals"},{delay:120+n*75})})}},on:{"update.xydata":{actions:Bt({xynodes:({event:e})=>e.xynodes,xyedges:({event:e})=>e.xyedges})},"xyflow.applyEdgeChanges":{},"xyflow.applyNodeChanges":{}}}}},closed:{id:"closed",type:"final",entry:Fee()}},exit:Fee()}),Vee=oYe,aYe=ns({actors:{relationshipsBrowserLogic:Vee}}).createMachine({id:"element-details",context:({input:e})=>({...e,initiatedFrom:{node:e.initiatedFrom?.node??null,clientRect:e.initiatedFrom?.clientRect??null}}),initial:"active",states:{active:{entry:T3("relationshipsBrowserLogic",{id:({self:e})=>`${e.id}-relationships`,input:({context:e})=>({subject:e.subject,viewId:e.currentView.id,scope:"view",enableSelectSubject:!1,enableChangeScope:!0,closeable:!1})}),exit:[jy(({self:e})=>`${e.id}-relationships`,{type:"close"}),$y(({self:e})=>`${e.id}-relationships`)],on:{"change.subject":{actions:Bt({subject:({event:e})=>e.subject})},close:"closed"}},closed:{id:"closed",type:"final"}}}),iYe=aYe;function lYe(e){const r=[],n=[],o=new Map,a=x8.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?lc.Compound:lc.Element,style:{width:s.width,height:s.height},initialWidth:s.width,initialHeight:s.height,...c&&{parentId:c.id}},g=s.modelRef,v={navigateTo:s.navigateTo??null};switch(!0){case d:{r.push({...f,type:"compound",data:{id:p,column:s.column,title:s.title,color:s.color,style:s.style,depth:s.depth??0,icon:s.icon??"none",ports:s.ports,fqn:g,...v}});break}default:r.push({...f,type:"element",data:{id:p,column:s.column,fqn:g,title:s.title,technology:s.technology,description:s.description??null,height:s.height,width:s.width,color:s.color,shape:s.shape,icon:s.icon??"none",ports:s.ports,style:s.style,tags:s.tags,...v}})}}for(const{source:s,target:c,relationId:d,label:u,technology:p,description:f,navigateTo:g=null,color:v="gray",line:w="dashed",...x}of e.edges){const k=x.id;n.push({id:k,type:"relationship",source:s,target:c,sourceHandle:x.sourceHandle,targetHandle:x.targetHandle,deletable:!1,data:{relationId:d,label:u,color:v,navigateTo:g,line:w,description:f??null,...p&&{technology:p}}})}return{xynodes:r,xyedges:n,bounds:e.bounds}}function qee(e){return"edgeId"in e?(He(pw(e.edgeId),"edgeId is required"),{edgeId:e.edgeId}):{source:e.source,target:e.target}}const Hee={x:"22px",y:"22px"},sYe=ns({actions:{"xyflow:fitDiagram":({context:e},r)=>{let{duration:n,bounds:o}=r??{};n??=450;const{xyflow: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=Ws(o,s,c,xi,l,Hee);a.setViewport(d,n>0?{duration:n}:void 0).catch(console.error)}else a.fitView({minZoom:xi,maxZoom:l,padding:Hee,...n>0&&{duration:n,interpolate:"smooth"}}).catch(console.error)},"xyflow:updateNodeInternals":({context:e})=>{He(e.xystore,"xystore is not initialized");const{domNode:r,updateNodeInternals:n}=e.xystore.getState(),o=new Set(e.xyedges.flatMap(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}=lYe(r.data);let i=e.initialized;return i.xydata||(i={...i,xydata:!0}),{initialized:i,xynodes:B2(e.xynodes,n),xyedges:ER(e.xyedges,o),bounds:Ir(e.bounds,a)?e.bounds:a}}),"open relationship source":rs(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=zr(e).diagramActorRef,o=r.edge.data.relationId;o&&n.send({type:"open.source",relation:o})})},guards:{isReady:({context:e})=>e.initialized.xydata&&e.initialized.xyflow,"enable: navigate.to":()=>!0}}).createMachine({initial:"initializing",context:({input:e})=>({subject:qee(e),viewId:e.viewId,bounds:{x:0,y:0,width:200,height:200},initialized:{xydata:!1,xyflow:!1},xyflow:null,xystore:null,xynodes:[],xyedges:[]}),states:{initializing:{on:{"xyflow.init":{actions:"updateXYFlow",target:"isReady"},"update.layoutData":{actions:"updateLayoutData",target:"isReady"},close:{target:"closed"}}},isReady:{always:[{guard:"isReady",actions:[{type:"xyflow:fitDiagram",params:{duration:0}},ia({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)}}),ui("undim.edges"),ui("dim.nonhovered.edges"),ia({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)}),ui("dim.nonhovered.edges"),ia({type:"undim.edges"},{id:"undim.edges",delay:400})]},"dim.nonhovered.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(r=>tr.setDimmed(r,r.data.hovered!==!0))})},"undim.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.some(r=>r.selected===!0)?e.xyedges.map(r=>tr.setDimmed(r,r.selected!==!0?r.data.dimmed||"immediate":!1)):e.xyedges.map(tr.setDimmed(!1))})},"xyflow.selectionChange":{actions:rs(({event:e,context:r,enqueue:n})=>{e.edges.length===0&&r.xyedges.some(o=>o.data.dimmed)&&!r.xyedges.some(o=>o.data.hovered)&&n.raise({type:"undim.edges"})})},"update.layoutData":{actions:["updateLayoutData",ui("fitDiagram"),ia({type:"fitDiagram",duration:0},{id:"fitDiagram",delay:50}),ia({type:"xyflow.updateNodeInternals"},{delay:75})]},"xyflow.init":{actions:"updateXYFlow"},"xyflow.applyNodeChanges":{actions:Bt({xynodes:({context:e,event:r})=>rw(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:Bt({xyedges:({context:e,event:r})=>nw(r.changes,e.xyedges)})},"xyflow.paneDblClick":{actions:"xyflow:fitDiagram"},"xyflow.edgeClick":{actions:"open relationship source"},"navigate.to":{actions:Bt({subject:({event:e})=>qee(e.params),viewId:({context:e,event:r})=>r.params.viewId??e.viewId})},close:{target:"closed"}},exit:Bt({xyedges:[],xynodes:[],initialized:{xydata:!1,xyflow:!1},xyflow:null,xystore:null})},closed:{type:"final"}},on:{fitDiagram:{actions:{type:"xyflow:fitDiagram",params:rp("event")}},"xyflow.resized":{actions:[ui("fitDiagram"),ia({type:"fitDiagram"},{id:"fitDiagram",delay:200})]},"xyflow.updateNodeInternals":{actions:"xyflow:updateNodeInternals"}}}),cYe=sYe;var Pd={},ft={},Uee=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},wm={},Wee;function RR(){if(Wee)return wm;Wee=1,Object.defineProperty(wm,"__esModule",{value:!0});function e(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof Uee<"u")return Uee}function r(){const 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 wm.devToolsAdapter=o,wm.getGlobal=e,wm.registerService=n,wm}var Gee;function I2(){if(Gee)return ft;Gee=1;var e=RR();class r{constructor(ee){this._process=ee,this._active=!1,this._current=null,this._last=null}start(){this._active=!0,this.flush()}clear(){this._current&&(this._current.next=null,this._last=this._current)}enqueue(ee){const oe={value:ee,next:null};if(this._current){this._last.next=oe,this._last=oe;return}this._current=oe,this._last=oe,this._active&&this.flush()}flush(){for(;this._current;){const ee=this._current;this._process(ee.value),this._current=ee.next}this._last=null}}const n=".",o="",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(j(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,De={},{clock:Fe,logger:rt}=ee,lt={schedule:(Ke,pt,vt,Lt,No=Math.random().toString(36).slice(2))=>{const uh={source:Ke,target:pt,event:vt,delay:Lt,id:No,startedAt:Date.now()},Va=F(Ke,No);Ze._snapshot._scheduledEvents[Va]=uh;const su=Fe.setTimeout(()=>{delete De[Va],delete Ze._snapshot._scheduledEvents[Va],Ze._relay(Ke,pt,vt)},Lt);De[Va]=su},cancel:(Ke,pt)=>{const vt=F(Ke,pt),Lt=De[vt];delete De[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)}}},Ot=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:Ot,_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:uh,id:Va}=Ke[pt];lt.schedule(vt,Lt,No,uh,Va)}},_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 O={clock:{setTimeout:(J,ee)=>setTimeout(J,ee),clearTimeout:J=>clearTimeout(J)},logger:console.log.bind(console),devTools:!1};class W{constructor(ee,oe){this.logic=ee,this._snapshot=void 0,this.clock=void 0,this.options=void 0,this.id=void 0,this.mailbox=new r(this._process.bind(this)),this.observers=new Set,this.eventListeners=new Map,this.logger=void 0,this._processingStatus=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={...O,...oe},{clock:le,logger:ve,parent:De,syncSnapshot:Fe,id:rt,systemId:lt,inspect:Ot}=ie;this.system=De?De.system:G(this,{clock:le,logger:ve}),Ot&&!De&&this.system.inspect(H(Ot)),this.sessionId=this.system._bookId(),this.id=rt??this.sessionId,this.logger=oe?.logger??this.system._logger,this.clock=oe?.clock??this.system._clock,this._parent=De,this._syncSnapshot=Fe,this.options=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(De){w(De)}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:De,input:Fe,syncSnapshot:rt}){const lt=typeof De=="string"?V(ee.machine,De):De,Ot=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:Ot,src:De,parent:J.self,syncSnapshot:rt,systemId:ve,input:Ke})),[Gr(ee,{children:{...ee.children,[Ot]:Ze}}),{id:le,systemId:ve,actorRef:Ze,src:De,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(De,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,De=typeof ve=="string"?ee.children[ve]:ve;let Fe=ee.children;return De&&(Fe={...Fe},delete Fe[De.id]),[Gr(ee,{children:Fe}),De,void 0]}function xe(J,ee){if(ee){if(J.system._unregister(ee),ee._processingStatus!==Z.Running){J.stopChild(ee);return}J.defer(()=>{J.stopChild(ee)})}}function je(J){function ee(oe,ie){}return ee.type="xstate.stopChild",ee.actorRef=J,ee.resolve=pe,ee.execute=xe,ee}const Be=je;function Je(J,ee,{stateValue:oe}){if(typeof oe=="string"&&Ht(oe)){const 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 It(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",De=ve?J:le.implementations.guards[typeof J=="string"?J:J.type];if(!ve&&!De)throw new Error(`Guard '${typeof J=="string"?J:J.type}' is not implemented.'.`);if(typeof De!="function")return Et(De,ee,oe,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 De?De.check(ie,Fe,De):De(Fe,rt)}const be=J=>J.type==="atomic"||J.type==="final";function ke(J){return Object.values(J.states).filter(ee=>ee.type!=="history")}function Ye(J,ee){const oe=[];if(ee===J)return oe;let ie=J.parent;for(;ie&&ie!==ee;)oe.push(ie),ie=ie.parent;return oe}function yt(J){const ee=new Set(J),oe=Tr(ee);for(const ie of ee)if(ie.type==="compound"&&(!oe.get(ie)||!oe.get(ie).length))ua(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=ua(le);for(const De of ve)ee.add(De)}}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 Tr(J){const ee=new Map;for(const oe of J)ee.has(oe)||ee.set(oe,[]),oe.parent&&(ee.has(oe.parent)||ee.set(oe.parent,[]),ee.get(oe.parent).push(oe));return ee}function er(J,ee){const oe=yt(ee);return xt(J,Tr(oe))}function qt(J,ee){return ee.type==="compound"?ke(ee).some(oe=>oe.type==="final"&&J.has(oe)):ee.type==="parallel"?ke(ee).every(oe=>qt(J,oe)):ee.type==="final"}const Ht=J=>J[0]===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(lu(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,De=Number.isNaN(+ie)?ie:+ie,Fe=oe(De);return A(ve).map(rt=>({...rt,event:Fe,delay:De}))}).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),De={...oe,actions:A(oe.actions),guard:oe.guard,target:ve,source:J,reenter:le,eventType:ee,toJSON:()=>({...De,source:`#${J.id}`,target:ve?ve.map(Fe=>`#${Fe.id}`):void 0})};return De}function Wn(J){const ee=new Map;if(J.config.on)for(const oe of Object.keys(J.config.on)){if(oe===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 xs(J,oe.slice(1));const le=ie?J.key+oe:oe;if(J.parent)try{return xs(J.parent,le)}catch(ve){throw new Error(`Invalid transition definition for state node '${J.id}': +${ve.message}`)}else throw new Error(`Invalid target: "${oe}" is not a valid target from the root node. Did you mean ".${oe}"?`)})}function Yo(J){const ee=L(J.config.target);return ee?{target:ee.map(oe=>typeof oe=="string"?xs(J.parent,oe):oe)}:J.parent.initial}function jo(J){return J.type==="history"}function ua(J){const ee=Dl(J);for(const oe of ee)for(const ie of Ye(oe,J))ee.add(ie);return ee}function Dl(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 xs(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 ws(J,ee){if(typeof ee=="string"){const le=J.states[ee];if(!le)throw new Error(`State '${ee}' does not exist on '${J.id}'`);return[J,le]}const oe=Object.keys(ee),ie=oe.map(le=>Ao(J,le)).filter(Boolean);return[J.machine.root,J].concat(ie,oe.reduce((le,ve)=>{const De=Ao(J,ve);if(!De)return le;const Fe=ws(De,ee[ve]);return le.concat(Fe)},[]))}function zc(J,ee,oe,ie){const le=Ao(J,ee).next(oe,ie);return!le||!le.length?J.next(oe,ie):le}function Ml(J,ee,oe,ie){const le=Object.keys(ee),ve=Ao(J,le[0]),De=ks(ve,ee[le[0]],oe,ie);return!De||!De.length?J.next(oe,ie):De}function lh(J,ee,oe,ie){const le=[];for(const ve of Object.keys(ee)){const De=ee[ve];if(!De)continue;const Fe=Ao(J,ve),rt=ks(Fe,De,oe,ie);rt&&le.push(...rt)}return le.length?le:J.next(oe,ie)}function ks(J,ee,oe,ie){return typeof ee=="string"?zc(J,ee,oe,ie):Object.keys(ee).length===1?Ml(J,ee,oe,ie):lh(J,ee,oe,ie)}function tu(J){return Object.keys(J.states).map(ee=>J.states[ee]).filter(ee=>ee.type==="history")}function Xo(J,ee){let oe=J;for(;oe.parent&&oe.parent!==ee;)oe=oe.parent;return oe.parent===ee}function Tc(J,ee){const oe=new Set(J),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 _s(J,ee,oe){const ie=new Set;for(const le of J){let ve=!1;const De=new Set;for(const Fe of ie)if(Tc(Nr([le],ee,oe),Nr([Fe],ee,oe)))if(Xo(le.source,Fe.source))De.add(Fe);else{ve=!0;break}if(!ve){for(const Fe of De)ie.delete(Fe);ie.add(le)}}return Array.from(ie)}function ru(J){const[ee,...oe]=J;for(const ie of Ye(ee,void 0))if(oe.every(le=>Xo(le,ie)))return ie}function Ss(J,ee){if(!J.target)return[];const oe=new Set;for(const ie of J.target)if(jo(ie))if(ee[ie.id])for(const le of ee[ie.id])oe.add(le);else for(const le of Ss(Yo(ie),ee))oe.add(le);else oe.add(ie);return[...oe]}function Zo(J,ee){const oe=Ss(J,ee);if(!oe)return;if(!J.reenter&&oe.every(le=>le===J.source||Xo(le,J.source)))return J.source;const ie=ru(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=Zo(le,oe);le.reenter&&le.source===ve&&ie.add(ve);for(const De of ee)Xo(De,ve)&&ie.add(De)}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 De=new Set(ee._nodes);let Fe=ee.historyValue;const rt=_s(J,De,Fe);let lt=ee;le||([lt,Fe]=zi(lt,ie,oe,rt,De,Fe,ve,oe.actionExecutor)),lt=ho(lt,ie,oe,rt.flatMap(Ze=>Ze.actions),ve,void 0),lt=jc(lt,ie,oe,rt,De,ve,Fe,le);const Ot=[...De];lt.status==="done"&&(lt=ho(lt,ie,oe,Ot.sort((Ze,Ke)=>Ke.order-Ze.order).flatMap(Ze=>Ze.exit),ve,void 0));try{return Fe===ee.historyValue&&Mn(ee._nodes,De)?lt:Gr(lt,{_nodes:Ot,historyValue:Fe})}catch(Ze){throw Ze}}function Nl(J,ee,oe,ie,le){if(ie.output===void 0)return;const ve=p(le.id,le.output!==void 0&&le.parent?z(le.output,J.context,ee,oe.self):void 0);return z(ie.output,J.context,ve,oe.self)}function jc(J,ee,oe,ie,le,ve,De,Fe){let rt=J;const lt=new Set,Ot=new Set;sh(ie,De,Ot,lt),Fe&&Ot.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(Ot.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?z(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:Nl(rt,ee,oe,rt.machine.root,No)})}}return rt}function sh(J,ee,oe,ie){for(const le of J){const ve=Zo(le,ee);for(const Fe of le.target||[])!jo(Fe)&&(le.source!==Fe||le.source!==ve||le.reenter)&&(ie.add(Fe),oe.add(Fe)),La(Fe,ee,oe,ie);const De=Ss(le,ee);for(const Fe of De){const rt=Ye(Fe,ve);ve?.type==="parallel"&&rt.push(ve),Ri(ie,ee,oe,rt,!le.source.parent&&le.reenter?void 0:ve)}}}function La(J,ee,oe,ie){if(jo(J))if(ee[J.id]){const le=ee[J.id];for(const ve of le)ie.add(ve),La(ve,ee,oe,ie);for(const ve of le)Pl(ve,J.parent,ie,ee,oe)}else{const le=Yo(J);for(const ve of le.target)ie.add(ve),le===J.parent?.initial&&oe.add(J.parent),La(ve,ee,oe,ie);for(const ve of le.target)Pl(ve,J.parent,ie,ee,oe)}else if(J.type==="compound"){const[le]=J.initial.target;jo(le)||(ie.add(le),oe.add(le)),La(le,ee,oe,ie),Pl(le,J,ie,ee,oe)}else if(J.type==="parallel")for(const le of ke(J).filter(ve=>!jo(ve)))[...ie].some(ve=>Xo(ve,le))||(jo(le)||(ie.add(le),oe.add(le)),La(le,ee,oe,ie))}function Ri(J,ee,oe,ie,le){for(const ve of ie)if((!le||Xo(ve,le))&&J.add(ve),ve.type==="parallel")for(const De of ke(ve).filter(Fe=>!jo(Fe)))[...J].some(Fe=>Xo(Fe,De))||(J.add(De),La(De,ee,oe,J))}function Pl(J,ee,oe,ie,le){Ri(oe,ie,le,Ye(J,ee))}function zi(J,ee,oe,ie,le,ve,De,Fe){let rt=J;const lt=Nr(ie,le,ve);lt.sort((Ze,Ke)=>Ke.order-Ze.order);let Ot;for(const Ze of lt)for(const Ke of tu(Ze)){let pt;Ke.history==="deep"?pt=vt=>be(vt)&&Xo(vt,Ze):pt=vt=>vt.parent===Ze,Ot??={...ve},Ot[Ke.id]=Array.from(le).filter(pt)}for(const Ze of lt)rt=ho(rt,ee,oe,[...Ze.exit,...Ze.invoke.map(Ke=>je(Ke.id))],De,void 0),le.delete(Ze);return[rt,Ot||ve]}function Ti(J,ee){return J.implementations.actions[ee]}function pa(J,ee,oe,ie,le,ve){const{machine:De}=J;let Fe=J;for(const rt of ie){const lt=typeof rt=="function",Ot=lt?rt:Ti(De,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(!Ot||!("resolve"in Ot)){oe.actionExecutor({type:typeof rt=="string"?rt:typeof rt=="object"?rt.type:rt.name||"(anonymous)",info:Ze,params:Ke,exec:Ot});continue}const pt=Ot,[vt,Lt,No]=pt.resolve(oe,Fe,Ze,Ke,Ot,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=pa(Fe,ee,oe,No,le,ve))}return Fe}function ho(J,ee,oe,ie,le,ve){const De=ve?[]:void 0,Fe=pa(J,ee,oe,ie,{internalQueue:le,deferredActorIds:ve},De);return De?.forEach(([rt,lt])=>{rt.retryResolve(oe,Fe,lt)}),Fe}function Wr(J,ee,oe,ie){let le=J;const ve=[];function De(lt,Ot,Ze){oe.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:oe.self,event:Ot,snapshot:lt,_transitions:Ze}),ve.push(lt)}if(ee.type===d)return le=Gr(Ac(le,ee,oe),{status:"stopped"}),De(le,ee,[]),{snapshot:le,microstates:ve};let Fe=ee;if(Fe.type!==s){const lt=Fe,Ot=I(lt),Ze=Dc(lt,le);if(Ot&&!Ze.length)return le=Gr(J,{status:"error",error:lt.error}),De(le,lt,[]),{snapshot:le,microstates:ve};le=Do(Ze,J,oe,Fe,!1,ie),De(le,lt,Ze)}let rt=!0;for(;le.status==="active";){let lt=rt?Fa(le,Fe):[];const Ot=lt.length?le:void 0;if(!lt.length){if(!ie.length)break;Fe=ie.shift(),lt=Dc(Fe,le)}le=Do(lt,le,oe,Fe,!1,ie),rt=le!==Ot,De(le,Fe,lt)}return le.status!=="active"&&Ac(le,Fe,oe),{snapshot:le,microstates:ve}}function Ac(J,ee,oe){return ho(J,ee,oe,Object.values(J.children).map(ie=>je(ie)),[],void 0)}function Dc(J,ee){return ee.machine.getTransitionData(ee,J)}function Fa(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 De of ve.always)if(De.guard===void 0||Et(De.guard,J.context,ee,J)){oe.add(De);break e}}return _s(Array.from(oe),new Set(J._nodes),J.historyValue)}function ji(J,ee){const oe=yt(ws(J,ee));return er(J,[...oe])}function nu(J){return!!J&&typeof J=="object"&&"machine"in J&&"value"in J}const Es=function(J){return k(J,this.value)},ou=function(J){return this.tags.has(J)},ch=function(J){const ee=this.machine.getTransitionData(this,J);return!!ee?.length&&ee.some(oe=>oe.target!==void 0||oe.actions.length)},Cs=function(){const{_nodes:J,tags:ee,machine:oe,getMeta:ie,toJSON:le,can:ve,hasTag:De,matches:Fe,...rt}=this;return{...rt,tags:Array.from(ee)}},$s=function(){return this._nodes.reduce((J,ee)=>(ee.meta!==void 0&&(J[ee.id]=ee.meta),J),{})};function Mo(J,ee){return{status:J.status,output:J.output,error:J.error,machine:ee,context:J.context,_nodes:J._nodes,value:er(ee.root,J._nodes),tags:new Set(J._nodes.flatMap(oe=>oe.tags)),children:J.children,historyValue:J.historyValue||{},matches:Es,hasTag:ou,can:ch,getMeta:$s,toJSON:Cs}}function Gr(J,ee={}){return Mo({...J,...ee},J.machine)}function au(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 dh(J,ee){const{_nodes:oe,tags:ie,machine:le,children:ve,context:De,can:Fe,hasTag:rt,matches:lt,getMeta:Ot,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:Ai(De),children:pt,historyValue:au(Ke.historyValue)}}function Ai(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=Ai(ie);le!==ie&&(ee??=Array.isArray(J)?J.slice():{...J},ee[oe]=le)}}return ee??J}function iu(J,ee,oe,ie,{event:le,id:ve,delay:De},{internalQueue:Fe}){const rt=ee.machine.implementations.delays;if(typeof le=="string")throw new Error(`Only event objects may be used with raise; use raise({ type: "${le}" }) instead`);const lt=typeof le=="function"?le(oe,ie):le;let Ot;if(typeof De=="string"){const Ze=rt&&rt[De];Ot=typeof Ze=="function"?Ze(oe,ie):Ze}else Ot=typeof De=="function"?De(oe,ie):De;return typeof Ot!="number"&&Fe.push(lt),[ee,{event:lt,id:ve,delay:Ot},void 0]}function Di(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 lu(J,ee){function oe(ie,le){}return oe.type="xstate.raise",oe.event=J,oe.id=ee?.id,oe.delay=ee?.delay,oe.resolve=iu,oe.execute=Di,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=Dl,ft.getPersistedSnapshot=dh,ft.getStateNodeByPath=xs,ft.getStateNodes=ws,ft.interpret=Q,ft.isInFinalState=qt,ft.isMachineSnapshot=nu,ft.isStateId=Ht,ft.macrostep=Wr,ft.mapValues=R,ft.matchesState=k,ft.microstep=Do,ft.not=St,ft.or=It,ft.pathToStateValue=$,ft.raise=lu,ft.resolveActionsAndContext=ho,ft.resolveReferencedActor=V,ft.resolveStateValue=ji,ft.spawnChild=ce,ft.stateIn=st,ft.stop=Be,ft.stopChild=je,ft.toArray=A,ft.toObserver=H,ft.toStatePath=C,ft.toTransitionConfigArray=P,ft.transitionNode=ks,ft}var Yee;function dYe(){if(Yee)return Pd;Yee=1,Object.defineProperty(Pd,"__esModule",{value:!0});var e=I2();return RR(),Pd.and=e.and,Pd.evaluateGuard=e.evaluateGuard,Pd.not=e.not,Pd.or=e.or,Pd.stateIn=e.stateIn,Pd}var Bd=dYe();const uYe=B3(({sendBack:e})=>{const r=$w([["Escape",n=>{n.stopPropagation(),e({type:"close"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),pl=ns({actors:{relationshipDetails:cYe,elementDetails:iYe,relationshipsBrowser:Vee,hotkey:uYe},guards:{"has overlays?":({context:e})=>e.overlays.length>0,"close specific overlay?":({context:e,event:r})=>(ht(r,"close"),pw(r.actorId)&&e.overlays.some(n=>n.id===r.actorId)),"last: is relationshipDetails?":({context:e})=>dd(e.overlays)?.type==="relationshipDetails","last: is relationshipsBrowser?":({context:e})=>dd(e.overlays)?.type==="relationshipsBrowser"}}),pYe=()=>pl.enqueueActions(({context:e,enqueue:r})=>{if(e.overlays.length===0)return;const n=dd(e.overlays)?.id;n&&(r.sendTo(n,{type:"close"}),r.stopChild(n),r.assign({overlays:e.overlays.filter(o=>o.id!==n)}))}),hYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"close");const o=n.actorId;if(!pw(o))return;const 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)}))}),Xee=()=>pl.enqueueActions(({context:e,enqueue:r})=>{for(const{id:n}of U$e(e.overlays))r.sendTo(n,{type:"close"}),r.stopChild(n);r.assign({overlays:[]})}),fYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{if(ht(n,"open.elementDetails"),e.overlays.some(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}]})}),mYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipDetails");const o=dd(e.overlays);if(o?.type==="relationshipDetails"){r.sendTo(o.id,{...n,type:"navigate.to"});return}const 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"}]})}),gYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipsBrowser");const o=dd(e.overlays);if(o?.type==="relationshipsBrowser"){r.sendTo(o.id,{type:"navigate.to",subject:n.subject,viewId:n.viewId});return}const 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}]})}),Zee=()=>pl.enqueueActions(({enqueue:e,event:r})=>{switch(ht(r,["open.elementDetails","open.relationshipDetails","open.relationshipsBrowser"]),r.type){case"open.elementDetails":e(fYe());break;case"open.relationshipDetails":e(mYe());break;case"open.relationshipsBrowser":e(gYe());break}}),yYe=()=>pl.spawnChild("hotkey",{id:"hotkey"}),Kee=()=>pl.stopChild("hotkey"),Qee=()=>pl.enqueueActions(({enqueue:e,context:r})=>{r.overlays.length===0&&e.raise({type:"close"})}),vYe=pl.createMachine({id:"overlays",context:()=>({seq:1,overlays:[]}),initial:"idle",states:{idle:{on:{"open.*":{actions:Zee(),target:"active"}}},active:{entry:[yYe()],exit:[Kee()],on:{"open.*":{actions:Zee()},close:[{guard:Bd.not("has overlays?"),target:"idle"},{guard:"close specific overlay?",actions:[hYe(),Qee()]},{actions:[pYe(),Qee()]}],"close.all":{actions:[Xee()],target:"idle"}}},final:{entry:[Xee(),Kee()],type:"final"}}}),bYe=vYe,xYe=ns({actions:{"change searchValue":Bt({searchValue:({event:e,context:r})=>(ht(e,["change.search","open"]),e.search??r.searchValue)}),"reset pickViewFor":Bt({pickViewFor:()=>null})}}).createMachine({id:"search",context:{openedWithSearch:null,searchValue:"",pickViewFor:null},initial:"inactive",on:{close:{target:".inactive",actions:"reset pickViewFor"}},states:{inactive:{on:{open:{target:"opened",actions:[Bt({openedWithSearch:({event:e})=>e.search??null,searchValue:({event:e,context:r})=>e.search??r.searchValue})]}}},opened:{on:{open:{actions:"change searchValue"},"change.search":{actions:"change searchValue"},"pickview.open":{target:"pickView",actions:Bt({pickViewFor:({event:e})=>e.elementFqn})}}},pickView:{on:{"pickview.close":{target:"opened",actions:"reset pickViewFor"}}}}}),wYe=xYe,kYe=B3(({sendBack:e})=>{const r=$w([["Escape",o=>{o.stopPropagation(),e({type:"key.esc"})},{preventDefault:!0}]]),n=$w([["ArrowLeft",o=>{o.stopPropagation(),e({type:"key.arrow.left"})},{preventDefault:!0}],["ArrowUp",o=>{o.stopPropagation(),e({type:"key.arrow.up"})},{preventDefault:!0}],["ArrowRight",o=>{o.stopPropagation(),e({type:"key.arrow.right"})},{preventDefault:!0}],["ArrowDown",o=>{o.stopPropagation(),e({type:"key.arrow.down"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r),document.body.addEventListener("keydown",n,{capture:!0}),()=>{document.body.removeEventListener("keydown",r),document.body.removeEventListener("keydown",n,{capture:!0})}}),_Ye=B3(({sendBack:e})=>{const r=()=>{e({type:"media.print.on"})},n=()=>{e({type:"media.print.off"})};return window.addEventListener("beforeprint",r),window.addEventListener("afterprint",n),()=>{window.removeEventListener("beforeprint",r),window.removeEventListener("afterprint",n)}}),O2=e=>{let r=e.toggledFeatures;const n=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}},zR=e=>O2(e).enableReadOnly,Qe=ns({actors:{hotkeyActorLogic:kYe,overlaysActorLogic:bYe,searchActorLogic:wYe,mediaPrintActorLogic:_Ye,editorActor:Aee},guards:{isReady:({context:e})=>e.initialized.xydata&&e.initialized.xyflow,"enabled: Editor":({context:e})=>e.features.enableEditor,"enabled: FitView":({context:e})=>e.features.enableFitView,"enabled: FocusMode":({context:e})=>e.features.enableFocusMode&&zR(e),"enabled: Readonly":({context:e})=>zR(e),"enabled: RelationshipDetails":({context:e})=>e.features.enableRelationshipDetails,"enabled: Search":({context:e})=>e.features.enableSearch,"enabled: ElementDetails":({context:e})=>e.features.enableElementDetails,"enabled: OpenSource":({context:e})=>e.features.enableVscode,"enabled: DynamicViewWalkthrough":({context:e})=>e.features.enableDynamicViewWalkthrough,"focus.node: autoUnfocus":({event:e})=>(ht(e,"focus.node"),e.autoUnfocus===!0),"enabled: Overlays":({context:e})=>e.features.enableElementDetails||e.features.enableRelationshipBrowser||e.features.enableRelationshipDetails,"not readonly":({context:e})=>!zR(e),"is dynamic view":({context:e})=>e.view._type==="dynamic","is same view":({context:e,event:r})=>{if(ht(r,["update.view","navigate.to"]),r.type==="update.view")return e.view.id===r.view.id;if(r.type==="navigate.to")return e.view.id===r.viewId;Qo(r.type)},"is another view":({context:e,event:r})=>{if(ht(r,["update.view","navigate.to"]),r.type==="update.view")return e.view.id!==r.view.id;if(r.type==="navigate.to")return e.view.id!==r.viewId;Qo(r.type)},"click: node has modelFqn":({event:e})=>(ht(e,"xyflow.nodeClick"),"modelFqn"in e.node.data),"click: selected node":({event:e})=>(ht(e,"xyflow.nodeClick"),e.node.selected===!0),"click: same node":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.lastClickedNode?.id===r.node.id),"click: focused node":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.focusedNode===r.node.id),"click: node has connections":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.xyedges.some(n=>n.source===r.node.id||n.target===r.node.id)),"click: selected edge":({event:e})=>(ht(e,["xyflow.edgeClick","xyflow.edgeDoubleClick"]),e.edge.selected===!0||e.edge.data.active===!0)}}),zn={idle:"#idle",focused:"#focused",walkthrough:"#walkthrough",printing:"#printing",navigating:"#navigating"},SYe=[["path",{d:"M3 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M9 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0",key:"svg-1"}],["path",{d:"M13 11v-4a4 4 0 1 1 8 0v4",key:"svg-2"}]],Jee=wt("outline","lock-open-2","LockOpen2",SYe),EYe=[["path",{d:"M5 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-6z",key:"svg-0"}],["path",{d:"M11 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0",key:"svg-1"}],["path",{d:"M8 11v-4a4 4 0 1 1 8 0v4",key:"svg-2"}]],CYe=wt("outline","lock","Lock",EYe),$Ye=e=>{const r=O2(e).enableCompareWithLatest&&!!e.view.drifts&&e.view._layout==="auto",n=e.view._type==="dynamic"&&e.dynamicViewVariant==="sequence",o=!Kn(e.activeWalkthrough);return{visible:e.features.enableEditor&&o,disabled:r||n,isReadOnly:e.toggledFeatures.enableReadOnly??!1}},RYe=()=>{const{visible:e,disabled:r,isReadOnly:n}=pi($Ye),o=Nt();return y.jsx(Cn,{mode:"popLayout",children:e&&y.jsxs(pr,{component:wi,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(Jee,{size:14,stroke:2,style:{display:n?"none":void 0}}),y.jsx(CYe,{size:14,stroke:2,style:{display:n?void 0:"none"}}),y.jsx(Rr,{className:fe({fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8}),style:{display:n?"block":"none"},children:"Edit"})]})})},zYe=[["path",{d:"M6 4v16a1 1 0 0 0 1.524 .852l13 -8a1 1 0 0 0 0 -1.704l-13 -8a1 1 0 0 0 -1.524 .852z",key:"svg-0"}]],TYe=wt("filled","player-play-filled","PlayerPlayFilled",zYe),ete=S.forwardRef((e,r)=>y.jsx(Vn,{variant:"filled",size:"xs",fw:"500",...e,ref:r,component:wi,whileTap:{scale:.95},layout:"position",layoutId:"trigger-dynamic-walkthrough",className:fe({flexShrink:0})}));function jYe(){const{enableReadOnly:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=m0();let 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(bee,{label:a,children:y.jsx(ete,{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(TYe,{size:10}),children:"Start"})})}const AYe=S.forwardRef(({value:e,onChange:r},n)=>y.jsx(Rr,{ref:n,layout:"position",children:y.jsx(Of,{size:"xs",value:e,component:Rr,onChange:o=>{He(o==="diagram"||o==="sequence","Invalid dynamic view variant"),r(o)},classNames:{label:fe({fontSize:"xxs"})},data:[{value:"diagram",label:"Diagram"},{value:"sequence",label:"Sequence"}]})}));function DYe(){const e=pi(n=>n.dynamicViewVariant),r=Nt();return y.jsxs(Cn,{children:[y.jsx(AYe,{value:e,onChange:n=>{r.switchDynamicViewVariant(n)}}),y.jsx(jYe,{},"trigger-dynamic-walkthrough")]})}const tte=S.memo(()=>{const{enableSearch:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=lf();return y.jsx(Cn,{children:e&&!r&&y.jsxs(pr,{component:wi,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(mR,{size:14,stroke:2.5}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8,whiteSpace:"nowrap"},children:o?"⌘ + K":"Ctrl + K"})]})})});tte.displayName="SearchControl";const MYe=({context:e})=>{const r=e.view.drifts??null;if(!e.features.enableCompareWithLatest||!r||r.length===0)return{hasEditor:!1,isEnabled:!1,isEditable:!1,isActive:!1,drifts:[],canApplyLatest:!1,layout:e.view._layout??"auto"};const{enableCompareWithLatest:n,enableReadOnly:o}=O2(e);return{hasEditor:e.features.enableEditor,isEnabled:!0,isEditable:!o,isActive:n===!0,drifts:r,canApplyLatest:!r.includes("type-changed"),layout:e.view._layout??"auto"}};function TR(){const e=Xf(),r=pn(e,MYe,Ir),n=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 NYe=[["path",{d:"M12 9v4",key:"svg-0"}],["path",{d:"M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0z",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]],rte=wt("outline","alert-triangle","AlertTriangle",NYe),nte=S.memo(()=>{const[e,{toggleCompare:r}]=TR(),n=bm(),{drifts:o,isActive:a,isEnabled:i}=e;return y.jsx(Cn,{propagate:!0,children:i&&!a&&y.jsxs(Bf,{position:"bottom-start",openDelay:600,closeDelay:200,floatingStrategy:"absolute",offset:{mainAxis:4,crossAxis:-22},...n,children:[y.jsx(AS,{children:y.jsx(pr,{component:wi,layout:"position",onClick:l=>{l.stopPropagation(),r()},whileTap:{scale:.95,translateY:1},className:Ge("group",eQ({variant:"filled",type:"warning"}),qn({gap:"xxs",padding:"1.5",rounded:"sm",userSelect:"none",cursor:"pointer",fontSize:"xs",fontWeight:600})),children:a?y.jsx(y.Fragment,{children:"Stop Compare"}):y.jsx(rte,{size:18})})}),y.jsx(TS,{p:"0",children:y.jsxs(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"View is out of sync",children:[y.jsx(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"})]})})]})})});nte.displayName="ManualLayoutWarning";const PYe=({context:e})=>{const r=e.view,n=e.viewModel?.folder;return{folders:!n||n.isRoot?[]:n.breadcrumbs.map(o=>({folderPath:o.path,title:o.title})),viewId:r.id,viewTitle:e.viewModel?.title??(r.title&&n7(r.title))??"Untitled View",isDynamicView:(e.viewModel?._type??r._type)==="dynamic"}},ote=S.memo(()=>{const e=m0(),{enableNavigationButtons:r,enableDynamicViewWalkthrough:n}=sr(),{folders:o,viewTitle:a,isDynamicView:i}=pn(e.actorRef,PYe,tt),l=o.flatMap(({folderPath:c,title:d},u)=>[y.jsx(pr,{component:wi,className:Ge(N2({dimmed:!0,truncate:!0}),"mantine-active",fe({userSelect:"none",maxWidth:"200px",display:{base:"none","@/md":"block"}})),initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},title:d,onMouseEnter:()=>e.send({type:"breadcrumbs.mouseEnter.folder",folderPath:c}),onMouseLeave:()=>e.send({type:"breadcrumbs.mouseLeave.folder",folderPath:c}),onClick:p=>{p.stopPropagation(),e.send({type:"breadcrumbs.click.folder",folderPath:c})},children:d},c),y.jsx(xee,{},`separator-${u}`)]),s=y.jsx(pr,{component:wi,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:Ge("mantine-active",N2({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(_Ge,{},"burger-button"),r&&y.jsx(CGe,{},"nav-buttons"),y.jsxs(Rr,{layout:"position",className:qn({gap:"1",flexShrink:1,flexGrow:1,overflow:"hidden"}),children:[l,s]},"breadcrumbs"),y.jsxs(Rr,{layout:"position",className:qn({gap:"0.5",flexGrow:0,_empty:{display:"none"}}),children:[y.jsx(TGe,{onOpen:()=>e.closeDropdown()}),y.jsx(NGe,{}),y.jsx(RYe,{})]},"actions"),n&&i&&y.jsx(DYe,{},"dynamic-view-controls"),y.jsx(tte,{},"search-control"),y.jsx(nte,{},"outdated-manual-layout-warning")]})});ote.displayName="NavigationPanelControls";const jR=S.forwardRef(({className:e,truncateLabel:r=!0,...n},o)=>y.jsx(IS,{...n,component:"button",classNames:CVe({truncateLabel:r}),className:Ge("group","mantine-active",e),ref:o}));jR.displayName="NavigationLink";const BYe=S.createContext(null),IYe=[],OYe=()=>{},LYe={projects:IYe,onProjectChange:OYe};function FYe(){return S.useContext(BYe)??LYe}function VYe(){const e=S.useContext(Sy);if(!e)throw new Error("No LikeC4ModelProvider found");return e.projectId}const qYe=S.memo(e=>{const{projects:r,onProjectChange:n}=FYe(),o=VYe();return r.length<=1?null:y.jsxs(Or,{gap:"0.5",alignItems:"baseline",children:[y.jsx(hr,{css:{fontWeight:"400",fontSize:"xxs",color:"likec4.panel.text.dimmed",userSelect:"none"},children:"Project"}),y.jsxs(tn,{withinPortal:!1,shadow:"md",position:"bottom-start",offset:{mainAxis:2},children:[y.jsx(w3,{children:y.jsx(Vn,{tabIndex:-1,autoFocus:!1,variant:"subtle",size:"compact-xs",color:"gray",classNames:{root:fe({fontWeight:"400",fontSize:"xxs",height:"auto",lineHeight:1.1,color:{_light:"mantine.colors.gray[9]"}}),section:fe({'&:is([data-position="right"])':{marginInlineStart:"1"}})},rightSection:y.jsx(i$,{opacity:.5,size:12,stroke:1.5}),children:o})}),y.jsx(vy,{children:r.map(({id:a,title:i})=>y.jsx(by,{onClick:l=>{if(o===a){l.stopPropagation();return}n(a)},children:i??a},a))})]})]})}),HYe=[["path",{d:"M10.52 2.614a2.095 2.095 0 0 1 2.835 -.117l.126 .117l7.905 7.905c.777 .777 .816 2.013 .117 2.836l-.117 .126l-7.905 7.905a2.094 2.094 0 0 1 -2.836 .117l-.126 -.117l-7.907 -7.906a2.096 2.096 0 0 1 -.115 -2.835l.117 -.126l7.905 -7.905zm5.969 9.535l.01 -.116l-.003 -.12l-.016 -.114l-.03 -.11l-.044 -.112l-.052 -.098l-.076 -.105l-.07 -.081l-3.5 -3.5l-.095 -.083a1 1 0 0 0 -1.226 0l-.094 .083l-.083 .094a1 1 0 0 0 0 1.226l.083 .094l1.792 1.793h-5.085l-.117 .007a1 1 0 0 0 0 1.986l.117 .007h5.085l-1.792 1.793l-.083 .094a1 1 0 0 0 1.403 1.403l.094 -.083l3.5 -3.5l.097 -.112l.05 -.074l.037 -.067l.05 -.112l.023 -.076l.025 -.117z",key:"svg-0"}]],UYe=wt("filled","direction-sign-filled","DirectionSignFilled",HYe),WYe=[["path",{d:"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z",key:"svg-0"}]],GYe=wt("filled","star-filled","StarFilled",WYe),YYe=[["path",{d:"M9 3a1 1 0 0 1 .608 .206l.1 .087l2.706 2.707h6.586a3 3 0 0 1 2.995 2.824l.005 .176v8a3 3 0 0 1 -2.824 2.995l-.176 .005h-14a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-11a3 3 0 0 1 2.824 -2.995l.176 -.005h4z",key:"svg-0"}]],XYe=wt("filled","folder-filled","FolderFilled",YYe),ate=ay({siblingSelector:"[data-likec4-focusable]",parentSelector:"[data-likec4-breadcrumbs-dropdown]",activateOnFocus:!1,loop:!0,orientation:"vertical"});function ZYe(e){return e.context.searchQuery.trim().length>=2}const ite=S.memo(()=>{const e=m0(),r=wR(ZYe);ja("paneClick",()=>{e.closeDropdown()}),ja("nodeClick",()=>{e.closeDropdown()}),ja("edgeClick",()=>{e.closeDropdown()});const n=Eze(o=>{e.send({type:"searchQuery.change",value:o})},250);return y.jsxs(Qs,{className:Ge("nowheel",Ey({layerStyle:"likec4.dropdown",gap:"xs",pointerEvents:"all"})),"data-likec4-breadcrumbs-dropdown":!0,onMouseLeave:()=>e.send({type:"dropdown.mouseLeave"}),onMouseEnter:()=>e.send({type:"dropdown.mouseEnter"}),children:[y.jsx(qYe,{}),y.jsx(Or,{gap:"xs",children:y.jsx(sXe,{defaultValue:e.actorRef.getSnapshot().context.searchQuery,onChange:n})}),y.jsx(oa,{scrollbars:"x",type:"auto",offsetScrollbars:"present",classNames:{root:fe({maxWidth:["calc(100vw - 50px)","calc(100cqw - 50px)"]})},styles:{viewport:{overscrollBehavior:"none"}},children:r?y.jsx(JYe,{}):y.jsx(aXe,{})})]})});ite.displayName="NavigationPanelDropdown";function KYe(e){return gx(e.context.searchQuery)}const QYe=JP(_a),JYe=S.memo(()=>{const e=Fo(),r=m0(),n=pn(r.actorRef,KYe),o=S.useDeferredValue(n),a=o.includes(_a),i=a?o.split(_a):o,[l,s]=S.useState([]);return S.useEffect(()=>{s(c=>{const d=Jr(e.views(),Is(u=>a&&u.$view.title?gx(u.$view.title).toLowerCase().includes(o):u.id.toLowerCase().includes(o)||!!u.title?.toLowerCase().includes(o)),jke(20),C1(),G$e((u,p)=>QYe(u.folder.path,p.folder.path)));return Ir(d,c)?c:d})},[e,o,a]),l.length===0?y.jsx("div",{children:"no results"}):y.jsx(oa,{scrollbars:"xy",offsetScrollbars:!1,className:fe({width:"100%",maxWidth:["calc(100vw - 250px)","calc(100cqw - 250px)"],maxHeight:["calc(100vh - 200px)","calc(100cqh - 200px)"]}),children:y.jsx(hp,{gap:"0.5",children:l.map(c=>y.jsx(tXe,{view:c,highlight:i,onClick:d=>{d.stopPropagation(),r.selectView(c.id)},"data-likec4-focusable":!0,onKeyDown:ate},c.id))})})}),eXe=qn({gap:"xxs",rounded:"sm",px:"xs",py:"xxs",_hover:{backgroundColor:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]"}},_focus:{outline:"none",color:"mantine.colors.primary.lightColor!",backgroundColor:"mantine.colors.primary.lightHover!"}}),lte=fe({_groupFocus:{color:"[inherit!]",transition:"none"}});function tXe({view:e,highlight:r,...n}){const o=e.folder,a=cte[e.id==="index"?"index":e._type],i=y.jsx(tc,{component:"div",className:Ge(lte,N2({truncate:!0}),fe({"& > mark":{backgroundColor:{base:"mantine.colors.yellow[2]/90",_dark:"mantine.colors.yellow[5]/80",_groupFocus:"[transparent]"},color:{_groupFocus:"[inherit!]"}}})),maw:350,highlight:r,children:e.title??e.id},e.id),l=Ge(n.className,"group",eXe);if(o.isRoot)return y.jsxs(pr,{...n,className:l,children:[a,i]});const s=o.breadcrumbs.map(c=>y.jsx(tc,{component:"div",className:Ge(fe({_groupHover:{color:"mantine.colors.dimmed"}}),lte,N2({dimmed:!0,truncate:!0})),maw:170,highlight:a9(r)?r:[],children:c.title},c.path));return s.push(y.jsxs(Or,{gap:"[4px]",children:[a,i]})),y.jsxs(pr,{...n,className:l,children:[ste,y.jsx(y3,{separator:y.jsx(Dd,{size:12,stroke:1.5}),separatorMargin:3,children:s})]})}const rXe=y.jsx(Dd,{size:12,stroke:1.5,className:"mantine-rotate-rtl"}),ste=y.jsx(XYe,{size:16,className:fe({opacity:{base:.3,_groupHover:.5,_groupActive:.5,_groupFocus:.5}})}),L2=fe({opacity:{base:.3,_dark:.5,_groupHover:.8,_groupActive:.8,_groupFocus:.8}}),cte={index:y.jsx(GYe,{size:16,className:L2}),element:y.jsx(bi,{size:18,stroke:2,className:L2}),deployment:y.jsx(iR,{size:16,stroke:1.5,className:L2}),dynamic:y.jsx(UYe,{size:18,className:L2})},nXe=oa.withProps({scrollbars:"y",className:fe({maxHeight:["calc(100vh - 160px)","calc(100cqh - 160px)"]})});function dte(e,r){return{folderPath:e.path,items:[...e.folders.map(n=>({type:"folder",folderPath:n.path,title:n.title,selected:r.selectedFolder.startsWith(n.path)})),...e.views.map(n=>({type:"view",viewType:n.id==="index"?"index":n._type,viewId:n.id,title:n.title??n.id,description:n.description.nonEmpty&&n.description.text||null,selected:n.id===r.viewModel?.id}))]}}const oXe=e=>{const r=e.viewModel;if(!r)return[];const n=r.$model,o=[dte(n.rootViewFolder,e)],a=n.viewFolder(e.selectedFolder);if(!a.isRoot)for(const i of a.breadcrumbs)o.push(dte(i,e));return o},aXe=S.memo(()=>{const e=xGe(oXe,tt);return y.jsx(Or,{gap:"xs",alignItems:"stretch",children:e.flatMap((r,n)=>[n>0&&y.jsx(sp,{orientation:"vertical"},"divider"+n),y.jsx(iXe,{data:r,isLast:n>0&&n==e.length-1},r.folderPath)])})});function iXe({data:e,isLast:r}){const n=S.useRef(null),o=xR(),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 Q5e(()=>{r&&n.current&&n.current.scrollIntoView({block:"nearest",inline:"nearest",behavior:"smooth"})}),y.jsx(hr,{mb:"1",ref:n,children:y.jsx(nXe,{children:y.jsx(hp,{gap:"0.5",children:e.items.map((i,l)=>y.jsx(lXe,{columnItem:i,onClick:a(i)},`${e.folderPath}/${i.type}/${l}`))})})})}function lXe({columnItem:e,...r}){switch(e.type){case"folder":return y.jsx(jR,{variant:"light",active:e.selected,label:e.title,leftSection:ste,rightSection:rXe,maw:"300px",miw:"200px",...r},e.folderPath);case"view":return y.jsx(jR,{variant:"filled",active:e.selected,label:e.title,description:e.description,leftSection:cte[e.viewType],maw:"300px",miw:"200px",...r},e.viewId);default:Qo(e)}}function sXe(e){const[r,n]=Ys({...e,finalValue:""});return y.jsx(za,{size:"xs",placeholder:"Search by title or id",variant:"unstyled",height:$e(26),value:r,onKeyDown:ate,onChange:o=>n(o.currentTarget.value),"data-likec4-focusable":!0,classNames:{wrapper:fe({flexGrow:1,backgroundColor:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]/80",_hover:{base:"mantine.colors.gray[2]",_dark:"mantine.colors.dark[4]"},_focus:{base:"mantine.colors.gray[2]",_dark:"mantine.colors.dark[4]"}},rounded:"sm"}),input:fe({_placeholder:{color:"mantine.colors.dimmed"},_focus:{outline:"none"}})},style:{"--input-fz":"var(--mantine-font-size-sm)"},leftSection:y.jsx(mR,{size:14}),rightSectionPointerEvents:"all",rightSectionWidth:"min-content",rightSection:!e.value||tp(e.value)?null:y.jsx(Vn,{variant:"subtle",h:"100%",size:"compact-xs",color:"gray",onClick:o=>{o.stopPropagation(),n("")},children:"clear"})})}const cXe=Ed("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}});function dXe(e){const r=_$e(e.activeWalkthrough),n=r?e.xyedges.findIndex(o=>o.id===e.activeWalkthrough?.stepId):-1;return{isActive:r,isParallel:r&&Kn(e.activeWalkthrough?.parallelPrefix),hasNext:r&&n0,notes:r?e.xyedges[n]?.data?.notes??null:null}}const uXe=S.memo(()=>{const{isActive:e,notes:r}=pi(dXe),n=r?ur.from(r):ur.EMPTY;return y.jsx(Cn,{children:e&&!n.isEmpty&&y.jsx(mi.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(oa,{className:Ey({position:"absolute",layerStyle:"likec4.dropdown",gap:"sm",padding:"md",paddingTop:"xxs",pointerEvents:"all",maxWidth:"calc(100cqw - 32px)",minWidth:"calc(100cqw - 50px)",maxHeight:"calc(100cqh - 100px)",width:"max-content",cursor:"default",overflow:"auto",overscrollBehavior:"contain","@/sm":{minWidth:400,maxWidth:550},"@/lg":{maxWidth:700}}),type:"scroll",children:[y.jsx(cXe,{children:"Notes"}),y.jsx(zp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})})})});function pXe({disabled:e=!1,onApplyLatestToManual:r,onResetManualLayout:n}){return y.jsxs(tn,{withinPortal:!1,floatingStrategy:"absolute",shadow:"lg",position:"bottom-start",offset:{mainAxis:4},disabled:e,children:[y.jsx(tn.Target,{children:y.jsxs(pr,{disabled:e,className:Ge("mantine-active",qn({gap:"2",py:"1.5",px:"2",lineHeight:"1",textStyle:"xs",fontWeight:"medium",layerStyle:"likec4.panel.action",userSelect:"none"})),children:[y.jsx(hr,{children:"Actions"}),y.jsx(i$,{size:12,stroke:2,opacity:.7})]})}),y.jsxs(tn.Dropdown,{children:[y.jsxs(tn.Item,{disabled:!r,onClick:r,rightSection:r&&y.jsx(_n,{onClick:nn,position:"right-start",label:y.jsxs(y.Fragment,{children:["Applies changes from the latest auto-layouted",y.jsx("br",{}),"to saved snapshot, preserving (as possible)",y.jsx("br",{}),"manual adjustments.",y.jsx("br",{}),y.jsx("br",{}),"You can undo this action."]}),children:y.jsx(r0,{size:14,stroke:1.7,opacity:.5})}),children:["Sync with latest",!r&&y.jsx(hr,{textStyle:"xs",children:"view type is changed"})]}),y.jsx(tn.Item,{onClick:n,children:"Remove manual layout"})]})]})}function hXe({value:e,onChange:r}){const n=S.useMemo(()=>[{value:"manual",label:"Saved manual"},{value:"auto",label:"Latest auto"}],[]);return y.jsx(Rr,{layout:"position",children:y.jsx(Of,{size:"xs",color:e==="manual"?"orange":"green",value:e,component:Rr,onChange:o=>{He(o==="manual"||o==="auto","Invalid layout type"),r(o)},classNames:{label:fe({fontSize:"xxs",fontWeight:"medium"})},data:n})})}const ute=sp.withProps({mx:2,size:"xs",orientation:"vertical"});function fXe(){const[e,{toggleCompare:r,switchLayout:n,resetManualLayout:o,applyLatestToManual:a}]=TR();return y.jsxs(y.Fragment,{children:[y.jsx(hr,{css:{textStyle:"xs",color:"likec4.panel.text",userSelect:"none"},children:"Compare"}),y.jsx(hXe,{value:e.layout,onChange:n}),e.hasEditor&&y.jsxs(Or,{gap:"1",children:[y.jsx(ute,{}),y.jsx(pXe,{disabled:e.layout==="auto",onResetManualLayout:o,onApplyLatestToManual:e.canApplyLatest?a:void 0}),y.jsx(ute,{})]}),y.jsx(cc,{size:"sm",onClick:i=>{i.stopPropagation(),r()},children:y.jsx(fp,{})})]})}const pte=S.memo(()=>{const{enableCompareWithLatest:e}=sr();return y.jsx(Cn,{children:e&&y.jsx(Rr,{layout:"position",className:qn({gap:"2",layerStyle:"likec4.panel",position:"relative",px:"2",py:"1",pl:"3",pointerEvents:"all"}),initial:{opacity:0,translateX:-20},animate:{opacity:1,translateX:0},exit:{opacity:0,translateX:-20},children:y.jsx(fXe,{})})})});pte.displayName="ComparePanel";const g0=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,position:"right"}),mXe=[["path",{d:"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-1"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-2"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-3"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-4"}]],gXe=wt("outline","focus-centered","FocusCentered",mXe),yXe=()=>{const e=Nt();return y.jsx(g0,{label:"Center camera",children:y.jsx(cc,{onClick:()=>e.fitDiagram(),children:y.jsx(gXe,{})})})};fe({gap:"xxs",_empty:{display:"none"}}),fe({top:"md",left:"md",margin:"0",pointerEvents:"none","& :where(button, .action-icon, [role='dialog'])":{pointerEvents:"all"},"& .action-icon":{"--ai-size":"2rem"},"& .tabler-icon":{width:"65%",height:"65%"},_reduceGraphics:{"& .action-icon":{"--ai-radius":"0px"}}}),fe({shadow:{base:"md",_whenPanning:"none"}}),fe({"& .tabler-icon":{width:"65%",height:"65%"}});const F2=fe({flex:"1 1 40%",textAlign:"center",fontWeight:500,padding:"[4px 6px]",fontSize:"11px",zIndex:1}),vXe=fe({background:"mantine.colors.gray[2]",borderRadius:"sm",border:"1px solid",borderColor:"mantine.colors.gray[4]",_dark:{background:"mantine.colors.dark[5]",borderColor:"mantine.colors.dark[4]"}}),bXe=fe({position:"relative",borderRadius:"sm",background:"mantine.colors.gray[3]",boxShadow:"inset 1px 1px 3px 0px #00000024",_dark:{background:"mantine.colors.dark[7]"}}),xXe=fe({position:"absolute",width:8,height:8,border:"2px solid",borderColor:"mantine.colors.gray[5]",borderRadius:3,transform:"translate(-50%, -50%)"}),wXe=[["path",{d:"M5 4h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1",key:"svg-0"}],["path",{d:"M5 16h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1",key:"svg-1"}],["path",{d:"M15 12h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1",key:"svg-2"}],["path",{d:"M15 4h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1",key:"svg-3"}]],kXe=wt("outline","layout-dashboard","LayoutDashboard",wXe),_Xe=e=>({viewId:e.view.id,isManualLayout:e.view._layout==="manual",autoLayout:e.view.autoLayout}),SXe=()=>{const e=Nt(),[r,n]=S.useState(null),[o,a]=S.useState({}),{autoLayout:i,viewId:l,isManualLayout:s}=pi(_Xe),{ref:c,hovered:d}=b9(),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(kd,{children:y.jsx(g0,{label:"Change Auto Layout",children:y.jsx(cc,{children:y.jsx(kXe,{})})})}),y.jsx(Qs,{className:"likec4-top-left-panel",p:8,pt:6,opacity:d?.6:1,children:y.jsxs(Se,{pos:"relative",ref:n,children:[y.jsx(h3,{target:o[i.direction],parent:r,className:vXe}),y.jsx(Se,{mb:10,children:y.jsx(at,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Auto layout:"})}),y.jsxs(Js,{gap:2,wrap:"wrap",justify:"stretch",maw:160,children:[y.jsx(pr,{className:F2,ref:u("TB"),onClick:p("TB"),children:"Top-Bottom"}),y.jsx(pr,{className:F2,ref:u("BT"),onClick:p("BT"),children:"Bottom-Top"}),y.jsx(pr,{className:F2,ref:u("LR"),onClick:p("LR"),children:"Left-Right"}),y.jsx(pr,{className:F2,ref:u("RL"),onClick:p("RL"),children:"Right-Left"})]}),y.jsx(Se,{my:10,children:y.jsx(at,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Spacing:"})}),y.jsx(EXe,{ref:c,isVertical:i.direction==="TB"||i.direction==="BT",nodeSep:i.nodeSep,rankSep:i.rankSep,onChange:f},l)]})})]})},km=400,EXe=S.forwardRef(({isVertical:e,nodeSep:r,rankSep:n,onChange:o},a)=>{e||([r,n]=[n,r]);const i=h7(({x:f,y:g})=>{e||([f,g]=[g,f]),o(Math.round(f*km),Math.round(g*km))},[o,e],250,2e3),[l,s]=Ys({defaultValue:dze({x:(r??100)/km,y:(n??120)/km}),onChange:i}),{ref:c}=kH(s);let d=Math.round(l.x*km),u=Math.round(l.y*km);e||([d,u]=[u,d]);const p=$r(c,a);return y.jsxs(Se,{ref:p,className:bXe,pt:"100%",children:[y.jsx(Se,{className:xXe,style:{left:`${l.x*100}%`,top:`${l.y*100}%`}}),y.jsx(Se,{pos:"absolute",left:2,bottom:2,children:y.jsxs(at,{component:"div",fz:8,c:"dimmed",fw:500,children:[u,", ",d]})})]})}),CXe=[["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M10 4l4 16",key:"svg-1"}],["path",{d:"M12 12l-8 2",key:"svg-2"}]],$Xe=wt("outline","layout-collage","LayoutCollage",CXe),RXe=[["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M4 12h8",key:"svg-1"}],["path",{d:"M12 15h8",key:"svg-2"}],["path",{d:"M12 9h8",key:"svg-3"}],["path",{d:"M12 4v16",key:"svg-4"}]],hte=wt("outline","layout-board-split","LayoutBoardSplit",RXe),zXe=[["path",{d:"M4 4l0 16",key:"svg-0"}],["path",{d:"M8 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-1"}]],TXe=wt("outline","layout-align-left","LayoutAlignLeft",zXe),jXe=[["path",{d:"M12 4l0 5",key:"svg-0"}],["path",{d:"M12 15l0 5",key:"svg-1"}],["path",{d:"M6 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-2"}]],AXe=wt("outline","layout-align-center","LayoutAlignCenter",jXe),DXe=[["path",{d:"M20 4l0 16",key:"svg-0"}],["path",{d:"M4 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-1"}]],MXe=wt("outline","layout-align-right","LayoutAlignRight",DXe),NXe=[["path",{d:"M4 4l16 0",key:"svg-0"}],["path",{d:"M9 8m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-1"}]],PXe=wt("outline","layout-align-top","LayoutAlignTop",NXe),BXe=[["path",{d:"M4 12l5 0",key:"svg-0"}],["path",{d:"M15 12l5 0",key:"svg-1"}],["path",{d:"M9 6m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-2"}]],IXe=wt("outline","layout-align-middle","LayoutAlignMiddle",BXe),OXe=[["path",{d:"M4 20l16 0",key:"svg-0"}],["path",{d:"M9 4m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-1"}]],LXe=wt("outline","layout-align-bottom","LayoutAlignBottom",OXe),FXe=[["path",{d:"M6 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-0"}],["path",{d:"M18 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M12 19h4.5c.71 0 1.372 -.212 1.924 -.576m1.545 -2.459a3.5 3.5 0 0 0 -3.469 -3.965h-.499m-4 0h-3.501a3.5 3.5 0 0 1 -2.477 -5.972m2.477 -1.028h3.5",key:"svg-2"}],["path",{d:"M3 3l18 18",key:"svg-3"}]],VXe=wt("outline","route-off","RouteOff",FXe),uc=({label:e,icon:r,onClick:n})=>y.jsx(g0,{label:e,withinPortal:!1,position:"top",children:y.jsx(cc,{classNames:{root:"action-icon",icon:fe({"& > svg":{width:"70%",height:"70%"}})},onClick:n,children:r})}),fte=S.memo(()=>{const e=Nt(),r=bm();return y.jsxs(br,{position:"right",offset:{mainAxis:12},clickOutsideEvents:["pointerdown"],...r,children:[y.jsx(kd,{children:y.jsx(g0,{label:"Manual layouting tools",children:y.jsx(cc,{children:y.jsx($Xe,{})})})}),y.jsx(Qs,{className:qn({gap:"0.5",layerStyle:"likec4.panel",padding:"1",pointerEvents:"all"}),children:y.jsxs(dp,{children:[y.jsx(uc,{label:"Align in columns",icon:y.jsx(hte,{}),onClick:n=>{n.stopPropagation(),e.align("Column")}}),y.jsx(uc,{label:"Align left",icon:y.jsx(TXe,{}),onClick:n=>{n.stopPropagation(),e.align("Left")}}),y.jsx(uc,{label:"Align center",icon:y.jsx(AXe,{}),onClick:n=>{n.stopPropagation(),e.align("Center")}}),y.jsx(uc,{label:"Align right",icon:y.jsx(MXe,{}),onClick:n=>{n.stopPropagation(),e.align("Right")}}),y.jsx(uc,{label:"Align in rows",icon:y.jsx(hte,{style:{transform:"rotate(90deg)"}}),onClick:n=>{n.stopPropagation(),e.align("Row")}}),y.jsx(uc,{label:"Align top",icon:y.jsx(PXe,{}),onClick:n=>{n.stopPropagation(),e.align("Top")}}),y.jsx(uc,{label:"Align middle",icon:y.jsx(IXe,{}),onClick:n=>{n.stopPropagation(),e.align("Middle")}}),y.jsx(uc,{label:"Align bottom",icon:y.jsx(LXe,{}),onClick:n=>{n.stopPropagation(),e.align("Bottom")}}),y.jsx(uc,{label:"Reset all control points",icon:y.jsx(VXe,{}),onClick:n=>{n.stopPropagation(),e.resetEdgeControlPoints()}})]})})]})});fte.displayName="ManualLayoutToolsButton";const qXe=()=>{const e=Nt();return y.jsx(g0,{label:"Switch to Read-only",children:y.jsx(cc,{onClick:()=>e.toggleFeature("ReadOnly"),children:y.jsx(Jee,{size:14,stroke:2})})})};function HXe(){const{enableReadOnly:e}=sr();return y.jsx(Cn,{children:!e&&y.jsx(Rr,{layout:"position",className:Ey({gap:"xs",layerStyle:"likec4.panel",position:"relative",cursor:"pointer",padding:"xxs",pointerEvents:"all"}),initial:{opacity:0,translateX:-20},animate:{opacity:1,translateX:0},exit:{opacity:0,translateX:-20},children:y.jsxs(dp,{openDelay:600,closeDelay:120,children:[y.jsx(SXe,{}),y.jsx(fte,{}),y.jsx(yXe,{}),y.jsx(qXe,{})]})})})}const UXe=[["path",{d:"M17 4h-10a3 3 0 0 0 -3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3 -3v-10a3 3 0 0 0 -3 -3z",key:"svg-0"}]],WXe=wt("filled","player-stop-filled","PlayerStopFilled",UXe),GXe=[["path",{d:"M19.496 4.136l-12 7a1 1 0 0 0 0 1.728l12 7a1 1 0 0 0 1.504 -.864v-14a1 1 0 0 0 -1.504 -.864z",key:"svg-0"}],["path",{d:"M4 4a1 1 0 0 1 .993 .883l.007 .117v14a1 1 0 0 1 -1.993 .117l-.007 -.117v-14a1 1 0 0 1 1 -1z",key:"svg-1"}]],YXe=wt("filled","player-skip-back-filled","PlayerSkipBackFilled",GXe),XXe=[["path",{d:"M3 5v14a1 1 0 0 0 1.504 .864l12 -7a1 1 0 0 0 0 -1.728l-12 -7a1 1 0 0 0 -1.504 .864z",key:"svg-0"}],["path",{d:"M20 4a1 1 0 0 1 .993 .883l.007 .117v14a1 1 0 0 1 -1.993 .117l-.007 -.117v-14a1 1 0 0 1 1 -1z",key:"svg-1"}]],ZXe=wt("filled","player-skip-forward-filled","PlayerSkipForwardFilled",XXe),mte=Vn.withProps({component:wi,layout:"position",whileTap:{scale:.95},variant:"light",size:"xs",fw:"500"}),KXe=()=>{const{portalProps:e}=bm();return y.jsx(py,{...e,children:y.jsx(hr,{css:{position:"absolute",margin:"0",padding:"0",top:"0",left:"0",width:"100%",height:"100%",border:"2px solid",borderColor:"mantine.colors.orange[6]",pointerEvents:"none",md:{borderWidth:4}}})})};function QXe(){const e=Nt(),{isParallel:r,hasNext:n,hasPrevious:o,currentStep:a,totalSteps:i}=pi(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(ete,{variant:"light",size:"xs",color:"orange",mr:"sm",onClick:l=>{l.stopPropagation(),e.stopWalkthrough()},rightSection:y.jsx(WXe,{size:10}),children:"Stop"},"stop-walkthrough"),y.jsx(mte,{disabled:!o,onClick:()=>e.walkthroughStep("previous"),leftSection:y.jsx(YXe,{size:10}),children:"Previous"},"prev"),y.jsxs(ec,{component:Rr,layout:"position",size:"md",radius:"sm",variant:r?"gradient":"transparent",gradient:{from:"red",to:"orange",deg:90},rightSection:y.jsx(Rr,{className:fe({fontSize:"xxs",display:r?"block":"none"}),children:"parallel"}),className:fe({alignItems:"baseline"}),children:[a," / ",i]},"step-badge"),y.jsx(mte,{disabled:!n,onClick:()=>e.walkthroughStep("next"),rightSection:y.jsx(ZXe,{size:10}),children:"Next"},"next"),r&&y.jsx(KXe,{},"parallel-frame")]})}const gte=S.memo(()=>{const e=Nt(),r=VHe(),n=UVe(),o=vE(vGe,{input:{view:r,viewModel:n}});return S.useEffect(()=>{const 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(hp,{css:{alignItems:"flex-start",pointerEvents:"none",position:"absolute",top:"0",left:"0",margin:"0",width:"100%",gap:"xxs",maxWidth:["calc(100vw)","calc(100cqw)"],"@/sm":{margin:"xs",gap:"xs",width:"max-content",maxWidth:["calc(100vw - 2 * {spacing.md})","calc(100cqw - 2 * {spacing.md})"]},_print:{display:"none"}},children:y.jsxs(bGe,{value:o,children:[y.jsx(JXe,{actor:o}),y.jsx(pte,{}),y.jsx(uXe,{}),y.jsx(HXe,{})]})})});gte.displayName="NavigationPanel";const JXe=({actor:e})=>{const r=pn(e,o=>o.hasTag("active")),n=bm();return y.jsxs(br,{offset:{mainAxis:4},opened:r,position:"bottom-start",trapFocus:r,...n,clickOutsideEvents:["pointerdown","mousedown","click"],onDismiss:()=>e.send({type:"dropdown.dismiss"}),children:[y.jsx(eZe,{actor:e}),r&&y.jsx(ite,{})]})},eZe=({actor:e})=>{const r=pi(n=>n.activeWalkthrough!==null);return y.jsx(lm,{children:y.jsx(kd,{children:y.jsx(Rr,{layout:!0,layoutDependency:r,className:qn({layerStyle:"likec4.panel",position:"relative",gap:"xs",cursor:"pointer",pointerEvents:"all",width:"100%"}),onMouseLeave:()=>e.send({type:"breadcrumbs.mouseLeave"}),children:y.jsx(Cn,{children:r?y.jsx(QXe,{}):y.jsx(ote,{})})})})})},AR=fe({position:"absolute",bottom:"0",right:"0",padding:"2",margin:"0",width:"min-content",height:"min-content",_print:{display:"none"}}),tZe=fe({"--ai-radius":"0px",_noReduceGraphics:{"--ai-radius":"{radii.md}"}}),rZe=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"}}),nZe=fe({padding:"xxs"}),oZe=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 aZe=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)"}),iZe=[["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"}]],lZe=wt("outline","help-circle","HelpCircle",iZe),sZe=[["path",{d:"M7 7l10 10",key:"svg-0"}],["path",{d:"M17 8l0 9l-9 0",key:"svg-1"}]],cZe=wt("outline","arrow-down-right","ArrowDownRight",sZe),dZe=({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(b3,{shadow:"none",px:"xs",py:"sm",className:Ge(oZe),"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:GCe(70*(c/s),0)},children:y.jsx(pm,{data:{shape:o,width:s,height:c}})}),y.jsxs(Lo,{gap:4,flex:1,children:[y.jsx(en,{gap:4,flex:"0 0 auto",children:e.kinds.map(d=>y.jsx(ec,{className:Ge(aZe),onMouseEnter:()=>{i(d),l.highlightNotation(e,d)},onMouseLeave:()=>{i(null),l.highlightNotation(e)},opacity:Bq(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})]})]})})},uZe=e=>({id:e.view.id,notations:e.view.notation?.nodes??[]}),pZe=S.memo(()=>{const e=QC(s=>s.height),{id:r,notations:n}=pi(uZe),[o,a]=sRe({key:"notation-webview-collapsed",defaultValue:!0}),i=n.length>0,l=bm();return y.jsxs(Cn,{children:[!i&&y.jsx(mi.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:Az,children:y.jsx(_n,{label:"View has no notations",color:"orange",...l,children:y.jsx(Ta,{size:"lg",variant:"light",color:"orange",radius:"md",children:y.jsx(rte,{})})})},"empty"),i&&o&&y.jsx(mi.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:Az,children:y.jsx(_n,{label:"Show notation",color:"dark",fz:"xs",...l,children:y.jsx(lr,{size:"lg",variant:"default",color:"gray",className:tZe,onClick:()=>a(!1),children:y.jsx(lZe,{stroke:1.5})})})},"collapsed"),i&&!o&&y.jsx(mi.div,{initial:{opacity:.75,scale:.2},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.25},className:Ge("react-flow__panel",Az),style:{transformOrigin:"bottom right"},children:y.jsx(Af,{radius:"sm",withBorder:!0,shadow:"lg",className:rZe,children:y.jsxs(up,{defaultValue:"first",radius:"xs",children:[y.jsxs(ky,{children:[y.jsx(lr,{size:"md",variant:"subtle",color:"gray",ml:2,style:{alignSelf:"center"},onClick:()=>a(!0),children:y.jsx(cZe,{stroke:2})}),y.jsx(Lf,{value:"first",fz:"xs",children:"Elements"}),y.jsx(Lf,{value:"second",fz:"xs",disabled:!0,children:"Relationships"})]}),y.jsx(rc,{value:"first",className:nZe,hidden:o,children:y.jsx(oa,{viewportProps:{style:{maxHeight:`min(40vh, ${Math.max(e-60,50)}px)`}},children:y.jsx(Lo,{gap:0,children:n.map((s,c)=>y.jsx(dZe,{value:s},c))})})})]})})},r)]})}),hZe=S.memo(()=>{const[{layout:e,isActive:r},{toggleCompare:n}]=Tz(),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(fZe,{style:{backgroundColor:o},onClick:a=>{a.stopPropagation(),n()},children:"Close compare"})})}),fZe=pr.withProps({className:fe({fontSize:"xs",fontWeight:"medium",py:"1.5",lineHeight:"1",borderBottomLeftRadius:"sm",borderBottomRightRadius:"sm",transform:"translateY(-4px)",px:"4",color:"mantine.colors.gray[9]",pointerEvents:"all",_active:{transform:"translateY(-3px)"}})}),yte=S.memo(()=>{const{enableControls:e,enableNotations:r,enableSearch:n,enableRelationshipDetails:o,enableReadOnly:a,enableCompareWithLatest:i}=sr(),l=e6e(),s=oBe(),c=iBe(),d=S.useCallback(()=>{console.warn("DiagramUI: resetting error boundary and rerendering..."),l()},[]);return y.jsxs(QS,{onReset:d,children:[e&&y.jsx(gte,{}),s&&y.jsx(uWe,{overlaysActorRef:s}),r&&y.jsx(pZe,{}),n&&c&&y.jsx(KWe,{searchActorRef:c}),o&&a&&y.jsx(uGe,{}),i&&y.jsx(hZe,{})]})});yte.displayName="DiagramUI";function vte({edgeProps:{data:e},svgPath:r}){const n=e.drifts;return!n||n.length===0?null:y.jsx("path",{className:Ge("react-flow__edge-path",fe({pointerEvents:"none",stroke:"likec4.compare.manual.outline",fill:"none",strokeWidth:{base:"8px",_whenHovered:"12px"},strokeOpacity:.5})),d:r,strokeLinecap:"round"})}const mZe=fe({overflow:"visible",position:"absolute",pointerEvents:"none",top:"0",left:"0",mixBlendMode:{_dark:"screen",_light:"multiply"}}),gZe=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 yZe({sourceX:e,sourceY:r,targetX:n,targetY:o,data:a}){const[i,l]=S.useState(()=>a.controlPoints??c2(a.points));$p(()=>{const c=a.controlPoints??c2(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 xte;const n=10**r;return function(o){this._+=o[0];for(let a=1,i=o.length;aTp)if(!(Math.abs(p*c-d*u)>Tp)||!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((Dz-Math.acos((w+f-x)/(2*k*C)))/2),$=_/C,z=_/k;Math.abs($-1)>Tp&&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)>Tp||Math.abs(this._y1-u)>Tp)&&this._append`L${d},${u}`,o&&(f<0&&(f=f%Mz+Mz),f>vZe?this._append`A${o},${o},0,1,${p},${r-s},${n-c}A${o},${o},0,1,${p},${this._x1=d},${this._y1=u}`:f>Tp&&this._append`A${o},${o},0,${+(f>=Dz)},${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 wZe(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 xZe(r)}function kZe(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function wte(e){this._context=e}wte.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){switch(e=+e,r=+r,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 1:this._point=2;default:this._context.lineTo(e,r);break}}};function _Ze(e){return new wte(e)}function SZe(e){return e[0]}function EZe(e){return e[1]}function CZe(e,r){var n=_m(!0),o=null,a=_Ze,i=null,l=wZe(s);e=typeof e=="function"?e:e===void 0?SZe:_m(e),r=typeof r=="function"?r:r===void 0?EZe:_m(r);function s(c){var d,u=(c=kZe(c)).length,p,f=!1,g;for(o==null&&(i=a(g=l())),d=0;d<=u;++d)!(dbte){var s=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,c=3*e._l01_a*(e._l01_a+e._l12_a);o=(o*s-e._x0*e._l12_2a+e._x2*e._l01_2a)/c,a=(a*s-e._y0*e._l12_2a+e._y2*e._l01_2a)/c}if(e._l23_a>bte){var d=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);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 _te(e,r){this._context=e,this._alpha=r}_te.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){if(e=+e,r=+r,this._point){var n=this._x2-e,o=this._y2-r;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+o*o,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 1:this._point=2;break;case 2:this._point=3;default:kte(this,e,r);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=r}},(function e(r){function n(o){return r?new _te(o,r):new Pz(o,0)}return n.alpha=function(o){return e(+o)},n})(.5);function Ste(e,r){this._context=e,this._alpha=r}Ste.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){if(e=+e,r=+r,this._point){var n=this._x2-e,o=this._y2-r;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+o*o,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:kte(this,e,r);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=r}};const $Ze=(function e(r){function n(o){return r?new Ste(o,r):new Bz(o,0)}return n.alpha=function(o){return e(+o)},n})(.5),zZe=CZe().curve($Ze.alpha(.7)).x(e=>Math.round(e.x)).y(e=>Math.round(e.y)),RZe=(e,r)=>cQ(e.sourceNode,r.sourceNode)&&cQ(e.targetNode,r.targetNode);function TZe({props:{sourceX:e,sourceY:r,source:n,target:o,targetX:a,targetY:i,data:l},controlPoints:s,isControlPointDragging:c}){const{sourceNode:d,targetNode:u}=QC(S.useCallback(({nodeLookup:p})=>{const f=mt(p.get(n),`source node ${n} not found`),g=mt(p.get(o),`target node ${o} not found`);return{sourceNode:r$(f),targetNode:r$(g)}},[n,o]),RZe);if(Kn(l.controlPoints)||c){const p={x:e,y:r},f={x:a,y:i},g=6,v=l.dir==="back"?[f,s2(u,hf(s)??p,g),...s,s2(d,dd(s)??f,g),p]:[p,s2(d,hf(s)??f,g),...s,s2(u,dd(s)??p,g),f];return mt(zZe(v))}return OVe(l.points)}const Ete=e=>{const r=e.getPointAtLength(e.getTotalLength()*.5);return{x:Math.round(r.x),y:Math.round(r.y)}},Cte=rz(e=>{const[r,n]=S.useState(!1),o=S.useRef(r);o.current=r;const a=aQ(),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}=yZe(e);let _=TZe({props:e,controlPoints:x,isControlPointDragging:r}),$=f?.x??0,z=f?.y??0;const[T,A]=S.useState({x:g?.x??$,y:g?.y??z});$p(()=>{if(o.current)return;const V={x:$,y:z};A(B=>d2(B,V)?B:V)},[$,z]);const R=S.useRef(null);S.useEffect(()=>{const V=R.current;if(!V||!r)return;const B=Ete(V);A(F=>d2(F,B)?F:B)},[_,r]);const j=it(V=>{const B=R.current?Ete(R.current):null;f&&B?i.updateEdgeData(u,{controlPoints:V,labelBBox:{...f,...B}}):i.updateEdgeData(u,{controlPoints:V}),i.stopEditing(!0),n(!1)}),I=it(()=>{i.startEditing("edge"),n(!0)}),P=it(()=>{i.stopEditing(),n(!1)}),L=it(V=>{k(V),requestAnimationFrame(()=>{j(V)})}),H=it(V=>{i.startEditing("edge"),n(!0),k(V),requestAnimationFrame(()=>{j(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(i0,{...e,className:fe({"& .react-flow__edge-interaction":{cursor:d&&p?"copy":void 0}}),children:[y.jsx(l0,{edgeProps:e,svgPath:_,ref:R,isDragging:r,...d&&{onEdgePointerDown:M}}),c&&y.jsx(vte,{edgeProps:e,svgPath:_}),f&&y.jsx(S2,{edgeProps:e,labelPosition:r?T:{x:$,y:z},children:y.jsx(a0,{pointerEvents:d?"none":"all",edgeProps:e,children:w&&y.jsx(_2,{onClick:V=>{V.stopPropagation(),i.navigateTo(w)}})})})]}),d&&x.length>0&&y.jsx(jZe,{isControlPointDragging:r,edgeProps:e,controlPoints:x,onMove:k,onStartMove:I,onCancelMove:P,onFinishMove:L,onDelete:H,zIndex:9999})]})});Cte.displayName="RelationshipEdge";function jZe({isControlPointDragging:e,edgeProps:r,controlPoints:n,onMove:o,onStartMove:a,onCancelMove:i,onFinishMove:l,onDelete:s,zIndex:c}){const d=JC(),u=aQ(),p=r.data.id,f=(x,k,C)=>{let _=!1,$={x:k.clientX,y:k.clientY},z=null,T=n;const A=j=>{const I={x:j.clientX,y:j.clientY};d2($,I)||(_||(_=!0,a()),$=I,z??=requestAnimationFrame(()=>{z=null,T=T.slice();const{x:P,y:L}=u.screenToFlowPosition($,{snapToGrid:!1});T[x]={x:Math.round(P),y:Math.round(L)},o(T)})),j.stopPropagation()},R=j=>{j.stopPropagation(),C.removeEventListener("pointermove",A,{capture:!0}),C.removeEventListener("click",Iz,{capture:!0}),_?l(T):i()};C.addEventListener("pointermove",A,{capture:!0}),C.addEventListener("pointerup",R,{once:!0,capture:!0}),C.addEventListener("click",Iz,{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(T=>T.selected&&T.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(yq,{children:y.jsx(i0,{component:"svg",className:mZe,...r,style:{...r.style,zIndex:c},children:y.jsx("g",{"data-active":e?!0:void 0,className:"group",onContextMenu:Iz,children:n.map((x,k)=>y.jsx("circle",{"data-control-point-index":k,onPointerDownCapture:v,onDoubleClick:w,className:Ge("nodrag nopan",gZe),cx:x.x,cy:x.y},"controlPoints"+p+"#"+k))})})})}const Iz=e=>{e.stopPropagation(),e.preventDefault()},V2=16;function AZe(e){const{enableNavigateTo:r,enableCompareWithLatest:n}=sr(),o=Nt(),{navigateTo:a}=e.data,i=e.source===e.target,l=e.sourceX>e.targetX,[s]=Kx({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+V2;break;case l:c=e.sourceX-V2;break;default:c=e.sourceX+V2;break}return y.jsxs(i0,{...e,children:[y.jsx(l0,{edgeProps:e,svgPath:s}),n&&y.jsx(vte,{edgeProps:e,svgPath:s}),y.jsx(S2,{edgeProps:e,labelPosition:{x:c,y:e.sourceY+(i?0:V2),translate:l?"translate(-100%, 0)":void 0},children:y.jsx(a0,{edgeProps:e,children:r&&a&&y.jsx(_2,{onClick:d=>{d.stopPropagation(),o.navigateTo(a)}})})})]})}const DZe=(e,r)=>tt(e.data.id,r.data.id)&&tt(e.selected??!1,r.selected??!1)&&tt(e.data.modelFqn??null,r.data.modelFqn??null)&&tt(e.data.navigateTo??null,r.data.navigateTo??null)&&tt(e.data.hovered??!1,r.data.hovered??!1)&&(!e.extraButtons&&!r.extraButtons||Ir(e.extraButtons,r.extraButtons)),$te=S.memo(({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),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(bi,{}),onClick:u=>{u.stopPropagation(),a.navigateTo(l,i)}}),o&&d.push({key:"relationships",icon:y.jsx(s0,{}),onClick:u=>{u.stopPropagation(),a.openRelationshipsBrowser(s)}}),d},[n,o,s,l,i,a]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(C2,{...r,buttons:c})},DZe),MZe=({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(bi,{}),onClick:u=>{u.stopPropagation(),a.navigateTo(l,i)}}),o&&s&&d.push({key:"relationships",icon:y.jsx(s0,{}),onClick:u=>{u.stopPropagation(),a.openRelationshipsBrowser(s)}}),d},[n,o,s,l,i]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(C2,{...r,buttons:c})};function Sm({nodeProps:{data:e},position:r="bottom"}){const n=e.drifts;if(!n||n.length===0)return null;const o=r==="top"?Ue.Top:Ue.Bottom;return y.jsx(hr,{className:"likec4-node-drifts",css:{display:"contents","& + .likec4-element-shape":{outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}},children:y.jsx(r9,{isVisible:e.hovered===!0,align:"start",position:o,children:y.jsx(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:n.map(a=>y.jsxs(at,{mt:2,size:"sm",lh:"xs",children:["- ",a]},a))})})})}function NZe({data:{hovered:e=!1},icon:r,onClick:n}){const o=g9(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",jJ({delay:e&&!o}),i2({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(bi,{stroke:2})})})}const zte=e=>{const{enableNavigateTo:r}=sr(),n=Nt(),{navigateTo:o}=e.data;return o&&r?y.jsx(NZe,{onClick:a=>{a.stopPropagation(),n.navigateTo(o,e.id)},...e}):null},Rte=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4,withinPortal:!1});function q2({fqn:e}){const r=Nt();return y.jsx(Rte,{label:"Browse relationships",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),r.openRelationshipsBrowser(e)},children:y.jsx(s0,{stroke:2,style:{width:"72%",height:"72%"}})})})}function H2(e){const{onOpenSource:r}=gm();return r?y.jsx(Rte,{label:"Open source",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),e.elementId?r?.({element:e.elementId}):e.deploymentId&&r?.({deployment:e.deploymentId})},children:y.jsx(dm,{stroke:1.8,style:{width:"70%"}})})}):null}function Tte(){const e=S.useContext(Sy);e||console.error("No LikeC4ModelContext found");const r=e?.$styles??XP.DEFAULT,[n,o]=S.useState(r);return S.useEffect(()=>{o(a=>a.equals(r)?a:r)},[r]),n}const jte=["primary","secondary","muted"];function U2({elementColor:e,elementOpacity:r,onColorPreview:n,isOpacityEditable:o=!1,onChange:a,...i}){const{theme:l}=Tte();return y.jsxs(br,{clickOutsideEvents:["pointerdown","mousedown","click"],position:"right-end",offset:2,withinPortal:!1,...i,children:[y.jsx(kd,{children:y.jsx(Vn,{variant:"subtle",color:"gray",size:"compact-xs",px:3,children:y.jsx(gy,{color:l.colors[e].elements.fill,size:14,withShadow:!0,style:{color:"#fff",cursor:"pointer"}})})}),y.jsxs(Qs,{p:"xs",children:[y.jsx(PZe,{theme:l,elementColor:e,onColorPreview:n,onChange:s=>a({color:s})}),o&&y.jsxs(y.Fragment,{children:[y.jsx(qS,{h:"xs"}),y.jsx(sp,{label:"opacity",labelPosition:"left"}),y.jsx(qS,{h:"xs"}),y.jsx(BZe,{elementOpacity:r,onOpacityChange:s=>{a({opacity:s})}})]})]})]})}function PZe({theme:e,elementColor:r,onColorPreview:n,onChange:o}){const a=l=>s=>{s.stopPropagation(),n(null),r!==l&&o(l)},i=l9(e.colors).filter(l=>!jte.includes(l));return y.jsx(Lo,{gap:2,onMouseLeave:()=>n(null),children:y.jsxs(dp,{openDelay:1e3,closeDelay:300,children:[y.jsx(Js,{maw:120,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:jte.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,withinPortal:!1,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(gy,{color:e.colors[l].elements.fill,size:18,withShadow:!0,onMouseEnter:()=>n(l),onClick:a(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(OW,{style:{width:$e(10),height:$e(10)}})})},l))}),y.jsx(Js,{mt:"sm",maw:110,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:i.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(gy,{color:e.colors[l].elements.fill,size:18,onMouseEnter:()=>n(l),onClick:a(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(OW,{style:{width:$e(10),height:$e(10)}})})},l))})]})})}function BZe({elementOpacity:e=100,onOpacityChange:r}){const[n,o]=S.useState(e);return t6e(()=>{o(e)},[e]),y.jsx(VS,{size:"sm",color:"dark",value:n,onChange:o,onChangeEnd:r})}const IZe=fe({color:"mantine.colors.dimmed",fontSize:"10px",fontWeight:600,maxWidth:"220px",cursor:"default",userSelect:"all",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap"}),OZe=()=>pi(e=>e.xynodes.filter(r=>r.selected).length);function W2({title:e,children:r,nodeProps:n,...o}){const a=OZe(),{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]=g9(c,d);return u?y.jsx(r9,{isVisible:!l,offset:4,...o,children:y.jsx(Af,{className:Ge("nodrag","nopan"),px:5,pb:8,pt:4,radius:"sm",shadow:"xl",onDoubleClickCapture:nn,onPointerDown:nn,onClick:nn,onDoubleClick:nn,withBorder:!0,children:y.jsxs(Lo,{gap:"6px",children:[y.jsx(Se,{px:"4px",children:y.jsx(at,{className:IZe,children:e})}),y.jsx(en,{gap:4,children:r})]})})}):null}function G2(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 LZe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{style:o,modelFqn:a}}=e,{elementColor:i,onColorPreview:l,onChange:s}=G2(a,e),c=o?.opacity??100;return y.jsxs(W2,{nodeProps:e,title:a,align:"start",children:[y.jsx(U2,{elementColor:i,onColorPreview:l,isOpacityEditable:!0,elementOpacity:c,onChange:s,position:"left-start"}),y.jsx(Ate,{elementBorderStyle:o?.border??(c<99?"dashed":"none"),onChange:s}),r&&y.jsx(H2,{elementId:a}),n&&y.jsx(q2,{fqn:a})]})}function FZe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{deploymentFqn:o,style:a,modelFqn:i}}=e,{elementColor:l,onColorPreview:s,onChange:c}=G2(o,e);return y.jsxs(W2,{nodeProps:e,title:o,align:"start",children:[y.jsx(U2,{elementColor:l,onColorPreview:s,isOpacityEditable:!0,elementOpacity:a?.opacity,onChange:c,position:"left-start"}),y.jsx(Ate,{elementBorderStyle:a?.border,onChange:c}),r&&y.jsx(H2,{deploymentId:o}),n&&i&&y.jsx(q2,{fqn:i})]})}function Ate({elementBorderStyle:e="dashed",onChange:r}){const[n,o]=S.useState(e);return S.useEffect(()=>{o(e)},[e]),y.jsx(Se,{children:y.jsx(Of,{size:"xs",fullWidth:!0,withItemsBorders:!1,value:n,onChange: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 VZe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,modelFqn:a}}=e,{elementColor:i,onColorPreview:l,onChange:s}=G2(a,e);return y.jsxs(W2,{nodeProps:e,title:a,align:"start",children:[y.jsx(Dte,{elementShape:o,onChange:s}),y.jsx(U2,{elementColor:i,onColorPreview:l,onChange:s,position:"right-end"}),r&&y.jsx(H2,{elementId:a}),n&&y.jsx(q2,{fqn:a})]})}function qZe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,deploymentFqn:a,modelFqn:i}}=e,{elementColor:l,onColorPreview:s,onChange:c}=G2(a,e);return y.jsxs(W2,{nodeProps:e,title:a,align:"start",children:[y.jsx(Dte,{elementShape:o,onChange:c}),y.jsx(U2,{elementColor:l,onColorPreview:s,onChange:c,position:"right-end"}),r&&y.jsx(H2,{deploymentId:a}),n&&i&&y.jsx(q2,{fqn:i})]})}function Dte({elementShape:e,onChange:r}){return y.jsxs(tn,{openDelay:300,closeDelay:450,floatingStrategy:"fixed",closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],closeOnEscape:!0,closeOnItemClick:!1,position:"top-start",offset:2,styles:{item:{padding:"calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-xs)"}},withinPortal:!1,children:[y.jsx(w3,{children:y.jsx(Vn,{variant:"light",color:"gray",size:"compact-xs",rightSection:y.jsx(tz,{size:12}),children:e})}),y.jsx(vy,{onDoubleClick:nn,onClick:nn,children:n0e.map(n=>y.jsx(by,{fz:12,fw:500,value:n,rightSection:e===n?y.jsx(dQ,{size:12}):void 0,onClick:o=>{o.stopPropagation(),r({shape:n})},children:n},n))})]})}const HZe=[Ue.Top,Ue.Right,Ue.Bottom,Ue.Left],y0=S.memo(()=>y.jsx(y.Fragment,{children:HZe.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 Oz(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(oz,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function Mte(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(AJ,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function UZe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:a}=sr();return y.jsxs(um,{nodeProps:e,children:[a&&y.jsx(Sm,{nodeProps:e}),y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx($te,{...e}),n&&y.jsx(Oz,{...e}),!o&&y.jsx(VZe,{...e}),y.jsx(y0,{})]})}function WZe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:a}=sr();return y.jsxs(um,{nodeProps:e,children:[a&&y.jsx(Sm,{nodeProps:e}),y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(MZe,{...e}),n&&y.jsx(Oz,{...e}),!o&&y.jsx(qZe,{...e}),y.jsx(y0,{})]})}const Lz=fe({outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}),Fz=e=>e.data.drifts&&e.data.drifts.length>0;function GZe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),a=o&&Fz(e);return y.jsxs(c0,{className:a?Lz:void 0,nodeProps:e,children:[o&&y.jsx(Sm,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(zte,{...e}),r&&y.jsx(Mte,{...e}),!n&&y.jsx(LZe,{...e}),y.jsx(y0,{})]})}function YZe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),a=o&&Fz(e);return y.jsxs(c0,{className:a?Lz:void 0,nodeProps:e,children:[o&&y.jsx(Sm,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(zte,{...e}),r&&y.jsx(Mte,{...e}),!n&&y.jsx(FZe,{...e}),y.jsx(y0,{})]})}function XZe(e){const{enableCompareWithLatest:r}=sr(),n=r&&Fz(e);return y.jsxs(c0,{className:n?Lz:void 0,nodeProps:e,children:[r&&y.jsx(Sm,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(y0,{})]})}const ZZe={left:Ue.Left,right:Ue.Right,top:Ue.Top,bottom:Ue.Bottom},KZe=({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:ZZe[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)"}})]}),QZe=e=>Kn(e.modelFqn);function JZe(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(um,{nodeProps:e,children:[n&&y.jsx(Sm,{nodeProps:e}),y.jsx(pm,{...e}),y.jsx(dl,{...e}),QZe(o)&&y.jsxs(y.Fragment,{children:[y.jsx($te,{...e,data:o}),r&&y.jsx(Oz,{id:a,data:o})]})]}),c.map(d=>y.jsx(KZe,{port:d,data:e.data},d.id))]})}function eKe(e){return y.jsx(hr,{"data-likec4-color":e.data.color,css:{width:"100%",height:"100%",border:"default",rounded:"sm",borderWidth:1,"--_color":{base:"var(--likec4-palette-stroke)",_dark:"[color-mix(in oklab, var(--likec4-palette-hiContrast) 40%, var(--likec4-palette-fill))]"},borderColor:"[var(--_color)/30]",backgroundColor:"var(--likec4-palette-fill)/15",pointerEvents:"none",paddingLeft:"2",paddingTop:"0.5",fontSize:"xs",fontWeight:"bold",letterSpacing:".75px",color:"[var(--_color)/75]"},children:"PARALLEL"})}const jp={ElementNode:UZe,DeploymentNode:WZe,CompoundElementNode:GZe,CompoundDeploymentNode:YZe,ViewGroupNode:XZe,SequenceActorNode:JZe,SequenceParallelArea:eKe},Nte={RelationshipEdge:Cte,SequenceStepEdge:AZe};var Pte=Symbol.for("immer-nothing"),Bte=Symbol.for("immer-draftable"),qo=Symbol.for("immer-state");function hl(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Aa=Object,Em=Aa.getPrototypeOf,Y2="constructor",X2="prototype",Vz="configurable",Z2="enumerable",K2="writable",v0="value",Id=e=>!!e&&!!e[qo];function pc(e){return e?Ote(e)||J2(e)||!!e[Bte]||!!e[Y2]?.[Bte]||e4(e)||t4(e):!1}var tKe=Aa[X2][Y2].toString(),Ite=new WeakMap;function Ote(e){if(!e||!Hz(e))return!1;const r=Em(e);if(r===null||r===Aa[X2])return!0;const n=Aa.hasOwnProperty.call(r,Y2)&&r[Y2];if(n===Object)return!0;if(!Cm(n))return!1;let o=Ite.get(n);return o===void 0&&(o=Function.toString.call(n),Ite.set(n,o)),o===tKe}function b0(e,r,n=!0){x0(e)===0?(n?Reflect.ownKeys(e):Aa.keys(e)).forEach(o=>{r(o,e[o],e)}):e.forEach((o,a)=>r(a,o,e))}function x0(e){const r=e[qo];return r?r.type_:J2(e)?1:e4(e)?2:t4(e)?3:0}var Lte=(e,r,n=x0(e))=>n===2?e.has(r):Aa[X2].hasOwnProperty.call(e,r),qz=(e,r,n=x0(e))=>n===2?e.get(r):e[r],Q2=(e,r,n,o=x0(e))=>{o===2?e.set(r,n):o===3?e.add(n):e[r]=n};function rKe(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}var J2=Array.isArray,e4=e=>e instanceof Map,t4=e=>e instanceof Set,Hz=e=>typeof e=="object",Cm=e=>typeof e=="function",Uz=e=>typeof e=="boolean",hc=e=>e.copy_||e.base_,Wz=e=>e.modified_?e.copy_:e.base_;function Gz(e,r){if(e4(e))return new Map(e);if(t4(e))return new Set(e);if(J2(e))return Array[X2].slice.call(e);const n=Ote(e);if(r===!0||r==="class_only"&&!n){const o=Aa.getOwnPropertyDescriptors(e);delete o[qo];let a=Reflect.ownKeys(o);for(let i=0;i1&&Aa.defineProperties(e,{set:r4,add:r4,clear:r4,delete:r4}),Aa.freeze(e),r&&b0(e,(n,o)=>{Yz(o,!0)},!1)),e}function nKe(){hl(2)}var r4={[v0]:nKe};function n4(e){return e===null||!Hz(e)?!0:Aa.isFrozen(e)}var o4="MapSet",Xz="Patches",Fte={};function $m(e){const r=Fte[e];return r||hl(0,e),r}var oKe=e=>!!Fte[e],w0,Vte=()=>w0,aKe=(e,r)=>({drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:oKe(o4)?$m(o4):void 0});function qte(e,r){r&&(e.patchPlugin_=$m(Xz),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function Zz(e){Kz(e),e.drafts_.forEach(iKe),e.drafts_=null}function Kz(e){e===w0&&(w0=e.parent_)}var Hte=e=>w0=aKe(w0,e);function iKe(e){const r=e[qo];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function Ute(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];if(e!==void 0&&e!==n){n[qo].modified_&&(Zz(r),hl(4)),pc(e)&&(e=Wte(r,e));const{patchPlugin_:o}=r;o&&o.generateReplacementPatches_(n[qo].base_,e,r)}else e=Wte(r,n);return lKe(r,e,!0),Zz(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==Pte?e:void 0}function Wte(e,r){if(n4(r))return r;const n=r[qo];if(!n)return Qz(r,e.handledSet_,e);if(!a4(n,e))return r;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:o}=n;if(o)for(;o.length>0;)o.pop()(e);Xte(n,e)}return n.copy_}function lKe(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Yz(r,n)}function Gte(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var a4=(e,r)=>e.scope_===r,sKe=[];function Yte(e,r,n,o){const a=hc(e),i=e.type_;if(o!==void 0&&qz(a,o,i)===r){Q2(a,o,n,i);return}if(!e.draftLocations_){const s=e.draftLocations_=new Map;b0(a,(c,d)=>{if(Id(d)){const u=s.get(d)||[];u.push(c),s.set(d,u)}})}const l=e.draftLocations_.get(r)??sKe;for(const s of l)Q2(a,s,n,i)}function cKe(e,r,n){e.callbacks_.push(function(o){const a=r;if(!a||!a4(a,o))return;o.mapSetPlugin_?.fixSetContents(a);const i=Wz(a);Yte(e,a.draft_??a,i,n),Xte(a,o)})}function Xte(e,r){if(e.modified_&&!e.finalized_&&(e.type_===3||(e.assigned_?.size??0)>0)){const{patchPlugin_:n}=r;if(n){const o=n.getPath(e);o&&n.generatePatches_(e,o,r)}Gte(e)}}function dKe(e,r,n){const{scope_:o}=e;if(Id(n)){const a=n[qo];a4(a,o)&&a.callbacks_.push(function(){i4(e);const i=Wz(a);Yte(e,n,i,r)})}else pc(n)&&e.callbacks_.push(function(){const a=hc(e);qz(a,r,e.type_)===n&&o.drafts_.length>1&&(e.assigned_.get(r)??!1)===!0&&e.copy_&&Qz(qz(e.copy_,r,e.type_),o.handledSet_,o)})}function Qz(e,r,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Id(e)||r.has(e)||!pc(e)||n4(e)||(r.add(e),b0(e,(o,a)=>{if(Id(a)){const i=a[qo];if(a4(i,n)){const l=Wz(i);Q2(e,o,l,e.type_),Gte(i)}}else pc(a)&&Qz(a,r,n)})),e}function uKe(e,r){const n=J2(e),o={type_:n?1:0,scope_:r?r.scope_:Vte(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let a=o,i=Jz;n&&(a=[o],i=k0);const{revoke:l,proxy:s}=Proxy.revocable(a,i);return o.draft_=s,o.revoke_=l,[s,o]}var Jz={get(e,r){if(r===qo)return e;const n=hc(e);if(!Lte(n,r,e.type_))return pKe(e,n,r);const o=n[r];if(e.finalized_||!pc(o))return o;if(o===eR(e.base_,r)){i4(e);const a=e.type_===1?+r:r,i=rR(e.scope_,o,e,a);return e.copy_[a]=i}return o},has(e,r){return r in hc(e)},ownKeys(e){return Reflect.ownKeys(hc(e))},set(e,r,n){const o=Zte(hc(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const a=eR(hc(e),r),i=a?.[qo];if(i&&i.base_===n)return e.copy_[r]=n,e.assigned_.set(r,!1),!0;if(rKe(n,a)&&(n!==void 0||Lte(e.base_,r,e.type_)))return!0;i4(e),tR(e)}return e.copy_[r]===n&&(n!==void 0||r in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[r])||(e.copy_[r]=n,e.assigned_.set(r,!0),dKe(e,r,n)),!0},deleteProperty(e,r){return i4(e),eR(e.base_,r)!==void 0||r in e.base_?(e.assigned_.set(r,!1),tR(e)):e.assigned_.delete(r),e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=hc(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{[K2]:!0,[Vz]:e.type_!==1||r!=="length",[Z2]:o[Z2],[v0]:n[r]}},defineProperty(){hl(11)},getPrototypeOf(e){return Em(e.base_)},setPrototypeOf(){hl(12)}},k0={};b0(Jz,(e,r)=>{k0[e]=function(){const n=arguments;return n[0]=n[0][0],r.apply(this,n)}}),k0.deleteProperty=function(e,r){return k0.set.call(this,e,r,void 0)},k0.set=function(e,r,n){return Jz.set.call(this,e[0],r,n,e[0])};function eR(e,r){const n=e[qo];return(n?hc(n):e)[r]}function pKe(e,r,n){const o=Zte(r,n);return o?v0 in o?o[v0]:o.get?.call(e.draft_):void 0}function Zte(e,r){if(!(r in e))return;let n=Em(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=Em(n)}}function tR(e){e.modified_||(e.modified_=!0,e.parent_&&tR(e.parent_))}function i4(e){e.copy_||(e.assigned_=new Map,e.copy_=Gz(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var hKe=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,o,a)=>{if(Cm(n)&&!Cm(o)){const l=o;o=n;const s=this;return function(c=l,...d){return s.produce(c,u=>o.call(this,u,...d))}}Cm(o)||hl(6),a!==void 0&&!Cm(a)&&hl(7);let i;if(pc(n)){const l=Hte(this),s=rR(l,n,void 0);let c=!0;try{i=o(s),c=!1}finally{c?Zz(l):Kz(l)}return qte(l,a),Ute(i,l)}else if(!n||!Hz(n)){if(i=o(n),i===void 0&&(i=n),i===Pte&&(i=void 0),this.autoFreeze_&&Yz(i,!0),a){const l=[],s=[];$m(Xz).generateReplacementPatches_(n,i,{patches_:l,inversePatches_:s}),a(l,s)}return i}else hl(1,n)},this.produceWithPatches=(n,o)=>{if(Cm(n))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]},Uz(r?.autoFreeze)&&this.setAutoFreeze(r.autoFreeze),Uz(r?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),Uz(r?.useStrictIteration)&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){pc(r)||hl(8),Id(r)&&(r=fKe(r));const n=Hte(this),o=rR(n,r,void 0);return o[qo].isManual_=!0,Kz(n),o}finishDraft(r,n){const o=r&&r[qo];(!o||!o.isManual_)&&hl(9);const{scope_:a}=o;return qte(a,n),Ute(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=$m(Xz).applyPatches_;return Id(r)?a(r,n):this.produce(r,i=>a(i,n))}};function rR(e,r,n,o){const[a,i]=e4(r)?$m(o4).proxyMap_(r,n):t4(r)?$m(o4).proxySet_(r,n):uKe(r,n);return(n?.scope_??Vte()).drafts_.push(a),i.callbacks_=n?.callbacks_??[],i.key_=o,n&&o!==void 0?cKe(n,i,o):i.callbacks_.push(function(l){l.mapSetPlugin_?.fixSetContents(i);const{patchPlugin_:s}=l;i.modified_&&s&&s.generatePatches_(i,[],l)}),a}function fKe(e){return Id(e)||hl(10,e),Kte(e)}function Kte(e){if(!pc(e)||n4(e))return e;const r=e[qo];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=Gz(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=Gz(e,!0);return b0(n,(a,i)=>{Q2(n,a,Kte(i))},o),r&&(r.finalized_=!1),n}var nR=new hKe,is=nR.produce,Qte=nR.setAutoFreeze.bind(nR),_0=e=>e;class zm{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 oR extends zm{constructor(r,n=null){super(r,n),this.parent=n}children=[]}class mKe extends zm{constructor(r,n=null){super(r,n),this.parent=n}}function gKe(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:is(a,s=>{s.data.points=e.data.points,s.data.controlPoints=n,s.data.labelBBox=e.data.labelBBox})}:{id:e.id,type:"replace",item:is(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 yKe(e,r,n,o){const a=e.data.controlPoints??c2(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:is(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=ti(k/c**2,{min:-1,max:1});return x.add(g.multiply(C)).round().toObject()};return{id:e.id,type:"replace",item:is(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 Jte(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 T of $.values()){z.add(T.id);for(const A of s.get(T.id))z.add(A)}return z});if(xn(r,2)){const _=Jr(r,Mq($=>[...s.get($)]),yw(),$=>e$e(r,$));He(xn(_,1),"All editing nodes are nested within each other"),r=_}const c=new Set(r.flatMap(_=>l.get(_))),d=[...o.values()].flatMap(_=>_.parentId?[]:{xynode:_,parent:null});for(;d.length>0;){const{xynode:_,parent:$}=d.shift();if(!r.includes(_.id)&&c.has(_.id)){const z=new oR(_,$);i.set(_.id,z),n.get(_.id)?.forEach(T=>{d.push({xynode:T,parent:z})});continue}i.set(_.id,new mKe(_,$))}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 T=i.get(_.source)??i.get(_.target)??f(_.source)??f(_.target);T&&p.set(_,gKe(_,T));continue}if($!==z){const T=f($?_.source:_.target);if(!T)continue;const[A,R]=Jr([_.source,_.target],un(P=>mt(o.get(P),`Node ${P} not found`)),un(r$)),[j,I]=$?[A,R]:[R,A];p.set(_,yKe(_,T,j,I));continue}}function v(_){for(const $ of _){if(!($ instanceof oR))continue;v($.children);const z={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};for(const T of $.children)z.minX=Math.min(z.minX,T.minX),z.minY=Math.min(z.minY,T.minY),z.maxX=Math.max(z.maxX,T.maxX),z.maxY=Math.max(z.maxY,T.maxY);$.minX=z.minX-zm.LeftPadding,$.minY=z.minY-zm.TopPadding,$.maxX=z.maxX+zm.RightPadding,$.maxY=z.maxY+zm.BottomPadding}}const w=[...p.values()];function x(){v(u);const _=u.reduce((R,j)=>(R.push({id:j.id,type:"position",dragging:!1,position:j.position,positionAbsolute:j.positionAbsolute}),j instanceof oR&&R.push({id:j.id,type:"dimensions",setAttributes:!0,dimensions:j.dimensions}),R),[]),{edgeLookup:$,triggerNodeChanges:z,triggerEdgeChanges:T}=e.getState();z(_);const A=w.map(R=>R($));A.length>0&&T(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 vKe(){const e=JC(),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()),ep(s=>s.dragging===!0||s.id===a.id||s.selected===!0),un(s=>s.id));xn(l,1)&&(n.current=Jte(e,l))},onNodeDrag:o=>{n.current?.onMove()},onNodeDragStop:o=>{const a=n.current?YO(n.current.rects.values(),i=>i.isMoved):!1;r.stopEditing(a),n.current=void 0}}),[e,r])}const bKe={relationship:Nte.RelationshipEdge,"seq-step":Nte.SequenceStepEdge},Od={element:sc(jp.ElementNode),deployment:sc(jp.DeploymentNode),"compound-element":sc(jp.CompoundElementNode),"compound-deployment":sc(jp.CompoundDeploymentNode),"view-group":sc(jp.ViewGroupNode),"seq-actor":sc(jp.SequenceActorNode),"seq-parallel":sc(jp.SequenceParallelArea)};function xKe(e){return!e||tp(e)?Od:{element:e.element??Od.element,deployment:e.deployment??Od.deployment,"compound-element":e.compoundElement??Od["compound-element"],"compound-deployment":e.compoundDeployment??Od["compound-deployment"],"view-group":e.viewGroup??Od["view-group"],"seq-actor":e.seqActor??Od["seq-actor"],"seq-parallel":e.seqParallel??Od["seq-parallel"]}}const wKe=({context:e,children:r})=>{const{enableReadOnly:n}=O2(e),o=n||r.editor?.getSnapshot().context.editing!=="edge";return{enableReadOnly:n,initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges,pannable:e.pannable,zoomable:e.zoomable,nodesDraggable:!n&&e.nodesDraggable,nodesSelectable:e.nodesSelectable&&o,fitViewPadding:e.fitViewPadding,enableFitView:e.features.enableFitView,...!e.features.enableFitView&&{viewport:{x:-e.view.bounds.x,y:-e.view.bounds.y,zoom:1}}}},kKe=(e,r)=>e.enableReadOnly===r.enableReadOnly&&e.initialized===r.initialized&&e.pannable===r.pannable&&e.zoomable===r.zoomable&&e.nodesDraggable===r.nodesDraggable&&e.nodesSelectable===r.nodesSelectable&&e.enableFitView===r.enableFitView&&Ir(e.fitViewPadding,r.fitViewPadding)&&Ir(e.nodes,r.nodes)&&Ir(e.edges,r.edges)&&Ir(e.viewport??null,r.viewport??null);function _Ke({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}=wE(wKe,kKe);const{onNodeContextMenu:g,onCanvasContextMenu:v,onEdgeContextMenu:w,onNodeClick:x,onEdgeClick:k,onCanvasClick:C,onCanvasDblClick:_}=gm(),$=pNe(),z=vKe(),T=fNe(),A=CH(()=>{T.set(!0)},$?120:400),R=bf(()=>{A.clear(),T.set(!1)},$?350:200),j=it(H=>{H&&(T.get()||A.start(),R())}),I=it((H,M)=>{A.clear(),a.send({type:"xyflow.viewportMoved",viewport:M,manually:!!H})}),P=it(()=>{a.send({type:"xyflow.resized"})}),L=SL(()=>xKe(o),[o],mQ);return $p(()=>{console.warn("renderNodes changed - this might degrade performance")},[L]),y.jsx(s$,{nodes:s,edges:c,className:Ge(l?"initialized":"not-initialized"),nodeTypes:L,edgeTypes:bKe,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:j,onMoveEnd:I,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 SKe(e,r){try{return Qte(!1),EKe(e,r)}finally{Qte(!0)}}const ere=e=>ty(e.parent);function EKe(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,$Ke({latest:u,manual:p})]:(o.add(u.id),[u.id,aR(u)])}));if(o.size===l.size)return is(r,u=>{u._layout="manual",u.nodes=_0([...l.values()]),u.edges=_0(r.edges.map(aR)),delete u.drifts});n.size>0&&CKe(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 zKe({latest:u,manual:g});if(i(u))return aR(u);const v=l.get(u.source),w=l.get(u.target);return RKe(u,v,w)}),d=ko.merge(...s.filter(ere));return is(r,u=>{u._layout="manual",u.nodes=_0(s),u.edges=_0(c),u.bounds=d,delete u.drifts})}const Rm={Left:42,Right:42,Top:60,Bottom:42};function CKe(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-Rm.Left,o.y=i.y-Rm.Top,o.width=i.width+Rm.Left+Rm.Right,o.height=i.height+Rm.Top+Rm.Bottom,o}for(const n of e.values())!ere(n)||n.children.length===0||r(n.id)}function $Ke({latest:e,manual:r}){return He(r.id===e.id,"Node IDs do not match"),is(e,n=>{n.x=r.x,n.y=r.y,n.drifts=null})}function zKe(e){const{manual:r,latest:n}=e;return is(n,o=>{r.controlPoints?o.controlPoints=r.controlPoints:delete o.controlPoints,o.points=_0(r.points),r.labelBBox&&(o.labelBBox=n.labelBBox??r.labelBBox,o.labelBBox.x=r.labelBBox.x,o.labelBBox.y=r.labelBBox.y),o.drifts=null})}function aR(e){if("drifts"in e&&e.drifts!==null){const r={...e};return r.drifts=null,r}return e}function RKe(e,r,n){const o=TKe(r,n),a=o[0];return is(e,i=>{i.controlPoints=o,e.labelBBox&&(i.labelBBox.x=a.x,i.labelBBox.y=a.y),delete i.drifts})}function tre(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 TKe(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=tre(e,n,a),l=tre(r,o,a.multiply(-1)).subtract(i);return[i.add(l.multiply(.4)).round().toObject(),i.add(l.multiply(.6)).round().toObject()]}const jKe=S.createContext(null);function rre(){return S.useContext(jKe)}function AKe(e){const r=rre(),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:SKe(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 Aee.provide({actors:{applyLatest:Ry(n),executeChange:Ry(o)}})}function nre(e){return{ref:e,get actor(){return e.current},overlays(){return mt(e.current.getSnapshot().children.overlays,"Overlays actor not found")},send:r=>e.current.send(r),navigateTo:(r,n,o)=>{e.current.send({type:"navigate.to",viewId:r,...n&&{fromNode:n},...o&&{focusOnElement:o}})},navigate:r=>{e.current.send({type:`navigate.${r}`})},fitDiagram:(r=350)=>{e.current.send({type:"xyflow.fitDiagram",duration:r})},openRelationshipsBrowser:r=>{e.current.send({type:"open.relationshipsBrowser",fqn:r})},openSource:r=>{e.current.send({type:"open.source",...r})},openElementDetails:(r,n)=>{e.current.send({type:"open.elementDetails",fqn:r,fromNode:n})},openRelationshipDetails:(...r)=>{r.length===1?e.current.send({type:"open.relationshipDetails",params:{edgeId:r[0]}}):e.current.send({type:"open.relationshipDetails",params:{source:r[0],target:r[1]}})},updateNodeData:(r,n)=>{e.current.send({type:"update.nodeData",nodeId:r,data:n})},updateEdgeData:(r,n)=>{e.current.send({type:"update.edgeData",edgeId:r,data:n})},startEditing:r=>{const n=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=gee(n.xynodes,r);o&&e.current.send({type:"focus.node",nodeId:o.id,autoUnfocus:!0})},get currentView(){return e.current.getSnapshot().context.view},getContext:()=>e.current.getSnapshot().context,findDiagramNode:r=>ym(e.current.getSnapshot().context,r),findEdge:r=>e.current.getSnapshot().context.xyedges.find(n=>n.data.id===r)??null,findDiagramEdge:r=>yz(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 iR(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=B2(e.xynodes,r.xynodes),i=o?Ez(e.xyedges,r.xyedges):r.xyedges;return{xynodes:a,xyedges:i,view:n}}function DKe(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 MKe({context:e,event:r}){return ht(r,"update.nodeData"),{xynodes:e.xynodes.map(n=>{if(n.id!==r.nodeId)return n;const o=Fq(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function NKe({context:e,event:r}){return ht(r,"update.edgeData"),{xyedges:e.xyedges.map(n=>{if(n.id!==r.edgeId)return n;const o=Fq(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function ore(e,r,n){const o=_o(e),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 are(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(n$(n)),i=Qr(n$(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=ore(n,a,l),c=ore(o,i,l.multiply(-1)).subtract(s);return[s.add(c.multiply(.4)).round().toObject(),s.add(c.multiply(.6)).round().toObject()]}function PKe(e){const{view:r}=e,n=[],o=[],a=new Map,i=x8.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=Ou(e.where);l=p=>u({...Hq(p,["tags","kind"]),..."source"in p?{source:c(p.source)}:p,..."target"in p?{target:c(p.target)}:p})}catch(u){console.error("Error in where filter:",u)}const s="",c=u=>mt(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==w1;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?lc.Compound:lc.Element,style:{width:u.width,height:u.height},initialWidth:u.width,initialHeight:u.height,hidden:u.kind!==w1&&!l(u),...p&&{parentId:s+p.id}},w={viewId:r.id,id:u.id,title:u.title,color:u.color,shape:u.shape,style:u.style,depth:u.depth??0,icon:u.icon??"none",tags:u.tags??null,x:u.x,y:u.y,drifts:u.drifts??null},x={viewId:r.id,id:u.id,title:u.title,technology:u.technology??null,description:u.description??null,height:u.height,width:u.width,level:u.level,color:u.color,shape:u.shape,style:u.style,icon:u.icon??null,tags:u.tags,x:u.x,y:u.y,isMultiple:u.style?.multiple??!1,drifts:u.drifts??null};if(u.kind===w1){n.push({...v,type:"view-group",data:{isViewGroup:!0,...w},dragHandle:".likec4-compound-title-container"});continue}const k=u.modelRef??null,C=u.deploymentRef??null;if(!k&&!C)throw console.error("Invalid node",u),new Error("Element should have either modelRef or deploymentRef");const _={navigateTo:u.navigateTo??null};switch(!0){case(f&&!!C):{n.push({...v,type:"compound-deployment",data:{...w,..._,deploymentFqn:C,modelFqn:k}});break}case f:{He(!!k,"ModelRef expected"),n.push({...v,type:"compound-element",data:{...w,..._,modelFqn:k}});break}case!!C:{n.push({...v,type:"deployment",data:{...x,..._,deploymentFqn:C,modelFqn:k}});break}default:He(!!k,"ModelRef expected"),n.push({...v,type:"element",data:{...x,..._,modelFqn:k}})}}for(const u of r.edges){const p=u.source,f=u.target,g=s+u.id;if(!xn(u.points,2)){console.error("edge should have at least 2 points",u);continue}o.push({id:g,type:"relationship",source:s+p,target:s+f,zIndex:lc.Edge,hidden:!l(u),deletable:!1,data:{id:u.id,label:u.label,technology:u.technology,notes:u.notes??null,navigateTo:u.navigateTo,controlPoints:u.controlPoints??null,labelBBox:u.labelBBox??null,labelXY:null,points:u.points,color:u.color??"gray",line:u.line??"dashed",dir:u.dir??"forward",head:u.head??"normal",tail:u.tail??"none",astPath:u.astPath,drifts:u.drifts??null},interactionWidth:20})}return{bounds:r.bounds,xynodes:n,xyedges:o}}const ire={parallel:1,actor:10},l4={default:"gray",active:"amber"};function BKe(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(IKe(d,c(d.origin),e));for(const d of a)l.push(OKe(d,e));for(const d of r)l.push(LKe(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(FKe(d,u))}return{bounds:i,xynodes:l,xyedges:s}}function IKe({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 OKe({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:l4.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:ire.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 LKe({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:ire.actor,position:{x:r,y:n},width:o,initialWidth:o,height:a,initialHeight:a}}function FKe({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 lre({dynamicViewVariant:e,...r}){const n=r.view,o=n._type==="dynamic",{bounds:a,xynodes:i,xyedges:l}=o&&e==="sequence"?BKe(n):PKe(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 sre{}class Tm extends sre{constructor(r,n,o){super(),this.getEdgePosition=r,this.computePosition=n,this.propertyToEdit=o}alignTo;computeLayout(r){this.alignTo=this.getEdgePosition(r)}applyPosition(r){return{[this.propertyToEdit]:this.computePosition(this.alignTo,r)}}}class VKe extends sre{layout=new Map;axisPreset;get primaryAxisCoord(){return this.axisPreset.primaryAxisCoord}get secondaryAxisCoord(){return this.axisPreset.secondaryAxisCoord}get primaryAxisDimension(){return this.axisPreset.primaryAxisDimension}get secondaryAxisDimension(){return this.axisPreset.secondaryAxisDimension}constructor(r){super(),this.axisPreset=r==="Column"?{primaryAxisDimension:"width",secondaryAxisDimension:"height",primaryAxisCoord:"x",secondaryAxisCoord:"y"}:{primaryAxisDimension:"height",secondaryAxisDimension:"width",primaryAxisCoord:"y",secondaryAxisCoord:"x"}}applyPosition(r){return this.layout?.get(r.id)??{}}computeLayout(r){const n=Jr(r,gw(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}`),[Hq(i,["x","y"]),a]}),un(([o,a])=>Math.abs(o[this.secondaryAxisCoord]-a[this.secondaryAxisCoord])),mw((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 Tm(r=>Math.min(...r.map(n=>n.y)),(r,n)=>Math.floor(r),"y");case"Right":return new Tm(r=>Math.max(...r.map(n=>n.x+n.width)),(r,n)=>Math.floor(r-n.width),"x");case"Bottom":return new Tm(r=>Math.max(...r.map(n=>n.y+n.height)),(r,n)=>Math.floor(r-n.height),"y");case"Center":return new Tm(r=>Math.min(...r.map(n=>n.x+n.width/2)),(r,n)=>Math.floor(r-n.width/2),"x");case"Middle":return new Tm(r=>Math.min(...r.map(n=>n.y+n.height/2)),(r,n)=>Math.floor(r-n.height/2),"y")}}function cre(e){const{width:r,height:n}=_o(e);return{...e.internals.positionAbsolute,id:e.id,width:r,height:n}}function HKe(e){switch(e){case"Left":case"Right":case"Top":case"Bottom":case"Center":case"Middle":return qKe(e);case"Column":case"Row":return new VKe(e);default:Qo(e)}}const S0=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})})}),s4=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=Ws(a,l,s,xi,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})})}),E0=()=>Qe.createAction(({context:e})=>{const r=!!e.activeWalkthrough&&e.dynamicViewVariant==="sequence",{bounds:n,duration:o=450}=r?nGe({context:e}):tGe({context:e}),{width:a,height:i,panZoom:l,transform:s}=mt(e.xystore).getState(),c=Math.max(1,s[2]),d=Ws(n,a,i,xi,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})})}),lR=30,dre=e=>{const{delay:r=lR,...n}=e??{};return Qe.raise({type:"xyflow.setViewport",...n},{id:"fitDiagram",delay:r})},fc=()=>Qe.cancel("fitDiagram"),c4=e=>{const{delay:r=lR,...n}=e??{};return Qe.raise({type:"xyflow.fitDiagram",...n},{id:"fitDiagram",delay:r})},UKe=e=>Qe.raise(({context:r})=>({type:"update.view",view:r.view}),{delay:lR}),sR=e=>Qe.assign(({context:r})=>({viewportBefore:{wasChangedManually:r.viewportChangedManually,value:{...r.viewport}}})),cR=e=>Qe.enqueueActions(({enqueue:r,context:{viewportBefore:n}})=>{r(fc()),n?(r.assign({viewportChangedManually:n.wasChangedManually,viewportBefore:null}),e&&e.delay===0?r(S0({viewport:n.value,...e})):r(dre({viewport:n.value,...e}))):e&&e.delay===0?r(s4({...e})):r(c4({...e}))}),ure=()=>Qe.assign(({context:e})=>({toggledFeatures:{...e.toggledFeatures,enableCompareWithLatest:!1},viewportOnAutoLayout:null,viewportOnManualLayout:null})),WKe=()=>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=are(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})}}),Ap=()=>Qe.assign(({context:e,event:r})=>{ht(r,"xyflow.nodeClick");const{lastClickedNode:n}=e;return!n||n.id!==r.node.id?{lastClickedNode:{id:r.node.id,clicks:1,timestamp:Date.now()}}:{lastClickedNode:{id:n.id,clicks:n.clicks+1,timestamp:Date.now()}}}),d4=()=>Qe.assign(({event:e})=>{let r,n=!1;switch(e.type){case"xyflow.nodeClick":r=e.node.data.id;break;case"focus.node":r=e.nodeId,n=e.autoUnfocus===!0;break;default:throw new Error(`Unexpected event type: ${e.type} in action 'assign: focusedNode'`)}return{focusedNode:r,autoUnfocusTimer:n}}),jm=()=>Qe.assign(()=>({lastClickedNode:null})),pre=()=>Qe.assign(({event:e})=>(ht(e,"update.features"),{features:{...e.features}})),GKe=()=>Qe.assign(({event:e})=>(ht(e,"update.inputs"),{...e.inputs})),hre=e=>Qe.assign(({context:r,event:n})=>{let o;ht(n,"update.view"),o="xynodes"in n?n:lre({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where});const a=iR(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}),C0=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=DKe(e);n?r.assign(n):r.raise({type:"key.esc"})}),u4=()=>Qe.assign(({context:e})=>({xynodes:e.xynodes.map(tr.setDimmed(!1)),xyedges:e.xyedges.map(tr.setData({dimmed:!1,active:!1}))})),YKe=()=>Qe.assign(({event:e})=>(ht(e,"switch.dynamicViewVariant"),{dynamicViewVariant:e.variant})),XKe=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)}}),ZKe=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)}}),dR=()=>Qe.emit(()=>({type:"paneClick"})),fre=e=>Qe.emit(({event:r})=>e?{type:"openSource",params:e}:(ht(r,"open.source"),{type:"openSource",params:r})),KKe=()=>Qe.emit(({context:e})=>(He(e.xyflow,"XYFlow instance not found"),{type:"initialized",instance:e.xyflow})),Dp=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),{type:"nodeClick",node:mt(ym(e,r.node.id),`Node ${r.node.id} not found in diagram`),xynode:r.node})),uR=e=>Qe.emit(({context:r})=>({type:"navigateTo",viewId:e?.viewId??mt(r.lastOnNavigate,"Invalid state, lastOnNavigate is null").toView})),pR=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.edgeClick"),{type:"edgeClick",edge:mt(yz(e,r.edge.id),`Edge ${r.edge.id} not found in diagram`),xyedge:r.edge})),mre=e=>Qe.enqueueActions(({event:r,enqueue:n})=>{let o=e;o||(ht(r,"trigger.change"),o=r.change),n.assign({viewportChangedManually:!0}),n.sendTo(Rr.editorActor,{type:"change",change:o})}),QKe=()=>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})}),JKe=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=Jte(a,s),d=HKe(o),u=s.map(p=>({node:mt(i.get(p)),rect:mt(c.rects.get(p))}));d.computeLayout(u.map(({node:p})=>cre(p)));for(const{rect:p,node:f}of u)p.positionAbsolute={...p.positionAbsolute,...d.applyPosition(cre(f))};c.updateXYFlow()}),eQe=()=>Qe.assign(({context:e})=>{const{nodeLookup:r}=e.xystore.getState();return{xyedges:e.xyedges.map(n=>{if(!n.data.controlPoints)return n;const o=are(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}}})}}),tQe=()=>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=ym(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}}),rQe=()=>Qe.assign(({context:e,event:r})=>(ht(r,"tag.highlight"),{xynodes:e.xynodes.map(n=>n.data.tags?.includes(r.tag)?tr.setDimmed(n,!1):tr.setDimmed(n,!0))})),nQe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"toggle.feature");const n=e.toggledFeatures[`enable${r.feature}`]??e.features[`enable${r.feature}`],o=r.forceValue??!n;return{toggledFeatures:{...e.toggledFeatures,[`enable${r.feature}`]:o}}}),oQe=()=>Qe.sendTo(Rr.searchActor,{type:"close"}),aQe=()=>Qe.sendTo(Rr.overlaysActor,{type:"close.all"}),gre=()=>Qe.enqueueActions(({enqueue:e,system:r})=>{const n=Rr(r).editorActorRef;n&&e.stopChild(n)}),hR=()=>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})}),fR=(e="node")=>Qe.sendTo(Rr.editorActor,{type:"edit.start",subject:e}),iQe=()=>Qe.sendTo(Rr.editorActor,{type:"synced"}),mR=(e=!0)=>Qe.sendTo(Rr.editorActor,{type:"edit.finish",wasChanged:e}),yre=()=>Qe.sendTo(Rr.editorActor,{type:"cancel"}),vre=e=>"modelFqn"in e.data&&Kn(e.data.modelFqn),gR=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let a=null,i,l;switch(!0){case n.type==="xyflow.nodeClick":{if(!vre(n.node)){console.warn("No modelFqn in clicked node data");return}l=n.node.data.modelFqn,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||!vre(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=Zu(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}})}),yR=()=>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(gR()):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:Qo(r)}}),p4=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=e.focusedNode??e.lastClickedNode?.id;if(!n||!e.features.enableVscode)return;const o=ym(e,n);o&&(o.deploymentRef?r.raise({type:"open.source",deployment:o.deploymentRef}):o.modelRef&&r.raise({type:"open.source",element:o.modelRef}))}),bre=()=>Qe.enqueueActions(({enqueue:e,check:r,system:n})=>{const o=r("enabled: Overlays"),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"))}),xre=()=>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"))}),lQe=()=>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})}),sQe=()=>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})}),wre=()=>Qe.spawnChild("hotkeyActorLogic",{id:"hotkey"}),kre=()=>Qe.stopChild("hotkey"),_re=3e3,cQe=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{e.autoUnfocusTimer&&_re>0&&r.raise({type:"focus.autoUnfocus"},{delay:_re,id:"autoUnfocusTimer"})}),dQe=()=>Qe.cancel("autoUnfocusTimer"),uQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,["navigate.to","navigate.back","navigate.forward"]);const{view:o,focusedNode: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(uR());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(uR({viewId:g.viewId}));break}case"navigate.forward":{He(uQe.enqueueActions(({enqueue:e,event:r,context:n})=>{if(r.type!=="update.view"){console.warn(`Ignoring unexpected event type: ${r.type} in action 'update.view'`);return}const o=r.view;if(o.id!==n.view.id){console.warn("updateView called for another view - ignoring",{event:r});return}if(e(hre()),r.source==="editor")return;e(iQe());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(S0({viewport:n.viewportOnAutoLayout,duration:0}));return}if(o._layout==="manual"&&n.viewportOnManualLayout){e(S0({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(fc()),e(c4({bounds:r.view.bounds})))});var Ho={},bR={},Sre;function Ere(){if(Sre)return bR;Sre=1;var e=I2();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 bR.assign=o,bR}var mc={},Cre;function pQe(){if(Cre)return mc;Cre=1;var e=I2(),r=Ere();function n(k,C,_,$,{event:z}){const T=typeof z=="function"?z(_,$):z;return[C,{event:T},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:T,id:A,delay:R},j){const I=C.machine.implementations.delays;if(typeof T=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${T}" }) instead`);const P=typeof T=="function"?T(_,$):T;let L;if(typeof R=="string"){const V=I&&I[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=j.deferredActorIds?.includes(H)?H:C.children[H],!M)throw new Error(`Unable to send event to actor '${H}' from machine '${C.machine.id}'.`)}else M=H||k.self;return[C,{to:M,targetId:typeof H=="string"?H:void 0,event:P,id:A,delay:L},void 0]}function s(k,C,_){typeof _.to=="string"&&(_.to=C.children[_.to])}function c(k,C){k.defer(()=>{const{to:_,event:$,delay:z,id:T}=C;if(typeof z=="number"){k.system.scheduler.schedule(k.self,_,$,z,T);return}k.system._relay(k.self,_,$.type===e.XSTATE_ERROR?e.createErrorActorEvent(k.self.id,$.data):$)})}function d(k,C,_){function $(z,T){}return $.type="xstate.sendTo",$.to=k,$.event=C,$.id=_?.id,$.delay=_?.delay,$.resolve=l,$.retryResolve=s,$.execute=c,$}function u(k,C){return d(i.Parent,k,C)}function p(k,C){return d(k,({event:_})=>_,C)}function f(k,C,_,$,{collect:z}){const T=[],A=function(R){T.push(R)};return A.assign=(...R)=>{T.push(r.assign(...R))},A.cancel=(...R)=>{T.push(e.cancel(...R))},A.raise=(...R)=>{T.push(e.raise(...R))},A.sendTo=(...R)=>{T.push(d(...R))},A.sendParent=(...R)=>{T.push(u(...R))},A.spawnChild=(...R)=>{T.push(e.spawnChild(...R))},A.stopChild=(...R)=>{T.push(e.stopChild(...R))},A.emit=(...R)=>{T.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,T]}function g(k){function C(_,$){}return C.type="xstate.enqueueActions",C.collect=k,C.resolve=f,C}function v(k,C,_,$,{value:z,label:T}){return[C,{value:typeof z=="function"?z(_,$):z,label:T},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 mc.SpecialTargets=i,mc.emit=a,mc.enqueueActions=g,mc.forwardTo=p,mc.log=x,mc.sendParent=u,mc.sendTo=d,mc}var $re;function hQe(){if($re)return Ho;$re=1,Object.defineProperty(Ho,"__esModule",{value:!0});var e=Ere(),r=I2(),n=pQe();return zz(),Ho.assign=e.assign,Ho.cancel=r.cancel,Ho.raise=r.raise,Ho.spawnChild=r.spawnChild,Ho.stop=r.stop,Ho.stopChild=r.stopChild,Ho.emit=n.emit,Ho.enqueueActions=n.enqueueActions,Ho.forwardTo=n.forwardTo,Ho.log=n.log,Ho.sendParent=n.sendParent,Ho.sendTo=n.sendTo,Ho}var fr=hQe();const fQe=Qe.createStateConfig({on:{"xyflow.init":{actions:fr.assign(({context:e,event:r})=>({initialized:{...e.initialized,xyflow:!0},xyflow:r.instance})),target:"isReady"},"update.view":{actions:[hre(),fr.assign(({context:e})=>({initialized:{...e.initialized,xydata:!0}}))],target:"isReady"}}}),mQe=Qe.createStateConfig({always:[{guard:"isReady",actions:[s4({duration:0}),fr.assign(({context:e})=>({navigationHistory:{currentIndex:0,history:[{viewId:e.view.id,viewport:{...e.xyflow.getViewport()},viewportChangedManually:!1}]}})),KKe()],target:"ready"},{target:"initializing"}]}),gQe=()=>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=ovz(u)===c);if(d)return{lastOnNavigate:{fromView:e.view.id,toView:r.view.id,fromNode:d.id}}}return{}}),yQe=Qe.createStateConfig({id:Rn.navigating.slice(1),always:{target:Rn.idle,actions:[fc(),gQe(),ure(),rs(({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,...lre({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where})};He(o,"xyflow is not initialized");const c=x=>{const k=o.getZoom(),C=x.zoom({type:"focus.node",nodeId:e.node.id})),Dp()]}],"focus.node":{actions:[d4(),C0(),p4(),E0()]},"key.esc":{target:Rn.idle},"xyflow.paneClick":{actions:[jm(),dR()],target:Rn.idle},"notations.unhighlight":{actions:C0()},"tag.unhighlight":{actions:C0()},"update.view":{guard:"is same view",actions:[vR(),C0()]}}}),bQe=Qe.createStateConfig({id:Rn.idle.slice(1),on:{"xyflow.nodeClick":[{guard:Bd.and(["enabled: Readonly","enabled: FocusMode","click: node has connections",Bd.or(["click: same node","click: selected node"])]),actions:[Ap(),d4(),Dp()],target:Rn.focused},{guard:Bd.and(["enabled: Readonly","enabled: ElementDetails","click: node has modelFqn",Bd.or(["click: same node","click: selected node"])]),actions:[Ap(),p4(),gR(),Dp()]},{actions:[Ap(),p4(),Dp()]}],"xyflow.paneClick":{actions:[jm(),dR()]},"xyflow.paneDblClick":{actions:[jm(),fr.enqueueActions(({context:e,enqueue:r,check:n})=>{n("enabled: FitView")&&r(s4()),r(fre({view:e.view.id}))})]},"focus.node":[{guard:"focus.node: autoUnfocus",actions:d4(),target:Rn.focused},{guard:"enabled: FocusMode",actions:d4(),target:Rn.focused}],"xyflow.edgeClick":{guard:Bd.and(["enabled: Readonly","is dynamic view","enabled: DynamicViewWalkthrough","click: selected edge"]),actions:[jm(),fr.raise(({event:e})=>({type:"walkthrough.start",stepId:e.edge.id})),pR()]}}}),xQe=Qe.createStateConfig({id:Rn.printing.slice(1),entry:[fc(),sR(),rs(({enqueue:e,context:r})=>{const n=r.view.bounds,o=16;e(S0({viewport:{x:n.x+o,y:n.y+o,zoom:1},duration:0}))})],exit:[cR({delay:0,duration:0})],on:{"media.print.off":{target:Rn.idle},"*":{actions:[yE(({event:e})=>`Printing state - ignoring event: ${e.type}`)]}}}),Am=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const{activeWalkthrough:n}=e;if(!n){console.warn("Active walkthrough is null"),r.raise({type:"walkthrough.end"});return}const{stepId:o,parallelPrefix: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?l4.active:l4.default,dimmed:s}):tr.setDimmed(l,s)})})}),wQe=()=>Qe.emit(({context:e})=>{const r=e.xyedges.find(n=>n.id===e.activeWalkthrough?.stepId);return He(r,"Invalid walkthrough state"),{type:"walkthroughStarted",edge:r}}),kQe=()=>Qe.emit(()=>({type:"walkthroughStopped"})),zre=()=>Qe.emit(({context:e})=>{const r=e.xyedges.find(n=>n.id===e.activeWalkthrough?.stepId);return He(r,"Invalid walkthrough state"),{type:"walkthroughStep",edge:r}}),_Qe=Qe.createStateConfig({id:Rn.walkthrough.slice(1),entry:[wre(),yre(),fc(),sR(),fr.assign({activeWalkthrough:({context:e,event:r})=>{ht(r,"walkthrough.start");const n=r.stepId??hf(e.xyedges).id;return{stepId:n,parallelPrefix:K8(n)}}}),Am(),E0(),wQe()],exit:[kre(),fr.enqueueActions(({enqueue:e,context:r})=>{e.assign({activeWalkthrough:null}),r.dynamicViewVariant==="sequence"&&r.activeWalkthrough?.parallelPrefix&&e.assign({xynodes:r.xynodes.map(n=>n.type==="seq-parallel"?tr.setData(n,{color:l4.default}):n)})}),u4(),cR(),kQe()],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=ti(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:K8(i)}}}),Am(),E0(),zre()]},"xyflow.edgeClick":{actions:[fr.assign(({event:e,context:r})=>!k1(e.edge.id)||e.edge.id===r.activeWalkthrough?.stepId?{}:{activeWalkthrough:{stepId:e.edge.id,parallelPrefix:K8(e.edge.id)}}),Am(),E0(),pR(),zre()]},"notations.unhighlight":{actions:Am()},"tag.unhighlight":{actions:Am()},"update.view":{guard:"is same view",actions:[vR(),Am()]},"walkthrough.end":{target:Rn.idle},"xyflow.paneDblClick":{target:Rn.idle}}}),SQe=Qe.createStateConfig({initial:"idle",entry:[fr.spawnChild("mediaPrintActorLogic",{id:"mediaPrint"}),hR(),bre(),xre()],exit:[fc(),fr.stopChild("mediaPrint"),aQe(),oQe(),gre()],states:{idle:bQe,focused:vQe,walkthrough:_Qe,printing:xQe},on:{"navigate.*":{actions:uQe()},"layout.align":{guard:"not readonly",actions:[fR("node"),JKe(),mR(!0)]},"layout.resetEdgeControlPoints":{guard:"not readonly",actions:[fR("edge"),eQe(),mR(!0)]},"layout.resetManualLayout":{guard:"not readonly",actions:[yre(),ure(),mre({op:"reset-manual-layout"})]},"xyflow.resized":{guard:({context:e})=>e.features.enableFitView&&!e.viewportChangedManually,actions:[fc(),c4({delay:200})]},"open.elementDetails":{actions:yR()},"open.relationshipsBrowser":{actions:yR()},"open.relationshipDetails":{actions:yR()},"open.source":{guard:"enabled: OpenSource",actions:fre()},"walkthrough.start":{guard:"is dynamic view",target:Rn.walkthrough},"toggle.feature":{actions:[nQe(),hR()]},"update.features":{actions:[pre(),bre(),xre(),hR()]},"xyflow.nodeMouseEnter":{actions:XKe()},"xyflow.nodeMouseLeave":{actions:ZKe()},"xyflow.edgeMouseEnter":{actions:lQe()},"xyflow.edgeMouseLeave":{actions:sQe()},"xyflow.edgeDoubleClick":{guard:Bd.and(["not readonly",({event:e})=>!!e.edge.data.controlPoints&&e.edge.data.controlPoints.length>0]),actions:[fR("edge"),WKe(),mR(!0)]},"notations.highlight":{actions:tQe()},"notations.unhighlight":{actions:u4()},"tag.highlight":{actions:rQe()},"tag.unhighlight":{actions:u4()},"open.search":{guard:"enabled: Search",actions:fr.sendTo(({system:e})=>Rr(e).searchActorRef,({event:e})=>({type:"open",search:e.search}))},"xyflow.paneClick":{actions:[jm(),dR()]},"xyflow.nodeClick":{actions:[Ap(),Dp()]},"xyflow.edgeClick":{actions:[jm(),pR()]},"xyflow.fitDiagram":{guard:"enabled: FitView",actions:s4()},"xyflow.setViewport":{actions:S0()},"update.view":[{guard:"is another view",target:Rn.navigating},{actions:vR()}],"media.print.on":{target:Rn.printing}}}),xR="likec4:diagram:toggledFeatures",Rre={read(){try{let e=sessionStorage.getItem(xR);return e?JSON.parse(e):null}catch(e){return console.error(`Error reading fromStorage ${xR}:`,e),null}},write(e){return sessionStorage.setItem(xR,JSON.stringify(ry(e,Pq))),e}},EQe=Qe.createMachine({initial:"initializing",context:({input:e})=>({...e,xyedges:[],xynodes:[],features:{...WG},toggledFeatures:Rre.read()??{enableReadOnly:!0,enableCompareWithLatest:!1},initialized:{xydata:!1,xyflow:!1},viewportChangedManually:!1,lastOnNavigate:null,lastClickedNode:null,focusedNode:null,autoUnfocusTimer:!1,activeElementDetails:null,viewportBefore:null,viewportOnManualLayout:null,viewportOnAutoLayout:null,navigationHistory:{currentIndex:0,history:[]},viewport:{x:0,y:0,zoom:1},xyflow:null,dynamicViewVariant:e.dynamicViewVariant??(e.view._type==="dynamic"?e.view.variant:"diagram")??"diagram",activeWalkthrough:null}),states:{initializing:fQe,isReady:mQe,ready:SQe,navigating:yQe,final:{type:"final",entry:[gre(),fc(),fr.stopChild("hotkey"),fr.stopChild("overlays"),fr.stopChild("search"),fr.stopChild("mediaPrint"),fr.assign({xyflow:null,xystore:null,xyedges:[],xynodes:[],initialized:{xydata:!1,xyflow:!1}})]}},on:{"update.nodeData":{actions:fr.assign(MKe)},"update.edgeData":{actions:fr.assign(NKe)},"switch.dynamicViewVariant":{guard:({context:e,event:r})=>e.dynamicViewVariant!==r.variant,actions:[YKe(),UKe()]},"update.inputs":{actions:GKe()},"update.view-bounds":{actions:fr.assign(({context:e,event:r})=>({view:{...e.view,bounds:r.bounds}}))},"update.features":{actions:pre()},"trigger.change":{actions:mre()},"emit.onLayoutTypeChange":{actions:QKe()},"xyflow.applyNodeChanges":{actions:fr.assign({xynodes:({context:e,event:r})=>rw(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:fr.assign({xyedges:({context:e,event:r})=>nw(r.changes,e.xyedges)})},"xyflow.viewportMoved":{actions:fr.assign(({event:e,context:r})=>({viewportChangedManually:r.viewportChangedManually||e.manually,viewport:e.viewport}))},destroy:{target:".final"}}}),CQe=EQe;function $Qe({view:e,zoomable:r,pannable:n,nodesDraggable:o,nodesSelectable:a,fitViewPadding:i,where:l,children:s,dynamicViewVariant:c}){const d=vr(),u=AKe(e.id),p=vE(CQe.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(()=>nre(f));S.useEffect(()=>{v(x=>x.ref===f?x:(console.warn("DiagramMachine actorRef changed, creating new DiagramApi instance, this should not happen during the lifetime of the actor"),nre(f)))},[f]);const w=sr();return S.useEffect(()=>p.send({type:"update.features",features:w}),[w,p]),S.useEffect(()=>p.send({type:"update.inputs",inputs:{zoomable:r,where:l,pannable:n,fitViewPadding:i,nodesDraggable:o,nodesSelectable:a}}),[r,l,n,i,p,o,a]),$p(()=>{c&&p.send({type:"switch.dynamicViewVariant",variant:c})},[c,p]),_L(()=>p.send({type:"update.view",view:e,source:"external"}),[p,e]),y.jsx(tBe,{value:p,children:y.jsxs(rBe,{value:g,children:[y.jsx(QS,{children:y.jsx(TQe,{actorRef:p,children:s})}),y.jsx(jQe,{})]})})}const zQe=({context:e})=>{let r=e.toggledFeatures;const n=e.view.drifts!=null&&e.view.drifts.length>0,o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&ty(e.activeWalkthrough)&&n,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}},RQe=(e,r)=>e.viewId===r.viewId&&Ir(e.toggledFeatures,r.toggledFeatures);function TQe({children:e,actorRef:r}){const{viewId:n,toggledFeatures:o}=pn(r,zQe,RQe),a=Fo().findView(n);return y.jsx(GS.Provider,{value:a,children:y.jsx(mp,{overrides:o,children:e})})}const jQe=S.memo(()=>{const e=Nt(),{onNavigateTo:r,onOpenSource:n,onLayoutTypeChange:o,handlersRef:a}=gm();ja("openSource",({params:l})=>n?.(l)),ja("navigateTo",({viewId:l})=>r?.(l)),ja("onLayoutTypeChange",({layoutType:l})=>{o?.(l)}),ja("initialized",({instance:l})=>{try{a.current.onInitialized?.({diagram:e,xyflow:l})}catch(s){console.error(s)}},{once:!0});const i=pi(l=>l.toggledFeatures,Ir);return $p(()=>{Rre.write(P$e(i,ty))},[i]),null}),h4={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:e=>e>=255?255:e<0?0:e,g:e=>e>=255?255:e<0?0:e,b:e=>e>=255?255:e<0?0:e,h:e=>e%360,s:e=>e>=100?100:e<0?0:e,l:e=>e>=100?100:e<0?0:e,a:e=>e>=1?1:e<0?0:e},toLinear:e=>{const r=e/255;return e>.03928?Math.pow((r+.055)/1.055,2.4):r/12.92},hue2rgb:(e,r,n)=>(n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(r-e)*6*n:n<1/2?r:n<2/3?e+(r-e)*(2/3-n)*6:e),hsl2rgb:({h:e,s:r,l:n},o)=>{if(!r)return n*2.55;e/=360,r/=100,n/=100;const a=n<.5?n*(1+r):n+r-n*r,i=2*n-a;switch(o){case"r":return h4.hue2rgb(i,a,e+1/3)*255;case"g":return h4.hue2rgb(i,a,e)*255;case"b":return h4.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},DQe={dec2hex:e=>{const r=Math.round(e).toString(16);return r.length>1?r:`0${r}`}},Tt={channel:h4,lang:AQe,unit:DQe},Ld={};for(let e=0;e<=255;e++)Ld[e]=Tt.unit.dec2hex(e);const $o={ALL:0,RGB:1,HSL:2};class MQe{constructor(){this.type=$o.ALL}get(){return this.type}set(r){if(this.type&&this.type!==r)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=r}reset(){this.type=$o.ALL}is(r){return this.type===r}}class NQe{constructor(r,n){this.color=n,this.changed=!1,this.data=r,this.type=new MQe}set(r,n){return this.color=n,this.changed=!1,this.data=r,this.type.type=$o.ALL,this}_ensureHSL(){const r=this.data,{h:n,s:o,l:a}=r;n===void 0&&(r.h=Tt.channel.rgb2hsl(r,"h")),o===void 0&&(r.s=Tt.channel.rgb2hsl(r,"s")),a===void 0&&(r.l=Tt.channel.rgb2hsl(r,"l"))}_ensureRGB(){const r=this.data,{r:n,g:o,b:a}=r;n===void 0&&(r.r=Tt.channel.hsl2rgb(r,"r")),o===void 0&&(r.g=Tt.channel.hsl2rgb(r,"g")),a===void 0&&(r.b=Tt.channel.hsl2rgb(r,"b"))}get r(){const r=this.data,n=r.r;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"r"))}get g(){const r=this.data,n=r.g;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"g"))}get b(){const r=this.data,n=r.b;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"b"))}get h(){const r=this.data,n=r.h;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"h"))}get s(){const r=this.data,n=r.s;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"s"))}get l(){const r=this.data,n=r.l;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"l"))}get a(){return this.data.a}set r(r){this.type.set($o.RGB),this.changed=!0,this.data.r=r}set g(r){this.type.set($o.RGB),this.changed=!0,this.data.g=r}set b(r){this.type.set($o.RGB),this.changed=!0,this.data.b=r}set h(r){this.type.set($o.HSL),this.changed=!0,this.data.h=r}set s(r){this.type.set($o.HSL),this.changed=!0,this.data.s=r}set l(r){this.type.set($o.HSL),this.changed=!0,this.data.l=r}set a(r){this.changed=!0,this.data.a=r}}const f4=new NQe({r:0,g:0,b:0,a:0},"transparent"),Dm={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:e=>{if(e.charCodeAt(0)!==35)return;const r=e.match(Dm.re);if(!r)return;const n=r[1],o=parseInt(n,16),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 f4.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?`#${Ld[Math.round(r)]}${Ld[Math.round(n)]}${Ld[Math.round(o)]}${Ld[Math.round(a*255)]}`:`#${Ld[Math.round(r)]}${Ld[Math.round(n)]}${Ld[Math.round(o)]}`}},Mp={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:e=>{const r=e.match(Mp.hueRe);if(r){const[,n,o]=r;switch(o){case"grad":return Tt.channel.clamp.h(parseFloat(n)*.9);case"rad":return Tt.channel.clamp.h(parseFloat(n)*180/Math.PI);case"turn":return Tt.channel.clamp.h(parseFloat(n)*360)}}return Tt.channel.clamp.h(parseFloat(e))},parse:e=>{const r=e.charCodeAt(0);if(r!==104&&r!==72)return;const n=e.match(Mp.re);if(!n)return;const[,o,a,i,l,s]=n;return f4.set({h:Mp._hue2deg(o),s:Tt.channel.clamp.s(parseFloat(a)),l:Tt.channel.clamp.l(parseFloat(i)),a:l?Tt.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(${Tt.lang.round(r)}, ${Tt.lang.round(n)}%, ${Tt.lang.round(o)}%, ${a})`:`hsl(${Tt.lang.round(r)}, ${Tt.lang.round(n)}%, ${Tt.lang.round(o)}%)`}},$0={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:e=>{e=e.toLowerCase();const r=$0.colors[e];if(r)return Dm.parse(r)},stringify:e=>{const r=Dm.stringify(e);for(const n in $0.colors)if($0.colors[n]===r)return n}},z0={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(z0.re);if(!n)return;const[,o,a,i,l,s,c,d,u]=n;return f4.set({r:Tt.channel.clamp.r(a?parseFloat(o)*2.55:parseFloat(o)),g:Tt.channel.clamp.g(l?parseFloat(i)*2.55:parseFloat(i)),b:Tt.channel.clamp.b(c?parseFloat(s)*2.55:parseFloat(s)),a:d?Tt.channel.clamp.a(u?parseFloat(d)/100:parseFloat(d)):1},e)},stringify:e=>{const{r,g:n,b:o,a}=e;return a<1?`rgba(${Tt.lang.round(r)}, ${Tt.lang.round(n)}, ${Tt.lang.round(o)}, ${Tt.lang.round(a)})`:`rgb(${Tt.lang.round(r)}, ${Tt.lang.round(n)}, ${Tt.lang.round(o)})`}},fl={format:{keyword:$0,hex:Dm,rgb:z0,rgba:z0,hsl:Mp,hsla:Mp},parse:e=>{if(typeof e!="string")return e;const r=Dm.parse(e)||z0.parse(e)||Mp.parse(e)||$0.parse(e);if(r)return r;throw new Error(`Unsupported color format: "${e}"`)},stringify:e=>!e.changed&&e.color?e.color:e.type.is($o.HSL)||e.data.r===void 0?Mp.stringify(e):e.a<1||!Number.isInteger(e.r)||!Number.isInteger(e.g)||!Number.isInteger(e.b)?z0.stringify(e):Dm.stringify(e)},Tre=(e,r)=>{const n=fl.parse(e);for(const o in r)n[o]=Tt.channel.clamp[o](r[o]);return fl.stringify(n)},PQe=(e,r,n=0,o=1)=>{if(typeof e!="number")return Tre(e,{a:r});const a=f4.set({r:Tt.channel.clamp.r(e),g:Tt.channel.clamp.g(r),b:Tt.channel.clamp.b(n),a:Tt.channel.clamp.a(o)});return fl.stringify(a)},jre=e=>fl.format.hex.stringify(fl.parse(e)),Are=e=>fl.format.rgba.stringify(fl.parse(e)),BQe=(e,r)=>{const n=fl.parse(e),o={};for(const a in r)r[a]&&(o[a]=n[a]+r[a]);return Tre(e,o)},Dre=(e,r,n=50)=>{const{r:o,g:a,b:i,a:l}=fl.parse(e),{r:s,g:c,b:d,a:u}=fl.parse(r),p=n/100,f=p*2-1,g=l-u,v=((f*g===-1?f:(f+g)/(1+f*g))+1)/2,w=1-v,x=o*v+s*w,k=a*v+c*w,C=i*v+d*w,_=l*p+u*(1-p);return PQe(x,k,C,_)},Mre=(e,r)=>{const n=fl.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],Tt.channel.max[i]);return BQe(e,o)},IQe=e=>`[data-mantine-color-scheme="${e}"]`,Nre=IQe("dark"),OQe=5,LQe=(e,r,n,o)=>{const a=s=>jre(Mre(s,{l:-22-5*o,s:-10-6*o})),i=s=>jre(Mre(s,{l:-20-3*o,s:-3-6*o})),l=`:where(${e} [data-likec4-color="${r}"][data-compound-depth="${o}"])`;return` + `});const aZe=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)"}),iZe=[["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"}]],lZe=wt("outline","help-circle","HelpCircle",iZe),sZe=[["path",{d:"M7 7l10 10",key:"svg-0"}],["path",{d:"M17 8l0 9l-9 0",key:"svg-1"}]],cZe=wt("outline","arrow-down-right","ArrowDownRight",sZe),dZe=({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(b3,{shadow:"none",px:"xs",py:"sm",className:Ge(oZe),"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:GCe(70*(c/s),0)},children:y.jsx(pm,{data:{shape:o,width:s,height:c}})}),y.jsxs(Lo,{gap:4,flex:1,children:[y.jsx(en,{gap:4,flex:"0 0 auto",children:e.kinds.map(d=>y.jsx(ec,{className:Ge(aZe),onMouseEnter:()=>{i(d),l.highlightNotation(e,d)},onMouseLeave:()=>{i(null),l.highlightNotation(e)},opacity:Bq(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})]})]})})},uZe=e=>({id:e.view.id,notations:e.view.notation?.nodes??[]}),pZe=S.memo(()=>{const e=QC(s=>s.height),{id:r,notations:n}=pi(uZe),[o,a]=sze({key:"notation-webview-collapsed",defaultValue:!0}),i=n.length>0,l=bm();return y.jsxs(Cn,{children:[!i&&y.jsx(mi.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:AR,children:y.jsx(_n,{label:"View has no notations",color:"orange",...l,children:y.jsx(Ta,{size:"lg",variant:"light",color:"orange",radius:"md",children:y.jsx(rte,{})})})},"empty"),i&&o&&y.jsx(mi.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:AR,children:y.jsx(_n,{label:"Show notation",color:"dark",fz:"xs",...l,children:y.jsx(lr,{size:"lg",variant:"default",color:"gray",className:tZe,onClick:()=>a(!1),children:y.jsx(lZe,{stroke:1.5})})})},"collapsed"),i&&!o&&y.jsx(mi.div,{initial:{opacity:.75,scale:.2},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.25},className:Ge("react-flow__panel",AR),style:{transformOrigin:"bottom right"},children:y.jsx(Af,{radius:"sm",withBorder:!0,shadow:"lg",className:rZe,children:y.jsxs(up,{defaultValue:"first",radius:"xs",children:[y.jsxs(ky,{children:[y.jsx(lr,{size:"md",variant:"subtle",color:"gray",ml:2,style:{alignSelf:"center"},onClick:()=>a(!0),children:y.jsx(cZe,{stroke:2})}),y.jsx(Lf,{value:"first",fz:"xs",children:"Elements"}),y.jsx(Lf,{value:"second",fz:"xs",disabled:!0,children:"Relationships"})]}),y.jsx(rc,{value:"first",className:nZe,hidden:o,children:y.jsx(oa,{viewportProps:{style:{maxHeight:`min(40vh, ${Math.max(e-60,50)}px)`}},children:y.jsx(Lo,{gap:0,children:n.map((s,c)=>y.jsx(dZe,{value:s},c))})})})]})})},r)]})}),hZe=S.memo(()=>{const[{layout:e,isActive:r},{toggleCompare:n}]=TR(),o=e==="manual"?"var(--mantine-color-orange-6)":"var(--mantine-color-green-6)";return y.jsx(hr,{className:qn({position:"absolute",top:"0",left:"0",width:"full",height:"full",border:"default",borderWidth:4,pointerEvents:"none",alignItems:"flex-start",justifyContent:"center"}),style:{zIndex:"9999",display:r?void 0:"none",borderColor:o},children:y.jsx(fZe,{style:{backgroundColor:o},onClick:a=>{a.stopPropagation(),n()},children:"Close compare"})})}),fZe=pr.withProps({className:fe({fontSize:"xs",fontWeight:"medium",py:"1.5",lineHeight:"1",borderBottomLeftRadius:"sm",borderBottomRightRadius:"sm",transform:"translateY(-4px)",px:"4",color:"mantine.colors.gray[9]",pointerEvents:"all",_active:{transform:"translateY(-3px)"}})}),yte=S.memo(()=>{const{enableControls:e,enableNotations:r,enableSearch:n,enableRelationshipDetails:o,enableReadOnly:a,enableCompareWithLatest:i}=sr(),l=e6e(),s=oBe(),c=iBe(),d=S.useCallback(()=>{console.warn("DiagramUI: resetting error boundary and rerendering..."),l()},[]);return y.jsxs(QS,{onReset:d,children:[e&&y.jsx(gte,{}),s&&y.jsx(uWe,{overlaysActorRef:s}),r&&y.jsx(pZe,{}),n&&c&&y.jsx(KWe,{searchActorRef:c}),o&&a&&y.jsx(uGe,{}),i&&y.jsx(hZe,{})]})});yte.displayName="DiagramUI";function vte({edgeProps:{data:e},svgPath:r}){const n=e.drifts;return!n||n.length===0?null:y.jsx("path",{className:Ge("react-flow__edge-path",fe({pointerEvents:"none",stroke:"likec4.compare.manual.outline",fill:"none",strokeWidth:{base:"8px",_whenHovered:"12px"},strokeOpacity:.5})),d:r,strokeLinecap:"round"})}const mZe=fe({overflow:"visible",position:"absolute",pointerEvents:"none",top:"0",left:"0",mixBlendMode:{_dark:"screen",_light:"multiply"}}),gZe=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 yZe({sourceX:e,sourceY:r,targetX:n,targetY:o,data:a}){const[i,l]=S.useState(()=>a.controlPoints??c2(a.points));$p(()=>{const c=a.controlPoints??c2(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 xte;const n=10**r;return function(o){this._+=o[0];for(let a=1,i=o.length;aTp)if(!(Math.abs(p*c-d*u)>Tp)||!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((DR-Math.acos((w+f-x)/(2*k*C)))/2),$=_/C,R=_/k;Math.abs($-1)>Tp&&this._append`L${r+$*u},${n+$*p}`,this._append`A${i},${i},0,0,${+(p*g>u*v)},${this._x1=r+R*c},${this._y1=n+R*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)>Tp||Math.abs(this._y1-u)>Tp)&&this._append`L${d},${u}`,o&&(f<0&&(f=f%MR+MR),f>vZe?this._append`A${o},${o},0,1,${p},${r-s},${n-c}A${o},${o},0,1,${p},${this._x1=d},${this._y1=u}`:f>Tp&&this._append`A${o},${o},0,${+(f>=DR)},${p},${this._x1=r+o*Math.cos(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 wZe(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 xZe(r)}function kZe(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function wte(e){this._context=e}wte.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){switch(e=+e,r=+r,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 1:this._point=2;default:this._context.lineTo(e,r);break}}};function _Ze(e){return new wte(e)}function SZe(e){return e[0]}function EZe(e){return e[1]}function CZe(e,r){var n=_m(!0),o=null,a=_Ze,i=null,l=wZe(s);e=typeof e=="function"?e:e===void 0?SZe:_m(e),r=typeof r=="function"?r:r===void 0?EZe:_m(r);function s(c){var d,u=(c=kZe(c)).length,p,f=!1,g;for(o==null&&(i=a(g=l())),d=0;d<=u;++d)!(dbte){var s=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,c=3*e._l01_a*(e._l01_a+e._l12_a);o=(o*s-e._x0*e._l12_2a+e._x2*e._l01_2a)/c,a=(a*s-e._y0*e._l12_2a+e._y2*e._l01_2a)/c}if(e._l23_a>bte){var d=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);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 _te(e,r){this._context=e,this._alpha=r}_te.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){if(e=+e,r=+r,this._point){var n=this._x2-e,o=this._y2-r;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+o*o,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 1:this._point=2;break;case 2:this._point=3;default:kte(this,e,r);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=r}},(function e(r){function n(o){return r?new _te(o,r):new PR(o,0)}return n.alpha=function(o){return e(+o)},n})(.5);function Ste(e,r){this._context=e,this._alpha=r}Ste.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){if(e=+e,r=+r,this._point){var n=this._x2-e,o=this._y2-r;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+o*o,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:kte(this,e,r);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=r}};const $Ze=(function e(r){function n(o){return r?new Ste(o,r):new BR(o,0)}return n.alpha=function(o){return e(+o)},n})(.5),RZe=CZe().curve($Ze.alpha(.7)).x(e=>Math.round(e.x)).y(e=>Math.round(e.y)),zZe=(e,r)=>cQ(e.sourceNode,r.sourceNode)&&cQ(e.targetNode,r.targetNode);function TZe({props:{sourceX:e,sourceY:r,source:n,target:o,targetX:a,targetY:i,data:l},controlPoints:s,isControlPointDragging:c}){const{sourceNode:d,targetNode:u}=QC(S.useCallback(({nodeLookup:p})=>{const f=mt(p.get(n),`source node ${n} not found`),g=mt(p.get(o),`target node ${o} not found`);return{sourceNode:r$(f),targetNode:r$(g)}},[n,o]),zZe);if(Kn(l.controlPoints)||c){const p={x:e,y:r},f={x:a,y:i},g=6,v=l.dir==="back"?[f,s2(u,hf(s)??p,g),...s,s2(d,dd(s)??f,g),p]:[p,s2(d,hf(s)??f,g),...s,s2(u,dd(s)??p,g),f];return mt(RZe(v))}return OVe(l.points)}const Ete=e=>{const r=e.getPointAtLength(e.getTotalLength()*.5);return{x:Math.round(r.x),y:Math.round(r.y)}},Cte=rR(e=>{const[r,n]=S.useState(!1),o=S.useRef(r);o.current=r;const a=aQ(),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}=yZe(e);let _=TZe({props:e,controlPoints:x,isControlPointDragging:r}),$=f?.x??0,R=f?.y??0;const[T,A]=S.useState({x:g?.x??$,y:g?.y??R});$p(()=>{if(o.current)return;const V={x:$,y:R};A(B=>d2(B,V)?B:V)},[$,R]);const z=S.useRef(null);S.useEffect(()=>{const V=z.current;if(!V||!r)return;const B=Ete(V);A(F=>d2(F,B)?F:B)},[_,r]);const j=it(V=>{const B=z.current?Ete(z.current):null;f&&B?i.updateEdgeData(u,{controlPoints:V,labelBBox:{...f,...B}}):i.updateEdgeData(u,{controlPoints:V}),i.stopEditing(!0),n(!1)}),I=it(()=>{i.startEditing("edge"),n(!0)}),P=it(()=>{i.stopEditing(),n(!1)}),L=it(V=>{k(V),requestAnimationFrame(()=>{j(V)})}),H=it(V=>{i.startEditing("edge"),n(!0),k(V),requestAnimationFrame(()=>{j(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(i0,{...e,className:fe({"& .react-flow__edge-interaction":{cursor:d&&p?"copy":void 0}}),children:[y.jsx(l0,{edgeProps:e,svgPath:_,ref:z,isDragging:r,...d&&{onEdgePointerDown:M}}),c&&y.jsx(vte,{edgeProps:e,svgPath:_}),f&&y.jsx(S2,{edgeProps:e,labelPosition:r?T:{x:$,y:R},children:y.jsx(a0,{pointerEvents:d?"none":"all",edgeProps:e,children:w&&y.jsx(_2,{onClick:V=>{V.stopPropagation(),i.navigateTo(w)}})})})]}),d&&x.length>0&&y.jsx(jZe,{isControlPointDragging:r,edgeProps:e,controlPoints:x,onMove:k,onStartMove:I,onCancelMove:P,onFinishMove:L,onDelete:H,zIndex:9999})]})});Cte.displayName="RelationshipEdge";function jZe({isControlPointDragging:e,edgeProps:r,controlPoints:n,onMove:o,onStartMove:a,onCancelMove:i,onFinishMove:l,onDelete:s,zIndex:c}){const d=JC(),u=aQ(),p=r.data.id,f=(x,k,C)=>{let _=!1,$={x:k.clientX,y:k.clientY},R=null,T=n;const A=j=>{const I={x:j.clientX,y:j.clientY};d2($,I)||(_||(_=!0,a()),$=I,R??=requestAnimationFrame(()=>{R=null,T=T.slice();const{x:P,y:L}=u.screenToFlowPosition($,{snapToGrid:!1});T[x]={x:Math.round(P),y:Math.round(L)},o(T)})),j.stopPropagation()},z=j=>{j.stopPropagation(),C.removeEventListener("pointermove",A,{capture:!0}),C.removeEventListener("click",IR,{capture:!0}),_?l(T):i()};C.addEventListener("pointermove",A,{capture:!0}),C.addEventListener("pointerup",z,{once:!0,capture:!0}),C.addEventListener("click",IR,{capture:!0,once:!0})},g=(x,k)=>{if(n.length<=1)return;k.stopPropagation(),k.preventDefault();const C=n.slice();C.splice(x,1),setTimeout(()=>{s(C)},10)},v=it(x=>{const{domNode:k,addSelectedEdges:C,edges:_,unselectNodesAndEdges:$}=d.getState();if(!k||x.pointerType!=="mouse")return;const R=parseFloat(x.currentTarget.getAttribute("data-control-point-index")||"");if(isNaN(R))throw new Error("data-control-point-index is not a number");switch(x.button){case 0:{x.stopPropagation(),$({edges:_.filter(T=>T.selected&&T.id!==p)}),C([p]),f(R,x,k);break}case 2:g(R,x);break}}),w=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(yq,{children:y.jsx(i0,{component:"svg",className:mZe,...r,style:{...r.style,zIndex:c},children:y.jsx("g",{"data-active":e?!0:void 0,className:"group",onContextMenu:IR,children:n.map((x,k)=>y.jsx("circle",{"data-control-point-index":k,onPointerDownCapture:v,onDoubleClick:w,className:Ge("nodrag nopan",gZe),cx:x.x,cy:x.y},"controlPoints"+p+"#"+k))})})})}const IR=e=>{e.stopPropagation(),e.preventDefault()},V2=16;function AZe(e){const{enableNavigateTo:r,enableCompareWithLatest:n}=sr(),o=Nt(),{navigateTo:a}=e.data,i=e.source===e.target,l=e.sourceX>e.targetX,[s]=Kx({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+V2;break;case l:c=e.sourceX-V2;break;default:c=e.sourceX+V2;break}return y.jsxs(i0,{...e,children:[y.jsx(l0,{edgeProps:e,svgPath:s}),n&&y.jsx(vte,{edgeProps:e,svgPath:s}),y.jsx(S2,{edgeProps:e,labelPosition:{x:c,y:e.sourceY+(i?0:V2),translate:l?"translate(-100%, 0)":void 0},children:y.jsx(a0,{edgeProps:e,children:r&&a&&y.jsx(_2,{onClick:d=>{d.stopPropagation(),o.navigateTo(a)}})})})]})}const DZe=(e,r)=>tt(e.data.id,r.data.id)&&tt(e.selected??!1,r.selected??!1)&&tt(e.data.modelFqn??null,r.data.modelFqn??null)&&tt(e.data.navigateTo??null,r.data.navigateTo??null)&&tt(e.data.hovered??!1,r.data.hovered??!1)&&(!e.extraButtons&&!r.extraButtons||Ir(e.extraButtons,r.extraButtons)),$te=S.memo(({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),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(bi,{}),onClick:u=>{u.stopPropagation(),a.navigateTo(l,i)}}),o&&d.push({key:"relationships",icon:y.jsx(s0,{}),onClick:u=>{u.stopPropagation(),a.openRelationshipsBrowser(s)}}),d},[n,o,s,l,i,a]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(C2,{...r,buttons:c})},DZe),MZe=({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(bi,{}),onClick:u=>{u.stopPropagation(),a.navigateTo(l,i)}}),o&&s&&d.push({key:"relationships",icon:y.jsx(s0,{}),onClick:u=>{u.stopPropagation(),a.openRelationshipsBrowser(s)}}),d},[n,o,s,l,i]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(C2,{...r,buttons:c})};function Sm({nodeProps:{data:e},position:r="bottom"}){const n=e.drifts;if(!n||n.length===0)return null;const o=r==="top"?Ue.Top:Ue.Bottom;return y.jsx(hr,{className:"likec4-node-drifts",css:{display:"contents","& + .likec4-element-shape":{outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}},children:y.jsx(r9,{isVisible:e.hovered===!0,align:"start",position:o,children:y.jsx(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:n.map(a=>y.jsxs(at,{mt:2,size:"sm",lh:"xs",children:["- ",a]},a))})})})}function NZe({data:{hovered:e=!1},icon:r,onClick:n}){const o=g9(e,e?130:0)[0]&&e;return y.jsx(Rr,{initial:!1,animate:{scale:o?1.2:1,x:o?-1:0,y:o?-1:0},whileHover:{scale:1.4,x:-3,y:-1},className:"likec4-compound-navigation compound-action",whileTap:{scale:1},onClick:nn,children:y.jsx(lr,{className:Ge("nodrag nopan",jJ({delay:e&&!o}),i2({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(bi,{stroke:2})})})}const Rte=e=>{const{enableNavigateTo:r}=sr(),n=Nt(),{navigateTo:o}=e.data;return o&&r?y.jsx(NZe,{onClick:a=>{a.stopPropagation(),n.navigateTo(o,e.id)},...e}):null},zte=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4,withinPortal:!1});function q2({fqn:e}){const r=Nt();return y.jsx(zte,{label:"Browse relationships",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),r.openRelationshipsBrowser(e)},children:y.jsx(s0,{stroke:2,style:{width:"72%",height:"72%"}})})})}function H2(e){const{onOpenSource:r}=gm();return r?y.jsx(zte,{label:"Open source",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),e.elementId?r?.({element:e.elementId}):e.deploymentId&&r?.({deployment:e.deploymentId})},children:y.jsx(dm,{stroke:1.8,style:{width:"70%"}})})}):null}function Tte(){const e=S.useContext(Sy);e||console.error("No LikeC4ModelContext found");const r=e?.$styles??XP.DEFAULT,[n,o]=S.useState(r);return S.useEffect(()=>{o(a=>a.equals(r)?a:r)},[r]),n}const jte=["primary","secondary","muted"];function U2({elementColor:e,elementOpacity:r,onColorPreview:n,isOpacityEditable:o=!1,onChange:a,...i}){const{theme:l}=Tte();return y.jsxs(br,{clickOutsideEvents:["pointerdown","mousedown","click"],position:"right-end",offset:2,withinPortal:!1,...i,children:[y.jsx(kd,{children:y.jsx(Vn,{variant:"subtle",color:"gray",size:"compact-xs",px:3,children:y.jsx(gy,{color:l.colors[e].elements.fill,size:14,withShadow:!0,style:{color:"#fff",cursor:"pointer"}})})}),y.jsxs(Qs,{p:"xs",children:[y.jsx(PZe,{theme:l,elementColor:e,onColorPreview:n,onChange:s=>a({color:s})}),o&&y.jsxs(y.Fragment,{children:[y.jsx(qS,{h:"xs"}),y.jsx(sp,{label:"opacity",labelPosition:"left"}),y.jsx(qS,{h:"xs"}),y.jsx(BZe,{elementOpacity:r,onOpacityChange:s=>{a({opacity:s})}})]})]})]})}function PZe({theme:e,elementColor:r,onColorPreview:n,onChange:o}){const a=l=>s=>{s.stopPropagation(),n(null),r!==l&&o(l)},i=l9(e.colors).filter(l=>!jte.includes(l));return y.jsx(Lo,{gap:2,onMouseLeave:()=>n(null),children:y.jsxs(dp,{openDelay:1e3,closeDelay:300,children:[y.jsx(Js,{maw:120,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:jte.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,withinPortal:!1,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(gy,{color:e.colors[l].elements.fill,size:18,withShadow:!0,onMouseEnter:()=>n(l),onClick:a(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(OW,{style:{width:$e(10),height:$e(10)}})})},l))}),y.jsx(Js,{mt:"sm",maw:110,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:i.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(gy,{color:e.colors[l].elements.fill,size:18,onMouseEnter:()=>n(l),onClick:a(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(OW,{style:{width:$e(10),height:$e(10)}})})},l))})]})})}function BZe({elementOpacity:e=100,onOpacityChange:r}){const[n,o]=S.useState(e);return t6e(()=>{o(e)},[e]),y.jsx(VS,{size:"sm",color:"dark",value:n,onChange:o,onChangeEnd:r})}const IZe=fe({color:"mantine.colors.dimmed",fontSize:"10px",fontWeight:600,maxWidth:"220px",cursor:"default",userSelect:"all",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap"}),OZe=()=>pi(e=>e.xynodes.filter(r=>r.selected).length);function W2({title:e,children:r,nodeProps:n,...o}){const a=OZe(),{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]=g9(c,d);return u?y.jsx(r9,{isVisible:!l,offset:4,...o,children:y.jsx(Af,{className:Ge("nodrag","nopan"),px:5,pb:8,pt:4,radius:"sm",shadow:"xl",onDoubleClickCapture:nn,onPointerDown:nn,onClick:nn,onDoubleClick:nn,withBorder:!0,children:y.jsxs(Lo,{gap:"6px",children:[y.jsx(Se,{px:"4px",children:y.jsx(at,{className:IZe,children:e})}),y.jsx(en,{gap:4,children:r})]})})}):null}function G2(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 LZe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{style:o,modelFqn:a}}=e,{elementColor:i,onColorPreview:l,onChange:s}=G2(a,e),c=o?.opacity??100;return y.jsxs(W2,{nodeProps:e,title:a,align:"start",children:[y.jsx(U2,{elementColor:i,onColorPreview:l,isOpacityEditable:!0,elementOpacity:c,onChange:s,position:"left-start"}),y.jsx(Ate,{elementBorderStyle:o?.border??(c<99?"dashed":"none"),onChange:s}),r&&y.jsx(H2,{elementId:a}),n&&y.jsx(q2,{fqn:a})]})}function FZe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{deploymentFqn:o,style:a,modelFqn:i}}=e,{elementColor:l,onColorPreview:s,onChange:c}=G2(o,e);return y.jsxs(W2,{nodeProps:e,title:o,align:"start",children:[y.jsx(U2,{elementColor:l,onColorPreview:s,isOpacityEditable:!0,elementOpacity:a?.opacity,onChange:c,position:"left-start"}),y.jsx(Ate,{elementBorderStyle:a?.border,onChange:c}),r&&y.jsx(H2,{deploymentId:o}),n&&i&&y.jsx(q2,{fqn:i})]})}function Ate({elementBorderStyle:e="dashed",onChange:r}){const[n,o]=S.useState(e);return S.useEffect(()=>{o(e)},[e]),y.jsx(Se,{children:y.jsx(Of,{size:"xs",fullWidth:!0,withItemsBorders:!1,value:n,onChange: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 VZe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,modelFqn:a}}=e,{elementColor:i,onColorPreview:l,onChange:s}=G2(a,e);return y.jsxs(W2,{nodeProps:e,title:a,align:"start",children:[y.jsx(Dte,{elementShape:o,onChange:s}),y.jsx(U2,{elementColor:i,onColorPreview:l,onChange:s,position:"right-end"}),r&&y.jsx(H2,{elementId:a}),n&&y.jsx(q2,{fqn:a})]})}function qZe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,deploymentFqn:a,modelFqn:i}}=e,{elementColor:l,onColorPreview:s,onChange:c}=G2(a,e);return y.jsxs(W2,{nodeProps:e,title:a,align:"start",children:[y.jsx(Dte,{elementShape:o,onChange:c}),y.jsx(U2,{elementColor:l,onColorPreview:s,onChange:c,position:"right-end"}),r&&y.jsx(H2,{deploymentId:a}),n&&i&&y.jsx(q2,{fqn:i})]})}function Dte({elementShape:e,onChange:r}){return y.jsxs(tn,{openDelay:300,closeDelay:450,floatingStrategy:"fixed",closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],closeOnEscape:!0,closeOnItemClick:!1,position:"top-start",offset:2,styles:{item:{padding:"calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-xs)"}},withinPortal:!1,children:[y.jsx(w3,{children:y.jsx(Vn,{variant:"light",color:"gray",size:"compact-xs",rightSection:y.jsx(tR,{size:12}),children:e})}),y.jsx(vy,{onDoubleClick:nn,onClick:nn,children:n0e.map(n=>y.jsx(by,{fz:12,fw:500,value:n,rightSection:e===n?y.jsx(dQ,{size:12}):void 0,onClick:o=>{o.stopPropagation(),r({shape:n})},children:n},n))})]})}const HZe=[Ue.Top,Ue.Right,Ue.Bottom,Ue.Left],y0=S.memo(()=>y.jsx(y.Fragment,{children:HZe.map(e=>y.jsxs(S.Fragment,{children:[y.jsx(Oo,{type:"source",position:e,className:"likec4-node-handle-center"}),y.jsx(Oo,{type:"target",position:e,className:"likec4-node-handle-center"})]},e))}));function OR(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(oR,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function Mte(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(AJ,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function UZe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:a}=sr();return y.jsxs(um,{nodeProps:e,children:[a&&y.jsx(Sm,{nodeProps:e}),y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx($te,{...e}),n&&y.jsx(OR,{...e}),!o&&y.jsx(VZe,{...e}),y.jsx(y0,{})]})}function WZe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:a}=sr();return y.jsxs(um,{nodeProps:e,children:[a&&y.jsx(Sm,{nodeProps:e}),y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(MZe,{...e}),n&&y.jsx(OR,{...e}),!o&&y.jsx(qZe,{...e}),y.jsx(y0,{})]})}const LR=fe({outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}),FR=e=>e.data.drifts&&e.data.drifts.length>0;function GZe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),a=o&&FR(e);return y.jsxs(c0,{className:a?LR:void 0,nodeProps:e,children:[o&&y.jsx(Sm,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(Rte,{...e}),r&&y.jsx(Mte,{...e}),!n&&y.jsx(LZe,{...e}),y.jsx(y0,{})]})}function YZe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),a=o&&FR(e);return y.jsxs(c0,{className:a?LR:void 0,nodeProps:e,children:[o&&y.jsx(Sm,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(Rte,{...e}),r&&y.jsx(Mte,{...e}),!n&&y.jsx(FZe,{...e}),y.jsx(y0,{})]})}function XZe(e){const{enableCompareWithLatest:r}=sr(),n=r&&FR(e);return y.jsxs(c0,{className:n?LR:void 0,nodeProps:e,children:[r&&y.jsx(Sm,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(y0,{})]})}const ZZe={left:Ue.Left,right:Ue.Right,top:Ue.Top,bottom:Ue.Bottom},KZe=({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:ZZe[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)"}})]}),QZe=e=>Kn(e.modelFqn);function JZe(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(um,{nodeProps:e,children:[n&&y.jsx(Sm,{nodeProps:e}),y.jsx(pm,{...e}),y.jsx(dl,{...e}),QZe(o)&&y.jsxs(y.Fragment,{children:[y.jsx($te,{...e,data:o}),r&&y.jsx(OR,{id:a,data:o})]})]}),c.map(d=>y.jsx(KZe,{port:d,data:e.data},d.id))]})}function eKe(e){return y.jsx(hr,{"data-likec4-color":e.data.color,css:{width:"100%",height:"100%",border:"default",rounded:"sm",borderWidth:1,"--_color":{base:"var(--likec4-palette-stroke)",_dark:"[color-mix(in oklab, var(--likec4-palette-hiContrast) 40%, var(--likec4-palette-fill))]"},borderColor:"[var(--_color)/30]",backgroundColor:"var(--likec4-palette-fill)/15",pointerEvents:"none",paddingLeft:"2",paddingTop:"0.5",fontSize:"xs",fontWeight:"bold",letterSpacing:".75px",color:"[var(--_color)/75]"},children:"PARALLEL"})}const jp={ElementNode:UZe,DeploymentNode:WZe,CompoundElementNode:GZe,CompoundDeploymentNode:YZe,ViewGroupNode:XZe,SequenceActorNode:JZe,SequenceParallelArea:eKe},Nte={RelationshipEdge:Cte,SequenceStepEdge:AZe};var Pte=Symbol.for("immer-nothing"),Bte=Symbol.for("immer-draftable"),qo=Symbol.for("immer-state");function hl(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Aa=Object,Em=Aa.getPrototypeOf,Y2="constructor",X2="prototype",VR="configurable",Z2="enumerable",K2="writable",v0="value",Id=e=>!!e&&!!e[qo];function pc(e){return e?Ote(e)||J2(e)||!!e[Bte]||!!e[Y2]?.[Bte]||e4(e)||t4(e):!1}var tKe=Aa[X2][Y2].toString(),Ite=new WeakMap;function Ote(e){if(!e||!HR(e))return!1;const r=Em(e);if(r===null||r===Aa[X2])return!0;const n=Aa.hasOwnProperty.call(r,Y2)&&r[Y2];if(n===Object)return!0;if(!Cm(n))return!1;let o=Ite.get(n);return o===void 0&&(o=Function.toString.call(n),Ite.set(n,o)),o===tKe}function b0(e,r,n=!0){x0(e)===0?(n?Reflect.ownKeys(e):Aa.keys(e)).forEach(o=>{r(o,e[o],e)}):e.forEach((o,a)=>r(a,o,e))}function x0(e){const r=e[qo];return r?r.type_:J2(e)?1:e4(e)?2:t4(e)?3:0}var Lte=(e,r,n=x0(e))=>n===2?e.has(r):Aa[X2].hasOwnProperty.call(e,r),qR=(e,r,n=x0(e))=>n===2?e.get(r):e[r],Q2=(e,r,n,o=x0(e))=>{o===2?e.set(r,n):o===3?e.add(n):e[r]=n};function rKe(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}var J2=Array.isArray,e4=e=>e instanceof Map,t4=e=>e instanceof Set,HR=e=>typeof e=="object",Cm=e=>typeof e=="function",UR=e=>typeof e=="boolean",hc=e=>e.copy_||e.base_,WR=e=>e.modified_?e.copy_:e.base_;function GR(e,r){if(e4(e))return new Map(e);if(t4(e))return new Set(e);if(J2(e))return Array[X2].slice.call(e);const n=Ote(e);if(r===!0||r==="class_only"&&!n){const o=Aa.getOwnPropertyDescriptors(e);delete o[qo];let a=Reflect.ownKeys(o);for(let i=0;i1&&Aa.defineProperties(e,{set:r4,add:r4,clear:r4,delete:r4}),Aa.freeze(e),r&&b0(e,(n,o)=>{YR(o,!0)},!1)),e}function nKe(){hl(2)}var r4={[v0]:nKe};function n4(e){return e===null||!HR(e)?!0:Aa.isFrozen(e)}var o4="MapSet",XR="Patches",Fte={};function $m(e){const r=Fte[e];return r||hl(0,e),r}var oKe=e=>!!Fte[e],w0,Vte=()=>w0,aKe=(e,r)=>({drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:oKe(o4)?$m(o4):void 0});function qte(e,r){r&&(e.patchPlugin_=$m(XR),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function ZR(e){KR(e),e.drafts_.forEach(iKe),e.drafts_=null}function KR(e){e===w0&&(w0=e.parent_)}var Hte=e=>w0=aKe(w0,e);function iKe(e){const r=e[qo];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function Ute(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];if(e!==void 0&&e!==n){n[qo].modified_&&(ZR(r),hl(4)),pc(e)&&(e=Wte(r,e));const{patchPlugin_:o}=r;o&&o.generateReplacementPatches_(n[qo].base_,e,r)}else e=Wte(r,n);return lKe(r,e,!0),ZR(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==Pte?e:void 0}function Wte(e,r){if(n4(r))return r;const n=r[qo];if(!n)return QR(r,e.handledSet_,e);if(!a4(n,e))return r;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:o}=n;if(o)for(;o.length>0;)o.pop()(e);Xte(n,e)}return n.copy_}function lKe(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&YR(r,n)}function Gte(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var a4=(e,r)=>e.scope_===r,sKe=[];function Yte(e,r,n,o){const a=hc(e),i=e.type_;if(o!==void 0&&qR(a,o,i)===r){Q2(a,o,n,i);return}if(!e.draftLocations_){const s=e.draftLocations_=new Map;b0(a,(c,d)=>{if(Id(d)){const u=s.get(d)||[];u.push(c),s.set(d,u)}})}const l=e.draftLocations_.get(r)??sKe;for(const s of l)Q2(a,s,n,i)}function cKe(e,r,n){e.callbacks_.push(function(o){const a=r;if(!a||!a4(a,o))return;o.mapSetPlugin_?.fixSetContents(a);const i=WR(a);Yte(e,a.draft_??a,i,n),Xte(a,o)})}function Xte(e,r){if(e.modified_&&!e.finalized_&&(e.type_===3||(e.assigned_?.size??0)>0)){const{patchPlugin_:n}=r;if(n){const o=n.getPath(e);o&&n.generatePatches_(e,o,r)}Gte(e)}}function dKe(e,r,n){const{scope_:o}=e;if(Id(n)){const a=n[qo];a4(a,o)&&a.callbacks_.push(function(){i4(e);const i=WR(a);Yte(e,n,i,r)})}else pc(n)&&e.callbacks_.push(function(){const a=hc(e);qR(a,r,e.type_)===n&&o.drafts_.length>1&&(e.assigned_.get(r)??!1)===!0&&e.copy_&&QR(qR(e.copy_,r,e.type_),o.handledSet_,o)})}function QR(e,r,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Id(e)||r.has(e)||!pc(e)||n4(e)||(r.add(e),b0(e,(o,a)=>{if(Id(a)){const i=a[qo];if(a4(i,n)){const l=WR(i);Q2(e,o,l,e.type_),Gte(i)}}else pc(a)&&QR(a,r,n)})),e}function uKe(e,r){const n=J2(e),o={type_:n?1:0,scope_:r?r.scope_:Vte(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let a=o,i=JR;n&&(a=[o],i=k0);const{revoke:l,proxy:s}=Proxy.revocable(a,i);return o.draft_=s,o.revoke_=l,[s,o]}var JR={get(e,r){if(r===qo)return e;const n=hc(e);if(!Lte(n,r,e.type_))return pKe(e,n,r);const o=n[r];if(e.finalized_||!pc(o))return o;if(o===ez(e.base_,r)){i4(e);const a=e.type_===1?+r:r,i=rz(e.scope_,o,e,a);return e.copy_[a]=i}return o},has(e,r){return r in hc(e)},ownKeys(e){return Reflect.ownKeys(hc(e))},set(e,r,n){const o=Zte(hc(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const a=ez(hc(e),r),i=a?.[qo];if(i&&i.base_===n)return e.copy_[r]=n,e.assigned_.set(r,!1),!0;if(rKe(n,a)&&(n!==void 0||Lte(e.base_,r,e.type_)))return!0;i4(e),tz(e)}return e.copy_[r]===n&&(n!==void 0||r in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[r])||(e.copy_[r]=n,e.assigned_.set(r,!0),dKe(e,r,n)),!0},deleteProperty(e,r){return i4(e),ez(e.base_,r)!==void 0||r in e.base_?(e.assigned_.set(r,!1),tz(e)):e.assigned_.delete(r),e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=hc(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{[K2]:!0,[VR]:e.type_!==1||r!=="length",[Z2]:o[Z2],[v0]:n[r]}},defineProperty(){hl(11)},getPrototypeOf(e){return Em(e.base_)},setPrototypeOf(){hl(12)}},k0={};b0(JR,(e,r)=>{k0[e]=function(){const n=arguments;return n[0]=n[0][0],r.apply(this,n)}}),k0.deleteProperty=function(e,r){return k0.set.call(this,e,r,void 0)},k0.set=function(e,r,n){return JR.set.call(this,e[0],r,n,e[0])};function ez(e,r){const n=e[qo];return(n?hc(n):e)[r]}function pKe(e,r,n){const o=Zte(r,n);return o?v0 in o?o[v0]:o.get?.call(e.draft_):void 0}function Zte(e,r){if(!(r in e))return;let n=Em(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=Em(n)}}function tz(e){e.modified_||(e.modified_=!0,e.parent_&&tz(e.parent_))}function i4(e){e.copy_||(e.assigned_=new Map,e.copy_=GR(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var hKe=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,o,a)=>{if(Cm(n)&&!Cm(o)){const l=o;o=n;const s=this;return function(c=l,...d){return s.produce(c,u=>o.call(this,u,...d))}}Cm(o)||hl(6),a!==void 0&&!Cm(a)&&hl(7);let i;if(pc(n)){const l=Hte(this),s=rz(l,n,void 0);let c=!0;try{i=o(s),c=!1}finally{c?ZR(l):KR(l)}return qte(l,a),Ute(i,l)}else if(!n||!HR(n)){if(i=o(n),i===void 0&&(i=n),i===Pte&&(i=void 0),this.autoFreeze_&&YR(i,!0),a){const l=[],s=[];$m(XR).generateReplacementPatches_(n,i,{patches_:l,inversePatches_:s}),a(l,s)}return i}else hl(1,n)},this.produceWithPatches=(n,o)=>{if(Cm(n))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]},UR(r?.autoFreeze)&&this.setAutoFreeze(r.autoFreeze),UR(r?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),UR(r?.useStrictIteration)&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){pc(r)||hl(8),Id(r)&&(r=fKe(r));const n=Hte(this),o=rz(n,r,void 0);return o[qo].isManual_=!0,KR(n),o}finishDraft(r,n){const o=r&&r[qo];(!o||!o.isManual_)&&hl(9);const{scope_:a}=o;return qte(a,n),Ute(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=$m(XR).applyPatches_;return Id(r)?a(r,n):this.produce(r,i=>a(i,n))}};function rz(e,r,n,o){const[a,i]=e4(r)?$m(o4).proxyMap_(r,n):t4(r)?$m(o4).proxySet_(r,n):uKe(r,n);return(n?.scope_??Vte()).drafts_.push(a),i.callbacks_=n?.callbacks_??[],i.key_=o,n&&o!==void 0?cKe(n,i,o):i.callbacks_.push(function(l){l.mapSetPlugin_?.fixSetContents(i);const{patchPlugin_:s}=l;i.modified_&&s&&s.generatePatches_(i,[],l)}),a}function fKe(e){return Id(e)||hl(10,e),Kte(e)}function Kte(e){if(!pc(e)||n4(e))return e;const r=e[qo];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=GR(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=GR(e,!0);return b0(n,(a,i)=>{Q2(n,a,Kte(i))},o),r&&(r.finalized_=!1),n}var nz=new hKe,is=nz.produce,Qte=nz.setAutoFreeze.bind(nz),_0=e=>e;class Rm{static LeftPadding=42;static RightPadding=42;static TopPadding=60;static BottomPadding=42;id;minX=1/0;minY=1/0;maxX=-1/0;maxY=-1/0;initialX;initialY;get positionAbsolute(){return{x:this.minX,y:this.minY}}get initialPositionAbsolute(){return{x:this.initialX,y:this.initialY}}set positionAbsolute(r){const n=Math.round(r.x),o=Math.round(r.y);this.maxX+=n-this.minX,this.maxY+=o-this.minY,this.minX=n,this.minY=o}get dimensions(){return{width:Math.round(this.maxX-this.minX),height:Math.round(this.maxY-this.minY)}}get diff(){return{x:Math.round(this.positionAbsolute.x-this.initialX),y:Math.round(this.positionAbsolute.y-this.initialY)}}get isMoved(){return this.diff.x!==0||this.diff.y!==0}get position(){const r=this.positionAbsolute;if(!this.parent)return r;const n=this.parent.positionAbsolute;return{x:r.x-n.x,y:r.y-n.y}}constructor(r,n=null){this.id=r.id,this.positionAbsolute=n?{x:r.position.x+n.minX,y:r.position.y+n.minY}:r.position;const{width:o,height: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 oz extends Rm{constructor(r,n=null){super(r,n),this.parent=n}children=[]}class mKe extends Rm{constructor(r,n=null){super(r,n),this.parent=n}}function gKe(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:is(a,s=>{s.data.points=e.data.points,s.data.controlPoints=n,s.data.labelBBox=e.data.labelBBox})}:{id:e.id,type:"replace",item:is(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 yKe(e,r,n,o){const a=e.data.controlPoints??c2(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:is(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=ti(k/c**2,{min:-1,max:1});return x.add(g.multiply(C)).round().toObject()};return{id:e.id,type:"replace",item:is(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 Jte(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 R=new Set;for(const T of $.values()){R.add(T.id);for(const A of s.get(T.id))R.add(A)}return R});if(xn(r,2)){const _=Jr(r,Mq($=>[...s.get($)]),yw(),$=>e$e(r,$));He(xn(_,1),"All editing nodes are nested within each other"),r=_}const c=new Set(r.flatMap(_=>l.get(_))),d=[...o.values()].flatMap(_=>_.parentId?[]:{xynode:_,parent:null});for(;d.length>0;){const{xynode:_,parent:$}=d.shift();if(!r.includes(_.id)&&c.has(_.id)){const R=new oz(_,$);i.set(_.id,R),n.get(_.id)?.forEach(T=>{d.push({xynode:T,parent:R})});continue}i.set(_.id,new mKe(_,$))}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),R=g.has(_.target);if($&&R){let T=i.get(_.source)??i.get(_.target)??f(_.source)??f(_.target);T&&p.set(_,gKe(_,T));continue}if($!==R){const T=f($?_.source:_.target);if(!T)continue;const[A,z]=Jr([_.source,_.target],un(P=>mt(o.get(P),`Node ${P} not found`)),un(r$)),[j,I]=$?[A,z]:[z,A];p.set(_,yKe(_,T,j,I));continue}}function v(_){for(const $ of _){if(!($ instanceof oz))continue;v($.children);const R={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};for(const T of $.children)R.minX=Math.min(R.minX,T.minX),R.minY=Math.min(R.minY,T.minY),R.maxX=Math.max(R.maxX,T.maxX),R.maxY=Math.max(R.maxY,T.maxY);$.minX=R.minX-Rm.LeftPadding,$.minY=R.minY-Rm.TopPadding,$.maxX=R.maxX+Rm.RightPadding,$.maxY=R.maxY+Rm.BottomPadding}}const w=[...p.values()];function x(){v(u);const _=u.reduce((z,j)=>(z.push({id:j.id,type:"position",dragging:!1,position:j.position,positionAbsolute:j.positionAbsolute}),j instanceof oz&&z.push({id:j.id,type:"dimensions",setAttributes:!0,dimensions:j.dimensions}),z),[]),{edgeLookup:$,triggerNodeChanges:R,triggerEdgeChanges:T}=e.getState();R(_);const A=w.map(z=>z($));A.length>0&&T(A)}let k=null;function C(){u.length!==0&&(k??=requestAnimationFrame(()=>{k=null;for(const _ of r){const $=i.get(_);if(!$){console.warn(`Rect not found for id ${_}`);continue}const R=o.get(_);if(!R){console.warn(`Node not found for id ${_}`);continue}$.positionAbsolute=R.internals.positionAbsolute}x()}))}return{rects:i,onMove:C,updateXYFlow:x}}function vKe(){const e=JC(),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()),ep(s=>s.dragging===!0||s.id===a.id||s.selected===!0),un(s=>s.id));xn(l,1)&&(n.current=Jte(e,l))},onNodeDrag:o=>{n.current?.onMove()},onNodeDragStop:o=>{const a=n.current?YO(n.current.rects.values(),i=>i.isMoved):!1;r.stopEditing(a),n.current=void 0}}),[e,r])}const bKe={relationship:Nte.RelationshipEdge,"seq-step":Nte.SequenceStepEdge},Od={element:sc(jp.ElementNode),deployment:sc(jp.DeploymentNode),"compound-element":sc(jp.CompoundElementNode),"compound-deployment":sc(jp.CompoundDeploymentNode),"view-group":sc(jp.ViewGroupNode),"seq-actor":sc(jp.SequenceActorNode),"seq-parallel":sc(jp.SequenceParallelArea)};function xKe(e){return!e||tp(e)?Od:{element:e.element??Od.element,deployment:e.deployment??Od.deployment,"compound-element":e.compoundElement??Od["compound-element"],"compound-deployment":e.compoundDeployment??Od["compound-deployment"],"view-group":e.viewGroup??Od["view-group"],"seq-actor":e.seqActor??Od["seq-actor"],"seq-parallel":e.seqParallel??Od["seq-parallel"]}}const wKe=({context:e,children:r})=>{const{enableReadOnly:n}=O2(e),o=n||r.editor?.getSnapshot().context.editing!=="edge";return{enableReadOnly:n,initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges,pannable:e.pannable,zoomable:e.zoomable,nodesDraggable:!n&&e.nodesDraggable,nodesSelectable:e.nodesSelectable&&o,fitViewPadding:e.fitViewPadding,enableFitView:e.features.enableFitView,...!e.features.enableFitView&&{viewport:{x:-e.view.bounds.x,y:-e.view.bounds.y,zoom:1}}}},kKe=(e,r)=>e.enableReadOnly===r.enableReadOnly&&e.initialized===r.initialized&&e.pannable===r.pannable&&e.zoomable===r.zoomable&&e.nodesDraggable===r.nodesDraggable&&e.nodesSelectable===r.nodesSelectable&&e.enableFitView===r.enableFitView&&Ir(e.fitViewPadding,r.fitViewPadding)&&Ir(e.nodes,r.nodes)&&Ir(e.edges,r.edges)&&Ir(e.viewport??null,r.viewport??null);function _Ke({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}=wE(wKe,kKe);const{onNodeContextMenu:g,onCanvasContextMenu:v,onEdgeContextMenu:w,onNodeClick:x,onEdgeClick:k,onCanvasClick:C,onCanvasDblClick:_}=gm(),$=pNe(),R=vKe(),T=fNe(),A=CH(()=>{T.set(!0)},$?120:400),z=bf(()=>{A.clear(),T.set(!1)},$?350:200),j=it(H=>{H&&(T.get()||A.start(),z())}),I=it((H,M)=>{A.clear(),a.send({type:"xyflow.viewportMoved",viewport:M,manually:!!H})}),P=it(()=>{a.send({type:"xyflow.resized"})}),L=SL(()=>xKe(o),[o],mQ);return $p(()=>{console.warn("renderNodes changed - this might degrade performance")},[L]),y.jsx(s$,{nodes:s,edges:c,className:Ge(l?"initialized":"not-initialized"),nodeTypes:L,edgeTypes:bKe,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:j,onMoveEnd:I,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&&R,...f,...r,children:n})}function SKe(e,r){try{return Qte(!1),EKe(e,r)}finally{Qte(!0)}}const ere=e=>ty(e.parent);function EKe(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,$Ke({latest:u,manual:p})]:(o.add(u.id),[u.id,az(u)])}));if(o.size===l.size)return is(r,u=>{u._layout="manual",u.nodes=_0([...l.values()]),u.edges=_0(r.edges.map(az)),delete u.drifts});n.size>0&&CKe(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 RKe({latest:u,manual:g});if(i(u))return az(u);const v=l.get(u.source),w=l.get(u.target);return zKe(u,v,w)}),d=ko.merge(...s.filter(ere));return is(r,u=>{u._layout="manual",u.nodes=_0(s),u.edges=_0(c),u.bounds=d,delete u.drifts})}const zm={Left:42,Right:42,Top:60,Bottom:42};function CKe(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-zm.Left,o.y=i.y-zm.Top,o.width=i.width+zm.Left+zm.Right,o.height=i.height+zm.Top+zm.Bottom,o}for(const n of e.values())!ere(n)||n.children.length===0||r(n.id)}function $Ke({latest:e,manual:r}){return He(r.id===e.id,"Node IDs do not match"),is(e,n=>{n.x=r.x,n.y=r.y,n.drifts=null})}function RKe(e){const{manual:r,latest:n}=e;return is(n,o=>{r.controlPoints?o.controlPoints=r.controlPoints:delete o.controlPoints,o.points=_0(r.points),r.labelBBox&&(o.labelBBox=n.labelBBox??r.labelBBox,o.labelBBox.x=r.labelBBox.x,o.labelBBox.y=r.labelBBox.y),o.drifts=null})}function az(e){if("drifts"in e&&e.drifts!==null){const r={...e};return r.drifts=null,r}return e}function zKe(e,r,n){const o=TKe(r,n),a=o[0];return is(e,i=>{i.controlPoints=o,e.labelBBox&&(i.labelBBox.x=a.x,i.labelBBox.y=a.y),delete i.drifts})}function tre(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 TKe(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=tre(e,n,a),l=tre(r,o,a.multiply(-1)).subtract(i);return[i.add(l.multiply(.4)).round().toObject(),i.add(l.multiply(.6)).round().toObject()]}const jKe=S.createContext(null);function rre(){return S.useContext(jKe)}function AKe(e){const r=rre(),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:SKe(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 Aee.provide({actors:{applyLatest:zy(n),executeChange:zy(o)}})}function nre(e){return{ref:e,get actor(){return e.current},overlays(){return mt(e.current.getSnapshot().children.overlays,"Overlays actor not found")},send:r=>e.current.send(r),navigateTo:(r,n,o)=>{e.current.send({type:"navigate.to",viewId:r,...n&&{fromNode:n},...o&&{focusOnElement:o}})},navigate:r=>{e.current.send({type:`navigate.${r}`})},fitDiagram:(r=350)=>{e.current.send({type:"xyflow.fitDiagram",duration:r})},openRelationshipsBrowser:r=>{e.current.send({type:"open.relationshipsBrowser",fqn:r})},openSource:r=>{e.current.send({type:"open.source",...r})},openElementDetails:(r,n)=>{e.current.send({type:"open.elementDetails",fqn:r,fromNode:n})},openRelationshipDetails:(...r)=>{r.length===1?e.current.send({type:"open.relationshipDetails",params:{edgeId:r[0]}}):e.current.send({type:"open.relationshipDetails",params:{source:r[0],target:r[1]}})},updateNodeData:(r,n)=>{e.current.send({type:"update.nodeData",nodeId:r,data:n})},updateEdgeData:(r,n)=>{e.current.send({type:"update.edgeData",edgeId:r,data:n})},startEditing:r=>{const n=zr(e.current.system).editorActorRef;He(n,"No editor actor found in diagram actor system"),n.send({type:"edit.start",subject:r})},stopEditing:(r=!1)=>{const n=zr(e.current.system).editorActorRef;He(n,"No editor actor found in diagram actor system"),n.send({type:"edit.finish",wasChanged:r})},undoEditing:()=>{const r=zr(e.current.system).editorActorRef;He(r,"No editor actor found in diagram actor system");const n=r.getSnapshot().context.history.length>0;return n&&r.send({type:"undo"}),n},align:r=>{e.current.send({type:"layout.align",mode:r})},resetEdgeControlPoints:()=>{e.current.send({type:"layout.resetEdgeControlPoints"})},focusNode:r=>{e.current.send({type:"focus.node",nodeId:r})},focusOnElement:r=>{const n=e.current.getSnapshot().context,o=gee(n.xynodes,r);o&&e.current.send({type:"focus.node",nodeId:o.id,autoUnfocus:!0})},get currentView(){return e.current.getSnapshot().context.view},getContext:()=>e.current.getSnapshot().context,findDiagramNode:r=>ym(e.current.getSnapshot().context,r),findEdge:r=>e.current.getSnapshot().context.xyedges.find(n=>n.data.id===r)??null,findDiagramEdge:r=>yR(e.current.getSnapshot().context,r),startWalkthrough:()=>{e.current.send({type:"walkthrough.start"})},walkthroughStep:(r="next")=>{e.current.send({type:"walkthrough.step",direction:r})},stopWalkthrough:()=>{e.current.send({type:"walkthrough.end"})},toggleFeature:(r,n)=>{e.current.send({type:"toggle.feature",feature:r,...n!==void 0&&{forceValue:n}})},highlightNotation:(r,n)=>{e.current.send({type:"notations.highlight",notation:r,...n&&{kind:n}})},unhighlightNotation:()=>{e.current.send({type:"notations.unhighlight"})},openSearch:r=>{e.current.send({type:"open.search",...r&&{search:r}})},triggerChange:r=>{e.current.send({type:"trigger.change",change:r})},switchDynamicViewVariant:r=>{e.current.send({type:"switch.dynamicViewVariant",variant:r})}}}function iz(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=B2(e.xynodes,r.xynodes),i=o?ER(e.xyedges,r.xyedges):r.xyedges;return{xynodes:a,xyedges:i,view:n}}function DKe(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 MKe({context:e,event:r}){return ht(r,"update.nodeData"),{xynodes:e.xynodes.map(n=>{if(n.id!==r.nodeId)return n;const o=Fq(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function NKe({context:e,event:r}){return ht(r,"update.edgeData"),{xyedges:e.xyedges.map(n=>{if(n.id!==r.edgeId)return n;const o=Fq(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function ore(e,r,n){const o=_o(e),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 are(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(n$(n)),i=Qr(n$(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=ore(n,a,l),c=ore(o,i,l.multiply(-1)).subtract(s);return[s.add(c.multiply(.4)).round().toObject(),s.add(c.multiply(.6)).round().toObject()]}function PKe(e){const{view:r}=e,n=[],o=[],a=new Map,i=x8.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=Ou(e.where);l=p=>u({...Hq(p,["tags","kind"]),..."source"in p?{source:c(p.source)}:p,..."target"in p?{target:c(p.target)}:p})}catch(u){console.error("Error in where filter:",u)}const s="",c=u=>mt(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==w1;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?lc.Compound:lc.Element,style:{width:u.width,height:u.height},initialWidth:u.width,initialHeight:u.height,hidden:u.kind!==w1&&!l(u),...p&&{parentId:s+p.id}},w={viewId:r.id,id:u.id,title:u.title,color:u.color,shape:u.shape,style:u.style,depth:u.depth??0,icon:u.icon??"none",tags:u.tags??null,x:u.x,y:u.y,drifts:u.drifts??null},x={viewId:r.id,id:u.id,title:u.title,technology:u.technology??null,description:u.description??null,height:u.height,width:u.width,level:u.level,color:u.color,shape:u.shape,style:u.style,icon:u.icon??null,tags:u.tags,x:u.x,y:u.y,isMultiple:u.style?.multiple??!1,drifts:u.drifts??null};if(u.kind===w1){n.push({...v,type:"view-group",data:{isViewGroup:!0,...w},dragHandle:".likec4-compound-title-container"});continue}const k=u.modelRef??null,C=u.deploymentRef??null;if(!k&&!C)throw console.error("Invalid node",u),new Error("Element should have either modelRef or deploymentRef");const _={navigateTo:u.navigateTo??null};switch(!0){case(f&&!!C):{n.push({...v,type:"compound-deployment",data:{...w,..._,deploymentFqn:C,modelFqn:k}});break}case f:{He(!!k,"ModelRef expected"),n.push({...v,type:"compound-element",data:{...w,..._,modelFqn:k}});break}case!!C:{n.push({...v,type:"deployment",data:{...x,..._,deploymentFqn:C,modelFqn:k}});break}default:He(!!k,"ModelRef expected"),n.push({...v,type:"element",data:{...x,..._,modelFqn:k}})}}for(const u of r.edges){const p=u.source,f=u.target,g=s+u.id;if(!xn(u.points,2)){console.error("edge should have at least 2 points",u);continue}o.push({id:g,type:"relationship",source:s+p,target:s+f,zIndex:lc.Edge,hidden:!l(u),deletable:!1,data:{id:u.id,label:u.label,technology:u.technology,notes:u.notes??null,navigateTo:u.navigateTo,controlPoints:u.controlPoints??null,labelBBox:u.labelBBox??null,labelXY:null,points:u.points,color:u.color??"gray",line:u.line??"dashed",dir:u.dir??"forward",head:u.head??"normal",tail:u.tail??"none",astPath:u.astPath,drifts:u.drifts??null},interactionWidth:20})}return{bounds:r.bounds,xynodes:n,xyedges:o}}const ire={parallel:1,actor:10},l4={default:"gray",active:"amber"};function BKe(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(IKe(d,c(d.origin),e));for(const d of a)l.push(OKe(d,e));for(const d of r)l.push(LKe(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(FKe(d,u))}return{bounds:i,xynodes:l,xyedges:s}}function IKe({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 OKe({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:l4.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:ire.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 LKe({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:ire.actor,position:{x:r,y:n},width:o,initialWidth:o,height:a,initialHeight:a}}function FKe({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 lre({dynamicViewVariant:e,...r}){const n=r.view,o=n._type==="dynamic",{bounds:a,xynodes:i,xyedges:l}=o&&e==="sequence"?BKe(n):PKe(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 sre{}class Tm extends sre{constructor(r,n,o){super(),this.getEdgePosition=r,this.computePosition=n,this.propertyToEdit=o}alignTo;computeLayout(r){this.alignTo=this.getEdgePosition(r)}applyPosition(r){return{[this.propertyToEdit]:this.computePosition(this.alignTo,r)}}}class VKe extends sre{layout=new Map;axisPreset;get primaryAxisCoord(){return this.axisPreset.primaryAxisCoord}get secondaryAxisCoord(){return this.axisPreset.secondaryAxisCoord}get primaryAxisDimension(){return this.axisPreset.primaryAxisDimension}get secondaryAxisDimension(){return this.axisPreset.secondaryAxisDimension}constructor(r){super(),this.axisPreset=r==="Column"?{primaryAxisDimension:"width",secondaryAxisDimension:"height",primaryAxisCoord:"x",secondaryAxisCoord:"y"}:{primaryAxisDimension:"height",secondaryAxisDimension:"width",primaryAxisCoord:"y",secondaryAxisCoord:"x"}}applyPosition(r){return this.layout?.get(r.id)??{}}computeLayout(r){const n=Jr(r,gw(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}`),[Hq(i,["x","y"]),a]}),un(([o,a])=>Math.abs(o[this.secondaryAxisCoord]-a[this.secondaryAxisCoord])),mw((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 Tm(r=>Math.min(...r.map(n=>n.y)),(r,n)=>Math.floor(r),"y");case"Right":return new Tm(r=>Math.max(...r.map(n=>n.x+n.width)),(r,n)=>Math.floor(r-n.width),"x");case"Bottom":return new Tm(r=>Math.max(...r.map(n=>n.y+n.height)),(r,n)=>Math.floor(r-n.height),"y");case"Center":return new Tm(r=>Math.min(...r.map(n=>n.x+n.width/2)),(r,n)=>Math.floor(r-n.width/2),"x");case"Middle":return new Tm(r=>Math.min(...r.map(n=>n.y+n.height/2)),(r,n)=>Math.floor(r-n.height/2),"y")}}function cre(e){const{width:r,height:n}=_o(e);return{...e.internals.positionAbsolute,id:e.id,width:r,height:n}}function HKe(e){switch(e){case"Left":case"Right":case"Top":case"Bottom":case"Center":case"Middle":return qKe(e);case"Column":case"Row":return new VKe(e);default:Qo(e)}}const S0=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})})}),s4=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=Ws(a,l,s,xi,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})})}),E0=()=>Qe.createAction(({context:e})=>{const r=!!e.activeWalkthrough&&e.dynamicViewVariant==="sequence",{bounds:n,duration:o=450}=r?nGe({context:e}):tGe({context:e}),{width:a,height:i,panZoom:l,transform:s}=mt(e.xystore).getState(),c=Math.max(1,s[2]),d=Ws(n,a,i,xi,c,e.fitViewPadding);d.x=Math.round(d.x),d.y=Math.round(d.y);const u=o>0?{duration:o,interpolate:"smooth"}:void 0;l?.setViewport(d,u).catch(p=>{console.error("Error during fitFocusedBounds panZoom setViewport",{err:p})})}),lz=30,dre=e=>{const{delay:r=lz,...n}=e??{};return Qe.raise({type:"xyflow.setViewport",...n},{id:"fitDiagram",delay:r})},fc=()=>Qe.cancel("fitDiagram"),c4=e=>{const{delay:r=lz,...n}=e??{};return Qe.raise({type:"xyflow.fitDiagram",...n},{id:"fitDiagram",delay:r})},UKe=e=>Qe.raise(({context:r})=>({type:"update.view",view:r.view}),{delay:lz}),sz=e=>Qe.assign(({context:r})=>({viewportBefore:{wasChangedManually:r.viewportChangedManually,value:{...r.viewport}}})),cz=e=>Qe.enqueueActions(({enqueue:r,context:{viewportBefore:n}})=>{r(fc()),n?(r.assign({viewportChangedManually:n.wasChangedManually,viewportBefore:null}),e&&e.delay===0?r(S0({viewport:n.value,...e})):r(dre({viewport:n.value,...e}))):e&&e.delay===0?r(s4({...e})):r(c4({...e}))}),ure=()=>Qe.assign(({context:e})=>({toggledFeatures:{...e.toggledFeatures,enableCompareWithLatest:!1},viewportOnAutoLayout:null,viewportOnManualLayout:null})),WKe=()=>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=are(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})}}),Ap=()=>Qe.assign(({context:e,event:r})=>{ht(r,"xyflow.nodeClick");const{lastClickedNode:n}=e;return!n||n.id!==r.node.id?{lastClickedNode:{id:r.node.id,clicks:1,timestamp:Date.now()}}:{lastClickedNode:{id:n.id,clicks:n.clicks+1,timestamp:Date.now()}}}),d4=()=>Qe.assign(({event:e})=>{let r,n=!1;switch(e.type){case"xyflow.nodeClick":r=e.node.data.id;break;case"focus.node":r=e.nodeId,n=e.autoUnfocus===!0;break;default:throw new Error(`Unexpected event type: ${e.type} in action 'assign: focusedNode'`)}return{focusedNode:r,autoUnfocusTimer:n}}),jm=()=>Qe.assign(()=>({lastClickedNode:null})),pre=()=>Qe.assign(({event:e})=>(ht(e,"update.features"),{features:{...e.features}})),GKe=()=>Qe.assign(({event:e})=>(ht(e,"update.inputs"),{...e.inputs})),hre=e=>Qe.assign(({context:r,event:n})=>{let o;ht(n,"update.view"),o="xynodes"in n?n:lre({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where});const a=iz(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}),C0=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=DKe(e);n?r.assign(n):r.raise({type:"key.esc"})}),u4=()=>Qe.assign(({context:e})=>({xynodes:e.xynodes.map(tr.setDimmed(!1)),xyedges:e.xyedges.map(tr.setData({dimmed:!1,active:!1}))})),YKe=()=>Qe.assign(({event:e})=>(ht(e,"switch.dynamicViewVariant"),{dynamicViewVariant:e.variant})),XKe=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)}}),ZKe=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)}}),dz=()=>Qe.emit(()=>({type:"paneClick"})),fre=e=>Qe.emit(({event:r})=>e?{type:"openSource",params:e}:(ht(r,"open.source"),{type:"openSource",params:r})),KKe=()=>Qe.emit(({context:e})=>(He(e.xyflow,"XYFlow instance not found"),{type:"initialized",instance:e.xyflow})),Dp=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),{type:"nodeClick",node:mt(ym(e,r.node.id),`Node ${r.node.id} not found in diagram`),xynode:r.node})),uz=e=>Qe.emit(({context:r})=>({type:"navigateTo",viewId:e?.viewId??mt(r.lastOnNavigate,"Invalid state, lastOnNavigate is null").toView})),pz=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.edgeClick"),{type:"edgeClick",edge:mt(yR(e,r.edge.id),`Edge ${r.edge.id} not found in diagram`),xyedge:r.edge})),mre=e=>Qe.enqueueActions(({event:r,enqueue:n})=>{let o=e;o||(ht(r,"trigger.change"),o=r.change),n.assign({viewportChangedManually:!0}),n.sendTo(zr.editorActor,{type:"change",change:o})}),QKe=()=>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"&&zr(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})}),JKe=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=Jte(a,s),d=HKe(o),u=s.map(p=>({node:mt(i.get(p)),rect:mt(c.rects.get(p))}));d.computeLayout(u.map(({node:p})=>cre(p)));for(const{rect:p,node:f}of u)p.positionAbsolute={...p.positionAbsolute,...d.applyPosition(cre(f))};c.updateXYFlow()}),eQe=()=>Qe.assign(({context:e})=>{const{nodeLookup:r}=e.xystore.getState();return{xyedges:e.xyedges.map(n=>{if(!n.data.controlPoints)return n;const o=are(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}}})}}),tQe=()=>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=ym(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}}),rQe=()=>Qe.assign(({context:e,event:r})=>(ht(r,"tag.highlight"),{xynodes:e.xynodes.map(n=>n.data.tags?.includes(r.tag)?tr.setDimmed(n,!1):tr.setDimmed(n,!0))})),nQe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"toggle.feature");const n=e.toggledFeatures[`enable${r.feature}`]??e.features[`enable${r.feature}`],o=r.forceValue??!n;return{toggledFeatures:{...e.toggledFeatures,[`enable${r.feature}`]:o}}}),oQe=()=>Qe.sendTo(zr.searchActor,{type:"close"}),aQe=()=>Qe.sendTo(zr.overlaysActor,{type:"close.all"}),gre=()=>Qe.enqueueActions(({enqueue:e,system:r})=>{const n=zr(r).editorActorRef;n&&e.stopChild(n)}),hz=()=>Qe.enqueueActions(({enqueue:e,context:r,system:n,check:o})=>{const a=o("enabled: Editor"),i=zr(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})}),fz=(e="node")=>Qe.sendTo(zr.editorActor,{type:"edit.start",subject:e}),iQe=()=>Qe.sendTo(zr.editorActor,{type:"synced"}),mz=(e=!0)=>Qe.sendTo(zr.editorActor,{type:"edit.finish",wasChanged:e}),yre=()=>Qe.sendTo(zr.editorActor,{type:"cancel"}),vre=e=>"modelFqn"in e.data&&Kn(e.data.modelFqn),gz=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let a=null,i,l;switch(!0){case n.type==="xyflow.nodeClick":{if(!vre(n.node)){console.warn("No modelFqn in clicked node data");return}l=n.node.data.modelFqn,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||!vre(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=Zu(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(zr.overlaysActor,{type:"open.elementDetails",subject:l,currentView:r.view,...a&&{initiatedFrom:a}})}),yz=()=>Qe.enqueueActions(({context:e,event:r,enqueue:n,check:o})=>{if(ht(r,["open.relationshipsBrowser","open.relationshipDetails","open.elementDetails"]),!o("enabled: Overlays")){console.warn("Overlays feature is disabled");return}switch(r.type){case"open.elementDetails":{o("enabled: ElementDetails")?n(gz()):console.warn("ElementDetails feature is disabled");break}case"open.relationshipsBrowser":{n.sendTo(zr.overlaysActor,{type:"open.relationshipsBrowser",subject:r.fqn,viewId:e.view.id,scope:"view",closeable:!0,enableChangeScope:!0,enableSelectSubject:!0});break}case"open.relationshipDetails":{n.sendTo(zr.overlaysActor,{type:"open.relationshipDetails",viewId:e.view.id,...r.params});break}default:Qo(r)}}),p4=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=e.focusedNode??e.lastClickedNode?.id;if(!n||!e.features.enableVscode)return;const o=ym(e,n);o&&(o.deploymentRef?r.raise({type:"open.source",deployment:o.deploymentRef}):o.modelRef&&r.raise({type:"open.source",element:o.modelRef}))}),bre=()=>Qe.enqueueActions(({enqueue:e,check:r,system:n})=>{const o=r("enabled: Overlays"),a=zr(n).overlaysActorRef;if(o&&!a){e.spawnChild("overlaysActorLogic",{id:"overlays",systemId:"overlays"});return}!o&&a&&(e.sendTo(a,{type:"close.all"}),e.stopChild("overlays"))}),xre=()=>Qe.enqueueActions(({enqueue:e,context:{features:{enableSearch:r}},system:n})=>{const o=zr(n).searchActorRef;if(r&&!o){e.spawnChild("searchActorLogic",{id:"search",systemId:"search"});return}!r&&o&&(e.sendTo(o,{type:"close"}),e.stopChild("search"))}),lQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseEnter");let o=n.edge;e.assign({xyedges:r.xyedges.map(a=>a.id===n.edge.id?(o=tr.setHovered(a,!0),o):a)}),e.emit({type:"edgeMouseEnter",edge:o,event:n.event})}),sQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseLeave");let o=n.edge;e.assign({xyedges:r.xyedges.map(a=>a.id===n.edge.id?(o=tr.setHovered(a,!1),o):a)}),e.emit({type:"edgeMouseLeave",edge:o,event:n.event})}),wre=()=>Qe.spawnChild("hotkeyActorLogic",{id:"hotkey"}),kre=()=>Qe.stopChild("hotkey"),_re=3e3,cQe=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{e.autoUnfocusTimer&&_re>0&&r.raise({type:"focus.autoUnfocus"},{delay:_re,id:"autoUnfocusTimer"})}),dQe=()=>Qe.cancel("autoUnfocusTimer"),uQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,["navigate.to","navigate.back","navigate.forward"]);const{view:o,focusedNode: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(uz());break}case"navigate.back":{He(u>0,"Cannot navigate back");const g=f[u-1];e.assign({navigationHistory:{currentIndex:u-1,history:f},lastOnNavigate:null}),e(uz({viewId:g.viewId}));break}case"navigate.forward":{He(uQe.enqueueActions(({enqueue:e,event:r,context:n})=>{if(r.type!=="update.view"){console.warn(`Ignoring unexpected event type: ${r.type} in action 'update.view'`);return}const o=r.view;if(o.id!==n.view.id){console.warn("updateView called for another view - ignoring",{event:r});return}if(e(hre()),r.source==="editor")return;e(iQe());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(S0({viewport:n.viewportOnAutoLayout,duration:0}));return}if(o._layout==="manual"&&n.viewportOnManualLayout){e(S0({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(fc()),e(c4({bounds:r.view.bounds})))});var Ho={},bz={},Sre;function Ere(){if(Sre)return bz;Sre=1;var e=I2();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 bz.assign=o,bz}var mc={},Cre;function pQe(){if(Cre)return mc;Cre=1;var e=I2(),r=Ere();function n(k,C,_,$,{event:R}){const T=typeof R=="function"?R(_,$):R;return[C,{event:T},void 0]}function o(k,{event:C}){k.defer(()=>k.emit(C))}function 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:R,event:T,id:A,delay:z},j){const I=C.machine.implementations.delays;if(typeof T=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${T}" }) instead`);const P=typeof T=="function"?T(_,$):T;let L;if(typeof z=="string"){const V=I&&I[z];L=typeof V=="function"?V(_,$):V}else L=typeof z=="function"?z(_,$):z;const H=typeof R=="function"?R(_,$):R;let M;if(typeof H=="string"){if(H===i.Parent?M=k.self._parent:H===i.Internal?M=k.self:H.startsWith("#_")?M=C.children[H.slice(2)]:M=j.deferredActorIds?.includes(H)?H:C.children[H],!M)throw new Error(`Unable to send event to actor '${H}' from machine '${C.machine.id}'.`)}else M=H||k.self;return[C,{to:M,targetId:typeof H=="string"?H:void 0,event:P,id:A,delay:L},void 0]}function s(k,C,_){typeof _.to=="string"&&(_.to=C.children[_.to])}function c(k,C){k.defer(()=>{const{to:_,event:$,delay:R,id:T}=C;if(typeof R=="number"){k.system.scheduler.schedule(k.self,_,$,R,T);return}k.system._relay(k.self,_,$.type===e.XSTATE_ERROR?e.createErrorActorEvent(k.self.id,$.data):$)})}function d(k,C,_){function $(R,T){}return $.type="xstate.sendTo",$.to=k,$.event=C,$.id=_?.id,$.delay=_?.delay,$.resolve=l,$.retryResolve=s,$.execute=c,$}function u(k,C){return d(i.Parent,k,C)}function p(k,C){return d(k,({event:_})=>_,C)}function f(k,C,_,$,{collect:R}){const T=[],A=function(z){T.push(z)};return A.assign=(...z)=>{T.push(r.assign(...z))},A.cancel=(...z)=>{T.push(e.cancel(...z))},A.raise=(...z)=>{T.push(e.raise(...z))},A.sendTo=(...z)=>{T.push(d(...z))},A.sendParent=(...z)=>{T.push(u(...z))},A.spawnChild=(...z)=>{T.push(e.spawnChild(...z))},A.stopChild=(...z)=>{T.push(e.stopChild(...z))},A.emit=(...z)=>{T.push(a(...z))},R({context:_.context,event:_.event,enqueue:A,check:z=>e.evaluateGuard(z,C.context,_.event,C),self:k.self,system:k.system},$),[C,void 0,T]}function g(k){function C(_,$){}return C.type="xstate.enqueueActions",C.collect=k,C.resolve=f,C}function v(k,C,_,$,{value:R,label:T}){return[C,{value:typeof R=="function"?R(_,$):R,label:T},void 0]}function w({logger:k},{value:C,label:_}){_?k(_,C):k(C)}function x(k=({context:_,event:$})=>({context:_,event:$}),C){function _($,R){}return _.type="xstate.log",_.value=k,_.label=C,_.resolve=v,_.execute=w,_}return mc.SpecialTargets=i,mc.emit=a,mc.enqueueActions=g,mc.forwardTo=p,mc.log=x,mc.sendParent=u,mc.sendTo=d,mc}var $re;function hQe(){if($re)return Ho;$re=1,Object.defineProperty(Ho,"__esModule",{value:!0});var e=Ere(),r=I2(),n=pQe();return RR(),Ho.assign=e.assign,Ho.cancel=r.cancel,Ho.raise=r.raise,Ho.spawnChild=r.spawnChild,Ho.stop=r.stop,Ho.stopChild=r.stopChild,Ho.emit=n.emit,Ho.enqueueActions=n.enqueueActions,Ho.forwardTo=n.forwardTo,Ho.log=n.log,Ho.sendParent=n.sendParent,Ho.sendTo=n.sendTo,Ho}var fr=hQe();const fQe=Qe.createStateConfig({on:{"xyflow.init":{actions:fr.assign(({context:e,event:r})=>({initialized:{...e.initialized,xyflow:!0},xyflow:r.instance})),target:"isReady"},"update.view":{actions:[hre(),fr.assign(({context:e})=>({initialized:{...e.initialized,xydata:!0}}))],target:"isReady"}}}),mQe=Qe.createStateConfig({always:[{guard:"isReady",actions:[s4({duration:0}),fr.assign(({context:e})=>({navigationHistory:{currentIndex:0,history:[{viewId:e.view.id,viewport:{...e.xyflow.getViewport()},viewportChangedManually:!1}]}})),KKe()],target:"ready"},{target:"initializing"}]}),gQe=()=>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=ovR(u)===c);if(d)return{lastOnNavigate:{fromView:e.view.id,toView:r.view.id,fromNode:d.id}}}return{}}),yQe=Qe.createStateConfig({id:zn.navigating.slice(1),always:{target:zn.idle,actions:[fc(),gQe(),ure(),rs(({enqueue:e,context:r,event:n})=>{ht(n,"update.view");const{xyflow:o,xystore:a,navigationHistory:{currentIndex:i,history:l}}=r,s="xynodes"in n?n:{...n,...lre({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where})};He(o,"xyflow is not initialized");const c=x=>{const k=o.getZoom(),C=x.zoom({type:"focus.node",nodeId:e.node.id})),Dp()]}],"focus.node":{actions:[d4(),C0(),p4(),E0()]},"key.esc":{target:zn.idle},"xyflow.paneClick":{actions:[jm(),dz()],target:zn.idle},"notations.unhighlight":{actions:C0()},"tag.unhighlight":{actions:C0()},"update.view":{guard:"is same view",actions:[vz(),C0()]}}}),bQe=Qe.createStateConfig({id:zn.idle.slice(1),on:{"xyflow.nodeClick":[{guard:Bd.and(["enabled: Readonly","enabled: FocusMode","click: node has connections",Bd.or(["click: same node","click: selected node"])]),actions:[Ap(),d4(),Dp()],target:zn.focused},{guard:Bd.and(["enabled: Readonly","enabled: ElementDetails","click: node has modelFqn",Bd.or(["click: same node","click: selected node"])]),actions:[Ap(),p4(),gz(),Dp()]},{actions:[Ap(),p4(),Dp()]}],"xyflow.paneClick":{actions:[jm(),dz()]},"xyflow.paneDblClick":{actions:[jm(),fr.enqueueActions(({context:e,enqueue:r,check:n})=>{n("enabled: FitView")&&r(s4()),r(fre({view:e.view.id}))})]},"focus.node":[{guard:"focus.node: autoUnfocus",actions:d4(),target:zn.focused},{guard:"enabled: FocusMode",actions:d4(),target:zn.focused}],"xyflow.edgeClick":{guard:Bd.and(["enabled: Readonly","is dynamic view","enabled: DynamicViewWalkthrough","click: selected edge"]),actions:[jm(),fr.raise(({event:e})=>({type:"walkthrough.start",stepId:e.edge.id})),pz()]}}}),xQe=Qe.createStateConfig({id:zn.printing.slice(1),entry:[fc(),sz(),rs(({enqueue:e,context:r})=>{const n=r.view.bounds,o=16;e(S0({viewport:{x:n.x+o,y:n.y+o,zoom:1},duration:0}))})],exit:[cz({delay:0,duration:0})],on:{"media.print.off":{target:zn.idle},"*":{actions:[yE(({event:e})=>`Printing state - ignoring event: ${e.type}`)]}}}),Am=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const{activeWalkthrough:n}=e;if(!n){console.warn("Active walkthrough is null"),r.raise({type:"walkthrough.end"});return}const{stepId:o,parallelPrefix: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?l4.active:l4.default,dimmed:s}):tr.setDimmed(l,s)})})}),wQe=()=>Qe.emit(({context:e})=>{const r=e.xyedges.find(n=>n.id===e.activeWalkthrough?.stepId);return He(r,"Invalid walkthrough state"),{type:"walkthroughStarted",edge:r}}),kQe=()=>Qe.emit(()=>({type:"walkthroughStopped"})),Rre=()=>Qe.emit(({context:e})=>{const r=e.xyedges.find(n=>n.id===e.activeWalkthrough?.stepId);return He(r,"Invalid walkthrough state"),{type:"walkthroughStep",edge:r}}),_Qe=Qe.createStateConfig({id:zn.walkthrough.slice(1),entry:[wre(),yre(),fc(),sz(),fr.assign({activeWalkthrough:({context:e,event:r})=>{ht(r,"walkthrough.start");const n=r.stepId??hf(e.xyedges).id;return{stepId:n,parallelPrefix:K8(n)}}}),Am(),E0(),wQe()],exit:[kre(),fr.enqueueActions(({enqueue:e,context:r})=>{e.assign({activeWalkthrough:null}),r.dynamicViewVariant==="sequence"&&r.activeWalkthrough?.parallelPrefix&&e.assign({xynodes:r.xynodes.map(n=>n.type==="seq-parallel"?tr.setData(n,{color:l4.default}):n)})}),u4(),cz(),kQe()],on:{"key.esc":{target:zn.idle},"key.arrow.left":{actions:fr.raise({type:"walkthrough.step",direction:"previous"})},"key.arrow.up":{actions:fr.raise({type:"walkthrough.step",direction:"previous"})},"key.arrow.right":{actions:fr.raise({type:"walkthrough.step",direction:"next"})},"key.arrow.down":{actions:fr.raise({type:"walkthrough.step",direction:"next"})},"walkthrough.step":{actions:[fr.assign(({context:e,event:r})=>{const{stepId:n}=e.activeWalkthrough,o=e.xyedges.findIndex(l=>l.id===n),a=ti(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:K8(i)}}}),Am(),E0(),Rre()]},"xyflow.edgeClick":{actions:[fr.assign(({event:e,context:r})=>!k1(e.edge.id)||e.edge.id===r.activeWalkthrough?.stepId?{}:{activeWalkthrough:{stepId:e.edge.id,parallelPrefix:K8(e.edge.id)}}),Am(),E0(),pz(),Rre()]},"notations.unhighlight":{actions:Am()},"tag.unhighlight":{actions:Am()},"update.view":{guard:"is same view",actions:[vz(),Am()]},"walkthrough.end":{target:zn.idle},"xyflow.paneDblClick":{target:zn.idle}}}),SQe=Qe.createStateConfig({initial:"idle",entry:[fr.spawnChild("mediaPrintActorLogic",{id:"mediaPrint"}),hz(),bre(),xre()],exit:[fc(),fr.stopChild("mediaPrint"),aQe(),oQe(),gre()],states:{idle:bQe,focused:vQe,walkthrough:_Qe,printing:xQe},on:{"navigate.*":{actions:uQe()},"layout.align":{guard:"not readonly",actions:[fz("node"),JKe(),mz(!0)]},"layout.resetEdgeControlPoints":{guard:"not readonly",actions:[fz("edge"),eQe(),mz(!0)]},"layout.resetManualLayout":{guard:"not readonly",actions:[yre(),ure(),mre({op:"reset-manual-layout"})]},"xyflow.resized":{guard:({context:e})=>e.features.enableFitView&&!e.viewportChangedManually,actions:[fc(),c4({delay:200})]},"open.elementDetails":{actions:yz()},"open.relationshipsBrowser":{actions:yz()},"open.relationshipDetails":{actions:yz()},"open.source":{guard:"enabled: OpenSource",actions:fre()},"walkthrough.start":{guard:"is dynamic view",target:zn.walkthrough},"toggle.feature":{actions:[nQe(),hz()]},"update.features":{actions:[pre(),bre(),xre(),hz()]},"xyflow.nodeMouseEnter":{actions:XKe()},"xyflow.nodeMouseLeave":{actions:ZKe()},"xyflow.edgeMouseEnter":{actions:lQe()},"xyflow.edgeMouseLeave":{actions:sQe()},"xyflow.edgeDoubleClick":{guard:Bd.and(["not readonly",({event:e})=>!!e.edge.data.controlPoints&&e.edge.data.controlPoints.length>0]),actions:[fz("edge"),WKe(),mz(!0)]},"notations.highlight":{actions:tQe()},"notations.unhighlight":{actions:u4()},"tag.highlight":{actions:rQe()},"tag.unhighlight":{actions:u4()},"open.search":{guard:"enabled: Search",actions:fr.sendTo(({system:e})=>zr(e).searchActorRef,({event:e})=>({type:"open",search:e.search}))},"xyflow.paneClick":{actions:[jm(),dz()]},"xyflow.nodeClick":{actions:[Ap(),Dp()]},"xyflow.edgeClick":{actions:[jm(),pz()]},"xyflow.fitDiagram":{guard:"enabled: FitView",actions:s4()},"xyflow.setViewport":{actions:S0()},"update.view":[{guard:"is another view",target:zn.navigating},{actions:vz()}],"media.print.on":{target:zn.printing}}}),xz="likec4:diagram:toggledFeatures",zre={read(){try{let e=sessionStorage.getItem(xz);return e?JSON.parse(e):null}catch(e){return console.error(`Error reading fromStorage ${xz}:`,e),null}},write(e){return sessionStorage.setItem(xz,JSON.stringify(ry(e,Pq))),e}},EQe=Qe.createMachine({initial:"initializing",context:({input:e})=>({...e,xyedges:[],xynodes:[],features:{...WG},toggledFeatures:zre.read()??{enableReadOnly:!0,enableCompareWithLatest:!1},initialized:{xydata:!1,xyflow:!1},viewportChangedManually:!1,lastOnNavigate:null,lastClickedNode:null,focusedNode:null,autoUnfocusTimer:!1,activeElementDetails:null,viewportBefore:null,viewportOnManualLayout:null,viewportOnAutoLayout:null,navigationHistory:{currentIndex:0,history:[]},viewport:{x:0,y:0,zoom:1},xyflow:null,dynamicViewVariant:e.dynamicViewVariant??(e.view._type==="dynamic"?e.view.variant:"diagram")??"diagram",activeWalkthrough:null}),states:{initializing:fQe,isReady:mQe,ready:SQe,navigating:yQe,final:{type:"final",entry:[gre(),fc(),fr.stopChild("hotkey"),fr.stopChild("overlays"),fr.stopChild("search"),fr.stopChild("mediaPrint"),fr.assign({xyflow:null,xystore:null,xyedges:[],xynodes:[],initialized:{xydata:!1,xyflow:!1}})]}},on:{"update.nodeData":{actions:fr.assign(MKe)},"update.edgeData":{actions:fr.assign(NKe)},"switch.dynamicViewVariant":{guard:({context:e,event:r})=>e.dynamicViewVariant!==r.variant,actions:[YKe(),UKe()]},"update.inputs":{actions:GKe()},"update.view-bounds":{actions:fr.assign(({context:e,event:r})=>({view:{...e.view,bounds:r.bounds}}))},"update.features":{actions:pre()},"trigger.change":{actions:mre()},"emit.onLayoutTypeChange":{actions:QKe()},"xyflow.applyNodeChanges":{actions:fr.assign({xynodes:({context:e,event:r})=>rw(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:fr.assign({xyedges:({context:e,event:r})=>nw(r.changes,e.xyedges)})},"xyflow.viewportMoved":{actions:fr.assign(({event:e,context:r})=>({viewportChangedManually:r.viewportChangedManually||e.manually,viewport:e.viewport}))},destroy:{target:".final"}}}),CQe=EQe;function $Qe({view:e,zoomable:r,pannable:n,nodesDraggable:o,nodesSelectable:a,fitViewPadding:i,where:l,children:s,dynamicViewVariant:c}){const d=vr(),u=AKe(e.id),p=vE(CQe.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(()=>nre(f));S.useEffect(()=>{v(x=>x.ref===f?x:(console.warn("DiagramMachine actorRef changed, creating new DiagramApi instance, this should not happen during the lifetime of the actor"),nre(f)))},[f]);const w=sr();return S.useEffect(()=>p.send({type:"update.features",features:w}),[w,p]),S.useEffect(()=>p.send({type:"update.inputs",inputs:{zoomable:r,where:l,pannable:n,fitViewPadding:i,nodesDraggable:o,nodesSelectable:a}}),[r,l,n,i,p,o,a]),$p(()=>{c&&p.send({type:"switch.dynamicViewVariant",variant:c})},[c,p]),_L(()=>p.send({type:"update.view",view:e,source:"external"}),[p,e]),y.jsx(tBe,{value:p,children:y.jsxs(rBe,{value:g,children:[y.jsx(QS,{children:y.jsx(TQe,{actorRef:p,children:s})}),y.jsx(jQe,{})]})})}const RQe=({context:e})=>{let r=e.toggledFeatures;const n=e.view.drifts!=null&&e.view.drifts.length>0,o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&ty(e.activeWalkthrough)&&n,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}},zQe=(e,r)=>e.viewId===r.viewId&&Ir(e.toggledFeatures,r.toggledFeatures);function TQe({children:e,actorRef:r}){const{viewId:n,toggledFeatures:o}=pn(r,RQe,zQe),a=Fo().findView(n);return y.jsx(GS.Provider,{value:a,children:y.jsx(mp,{overrides:o,children:e})})}const jQe=S.memo(()=>{const e=Nt(),{onNavigateTo:r,onOpenSource:n,onLayoutTypeChange:o,handlersRef:a}=gm();ja("openSource",({params:l})=>n?.(l)),ja("navigateTo",({viewId:l})=>r?.(l)),ja("onLayoutTypeChange",({layoutType:l})=>{o?.(l)}),ja("initialized",({instance:l})=>{try{a.current.onInitialized?.({diagram:e,xyflow:l})}catch(s){console.error(s)}},{once:!0});const i=pi(l=>l.toggledFeatures,Ir);return $p(()=>{zre.write(P$e(i,ty))},[i]),null}),h4={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:e=>e>=255?255:e<0?0:e,g:e=>e>=255?255:e<0?0:e,b:e=>e>=255?255:e<0?0:e,h:e=>e%360,s:e=>e>=100?100:e<0?0:e,l:e=>e>=100?100:e<0?0:e,a:e=>e>=1?1:e<0?0:e},toLinear:e=>{const r=e/255;return e>.03928?Math.pow((r+.055)/1.055,2.4):r/12.92},hue2rgb:(e,r,n)=>(n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(r-e)*6*n:n<1/2?r:n<2/3?e+(r-e)*(2/3-n)*6:e),hsl2rgb:({h:e,s:r,l:n},o)=>{if(!r)return n*2.55;e/=360,r/=100,n/=100;const a=n<.5?n*(1+r):n+r-n*r,i=2*n-a;switch(o){case"r":return h4.hue2rgb(i,a,e+1/3)*255;case"g":return h4.hue2rgb(i,a,e)*255;case"b":return h4.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},DQe={dec2hex:e=>{const r=Math.round(e).toString(16);return r.length>1?r:`0${r}`}},Tt={channel:h4,lang:AQe,unit:DQe},Ld={};for(let e=0;e<=255;e++)Ld[e]=Tt.unit.dec2hex(e);const $o={ALL:0,RGB:1,HSL:2};class MQe{constructor(){this.type=$o.ALL}get(){return this.type}set(r){if(this.type&&this.type!==r)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=r}reset(){this.type=$o.ALL}is(r){return this.type===r}}class NQe{constructor(r,n){this.color=n,this.changed=!1,this.data=r,this.type=new MQe}set(r,n){return this.color=n,this.changed=!1,this.data=r,this.type.type=$o.ALL,this}_ensureHSL(){const r=this.data,{h:n,s:o,l:a}=r;n===void 0&&(r.h=Tt.channel.rgb2hsl(r,"h")),o===void 0&&(r.s=Tt.channel.rgb2hsl(r,"s")),a===void 0&&(r.l=Tt.channel.rgb2hsl(r,"l"))}_ensureRGB(){const r=this.data,{r:n,g:o,b:a}=r;n===void 0&&(r.r=Tt.channel.hsl2rgb(r,"r")),o===void 0&&(r.g=Tt.channel.hsl2rgb(r,"g")),a===void 0&&(r.b=Tt.channel.hsl2rgb(r,"b"))}get r(){const r=this.data,n=r.r;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"r"))}get g(){const r=this.data,n=r.g;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"g"))}get b(){const r=this.data,n=r.b;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"b"))}get h(){const r=this.data,n=r.h;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"h"))}get s(){const r=this.data,n=r.s;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"s"))}get l(){const r=this.data,n=r.l;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"l"))}get a(){return this.data.a}set r(r){this.type.set($o.RGB),this.changed=!0,this.data.r=r}set g(r){this.type.set($o.RGB),this.changed=!0,this.data.g=r}set b(r){this.type.set($o.RGB),this.changed=!0,this.data.b=r}set h(r){this.type.set($o.HSL),this.changed=!0,this.data.h=r}set s(r){this.type.set($o.HSL),this.changed=!0,this.data.s=r}set l(r){this.type.set($o.HSL),this.changed=!0,this.data.l=r}set a(r){this.changed=!0,this.data.a=r}}const f4=new NQe({r:0,g:0,b:0,a:0},"transparent"),Dm={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:e=>{if(e.charCodeAt(0)!==35)return;const r=e.match(Dm.re);if(!r)return;const n=r[1],o=parseInt(n,16),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 f4.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?`#${Ld[Math.round(r)]}${Ld[Math.round(n)]}${Ld[Math.round(o)]}${Ld[Math.round(a*255)]}`:`#${Ld[Math.round(r)]}${Ld[Math.round(n)]}${Ld[Math.round(o)]}`}},Mp={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:e=>{const r=e.match(Mp.hueRe);if(r){const[,n,o]=r;switch(o){case"grad":return Tt.channel.clamp.h(parseFloat(n)*.9);case"rad":return Tt.channel.clamp.h(parseFloat(n)*180/Math.PI);case"turn":return Tt.channel.clamp.h(parseFloat(n)*360)}}return Tt.channel.clamp.h(parseFloat(e))},parse:e=>{const r=e.charCodeAt(0);if(r!==104&&r!==72)return;const n=e.match(Mp.re);if(!n)return;const[,o,a,i,l,s]=n;return f4.set({h:Mp._hue2deg(o),s:Tt.channel.clamp.s(parseFloat(a)),l:Tt.channel.clamp.l(parseFloat(i)),a:l?Tt.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(${Tt.lang.round(r)}, ${Tt.lang.round(n)}%, ${Tt.lang.round(o)}%, ${a})`:`hsl(${Tt.lang.round(r)}, ${Tt.lang.round(n)}%, ${Tt.lang.round(o)}%)`}},$0={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:e=>{e=e.toLowerCase();const r=$0.colors[e];if(r)return Dm.parse(r)},stringify:e=>{const r=Dm.stringify(e);for(const n in $0.colors)if($0.colors[n]===r)return n}},R0={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:e=>{const r=e.charCodeAt(0);if(r!==114&&r!==82)return;const n=e.match(R0.re);if(!n)return;const[,o,a,i,l,s,c,d,u]=n;return f4.set({r:Tt.channel.clamp.r(a?parseFloat(o)*2.55:parseFloat(o)),g:Tt.channel.clamp.g(l?parseFloat(i)*2.55:parseFloat(i)),b:Tt.channel.clamp.b(c?parseFloat(s)*2.55:parseFloat(s)),a:d?Tt.channel.clamp.a(u?parseFloat(d)/100:parseFloat(d)):1},e)},stringify:e=>{const{r,g:n,b:o,a}=e;return a<1?`rgba(${Tt.lang.round(r)}, ${Tt.lang.round(n)}, ${Tt.lang.round(o)}, ${Tt.lang.round(a)})`:`rgb(${Tt.lang.round(r)}, ${Tt.lang.round(n)}, ${Tt.lang.round(o)})`}},fl={format:{keyword:$0,hex:Dm,rgb:R0,rgba:R0,hsl:Mp,hsla:Mp},parse:e=>{if(typeof e!="string")return e;const r=Dm.parse(e)||R0.parse(e)||Mp.parse(e)||$0.parse(e);if(r)return r;throw new Error(`Unsupported color format: "${e}"`)},stringify:e=>!e.changed&&e.color?e.color:e.type.is($o.HSL)||e.data.r===void 0?Mp.stringify(e):e.a<1||!Number.isInteger(e.r)||!Number.isInteger(e.g)||!Number.isInteger(e.b)?R0.stringify(e):Dm.stringify(e)},Tre=(e,r)=>{const n=fl.parse(e);for(const o in r)n[o]=Tt.channel.clamp[o](r[o]);return fl.stringify(n)},PQe=(e,r,n=0,o=1)=>{if(typeof e!="number")return Tre(e,{a:r});const a=f4.set({r:Tt.channel.clamp.r(e),g:Tt.channel.clamp.g(r),b:Tt.channel.clamp.b(n),a:Tt.channel.clamp.a(o)});return fl.stringify(a)},jre=e=>fl.format.hex.stringify(fl.parse(e)),Are=e=>fl.format.rgba.stringify(fl.parse(e)),BQe=(e,r)=>{const n=fl.parse(e),o={};for(const a in r)r[a]&&(o[a]=n[a]+r[a]);return Tre(e,o)},Dre=(e,r,n=50)=>{const{r:o,g:a,b:i,a:l}=fl.parse(e),{r:s,g:c,b:d,a:u}=fl.parse(r),p=n/100,f=p*2-1,g=l-u,v=((f*g===-1?f:(f+g)/(1+f*g))+1)/2,w=1-v,x=o*v+s*w,k=a*v+c*w,C=i*v+d*w,_=l*p+u*(1-p);return PQe(x,k,C,_)},Mre=(e,r)=>{const n=fl.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],Tt.channel.max[i]);return BQe(e,o)},IQe=e=>`[data-mantine-color-scheme="${e}"]`,Nre=IQe("dark"),OQe=5,LQe=(e,r,n,o)=>{const a=s=>jre(Mre(s,{l:-22-5*o,s:-10-6*o})),i=s=>jre(Mre(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)}; @@ -172,8 +172,8 @@ ${Nre} ${i} { `.trim(),...V$e(1,OQe+1).map(l=>LQe(e,r,n,l))].join(` `)}function VQe(e,r){return Jr(r.colors,uw(),un(([n,o])=>FQe(e,n,o)),Lq(` -`))}const qQe=S.memo(({id:e})=>{const r=`#${e}`,n=np()?.(),{theme:o}=Tte(),a=VQe(r,o);return y.jsx("style",{type:"text/css","data-likec4-colors":e,dangerouslySetInnerHTML:{__html:a},nonce:n})}),HQe='@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-400-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-500-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-600-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-400-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-500-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-600-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-400-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-500-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-600-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-400-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-500-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-600-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}',Pre=`@layer reset,base,mantine,xyflow,tokens,recipes,utilities;@layer mantine{:root,:host{color-scheme:var(--mantine-color-scheme)}*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}body,:host{margin:0;font-family:var(--mantine-font-family);font-size:var(--mantine-font-size-md);line-height:var(--mantine-line-height);background-color:var(--mantine-color-body);color:var(--mantine-color-text);-webkit-font-smoothing:var(--mantine-webkit-font-smoothing);-moz-osx-font-smoothing:var(--mantine-moz-font-smoothing)}@media screen and (max-device-width:31.25em){body,:host{-webkit-text-size-adjust:100%}}@media(prefers-reduced-motion:reduce){[data-respect-reduced-motion] [data-reduce-motion]{transition:none;animation:none}}[data-mantine-color-scheme=light] .mantine-light-hidden,[data-mantine-color-scheme=dark] .mantine-dark-hidden{display:none}.mantine-focus-auto:focus-visible{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-always:focus{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-never:focus{outline:none}.mantine-active:active{transform:translateY(calc(.0625rem * var(--mantine-scale)))}fieldset:disabled .mantine-active:active{transform:none}:where([dir=rtl]) .mantine-rotate-rtl{transform:rotate(180deg)}:root,:host{--mantine-z-index-app: 100;--mantine-z-index-modal: 200;--mantine-z-index-popover: 300;--mantine-z-index-overlay: 400;--mantine-z-index-max: 9999;--mantine-scale: 1;--mantine-cursor-type: default;--mantine-webkit-font-smoothing: antialiased;--mantine-moz-font-smoothing: grayscale;--mantine-color-white: #fff;--mantine-color-black: #000;--mantine-line-height: 1.55;--mantine-font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-font-family-monospace: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;--mantine-font-family-headings: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-heading-font-weight: 700;--mantine-heading-text-wrap: wrap;--mantine-radius-default: calc(.25rem * var(--mantine-scale));--mantine-primary-color-filled: var(--mantine-color-blue-filled);--mantine-primary-color-filled-hover: var(--mantine-color-blue-filled-hover);--mantine-primary-color-light: var(--mantine-color-blue-light);--mantine-primary-color-light-hover: var(--mantine-color-blue-light-hover);--mantine-primary-color-light-color: var(--mantine-color-blue-light-color);--mantine-breakpoint-xs: 36em;--mantine-breakpoint-sm: 48em;--mantine-breakpoint-md: 62em;--mantine-breakpoint-lg: 75em;--mantine-breakpoint-xl: 88em;--mantine-spacing-xs: calc(.625rem * var(--mantine-scale));--mantine-spacing-sm: calc(.75rem * var(--mantine-scale));--mantine-spacing-md: calc(1rem * var(--mantine-scale));--mantine-spacing-lg: calc(1.25rem * var(--mantine-scale));--mantine-spacing-xl: calc(2rem * var(--mantine-scale));--mantine-font-size-xs: calc(.75rem * var(--mantine-scale));--mantine-font-size-sm: calc(.875rem * var(--mantine-scale));--mantine-font-size-md: calc(1rem * var(--mantine-scale));--mantine-font-size-lg: calc(1.125rem * var(--mantine-scale));--mantine-font-size-xl: calc(1.25rem * var(--mantine-scale));--mantine-line-height-xs: 1.4;--mantine-line-height-sm: 1.45;--mantine-line-height-md: 1.55;--mantine-line-height-lg: 1.6;--mantine-line-height-xl: 1.65;--mantine-shadow-xs: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), 0 calc(.0625rem * var(--mantine-scale)) calc(.125rem * var(--mantine-scale)) rgba(0, 0, 0, .1);--mantine-shadow-sm: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(.625rem * var(--mantine-scale)) calc(.9375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.4375rem * var(--mantine-scale)) calc(.4375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-md: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.25rem * var(--mantine-scale)) calc(1.5625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.625rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-lg: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.75rem * var(--mantine-scale)) calc(1.4375rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.75rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-shadow-xl: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(2.25rem * var(--mantine-scale)) calc(1.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(1.0625rem * var(--mantine-scale)) calc(1.0625rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-radius-xs: calc(.125rem * var(--mantine-scale));--mantine-radius-sm: calc(.25rem * var(--mantine-scale));--mantine-radius-md: calc(.5rem * var(--mantine-scale));--mantine-radius-lg: calc(1rem * var(--mantine-scale));--mantine-radius-xl: calc(2rem * var(--mantine-scale));--mantine-primary-color-0: var(--mantine-color-blue-0);--mantine-primary-color-1: var(--mantine-color-blue-1);--mantine-primary-color-2: var(--mantine-color-blue-2);--mantine-primary-color-3: var(--mantine-color-blue-3);--mantine-primary-color-4: var(--mantine-color-blue-4);--mantine-primary-color-5: var(--mantine-color-blue-5);--mantine-primary-color-6: var(--mantine-color-blue-6);--mantine-primary-color-7: var(--mantine-color-blue-7);--mantine-primary-color-8: var(--mantine-color-blue-8);--mantine-primary-color-9: var(--mantine-color-blue-9);--mantine-color-dark-0: #c9c9c9;--mantine-color-dark-1: #b8b8b8;--mantine-color-dark-2: #828282;--mantine-color-dark-3: #696969;--mantine-color-dark-4: #424242;--mantine-color-dark-5: #3b3b3b;--mantine-color-dark-6: #2e2e2e;--mantine-color-dark-7: #242424;--mantine-color-dark-8: #1f1f1f;--mantine-color-dark-9: #141414;--mantine-color-gray-0: #f8f9fa;--mantine-color-gray-1: #f1f3f5;--mantine-color-gray-2: #e9ecef;--mantine-color-gray-3: #dee2e6;--mantine-color-gray-4: #ced4da;--mantine-color-gray-5: #adb5bd;--mantine-color-gray-6: #868e96;--mantine-color-gray-7: #495057;--mantine-color-gray-8: #343a40;--mantine-color-gray-9: #212529;--mantine-color-red-0: #fff5f5;--mantine-color-red-1: #ffe3e3;--mantine-color-red-2: #ffc9c9;--mantine-color-red-3: #ffa8a8;--mantine-color-red-4: #ff8787;--mantine-color-red-5: #ff6b6b;--mantine-color-red-6: #fa5252;--mantine-color-red-7: #f03e3e;--mantine-color-red-8: #e03131;--mantine-color-red-9: #c92a2a;--mantine-color-pink-0: #fff0f6;--mantine-color-pink-1: #ffdeeb;--mantine-color-pink-2: #fcc2d7;--mantine-color-pink-3: #faa2c1;--mantine-color-pink-4: #f783ac;--mantine-color-pink-5: #f06595;--mantine-color-pink-6: #e64980;--mantine-color-pink-7: #d6336c;--mantine-color-pink-8: #c2255c;--mantine-color-pink-9: #a61e4d;--mantine-color-grape-0: #f8f0fc;--mantine-color-grape-1: #f3d9fa;--mantine-color-grape-2: #eebefa;--mantine-color-grape-3: #e599f7;--mantine-color-grape-4: #da77f2;--mantine-color-grape-5: #cc5de8;--mantine-color-grape-6: #be4bdb;--mantine-color-grape-7: #ae3ec9;--mantine-color-grape-8: #9c36b5;--mantine-color-grape-9: #862e9c;--mantine-color-violet-0: #f3f0ff;--mantine-color-violet-1: #e5dbff;--mantine-color-violet-2: #d0bfff;--mantine-color-violet-3: #b197fc;--mantine-color-violet-4: #9775fa;--mantine-color-violet-5: #845ef7;--mantine-color-violet-6: #7950f2;--mantine-color-violet-7: #7048e8;--mantine-color-violet-8: #6741d9;--mantine-color-violet-9: #5f3dc4;--mantine-color-indigo-0: #edf2ff;--mantine-color-indigo-1: #dbe4ff;--mantine-color-indigo-2: #bac8ff;--mantine-color-indigo-3: #91a7ff;--mantine-color-indigo-4: #748ffc;--mantine-color-indigo-5: #5c7cfa;--mantine-color-indigo-6: #4c6ef5;--mantine-color-indigo-7: #4263eb;--mantine-color-indigo-8: #3b5bdb;--mantine-color-indigo-9: #364fc7;--mantine-color-blue-0: #e7f5ff;--mantine-color-blue-1: #d0ebff;--mantine-color-blue-2: #a5d8ff;--mantine-color-blue-3: #74c0fc;--mantine-color-blue-4: #4dabf7;--mantine-color-blue-5: #339af0;--mantine-color-blue-6: #228be6;--mantine-color-blue-7: #1c7ed6;--mantine-color-blue-8: #1971c2;--mantine-color-blue-9: #1864ab;--mantine-color-cyan-0: #e3fafc;--mantine-color-cyan-1: #c5f6fa;--mantine-color-cyan-2: #99e9f2;--mantine-color-cyan-3: #66d9e8;--mantine-color-cyan-4: #3bc9db;--mantine-color-cyan-5: #22b8cf;--mantine-color-cyan-6: #15aabf;--mantine-color-cyan-7: #1098ad;--mantine-color-cyan-8: #0c8599;--mantine-color-cyan-9: #0b7285;--mantine-color-teal-0: #e6fcf5;--mantine-color-teal-1: #c3fae8;--mantine-color-teal-2: #96f2d7;--mantine-color-teal-3: #63e6be;--mantine-color-teal-4: #38d9a9;--mantine-color-teal-5: #20c997;--mantine-color-teal-6: #12b886;--mantine-color-teal-7: #0ca678;--mantine-color-teal-8: #099268;--mantine-color-teal-9: #087f5b;--mantine-color-green-0: #ebfbee;--mantine-color-green-1: #d3f9d8;--mantine-color-green-2: #b2f2bb;--mantine-color-green-3: #8ce99a;--mantine-color-green-4: #69db7c;--mantine-color-green-5: #51cf66;--mantine-color-green-6: #40c057;--mantine-color-green-7: #37b24d;--mantine-color-green-8: #2f9e44;--mantine-color-green-9: #2b8a3e;--mantine-color-lime-0: #f4fce3;--mantine-color-lime-1: #e9fac8;--mantine-color-lime-2: #d8f5a2;--mantine-color-lime-3: #c0eb75;--mantine-color-lime-4: #a9e34b;--mantine-color-lime-5: #94d82d;--mantine-color-lime-6: #82c91e;--mantine-color-lime-7: #74b816;--mantine-color-lime-8: #66a80f;--mantine-color-lime-9: #5c940d;--mantine-color-yellow-0: #fff9db;--mantine-color-yellow-1: #fff3bf;--mantine-color-yellow-2: #ffec99;--mantine-color-yellow-3: #ffe066;--mantine-color-yellow-4: #ffd43b;--mantine-color-yellow-5: #fcc419;--mantine-color-yellow-6: #fab005;--mantine-color-yellow-7: #f59f00;--mantine-color-yellow-8: #f08c00;--mantine-color-yellow-9: #e67700;--mantine-color-orange-0: #fff4e6;--mantine-color-orange-1: #ffe8cc;--mantine-color-orange-2: #ffd8a8;--mantine-color-orange-3: #ffc078;--mantine-color-orange-4: #ffa94d;--mantine-color-orange-5: #ff922b;--mantine-color-orange-6: #fd7e14;--mantine-color-orange-7: #f76707;--mantine-color-orange-8: #e8590c;--mantine-color-orange-9: #d9480f;--mantine-h1-font-size: calc(2.125rem * var(--mantine-scale));--mantine-h1-line-height: 1.3;--mantine-h1-font-weight: 700;--mantine-h2-font-size: calc(1.625rem * var(--mantine-scale));--mantine-h2-line-height: 1.35;--mantine-h2-font-weight: 700;--mantine-h3-font-size: calc(1.375rem * var(--mantine-scale));--mantine-h3-line-height: 1.4;--mantine-h3-font-weight: 700;--mantine-h4-font-size: calc(1.125rem * var(--mantine-scale));--mantine-h4-line-height: 1.45;--mantine-h4-font-weight: 700;--mantine-h5-font-size: calc(1rem * var(--mantine-scale));--mantine-h5-line-height: 1.5;--mantine-h5-font-weight: 700;--mantine-h6-font-size: calc(.875rem * var(--mantine-scale));--mantine-h6-line-height: 1.5;--mantine-h6-font-weight: 700}:root[data-mantine-color-scheme=dark],:host([data-mantine-color-scheme="dark"]){--mantine-color-scheme: dark;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-white);--mantine-color-text: var(--mantine-color-dark-0);--mantine-color-body: var(--mantine-color-dark-7);--mantine-color-error: var(--mantine-color-red-8);--mantine-color-placeholder: var(--mantine-color-dark-3);--mantine-color-anchor: var(--mantine-color-blue-4);--mantine-color-default: var(--mantine-color-dark-6);--mantine-color-default-hover: var(--mantine-color-dark-5);--mantine-color-default-color: var(--mantine-color-white);--mantine-color-default-border: var(--mantine-color-dark-4);--mantine-color-dimmed: var(--mantine-color-dark-2);--mantine-color-disabled: var(--mantine-color-dark-6);--mantine-color-disabled-color: var(--mantine-color-dark-3);--mantine-color-disabled-border: var(--mantine-color-dark-4);--mantine-color-dark-text: var(--mantine-color-dark-4);--mantine-color-dark-filled: var(--mantine-color-dark-8);--mantine-color-dark-filled-hover: var(--mantine-color-dark-9);--mantine-color-dark-light: rgba(46, 46, 46, .15);--mantine-color-dark-light-hover: rgba(46, 46, 46, .2);--mantine-color-dark-light-color: var(--mantine-color-dark-3);--mantine-color-dark-outline: var(--mantine-color-dark-4);--mantine-color-dark-outline-hover: rgba(66, 66, 66, .05);--mantine-color-gray-text: var(--mantine-color-gray-4);--mantine-color-gray-filled: var(--mantine-color-gray-8);--mantine-color-gray-filled-hover: var(--mantine-color-gray-9);--mantine-color-gray-light: rgba(134, 142, 150, .15);--mantine-color-gray-light-hover: rgba(134, 142, 150, .2);--mantine-color-gray-light-color: var(--mantine-color-gray-3);--mantine-color-gray-outline: var(--mantine-color-gray-4);--mantine-color-gray-outline-hover: rgba(206, 212, 218, .05);--mantine-color-red-text: var(--mantine-color-red-4);--mantine-color-red-filled: var(--mantine-color-red-8);--mantine-color-red-filled-hover: var(--mantine-color-red-9);--mantine-color-red-light: rgba(250, 82, 82, .15);--mantine-color-red-light-hover: rgba(250, 82, 82, .2);--mantine-color-red-light-color: var(--mantine-color-red-3);--mantine-color-red-outline: var(--mantine-color-red-4);--mantine-color-red-outline-hover: rgba(255, 135, 135, .05);--mantine-color-pink-text: var(--mantine-color-pink-4);--mantine-color-pink-filled: var(--mantine-color-pink-8);--mantine-color-pink-filled-hover: var(--mantine-color-pink-9);--mantine-color-pink-light: rgba(230, 73, 128, .15);--mantine-color-pink-light-hover: rgba(230, 73, 128, .2);--mantine-color-pink-light-color: var(--mantine-color-pink-3);--mantine-color-pink-outline: var(--mantine-color-pink-4);--mantine-color-pink-outline-hover: rgba(247, 131, 172, .05);--mantine-color-grape-text: var(--mantine-color-grape-4);--mantine-color-grape-filled: var(--mantine-color-grape-8);--mantine-color-grape-filled-hover: var(--mantine-color-grape-9);--mantine-color-grape-light: rgba(190, 75, 219, .15);--mantine-color-grape-light-hover: rgba(190, 75, 219, .2);--mantine-color-grape-light-color: var(--mantine-color-grape-3);--mantine-color-grape-outline: var(--mantine-color-grape-4);--mantine-color-grape-outline-hover: rgba(218, 119, 242, .05);--mantine-color-violet-text: var(--mantine-color-violet-4);--mantine-color-violet-filled: var(--mantine-color-violet-8);--mantine-color-violet-filled-hover: var(--mantine-color-violet-9);--mantine-color-violet-light: rgba(121, 80, 242, .15);--mantine-color-violet-light-hover: rgba(121, 80, 242, .2);--mantine-color-violet-light-color: var(--mantine-color-violet-3);--mantine-color-violet-outline: var(--mantine-color-violet-4);--mantine-color-violet-outline-hover: rgba(151, 117, 250, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-4);--mantine-color-indigo-filled: var(--mantine-color-indigo-8);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-9);--mantine-color-indigo-light: rgba(76, 110, 245, .15);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .2);--mantine-color-indigo-light-color: var(--mantine-color-indigo-3);--mantine-color-indigo-outline: var(--mantine-color-indigo-4);--mantine-color-indigo-outline-hover: rgba(116, 143, 252, .05);--mantine-color-blue-text: var(--mantine-color-blue-4);--mantine-color-blue-filled: var(--mantine-color-blue-8);--mantine-color-blue-filled-hover: var(--mantine-color-blue-9);--mantine-color-blue-light: rgba(34, 139, 230, .15);--mantine-color-blue-light-hover: rgba(34, 139, 230, .2);--mantine-color-blue-light-color: var(--mantine-color-blue-3);--mantine-color-blue-outline: var(--mantine-color-blue-4);--mantine-color-blue-outline-hover: rgba(77, 171, 247, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-4);--mantine-color-cyan-filled: var(--mantine-color-cyan-8);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-9);--mantine-color-cyan-light: rgba(21, 170, 191, .15);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .2);--mantine-color-cyan-light-color: var(--mantine-color-cyan-3);--mantine-color-cyan-outline: var(--mantine-color-cyan-4);--mantine-color-cyan-outline-hover: rgba(59, 201, 219, .05);--mantine-color-teal-text: var(--mantine-color-teal-4);--mantine-color-teal-filled: var(--mantine-color-teal-8);--mantine-color-teal-filled-hover: var(--mantine-color-teal-9);--mantine-color-teal-light: rgba(18, 184, 134, .15);--mantine-color-teal-light-hover: rgba(18, 184, 134, .2);--mantine-color-teal-light-color: var(--mantine-color-teal-3);--mantine-color-teal-outline: var(--mantine-color-teal-4);--mantine-color-teal-outline-hover: rgba(56, 217, 169, .05);--mantine-color-green-text: var(--mantine-color-green-4);--mantine-color-green-filled: var(--mantine-color-green-8);--mantine-color-green-filled-hover: var(--mantine-color-green-9);--mantine-color-green-light: rgba(64, 192, 87, .15);--mantine-color-green-light-hover: rgba(64, 192, 87, .2);--mantine-color-green-light-color: var(--mantine-color-green-3);--mantine-color-green-outline: var(--mantine-color-green-4);--mantine-color-green-outline-hover: rgba(105, 219, 124, .05);--mantine-color-lime-text: var(--mantine-color-lime-4);--mantine-color-lime-filled: var(--mantine-color-lime-8);--mantine-color-lime-filled-hover: var(--mantine-color-lime-9);--mantine-color-lime-light: rgba(130, 201, 30, .15);--mantine-color-lime-light-hover: rgba(130, 201, 30, .2);--mantine-color-lime-light-color: var(--mantine-color-lime-3);--mantine-color-lime-outline: var(--mantine-color-lime-4);--mantine-color-lime-outline-hover: rgba(169, 227, 75, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-4);--mantine-color-yellow-filled: var(--mantine-color-yellow-8);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-9);--mantine-color-yellow-light: rgba(250, 176, 5, .15);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .2);--mantine-color-yellow-light-color: var(--mantine-color-yellow-3);--mantine-color-yellow-outline: var(--mantine-color-yellow-4);--mantine-color-yellow-outline-hover: rgba(255, 212, 59, .05);--mantine-color-orange-text: var(--mantine-color-orange-4);--mantine-color-orange-filled: var(--mantine-color-orange-8);--mantine-color-orange-filled-hover: var(--mantine-color-orange-9);--mantine-color-orange-light: rgba(253, 126, 20, .15);--mantine-color-orange-light-hover: rgba(253, 126, 20, .2);--mantine-color-orange-light-color: var(--mantine-color-orange-3);--mantine-color-orange-outline: var(--mantine-color-orange-4);--mantine-color-orange-outline-hover: rgba(255, 169, 77, .05)}:root[data-mantine-color-scheme=light],:host([data-mantine-color-scheme="light"]){--mantine-color-scheme: light;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-black);--mantine-color-text: #000;--mantine-color-body: #fff;--mantine-color-error: var(--mantine-color-red-6);--mantine-color-placeholder: var(--mantine-color-gray-5);--mantine-color-anchor: var(--mantine-color-blue-6);--mantine-color-default: var(--mantine-color-white);--mantine-color-default-hover: var(--mantine-color-gray-0);--mantine-color-default-color: var(--mantine-color-black);--mantine-color-default-border: var(--mantine-color-gray-4);--mantine-color-dimmed: var(--mantine-color-gray-6);--mantine-color-disabled: var(--mantine-color-gray-2);--mantine-color-disabled-color: var(--mantine-color-gray-5);--mantine-color-disabled-border: var(--mantine-color-gray-3);--mantine-color-dark-text: var(--mantine-color-dark-filled);--mantine-color-dark-filled: var(--mantine-color-dark-6);--mantine-color-dark-filled-hover: var(--mantine-color-dark-7);--mantine-color-dark-light: rgba(46, 46, 46, .1);--mantine-color-dark-light-hover: rgba(46, 46, 46, .12);--mantine-color-dark-light-color: var(--mantine-color-dark-6);--mantine-color-dark-outline: var(--mantine-color-dark-6);--mantine-color-dark-outline-hover: rgba(46, 46, 46, .05);--mantine-color-gray-text: var(--mantine-color-gray-filled);--mantine-color-gray-filled: var(--mantine-color-gray-6);--mantine-color-gray-filled-hover: var(--mantine-color-gray-7);--mantine-color-gray-light: rgba(134, 142, 150, .1);--mantine-color-gray-light-hover: rgba(134, 142, 150, .12);--mantine-color-gray-light-color: var(--mantine-color-gray-6);--mantine-color-gray-outline: var(--mantine-color-gray-6);--mantine-color-gray-outline-hover: rgba(134, 142, 150, .05);--mantine-color-red-text: var(--mantine-color-red-filled);--mantine-color-red-filled: var(--mantine-color-red-6);--mantine-color-red-filled-hover: var(--mantine-color-red-7);--mantine-color-red-light: rgba(250, 82, 82, .1);--mantine-color-red-light-hover: rgba(250, 82, 82, .12);--mantine-color-red-light-color: var(--mantine-color-red-6);--mantine-color-red-outline: var(--mantine-color-red-6);--mantine-color-red-outline-hover: rgba(250, 82, 82, .05);--mantine-color-pink-text: var(--mantine-color-pink-filled);--mantine-color-pink-filled: var(--mantine-color-pink-6);--mantine-color-pink-filled-hover: var(--mantine-color-pink-7);--mantine-color-pink-light: rgba(230, 73, 128, .1);--mantine-color-pink-light-hover: rgba(230, 73, 128, .12);--mantine-color-pink-light-color: var(--mantine-color-pink-6);--mantine-color-pink-outline: var(--mantine-color-pink-6);--mantine-color-pink-outline-hover: rgba(230, 73, 128, .05);--mantine-color-grape-text: var(--mantine-color-grape-filled);--mantine-color-grape-filled: var(--mantine-color-grape-6);--mantine-color-grape-filled-hover: var(--mantine-color-grape-7);--mantine-color-grape-light: rgba(190, 75, 219, .1);--mantine-color-grape-light-hover: rgba(190, 75, 219, .12);--mantine-color-grape-light-color: var(--mantine-color-grape-6);--mantine-color-grape-outline: var(--mantine-color-grape-6);--mantine-color-grape-outline-hover: rgba(190, 75, 219, .05);--mantine-color-violet-text: var(--mantine-color-violet-filled);--mantine-color-violet-filled: var(--mantine-color-violet-6);--mantine-color-violet-filled-hover: var(--mantine-color-violet-7);--mantine-color-violet-light: rgba(121, 80, 242, .1);--mantine-color-violet-light-hover: rgba(121, 80, 242, .12);--mantine-color-violet-light-color: var(--mantine-color-violet-6);--mantine-color-violet-outline: var(--mantine-color-violet-6);--mantine-color-violet-outline-hover: rgba(121, 80, 242, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-filled);--mantine-color-indigo-filled: var(--mantine-color-indigo-6);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-7);--mantine-color-indigo-light: rgba(76, 110, 245, .1);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .12);--mantine-color-indigo-light-color: var(--mantine-color-indigo-6);--mantine-color-indigo-outline: var(--mantine-color-indigo-6);--mantine-color-indigo-outline-hover: rgba(76, 110, 245, .05);--mantine-color-blue-text: var(--mantine-color-blue-filled);--mantine-color-blue-filled: var(--mantine-color-blue-6);--mantine-color-blue-filled-hover: var(--mantine-color-blue-7);--mantine-color-blue-light: rgba(34, 139, 230, .1);--mantine-color-blue-light-hover: rgba(34, 139, 230, .12);--mantine-color-blue-light-color: var(--mantine-color-blue-6);--mantine-color-blue-outline: var(--mantine-color-blue-6);--mantine-color-blue-outline-hover: rgba(34, 139, 230, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-filled);--mantine-color-cyan-filled: var(--mantine-color-cyan-6);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-7);--mantine-color-cyan-light: rgba(21, 170, 191, .1);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .12);--mantine-color-cyan-light-color: var(--mantine-color-cyan-6);--mantine-color-cyan-outline: var(--mantine-color-cyan-6);--mantine-color-cyan-outline-hover: rgba(21, 170, 191, .05);--mantine-color-teal-text: var(--mantine-color-teal-filled);--mantine-color-teal-filled: var(--mantine-color-teal-6);--mantine-color-teal-filled-hover: var(--mantine-color-teal-7);--mantine-color-teal-light: rgba(18, 184, 134, .1);--mantine-color-teal-light-hover: rgba(18, 184, 134, .12);--mantine-color-teal-light-color: var(--mantine-color-teal-6);--mantine-color-teal-outline: var(--mantine-color-teal-6);--mantine-color-teal-outline-hover: rgba(18, 184, 134, .05);--mantine-color-green-text: var(--mantine-color-green-filled);--mantine-color-green-filled: var(--mantine-color-green-6);--mantine-color-green-filled-hover: var(--mantine-color-green-7);--mantine-color-green-light: rgba(64, 192, 87, .1);--mantine-color-green-light-hover: rgba(64, 192, 87, .12);--mantine-color-green-light-color: var(--mantine-color-green-6);--mantine-color-green-outline: var(--mantine-color-green-6);--mantine-color-green-outline-hover: rgba(64, 192, 87, .05);--mantine-color-lime-text: var(--mantine-color-lime-filled);--mantine-color-lime-filled: var(--mantine-color-lime-6);--mantine-color-lime-filled-hover: var(--mantine-color-lime-7);--mantine-color-lime-light: rgba(130, 201, 30, .1);--mantine-color-lime-light-hover: rgba(130, 201, 30, .12);--mantine-color-lime-light-color: var(--mantine-color-lime-6);--mantine-color-lime-outline: var(--mantine-color-lime-6);--mantine-color-lime-outline-hover: rgba(130, 201, 30, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-filled);--mantine-color-yellow-filled: var(--mantine-color-yellow-6);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-7);--mantine-color-yellow-light: rgba(250, 176, 5, .1);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .12);--mantine-color-yellow-light-color: var(--mantine-color-yellow-6);--mantine-color-yellow-outline: var(--mantine-color-yellow-6);--mantine-color-yellow-outline-hover: rgba(250, 176, 5, .05);--mantine-color-orange-text: var(--mantine-color-orange-filled);--mantine-color-orange-filled: var(--mantine-color-orange-6);--mantine-color-orange-filled-hover: var(--mantine-color-orange-7);--mantine-color-orange-light: rgba(253, 126, 20, .1);--mantine-color-orange-light-hover: rgba(253, 126, 20, .12);--mantine-color-orange-light-color: var(--mantine-color-orange-6);--mantine-color-orange-outline: var(--mantine-color-orange-6);--mantine-color-orange-outline-hover: rgba(253, 126, 20, .05)}.m_d57069b5{--scrollarea-scrollbar-size: calc(.75rem * var(--mantine-scale));position:relative;overflow:hidden}.m_d57069b5:where([data-autosize]) .m_b1336c6{min-width:min-content}.m_c0783ff9{scrollbar-width:none;overscroll-behavior:var(--scrollarea-over-scroll-behavior);-ms-overflow-style:none;-webkit-overflow-scrolling:touch;width:100%;height:100%}.m_c0783ff9::-webkit-scrollbar{display:none}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):where([data-vertical-hidden]){padding-inline-end:0;padding-inline-start:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):not([data-vertical-hidden]){padding-inline-end:var(--scrollarea-scrollbar-size);padding-inline-start:unset}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):where([data-horizontal-hidden]){padding-bottom:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):not([data-horizontal-hidden]){padding-bottom:var(--scrollarea-scrollbar-size)}.m_f8f631dd{min-width:100%;display:table}.m_c44ba933{user-select:none;touch-action:none;box-sizing:border-box;transition:background-color .15s ease,opacity .15s ease;padding:calc(var(--scrollarea-scrollbar-size) / 5);display:flex;background-color:transparent;flex-direction:row}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_c44ba933:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:hover>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover>.m_d8b5e363{background-color:#ffffff80}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_c44ba933:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:active>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active>.m_d8b5e363{background-color:#ffffff80}}.m_c44ba933:where([data-hidden],[data-state=hidden]){display:none}.m_c44ba933:where([data-orientation=vertical]){width:var(--scrollarea-scrollbar-size);top:0;bottom:var(--sa-corner-width);inset-inline-end:0}.m_c44ba933:where([data-orientation=horizontal]){height:var(--scrollarea-scrollbar-size);flex-direction:column;bottom:0;inset-inline-start:0;inset-inline-end:var(--sa-corner-width)}.m_d8b5e363{flex:1;border-radius:var(--scrollarea-scrollbar-size);position:relative;transition:background-color .15s ease;overflow:hidden;opacity:var(--thumb-opacity)}.m_d8b5e363:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:calc(2.75rem * var(--mantine-scale));min-height:calc(2.75rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d8b5e363{background-color:#0006}:where([data-mantine-color-scheme=dark]) .m_d8b5e363{background-color:#fff6}.m_21657268{position:absolute;opacity:0;transition:opacity .15s ease;display:block;inset-inline-end:0;bottom:0}:where([data-mantine-color-scheme=light]) .m_21657268{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_21657268{background-color:var(--mantine-color-dark-8)}.m_21657268:where([data-hovered]){opacity:1}.m_21657268:where([data-hidden]){display:none}.m_b1336c6{min-width:100%}.m_87cf2631{background-color:transparent;cursor:pointer;border:0;padding:0;appearance:none;font-size:var(--mantine-font-size-md);text-align:left;text-decoration:none;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}:where([dir=rtl]) .m_87cf2631{text-align:right}.m_515a97f8{border:0;clip:rect(0 0 0 0);height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));margin:calc(-.0625rem * var(--mantine-scale));overflow:hidden;padding:0;position:absolute;white-space:nowrap}.m_1b7284a3{--paper-radius: var(--mantine-radius-default);outline:0;-webkit-tap-highlight-color:transparent;display:block;touch-action:manipulation;text-decoration:none;border-radius:var(--paper-radius);box-shadow:var(--paper-shadow);background-color:var(--mantine-color-body)}[data-mantine-color-scheme=light] .m_1b7284a3{--paper-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_1b7284a3{--paper-border-color: var(--mantine-color-dark-4)}.m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--paper-border-color)}.m_9814e45f{inset:0;position:absolute;background:var(--overlay-bg, rgba(0, 0, 0, .6));-webkit-backdrop-filter:var(--overlay-filter);backdrop-filter:var(--overlay-filter);border-radius:var(--overlay-radius, 0);z-index:var(--overlay-z-index)}.m_9814e45f:where([data-fixed]){position:fixed}.m_9814e45f:where([data-center]){display:flex;align-items:center;justify-content:center}.m_38a85659{position:absolute;border:1px solid var(--popover-border-color);padding:var(--mantine-spacing-sm) var(--mantine-spacing-md);box-shadow:var(--popover-shadow, none);border-radius:var(--popover-radius, var(--mantine-radius-default))}.m_38a85659:where([data-fixed]){position:fixed}.m_38a85659:focus{outline:none}:where([data-mantine-color-scheme=light]) .m_38a85659{--popover-border-color: var(--mantine-color-gray-2);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_38a85659{--popover-border-color: var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_a31dc6c1{background-color:inherit;border:1px solid var(--popover-border-color);z-index:1}.m_3d7bc908{position:fixed;inset:0}.m_5ae2e3c{--loader-size-xs: calc(1.125rem * var(--mantine-scale));--loader-size-sm: calc(1.375rem * var(--mantine-scale));--loader-size-md: calc(2.25rem * var(--mantine-scale));--loader-size-lg: calc(2.75rem * var(--mantine-scale));--loader-size-xl: calc(3.625rem * var(--mantine-scale));--loader-size: var(--loader-size-md);--loader-color: var(--mantine-primary-color-filled)}@keyframes m_5d2b3b9d{0%{transform:scale(.6);opacity:0}50%,to{transform:scale(1)}}.m_7a2bd4cd{position:relative;width:var(--loader-size);height:var(--loader-size);display:flex;gap:calc(var(--loader-size) / 5)}.m_870bb79{flex:1;background:var(--loader-color);animation:m_5d2b3b9d 1.2s cubic-bezier(0,.5,.5,1) infinite;border-radius:calc(.125rem * var(--mantine-scale))}.m_870bb79:nth-of-type(1){animation-delay:-.24s}.m_870bb79:nth-of-type(2){animation-delay:-.12s}.m_870bb79:nth-of-type(3){animation-delay:0}@keyframes m_aac34a1{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.5}}.m_4e3f22d7{display:flex;justify-content:center;align-items:center;gap:calc(var(--loader-size) / 10);position:relative;width:var(--loader-size);height:var(--loader-size)}.m_870c4af{width:calc(var(--loader-size) / 3 - var(--loader-size) / 15);height:calc(var(--loader-size) / 3 - var(--loader-size) / 15);border-radius:50%;background:var(--loader-color);animation:m_aac34a1 .8s infinite linear}.m_870c4af:nth-child(2){animation-delay:.4s}@keyframes m_f8e89c4b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.m_b34414df{display:inline-block;width:var(--loader-size);height:var(--loader-size)}.m_b34414df:after{content:"";display:block;width:var(--loader-size);height:var(--loader-size);border-radius:calc(625rem * var(--mantine-scale));border-width:calc(var(--loader-size) / 8);border-style:solid;border-color:var(--loader-color) var(--loader-color) var(--loader-color) transparent;animation:m_f8e89c4b 1.2s linear infinite}.m_8d3f4000{--ai-size-xs: calc(1.125rem * var(--mantine-scale));--ai-size-sm: calc(1.375rem * var(--mantine-scale));--ai-size-md: calc(1.75rem * var(--mantine-scale));--ai-size-lg: calc(2.125rem * var(--mantine-scale));--ai-size-xl: calc(2.75rem * var(--mantine-scale));--ai-size-input-xs: calc(1.875rem * var(--mantine-scale));--ai-size-input-sm: calc(2.25rem * var(--mantine-scale));--ai-size-input-md: calc(2.625rem * var(--mantine-scale));--ai-size-input-lg: calc(3.125rem * var(--mantine-scale));--ai-size-input-xl: calc(3.75rem * var(--mantine-scale));--ai-size: var(--ai-size-md);--ai-color: var(--mantine-color-white);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;overflow:hidden;width:var(--ai-size);height:var(--ai-size);min-width:var(--ai-size);min-height:var(--ai-size);border-radius:var(--ai-radius, var(--mantine-radius-default));background:var(--ai-bg, var(--mantine-primary-color-filled));color:var(--ai-color, var(--mantine-color-white));border:var(--ai-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);cursor:pointer}@media(hover:hover){.m_8d3f4000:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}@media(hover:none){.m_8d3f4000:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}.m_8d3f4000[data-loading]{cursor:not-allowed}.m_8d3f4000[data-loading] .m_8d3afb97{opacity:0;transform:translateY(100%)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-disabled-color);background:var(--mantine-color-disabled)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])):active{transform:none}.m_302b9fb1{inset:calc(-.0625rem * var(--mantine-scale));position:absolute;border-radius:var(--ai-radius, var(--mantine-radius-default));display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_302b9fb1{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_302b9fb1{background-color:#00000026}.m_1a0f1b21{--ai-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_1a0f1b21 :where(*):focus{position:relative;z-index:1}.m_1a0f1b21[data-orientation=horizontal]{flex-direction:row}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical]{flex-direction:column}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2);border-top-width:calc(var(--ai-border-width) / 2)}.m_8d3afb97{display:flex;align-items:center;justify-content:center;transition:transform .15s ease,opacity .1s ease;width:100%;height:100%}.m_437b6484{--section-height-xs: calc(1.125rem * var(--mantine-scale));--section-height-sm: calc(1.375rem * var(--mantine-scale));--section-height-md: calc(1.75rem * var(--mantine-scale));--section-height-lg: calc(2.125rem * var(--mantine-scale));--section-height-xl: calc(2.75rem * var(--mantine-scale));--section-height-input-xs: calc(1.875rem * var(--mantine-scale));--section-height-input-sm: calc(2.25rem * var(--mantine-scale));--section-height-input-md: calc(2.625rem * var(--mantine-scale));--section-height-input-lg: calc(3.125rem * var(--mantine-scale));--section-height-input-xl: calc(3.75rem * var(--mantine-scale));--section-padding-x-xs: calc(.375rem * var(--mantine-scale));--section-padding-x-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-md: calc(.625rem * var(--mantine-scale));--section-padding-x-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-xl: calc(1rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_86a44da5{--cb-size-xs: calc(1.125rem * var(--mantine-scale));--cb-size-sm: calc(1.375rem * var(--mantine-scale));--cb-size-md: calc(1.75rem * var(--mantine-scale));--cb-size-lg: calc(2.125rem * var(--mantine-scale));--cb-size-xl: calc(2.75rem * var(--mantine-scale));--cb-size: var(--cb-size-md);--cb-icon-size: 70%;--cb-radius: var(--mantine-radius-default);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;width:var(--cb-size);height:var(--cb-size);min-width:var(--cb-size);min-height:var(--cb-size);border-radius:var(--cb-radius)}:where([data-mantine-color-scheme=light]) .m_86a44da5{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_86a44da5{color:var(--mantine-color-dark-1)}.m_86a44da5[data-disabled],.m_86a44da5:disabled{cursor:not-allowed;opacity:.6}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-dark-6)}}.m_4081bf90{display:flex;flex-direction:row;flex-wrap:var(--group-wrap, wrap);justify-content:var(--group-justify, flex-start);align-items:var(--group-align, center);gap:var(--group-gap, var(--mantine-spacing-md))}.m_4081bf90:where([data-grow])>*{flex-grow:1;max-width:var(--group-child-width)}.m_615af6c9{line-height:1;padding:0;margin:0;font-weight:400;font-size:var(--mantine-font-size-md)}.m_b5489c3c{display:flex;justify-content:space-between;align-items:center;padding:var(--mb-padding, var(--mantine-spacing-md));padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) - calc(.3125rem * var(--mantine-scale)));position:sticky;top:0;background-color:var(--mantine-color-body);z-index:1000;min-height:calc(3.75rem * var(--mantine-scale));transition:padding-inline-end .1s}.m_60c222c7{position:fixed;width:100%;top:0;bottom:0;z-index:var(--mb-z-index);pointer-events:none}.m_fd1ab0aa{pointer-events:all;box-shadow:var(--mb-shadow, var(--mantine-shadow-xl))}.m_fd1ab0aa [data-mantine-scrollbar]{z-index:1001}[data-offset-scrollbars] .m_fd1ab0aa:has([data-mantine-scrollbar]) .m_b5489c3c{padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) + calc(.3125rem * var(--mantine-scale)))}.m_606cb269{margin-inline-start:auto}.m_5df29311{padding:var(--mb-padding, var(--mantine-spacing-md));padding-top:var(--mb-padding, var(--mantine-spacing-md))}.m_5df29311:where(:not(:only-child)){padding-top:0}.m_6c018570{position:relative;margin-top:var(--input-margin-top, 0rem);margin-bottom:var(--input-margin-bottom, 0rem);--input-height-xs: calc(1.875rem * var(--mantine-scale));--input-height-sm: calc(2.25rem * var(--mantine-scale));--input-height-md: calc(2.625rem * var(--mantine-scale));--input-height-lg: calc(3.125rem * var(--mantine-scale));--input-height-xl: calc(3.75rem * var(--mantine-scale));--input-padding-y-xs: calc(.3125rem * var(--mantine-scale));--input-padding-y-sm: calc(.375rem * var(--mantine-scale));--input-padding-y-md: calc(.5rem * var(--mantine-scale));--input-padding-y-lg: calc(.625rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-height: var(--input-height-sm);--input-radius: var(--mantine-radius-default);--input-cursor: text;--input-text-align: left;--input-line-height: calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));--input-padding: calc(var(--input-height) / 3);--input-padding-inline-start: var(--input-padding);--input-padding-inline-end: var(--input-padding);--input-placeholder-color: var(--mantine-color-placeholder);--input-color: var(--mantine-color-text);--input-disabled-bg: var(--mantine-color-disabled);--input-disabled-color: var(--mantine-color-disabled-color);--input-left-section-size: var(--input-left-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))));--input-right-section-size: var( --input-right-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))) );--input-size: var(--input-height);--section-y: calc(.0625rem * var(--mantine-scale));--left-section-start: calc(.0625rem * var(--mantine-scale));--left-section-border-radius: var(--input-radius) 0 0 var(--input-radius);--right-section-end: calc(.0625rem * var(--mantine-scale));--right-section-border-radius: 0 var(--input-radius) var(--input-radius) 0}.m_6c018570[data-variant=unstyled]{--input-padding: 0;--input-padding-y: 0;--input-padding-inline-start: 0;--input-padding-inline-end: 0}.m_6c018570[data-pointer]{--input-cursor: pointer}.m_6c018570[data-multiline]{--input-padding-y-xs: calc(.28125rem * var(--mantine-scale));--input-padding-y-sm: calc(.34375rem * var(--mantine-scale));--input-padding-y-md: calc(.4375rem * var(--mantine-scale));--input-padding-y-lg: calc(.59375rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-size: auto;--input-line-height: var(--mantine-line-height)}.m_6c018570[data-with-left-section]{--input-padding-inline-start: var(--input-left-section-size)}.m_6c018570[data-with-right-section]{--input-padding-inline-end: var(--input-right-section-size)}.m_6c018570[data-size=xs] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(2.5625rem * var(--mantine-scale))}.m_6c018570[data-size=sm] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(3.125rem * var(--mantine-scale))}.m_6c018570[data-size=md] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(3.75rem * var(--mantine-scale))}.m_6c018570[data-size=lg] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(4.5rem * var(--mantine-scale))}.m_6c018570[data-size=xl] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(5.5625rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-gray-4);--input-bg: var(--mantine-color-white);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-gray-1);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-dark-4);--input-bg: var(--mantine-color-dark-6);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-dark-5);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme] .m_6c018570[data-error]:not([data-variant=unstyled]){--input-bd: var(--mantine-color-error)}[data-mantine-color-scheme] .m_6c018570[data-error]{--input-color: var(--mantine-color-error);--input-placeholder-color: var(--mantine-color-error);--input-section-color: var(--mantine-color-error)}:where([dir=rtl]) .m_6c018570{--input-text-align: right;--left-section-border-radius: 0 var(--input-radius) var(--input-radius) 0;--right-section-border-radius: var(--input-radius) 0 0 var(--input-radius)}.m_8fb7ebe7{-webkit-tap-highlight-color:transparent;appearance:none;resize:var(--input-resize, none);display:block;width:100%;transition:border-color .1s ease;text-align:var(--input-text-align);color:var(--input-color);border:calc(.0625rem * var(--mantine-scale)) solid var(--input-bd);background-color:var(--input-bg);font-family:var(--input-font-family, var(--mantine-font-family));height:var(--input-size);min-height:var(--input-height);line-height:var(--input-line-height);font-size:var(--_input-fz, var(--input-fz, var(--mantine-font-size-md)));border-radius:var(--input-radius);padding-inline-start:var(--input-padding-inline-start);padding-inline-end:var(--input-padding-inline-end);padding-top:var(--input-padding-y, 0rem);padding-bottom:var(--input-padding-y, 0rem);cursor:var(--input-cursor);overflow:var(--input-overflow)}.m_8fb7ebe7[data-no-overflow]{--input-overflow: hidden}.m_8fb7ebe7[data-monospace]{--input-font-family: var(--mantine-font-family-monospace);--_input-fz: calc(var(--input-fz) - calc(.125rem * var(--mantine-scale)))}.m_8fb7ebe7:focus,.m_8fb7ebe7:focus-within{outline:none;--input-bd: var(--input-bd-focus)}[data-error] .m_8fb7ebe7:focus,[data-error] .m_8fb7ebe7:focus-within{--input-bd: var(--mantine-color-error)}.m_8fb7ebe7::placeholder{color:var(--input-placeholder-color);opacity:1}.m_8fb7ebe7::-webkit-inner-spin-button,.m_8fb7ebe7::-webkit-outer-spin-button,.m_8fb7ebe7::-webkit-search-decoration,.m_8fb7ebe7::-webkit-search-cancel-button,.m_8fb7ebe7::-webkit-search-results-button,.m_8fb7ebe7::-webkit-search-results-decoration{appearance:none}.m_8fb7ebe7[type=number]{-moz-appearance:textfield}.m_8fb7ebe7:disabled,.m_8fb7ebe7[data-disabled]{cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7:has(input:disabled){cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7[readonly]{caret-color:transparent}.m_82577fc2{pointer-events:var(--section-pointer-events);position:absolute;z-index:1;inset-inline-start:var(--section-start);inset-inline-end:var(--section-end);bottom:var(--section-y);top:var(--section-y);display:flex;align-items:center;justify-content:center;width:var(--section-size);border-radius:var(--section-border-radius);color:var(--input-section-color, var(--mantine-color-dimmed))}.m_82577fc2[data-position=right]{--section-pointer-events: var(--input-right-section-pointer-events);--section-end: var(--right-section-end);--section-size: var(--input-right-section-size);--section-border-radius: var(--right-section-border-radius)}.m_6c018570[data-size=xs] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(2.5625rem * var(--mantine-scale))}.m_6c018570[data-size=sm] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(3.125rem * var(--mantine-scale))}.m_6c018570[data-size=md] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(3.75rem * var(--mantine-scale))}.m_6c018570[data-size=lg] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(4.5rem * var(--mantine-scale))}.m_6c018570[data-size=xl] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(5.5625rem * var(--mantine-scale))}.m_82577fc2[data-position=left]{--section-pointer-events: var(--input-left-section-pointer-events);--section-start: var(--left-section-start);--section-size: var(--input-left-section-size);--section-border-radius: var(--left-section-border-radius)}.m_88bacfd0{color:var(--input-placeholder-color, var(--mantine-color-placeholder))}[data-error] .m_88bacfd0{--input-placeholder-color: var(--input-color, var(--mantine-color-placeholder))}.m_46b77525{line-height:var(--mantine-line-height)}.m_8fdc1311{display:inline-block;font-weight:500;overflow-wrap:break-word;cursor:default;-webkit-tap-highlight-color:transparent;font-size:var(--input-label-size, var(--mantine-font-size-sm))}.m_78a94662{color:var(--input-asterisk-color, var(--mantine-color-error))}.m_8f816625,.m_fe47ce59{word-wrap:break-word;line-height:1.2;display:block;margin:0;padding:0}.m_8f816625{color:var(--mantine-color-error);font-size:var(--input-error-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_fe47ce59{color:var(--mantine-color-dimmed);font-size:var(--input-description-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_8bffd616{display:flex}.m_96b553a6{--transition-duration: .15s;top:0;left:0;position:absolute;z-index:0;transition-property:transform,width,height;transition-timing-function:ease;transition-duration:0ms}.m_96b553a6:where([data-initialized]){transition-duration:var(--transition-duration)}.m_96b553a6:where([data-hidden]){background-color:red;display:none}.m_9bdbb667{--accordion-radius: var(--mantine-radius-default)}.m_df78851f{overflow-wrap:break-word}.m_4ba554d4{padding:var(--mantine-spacing-md);padding-top:calc(var(--mantine-spacing-xs) / 2)}.m_8fa820a0{margin:0;padding:0}.m_4ba585b8{width:100%;display:flex;align-items:center;flex-direction:row-reverse;padding-inline:var(--mantine-spacing-md);opacity:1;cursor:pointer;background-color:transparent;color:var(--mantine-color-bright)}.m_4ba585b8:where([data-chevron-position=left]){flex-direction:row;padding-inline-start:0}.m_4ba585b8:where(:disabled,[data-disabled]){opacity:.4;cursor:not-allowed}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-dark-6)}}.m_df3ffa0f{color:inherit;font-weight:400;flex:1;overflow:hidden;text-overflow:ellipsis;padding-top:var(--mantine-spacing-sm);padding-bottom:var(--mantine-spacing-sm)}.m_3f35ae96{display:flex;align-items:center;justify-content:flex-start;transition:transform var(--accordion-transition-duration, .2s) ease;width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));min-width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));transform:rotate(0)}.m_3f35ae96:where([data-rotate]){transform:rotate(180deg)}.m_3f35ae96:where([data-position=left]){margin-inline-end:var(--mantine-spacing-md);margin-inline-start:var(--mantine-spacing-md)}.m_9bd771fe{display:flex;align-items:center;justify-content:center;margin-inline-end:var(--mantine-spacing-sm)}.m_9bd771fe:where([data-chevron-position=left]){margin-inline-end:0;margin-inline-start:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_9bd7b098{--item-border-color: var(--mantine-color-gray-3);--item-filled-color: var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_9bd7b098{--item-border-color: var(--mantine-color-dark-4);--item-filled-color: var(--mantine-color-dark-6)}.m_fe19b709{border-bottom:1px solid var(--item-border-color)}.m_1f921b3b{border:1px solid var(--item-border-color);transition:background-color .15s ease}.m_1f921b3b:where([data-active]){background-color:var(--item-filled-color)}.m_1f921b3b:first-of-type{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:first-of-type>[data-accordion-control]{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type>[data-accordion-control]{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b+.m_1f921b3b{border-top:0}.m_2cdf939a{border-radius:var(--accordion-radius)}.m_2cdf939a:where([data-active]){background-color:var(--item-filled-color)}.m_9f59b069{background-color:var(--item-filled-color);border-radius:var(--accordion-radius);border:calc(.0625rem * var(--mantine-scale)) solid transparent;transition:background-color .15s ease}.m_9f59b069[data-active]{border-color:var(--item-border-color)}:where([data-mantine-color-scheme=light]) .m_9f59b069[data-active]{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_9f59b069[data-active]{background-color:var(--mantine-color-dark-7)}.m_9f59b069+.m_9f59b069{margin-top:var(--mantine-spacing-md)}.m_7f854edf{position:fixed;z-index:var(--affix-z-index);inset-inline-start:var(--affix-left);inset-inline-end:var(--affix-right);top:var(--affix-top);bottom:var(--affix-bottom)}.m_66836ed3{--alert-radius: var(--mantine-radius-default);--alert-bg: var(--mantine-primary-color-light);--alert-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--alert-color: var(--mantine-primary-color-light-color);padding:var(--mantine-spacing-md) var(--mantine-spacing-md);border-radius:var(--alert-radius);position:relative;overflow:hidden;background-color:var(--alert-bg);border:var(--alert-bd);color:var(--alert-color)}.m_a5d60502{display:flex}.m_667c2793{flex:1;display:flex;flex-direction:column;gap:var(--mantine-spacing-xs)}.m_6a03f287{display:flex;align-items:center;justify-content:space-between;font-size:var(--mantine-font-size-sm);font-weight:700}.m_6a03f287:where([data-with-close-button]){padding-inline-end:var(--mantine-spacing-md)}.m_698f4f23{display:block;overflow:hidden;text-overflow:ellipsis}.m_667f2a6a{line-height:1;width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));display:flex;align-items:center;justify-content:flex-start;margin-inline-end:var(--mantine-spacing-md);margin-top:calc(.0625rem * var(--mantine-scale))}.m_7fa78076{text-overflow:ellipsis;overflow:hidden;font-size:var(--mantine-font-size-sm)}:where([data-mantine-color-scheme=light]) .m_7fa78076{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_7fa78076{color:var(--mantine-color-white)}.m_7fa78076:where([data-variant=filled]){color:var(--alert-color)}.m_7fa78076:where([data-variant=white]){color:var(--mantine-color-black)}.m_87f54839{width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));color:var(--alert-color)}.m_b6d8b162{-webkit-tap-highlight-color:transparent;text-decoration:none;font-size:var(--text-fz, var(--mantine-font-size-md));line-height:var(--text-lh, var(--mantine-line-height-md));font-weight:400;margin:0;padding:0;color:var(--text-color)}.m_b6d8b162:where([data-truncate]){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m_b6d8b162:where([data-truncate=start]){direction:rtl;text-align:right}:where([dir=rtl]) .m_b6d8b162:where([data-truncate=start]){direction:ltr;text-align:left}.m_b6d8b162:where([data-variant=gradient]){background-image:var(--text-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.m_b6d8b162:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--text-line-clamp);-webkit-box-orient:vertical}.m_b6d8b162:where([data-inherit]){line-height:inherit;font-weight:inherit;font-size:inherit}.m_b6d8b162:where([data-inline]){line-height:1}.m_849cf0da{color:var(--mantine-color-anchor);text-decoration:none;appearance:none;border:none;display:inline;padding:0;margin:0;background-color:transparent;cursor:pointer}@media(hover:hover){.m_849cf0da:where([data-underline=hover]):hover{text-decoration:underline}}@media(hover:none){.m_849cf0da:where([data-underline=hover]):active{text-decoration:underline}}.m_849cf0da:where([data-underline=not-hover]){text-decoration:underline}@media(hover:hover){.m_849cf0da:where([data-underline=not-hover]):hover{text-decoration:none}}@media(hover:none){.m_849cf0da:where([data-underline=not-hover]):active{text-decoration:none}}.m_849cf0da:where([data-underline=always]){text-decoration:underline}.m_849cf0da:where([data-variant=gradient]),.m_849cf0da:where([data-variant=gradient]):hover{text-decoration:none}.m_849cf0da:where([data-line-clamp]){display:-webkit-box}.m_48204f9b{width:var(--slider-size);height:var(--slider-size);position:relative;border-radius:100%;display:flex;align-items:center;justify-content:center;user-select:none}.m_48204f9b:focus-within{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_48204f9b{--slider-size: calc(3.75rem * var(--mantine-scale));--thumb-size: calc(var(--slider-size) / 5)}:where([data-mantine-color-scheme=light]) .m_48204f9b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_48204f9b{background-color:var(--mantine-color-dark-5)}.m_bb9cdbad{position:absolute;inset:calc(.0625rem * var(--mantine-scale));border-radius:var(--slider-size);pointer-events:none}.m_481dd586{width:calc(.125rem * var(--mantine-scale));position:absolute;top:0;bottom:0;left:calc(50% - 1px);transform:rotate(var(--angle))}.m_481dd586:before{content:"";position:absolute;top:calc(var(--thumb-size) / 3);left:calc(.03125rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));height:calc(var(--thumb-size) / 1.5);transform:translate(-50%,-50%)}:where([data-mantine-color-scheme=light]) .m_481dd586:before{background-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_481dd586:before{background-color:var(--mantine-color-dark-3)}.m_481dd586[data-label]:after{min-width:calc(1.125rem * var(--mantine-scale));text-align:center;content:attr(data-label);position:absolute;top:calc(-1.5rem * var(--mantine-scale));left:calc(-.4375rem * var(--mantine-scale));transform:rotate(calc(360deg - var(--angle)));font-size:var(--mantine-font-size-xs)}.m_bc02ba3d{position:absolute;inset-block:0;inset-inline-start:calc(50% - 1.5px);inset-inline-end:0;height:100%;width:calc(.1875rem * var(--mantine-scale));outline:none;pointer-events:none}.m_bc02ba3d:before{content:"";position:absolute;right:0;top:0;height:min(var(--thumb-size),calc(var(--slider-size) / 2));width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_bc02ba3d:before{background-color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_bc02ba3d:before{background-color:var(--mantine-color-dark-1)}.m_bb8e875b{font-size:var(--mantine-font-size-xs)}.m_89ab340[data-resizing]{--app-shell-transition-duration: 0ms !important}.m_89ab340[data-disabled]{--app-shell-header-offset: 0rem !important;--app-shell-navbar-offset: 0rem !important;--app-shell-aside-offset: 0rem !important;--app-shell-footer-offset: 0rem !important}[data-mantine-color-scheme=light] .m_89ab340{--app-shell-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89ab340{--app-shell-border-color: var(--mantine-color-dark-4)}.m_45252eee,.m_9cdde9a,.m_3b16f56b,.m_8983817,.m_3840c879{transition-duration:var(--app-shell-transition-duration);transition-timing-function:var(--app-shell-transition-timing-function)}.m_45252eee,.m_9cdde9a{position:fixed;display:flex;flex-direction:column;top:var(--app-shell-header-offset, 0rem);height:calc(100dvh - var(--app-shell-header-offset, 0rem) - var(--app-shell-footer-offset, 0rem));background-color:var(--mantine-color-body);transition-property:transform,top,height}:where([data-layout=alt]) .m_45252eee,:where([data-layout=alt]) .m_9cdde9a{top:0rem;height:100dvh}.m_45252eee{inset-inline-start:0;width:var(--app-shell-navbar-width);transition-property:transform,top,height;transform:var(--app-shell-navbar-transform);z-index:var(--app-shell-navbar-z-index)}:where([dir=rtl]) .m_45252eee{transform:var(--app-shell-navbar-transform-rtl)}.m_45252eee:where([data-with-border]){border-inline-end:1px solid var(--app-shell-border-color)}.m_9cdde9a{inset-inline-end:0;width:var(--app-shell-aside-width);transform:var(--app-shell-aside-transform);z-index:var(--app-shell-aside-z-index)}:where([dir=rtl]) .m_9cdde9a{transform:var(--app-shell-aside-transform-rtl)}.m_9cdde9a:where([data-with-border]){border-inline-start:1px solid var(--app-shell-border-color)}:where([data-scroll-locked]) .m_9cdde9a{visibility:var(--app-shell-aside-scroll-locked-visibility)}.m_8983817{padding-inline-start:calc(var(--app-shell-navbar-offset, 0rem) + var(--app-shell-padding));padding-inline-end:calc(var(--app-shell-aside-offset, 0rem) + var(--app-shell-padding));padding-top:calc(var(--app-shell-header-offset, 0rem) + var(--app-shell-padding));padding-bottom:calc(var(--app-shell-footer-offset, 0rem) + var(--app-shell-padding));min-height:100dvh;transition-property:padding}.m_3b16f56b,.m_3840c879{position:fixed;inset-inline:0;transition-property:transform,margin-inline-start,margin-inline-end;background-color:var(--mantine-color-body)}:where([data-layout=alt]) .m_3b16f56b,:where([data-layout=alt]) .m_3840c879{margin-inline-start:var(--app-shell-navbar-offset, 0rem);margin-inline-end:var(--app-shell-aside-offset, 0rem)}.m_3b16f56b{top:0;height:var(--app-shell-header-height);background-color:var(--mantine-color-body);transform:var(--app-shell-header-transform);z-index:var(--app-shell-header-z-index)}.m_3b16f56b:where([data-with-border]){border-bottom:1px solid var(--app-shell-border-color)}.m_3840c879{bottom:0;height:calc(var(--app-shell-footer-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);transform:var(--app-shell-footer-transform);z-index:var(--app-shell-footer-z-index)}.m_3840c879:where([data-with-border]){border-top:1px solid var(--app-shell-border-color)}.m_6dcfc7c7{flex-grow:0}.m_6dcfc7c7:where([data-grow]){flex-grow:1}.m_71ac47fc{--ar-ratio: 1;max-width:100%}.m_71ac47fc>:where(*:not(style)){aspect-ratio:var(--ar-ratio);width:100%}.m_71ac47fc>:where(img,video){object-fit:cover}.m_88b62a41{--combobox-padding: calc(.25rem * var(--mantine-scale));padding:var(--combobox-padding)}.m_88b62a41:has([data-mantine-scrollbar]) .m_985517d8{max-width:calc(100% + var(--combobox-padding))}.m_88b62a41[data-composed]{padding-inline-end:0}.m_88b62a41[data-hidden]{display:none}.m_88b62a41,.m_b2821a6e{--combobox-option-padding-xs: calc(.25rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));--combobox-option-padding-sm: calc(.375rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--combobox-option-padding-md: calc(.5rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale));--combobox-option-padding-lg: calc(.625rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--combobox-option-padding-xl: calc(.875rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--combobox-option-padding: var(--combobox-option-padding-sm)}.m_92253aa5{padding:var(--combobox-option-padding);font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border-radius:var(--mantine-radius-default);background-color:transparent;color:inherit;cursor:pointer;overflow-wrap:break-word}.m_92253aa5:where([data-combobox-selected]){background-color:var(--mantine-primary-color-filled);color:var(--mantine-color-white)}.m_92253aa5:where([data-combobox-disabled]){cursor:not-allowed;opacity:.35}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}.m_985517d8{margin-inline:calc(var(--combobox-padding) * -1);margin-top:calc(var(--combobox-padding) * -1);width:calc(100% + var(--combobox-padding) * 2);border-top-width:0;border-inline-width:0;border-end-start-radius:0;border-end-end-radius:0;margin-bottom:var(--combobox-padding);position:relative}:where([data-mantine-color-scheme=light]) .m_985517d8,:where([data-mantine-color-scheme=light]) .m_985517d8:focus{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_985517d8,:where([data-mantine-color-scheme=dark]) .m_985517d8:focus{border-color:var(--mantine-color-dark-4)}:where([data-mantine-color-scheme=light]) .m_985517d8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_985517d8{background-color:var(--mantine-color-dark-7)}.m_2530cd1d{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));text-align:center;padding:var(--combobox-option-padding);color:var(--mantine-color-dimmed)}.m_858f94bd,.m_82b967cb{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border:0 solid transparent;margin-inline:calc(var(--combobox-padding) * -1);padding:var(--combobox-option-padding)}:where([data-mantine-color-scheme=light]) .m_858f94bd,:where([data-mantine-color-scheme=light]) .m_82b967cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_858f94bd,:where([data-mantine-color-scheme=dark]) .m_82b967cb{border-color:var(--mantine-color-dark-4)}.m_82b967cb{border-top-width:calc(.0625rem * var(--mantine-scale));margin-top:var(--combobox-padding);margin-bottom:calc(var(--combobox-padding) * -1)}.m_858f94bd{border-bottom-width:calc(.0625rem * var(--mantine-scale));margin-bottom:var(--combobox-padding);margin-top:calc(var(--combobox-padding) * -1)}.m_254f3e4f:has(.m_2bb2e9e5:only-child){display:none}.m_2bb2e9e5{color:var(--mantine-color-dimmed);font-size:calc(var(--combobox-option-fz, var(--mantine-font-size-sm)) * .85);padding:var(--combobox-option-padding);font-weight:500;position:relative;display:flex;align-items:center}.m_2bb2e9e5:after{content:"";flex:1;inset-inline:0;height:calc(.0625rem * var(--mantine-scale));margin-inline-start:var(--mantine-spacing-xs)}:where([data-mantine-color-scheme=light]) .m_2bb2e9e5:after{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_2bb2e9e5:after{background-color:var(--mantine-color-dark-4)}.m_2bb2e9e5:only-child{display:none}.m_2943220b{--combobox-chevron-size-xs: calc(.875rem * var(--mantine-scale));--combobox-chevron-size-sm: calc(1.125rem * var(--mantine-scale));--combobox-chevron-size-md: calc(1.25rem * var(--mantine-scale));--combobox-chevron-size-lg: calc(1.5rem * var(--mantine-scale));--combobox-chevron-size-xl: calc(1.75rem * var(--mantine-scale));--combobox-chevron-size: var(--combobox-chevron-size-sm)}:where([data-mantine-color-scheme=light]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-gray-6))}:where([data-mantine-color-scheme=dark]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-dark-3))}.m_2943220b{width:var(--combobox-chevron-size);height:var(--combobox-chevron-size);color:var(--_combobox-chevron-color)}.m_2943220b:where([data-error]){color:var(--combobox-chevron-color, var(--mantine-color-error))}.m_390b5f4{display:flex;align-items:center;gap:calc(.5rem * var(--mantine-scale))}.m_390b5f4:where([data-reverse]){justify-content:space-between}.m_8ee53fc2{opacity:.4;width:.8em;min-width:.8em;height:.8em}:where([data-combobox-selected]) .m_8ee53fc2{opacity:1}.m_a530ee0a{width:.8em;min-width:.8em;height:.8em}.m_5f75b09e{--label-lh-xs: calc(1rem * var(--mantine-scale));--label-lh-sm: calc(1.25rem * var(--mantine-scale));--label-lh-md: calc(1.5rem * var(--mantine-scale));--label-lh-lg: calc(1.875rem * var(--mantine-scale));--label-lh-xl: calc(2.25rem * var(--mantine-scale));--label-lh: var(--label-lh-sm)}.m_5f75b09e[data-label-position=left]{--label-order: 1;--label-offset-end: var(--mantine-spacing-sm);--label-offset-start: 0}.m_5f75b09e[data-label-position=right]{--label-order: 2;--label-offset-end: 0;--label-offset-start: var(--mantine-spacing-sm)}.m_5f6e695e{-webkit-tap-highlight-color:transparent;display:flex}.m_d3ea56bb{--label-cursor: var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:inline-flex;flex-direction:column;font-size:var(--label-fz, var(--mantine-font-size-sm));line-height:var(--label-lh);cursor:var(--label-cursor);order:var(--label-order)}fieldset:disabled .m_d3ea56bb,.m_d3ea56bb[data-disabled]{--label-cursor: not-allowed}.m_8ee546b8{cursor:var(--label-cursor);color:inherit;padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}fieldset:disabled .m_8ee546b8,.m_8ee546b8:where([data-disabled]){color:var(--mantine-color-disabled-color)}.m_328f68c0{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end);cursor:default}.m_8e8a99cc{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}.m_26775b0a{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_26775b0a :where(*){cursor:inherit}.m_26775b0a:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_5e5256ee{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled)}.m_5e5256ee:where([data-variant=filled]){--checkbox-icon-color: var(--mantine-color-white)}.m_5e5256ee:where([data-variant=outline]){--checkbox-icon-color: var(--checkbox-color)}.m_5e5256ee{position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);min-width:var(--checkbox-size);height:var(--checkbox-size);min-height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_5e5256ee{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_5e5256ee{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_5e5256ee[data-indeterminate],.m_5e5256ee[data-checked]{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_5e5256ee[data-indeterminate]>.m_1b1c543a,.m_5e5256ee[data-checked]>.m_1b1c543a{opacity:1;transform:none;color:var(--checkbox-icon-color)}.m_5e5256ee[data-disabled]{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}[data-mantine-color-scheme=light] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-dark-3)}.m_76e20374[data-indeterminate]:not([data-disabled]),.m_76e20374[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--checkbox-color)}.m_76e20374[data-indeterminate]:not([data-disabled])>.m_1b1c543a,.m_76e20374[data-checked]:not([data-disabled])>.m_1b1c543a{color:var(--checkbox-icon-color);opacity:1;transform:none}.m_1b1c543a{display:block;width:60%;color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_bf2d988c{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled)}.m_bf2d988c:where([data-variant=filled]){--checkbox-icon-color: var(--mantine-color-white)}.m_bf2d988c:where([data-variant=outline]){--checkbox-icon-color: var(--checkbox-color)}.m_26062bec{position:relative;width:var(--checkbox-size);height:var(--checkbox-size);order:1}.m_26062bec:where([data-label-position=left]){order:2}.m_26063560{appearance:none;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));padding:0;display:block;margin:0;transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_26063560{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_26063560{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_26063560:where([data-error]){border-color:var(--mantine-color-error)}.m_26063560[data-indeterminate],.m_26063560:checked{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_26063560[data-indeterminate]+.m_bf295423,.m_26063560:checked+.m_bf295423{opacity:1;transform:none}.m_26063560:disabled{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}.m_26063560:disabled+.m_bf295423{color:var(--mantine-color-disabled-color)}.m_215c4542+.m_bf295423{color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled),.m_215c4542:checked:not(:disabled){background-color:transparent;border-color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled)+.m_bf295423,.m_215c4542:checked:not(:disabled)+.m_bf295423{color:var(--checkbox-icon-color);opacity:1;transform:none}.m_bf295423{position:absolute;inset:0;width:60%;margin:auto;color:var(--checkbox-icon-color);pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:0;transition:transform .1s ease,opacity .1s ease}.m_11def92b{--ag-spacing: var(--mantine-spacing-sm);--ag-offset: calc(var(--ag-spacing) * -1);display:flex;padding-inline-start:var(--ag-spacing)}.m_f85678b6{--avatar-size-xs: calc(1rem * var(--mantine-scale));--avatar-size-sm: calc(1.625rem * var(--mantine-scale));--avatar-size-md: calc(2.375rem * var(--mantine-scale));--avatar-size-lg: calc(3.5rem * var(--mantine-scale));--avatar-size-xl: calc(5.25rem * var(--mantine-scale));--avatar-size: var(--avatar-size-md);--avatar-radius: calc(62.5rem * var(--mantine-scale));--avatar-bg: var(--mantine-color-gray-light);--avatar-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--avatar-color: var(--mantine-color-gray-light-color);--avatar-placeholder-fz: calc(var(--avatar-size) / 2.5);-webkit-tap-highlight-color:transparent;position:relative;display:block;user-select:none;overflow:hidden;border-radius:var(--avatar-radius);text-decoration:none;padding:0;width:var(--avatar-size);height:var(--avatar-size);min-width:var(--avatar-size)}.m_f85678b6:where([data-within-group]){margin-inline-start:var(--ag-offset);border:2px solid var(--mantine-color-body);background:var(--mantine-color-body)}.m_11f8ac07{object-fit:cover;width:100%;height:100%;display:block}.m_104cd71f{font-weight:700;display:flex;align-items:center;justify-content:center;width:100%;height:100%;user-select:none;border-radius:var(--avatar-radius);font-size:var(--avatar-placeholder-fz);background:var(--avatar-bg);border:var(--avatar-bd);color:var(--avatar-color)}.m_104cd71f>[data-avatar-placeholder-icon]{width:70%;height:70%}.m_2ce0de02{background-size:cover;background-position:center;display:block;width:100%;border:0;text-decoration:none;border-radius:var(--bi-radius, 0)}.m_347db0ec{--badge-height-xs: calc(1rem * var(--mantine-scale));--badge-height-sm: calc(1.125rem * var(--mantine-scale));--badge-height-md: calc(1.25rem * var(--mantine-scale));--badge-height-lg: calc(1.625rem * var(--mantine-scale));--badge-height-xl: calc(2rem * var(--mantine-scale));--badge-fz-xs: calc(.5625rem * var(--mantine-scale));--badge-fz-sm: calc(.625rem * var(--mantine-scale));--badge-fz-md: calc(.6875rem * var(--mantine-scale));--badge-fz-lg: calc(.8125rem * var(--mantine-scale));--badge-fz-xl: calc(1rem * var(--mantine-scale));--badge-padding-x-xs: calc(.375rem * var(--mantine-scale));--badge-padding-x-sm: calc(.5rem * var(--mantine-scale));--badge-padding-x-md: calc(.625rem * var(--mantine-scale));--badge-padding-x-lg: calc(.75rem * var(--mantine-scale));--badge-padding-x-xl: calc(1rem * var(--mantine-scale));--badge-height: var(--badge-height-md);--badge-fz: var(--badge-fz-md);--badge-padding-x: var(--badge-padding-x-md);--badge-radius: calc(62.5rem * var(--mantine-scale));--badge-lh: calc(var(--badge-height) - calc(.125rem * var(--mantine-scale)));--badge-color: var(--mantine-color-white);--badge-bg: var(--mantine-primary-color-filled);--badge-border-width: calc(.0625rem * var(--mantine-scale));--badge-bd: var(--badge-border-width) solid transparent;-webkit-tap-highlight-color:transparent;font-size:var(--badge-fz);border-radius:var(--badge-radius);height:var(--badge-height);line-height:var(--badge-lh);text-decoration:none;padding:0 var(--badge-padding-x);display:inline-grid;align-items:center;justify-content:center;width:fit-content;text-transform:uppercase;font-weight:700;letter-spacing:calc(.015625rem * var(--mantine-scale));cursor:default;text-overflow:ellipsis;overflow:hidden;color:var(--badge-color);background:var(--badge-bg);border:var(--badge-bd)}.m_347db0ec:where([data-with-left-section],[data-variant=dot]){grid-template-columns:auto 1fr}.m_347db0ec:where([data-with-right-section]){grid-template-columns:1fr auto}.m_347db0ec:where([data-with-left-section][data-with-right-section],[data-variant=dot][data-with-right-section]){grid-template-columns:auto 1fr auto}.m_347db0ec:where([data-block]){display:flex;width:100%}.m_347db0ec:where([data-circle]){padding-inline:calc(.125rem * var(--mantine-scale));display:flex;width:var(--badge-height)}.m_fbd81e3d{--badge-dot-size: calc(var(--badge-height) / 3.4)}:where([data-mantine-color-scheme=light]) .m_fbd81e3d{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fbd81e3d{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_fbd81e3d:before{content:"";display:block;width:var(--badge-dot-size);height:var(--badge-dot-size);border-radius:var(--badge-dot-size);background-color:var(--badge-dot-color);margin-inline-end:var(--badge-dot-size)}.m_5add502a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;cursor:inherit}.m_91fdda9b{--badge-section-margin: calc(var(--mantine-spacing-xs) / 2);display:inline-flex;justify-content:center;align-items:center;max-height:calc(var(--badge-height) - var(--badge-border-width) * 2)}.m_91fdda9b:where([data-position=left]){margin-inline-end:var(--badge-section-margin)}.m_91fdda9b:where([data-position=right]){margin-inline-start:var(--badge-section-margin)}.m_ddec01c0{--blockquote-border: 3px solid var(--bq-bd);position:relative;margin:0;border-inline-start:var(--blockquote-border);border-start-end-radius:var(--bq-radius);border-end-end-radius:var(--bq-radius);padding:var(--mantine-spacing-xl) calc(2.375rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_ddec01c0{background-color:var(--bq-bg-light)}:where([data-mantine-color-scheme=dark]) .m_ddec01c0{background-color:var(--bq-bg-dark)}.m_dde7bd57{--blockquote-icon-offset: calc(var(--bq-icon-size) / -2);position:absolute;color:var(--bq-bd);background-color:var(--mantine-color-body);display:flex;align-items:center;justify-content:center;top:var(--blockquote-icon-offset);inset-inline-start:var(--blockquote-icon-offset);width:var(--bq-icon-size);height:var(--bq-icon-size);border-radius:var(--bq-icon-size)}.m_dde51a35{display:block;margin-top:var(--mantine-spacing-md);opacity:.6;font-size:85%}.m_8b3717df{display:flex;align-items:center;flex-wrap:wrap}.m_f678d540{line-height:1;white-space:nowrap;-webkit-tap-highlight-color:transparent}.m_3b8f2208{margin-inline:var(--bc-separator-margin, var(--mantine-spacing-xs));line-height:1;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_3b8f2208{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_3b8f2208{color:var(--mantine-color-dark-2)}.m_fea6bf1a{--burger-size-xs: calc(.75rem * var(--mantine-scale));--burger-size-sm: calc(1.125rem * var(--mantine-scale));--burger-size-md: calc(1.5rem * var(--mantine-scale));--burger-size-lg: calc(2.125rem * var(--mantine-scale));--burger-size-xl: calc(2.625rem * var(--mantine-scale));--burger-size: var(--burger-size-md);--burger-line-size: calc(var(--burger-size) / 12);width:calc(var(--burger-size) + var(--mantine-spacing-xs));height:calc(var(--burger-size) + var(--mantine-spacing-xs));padding:calc(var(--mantine-spacing-xs) / 2);cursor:pointer}:where([data-mantine-color-scheme=light]) .m_fea6bf1a{--burger-color: var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fea6bf1a{--burger-color: var(--mantine-color-white)}.m_d4fb9cad{position:relative;user-select:none}.m_d4fb9cad,.m_d4fb9cad:before,.m_d4fb9cad:after{display:block;width:var(--burger-size);height:var(--burger-line-size);background-color:var(--burger-color);outline:calc(.0625rem * var(--mantine-scale)) solid transparent;transition-property:background-color,transform;transition-duration:var(--burger-transition-duration, .3s);transition-timing-function:var(--burger-transition-timing-function, ease)}.m_d4fb9cad:before,.m_d4fb9cad:after{position:absolute;content:"";inset-inline-start:0}.m_d4fb9cad:before{top:calc(var(--burger-size) / -3)}.m_d4fb9cad:after{top:calc(var(--burger-size) / 3)}.m_d4fb9cad[data-opened]{background-color:transparent}.m_d4fb9cad[data-opened]:before{transform:translateY(calc(var(--burger-size) / 3)) rotate(45deg)}.m_d4fb9cad[data-opened]:after{transform:translateY(calc(var(--burger-size) / -3)) rotate(-45deg)}.m_77c9d27d{--button-height-xs: calc(1.875rem * var(--mantine-scale));--button-height-sm: calc(2.25rem * var(--mantine-scale));--button-height-md: calc(2.625rem * var(--mantine-scale));--button-height-lg: calc(3.125rem * var(--mantine-scale));--button-height-xl: calc(3.75rem * var(--mantine-scale));--button-height-compact-xs: calc(1.375rem * var(--mantine-scale));--button-height-compact-sm: calc(1.625rem * var(--mantine-scale));--button-height-compact-md: calc(1.875rem * var(--mantine-scale));--button-height-compact-lg: calc(2.125rem * var(--mantine-scale));--button-height-compact-xl: calc(2.5rem * var(--mantine-scale));--button-padding-x-xs: calc(.875rem * var(--mantine-scale));--button-padding-x-sm: calc(1.125rem * var(--mantine-scale));--button-padding-x-md: calc(1.375rem * var(--mantine-scale));--button-padding-x-lg: calc(1.625rem * var(--mantine-scale));--button-padding-x-xl: calc(2rem * var(--mantine-scale));--button-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--button-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--button-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--button-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--button-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--button-height: var(--button-height-sm);--button-padding-x: var(--button-padding-x-sm);--button-color: var(--mantine-color-white);user-select:none;font-weight:600;position:relative;line-height:1;text-align:center;overflow:hidden;width:auto;cursor:pointer;display:inline-block;border-radius:var(--button-radius, var(--mantine-radius-default));font-size:var(--button-fz, var(--mantine-font-size-sm));background:var(--button-bg, var(--mantine-primary-color-filled));border:var(--button-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--button-color, var(--mantine-color-white));height:var(--button-height, var(--button-height-sm));padding-inline:var(--button-padding-x, var(--button-padding-x-sm));vertical-align:middle}.m_77c9d27d:where([data-block]){display:block;width:100%}.m_77c9d27d:where([data-with-left-section]){padding-inline-start:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where([data-with-right-section]){padding-inline-end:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;transform:none;color:var(--mantine-color-disabled-color);background:var(--mantine-color-disabled)}.m_77c9d27d:before{content:"";pointer-events:none;position:absolute;inset:calc(-.0625rem * var(--mantine-scale));border-radius:var(--button-radius, var(--mantine-radius-default));transform:translateY(-100%);opacity:0;filter:blur(12px);transition:transform .15s ease,opacity .1s ease}:where([data-mantine-color-scheme=light]) .m_77c9d27d:before{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_77c9d27d:before{background-color:#00000026}.m_77c9d27d:where([data-loading]){cursor:not-allowed;transform:none}.m_77c9d27d:where([data-loading]):before{transform:translateY(0);opacity:1}.m_77c9d27d:where([data-loading]) .m_80f1301b{opacity:0;transform:translateY(100%)}@media(hover:hover){.m_77c9d27d:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}@media(hover:none){.m_77c9d27d:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}.m_80f1301b{display:flex;align-items:center;justify-content:var(--button-justify, center);height:100%;overflow:visible;transition:transform .15s ease,opacity .1s ease}.m_811560b9{white-space:nowrap;height:100%;overflow:hidden;display:flex;align-items:center;opacity:1}.m_811560b9:where([data-loading]){opacity:.2}.m_a74036a{display:flex;align-items:center}.m_a74036a:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_a74036a:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_a25b86ee{position:absolute;left:50%;top:50%}.m_80d6d844{--button-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_80d6d844 :where(.m_77c9d27d):focus{position:relative;z-index:1}.m_80d6d844[data-orientation=horizontal]{flex-direction:row}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical]{flex-direction:column}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--button-border-width) / 2);border-top-width:calc(var(--button-border-width) / 2)}.m_70be2a01{--section-height-xs: calc(1.875rem * var(--mantine-scale));--section-height-sm: calc(2.25rem * var(--mantine-scale));--section-height-md: calc(2.625rem * var(--mantine-scale));--section-height-lg: calc(3.125rem * var(--mantine-scale));--section-height-xl: calc(3.75rem * var(--mantine-scale));--section-height-compact-xs: calc(1.375rem * var(--mantine-scale));--section-height-compact-sm: calc(1.625rem * var(--mantine-scale));--section-height-compact-md: calc(1.875rem * var(--mantine-scale));--section-height-compact-lg: calc(2.125rem * var(--mantine-scale));--section-height-compact-xl: calc(2.5rem * var(--mantine-scale));--section-padding-x-xs: calc(.875rem * var(--mantine-scale));--section-padding-x-sm: calc(1.125rem * var(--mantine-scale));--section-padding-x-md: calc(1.375rem * var(--mantine-scale));--section-padding-x-lg: calc(1.625rem * var(--mantine-scale));--section-padding-x-xl: calc(2rem * var(--mantine-scale));--section-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--section-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--section-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_e615b15f{--card-padding: var(--mantine-spacing-md);position:relative;overflow:hidden;display:flex;flex-direction:column;padding:var(--card-padding);color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_e615b15f{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_e615b15f{background-color:var(--mantine-color-dark-6)}.m_599a2148{display:block;margin-inline:calc(var(--card-padding) * -1)}.m_599a2148:where(:first-child){margin-top:calc(var(--card-padding) * -1);border-top:none!important}.m_599a2148:where(:last-child){margin-bottom:calc(var(--card-padding) * -1);border-bottom:none!important}.m_599a2148:where([data-inherit-padding]){padding-inline:var(--card-padding)}.m_599a2148:where([data-with-border]){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-bottom:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_599a2148{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_599a2148{border-color:var(--mantine-color-dark-4)}.m_599a2148+.m_599a2148{border-top:none!important}.m_4451eb3a{display:flex;align-items:center;justify-content:center}.m_4451eb3a:where([data-inline]){display:inline-flex}.m_f59ffda3{--chip-size-xs: calc(1.4375rem * var(--mantine-scale));--chip-size-sm: calc(1.75rem * var(--mantine-scale));--chip-size-md: calc(2rem * var(--mantine-scale));--chip-size-lg: calc(2.25rem * var(--mantine-scale));--chip-size-xl: calc(2.5rem * var(--mantine-scale));--chip-icon-size-xs: calc(.5625rem * var(--mantine-scale));--chip-icon-size-sm: calc(.75rem * var(--mantine-scale));--chip-icon-size-md: calc(.875rem * var(--mantine-scale));--chip-icon-size-lg: calc(1rem * var(--mantine-scale));--chip-icon-size-xl: calc(1.125rem * var(--mantine-scale));--chip-padding-xs: calc(1rem * var(--mantine-scale));--chip-padding-sm: calc(1.25rem * var(--mantine-scale));--chip-padding-md: calc(1.5rem * var(--mantine-scale));--chip-padding-lg: calc(1.75rem * var(--mantine-scale));--chip-padding-xl: calc(2rem * var(--mantine-scale));--chip-checked-padding-xs: calc(.5125rem * var(--mantine-scale));--chip-checked-padding-sm: calc(.625rem * var(--mantine-scale));--chip-checked-padding-md: calc(.73125rem * var(--mantine-scale));--chip-checked-padding-lg: calc(.84375rem * var(--mantine-scale));--chip-checked-padding-xl: calc(.98125rem * var(--mantine-scale));--chip-spacing-xs: calc(.625rem * var(--mantine-scale));--chip-spacing-sm: calc(.75rem * var(--mantine-scale));--chip-spacing-md: calc(1rem * var(--mantine-scale));--chip-spacing-lg: calc(1.25rem * var(--mantine-scale));--chip-spacing-xl: calc(1.375rem * var(--mantine-scale));--chip-size: var(--chip-size-sm);--chip-icon-size: var(--chip-icon-size-sm);--chip-padding: var(--chip-padding-sm);--chip-spacing: var(--chip-spacing-sm);--chip-checked-padding: var(--chip-checked-padding-sm);--chip-bg: var(--mantine-primary-color-filled);--chip-hover: var(--mantine-primary-color-filled-hover);--chip-color: var(--mantine-color-white);--chip-bd: calc(.0625rem * var(--mantine-scale)) solid transparent}.m_be049a53{display:inline-flex;align-items:center;user-select:none;border-radius:var(--chip-radius, 1000rem);height:var(--chip-size);font-size:var(--chip-fz, var(--mantine-font-size-sm));line-height:calc(var(--chip-size) - calc(.125rem * var(--mantine-scale)));padding-inline:var(--chip-padding);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}.m_be049a53:where([data-checked]){padding:var(--chip-checked-padding)}.m_be049a53:where([data-disabled]){cursor:not-allowed;background-color:var(--mantine-color-disabled);color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-white);border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-dark-6);border:1px solid var(--mantine-color-dark-4)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-dark-5)}}.m_3904c1af:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);border:var(--chip-bd)}@media(hover:hover){.m_3904c1af:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_3904c1af:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_fa109255:not([data-disabled]),.m_f7e165c3:not([data-disabled]){border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-dark-5)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-dark-4)}}.m_fa109255:not([data-disabled]):where([data-checked]),.m_f7e165c3:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);color:var(--chip-color);background-color:var(--chip-bg)}@media(hover:hover){.m_fa109255:not([data-disabled]):where([data-checked]):hover,.m_f7e165c3:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_fa109255:not([data-disabled]):where([data-checked]):active,.m_f7e165c3:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_9ac86df9{width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));max-width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));height:var(--chip-icon-size);display:flex;align-items:center;overflow:hidden}.m_d6d72580{width:var(--chip-icon-size);height:var(--chip-icon-size);display:block;color:var(--chip-icon-color, inherit)}.m_bde07329{width:0;height:0;padding:0;opacity:0;margin:0}.m_bde07329:focus-visible+.m_be049a53{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_b183c0a2{font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);padding:2px calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);font-size:var(--mantine-font-size-xs);margin:0;overflow:auto}:where([data-mantine-color-scheme=light]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-gray-0))}:where([data-mantine-color-scheme=dark]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-dark-6))}.m_b183c0a2[data-block]{padding:var(--mantine-spacing-xs)}.m_de3d2490{--cs-size: calc(1.75rem * var(--mantine-scale));--cs-radius: calc(62.5rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;border:none;appearance:none;display:block;line-height:1;position:relative;width:var(--cs-size);height:var(--cs-size);min-width:var(--cs-size);min-height:var(--cs-size);border-radius:var(--cs-radius);color:inherit;text-decoration:none}[data-mantine-color-scheme=light] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-gray-3);--alpha-overlay-bg: var(--mantine-color-white)}[data-mantine-color-scheme=dark] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-dark-4);--alpha-overlay-bg: var(--mantine-color-dark-7)}.m_862f3d1b{position:absolute;inset:0;border-radius:var(--cs-radius)}.m_98ae7f22{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:1;box-shadow:#0000001a 0 0 0 calc(.0625rem * var(--mantine-scale)) inset,#00000026 0 0 calc(.25rem * var(--mantine-scale)) inset}.m_95709ac0{position:absolute;inset:0;border-radius:var(--cs-radius);background-size:calc(.5rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));background-position:0 0,0 calc(.25rem * var(--mantine-scale)),calc(.25rem * var(--mantine-scale)) calc(-.25rem * var(--mantine-scale)),calc(-.25rem * var(--mantine-scale)) 0;background-image:linear-gradient(45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(-45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--alpha-overlay-color) 75%),linear-gradient(-45deg,var(--alpha-overlay-bg) 75%,var(--alpha-overlay-color) 75%)}.m_93e74e3{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:2;display:flex;align-items:center;justify-content:center}.m_fee9c77{--cp-width-xs: calc(11.25rem * var(--mantine-scale));--cp-width-sm: calc(12.5rem * var(--mantine-scale));--cp-width-md: calc(15rem * var(--mantine-scale));--cp-width-lg: calc(17.5rem * var(--mantine-scale));--cp-width-xl: calc(20rem * var(--mantine-scale));--cp-preview-size-xs: calc(1.625rem * var(--mantine-scale));--cp-preview-size-sm: calc(2.125rem * var(--mantine-scale));--cp-preview-size-md: calc(2.625rem * var(--mantine-scale));--cp-preview-size-lg: calc(3.125rem * var(--mantine-scale));--cp-preview-size-xl: calc(3.375rem * var(--mantine-scale));--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-saturation-height-xs: calc(6.25rem * var(--mantine-scale));--cp-saturation-height-sm: calc(6.875rem * var(--mantine-scale));--cp-saturation-height-md: calc(7.5rem * var(--mantine-scale));--cp-saturation-height-lg: calc(8.75rem * var(--mantine-scale));--cp-saturation-height-xl: calc(10rem * var(--mantine-scale));--cp-preview-size: var(--cp-preview-size-sm);--cp-thumb-size: var(--cp-thumb-size-sm);--cp-saturation-height: var(--cp-saturation-height-sm);--cp-width: var(--cp-width-sm);--cp-body-spacing: var(--mantine-spacing-sm);width:var(--cp-width);padding:calc(.0625rem * var(--mantine-scale))}.m_fee9c77:where([data-full-width]){width:100%}.m_9dddfbac{width:var(--cp-preview-size);height:var(--cp-preview-size)}.m_bffecc3e{display:flex;padding-top:calc(var(--cp-body-spacing) / 2)}.m_3283bb96{flex:1}.m_3283bb96:not(:only-child){margin-inline-end:var(--mantine-spacing-xs)}.m_40d572ba{overflow:hidden;position:absolute;box-shadow:0 0 1px #0009;border:2px solid var(--mantine-color-white);width:var(--cp-thumb-size);height:var(--cp-thumb-size);border-radius:var(--cp-thumb-size);left:calc(var(--thumb-x-offset) - var(--cp-thumb-size) / 2);top:calc(var(--thumb-y-offset) - var(--cp-thumb-size) / 2)}.m_d8ee6fd8{height:unset!important;width:unset!important;min-width:0!important;min-height:0!important;margin:calc(.125rem * var(--mantine-scale));cursor:pointer;padding-bottom:calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)));flex:0 0 calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)))}.m_5711e686{margin-top:calc(.3125rem * var(--mantine-scale));margin-inline:calc(-.125rem * var(--mantine-scale));display:flex;flex-wrap:wrap}.m_5711e686:only-child{margin-top:0}.m_202a296e{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;position:relative;height:var(--cp-saturation-height);border-radius:var(--mantine-radius-sm);margin:calc(var(--cp-thumb-size) / 2)}.m_202a296e:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_202a296e:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_11b3db02{position:absolute;border-radius:var(--mantine-radius-sm);inset:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)))}.m_d856d47d{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-thumb-size: var(--cp-thumb-size, calc(.75rem * var(--mantine-scale)));position:relative;height:calc(var(--cp-thumb-size) + calc(.125rem * var(--mantine-scale)));margin-inline:calc(var(--cp-thumb-size) / 2);outline:none}.m_d856d47d+.m_d856d47d{margin-top:calc(.375rem * var(--mantine-scale))}.m_d856d47d:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_d856d47d:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}:where([data-mantine-color-scheme=light]) .m_d856d47d{--slider-checkers: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d856d47d{--slider-checkers: var(--mantine-color-dark-4)}.m_8f327113{position:absolute;top:0;bottom:0;inset-inline:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)));border-radius:10000rem}.m_b077c2bc{--ci-eye-dropper-icon-size-xs: calc(.875rem * var(--mantine-scale));--ci-eye-dropper-icon-size-sm: calc(1rem * var(--mantine-scale));--ci-eye-dropper-icon-size-md: calc(1.125rem * var(--mantine-scale));--ci-eye-dropper-icon-size-lg: calc(1.25rem * var(--mantine-scale));--ci-eye-dropper-icon-size-xl: calc(1.375rem * var(--mantine-scale));--ci-eye-dropper-icon-size: var(--ci-eye-dropper-icon-size-sm)}.m_66a028b5{--ci-button-size-xs: calc(1.375rem * var(--mantine-scale));--ci-button-size-sm: calc(1.625rem * var(--mantine-scale));--ci-button-size-md: calc(1.75rem * var(--mantine-scale));--ci-button-size-lg: calc(2rem * var(--mantine-scale));--ci-button-size-xl: calc(2.5rem * var(--mantine-scale));--ci-button-size: var(--ci-button-size-sm);width:var(--ci-button-size);height:var(--ci-button-size);min-width:var(--ci-button-size);min-height:var(--ci-button-size)}.m_c5ccdcab{--ci-preview-size-xs: calc(1rem * var(--mantine-scale));--ci-preview-size-sm: calc(1.125rem * var(--mantine-scale));--ci-preview-size-md: calc(1.375rem * var(--mantine-scale));--ci-preview-size-lg: calc(1.75rem * var(--mantine-scale));--ci-preview-size-xl: calc(2.25rem * var(--mantine-scale));--ci-preview-size: var(--ci-preview-size-sm)}.m_5ece2cd7{padding:calc(.5rem * var(--mantine-scale))}.m_7485cace{--container-size-xs: calc(33.75rem * var(--mantine-scale));--container-size-sm: calc(45rem * var(--mantine-scale));--container-size-md: calc(60rem * var(--mantine-scale));--container-size-lg: calc(71.25rem * var(--mantine-scale));--container-size-xl: calc(82.5rem * var(--mantine-scale));--container-size: var(--container-size-md)}.m_7485cace:where([data-strategy=block]){max-width:var(--container-size);padding-inline:var(--mantine-spacing-md);margin-inline:auto}.m_7485cace:where([data-strategy=block]):where([data-fluid]){max-width:100%}.m_7485cace:where([data-strategy=grid]){display:grid;grid-template-columns:1fr min(100%,var(--container-size)) 1fr;margin-inline:auto}.m_7485cace:where([data-strategy=grid])>*{grid-column:2}.m_7485cace:where([data-strategy=grid])>[data-breakout]{grid-column:1 / -1}.m_7485cace:where([data-strategy=grid])>[data-breakout]>[data-container]{max-width:var(--container-size);margin-inline:auto}.m_e2125a27{--dialog-size-xs: calc(10rem * var(--mantine-scale));--dialog-size-sm: calc(12.5rem * var(--mantine-scale));--dialog-size-md: calc(21.25rem * var(--mantine-scale));--dialog-size-lg: calc(25rem * var(--mantine-scale));--dialog-size-xl: calc(31.25rem * var(--mantine-scale));--dialog-size: var(--dialog-size-md);position:relative;width:var(--dialog-size);max-width:calc(100vw - var(--mantine-spacing-xl) * 2);min-height:calc(3.125rem * var(--mantine-scale))}.m_5abab665{position:absolute;top:calc(var(--mantine-spacing-md) / 2);inset-inline-end:calc(var(--mantine-spacing-md) / 2)}.m_3eebeb36{--divider-size-xs: calc(.0625rem * var(--mantine-scale));--divider-size-sm: calc(.125rem * var(--mantine-scale));--divider-size-md: calc(.1875rem * var(--mantine-scale));--divider-size-lg: calc(.25rem * var(--mantine-scale));--divider-size-xl: calc(.3125rem * var(--mantine-scale));--divider-size: var(--divider-size-xs)}:where([data-mantine-color-scheme=light]) .m_3eebeb36{--divider-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3eebeb36{--divider-color: var(--mantine-color-dark-4)}.m_3eebeb36:where([data-orientation=horizontal]){border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color)}.m_3eebeb36:where([data-orientation=vertical]){border-inline-start:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);height:auto;align-self:stretch}.m_3eebeb36:where([data-with-label]){border:0}.m_9e365f20{display:flex;align-items:center;font-size:var(--mantine-font-size-xs);color:var(--mantine-color-dimmed);white-space:nowrap}.m_9e365f20:where([data-position=left]):before{display:none}.m_9e365f20:where([data-position=right]):after{display:none}.m_9e365f20:before{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-end:var(--mantine-spacing-xs)}.m_9e365f20:after{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-start:var(--mantine-spacing-xs)}.m_f11b401e{--drawer-size-xs: calc(20rem * var(--mantine-scale));--drawer-size-sm: calc(23.75rem * var(--mantine-scale));--drawer-size-md: calc(27.5rem * var(--mantine-scale));--drawer-size-lg: calc(38.75rem * var(--mantine-scale));--drawer-size-xl: calc(48.75rem * var(--mantine-scale));--drawer-size: var(--drawer-size-md);--drawer-offset: 0rem}.m_5a7c2c9{z-index:1000}.m_b8a05bbd{flex:var(--drawer-flex, 0 0 var(--drawer-size));height:var(--drawer-height, calc(100% - var(--drawer-offset) * 2));margin:var(--drawer-offset);max-width:calc(100% - var(--drawer-offset) * 2);max-height:calc(100% - var(--drawer-offset) * 2);overflow-y:auto}.m_b8a05bbd[data-hidden]{opacity:0!important;pointer-events:none}.m_31cd769a{display:flex;justify-content:var(--drawer-justify, flex-start);align-items:var(--drawer-align, flex-start)}.m_e9408a47{padding:var(--mantine-spacing-lg);padding-top:var(--mantine-spacing-xs);border-radius:var(--fieldset-radius, var(--mantine-radius-default));min-inline-size:auto}.m_84c9523a{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_84c9523a{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_84c9523a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-7)}.m_ef274e49{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_ef274e49{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_ef274e49{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_eda993d3{padding:0;border:0;border-radius:0}.m_90794832{font-size:var(--mantine-font-size-sm)}.m_74ca27fe{padding:0;margin-bottom:var(--mantine-spacing-sm)}.m_8478a6da{container:mantine-grid / inline-size}.m_410352e9{--grid-overflow: visible;--grid-margin: calc(var(--grid-gutter) / -2);--grid-col-padding: calc(var(--grid-gutter) / 2);overflow:var(--grid-overflow)}.m_dee7bd2f{width:calc(100% + var(--grid-gutter));display:flex;flex-wrap:wrap;justify-content:var(--grid-justify);align-items:var(--grid-align);margin:var(--grid-margin)}.m_96bdd299{--col-flex-grow: 0;--col-offset: 0rem;flex-shrink:0;order:var(--col-order);flex-basis:var(--col-flex-basis);width:var(--col-width);max-width:var(--col-max-width);flex-grow:var(--col-flex-grow);margin-inline-start:var(--col-offset);padding:var(--grid-col-padding)}.m_bcb3f3c2{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=light]) .m_bcb3f3c2{background-color:var(--mark-bg-light)}:where([data-mantine-color-scheme=dark]) .m_bcb3f3c2{background-color:var(--mark-bg-dark)}.m_9e117634{display:block;object-fit:var(--image-object-fit, cover);width:100%;border-radius:var(--image-radius, 0)}@keyframes m_885901b1{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(2.8)}}.m_e5262200{--indicator-size: calc(.625rem * var(--mantine-scale));--indicator-color: var(--mantine-primary-color-filled);position:relative;display:block}.m_e5262200:where([data-inline]){display:inline-block}.m_760d1fb1{position:absolute;top:var(--indicator-top);left:var(--indicator-left);right:var(--indicator-right);bottom:var(--indicator-bottom);transform:translate(var(--indicator-translate-x),var(--indicator-translate-y));min-width:var(--indicator-size);height:var(--indicator-size);border-radius:var(--indicator-radius, 1000rem);z-index:var(--indicator-z-index, 200);display:flex;align-items:center;justify-content:center;font-size:var(--mantine-font-size-xs);background-color:var(--indicator-color);color:var(--indicator-text-color, var(--mantine-color-white));white-space:nowrap}.m_760d1fb1:before{content:"";position:absolute;inset:0;background-color:var(--indicator-color);border-radius:var(--indicator-radius, 1000rem);z-index:-1}.m_760d1fb1:where([data-with-label]){padding-inline:calc(var(--mantine-spacing-xs) / 2)}.m_760d1fb1:where([data-with-border]){border:2px solid var(--mantine-color-body)}.m_760d1fb1[data-processing]:before{animation:m_885901b1 1s linear infinite}.m_dc6f14e2{--kbd-fz-xs: calc(.625rem * var(--mantine-scale));--kbd-fz-sm: calc(.75rem * var(--mantine-scale));--kbd-fz-md: calc(.875rem * var(--mantine-scale));--kbd-fz-lg: calc(1rem * var(--mantine-scale));--kbd-fz-xl: calc(1.25rem * var(--mantine-scale));--kbd-fz: var(--kbd-fz-sm);font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale));unicode-bidi:embed;text-align:center;padding:.12em .45em}:where([data-mantine-color-scheme=light]) .m_dc6f14e2{border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_dc6f14e2{border-color:var(--mantine-color-dark-4);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-6)}.m_abbac491{--list-fz: var(--mantine-font-size-md);--list-lh: var(--mantine-line-height-md);--list-marker-gap: var(--mantine-spacing-lg);list-style-position:outside;font-size:var(--list-fz);line-height:var(--list-lh);margin:0;padding:0;padding-inline-start:var(--list-marker-gap)}.m_abbac491[data-type=none]{--list-marker-gap: 0}.m_abbac491:where([data-with-padding]){padding-inline-start:calc(var(--list-marker-gap) + var(--mantine-spacing-md))}.m_abb6bec2{white-space:normal;line-height:var(--list-lh)}.m_abb6bec2:where([data-with-icon]){list-style:none}.m_abb6bec2:where([data-with-icon]) .m_75cd9f71{--li-direction: row;--li-align: center}.m_abb6bec2:where(:not(:first-of-type)){margin-top:var(--list-spacing, 0)}.m_abb6bec2:where([data-centered]){line-height:1}.m_75cd9f71{display:inline-flex;flex-direction:var(--li-direction, column);align-items:var(--li-align, flex-start);white-space:normal}.m_60f83e5b{display:inline-block;vertical-align:middle;margin-inline-end:var(--mantine-spacing-sm)}.m_6e45937b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:var(--lo-z-index)}.m_e8eb006c{position:relative;z-index:calc(var(--lo-z-index) + 1)}.m_df587f17{z-index:var(--lo-z-index)}.m_dc9b7c9f{padding:calc(.25rem * var(--mantine-scale))}.m_9bfac126{color:var(--mantine-color-dimmed);font-weight:500;font-size:var(--mantine-font-size-xs);padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-sm);cursor:default}.m_efdf90cb{margin-top:calc(.25rem * var(--mantine-scale));margin-bottom:calc(.25rem * var(--mantine-scale));border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_efdf90cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_efdf90cb{border-color:var(--mantine-color-dark-4)}.m_99ac2aa1{font-size:var(--mantine-font-size-sm);width:100%;padding:calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-sm);border-radius:var(--popover-radius, var(--mantine-radius-default));color:var(--menu-item-color, var(--mantine-color-text));display:flex;align-items:center;user-select:none}.m_99ac2aa1:where([data-disabled],:disabled){color:var(--mantine-color-disabled-color);opacity:.6;cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-gray-1))}:where([data-mantine-color-scheme=dark]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-dark-4))}.m_99ac2aa1:where([data-sub-menu-item]){padding-inline-end:calc(.3125rem * var(--mantine-scale))}.m_5476e0d3{flex:1}.m_8b75e504{display:flex;justify-content:center;align-items:center}.m_8b75e504:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_8b75e504:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_b85b0bed{transform:rotate(-90deg)}:where([dir=rtl]) .m_b85b0bed{transform:rotate(90deg)}.m_9df02822{--modal-size-xs: calc(20rem * var(--mantine-scale));--modal-size-sm: calc(23.75rem * var(--mantine-scale));--modal-size-md: calc(27.5rem * var(--mantine-scale));--modal-size-lg: calc(38.75rem * var(--mantine-scale));--modal-size-xl: calc(48.75rem * var(--mantine-scale));--modal-size: var(--modal-size-md);--modal-y-offset: 5dvh;--modal-x-offset: 5vw}.m_9df02822[data-full-screen]{--modal-border-radius: 0 !important}.m_9df02822[data-full-screen] .m_54c44539{--modal-content-flex: 0 0 100%;--modal-content-max-height: auto;--modal-content-height: 100dvh}.m_9df02822[data-full-screen] .m_1f958f16{--modal-inner-y-offset: 0;--modal-inner-x-offset: 0}.m_9df02822[data-centered] .m_1f958f16{--modal-inner-align: center}.m_d0e2b9cd{border-start-start-radius:var(--modal-radius, var(--mantine-radius-default));border-start-end-radius:var(--modal-radius, var(--mantine-radius-default))}.m_54c44539{flex:var(--modal-content-flex, 0 0 var(--modal-size));max-width:100%;max-height:var(--modal-content-max-height, calc(100dvh - var(--modal-y-offset) * 2));height:var(--modal-content-height, auto);overflow-y:auto}.m_54c44539[data-full-screen]{border-radius:0}.m_54c44539[data-hidden]{opacity:0!important;pointer-events:none}.m_1f958f16{display:flex;justify-content:center;align-items:var(--modal-inner-align, flex-start);padding-top:var(--modal-inner-y-offset, var(--modal-y-offset));padding-bottom:var(--modal-inner-y-offset, var(--modal-y-offset));padding-inline:var(--modal-inner-x-offset, var(--modal-x-offset))}.m_7cda1cd6{--pill-fz-xs: calc(.625rem * var(--mantine-scale));--pill-fz-sm: calc(.75rem * var(--mantine-scale));--pill-fz-md: calc(.875rem * var(--mantine-scale));--pill-fz-lg: calc(1rem * var(--mantine-scale));--pill-fz-xl: calc(1.125rem * var(--mantine-scale));--pill-height-xs: calc(1.125rem * var(--mantine-scale));--pill-height-sm: calc(1.375rem * var(--mantine-scale));--pill-height-md: calc(1.5625rem * var(--mantine-scale));--pill-height-lg: calc(1.75rem * var(--mantine-scale));--pill-height-xl: calc(2rem * var(--mantine-scale));--pill-fz: var(--pill-fz-sm);--pill-height: var(--pill-height-sm);font-size:var(--pill-fz);flex:0;height:var(--pill-height);padding-inline:.8em;display:inline-flex;align-items:center;border-radius:var(--pill-radius, 1000rem);line-height:1;white-space:nowrap;user-select:none;-webkit-user-select:none;max-width:100%}:where([data-mantine-color-scheme=dark]) .m_7cda1cd6{background-color:var(--mantine-color-dark-7);color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_7cda1cd6{color:var(--mantine-color-black)}.m_7cda1cd6:where([data-with-remove]:not(:has(button:disabled))){padding-inline-end:0}.m_7cda1cd6:where([data-disabled],:has(button:disabled)){cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_44da308b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=light]) .m_44da308b:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}:where([data-mantine-color-scheme=light]) .m_e3a01f8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=light]) .m_e3a01f8:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}.m_1e0e6180{cursor:inherit;overflow:hidden;height:100%;line-height:var(--pill-height);text-overflow:ellipsis}.m_ae386778{color:inherit;font-size:inherit;height:100%;min-height:unset;min-width:2em;width:unset;border-radius:0;padding-inline-start:.1em;padding-inline-end:.3em;flex:0;border-end-end-radius:var(--pill-radius, 50%);border-start-end-radius:var(--pill-radius, 50%)}.m_7cda1cd6[data-disabled]>.m_ae386778,.m_ae386778:disabled{display:none;background-color:transparent;width:.8em;min-width:.8em;padding:0;cursor:not-allowed}.m_7cda1cd6[data-disabled]>.m_ae386778>svg,.m_ae386778:disabled>svg{display:none}.m_ae386778>svg{pointer-events:none}.m_1dcfd90b{--pg-gap-xs: calc(.375rem * var(--mantine-scale));--pg-gap-sm: calc(.5rem * var(--mantine-scale));--pg-gap-md: calc(.625rem * var(--mantine-scale));--pg-gap-lg: calc(.75rem * var(--mantine-scale));--pg-gap-xl: calc(.75rem * var(--mantine-scale));--pg-gap: var(--pg-gap-sm);display:flex;align-items:center;gap:var(--pg-gap);flex-wrap:wrap}.m_45c4369d{background-color:transparent;appearance:none;min-width:calc(6.25rem * var(--mantine-scale));flex:1;border:0;font-size:inherit;height:1.6em;color:inherit;padding:0}.m_45c4369d::placeholder{color:var(--input-placeholder-color);opacity:1}.m_45c4369d:where([data-type=hidden],[data-type=auto]){height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));top:0;left:0;pointer-events:none;position:absolute;opacity:0}.m_45c4369d:focus{outline:none}.m_45c4369d:where([data-type=auto]:focus){height:1.6em;visibility:visible;opacity:1;position:static}.m_45c4369d:where([data-pointer]:not([data-disabled],:disabled)){cursor:pointer}.m_45c4369d:where([data-disabled],:disabled){cursor:not-allowed}.m_f0824112{--nl-bg: var(--mantine-primary-color-light);--nl-hover: var(--mantine-primary-color-light-hover);--nl-color: var(--mantine-primary-color-light-color);display:flex;align-items:center;width:100%;padding:8px var(--mantine-spacing-sm);user-select:none}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_f0824112:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_f0824112:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:active{background-color:var(--mantine-color-dark-6)}}.m_f0824112:where([data-disabled]){opacity:.4;pointer-events:none}.m_f0824112:where([data-active],[aria-current=page]){background-color:var(--nl-bg);color:var(--nl-color)}@media(hover:hover){.m_f0824112:where([data-active],[aria-current=page]):hover{background-color:var(--nl-hover)}}@media(hover:none){.m_f0824112:where([data-active],[aria-current=page]):active{background-color:var(--nl-hover)}}.m_f0824112:where([data-active],[aria-current=page]) .m_57492dcc{--description-opacity: .9;--description-color: var(--nl-color)}.m_690090b5{display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.m_690090b5>svg{display:block}.m_690090b5:where([data-position=left]){margin-inline-end:var(--mantine-spacing-sm)}.m_690090b5:where([data-position=right]){margin-inline-start:var(--mantine-spacing-sm)}.m_690090b5:where([data-rotate]){transform:rotate(90deg)}.m_1f6ac4c4{font-size:var(--mantine-font-size-sm)}.m_f07af9d2{flex:1;overflow:hidden;text-overflow:ellipsis}.m_f07af9d2:where([data-no-wrap]){white-space:nowrap}.m_57492dcc{display:block;font-size:var(--mantine-font-size-xs);opacity:var(--description-opacity, 1);color:var(--description-color, var(--mantine-color-dimmed));overflow:hidden;text-overflow:ellipsis}:where([data-no-wrap]) .m_57492dcc{white-space:nowrap}.m_e17b862f{padding-inline-start:var(--nl-offset, var(--mantine-spacing-lg))}.m_1fd8a00b{transform:rotate(-90deg)}.m_a513464{--notification-radius: var(--mantine-radius-default);--notification-color: var(--mantine-primary-color-filled);overflow:hidden;box-sizing:border-box;position:relative;display:flex;align-items:center;padding-inline-start:calc(1.375rem * var(--mantine-scale));padding-inline-end:var(--mantine-spacing-xs);padding-top:var(--mantine-spacing-xs);padding-bottom:var(--mantine-spacing-xs);border-radius:var(--notification-radius);box-shadow:var(--mantine-shadow-lg)}.m_a513464:before{content:"";display:block;position:absolute;width:calc(.375rem * var(--mantine-scale));top:var(--notification-radius);bottom:var(--notification-radius);inset-inline-start:calc(.25rem * var(--mantine-scale));border-radius:var(--notification-radius);background-color:var(--notification-color)}:where([data-mantine-color-scheme=light]) .m_a513464{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_a513464{background-color:var(--mantine-color-dark-6)}.m_a513464:where([data-with-icon]):before{display:none}:where([data-mantine-color-scheme=light]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-dark-4)}.m_a4ceffb{box-sizing:border-box;margin-inline-end:var(--mantine-spacing-md);width:calc(1.75rem * var(--mantine-scale));height:calc(1.75rem * var(--mantine-scale));border-radius:calc(1.75rem * var(--mantine-scale));display:flex;align-items:center;justify-content:center;background-color:var(--notification-color);color:var(--mantine-color-white)}.m_b0920b15{margin-inline-end:var(--mantine-spacing-md)}.m_a49ed24{flex:1;overflow:hidden;margin-inline-end:var(--mantine-spacing-xs)}.m_3feedf16{margin-bottom:calc(.125rem * var(--mantine-scale));overflow:hidden;text-overflow:ellipsis;font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);font-weight:500}:where([data-mantine-color-scheme=light]) .m_3feedf16{color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_3feedf16{color:var(--mantine-color-white)}.m_3d733a3a{font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);overflow:hidden;text-overflow:ellipsis}:where([data-mantine-color-scheme=light]) .m_3d733a3a{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a{color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-dark-2)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_919a4d88:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:hover{background-color:var(--mantine-color-dark-8)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_919a4d88:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:active{background-color:var(--mantine-color-dark-8)}}.m_e2f5cd4e{--ni-right-section-width-xs: calc(1.0625rem * var(--mantine-scale));--ni-right-section-width-sm: calc(1.5rem * var(--mantine-scale));--ni-right-section-width-md: calc(1.6875rem * var(--mantine-scale));--ni-right-section-width-lg: calc(1.9375rem * var(--mantine-scale));--ni-right-section-width-xl: calc(2.125rem * var(--mantine-scale))}.m_95e17d22{--ni-chevron-size-xs: calc(.625rem * var(--mantine-scale));--ni-chevron-size-sm: calc(.875rem * var(--mantine-scale));--ni-chevron-size-md: calc(1rem * var(--mantine-scale));--ni-chevron-size-lg: calc(1.125rem * var(--mantine-scale));--ni-chevron-size-xl: calc(1.25rem * var(--mantine-scale));--ni-chevron-size: var(--ni-chevron-size-sm);display:flex;flex-direction:column;width:100%;height:calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));max-width:calc(var(--ni-chevron-size) * 1.7);margin-inline-start:auto}.m_80b4b171{--control-border: 1px solid var(--input-bd);--control-radius: calc(var(--input-radius) - calc(.0625rem * var(--mantine-scale)));flex:0 0 50%;width:100%;padding:0;height:calc(var(--input-height) / 2 - calc(.0625rem * var(--mantine-scale)));border-inline-start:var(--control-border);display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text);background-color:transparent;cursor:pointer}.m_80b4b171:where(:disabled){background-color:transparent;cursor:not-allowed;opacity:.6;color:var(--mantine-color-disabled-color)}.m_e2f5cd4e[data-error] :where(.m_80b4b171){color:var(--mantine-color-error)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_80b4b171:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_80b4b171:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:active{background-color:var(--mantine-color-dark-4)}}.m_80b4b171:where(:first-of-type){border-radius:0;border-start-end-radius:var(--control-radius)}.m_80b4b171:last-of-type{border-radius:0;border-end-end-radius:var(--control-radius)}.m_4addd315{--pagination-control-size-xs: calc(1.375rem * var(--mantine-scale));--pagination-control-size-sm: calc(1.625rem * var(--mantine-scale));--pagination-control-size-md: calc(2rem * var(--mantine-scale));--pagination-control-size-lg: calc(2.375rem * var(--mantine-scale));--pagination-control-size-xl: calc(2.75rem * var(--mantine-scale));--pagination-control-size: var(--pagination-control-size-md);--pagination-control-fz: var(--mantine-font-size-md);--pagination-active-bg: var(--mantine-primary-color-filled)}.m_326d024a{display:flex;align-items:center;justify-content:center;border:calc(.0625rem * var(--mantine-scale)) solid;cursor:pointer;color:var(--mantine-color-text);height:var(--pagination-control-size);min-width:var(--pagination-control-size);font-size:var(--pagination-control-fz);line-height:1;border-radius:var(--pagination-control-radius, var(--mantine-radius-default))}.m_326d024a:where([data-with-padding]){padding:calc(var(--pagination-control-size) / 4)}.m_326d024a:where(:disabled,[data-disabled]){cursor:not-allowed;opacity:.4}:where([data-mantine-color-scheme=light]) .m_326d024a{border-color:var(--mantine-color-gray-4);background-color:var(--mantine-color-white)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}:where([data-mantine-color-scheme=dark]) .m_326d024a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}@media(hover:hover){:where([data-mantine-color-scheme=dark]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=dark]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}.m_326d024a:where([data-active]){background-color:var(--pagination-active-bg);border-color:var(--pagination-active-bg);color:var(--pagination-active-color, var(--mantine-color-white))}@media(hover:hover){.m_326d024a:where([data-active]):hover{background-color:var(--pagination-active-bg)}}@media(hover:none){.m_326d024a:where([data-active]):active{background-color:var(--pagination-active-bg)}}.m_4ad7767d{height:var(--pagination-control-size);min-width:var(--pagination-control-size);display:flex;align-items:center;justify-content:center;pointer-events:none}.m_f61ca620{--psi-button-size-xs: calc(1.375rem * var(--mantine-scale));--psi-button-size-sm: calc(1.625rem * var(--mantine-scale));--psi-button-size-md: calc(1.75rem * var(--mantine-scale));--psi-button-size-lg: calc(2rem * var(--mantine-scale));--psi-button-size-xl: calc(2.5rem * var(--mantine-scale));--psi-icon-size-xs: calc(.75rem * var(--mantine-scale));--psi-icon-size-sm: calc(.9375rem * var(--mantine-scale));--psi-icon-size-md: calc(1.0625rem * var(--mantine-scale));--psi-icon-size-lg: calc(1.1875rem * var(--mantine-scale));--psi-icon-size-xl: calc(1.3125rem * var(--mantine-scale));--psi-button-size: var(--psi-button-size-sm);--psi-icon-size: var(--psi-icon-size-sm)}.m_ccf8da4c{position:relative;overflow:hidden}.m_f2d85dd2{font-family:var(--mantine-font-family);background-color:transparent;border:0;padding-inline-end:var(--input-padding-inline-end);padding-inline-start:var(--input-padding-inline-start);position:absolute;inset:0;outline:0;font-size:inherit;line-height:var(--mantine-line-height);height:100%;width:100%;color:inherit}.m_ccf8da4c[data-disabled] .m_f2d85dd2,.m_f2d85dd2:disabled{cursor:not-allowed}.m_f2d85dd2::placeholder{color:var(--input-placeholder-color);opacity:1}.m_f2d85dd2::-ms-reveal{display:none}.m_b1072d44{width:var(--psi-button-size);height:var(--psi-button-size);min-width:var(--psi-button-size);min-height:var(--psi-button-size)}.m_b1072d44:disabled{display:none}.m_f1cb205a{--pin-input-size-xs: calc(1.875rem * var(--mantine-scale));--pin-input-size-sm: calc(2.25rem * var(--mantine-scale));--pin-input-size-md: calc(2.625rem * var(--mantine-scale));--pin-input-size-lg: calc(3.125rem * var(--mantine-scale));--pin-input-size-xl: calc(3.75rem * var(--mantine-scale));--pin-input-size: var(--pin-input-size-sm)}.m_cb288ead{width:var(--pin-input-size);height:var(--pin-input-size)}@keyframes m_81a374bd{0%{background-position:0 0}to{background-position:calc(2.5rem * var(--mantine-scale)) 0}}@keyframes m_e0fb7a86{0%{background-position:0 0}to{background-position:0 calc(2.5rem * var(--mantine-scale))}}.m_db6d6462{--progress-radius: var(--mantine-radius-default);--progress-size: var(--progress-size-md);--progress-size-xs: calc(.1875rem * var(--mantine-scale));--progress-size-sm: calc(.3125rem * var(--mantine-scale));--progress-size-md: calc(.5rem * var(--mantine-scale));--progress-size-lg: calc(.75rem * var(--mantine-scale));--progress-size-xl: calc(1rem * var(--mantine-scale));position:relative;height:var(--progress-size);border-radius:var(--progress-radius);overflow:hidden;display:flex}:where([data-mantine-color-scheme=light]) .m_db6d6462{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_db6d6462{background-color:var(--mantine-color-dark-4)}.m_db6d6462:where([data-orientation=vertical]){height:auto;width:var(--progress-size);flex-direction:column-reverse}.m_2242eb65{background-color:var(--progress-section-color);height:100%;width:var(--progress-section-size);display:flex;align-items:center;justify-content:center;overflow:hidden;background-size:calc(1.25rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));transition:width var(--progress-transition-duration, .1s) ease}.m_2242eb65:where([data-striped]){background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_2242eb65:where([data-animated]){animation:m_81a374bd 1s linear infinite}.m_2242eb65:where(:last-of-type){border-radius:0;border-start-end-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_2242eb65:where(:first-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-end-start-radius:var(--progress-radius)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65{width:100%;height:var(--progress-section-size);transition:height var(--progress-transition-duration, .1s) ease}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where([data-striped]){background-image:linear-gradient(135deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where([data-animated]){animation:m_e0fb7a86 1s linear infinite}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where(:last-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-start-end-radius:var(--progress-radius)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where(:first-of-type){border-radius:0;border-end-start-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_91e40b74{color:var(--progress-label-color, var(--mantine-color-white));font-weight:700;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:min(calc(var(--progress-size) * .65),calc(1.125rem * var(--mantine-scale)));line-height:1;padding-inline:calc(.25rem * var(--mantine-scale))}.m_db6d6462:where([data-orientation=vertical]) .m_91e40b74{writing-mode:vertical-rl}.m_9dc8ae12{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_9dc8ae12 :where(*){cursor:inherit}.m_9dc8ae12:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_717d7ff6{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-size: var(--radio-size-sm);--radio-color: var(--mantine-primary-color-filled);--radio-icon-color: var(--mantine-color-white);position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--radio-size);min-width:var(--radio-size);height:var(--radio-size);min-height:var(--radio-size);border-radius:var(--radio-radius, 10000px);transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_717d7ff6{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_717d7ff6{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_717d7ff6[data-indeterminate],.m_717d7ff6[data-checked]{background-color:var(--radio-color);border-color:var(--radio-color)}.m_717d7ff6[data-indeterminate]>.m_3e4da632,.m_717d7ff6[data-checked]>.m_3e4da632{opacity:1;transform:none;color:var(--radio-icon-color)}.m_717d7ff6[data-disabled]{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-disabled-color)}.m_2980836c[data-indeterminate]:not([data-disabled]),.m_2980836c[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--radio-color)}.m_2980836c[data-indeterminate]:not([data-disabled])>.m_3e4da632,.m_2980836c[data-checked]:not([data-disabled])>.m_3e4da632{color:var(--radio-color);opacity:1;transform:none}.m_3e4da632{display:block;width:var(--radio-icon-size);height:var(--radio-icon-size);color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_f3f1af94{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-size: var(--radio-size-sm);--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-icon-color: var(--mantine-color-white)}.m_89c4f5e4{position:relative;width:var(--radio-size);height:var(--radio-size);order:1}.m_89c4f5e4:where([data-label-position=left]){order:2}.m_f3ed6b2b{color:var(--radio-icon-color);opacity:var(--radio-icon-opacity, 0);transform:var(--radio-icon-transform, scale(.2) translateY(calc(.625rem * var(--mantine-scale))));transition:opacity .1s ease,transform .2s ease;pointer-events:none;width:var(--radio-icon-size);height:var(--radio-icon-size);position:absolute;top:calc(50% - var(--radio-icon-size) / 2);left:calc(50% - var(--radio-icon-size) / 2)}.m_8a3dbb89{border:calc(.0625rem * var(--mantine-scale)) solid;position:relative;appearance:none;width:var(--radio-size);height:var(--radio-size);border-radius:var(--radio-radius, var(--radio-size));margin:0;display:flex;align-items:center;justify-content:center;transition-property:background-color,border-color;transition-timing-function:ease;transition-duration:.1s;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_8a3dbb89{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_8a3dbb89:checked{background-color:var(--radio-color, var(--mantine-primary-color-filled));border-color:var(--radio-color, var(--mantine-primary-color-filled))}.m_8a3dbb89:checked+.m_f3ed6b2b{--radio-icon-opacity: 1;--radio-icon-transform: scale(1)}.m_8a3dbb89:disabled{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-disabled-color)}.m_8a3dbb89:where([data-error]){border-color:var(--mantine-color-error)}.m_1bfe9d39+.m_f3ed6b2b{--radio-icon-color: var(--radio-color)}.m_1bfe9d39:checked:not(:disabled){background-color:transparent;border-color:var(--radio-color)}.m_1bfe9d39:checked:not(:disabled)+.m_f3ed6b2b{--radio-icon-color: var(--radio-color);--radio-icon-opacity: 1;--radio-icon-transform: none}.m_f8d312f2{--rating-size-xs: calc(.875rem * var(--mantine-scale));--rating-size-sm: calc(1.125rem * var(--mantine-scale));--rating-size-md: calc(1.25rem * var(--mantine-scale));--rating-size-lg: calc(1.75rem * var(--mantine-scale));--rating-size-xl: calc(2rem * var(--mantine-scale));display:flex;width:max-content}.m_f8d312f2:where(:has(input:disabled)){pointer-events:none}.m_61734bb7{position:relative;transition:transform .1s ease}.m_61734bb7:where([data-active]){z-index:1;transform:scale(1.1)}.m_5662a89a{width:var(--rating-size);height:var(--rating-size);display:block}:where([data-mantine-color-scheme=light]) .m_5662a89a{fill:var(--mantine-color-gray-3);stroke:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_5662a89a{fill:var(--mantine-color-dark-3);stroke:var(--mantine-color-dark-3)}.m_5662a89a:where([data-filled]){fill:var(--rating-color);stroke:var(--rating-color)}.m_211007ba{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0;-webkit-tap-highlight-color:transparent}.m_211007ba:focus-visible+label{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_21342ee4{display:block;cursor:pointer;position:absolute;top:0;left:0;z-index:var(--rating-item-z-index, 0);-webkit-tap-highlight-color:transparent}.m_21342ee4:where([data-read-only]){cursor:default}.m_21342ee4:where(:last-of-type){position:relative}.m_fae05d6a{clip-path:var(--rating-symbol-clip-path)}.m_1b3c8819{--tooltip-radius: var(--mantine-radius-default);position:absolute;padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-xs);pointer-events:none;font-size:var(--mantine-font-size-sm);white-space:nowrap;border-radius:var(--tooltip-radius)}:where([data-mantine-color-scheme=light]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-9));color:var(--tooltip-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-2));color:var(--tooltip-color, var(--mantine-color-black))}.m_1b3c8819:where([data-multiline]){white-space:normal}.m_1b3c8819:where([data-fixed]){position:fixed}.m_f898399f{background-color:inherit;border:0;z-index:1}.m_b32e4812{position:relative;width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);--rp-transition-duration: 0ms}.m_d43b5134{width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);transform:rotate(-90deg)}.m_b1ca1fbf{stroke:var(--curve-color, var(--rp-curve-root-color));transition:stroke-dashoffset var(--rp-transition-duration) ease,stroke-dasharray var(--rp-transition-duration) ease,stroke var(--rp-transition-duration)}[data-mantine-color-scheme=light] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-dark-4)}.m_b23f9dc4{position:absolute;top:50%;transform:translateY(-50%);inset-inline:var(--rp-label-offset)}.m_cf365364{--sc-padding-xs: calc(.125rem * var(--mantine-scale)) calc(.375rem * var(--mantine-scale));--sc-padding-sm: calc(.1875rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--sc-padding-md: calc(.25rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--sc-padding-lg: calc(.4375rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--sc-padding-xl: calc(.625rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--sc-transition-duration: .2s;--sc-padding: var(--sc-padding-sm);--sc-transition-timing-function: ease;--sc-font-size: var(--mantine-font-size-sm);position:relative;display:inline-flex;flex-direction:row;width:auto;border-radius:var(--sc-radius, var(--mantine-radius-default));overflow:hidden;padding:calc(.25rem * var(--mantine-scale))}.m_cf365364:where([data-full-width]){display:flex}.m_cf365364:where([data-orientation=vertical]){display:flex;flex-direction:column;width:max-content}.m_cf365364:where([data-orientation=vertical]):where([data-full-width]){width:auto}:where([data-mantine-color-scheme=light]) .m_cf365364{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_cf365364{background-color:var(--mantine-color-dark-8)}.m_9e182ccd{position:absolute;display:block;z-index:1;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_9e182ccd{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_9e182ccd{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}.m_1738fcb2{-webkit-tap-highlight-color:transparent;font-weight:500;display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;border-radius:var(--sc-radius, var(--mantine-radius-default));font-size:var(--sc-font-size);padding:var(--sc-padding);transition:color var(--sc-transition-duration) var(--sc-transition-timing-function);cursor:pointer;outline:var(--segmented-control-outline, none)}:where([data-mantine-color-scheme=light]) .m_1738fcb2{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2{color:var(--mantine-color-dark-1)}.m_1738fcb2:where([data-read-only]){cursor:default}fieldset:disabled .m_1738fcb2,.m_1738fcb2:where([data-disabled]){cursor:not-allowed;color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-black))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-white))}.m_cf365364:where([data-initialized]) .m_1738fcb2:where([data-active]):before{display:none}.m_1738fcb2:where([data-active]):before{content:"";inset:0;z-index:0;position:absolute;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]):before{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]):before{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-white)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-white)}}@media(hover:hover){fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-disabled-color)!important}}@media(hover:none){fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-disabled-color)!important}}.m_1714d588{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0}.m_1714d588[data-focus-ring=auto]:focus:focus-visible+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_1714d588[data-focus-ring=always]:focus+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_69686b9b{position:relative;flex:1;z-index:2;transition:border-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_cf365364[data-with-items-borders] :where(.m_69686b9b):before{content:"";position:absolute;top:0;bottom:0;inset-inline-start:0;background-color:var(--separator-color);width:calc(.0625rem * var(--mantine-scale));transition:background-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_69686b9b[data-orientation=vertical]:before{top:0;inset-inline:0;bottom:auto;height:calc(.0625rem * var(--mantine-scale));width:auto}:where([data-mantine-color-scheme=light]) .m_69686b9b{--separator-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_69686b9b{--separator-color: var(--mantine-color-dark-4)}.m_69686b9b:first-of-type:before{--separator-color: transparent}[data-mantine-color-scheme] .m_69686b9b[data-active]:before,[data-mantine-color-scheme] .m_69686b9b[data-active]+.m_69686b9b:before{--separator-color: transparent}.m_78882f40{position:relative;z-index:2}.m_fa528724{--scp-filled-segment-color: var(--mantine-primary-color-filled);--scp-transition-duration: 0ms;--scp-thickness: calc(.625rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-dark-4)}.m_fa528724{position:relative;width:fit-content}.m_62e9e7e2{display:block;transform:var(--scp-rotation);overflow:hidden}.m_c573fb6f{transition:stroke-dashoffset var(--scp-transition-duration) ease,stroke-dasharray var(--scp-transition-duration) ease,stroke var(--scp-transition-duration)}.m_4fa340f2{position:absolute;margin:0;padding:0;inset-inline:0;text-align:center;z-index:1}.m_4fa340f2:where([data-position=bottom]){bottom:0;padding-inline:calc(var(--scp-thickness) * 2)}.m_4fa340f2:where([data-position=bottom]):where([data-orientation=down]){bottom:auto;top:0}.m_4fa340f2:where([data-position=center]){top:50%;padding-inline:calc(var(--scp-thickness) * 3)}.m_925c2d2c{container:simple-grid / inline-size}.m_2415a157{display:grid;grid-template-columns:repeat(var(--sg-cols),minmax(0,1fr));gap:var(--sg-spacing-y) var(--sg-spacing-x)}@keyframes m_299c329c{0%,to{opacity:.4}50%{opacity:1}}.m_18320242{height:var(--skeleton-height, auto);width:var(--skeleton-width, 100%);border-radius:var(--skeleton-radius, var(--mantine-radius-default));position:relative;transform:translateZ(0);-webkit-transform:translateZ(0)}.m_18320242:where([data-animate]):after{animation:m_299c329c 1.5s linear infinite}.m_18320242:where([data-visible]){overflow:hidden}.m_18320242:where([data-visible]):before{position:absolute;content:"";inset:0;z-index:10;background-color:var(--mantine-color-body)}.m_18320242:where([data-visible]):after{position:absolute;content:"";inset:0;z-index:11}:where([data-mantine-color-scheme=light]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-dark-4)}.m_dd36362e{--slider-size-xs: calc(.25rem * var(--mantine-scale));--slider-size-sm: calc(.375rem * var(--mantine-scale));--slider-size-md: calc(.5rem * var(--mantine-scale));--slider-size-lg: calc(.625rem * var(--mantine-scale));--slider-size-xl: calc(.75rem * var(--mantine-scale));--slider-size: var(--slider-size-md);--slider-radius: calc(62.5rem * var(--mantine-scale));--slider-color: var(--mantine-primary-color-filled);--slider-track-disabled-bg: var(--mantine-color-disabled);-webkit-tap-highlight-color:transparent;outline:none;height:calc(var(--slider-size) * 2);padding-inline:var(--slider-size);display:flex;flex-direction:column;align-items:center;touch-action:none;position:relative}[data-mantine-color-scheme=light] .m_dd36362e{--slider-track-bg: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_dd36362e{--slider-track-bg: var(--mantine-color-dark-4)}.m_c9357328{position:absolute;top:calc(-2.25rem * var(--mantine-scale));font-size:var(--mantine-font-size-xs);color:var(--mantine-color-white);padding:calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);white-space:nowrap;pointer-events:none;user-select:none;touch-action:none}:where([data-mantine-color-scheme=light]) .m_c9357328{background-color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_c9357328{background-color:var(--mantine-color-dark-4)}.m_c9a9a60a{position:absolute;display:flex;height:var(--slider-thumb-size);width:var(--slider-thumb-size);border:calc(.25rem * var(--mantine-scale)) solid;transform:translate(-50%,-50%);top:50%;cursor:pointer;border-radius:var(--slider-radius);align-items:center;justify-content:center;transition:box-shadow .1s ease,transform .1s ease;z-index:3;user-select:none;touch-action:none;outline-offset:calc(.125rem * var(--mantine-scale));left:var(--slider-thumb-offset)}:where([dir=rtl]) .m_c9a9a60a{left:auto;right:calc(var(--slider-thumb-offset) - var(--slider-thumb-size))}fieldset:disabled .m_c9a9a60a,.m_c9a9a60a:where([data-disabled]){display:none}.m_c9a9a60a:where([data-dragging]){transform:translate(-50%,-50%) scale(1.05);box-shadow:var(--mantine-shadow-sm)}:where([data-mantine-color-scheme=light]) .m_c9a9a60a{color:var(--slider-color);border-color:var(--slider-color);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_c9a9a60a{color:var(--mantine-color-white);border-color:var(--mantine-color-white);background-color:var(--slider-color)}.m_a8645c2{display:flex;align-items:center;width:100%;height:calc(var(--slider-size) * 2);cursor:pointer}fieldset:disabled .m_a8645c2,.m_a8645c2:where([data-disabled]){cursor:not-allowed}.m_c9ade57f{position:relative;width:100%;height:var(--slider-size)}.m_c9ade57f:where([data-inverted]:not([data-disabled])){--track-bg: var(--slider-color)}fieldset:disabled .m_c9ade57f:where([data-inverted]),.m_c9ade57f:where([data-inverted][data-disabled]){--track-bg: var(--slider-track-disabled-bg)}.m_c9ade57f:before{content:"";position:absolute;top:0;bottom:0;border-radius:var(--slider-radius);inset-inline:calc(var(--slider-size) * -1);background-color:var(--track-bg, var(--slider-track-bg));z-index:0}.m_38aeed47{position:absolute;z-index:1;top:0;bottom:0;background-color:var(--slider-color);border-radius:var(--slider-radius);width:var(--slider-bar-width);inset-inline-start:var(--slider-bar-offset)}.m_38aeed47:where([data-inverted]){background-color:var(--slider-track-bg)}fieldset:disabled .m_38aeed47:where(:not([data-inverted])),.m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-disabled-color)}.m_b7b0423a{position:absolute;inset-inline-start:calc(var(--mark-offset) - var(--slider-size) / 2);top:0;z-index:2;height:0;pointer-events:none}.m_dd33bc19{border:calc(.125rem * var(--mantine-scale)) solid;height:var(--slider-size);width:var(--slider-size);border-radius:calc(62.5rem * var(--mantine-scale));background-color:var(--mantine-color-white);pointer-events:none}:where([data-mantine-color-scheme=light]) .m_dd33bc19{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_dd33bc19{border-color:var(--mantine-color-dark-4)}.m_dd33bc19:where([data-filled]){border-color:var(--slider-color)}.m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-disabled-border)}.m_68c77a5b{transform:translate(calc(-50% + var(--slider-size) / 2),calc(var(--mantine-spacing-xs) / 2));font-size:var(--mantine-font-size-sm);white-space:nowrap;cursor:pointer;user-select:none}:where([data-mantine-color-scheme=light]) .m_68c77a5b{color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_68c77a5b{color:var(--mantine-color-dark-2)}.m_559cce2d{position:relative}.m_559cce2d:where([data-has-spoiler]){margin-bottom:calc(1.5rem * var(--mantine-scale))}.m_b912df4e{display:flex;flex-direction:column;overflow:hidden;transition:max-height var(--spoiler-transition-duration, .2s) ease}.m_b9131032{position:absolute;inset-inline-start:0;top:100%;height:calc(1.5rem * var(--mantine-scale))}.m_6d731127{display:flex;flex-direction:column;align-items:var(--stack-align, stretch);justify-content:var(--stack-justify, flex-start);gap:var(--stack-gap, var(--mantine-spacing-md))}.m_cbb4ea7e{--stepper-icon-size-xs: calc(2.125rem * var(--mantine-scale));--stepper-icon-size-sm: calc(2.25rem * var(--mantine-scale));--stepper-icon-size-md: calc(2.625rem * var(--mantine-scale));--stepper-icon-size-lg: calc(3rem * var(--mantine-scale));--stepper-icon-size-xl: calc(3.25rem * var(--mantine-scale));--stepper-icon-size: var(--stepper-icon-size-md);--stepper-color: var(--mantine-primary-color-filled);--stepper-content-padding: var(--mantine-spacing-md);--stepper-spacing: var(--mantine-spacing-md);--stepper-radius: calc(62.5rem * var(--mantine-scale));--stepper-fz: var(--mantine-font-size-md);--stepper-outline-thickness: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-dark-5)}.m_aaf89d0b{display:flex;flex-wrap:nowrap;align-items:center}.m_aaf89d0b:where([data-wrap]){flex-wrap:wrap;gap:var(--mantine-spacing-md) 0}.m_aaf89d0b:where([data-orientation=vertical]){flex-direction:column}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=left]){align-items:flex-start}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=right]){align-items:flex-end}.m_aaf89d0b:where([data-orientation=horizontal]){flex-direction:row}.m_2a371ac9{transition:background-color .15s ease;flex:1;height:var(--stepper-outline-thickness);margin-inline:var(--mantine-spacing-md);background-color:var(--stepper-outline-color)}.m_2a371ac9:where([data-active]){background-color:var(--stepper-color)}.m_78da155d{padding-top:var(--stepper-content-padding)}.m_cbb57068{--step-color: var(--stepper-color);display:flex;cursor:default}.m_cbb57068:where([data-allow-click]){cursor:pointer}.m_cbb57068:where([data-icon-position=left]){flex-direction:row}.m_cbb57068:where([data-icon-position=right]){flex-direction:row-reverse}.m_f56b1e2c{align-items:center}.m_833edb7e{--separator-spacing: calc(var(--mantine-spacing-xs) / 2);justify-content:flex-start;min-height:calc(var(--stepper-icon-size) + var(--mantine-spacing-xl) + var(--separator-spacing));margin-top:var(--separator-spacing);overflow:hidden}.m_833edb7e:where(:first-of-type){margin-top:0}.m_833edb7e:where(:last-of-type){min-height:auto}.m_833edb7e:where(:last-of-type) .m_6496b3f3{display:none}.m_818e70b{position:relative}.m_6496b3f3{top:calc(var(--stepper-icon-size) + var(--separator-spacing));inset-inline-start:calc(var(--stepper-icon-size) / 2);height:100vh;position:absolute;border-inline-start:var(--stepper-outline-thickness) solid var(--stepper-outline-color)}.m_6496b3f3:where([data-active]){border-color:var(--stepper-color)}.m_1959ad01{height:var(--stepper-icon-size);width:var(--stepper-icon-size);min-height:var(--stepper-icon-size);min-width:var(--stepper-icon-size);border-radius:var(--stepper-radius);font-size:var(--stepper-fz);display:flex;align-items:center;justify-content:center;position:relative;font-weight:700;transition:background-color .15s ease,border-color .15s ease;border:var(--stepper-outline-thickness) solid var(--stepper-outline-color);background-color:var(--stepper-outline-color)}:where([data-mantine-color-scheme=light]) .m_1959ad01{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1959ad01{color:var(--mantine-color-dark-1)}.m_1959ad01:where([data-progress]){border-color:var(--step-color)}.m_1959ad01:where([data-completed]){color:var(--stepper-icon-color, var(--mantine-color-white));background-color:var(--step-color);border-color:var(--step-color)}.m_a79331dc{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--stepper-icon-color, var(--mantine-color-white))}.m_1956aa2a{display:flex;flex-direction:column}.m_1956aa2a:where([data-icon-position=left]){margin-inline-start:var(--mantine-spacing-sm)}.m_1956aa2a:where([data-icon-position=right]){text-align:right;margin-inline-end:var(--mantine-spacing-sm)}:where([dir=rtl]) .m_1956aa2a:where([data-icon-position=right]){text-align:left}.m_12051f6c{font-weight:500;font-size:var(--stepper-fz);line-height:1}.m_164eea74{margin-top:calc(var(--stepper-spacing) / 3);margin-bottom:calc(var(--stepper-spacing) / 3);font-size:calc(var(--stepper-fz) - calc(.125rem * var(--mantine-scale)));line-height:1;color:var(--mantine-color-dimmed)}.m_5f93f3bb{--switch-height-xs: calc(1rem * var(--mantine-scale));--switch-height-sm: calc(1.25rem * var(--mantine-scale));--switch-height-md: calc(1.5rem * var(--mantine-scale));--switch-height-lg: calc(1.875rem * var(--mantine-scale));--switch-height-xl: calc(2.25rem * var(--mantine-scale));--switch-width-xs: calc(2rem * var(--mantine-scale));--switch-width-sm: calc(2.375rem * var(--mantine-scale));--switch-width-md: calc(2.875rem * var(--mantine-scale));--switch-width-lg: calc(3.5rem * var(--mantine-scale));--switch-width-xl: calc(4.5rem * var(--mantine-scale));--switch-thumb-size-xs: calc(.75rem * var(--mantine-scale));--switch-thumb-size-sm: calc(.875rem * var(--mantine-scale));--switch-thumb-size-md: calc(1.125rem * var(--mantine-scale));--switch-thumb-size-lg: calc(1.375rem * var(--mantine-scale));--switch-thumb-size-xl: calc(1.75rem * var(--mantine-scale));--switch-label-font-size-xs: calc(.3125rem * var(--mantine-scale));--switch-label-font-size-sm: calc(.375rem * var(--mantine-scale));--switch-label-font-size-md: calc(.4375rem * var(--mantine-scale));--switch-label-font-size-lg: calc(.5625rem * var(--mantine-scale));--switch-label-font-size-xl: calc(.6875rem * var(--mantine-scale));--switch-track-label-padding-xs: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-sm: calc(.15625rem * var(--mantine-scale));--switch-track-label-padding-md: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-lg: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-xl: calc(.21875rem * var(--mantine-scale));--switch-height: var(--switch-height-sm);--switch-width: var(--switch-width-sm);--switch-thumb-size: var(--switch-thumb-size-sm);--switch-label-font-size: var(--switch-label-font-size-sm);--switch-track-label-padding: var(--switch-track-label-padding-sm);--switch-radius: calc(62.5rem * var(--mantine-scale));--switch-color: var(--mantine-primary-color-filled);--switch-disabled-color: var(--mantine-color-disabled);position:relative}.m_926b4011{height:0;width:0;opacity:0;margin:0;padding:0;position:absolute;overflow:hidden;white-space:nowrap}.m_9307d992{-webkit-tap-highlight-color:transparent;cursor:var(--switch-cursor, var(--mantine-cursor-type));overflow:hidden;position:relative;border-radius:var(--switch-radius);background-color:var(--switch-bg);height:var(--switch-height);min-width:var(--switch-width);margin:0;transition:background-color .15s ease,border-color .15s ease;appearance:none;display:flex;align-items:center;font-size:var(--switch-label-font-size);font-weight:600;order:var(--switch-order, 1);user-select:none;z-index:0;line-height:0;color:var(--switch-text-color)}.m_9307d992:where([data-without-labels]){width:var(--switch-width)}.m_926b4011:focus-visible+.m_9307d992{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_926b4011:checked+.m_9307d992{--switch-bg: var(--switch-color);--switch-text-color: var(--mantine-color-white)}.m_926b4011:disabled+.m_9307d992,.m_926b4011[data-disabled]+.m_9307d992{--switch-bg: var(--switch-disabled-color);--switch-cursor: not-allowed}[data-mantine-color-scheme=light] .m_9307d992{--switch-bg: var(--mantine-color-gray-3);--switch-text-color: var(--mantine-color-gray-6)}[data-mantine-color-scheme=dark] .m_9307d992{--switch-bg: var(--mantine-color-dark-5);--switch-text-color: var(--mantine-color-dark-1)}.m_9307d992[data-label-position=left]{--switch-order: 2}.m_93039a1d{position:absolute;z-index:1;border-radius:var(--switch-radius);display:flex;background-color:var(--switch-thumb-bg, var(--mantine-color-white));height:var(--switch-thumb-size);width:var(--switch-thumb-size);inset-inline-start:var(--switch-thumb-start, var(--switch-track-label-padding));transition:inset-inline-start .15s ease}.m_93039a1d:where([data-with-thumb-indicator]):before{content:"";width:40%;height:40%;background-color:var(--switch-bg);position:absolute;border-radius:var(--switch-radius);top:50%;left:50%;transform:translate(-50%,-50%)}.m_93039a1d>*{margin:auto}.m_926b4011:checked+*>.m_93039a1d{--switch-thumb-start: calc(100% - var(--switch-thumb-size) - var(--switch-track-label-padding))}.m_926b4011:disabled+*>.m_93039a1d,.m_926b4011[data-disabled]+*>.m_93039a1d{--switch-thumb-bg: var(--switch-thumb-bg-disabled)}[data-mantine-color-scheme=light] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-dark-3)}.m_8277e082{height:100%;display:grid;place-content:center;min-width:calc(var(--switch-width) - var(--switch-thumb-size));padding-inline:var(--switch-track-label-padding);margin-inline-start:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));transition:margin .15s ease}.m_926b4011:checked+*>.m_8277e082{margin-inline-end:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));margin-inline-start:0}.m_b23fa0ef{width:100%;border-collapse:collapse;border-spacing:0;line-height:var(--mantine-line-height);font-size:var(--mantine-font-size-sm);table-layout:var(--table-layout, auto);caption-side:var(--table-caption-side, bottom);border:none}:where([data-mantine-color-scheme=light]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-gray-1);--table-striped-color: var(--mantine-color-gray-0);--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-dark-5);--table-striped-color: var(--mantine-color-dark-6);--table-border-color: var(--mantine-color-dark-4)}.m_b23fa0ef:where([data-with-table-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b23fa0ef:where([data-tabular-nums]){font-variant-numeric:tabular-nums}.m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){font-weight:500}:where([data-mantine-color-scheme=light]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-dark-6)}.m_4e7aa4f3{text-align:left}:where([dir=rtl]) .m_4e7aa4f3{text-align:right}.m_4e7aa4fd{border-bottom:none;background-color:transparent}@media(hover:hover){.m_4e7aa4fd:hover:where([data-hover]){background-color:var(--tr-hover-bg)}}@media(hover:none){.m_4e7aa4fd:active:where([data-hover]){background-color:var(--tr-hover-bg)}}.m_4e7aa4fd:where([data-with-row-border]){border-bottom:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef,.m_4e7aa4f3{padding:var(--table-vertical-spacing) var(--table-horizontal-spacing, var(--mantine-spacing-xs))}.m_4e7aa4ef:where([data-with-column-border]:not(:first-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:first-child)){border-inline-start:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef:where([data-with-column-border]:not(:last-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:last-child)){border-inline-end:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b2404537>:where(tr):where([data-with-row-border]:last-of-type){border-bottom:none}.m_b2404537>:where(tr):where([data-striped=odd]:nth-of-type(odd)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr):where([data-striped=even]:nth-of-type(2n)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr)[data-hover]{--tr-hover-bg: var(--table-highlight-on-hover-color, var(--table-hover-color))}.m_b242d975{top:var(--table-sticky-header-offset, 0);z-index:3}.m_b242d975:where([data-sticky]){position:sticky}.m_b242d975:where([data-sticky]) :where(.m_4e7aa4f3){position:sticky;top:var(--table-sticky-header-offset, 0);background-color:var(--mantine-color-body)}:where([data-with-table-border]) .m_b242d975[data-sticky]{position:sticky;top:var(--table-sticky-header-offset, 0);z-index:4;border-top:none}:where([data-with-table-border]) .m_b242d975[data-sticky]:before{content:"";display:block;position:absolute;left:0;top:calc(-.03125rem * var(--mantine-scale));width:100%;height:calc(.0625rem * var(--mantine-scale));background-color:var(--table-border-color);z-index:5}:where([data-with-table-border]) .m_b242d975[data-sticky] .m_4e7aa4f3:first-child{border-top:none}.m_9e5a3ac7{color:var(--mantine-color-dimmed)}.m_9e5a3ac7:where([data-side=top]){margin-bottom:var(--mantine-spacing-xs)}.m_9e5a3ac7:where([data-side=bottom]){margin-top:var(--mantine-spacing-xs)}.m_a100c15{overflow-x:var(--table-overflow)}.m_62259741{min-width:var(--table-min-width);max-height:var(--table-max-height)}.m_bcaa9990{display:flex;flex-direction:column;--toc-depth-offset: .8em}.m_375a65ef{display:block;padding:.3em .8em;font-size:var(--toc-size, var(--mantine-font-size-md));border-radius:var(--toc-radius, var(--mantine-radius-default));padding-left:max(calc(var(--depth-offset) * var(--toc-depth-offset)),.8em)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}.m_375a65ef:where([data-active]){background-color:var(--toc-bg);color:var(--toc-color)}[data-mantine-color-scheme=light] .m_89d60db1{--tab-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89d60db1{--tab-border-color: var(--mantine-color-dark-4)}.m_89d60db1{display:var(--tabs-display);flex-direction:var(--tabs-flex-direction);--tabs-list-direction: row;--tabs-panel-grow: unset;--tabs-display: block;--tabs-flex-direction: row;--tabs-list-border-width: 0;--tabs-list-border-size: 0 0 var(--tabs-list-border-width) 0;--tabs-list-gap: unset;--tabs-list-line-bottom: 0;--tabs-list-line-top: unset;--tabs-list-line-start: 0;--tabs-list-line-end: 0;--tab-radius: var(--tabs-radius) var(--tabs-radius) 0 0;--tab-border-width: 0 0 var(--tabs-list-border-width) 0}.m_89d60db1[data-inverted]{--tabs-list-line-bottom: unset;--tabs-list-line-top: 0;--tab-radius: 0 0 var(--tabs-radius) var(--tabs-radius);--tab-border-width: var(--tabs-list-border-width) 0 0 0}.m_89d60db1[data-inverted] .m_576c9d4:before{top:0;bottom:unset}.m_89d60db1[data-orientation=vertical]{--tabs-list-line-start: unset;--tabs-list-line-end: 0;--tabs-list-line-top: 0;--tabs-list-line-bottom: 0;--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);--tabs-list-direction: column;--tabs-panel-grow: 1;--tabs-display: flex}[dir=rtl] .m_89d60db1[data-orientation=vertical]{--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}.m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-flex-direction: row-reverse;--tabs-list-line-start: 0;--tabs-list-line-end: unset;--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}[dir=rtl] .m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius)}.m_89d60db1[data-variant=default]{--tabs-list-border-width: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d60db1[data-variant=outline]{--tabs-list-border-width: calc(.0625rem * var(--mantine-scale))}.m_89d60db1[data-variant=pills]{--tabs-list-gap: calc(var(--mantine-spacing-sm) / 2)}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d33d6d{display:flex;flex-wrap:wrap;justify-content:var(--tabs-justify, flex-start);flex-direction:var(--tabs-list-direction);gap:var(--tabs-list-gap)}.m_89d33d6d:where([data-grow]) .m_4ec4dce6{flex:1}.m_b0c91715{flex-grow:var(--tabs-panel-grow)}.m_4ec4dce6{position:relative;padding:var(--mantine-spacing-xs) var(--mantine-spacing-md);font-size:var(--mantine-font-size-sm);white-space:nowrap;z-index:0;display:flex;align-items:center;line-height:1;user-select:none}.m_4ec4dce6:where(:disabled,[data-disabled]){opacity:.5;cursor:not-allowed}.m_4ec4dce6:focus{z-index:1}.m_fc420b1f{display:flex;align-items:center;justify-content:center}.m_fc420b1f:where([data-position=left]:not(:only-child)){margin-inline-end:var(--mantine-spacing-xs)}.m_fc420b1f:where([data-position=right]:not(:only-child)){margin-inline-start:var(--mantine-spacing-xs)}.m_42bbd1ae{flex:1;text-align:center}.m_576c9d4{position:relative}.m_576c9d4:before{content:"";position:absolute;border:1px solid var(--tab-border-color);bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_539e827b{border-radius:var(--tab-radius);border-width:var(--tab-border-width);border-style:solid;border-color:transparent;background-color:transparent}.m_539e827b:where([data-active]){border-color:var(--tabs-color)}@media(hover:hover){.m_539e827b:hover{background-color:var(--tab-hover-color)}.m_539e827b:hover:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:none){.m_539e827b:active{background-color:var(--tab-hover-color)}.m_539e827b:active:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:hover){.m_539e827b:disabled:hover,.m_539e827b[data-disabled]:hover{background-color:transparent}}@media(hover:none){.m_539e827b:disabled:active,.m_539e827b[data-disabled]:active{background-color:transparent}}.m_6772fbd5{position:relative}.m_6772fbd5:before{content:"";position:absolute;border-color:var(--tab-border-color);border-width:var(--tabs-list-border-size);border-style:solid;bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_b59ab47c{border-top:calc(.0625rem * var(--mantine-scale)) solid transparent;border-bottom:calc(.0625rem * var(--mantine-scale)) solid transparent;border-right:calc(.0625rem * var(--mantine-scale)) solid transparent;border-left:calc(.0625rem * var(--mantine-scale)) solid transparent;border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-radius:var(--tab-radius);position:relative;--tab-border-bottom-color: transparent;--tab-border-top-color: transparent;--tab-border-inline-end-color: transparent;--tab-border-inline-start-color: transparent}.m_b59ab47c:where([data-active]):before{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-before-bottom, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-before-left, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-before-right, auto);top:var(--tab-before-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]):after{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-after-bottom, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-after-right, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-after-left, auto);top:var(--tab-after-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]){border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-inline-start-color:var(--tab-border-inline-start-color);border-inline-end-color:var(--tab-border-inline-end-color);--tab-border-top-color: var(--tab-border-color);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--mantine-color-body)}.m_b59ab47c:where([data-active])[data-inverted]{--tab-border-bottom-color: var(--tab-border-color);--tab-border-top-color: var(--mantine-color-body);--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-bottom: auto;--tab-after-top: calc(-.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-border-inline-end-color: var(--mantine-color-body);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-before-left: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto;--tab-after-right: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-before-right: auto;--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-after-left: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-border-inline-start-color: var(--mantine-color-body);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-before-right: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto;--tab-after-left: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-before-left: auto;--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-after-right: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto}.m_c3381914{border-radius:var(--tabs-radius);background-color:var(--tab-bg);color:var(--tab-color);--tab-bg: transparent;--tab-color: inherit}@media(hover:hover){.m_c3381914:not([data-disabled]):hover{--tab-bg: var(--tab-hover-color)}}@media(hover:none){.m_c3381914:not([data-disabled]):active{--tab-bg: var(--tab-hover-color)}}.m_c3381914[data-active][data-active]{--tab-bg: var(--tabs-color);--tab-color: var(--tabs-text-color, var(--mantine-color-white))}@media(hover:hover){.m_c3381914[data-active][data-active]:hover{--tab-bg: var(--tabs-color)}}@media(hover:none){.m_c3381914[data-active][data-active]:active{--tab-bg: var(--tabs-color)}}.m_7341320d{--ti-size-xs: calc(1.125rem * var(--mantine-scale));--ti-size-sm: calc(1.375rem * var(--mantine-scale));--ti-size-md: calc(1.75rem * var(--mantine-scale));--ti-size-lg: calc(2.125rem * var(--mantine-scale));--ti-size-xl: calc(2.75rem * var(--mantine-scale));--ti-size: var(--ti-size-md);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;width:var(--ti-size);height:var(--ti-size);min-width:var(--ti-size);min-height:var(--ti-size);border-radius:var(--ti-radius, var(--mantine-radius-default));background:var(--ti-bg, var(--mantine-primary-color-filled));color:var(--ti-color, var(--mantine-color-white));border:var(--ti-bd, 1px solid transparent)}.m_43657ece{--offset: calc(var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2);--tl-bullet-size: calc(1.25rem * var(--mantine-scale));--tl-line-width: calc(.25rem * var(--mantine-scale));--tl-radius: calc(62.5rem * var(--mantine-scale));--tl-color: var(--mantine-primary-color-filled)}.m_43657ece:where([data-align=left]){padding-inline-start:var(--offset)}.m_43657ece:where([data-align=right]){padding-inline-end:var(--offset)}.m_2ebe8099{font-weight:500;line-height:1;margin-bottom:calc(var(--mantine-spacing-xs) / 2)}.m_436178ff{--item-border: var(--tl-line-width) var(--tli-border-style, solid) var(--item-border-color);position:relative;color:var(--mantine-color-text)}.m_436178ff:before{content:"";pointer-events:none;position:absolute;top:0;left:var(--timeline-line-left, 0);right:var(--timeline-line-right, 0);bottom:calc(var(--mantine-spacing-xl) * -1);border-inline-start:var(--item-border);display:var(--timeline-line-display, none)}.m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}[dir=rtl] .m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}.m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}[dir=rtl] .m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}.m_43657ece:where([data-align=left]) .m_436178ff{padding-inline-start:var(--offset);text-align:left}.m_43657ece:where([data-align=right]) .m_436178ff{padding-inline-end:var(--offset);text-align:right}:where([data-mantine-color-scheme=light]) .m_436178ff{--item-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_436178ff{--item-border-color: var(--mantine-color-dark-4)}.m_436178ff:where([data-line-active]):before{border-color:var(--tli-color, var(--tl-color))}.m_436178ff:where(:not(:last-of-type)){--timeline-line-display: block}.m_436178ff:where(:not(:first-of-type)){margin-top:var(--mantine-spacing-xl)}.m_8affcee1{width:var(--tl-bullet-size);height:var(--tl-bullet-size);border-radius:var(--tli-radius, var(--tl-radius));border:var(--tl-line-width) solid;background-color:var(--mantine-color-body);position:absolute;top:0;display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_8affcee1{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1{border-color:var(--mantine-color-dark-4)}.m_43657ece:where([data-align=left]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}.m_43657ece:where([data-align=right]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}.m_8affcee1:where([data-with-child]){border-width:var(--tl-line-width)}:where([data-mantine-color-scheme=light]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-dark-4)}.m_8affcee1:where([data-active]){border-color:var(--tli-color, var(--tl-color));background-color:var(--mantine-color-white);color:var(--tl-icon-color, var(--mantine-color-white))}.m_8affcee1:where([data-active]):where([data-with-child]){background-color:var(--tli-color, var(--tl-color));color:var(--tl-icon-color, var(--mantine-color-white))}.m_43657ece:where([data-align=left]) .m_540e8f41{padding-inline-start:var(--offset);text-align:left}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_540e8f41{text-align:right}.m_43657ece:where([data-align=right]) .m_540e8f41{padding-inline-end:var(--offset);text-align:right}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_540e8f41{text-align:left}.m_8a5d1357{margin:0;font-weight:var(--title-fw);font-size:var(--title-fz);line-height:var(--title-lh);font-family:var(--mantine-font-family-headings);text-wrap:var(--title-text-wrap, var(--mantine-heading-text-wrap))}.m_8a5d1357:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--title-line-clamp);-webkit-box-orient:vertical}.m_f698e191{--level-offset: var(--mantine-spacing-lg);margin:0;padding:0;user-select:none}.m_75f3ecf{margin:0;padding:0}.m_f6970eb1{cursor:pointer;list-style:none;margin:0;padding:0;outline:0}.m_f6970eb1:focus-visible>.m_dc283425{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_dc283425{padding-inline-start:var(--label-offset)}:where([data-mantine-color-scheme=light]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-dark-5)}.m_d08caa0 :first-child{margin-top:0}.m_d08caa0 :last-child{margin-bottom:0}.m_d08caa0 :where(h1,h2,h3,h4,h5,h6){margin-bottom:var(--mantine-spacing-xs);text-wrap:var(--mantine-heading-text-wrap);font-family:var(--mantine-font-family-headings)}.m_d08caa0 :where(h1){margin-top:calc(1.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h1-font-size);line-height:var(--mantine-h1-line-height);font-weight:var(--mantine-h1-font-weight)}.m_d08caa0 :where(h2){margin-top:var(--mantine-spacing-xl);font-size:var(--mantine-h2-font-size);line-height:var(--mantine-h2-line-height);font-weight:var(--mantine-h2-font-weight)}.m_d08caa0 :where(h3){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h3-font-size);line-height:var(--mantine-h3-line-height);font-weight:var(--mantine-h3-font-weight)}.m_d08caa0 :where(h4){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h4-font-size);line-height:var(--mantine-h4-line-height);font-weight:var(--mantine-h4-font-weight)}.m_d08caa0 :where(h5){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h5-font-size);line-height:var(--mantine-h5-line-height);font-weight:var(--mantine-h5-font-weight)}.m_d08caa0 :where(h6){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h6-font-size);line-height:var(--mantine-h6-line-height);font-weight:var(--mantine-h6-font-weight)}.m_d08caa0 :where(img){max-width:100%;margin-bottom:var(--mantine-spacing-xs)}.m_d08caa0 :where(p){margin-top:0;margin-bottom:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(mark){background-color:var(--mantine-color-yellow-2);color:inherit}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.m_d08caa0 :where(a){color:var(--mantine-color-anchor);text-decoration:none}@media(hover:hover){.m_d08caa0 :where(a):hover{text-decoration:underline}}@media(hover:none){.m_d08caa0 :where(a):active{text-decoration:underline}}.m_d08caa0 :where(hr){margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);border:0;border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(hr){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(hr){border-color:var(--mantine-color-dark-3)}.m_d08caa0 :where(pre){padding:var(--mantine-spacing-xs);line-height:var(--mantine-line-height);margin:0;margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);overflow-x:auto;font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs);border-radius:var(--mantine-radius-sm)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(pre){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(pre){background-color:var(--mantine-color-dark-8)}.m_d08caa0 :where(pre) :where(code){background-color:transparent;padding:0;border-radius:0;color:inherit;border:0}.m_d08caa0 :where(kbd){--kbd-fz: calc(.75rem * var(--mantine-scale));--kbd-padding: calc(.1875rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;padding:var(--kbd-padding);font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(kbd){border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(kbd){border-color:var(--mantine-color-dark-3);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-5)}.m_d08caa0 :where(code){line-height:var(--mantine-line-height);padding:calc(.0625rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));border-radius:var(--mantine-radius-sm);font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(code){background-color:var(--mantine-color-gray-0);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(code){background-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_d08caa0 :where(ul,ol):not([data-type=taskList]){margin-bottom:var(--mantine-spacing-md);padding-inline-start:var(--mantine-spacing-xl);list-style-position:outside}.m_d08caa0 :where(table){width:100%;border-collapse:collapse;caption-side:bottom;margin-bottom:var(--mantine-spacing-md)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(table){--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(table){--table-border-color: var(--mantine-color-dark-4)}.m_d08caa0 :where(table) :where(caption){margin-top:var(--mantine-spacing-xs);font-size:var(--mantine-font-size-sm);color:var(--mantine-color-dimmed)}.m_d08caa0 :where(table) :where(th){text-align:left;font-weight:700;font-size:var(--mantine-font-size-sm);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm)}.m_d08caa0 :where(table) :where(thead th){border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d08caa0 :where(table) :where(tfoot th){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d08caa0 :where(table) :where(td){padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color);font-size:var(--mantine-font-size-sm)}.m_d08caa0 :where(table) :where(tr:last-of-type td){border-bottom:0}.m_d08caa0 :where(blockquote){font-size:var(--mantine-font-size-lg);line-height:var(--mantine-line-height);margin:var(--mantine-spacing-md) 0;border-radius:var(--mantine-radius-sm);padding:var(--mantine-spacing-md) var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(blockquote){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(blockquote){background-color:var(--mantine-color-dark-8)}}@layer xyflow{.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}}@layer base{:root{--made-with-panda: "🐼"}*,:before,:after,::backdrop{--blur: ;--brightness: ;--contrast: ;--grayscale: ;--hue-rotate: ;--invert: ;--saturate: ;--sepia: ;--drop-shadow: ;--backdrop-blur: ;--backdrop-brightness: ;--backdrop-contrast: ;--backdrop-grayscale: ;--backdrop-hue-rotate: ;--backdrop-invert: ;--backdrop-opacity: ;--backdrop-saturate: ;--backdrop-sepia: ;--gradient-from-position: ;--gradient-to-position: ;--gradient-via-position: ;--scroll-snap-strictness: proximity;--border-spacing-x: 0;--border-spacing-y: 0;--translate-x: 0;--translate-y: 0;--rotate: 0;--rotate-x: 0;--rotate-y: 0;--skew-x: 0;--skew-y: 0;--scale-x: 1;--scale-y: 1}:where(:root,:host){--likec4-app-font-default: "IBM Plex Sans",'ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'}:where([data-likec4-text-size=xs]){--likec4-text-size: var(--font-sizes-likec4-xs)}:where([data-likec4-text-size=sm]){--likec4-text-size: var(--font-sizes-likec4-sm)}:where([data-likec4-text-size=md]){--likec4-text-size: var(--font-sizes-likec4-md)}:where([data-likec4-text-size=lg]){--likec4-text-size: var(--font-sizes-likec4-lg)}:where([data-likec4-text-size=xl]){--likec4-text-size: var(--font-sizes-likec4-xl)}:where([data-likec4-spacing=xs]){--likec4-spacing: var(--spacing-likec4-xs)}:where([data-likec4-spacing=sm]){--likec4-spacing: var(--spacing-likec4-sm)}:where([data-likec4-spacing=md]){--likec4-spacing: var(--spacing-likec4-md)}:where([data-likec4-spacing=lg]){--likec4-spacing: var(--spacing-likec4-lg)}:where([data-likec4-spacing=xl]){--likec4-spacing: var(--spacing-likec4-xl)}.likec4-shadow-root{--mantine-font-family: var(--likec4-app-font, var(--likec4-app-font-default));--mantine-font-family-headings: var(--likec4-app-font, var(--likec4-app-font-default));display:contents}.likec4-shadow-root dialog{color:var(--mantine-color-text)}.likec4-edge-label-container{position:absolute;top:var(--spacing-0);left:var(--spacing-0);width:auto;height:auto}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-edge-label-container{display:none}:where([data-likec4-zoom-small=true]) .likec4-edge-label-container{display:none}.likec4-root{padding:var(--spacing-0);margin:var(--spacing-0);border:0px solid transparent;background:var(--colors-transparent);overflow:hidden;position:relative;container-name:likec4-root;container-type:size;width:var(--sizes-100\\%);height:var(--sizes-100\\%)}.likec4-root .react-flow{--xy-background-color: var(--colors-likec4-background);--xy-background-pattern-color: var(--colors-likec4-background-pattern, var(--colors-likec4-background))}.likec4-root .react-flow:is(.bg-transparent){--xy-background-color: transparent !important;background:var(--colors-transparent)!important}.likec4-root .react-flow:is(.not-initialized){opacity:0}.likec4-root .react-flow .react-flow__pane{-webkit-user-select:none;user-select:none}.likec4-root .react-flow :where(.react-flow__nodes,.react-flow__edges,.react-flow__edgelabel-renderer){display:contents}.likec4-root .react-flow .react-flow__node.draggable:has(.likec4-compound-node){cursor:default}.likec4-root .react-flow .likec4-node-handle-center{visibility:hidden!important;transform:translate(-50%,-50%)!important;top:50%!important;left:50%!important;right:unset!important;bottom:unset!important;width:5px!important;height:5px!important}.likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-stroke-width: 3;--xy-edge-stroke: var(--likec4-palette-relation-stroke);--xy-edge-stroke-selected: var(--likec4-palette-relation-stroke-selected);--xy-edge-label-color: var(--likec4-palette-relation-label);--xy-edge-label-background-color: var(--likec4-palette-relation-label-bg)}[data-mantine-color-scheme=dark] .likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-label-background-color: color-mix(in oklab, var(--likec4-palette-relation-label-bg) 50%, transparent)}[data-mantine-color-scheme=light] .likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-label-color: color-mix(in oklab, var(--likec4-palette-relation-label), #FFF 50%);--xy-edge-label-background-color: color-mix(in oklab, var(--likec4-palette-relation-label-bg) 65%, transparent)}.likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container):is([data-likec4-hovered=true],[data-edge-active=true]){--xy-edge-stroke-width: 4;--xy-edge-stroke: var(--likec4-palette-relation-stroke-selected)}.likec4-root :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]){opacity:.25}.likec4-root .likec4-edge-label-container:is([data-likec4-dimmed]){opacity:.25}.likec4-root:is([data-likec4-reduced-graphics]) .hide-on-reduced-graphics{display:none}.likec4-root :where(.relationships-browser,.likec4-relationship-details) .react-flow__attribution{display:none}.likec4-root .mantine-ActionIcon-icon .tabler-icon{width:75%;height:75%}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]){filter:grayscale(85%)}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: cubic-bezier(.5, 0, .2, 1);transition-timing-function:cubic-bezier(.5,0,.2,1);--transition-duration: .4s;transition-duration:.4s}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge-label-container:is([data-likec4-dimmed]){filter:grayscale(85%)}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge-label-container:is([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: cubic-bezier(.5, 0, .2, 1);transition-timing-function:cubic-bezier(.5,0,.2,1);--transition-duration: .4s;transition-duration:.4s}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:screen}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:hard-light}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:plus-lighter}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:multiply}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]):has(.react-flow__node-seq-parallel) :where(.react-flow__edges>svg){mix-blend-mode:color-burn}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:luminosity}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:color-burn}.likec4-static-view .react-flow .react-flow__attribution{display:none}:where(:root,:host){--likec4-text-size: 1.2rem;--likec4-palette-fill: #3b82f6;--likec4-palette-stroke: #2563eb;--likec4-palette-hiContrast: #eff6ff;--likec4-palette-loContrast: #bfdbfe;--likec4-palette-relation-stroke: #8D8D8D;--likec4-palette-relation-label: #C9C9C9;--likec4-palette-relation-label-bg: #18191B;--mantine-scale: 1;--likec4-palette-outline: var(--likec4-palette-loContrast);--likec4-spacing: ;--text-fz: ;--likec4-icon-size: }@media print{.likec4-root .react-flow{--xy-background-color: transparent !important;background:var(--colors-transparent)!important}.likec4-root .react-flow__background{display:none}.likec4-root *{color-adjust:exact!important;print-color-adjust:exact!important}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:normal!important}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:normal!important}.likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:normal!important}}}@layer tokens{:where(:root,:host){--spacing-0: 0px;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-7: 28px;--spacing-8: 32px;--spacing-9: 36px;--spacing-10: 40px;--spacing-likec4-xs: 8px;--spacing-likec4-sm: 10px;--spacing-likec4-md: 16px;--spacing-likec4-lg: 24px;--spacing-likec4-xl: 32px;--spacing-0\\.5: 2px;--spacing-1\\.5: 6px;--spacing-2\\.5: 10px;--spacing-3\\.5: 14px;--spacing-4\\.5: 18px;--spacing-xxs: calc(.5rem * var(--mantine-scale));--spacing-xs: calc(.625rem * var(--mantine-scale));--spacing-sm: calc(.75rem * var(--mantine-scale));--spacing-md: calc(1rem * var(--mantine-scale));--spacing-lg: calc(1.25rem * var(--mantine-scale));--spacing-xl: calc(2rem * var(--mantine-scale));--font-sizes-xxs: .625rem;--font-sizes-xs: calc(.75rem * var(--mantine-scale));--font-sizes-sm: calc(.875rem * var(--mantine-scale));--font-sizes-md: calc(1rem * var(--mantine-scale));--font-sizes-lg: calc(1.125rem * var(--mantine-scale));--font-sizes-xl: calc(1.25rem * var(--mantine-scale));--font-sizes-likec4-xs: .833rem;--font-sizes-likec4-sm: 1rem;--font-sizes-likec4-md: 1.2rem;--font-sizes-likec4-lg: 1.44rem;--font-sizes-likec4-xl: 1.73rem;--line-heights-1: 1;--line-heights-xs: 1.4;--line-heights-sm: 1.45;--line-heights-md: 1.55;--line-heights-lg: 1.6;--line-heights-xl: 1.65;--colors-mantine-colors-primary: var(--mantine-primary-color-6);--colors-mantine-colors-primary-filled: var(--mantine-primary-color-filled);--colors-mantine-colors-primary-filled-hover: var(--mantine-primary-color-filled-hover);--colors-mantine-colors-primary-light: var(--mantine-primary-color-light);--colors-mantine-colors-primary-light-hover: var(--mantine-primary-color-light-hover);--colors-mantine-colors-primary-light-color: var(--mantine-primary-color-light-color);--colors-mantine-colors-primary-outline: var(--mantine-primary-color-outline);--colors-mantine-colors-primary-outline-hover: var(--mantine-primary-color-outline-hover);--colors-mantine-colors-primary\\[0\\]: var(--mantine-primary-color-0);--colors-mantine-colors-primary\\[1\\]: var(--mantine-primary-color-1);--colors-mantine-colors-primary\\[2\\]: var(--mantine-primary-color-2);--colors-mantine-colors-primary\\[3\\]: var(--mantine-primary-color-3);--colors-mantine-colors-primary\\[4\\]: var(--mantine-primary-color-4);--colors-mantine-colors-primary\\[5\\]: var(--mantine-primary-color-5);--colors-mantine-colors-primary\\[6\\]: var(--mantine-primary-color-6);--colors-mantine-colors-primary\\[7\\]: var(--mantine-primary-color-7);--colors-mantine-colors-primary\\[8\\]: var(--mantine-primary-color-8);--colors-mantine-colors-primary\\[9\\]: var(--mantine-primary-color-9);--colors-mantine-colors-white: var(--mantine-color-white);--colors-mantine-colors-text: var(--mantine-color-text);--colors-mantine-colors-body: var(--mantine-color-body);--colors-mantine-colors-dimmed: var(--mantine-color-dimmed);--colors-mantine-colors-default-border: var(--mantine-color-default-border);--colors-mantine-colors-default-color: var(--mantine-color-default-color);--colors-mantine-colors-default-hover: var(--mantine-color-default-hover);--colors-mantine-colors-default: var(--mantine-color-default);--colors-mantine-colors-error: var(--mantine-color-error);--colors-mantine-colors-placeholder: var(--mantine-color-placeholder);--colors-mantine-colors-gray: var(--mantine-color-gray-6);--colors-mantine-colors-gray-filled: var(--mantine-color-gray-filled);--colors-mantine-colors-gray-filled-hover: var(--mantine-color-gray-filled-hover);--colors-mantine-colors-gray-light: var(--mantine-color-gray-light);--colors-mantine-colors-gray-light-hover: var(--mantine-color-gray-light-hover);--colors-mantine-colors-gray-light-color: var(--mantine-color-gray-light-color);--colors-mantine-colors-gray-outline: var(--mantine-color-gray-outline);--colors-mantine-colors-gray-outline-hover: var(--mantine-color-gray-outline-hover);--colors-mantine-colors-gray\\[0\\]: var(--mantine-color-gray-0);--colors-mantine-colors-gray\\[1\\]: var(--mantine-color-gray-1);--colors-mantine-colors-gray\\[2\\]: var(--mantine-color-gray-2);--colors-mantine-colors-gray\\[3\\]: var(--mantine-color-gray-3);--colors-mantine-colors-gray\\[4\\]: var(--mantine-color-gray-4);--colors-mantine-colors-gray\\[5\\]: var(--mantine-color-gray-5);--colors-mantine-colors-gray\\[6\\]: var(--mantine-color-gray-6);--colors-mantine-colors-gray\\[7\\]: var(--mantine-color-gray-7);--colors-mantine-colors-gray\\[8\\]: var(--mantine-color-gray-8);--colors-mantine-colors-gray\\[9\\]: var(--mantine-color-gray-9);--colors-mantine-colors-dark: var(--mantine-color-dark-6);--colors-mantine-colors-dark-filled: var(--mantine-color-dark-filled);--colors-mantine-colors-dark-filled-hover: var(--mantine-color-dark-filled-hover);--colors-mantine-colors-dark-light: var(--mantine-color-dark-light);--colors-mantine-colors-dark-light-hover: var(--mantine-color-dark-light-hover);--colors-mantine-colors-dark-light-color: var(--mantine-color-dark-light-color);--colors-mantine-colors-dark-outline: var(--mantine-color-dark-outline);--colors-mantine-colors-dark-outline-hover: var(--mantine-color-dark-outline-hover);--colors-mantine-colors-dark\\[0\\]: var(--mantine-color-dark-0);--colors-mantine-colors-dark\\[1\\]: var(--mantine-color-dark-1);--colors-mantine-colors-dark\\[2\\]: var(--mantine-color-dark-2);--colors-mantine-colors-dark\\[3\\]: var(--mantine-color-dark-3);--colors-mantine-colors-dark\\[4\\]: var(--mantine-color-dark-4);--colors-mantine-colors-dark\\[5\\]: var(--mantine-color-dark-5);--colors-mantine-colors-dark\\[6\\]: var(--mantine-color-dark-6);--colors-mantine-colors-dark\\[7\\]: var(--mantine-color-dark-7);--colors-mantine-colors-dark\\[8\\]: var(--mantine-color-dark-8);--colors-mantine-colors-dark\\[9\\]: var(--mantine-color-dark-9);--colors-mantine-colors-orange: var(--mantine-color-orange-6);--colors-mantine-colors-orange-filled: var(--mantine-color-orange-filled);--colors-mantine-colors-orange-filled-hover: var(--mantine-color-orange-filled-hover);--colors-mantine-colors-orange-light: var(--mantine-color-orange-light);--colors-mantine-colors-orange-light-hover: var(--mantine-color-orange-light-hover);--colors-mantine-colors-orange-light-color: var(--mantine-color-orange-light-color);--colors-mantine-colors-orange-outline: var(--mantine-color-orange-outline);--colors-mantine-colors-orange-outline-hover: var(--mantine-color-orange-outline-hover);--colors-mantine-colors-orange\\[0\\]: var(--mantine-color-orange-0);--colors-mantine-colors-orange\\[1\\]: var(--mantine-color-orange-1);--colors-mantine-colors-orange\\[2\\]: var(--mantine-color-orange-2);--colors-mantine-colors-orange\\[3\\]: var(--mantine-color-orange-3);--colors-mantine-colors-orange\\[4\\]: var(--mantine-color-orange-4);--colors-mantine-colors-orange\\[5\\]: var(--mantine-color-orange-5);--colors-mantine-colors-orange\\[6\\]: var(--mantine-color-orange-6);--colors-mantine-colors-orange\\[7\\]: var(--mantine-color-orange-7);--colors-mantine-colors-orange\\[8\\]: var(--mantine-color-orange-8);--colors-mantine-colors-orange\\[9\\]: var(--mantine-color-orange-9);--colors-mantine-colors-teal: var(--mantine-color-teal-6);--colors-mantine-colors-teal-filled: var(--mantine-color-teal-filled);--colors-mantine-colors-teal-filled-hover: var(--mantine-color-teal-filled-hover);--colors-mantine-colors-teal-light: var(--mantine-color-teal-light);--colors-mantine-colors-teal-light-hover: var(--mantine-color-teal-light-hover);--colors-mantine-colors-teal-light-color: var(--mantine-color-teal-light-color);--colors-mantine-colors-teal-outline: var(--mantine-color-teal-outline);--colors-mantine-colors-teal-outline-hover: var(--mantine-color-teal-outline-hover);--colors-mantine-colors-teal\\[0\\]: var(--mantine-color-teal-0);--colors-mantine-colors-teal\\[1\\]: var(--mantine-color-teal-1);--colors-mantine-colors-teal\\[2\\]: var(--mantine-color-teal-2);--colors-mantine-colors-teal\\[3\\]: var(--mantine-color-teal-3);--colors-mantine-colors-teal\\[4\\]: var(--mantine-color-teal-4);--colors-mantine-colors-teal\\[5\\]: var(--mantine-color-teal-5);--colors-mantine-colors-teal\\[6\\]: var(--mantine-color-teal-6);--colors-mantine-colors-teal\\[7\\]: var(--mantine-color-teal-7);--colors-mantine-colors-teal\\[8\\]: var(--mantine-color-teal-8);--colors-mantine-colors-teal\\[9\\]: var(--mantine-color-teal-9);--colors-mantine-colors-red: var(--mantine-color-red-6);--colors-mantine-colors-red-filled: var(--mantine-color-red-filled);--colors-mantine-colors-red-filled-hover: var(--mantine-color-red-filled-hover);--colors-mantine-colors-red-light: var(--mantine-color-red-light);--colors-mantine-colors-red-light-hover: var(--mantine-color-red-light-hover);--colors-mantine-colors-red-light-color: var(--mantine-color-red-light-color);--colors-mantine-colors-red-outline: var(--mantine-color-red-outline);--colors-mantine-colors-red-outline-hover: var(--mantine-color-red-outline-hover);--colors-mantine-colors-red\\[0\\]: var(--mantine-color-red-0);--colors-mantine-colors-red\\[1\\]: var(--mantine-color-red-1);--colors-mantine-colors-red\\[2\\]: var(--mantine-color-red-2);--colors-mantine-colors-red\\[3\\]: var(--mantine-color-red-3);--colors-mantine-colors-red\\[4\\]: var(--mantine-color-red-4);--colors-mantine-colors-red\\[5\\]: var(--mantine-color-red-5);--colors-mantine-colors-red\\[6\\]: var(--mantine-color-red-6);--colors-mantine-colors-red\\[7\\]: var(--mantine-color-red-7);--colors-mantine-colors-red\\[8\\]: var(--mantine-color-red-8);--colors-mantine-colors-red\\[9\\]: var(--mantine-color-red-9);--colors-mantine-colors-green: var(--mantine-color-green-6);--colors-mantine-colors-green-filled: var(--mantine-color-green-filled);--colors-mantine-colors-green-filled-hover: var(--mantine-color-green-filled-hover);--colors-mantine-colors-green-light: var(--mantine-color-green-light);--colors-mantine-colors-green-light-hover: var(--mantine-color-green-light-hover);--colors-mantine-colors-green-light-color: var(--mantine-color-green-light-color);--colors-mantine-colors-green-outline: var(--mantine-color-green-outline);--colors-mantine-colors-green-outline-hover: var(--mantine-color-green-outline-hover);--colors-mantine-colors-green\\[0\\]: var(--mantine-color-green-0);--colors-mantine-colors-green\\[1\\]: var(--mantine-color-green-1);--colors-mantine-colors-green\\[2\\]: var(--mantine-color-green-2);--colors-mantine-colors-green\\[3\\]: var(--mantine-color-green-3);--colors-mantine-colors-green\\[4\\]: var(--mantine-color-green-4);--colors-mantine-colors-green\\[5\\]: var(--mantine-color-green-5);--colors-mantine-colors-green\\[6\\]: var(--mantine-color-green-6);--colors-mantine-colors-green\\[7\\]: var(--mantine-color-green-7);--colors-mantine-colors-green\\[8\\]: var(--mantine-color-green-8);--colors-mantine-colors-green\\[9\\]: var(--mantine-color-green-9);--colors-mantine-colors-yellow: var(--mantine-color-yellow-6);--colors-mantine-colors-yellow-filled: var(--mantine-color-yellow-filled);--colors-mantine-colors-yellow-filled-hover: var(--mantine-color-yellow-filled-hover);--colors-mantine-colors-yellow-light: var(--mantine-color-yellow-light);--colors-mantine-colors-yellow-light-hover: var(--mantine-color-yellow-light-hover);--colors-mantine-colors-yellow-light-color: var(--mantine-color-yellow-light-color);--colors-mantine-colors-yellow-outline: var(--mantine-color-yellow-outline);--colors-mantine-colors-yellow-outline-hover: var(--mantine-color-yellow-outline-hover);--colors-mantine-colors-yellow\\[0\\]: var(--mantine-color-yellow-0);--colors-mantine-colors-yellow\\[1\\]: var(--mantine-color-yellow-1);--colors-mantine-colors-yellow\\[2\\]: var(--mantine-color-yellow-2);--colors-mantine-colors-yellow\\[3\\]: var(--mantine-color-yellow-3);--colors-mantine-colors-yellow\\[4\\]: var(--mantine-color-yellow-4);--colors-mantine-colors-yellow\\[5\\]: var(--mantine-color-yellow-5);--colors-mantine-colors-yellow\\[6\\]: var(--mantine-color-yellow-6);--colors-mantine-colors-yellow\\[7\\]: var(--mantine-color-yellow-7);--colors-mantine-colors-yellow\\[8\\]: var(--mantine-color-yellow-8);--colors-mantine-colors-yellow\\[9\\]: var(--mantine-color-yellow-9);--colors-transparent: transparent;--colors-none: none;--sizes-100\\%: 100%;--sizes-full: 100%;--sizes-breakpoint-xs: 36em;--sizes-breakpoint-sm: 48em;--sizes-breakpoint-md: 62em;--sizes-breakpoint-lg: 75em;--sizes-breakpoint-xl: 88em;--borders-none: none;--borders-transparent: 0px solid transparent;--borders-default: 1px solid var(--mantine-color-default-border);--radii-0: 0px;--radii-xs: .125rem;--radii-sm: .25rem;--radii-md: .5rem;--radii-lg: 1rem;--radii-xl: 2rem;--font-weights-normal: 400;--font-weights-medium: 500;--fonts-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--fonts-body: var(--likec4-app-font, var(--likec4-app-font-default));--fonts-likec4: var(--likec4-app-font, var(--likec4-app-font-default));--fonts-likec4-element: var(--likec4-element-font, var(--fonts-likec4));--fonts-likec4-compound: var(--likec4-compound-font, var(--fonts-likec4));--fonts-likec4-relation: var(--likec4-relation-font, var(--fonts-likec4));--easings-default: cubic-bezier(.4, 0, .2, 1);--easings-in: cubic-bezier(.4, 0, 1, 1);--easings-out: cubic-bezier(0, 0, .4, 1);--easings-in-out: cubic-bezier(.5, 0, .2, 1);--durations-fastest: 50ms;--durations-faster: .1s;--durations-fast: .13s;--durations-normal: .17s;--durations-slow: .3s;--durations-slower: .4s;--durations-slowest: .5s;--shadows-none: none;--shadows-xs: 0 1px 3px rgb(0 0 0/5%), 0 1px 2px rgb(0 0 0/10%);--shadows-sm: 0 1px 3px rgb(0 0 0/5%), 0 10px 15px -5px rgb(0 0 0/5%), 0 7px 7px -5px rgb(0 0 0/4%);--shadows-md: 0 1px 3px rgb(0 0 0/5%), 0 20px 25px -5px rgb(0 0 0/5%), 0 10px 10px -5px rgb(0 0 0/4%);--shadows-lg: 0 1px 3px rgb(0 0 0/5%), 0 28px 23px -7px rgb(0 0 0/5%), 0 12px 12px -7px rgb(0 0 0/4%);--shadows-xl: 0 1px 3px rgb(0 0 0/5%), 0 36px 28px -7px rgb(0 0 0/5%), 0 17px 17px -7px rgb(0 0 0/4%);--z-index-0: 0;--z-index-1: 1;--z-index--1: -1;--z-index-likec4-panel: 100;--z-index-likec4-dropdown: 200;--breakpoints-xs: 36em;--breakpoints-sm: 48em;--breakpoints-md: 62em;--breakpoints-lg: 75em;--breakpoints-xl: 88em;--colors-amber-1: var(--colors-amber-light-1);--colors-amber-2: var(--colors-amber-light-2);--colors-amber-3: var(--colors-amber-light-3);--colors-amber-4: var(--colors-amber-light-4);--colors-amber-5: var(--colors-amber-light-5);--colors-amber-6: var(--colors-amber-light-6);--colors-amber-7: var(--colors-amber-light-7);--colors-amber-8: var(--colors-amber-light-8);--colors-amber-9: var(--colors-amber-light-9);--colors-amber-10: var(--colors-amber-light-10);--colors-amber-11: var(--colors-amber-light-11);--colors-amber-12: var(--colors-amber-light-12);--colors-amber-light-1: #fefdfb;--colors-amber-light-2: #fefbe9;--colors-amber-light-3: #fff7c2;--colors-amber-light-4: #ffee9c;--colors-amber-light-5: #fbe577;--colors-amber-light-6: #f3d673;--colors-amber-light-7: #e9c162;--colors-amber-light-8: #e2a336;--colors-amber-light-9: #ffc53d;--colors-amber-light-10: #ffba18;--colors-amber-light-11: #ab6400;--colors-amber-light-12: #4f3422;--colors-amber-light-a-1: #c0800004;--colors-amber-light-a-2: #f4d10016;--colors-amber-light-a-3: #ffde003d;--colors-amber-light-a-4: #ffd40063;--colors-amber-light-a-5: #f8cf0088;--colors-amber-light-a-6: #eab5008c;--colors-amber-light-a-7: #dc9b009d;--colors-amber-light-a-8: #da8a00c9;--colors-amber-light-a-9: #ffb300c2;--colors-amber-light-a-10: #ffb300e7;--colors-amber-light-a-11: #ab6400;--colors-amber-light-a-12: #341500dd;--colors-amber-light-p3-1: color(display-p3 .995 .992 .985);--colors-amber-light-p3-2: color(display-p3 .994 .986 .921);--colors-amber-light-p3-3: color(display-p3 .994 .969 .782);--colors-amber-light-p3-4: color(display-p3 .989 .937 .65);--colors-amber-light-p3-5: color(display-p3 .97 .902 .527);--colors-amber-light-p3-6: color(display-p3 .936 .844 .506);--colors-amber-light-p3-7: color(display-p3 .89 .762 .443);--colors-amber-light-p3-8: color(display-p3 .85 .65 .3);--colors-amber-light-p3-9: color(display-p3 1 .77 .26);--colors-amber-light-p3-10: color(display-p3 .959 .741 .274);--colors-amber-light-p3-11: color(display-p3 .64 .4 0);--colors-amber-light-p3-12: color(display-p3 .294 .208 .145);--colors-amber-light-p3-a-1: color(display-p3 .757 .514 .024 / .016);--colors-amber-light-p3-a-2: color(display-p3 .902 .804 .008 / .079);--colors-amber-light-p3-a-3: color(display-p3 .965 .859 .004 / .22);--colors-amber-light-p3-a-4: color(display-p3 .969 .82 .004 / .35);--colors-amber-light-p3-a-5: color(display-p3 .933 .796 .004 / .475);--colors-amber-light-p3-a-6: color(display-p3 .875 .682 .004 / .495);--colors-amber-light-p3-a-7: color(display-p3 .804 .573 0 / .557);--colors-amber-light-p3-a-8: color(display-p3 .788 .502 0 / .699);--colors-amber-light-p3-a-9: color(display-p3 1 .686 0 / .742);--colors-amber-light-p3-a-10: color(display-p3 .945 .643 0 / .726);--colors-amber-light-p3-a-11: color(display-p3 .64 .4 0);--colors-amber-light-p3-a-12: color(display-p3 .294 .208 .145);--colors-amber-dark-1: #16120c;--colors-amber-dark-2: #1d180f;--colors-amber-dark-3: #302008;--colors-amber-dark-4: #3f2700;--colors-amber-dark-5: #4d3000;--colors-amber-dark-6: #5c3d05;--colors-amber-dark-7: #714f19;--colors-amber-dark-8: #8f6424;--colors-amber-dark-9: #ffc53d;--colors-amber-dark-10: #ffd60a;--colors-amber-dark-11: #ffca16;--colors-amber-dark-12: #ffe7b3;--colors-amber-dark-a-1: #e63c0006;--colors-amber-dark-a-2: #fd9b000d;--colors-amber-dark-a-3: #fa820022;--colors-amber-dark-a-4: #fc820032;--colors-amber-dark-a-5: #fd8b0041;--colors-amber-dark-a-6: #fd9b0051;--colors-amber-dark-a-7: #ffab2567;--colors-amber-dark-a-8: #ffae3587;--colors-amber-dark-a-9: #ffc53d;--colors-amber-dark-a-10: #ffd60a;--colors-amber-dark-a-11: #ffca16;--colors-amber-dark-a-12: #ffe7b3;--colors-amber-dark-p3-1: color(display-p3 .082 .07 .05);--colors-amber-dark-p3-2: color(display-p3 .111 .094 .064);--colors-amber-dark-p3-3: color(display-p3 .178 .128 .049);--colors-amber-dark-p3-4: color(display-p3 .239 .156 0);--colors-amber-dark-p3-5: color(display-p3 .29 .193 0);--colors-amber-dark-p3-6: color(display-p3 .344 .245 .076);--colors-amber-dark-p3-7: color(display-p3 .422 .314 .141);--colors-amber-dark-p3-8: color(display-p3 .535 .399 .189);--colors-amber-dark-p3-9: color(display-p3 1 .77 .26);--colors-amber-dark-p3-10: color(display-p3 1 .87 .15);--colors-amber-dark-p3-11: color(display-p3 1 .8 .29);--colors-amber-dark-p3-12: color(display-p3 .984 .909 .726);--colors-amber-dark-p3-a-1: color(display-p3 .992 .298 0 / .017);--colors-amber-dark-p3-a-2: color(display-p3 .988 .651 0 / .047);--colors-amber-dark-p3-a-3: color(display-p3 1 .6 0 / .118);--colors-amber-dark-p3-a-4: color(display-p3 1 .557 0 / .185);--colors-amber-dark-p3-a-5: color(display-p3 1 .592 0 / .24);--colors-amber-dark-p3-a-6: color(display-p3 1 .659 .094 / .299);--colors-amber-dark-p3-a-7: color(display-p3 1 .714 .263 / .383);--colors-amber-dark-p3-a-8: color(display-p3 .996 .729 .306 / .5);--colors-amber-dark-p3-a-9: color(display-p3 1 .769 .259);--colors-amber-dark-p3-a-10: color(display-p3 1 .871 .149);--colors-amber-dark-p3-a-11: color(display-p3 1 .8 .29);--colors-amber-dark-p3-a-12: color(display-p3 .984 .909 .726);--colors-amber-a-1: var(--colors-amber-light-a-1);--colors-amber-a-2: var(--colors-amber-light-a-2);--colors-amber-a-3: var(--colors-amber-light-a-3);--colors-amber-a-4: var(--colors-amber-light-a-4);--colors-amber-a-5: var(--colors-amber-light-a-5);--colors-amber-a-6: var(--colors-amber-light-a-6);--colors-amber-a-7: var(--colors-amber-light-a-7);--colors-amber-a-8: var(--colors-amber-light-a-8);--colors-amber-a-9: var(--colors-amber-light-a-9);--colors-amber-a-10: var(--colors-amber-light-a-10);--colors-amber-a-11: var(--colors-amber-light-a-11);--colors-amber-a-12: var(--colors-amber-light-a-12);--colors-amber-p3-1: var(--colors-amber-light-p3-1);--colors-amber-p3-2: var(--colors-amber-light-p3-2);--colors-amber-p3-3: var(--colors-amber-light-p3-3);--colors-amber-p3-4: var(--colors-amber-light-p3-4);--colors-amber-p3-5: var(--colors-amber-light-p3-5);--colors-amber-p3-6: var(--colors-amber-light-p3-6);--colors-amber-p3-7: var(--colors-amber-light-p3-7);--colors-amber-p3-8: var(--colors-amber-light-p3-8);--colors-amber-p3-9: var(--colors-amber-light-p3-9);--colors-amber-p3-10: var(--colors-amber-light-p3-10);--colors-amber-p3-11: var(--colors-amber-light-p3-11);--colors-amber-p3-12: var(--colors-amber-light-p3-12);--colors-amber-p3-a-1: var(--colors-amber-light-p3-a-1);--colors-amber-p3-a-2: var(--colors-amber-light-p3-a-2);--colors-amber-p3-a-3: var(--colors-amber-light-p3-a-3);--colors-amber-p3-a-4: var(--colors-amber-light-p3-a-4);--colors-amber-p3-a-5: var(--colors-amber-light-p3-a-5);--colors-amber-p3-a-6: var(--colors-amber-light-p3-a-6);--colors-amber-p3-a-7: var(--colors-amber-light-p3-a-7);--colors-amber-p3-a-8: var(--colors-amber-light-p3-a-8);--colors-amber-p3-a-9: var(--colors-amber-light-p3-a-9);--colors-amber-p3-a-10: var(--colors-amber-light-p3-a-10);--colors-amber-p3-a-11: var(--colors-amber-light-p3-a-11);--colors-amber-p3-a-12: var(--colors-amber-light-p3-a-12);--colors-blue-1: var(--colors-blue-light-1);--colors-blue-2: var(--colors-blue-light-2);--colors-blue-3: var(--colors-blue-light-3);--colors-blue-4: var(--colors-blue-light-4);--colors-blue-5: var(--colors-blue-light-5);--colors-blue-6: var(--colors-blue-light-6);--colors-blue-7: var(--colors-blue-light-7);--colors-blue-8: var(--colors-blue-light-8);--colors-blue-9: var(--colors-blue-light-9);--colors-blue-10: var(--colors-blue-light-10);--colors-blue-11: var(--colors-blue-light-11);--colors-blue-12: var(--colors-blue-light-12);--colors-blue-light-1: #fbfdff;--colors-blue-light-2: #f4faff;--colors-blue-light-3: #e6f4fe;--colors-blue-light-4: #d5efff;--colors-blue-light-5: #c2e5ff;--colors-blue-light-6: #acd8fc;--colors-blue-light-7: #8ec8f6;--colors-blue-light-8: #5eb1ef;--colors-blue-light-9: #0090ff;--colors-blue-light-10: #0588f0;--colors-blue-light-11: #0d74ce;--colors-blue-light-12: #113264;--colors-blue-light-a-1: #0080ff04;--colors-blue-light-a-2: #008cff0b;--colors-blue-light-a-3: #008ff519;--colors-blue-light-a-4: #009eff2a;--colors-blue-light-a-5: #0093ff3d;--colors-blue-light-a-6: #0088f653;--colors-blue-light-a-7: #0083eb71;--colors-blue-light-a-8: #0084e6a1;--colors-blue-light-a-9: #0090ff;--colors-blue-light-a-10: #0086f0fa;--colors-blue-light-a-11: #006dcbf2;--colors-blue-light-a-12: #002359ee;--colors-blue-light-p3-1: color(display-p3 .986 .992 .999);--colors-blue-light-p3-2: color(display-p3 .96 .979 .998);--colors-blue-light-p3-3: color(display-p3 .912 .956 .991);--colors-blue-light-p3-4: color(display-p3 .853 .932 1);--colors-blue-light-p3-5: color(display-p3 .788 .894 .998);--colors-blue-light-p3-6: color(display-p3 .709 .843 .976);--colors-blue-light-p3-7: color(display-p3 .606 .777 .947);--colors-blue-light-p3-8: color(display-p3 .451 .688 .917);--colors-blue-light-p3-9: color(display-p3 .247 .556 .969);--colors-blue-light-p3-10: color(display-p3 .234 .523 .912);--colors-blue-light-p3-11: color(display-p3 .15 .44 .84);--colors-blue-light-p3-12: color(display-p3 .102 .193 .379);--colors-blue-light-p3-a-1: color(display-p3 .024 .514 1 / .016);--colors-blue-light-p3-a-2: color(display-p3 .024 .514 .906 / .04);--colors-blue-light-p3-a-3: color(display-p3 .012 .506 .914 / .087);--colors-blue-light-p3-a-4: color(display-p3 .008 .545 1 / .146);--colors-blue-light-p3-a-5: color(display-p3 .004 .502 .984 / .212);--colors-blue-light-p3-a-6: color(display-p3 .004 .463 .922 / .291);--colors-blue-light-p3-a-7: color(display-p3 .004 .431 .863 / .393);--colors-blue-light-p3-a-8: color(display-p3 0 .427 .851 / .55);--colors-blue-light-p3-a-9: color(display-p3 0 .412 .961 / .753);--colors-blue-light-p3-a-10: color(display-p3 0 .376 .886 / .765);--colors-blue-light-p3-a-11: color(display-p3 .15 .44 .84);--colors-blue-light-p3-a-12: color(display-p3 .102 .193 .379);--colors-blue-dark-1: #0d1520;--colors-blue-dark-2: #111927;--colors-blue-dark-3: #0d2847;--colors-blue-dark-4: #003362;--colors-blue-dark-5: #004074;--colors-blue-dark-6: #104d87;--colors-blue-dark-7: #205d9e;--colors-blue-dark-8: #2870bd;--colors-blue-dark-9: #0090ff;--colors-blue-dark-10: #3b9eff;--colors-blue-dark-11: #70b8ff;--colors-blue-dark-12: #c2e6ff;--colors-blue-dark-a-1: #004df211;--colors-blue-dark-a-2: #1166fb18;--colors-blue-dark-a-3: #0077ff3a;--colors-blue-dark-a-4: #0075ff57;--colors-blue-dark-a-5: #0081fd6b;--colors-blue-dark-a-6: #0f89fd7f;--colors-blue-dark-a-7: #2a91fe98;--colors-blue-dark-a-8: #3094feb9;--colors-blue-dark-a-9: #0090ff;--colors-blue-dark-a-10: #3b9eff;--colors-blue-dark-a-11: #70b8ff;--colors-blue-dark-a-12: #c2e6ff;--colors-blue-dark-p3-1: color(display-p3 .057 .081 .122);--colors-blue-dark-p3-2: color(display-p3 .072 .098 .147);--colors-blue-dark-p3-3: color(display-p3 .078 .154 .27);--colors-blue-dark-p3-4: color(display-p3 .033 .197 .37);--colors-blue-dark-p3-5: color(display-p3 .08 .245 .441);--colors-blue-dark-p3-6: color(display-p3 .14 .298 .511);--colors-blue-dark-p3-7: color(display-p3 .195 .361 .6);--colors-blue-dark-p3-8: color(display-p3 .239 .434 .72);--colors-blue-dark-p3-9: color(display-p3 .247 .556 .969);--colors-blue-dark-p3-10: color(display-p3 .344 .612 .973);--colors-blue-dark-p3-11: color(display-p3 .49 .72 1);--colors-blue-dark-p3-12: color(display-p3 .788 .898 .99);--colors-blue-dark-p3-a-1: color(display-p3 0 .333 1 / .059);--colors-blue-dark-p3-a-2: color(display-p3 .114 .435 .988 / .085);--colors-blue-dark-p3-a-3: color(display-p3 .122 .463 1 / .219);--colors-blue-dark-p3-a-4: color(display-p3 0 .467 1 / .324);--colors-blue-dark-p3-a-5: color(display-p3 .098 .51 1 / .4);--colors-blue-dark-p3-a-6: color(display-p3 .224 .557 1 / .475);--colors-blue-dark-p3-a-7: color(display-p3 .294 .584 1 / .572);--colors-blue-dark-p3-a-8: color(display-p3 .314 .592 1 / .702);--colors-blue-dark-p3-a-9: color(display-p3 .251 .573 .996 / .967);--colors-blue-dark-p3-a-10: color(display-p3 .357 .631 1 / .971);--colors-blue-dark-p3-a-11: color(display-p3 .49 .72 1);--colors-blue-dark-p3-a-12: color(display-p3 .788 .898 .99);--colors-blue-a-1: var(--colors-blue-light-a-1);--colors-blue-a-2: var(--colors-blue-light-a-2);--colors-blue-a-3: var(--colors-blue-light-a-3);--colors-blue-a-4: var(--colors-blue-light-a-4);--colors-blue-a-5: var(--colors-blue-light-a-5);--colors-blue-a-6: var(--colors-blue-light-a-6);--colors-blue-a-7: var(--colors-blue-light-a-7);--colors-blue-a-8: var(--colors-blue-light-a-8);--colors-blue-a-9: var(--colors-blue-light-a-9);--colors-blue-a-10: var(--colors-blue-light-a-10);--colors-blue-a-11: var(--colors-blue-light-a-11);--colors-blue-a-12: var(--colors-blue-light-a-12);--colors-blue-p3-1: var(--colors-blue-light-p3-1);--colors-blue-p3-2: var(--colors-blue-light-p3-2);--colors-blue-p3-3: var(--colors-blue-light-p3-3);--colors-blue-p3-4: var(--colors-blue-light-p3-4);--colors-blue-p3-5: var(--colors-blue-light-p3-5);--colors-blue-p3-6: var(--colors-blue-light-p3-6);--colors-blue-p3-7: var(--colors-blue-light-p3-7);--colors-blue-p3-8: var(--colors-blue-light-p3-8);--colors-blue-p3-9: var(--colors-blue-light-p3-9);--colors-blue-p3-10: var(--colors-blue-light-p3-10);--colors-blue-p3-11: var(--colors-blue-light-p3-11);--colors-blue-p3-12: var(--colors-blue-light-p3-12);--colors-blue-p3-a-1: var(--colors-blue-light-p3-a-1);--colors-blue-p3-a-2: var(--colors-blue-light-p3-a-2);--colors-blue-p3-a-3: var(--colors-blue-light-p3-a-3);--colors-blue-p3-a-4: var(--colors-blue-light-p3-a-4);--colors-blue-p3-a-5: var(--colors-blue-light-p3-a-5);--colors-blue-p3-a-6: var(--colors-blue-light-p3-a-6);--colors-blue-p3-a-7: var(--colors-blue-light-p3-a-7);--colors-blue-p3-a-8: var(--colors-blue-light-p3-a-8);--colors-blue-p3-a-9: var(--colors-blue-light-p3-a-9);--colors-blue-p3-a-10: var(--colors-blue-light-p3-a-10);--colors-blue-p3-a-11: var(--colors-blue-light-p3-a-11);--colors-blue-p3-a-12: var(--colors-blue-light-p3-a-12);--colors-crimson-1: var(--colors-crimson-light-1);--colors-crimson-2: var(--colors-crimson-light-2);--colors-crimson-3: var(--colors-crimson-light-3);--colors-crimson-4: var(--colors-crimson-light-4);--colors-crimson-5: var(--colors-crimson-light-5);--colors-crimson-6: var(--colors-crimson-light-6);--colors-crimson-7: var(--colors-crimson-light-7);--colors-crimson-8: var(--colors-crimson-light-8);--colors-crimson-9: var(--colors-crimson-light-9);--colors-crimson-10: var(--colors-crimson-light-10);--colors-crimson-11: var(--colors-crimson-light-11);--colors-crimson-12: var(--colors-crimson-light-12);--colors-crimson-light-1: #fffcfd;--colors-crimson-light-2: #fef7f9;--colors-crimson-light-3: #ffe9f0;--colors-crimson-light-4: #fedce7;--colors-crimson-light-5: #facedd;--colors-crimson-light-6: #f3bed1;--colors-crimson-light-7: #eaacc3;--colors-crimson-light-8: #e093b2;--colors-crimson-light-9: #e93d82;--colors-crimson-light-10: #df3478;--colors-crimson-light-11: #cb1d63;--colors-crimson-light-12: #621639;--colors-crimson-light-a-1: #ff005503;--colors-crimson-light-a-2: #e0004008;--colors-crimson-light-a-3: #ff005216;--colors-crimson-light-a-4: #f8005123;--colors-crimson-light-a-5: #e5004f31;--colors-crimson-light-a-6: #d0004b41;--colors-crimson-light-a-7: #bf004753;--colors-crimson-light-a-8: #b6004a6c;--colors-crimson-light-a-9: #e2005bc2;--colors-crimson-light-a-10: #d70056cb;--colors-crimson-light-a-11: #c4004fe2;--colors-crimson-light-a-12: #530026e9;--colors-crimson-light-p3-1: color(display-p3 .998 .989 .992);--colors-crimson-light-p3-2: color(display-p3 .991 .969 .976);--colors-crimson-light-p3-3: color(display-p3 .987 .917 .941);--colors-crimson-light-p3-4: color(display-p3 .975 .866 .904);--colors-crimson-light-p3-5: color(display-p3 .953 .813 .864);--colors-crimson-light-p3-6: color(display-p3 .921 .755 .817);--colors-crimson-light-p3-7: color(display-p3 .88 .683 .761);--colors-crimson-light-p3-8: color(display-p3 .834 .592 .694);--colors-crimson-light-p3-9: color(display-p3 .843 .298 .507);--colors-crimson-light-p3-10: color(display-p3 .807 .266 .468);--colors-crimson-light-p3-11: color(display-p3 .731 .195 .388);--colors-crimson-light-p3-12: color(display-p3 .352 .111 .221);--colors-crimson-light-p3-a-1: color(display-p3 .675 .024 .349 / .012);--colors-crimson-light-p3-a-2: color(display-p3 .757 .02 .267 / .032);--colors-crimson-light-p3-a-3: color(display-p3 .859 .008 .294 / .083);--colors-crimson-light-p3-a-4: color(display-p3 .827 .008 .298 / .134);--colors-crimson-light-p3-a-5: color(display-p3 .753 .008 .275 / .189);--colors-crimson-light-p3-a-6: color(display-p3 .682 .004 .247 / .244);--colors-crimson-light-p3-a-7: color(display-p3 .62 .004 .251 / .318);--colors-crimson-light-p3-a-8: color(display-p3 .6 .004 .251 / .408);--colors-crimson-light-p3-a-9: color(display-p3 .776 0 .298 / .702);--colors-crimson-light-p3-a-10: color(display-p3 .737 0 .275 / .734);--colors-crimson-light-p3-a-11: color(display-p3 .731 .195 .388);--colors-crimson-light-p3-a-12: color(display-p3 .352 .111 .221);--colors-crimson-dark-1: #191114;--colors-crimson-dark-2: #201318;--colors-crimson-dark-3: #381525;--colors-crimson-dark-4: #4d122f;--colors-crimson-dark-5: #5c1839;--colors-crimson-dark-6: #6d2545;--colors-crimson-dark-7: #873356;--colors-crimson-dark-8: #b0436e;--colors-crimson-dark-9: #e93d82;--colors-crimson-dark-10: #ee518a;--colors-crimson-dark-11: #ff92ad;--colors-crimson-dark-12: #fdd3e8;--colors-crimson-dark-a-1: #f4126709;--colors-crimson-dark-a-2: #f22f7a11;--colors-crimson-dark-a-3: #fe2a8b2a;--colors-crimson-dark-a-4: #fd158741;--colors-crimson-dark-a-5: #fd278f51;--colors-crimson-dark-a-6: #fe459763;--colors-crimson-dark-a-7: #fd559b7f;--colors-crimson-dark-a-8: #fe5b9bab;--colors-crimson-dark-a-9: #fe418de8;--colors-crimson-dark-a-10: #ff5693ed;--colors-crimson-dark-a-11: #ff92ad;--colors-crimson-dark-a-12: #ffd5eafd;--colors-crimson-dark-p3-1: color(display-p3 .093 .068 .078);--colors-crimson-dark-p3-2: color(display-p3 .117 .078 .095);--colors-crimson-dark-p3-3: color(display-p3 .203 .091 .143);--colors-crimson-dark-p3-4: color(display-p3 .277 .087 .182);--colors-crimson-dark-p3-5: color(display-p3 .332 .115 .22);--colors-crimson-dark-p3-6: color(display-p3 .394 .162 .268);--colors-crimson-dark-p3-7: color(display-p3 .489 .222 .336);--colors-crimson-dark-p3-8: color(display-p3 .638 .289 .429);--colors-crimson-dark-p3-9: color(display-p3 .843 .298 .507);--colors-crimson-dark-p3-10: color(display-p3 .864 .364 .539);--colors-crimson-dark-p3-11: color(display-p3 1 .56 .66);--colors-crimson-dark-p3-12: color(display-p3 .966 .834 .906);--colors-crimson-dark-p3-a-1: color(display-p3 .984 .071 .463 / .03);--colors-crimson-dark-p3-a-2: color(display-p3 .996 .282 .569 / .055);--colors-crimson-dark-p3-a-3: color(display-p3 .996 .227 .573 / .148);--colors-crimson-dark-p3-a-4: color(display-p3 1 .157 .569 / .227);--colors-crimson-dark-p3-a-5: color(display-p3 1 .231 .604 / .286);--colors-crimson-dark-p3-a-6: color(display-p3 1 .337 .643 / .349);--colors-crimson-dark-p3-a-7: color(display-p3 1 .416 .663 / .454);--colors-crimson-dark-p3-a-8: color(display-p3 .996 .427 .651 / .614);--colors-crimson-dark-p3-a-9: color(display-p3 1 .345 .596 / .832);--colors-crimson-dark-p3-a-10: color(display-p3 1 .42 .62 / .853);--colors-crimson-dark-p3-a-11: color(display-p3 1 .56 .66);--colors-crimson-dark-p3-a-12: color(display-p3 .966 .834 .906);--colors-crimson-a-1: var(--colors-crimson-light-a-1);--colors-crimson-a-2: var(--colors-crimson-light-a-2);--colors-crimson-a-3: var(--colors-crimson-light-a-3);--colors-crimson-a-4: var(--colors-crimson-light-a-4);--colors-crimson-a-5: var(--colors-crimson-light-a-5);--colors-crimson-a-6: var(--colors-crimson-light-a-6);--colors-crimson-a-7: var(--colors-crimson-light-a-7);--colors-crimson-a-8: var(--colors-crimson-light-a-8);--colors-crimson-a-9: var(--colors-crimson-light-a-9);--colors-crimson-a-10: var(--colors-crimson-light-a-10);--colors-crimson-a-11: var(--colors-crimson-light-a-11);--colors-crimson-a-12: var(--colors-crimson-light-a-12);--colors-crimson-p3-1: var(--colors-crimson-light-p3-1);--colors-crimson-p3-2: var(--colors-crimson-light-p3-2);--colors-crimson-p3-3: var(--colors-crimson-light-p3-3);--colors-crimson-p3-4: var(--colors-crimson-light-p3-4);--colors-crimson-p3-5: var(--colors-crimson-light-p3-5);--colors-crimson-p3-6: var(--colors-crimson-light-p3-6);--colors-crimson-p3-7: var(--colors-crimson-light-p3-7);--colors-crimson-p3-8: var(--colors-crimson-light-p3-8);--colors-crimson-p3-9: var(--colors-crimson-light-p3-9);--colors-crimson-p3-10: var(--colors-crimson-light-p3-10);--colors-crimson-p3-11: var(--colors-crimson-light-p3-11);--colors-crimson-p3-12: var(--colors-crimson-light-p3-12);--colors-crimson-p3-a-1: var(--colors-crimson-light-p3-a-1);--colors-crimson-p3-a-2: var(--colors-crimson-light-p3-a-2);--colors-crimson-p3-a-3: var(--colors-crimson-light-p3-a-3);--colors-crimson-p3-a-4: var(--colors-crimson-light-p3-a-4);--colors-crimson-p3-a-5: var(--colors-crimson-light-p3-a-5);--colors-crimson-p3-a-6: var(--colors-crimson-light-p3-a-6);--colors-crimson-p3-a-7: var(--colors-crimson-light-p3-a-7);--colors-crimson-p3-a-8: var(--colors-crimson-light-p3-a-8);--colors-crimson-p3-a-9: var(--colors-crimson-light-p3-a-9);--colors-crimson-p3-a-10: var(--colors-crimson-light-p3-a-10);--colors-crimson-p3-a-11: var(--colors-crimson-light-p3-a-11);--colors-crimson-p3-a-12: var(--colors-crimson-light-p3-a-12);--colors-grass-1: var(--colors-grass-light-1);--colors-grass-2: var(--colors-grass-light-2);--colors-grass-3: var(--colors-grass-light-3);--colors-grass-4: var(--colors-grass-light-4);--colors-grass-5: var(--colors-grass-light-5);--colors-grass-6: var(--colors-grass-light-6);--colors-grass-7: var(--colors-grass-light-7);--colors-grass-8: var(--colors-grass-light-8);--colors-grass-9: var(--colors-grass-light-9);--colors-grass-10: var(--colors-grass-light-10);--colors-grass-11: var(--colors-grass-light-11);--colors-grass-12: var(--colors-grass-light-12);--colors-grass-light-1: #fbfefb;--colors-grass-light-2: #f5fbf5;--colors-grass-light-3: #e9f6e9;--colors-grass-light-4: #daf1db;--colors-grass-light-5: #c9e8ca;--colors-grass-light-6: #b2ddb5;--colors-grass-light-7: #94ce9a;--colors-grass-light-8: #65ba74;--colors-grass-light-9: #46a758;--colors-grass-light-10: #3e9b4f;--colors-grass-light-11: #2a7e3b;--colors-grass-light-12: #203c25;--colors-grass-light-a-1: #00c00004;--colors-grass-light-a-2: #0099000a;--colors-grass-light-a-3: #00970016;--colors-grass-light-a-4: #009f0725;--colors-grass-light-a-5: #00930536;--colors-grass-light-a-6: #008f0a4d;--colors-grass-light-a-7: #018b0f6b;--colors-grass-light-a-8: #008d199a;--colors-grass-light-a-9: #008619b9;--colors-grass-light-a-10: #007b17c1;--colors-grass-light-a-11: #006514d5;--colors-grass-light-a-12: #002006df;--colors-grass-light-p3-1: color(display-p3 .986 .996 .985);--colors-grass-light-p3-2: color(display-p3 .966 .983 .964);--colors-grass-light-p3-3: color(display-p3 .923 .965 .917);--colors-grass-light-p3-4: color(display-p3 .872 .94 .865);--colors-grass-light-p3-5: color(display-p3 .811 .908 .802);--colors-grass-light-p3-6: color(display-p3 .733 .864 .724);--colors-grass-light-p3-7: color(display-p3 .628 .803 .622);--colors-grass-light-p3-8: color(display-p3 .477 .72 .482);--colors-grass-light-p3-9: color(display-p3 .38 .647 .378);--colors-grass-light-p3-10: color(display-p3 .344 .598 .342);--colors-grass-light-p3-11: color(display-p3 .263 .488 .261);--colors-grass-light-p3-12: color(display-p3 .151 .233 .153);--colors-grass-light-p3-a-1: color(display-p3 .024 .757 .024 / .016);--colors-grass-light-p3-a-2: color(display-p3 .024 .565 .024 / .036);--colors-grass-light-p3-a-3: color(display-p3 .059 .576 .008 / .083);--colors-grass-light-p3-a-4: color(display-p3 .035 .565 .008 / .134);--colors-grass-light-p3-a-5: color(display-p3 .047 .545 .008 / .197);--colors-grass-light-p3-a-6: color(display-p3 .031 .502 .004 / .275);--colors-grass-light-p3-a-7: color(display-p3 .012 .482 .004 / .377);--colors-grass-light-p3-a-8: color(display-p3 0 .467 .008 / .522);--colors-grass-light-p3-a-9: color(display-p3 .008 .435 0 / .624);--colors-grass-light-p3-a-10: color(display-p3 .008 .388 0 / .659);--colors-grass-light-p3-a-11: color(display-p3 .263 .488 .261);--colors-grass-light-p3-a-12: color(display-p3 .151 .233 .153);--colors-grass-dark-1: #0e1511;--colors-grass-dark-2: #141a15;--colors-grass-dark-3: #1b2a1e;--colors-grass-dark-4: #1d3a24;--colors-grass-dark-5: #25482d;--colors-grass-dark-6: #2d5736;--colors-grass-dark-7: #366740;--colors-grass-dark-8: #3e7949;--colors-grass-dark-9: #46a758;--colors-grass-dark-10: #53b365;--colors-grass-dark-11: #71d083;--colors-grass-dark-12: #c2f0c2;--colors-grass-dark-a-1: #00de1205;--colors-grass-dark-a-2: #5ef7780a;--colors-grass-dark-a-3: #70fe8c1b;--colors-grass-dark-a-4: #57ff802c;--colors-grass-dark-a-5: #68ff8b3b;--colors-grass-dark-a-6: #71ff8f4b;--colors-grass-dark-a-7: #77fd925d;--colors-grass-dark-a-8: #77fd9070;--colors-grass-dark-a-9: #65ff82a1;--colors-grass-dark-a-10: #72ff8dae;--colors-grass-dark-a-11: #89ff9fcd;--colors-grass-dark-a-12: #ceffceef;--colors-grass-dark-p3-1: color(display-p3 .062 .083 .067);--colors-grass-dark-p3-2: color(display-p3 .083 .103 .085);--colors-grass-dark-p3-3: color(display-p3 .118 .163 .122);--colors-grass-dark-p3-4: color(display-p3 .142 .225 .15);--colors-grass-dark-p3-5: color(display-p3 .178 .279 .186);--colors-grass-dark-p3-6: color(display-p3 .217 .337 .224);--colors-grass-dark-p3-7: color(display-p3 .258 .4 .264);--colors-grass-dark-p3-8: color(display-p3 .302 .47 .305);--colors-grass-dark-p3-9: color(display-p3 .38 .647 .378);--colors-grass-dark-p3-10: color(display-p3 .426 .694 .426);--colors-grass-dark-p3-11: color(display-p3 .535 .807 .542);--colors-grass-dark-p3-12: color(display-p3 .797 .936 .776);--colors-grass-dark-p3-a-1: color(display-p3 0 .992 .071 / .017);--colors-grass-dark-p3-a-2: color(display-p3 .482 .996 .584 / .038);--colors-grass-dark-p3-a-3: color(display-p3 .549 .992 .588 / .106);--colors-grass-dark-p3-a-4: color(display-p3 .51 .996 .557 / .169);--colors-grass-dark-p3-a-5: color(display-p3 .553 1 .588 / .227);--colors-grass-dark-p3-a-6: color(display-p3 .584 1 .608 / .29);--colors-grass-dark-p3-a-7: color(display-p3 .604 1 .616 / .358);--colors-grass-dark-p3-a-8: color(display-p3 .608 1 .62 / .433);--colors-grass-dark-p3-a-9: color(display-p3 .573 1 .569 / .622);--colors-grass-dark-p3-a-10: color(display-p3 .6 .996 .6 / .673);--colors-grass-dark-p3-a-11: color(display-p3 .535 .807 .542);--colors-grass-dark-p3-a-12: color(display-p3 .797 .936 .776);--colors-grass-a-1: var(--colors-grass-light-a-1);--colors-grass-a-2: var(--colors-grass-light-a-2);--colors-grass-a-3: var(--colors-grass-light-a-3);--colors-grass-a-4: var(--colors-grass-light-a-4);--colors-grass-a-5: var(--colors-grass-light-a-5);--colors-grass-a-6: var(--colors-grass-light-a-6);--colors-grass-a-7: var(--colors-grass-light-a-7);--colors-grass-a-8: var(--colors-grass-light-a-8);--colors-grass-a-9: var(--colors-grass-light-a-9);--colors-grass-a-10: var(--colors-grass-light-a-10);--colors-grass-a-11: var(--colors-grass-light-a-11);--colors-grass-a-12: var(--colors-grass-light-a-12);--colors-grass-p3-1: var(--colors-grass-light-p3-1);--colors-grass-p3-2: var(--colors-grass-light-p3-2);--colors-grass-p3-3: var(--colors-grass-light-p3-3);--colors-grass-p3-4: var(--colors-grass-light-p3-4);--colors-grass-p3-5: var(--colors-grass-light-p3-5);--colors-grass-p3-6: var(--colors-grass-light-p3-6);--colors-grass-p3-7: var(--colors-grass-light-p3-7);--colors-grass-p3-8: var(--colors-grass-light-p3-8);--colors-grass-p3-9: var(--colors-grass-light-p3-9);--colors-grass-p3-10: var(--colors-grass-light-p3-10);--colors-grass-p3-11: var(--colors-grass-light-p3-11);--colors-grass-p3-12: var(--colors-grass-light-p3-12);--colors-grass-p3-a-1: var(--colors-grass-light-p3-a-1);--colors-grass-p3-a-2: var(--colors-grass-light-p3-a-2);--colors-grass-p3-a-3: var(--colors-grass-light-p3-a-3);--colors-grass-p3-a-4: var(--colors-grass-light-p3-a-4);--colors-grass-p3-a-5: var(--colors-grass-light-p3-a-5);--colors-grass-p3-a-6: var(--colors-grass-light-p3-a-6);--colors-grass-p3-a-7: var(--colors-grass-light-p3-a-7);--colors-grass-p3-a-8: var(--colors-grass-light-p3-a-8);--colors-grass-p3-a-9: var(--colors-grass-light-p3-a-9);--colors-grass-p3-a-10: var(--colors-grass-light-p3-a-10);--colors-grass-p3-a-11: var(--colors-grass-light-p3-a-11);--colors-grass-p3-a-12: var(--colors-grass-light-p3-a-12);--colors-indigo-1: var(--colors-indigo-light-1);--colors-indigo-2: var(--colors-indigo-light-2);--colors-indigo-3: var(--colors-indigo-light-3);--colors-indigo-4: var(--colors-indigo-light-4);--colors-indigo-5: var(--colors-indigo-light-5);--colors-indigo-6: var(--colors-indigo-light-6);--colors-indigo-7: var(--colors-indigo-light-7);--colors-indigo-8: var(--colors-indigo-light-8);--colors-indigo-9: var(--colors-indigo-light-9);--colors-indigo-10: var(--colors-indigo-light-10);--colors-indigo-11: var(--colors-indigo-light-11);--colors-indigo-12: var(--colors-indigo-light-12);--colors-indigo-light-1: #fdfdfe;--colors-indigo-light-2: #f7f9ff;--colors-indigo-light-3: #edf2fe;--colors-indigo-light-4: #e1e9ff;--colors-indigo-light-5: #d2deff;--colors-indigo-light-6: #c1d0ff;--colors-indigo-light-7: #abbdf9;--colors-indigo-light-8: #8da4ef;--colors-indigo-light-9: #3e63dd;--colors-indigo-light-10: #3358d4;--colors-indigo-light-11: #3a5bc7;--colors-indigo-light-12: #1f2d5c;--colors-indigo-light-a-1: #00008002;--colors-indigo-light-a-2: #0040ff08;--colors-indigo-light-a-3: #0047f112;--colors-indigo-light-a-4: #0044ff1e;--colors-indigo-light-a-5: #0044ff2d;--colors-indigo-light-a-6: #003eff3e;--colors-indigo-light-a-7: #0037ed54;--colors-indigo-light-a-8: #0034dc72;--colors-indigo-light-a-9: #0031d2c1;--colors-indigo-light-a-10: #002ec9cc;--colors-indigo-light-a-11: #002bb7c5;--colors-indigo-light-a-12: #001046e0;--colors-indigo-light-p3-1: color(display-p3 .992 .992 .996);--colors-indigo-light-p3-2: color(display-p3 .971 .977 .998);--colors-indigo-light-p3-3: color(display-p3 .933 .948 .992);--colors-indigo-light-p3-4: color(display-p3 .885 .914 1);--colors-indigo-light-p3-5: color(display-p3 .831 .87 1);--colors-indigo-light-p3-6: color(display-p3 .767 .814 .995);--colors-indigo-light-p3-7: color(display-p3 .685 .74 .957);--colors-indigo-light-p3-8: color(display-p3 .569 .639 .916);--colors-indigo-light-p3-9: color(display-p3 .276 .384 .837);--colors-indigo-light-p3-10: color(display-p3 .234 .343 .801);--colors-indigo-light-p3-11: color(display-p3 .256 .354 .755);--colors-indigo-light-p3-12: color(display-p3 .133 .175 .348);--colors-indigo-light-p3-a-1: color(display-p3 .02 .02 .51 / .008);--colors-indigo-light-p3-a-2: color(display-p3 .024 .161 .863 / .028);--colors-indigo-light-p3-a-3: color(display-p3 .008 .239 .886 / .067);--colors-indigo-light-p3-a-4: color(display-p3 .004 .247 1 / .114);--colors-indigo-light-p3-a-5: color(display-p3 .004 .235 1 / .169);--colors-indigo-light-p3-a-6: color(display-p3 .004 .208 .984 / .232);--colors-indigo-light-p3-a-7: color(display-p3 .004 .176 .863 / .314);--colors-indigo-light-p3-a-8: color(display-p3 .004 .165 .812 / .432);--colors-indigo-light-p3-a-9: color(display-p3 0 .153 .773 / .726);--colors-indigo-light-p3-a-10: color(display-p3 0 .137 .737 / .765);--colors-indigo-light-p3-a-11: color(display-p3 .256 .354 .755);--colors-indigo-light-p3-a-12: color(display-p3 .133 .175 .348);--colors-indigo-dark-1: #11131f;--colors-indigo-dark-2: #141726;--colors-indigo-dark-3: #182449;--colors-indigo-dark-4: #1d2e62;--colors-indigo-dark-5: #253974;--colors-indigo-dark-6: #304384;--colors-indigo-dark-7: #3a4f97;--colors-indigo-dark-8: #435db1;--colors-indigo-dark-9: #3e63dd;--colors-indigo-dark-10: #5472e4;--colors-indigo-dark-11: #9eb1ff;--colors-indigo-dark-12: #d6e1ff;--colors-indigo-dark-a-1: #1133ff0f;--colors-indigo-dark-a-2: #3354fa17;--colors-indigo-dark-a-3: #2f62ff3c;--colors-indigo-dark-a-4: #3566ff57;--colors-indigo-dark-a-5: #4171fd6b;--colors-indigo-dark-a-6: #5178fd7c;--colors-indigo-dark-a-7: #5a7fff90;--colors-indigo-dark-a-8: #5b81feac;--colors-indigo-dark-a-9: #4671ffdb;--colors-indigo-dark-a-10: #5c7efee3;--colors-indigo-dark-a-11: #9eb1ff;--colors-indigo-dark-a-12: #d6e1ff;--colors-indigo-dark-p3-1: color(display-p3 .068 .074 .118);--colors-indigo-dark-p3-2: color(display-p3 .081 .089 .144);--colors-indigo-dark-p3-3: color(display-p3 .105 .141 .275);--colors-indigo-dark-p3-4: color(display-p3 .129 .18 .369);--colors-indigo-dark-p3-5: color(display-p3 .163 .22 .439);--colors-indigo-dark-p3-6: color(display-p3 .203 .262 .5);--colors-indigo-dark-p3-7: color(display-p3 .245 .309 .575);--colors-indigo-dark-p3-8: color(display-p3 .285 .362 .674);--colors-indigo-dark-p3-9: color(display-p3 .276 .384 .837);--colors-indigo-dark-p3-10: color(display-p3 .354 .445 .866);--colors-indigo-dark-p3-11: color(display-p3 .63 .69 1);--colors-indigo-dark-p3-12: color(display-p3 .848 .881 .99);--colors-indigo-dark-p3-a-1: color(display-p3 .071 .212 .996 / .055);--colors-indigo-dark-p3-a-2: color(display-p3 .251 .345 .988 / .085);--colors-indigo-dark-p3-a-3: color(display-p3 .243 .404 1 / .223);--colors-indigo-dark-p3-a-4: color(display-p3 .263 .42 1 / .324);--colors-indigo-dark-p3-a-5: color(display-p3 .314 .451 1 / .4);--colors-indigo-dark-p3-a-6: color(display-p3 .361 .49 1 / .467);--colors-indigo-dark-p3-a-7: color(display-p3 .388 .51 1 / .547);--colors-indigo-dark-p3-a-8: color(display-p3 .404 .518 1 / .652);--colors-indigo-dark-p3-a-9: color(display-p3 .318 .451 1 / .824);--colors-indigo-dark-p3-a-10: color(display-p3 .404 .506 1 / .858);--colors-indigo-dark-p3-a-11: color(display-p3 .63 .69 1);--colors-indigo-dark-p3-a-12: color(display-p3 .848 .881 .99);--colors-indigo-a-1: var(--colors-indigo-light-a-1);--colors-indigo-a-2: var(--colors-indigo-light-a-2);--colors-indigo-a-3: var(--colors-indigo-light-a-3);--colors-indigo-a-4: var(--colors-indigo-light-a-4);--colors-indigo-a-5: var(--colors-indigo-light-a-5);--colors-indigo-a-6: var(--colors-indigo-light-a-6);--colors-indigo-a-7: var(--colors-indigo-light-a-7);--colors-indigo-a-8: var(--colors-indigo-light-a-8);--colors-indigo-a-9: var(--colors-indigo-light-a-9);--colors-indigo-a-10: var(--colors-indigo-light-a-10);--colors-indigo-a-11: var(--colors-indigo-light-a-11);--colors-indigo-a-12: var(--colors-indigo-light-a-12);--colors-indigo-p3-1: var(--colors-indigo-light-p3-1);--colors-indigo-p3-2: var(--colors-indigo-light-p3-2);--colors-indigo-p3-3: var(--colors-indigo-light-p3-3);--colors-indigo-p3-4: var(--colors-indigo-light-p3-4);--colors-indigo-p3-5: var(--colors-indigo-light-p3-5);--colors-indigo-p3-6: var(--colors-indigo-light-p3-6);--colors-indigo-p3-7: var(--colors-indigo-light-p3-7);--colors-indigo-p3-8: var(--colors-indigo-light-p3-8);--colors-indigo-p3-9: var(--colors-indigo-light-p3-9);--colors-indigo-p3-10: var(--colors-indigo-light-p3-10);--colors-indigo-p3-11: var(--colors-indigo-light-p3-11);--colors-indigo-p3-12: var(--colors-indigo-light-p3-12);--colors-indigo-p3-a-1: var(--colors-indigo-light-p3-a-1);--colors-indigo-p3-a-2: var(--colors-indigo-light-p3-a-2);--colors-indigo-p3-a-3: var(--colors-indigo-light-p3-a-3);--colors-indigo-p3-a-4: var(--colors-indigo-light-p3-a-4);--colors-indigo-p3-a-5: var(--colors-indigo-light-p3-a-5);--colors-indigo-p3-a-6: var(--colors-indigo-light-p3-a-6);--colors-indigo-p3-a-7: var(--colors-indigo-light-p3-a-7);--colors-indigo-p3-a-8: var(--colors-indigo-light-p3-a-8);--colors-indigo-p3-a-9: var(--colors-indigo-light-p3-a-9);--colors-indigo-p3-a-10: var(--colors-indigo-light-p3-a-10);--colors-indigo-p3-a-11: var(--colors-indigo-light-p3-a-11);--colors-indigo-p3-a-12: var(--colors-indigo-light-p3-a-12);--colors-lime-1: var(--colors-lime-light-1);--colors-lime-2: var(--colors-lime-light-2);--colors-lime-3: var(--colors-lime-light-3);--colors-lime-4: var(--colors-lime-light-4);--colors-lime-5: var(--colors-lime-light-5);--colors-lime-6: var(--colors-lime-light-6);--colors-lime-7: var(--colors-lime-light-7);--colors-lime-8: var(--colors-lime-light-8);--colors-lime-9: var(--colors-lime-light-9);--colors-lime-10: var(--colors-lime-light-10);--colors-lime-11: var(--colors-lime-light-11);--colors-lime-12: var(--colors-lime-light-12);--colors-lime-light-1: #fcfdfa;--colors-lime-light-2: #f8faf3;--colors-lime-light-3: #eef6d6;--colors-lime-light-4: #e2f0bd;--colors-lime-light-5: #d3e7a6;--colors-lime-light-6: #c2da91;--colors-lime-light-7: #abc978;--colors-lime-light-8: #8db654;--colors-lime-light-9: #bdee63;--colors-lime-light-10: #b0e64c;--colors-lime-light-11: #5c7c2f;--colors-lime-light-12: #37401c;--colors-lime-light-a-1: #66990005;--colors-lime-light-a-2: #6b95000c;--colors-lime-light-a-3: #96c80029;--colors-lime-light-a-4: #8fc60042;--colors-lime-light-a-5: #81bb0059;--colors-lime-light-a-6: #72aa006e;--colors-lime-light-a-7: #61990087;--colors-lime-light-a-8: #559200ab;--colors-lime-light-a-9: #93e4009c;--colors-lime-light-a-10: #8fdc00b3;--colors-lime-light-a-11: #375f00d0;--colors-lime-light-a-12: #1e2900e3;--colors-lime-light-p3-1: color(display-p3 .989 .992 .981);--colors-lime-light-p3-2: color(display-p3 .975 .98 .954);--colors-lime-light-p3-3: color(display-p3 .939 .965 .851);--colors-lime-light-p3-4: color(display-p3 .896 .94 .76);--colors-lime-light-p3-5: color(display-p3 .843 .903 .678);--colors-lime-light-p3-6: color(display-p3 .778 .852 .599);--colors-lime-light-p3-7: color(display-p3 .694 .784 .508);--colors-lime-light-p3-8: color(display-p3 .585 .707 .378);--colors-lime-light-p3-9: color(display-p3 .78 .928 .466);--colors-lime-light-p3-10: color(display-p3 .734 .896 .397);--colors-lime-light-p3-11: color(display-p3 .386 .482 .227);--colors-lime-light-p3-12: color(display-p3 .222 .25 .128);--colors-lime-light-p3-a-1: color(display-p3 .412 .608 .02 / .02);--colors-lime-light-p3-a-2: color(display-p3 .514 .592 .024 / .048);--colors-lime-light-p3-a-3: color(display-p3 .584 .765 .008 / .15);--colors-lime-light-p3-a-4: color(display-p3 .561 .757 .004 / .24);--colors-lime-light-p3-a-5: color(display-p3 .514 .698 .004 / .322);--colors-lime-light-p3-a-6: color(display-p3 .443 .627 0 / .4);--colors-lime-light-p3-a-7: color(display-p3 .376 .561 .004 / .491);--colors-lime-light-p3-a-8: color(display-p3 .333 .529 0 / .624);--colors-lime-light-p3-a-9: color(display-p3 .588 .867 0 / .534);--colors-lime-light-p3-a-10: color(display-p3 .561 .827 0 / .604);--colors-lime-light-p3-a-11: color(display-p3 .386 .482 .227);--colors-lime-light-p3-a-12: color(display-p3 .222 .25 .128);--colors-lime-dark-1: #11130c;--colors-lime-dark-2: #151a10;--colors-lime-dark-3: #1f2917;--colors-lime-dark-4: #29371d;--colors-lime-dark-5: #334423;--colors-lime-dark-6: #3d522a;--colors-lime-dark-7: #496231;--colors-lime-dark-8: #577538;--colors-lime-dark-9: #bdee63;--colors-lime-dark-10: #d4ff70;--colors-lime-dark-11: #bde56c;--colors-lime-dark-12: #e3f7ba;--colors-lime-dark-a-1: #11bb0003;--colors-lime-dark-a-2: #78f7000a;--colors-lime-dark-a-3: #9bfd4c1a;--colors-lime-dark-a-4: #a7fe5c29;--colors-lime-dark-a-5: #affe6537;--colors-lime-dark-a-6: #b2fe6d46;--colors-lime-dark-a-7: #b6ff6f57;--colors-lime-dark-a-8: #b6fd6d6c;--colors-lime-dark-a-9: #caff69ed;--colors-lime-dark-a-10: #d4ff70;--colors-lime-dark-a-11: #d1fe77e4;--colors-lime-dark-a-12: #e9febff7;--colors-lime-dark-p3-1: color(display-p3 .067 .073 .048);--colors-lime-dark-p3-2: color(display-p3 .086 .1 .067);--colors-lime-dark-p3-3: color(display-p3 .13 .16 .099);--colors-lime-dark-p3-4: color(display-p3 .172 .214 .126);--colors-lime-dark-p3-5: color(display-p3 .213 .266 .153);--colors-lime-dark-p3-6: color(display-p3 .257 .321 .182);--colors-lime-dark-p3-7: color(display-p3 .307 .383 .215);--colors-lime-dark-p3-8: color(display-p3 .365 .456 .25);--colors-lime-dark-p3-9: color(display-p3 .78 .928 .466);--colors-lime-dark-p3-10: color(display-p3 .865 .995 .519);--colors-lime-dark-p3-11: color(display-p3 .771 .893 .485);--colors-lime-dark-p3-12: color(display-p3 .905 .966 .753);--colors-lime-dark-p3-a-1: color(display-p3 .067 .941 0 / .009);--colors-lime-dark-p3-a-2: color(display-p3 .584 .996 .071 / .038);--colors-lime-dark-p3-a-3: color(display-p3 .69 1 .38 / .101);--colors-lime-dark-p3-a-4: color(display-p3 .729 1 .435 / .16);--colors-lime-dark-p3-a-5: color(display-p3 .745 1 .471 / .215);--colors-lime-dark-p3-a-6: color(display-p3 .769 1 .482 / .274);--colors-lime-dark-p3-a-7: color(display-p3 .769 1 .506 / .341);--colors-lime-dark-p3-a-8: color(display-p3 .784 1 .51 / .416);--colors-lime-dark-p3-a-9: color(display-p3 .839 1 .502 / .925);--colors-lime-dark-p3-a-10: color(display-p3 .871 1 .522 / .996);--colors-lime-dark-p3-a-11: color(display-p3 .771 .893 .485);--colors-lime-dark-p3-a-12: color(display-p3 .905 .966 .753);--colors-lime-a-1: var(--colors-lime-light-a-1);--colors-lime-a-2: var(--colors-lime-light-a-2);--colors-lime-a-3: var(--colors-lime-light-a-3);--colors-lime-a-4: var(--colors-lime-light-a-4);--colors-lime-a-5: var(--colors-lime-light-a-5);--colors-lime-a-6: var(--colors-lime-light-a-6);--colors-lime-a-7: var(--colors-lime-light-a-7);--colors-lime-a-8: var(--colors-lime-light-a-8);--colors-lime-a-9: var(--colors-lime-light-a-9);--colors-lime-a-10: var(--colors-lime-light-a-10);--colors-lime-a-11: var(--colors-lime-light-a-11);--colors-lime-a-12: var(--colors-lime-light-a-12);--colors-lime-p3-1: var(--colors-lime-light-p3-1);--colors-lime-p3-2: var(--colors-lime-light-p3-2);--colors-lime-p3-3: var(--colors-lime-light-p3-3);--colors-lime-p3-4: var(--colors-lime-light-p3-4);--colors-lime-p3-5: var(--colors-lime-light-p3-5);--colors-lime-p3-6: var(--colors-lime-light-p3-6);--colors-lime-p3-7: var(--colors-lime-light-p3-7);--colors-lime-p3-8: var(--colors-lime-light-p3-8);--colors-lime-p3-9: var(--colors-lime-light-p3-9);--colors-lime-p3-10: var(--colors-lime-light-p3-10);--colors-lime-p3-11: var(--colors-lime-light-p3-11);--colors-lime-p3-12: var(--colors-lime-light-p3-12);--colors-lime-p3-a-1: var(--colors-lime-light-p3-a-1);--colors-lime-p3-a-2: var(--colors-lime-light-p3-a-2);--colors-lime-p3-a-3: var(--colors-lime-light-p3-a-3);--colors-lime-p3-a-4: var(--colors-lime-light-p3-a-4);--colors-lime-p3-a-5: var(--colors-lime-light-p3-a-5);--colors-lime-p3-a-6: var(--colors-lime-light-p3-a-6);--colors-lime-p3-a-7: var(--colors-lime-light-p3-a-7);--colors-lime-p3-a-8: var(--colors-lime-light-p3-a-8);--colors-lime-p3-a-9: var(--colors-lime-light-p3-a-9);--colors-lime-p3-a-10: var(--colors-lime-light-p3-a-10);--colors-lime-p3-a-11: var(--colors-lime-light-p3-a-11);--colors-lime-p3-a-12: var(--colors-lime-light-p3-a-12);--colors-orange-1: var(--colors-orange-light-1);--colors-orange-2: var(--colors-orange-light-2);--colors-orange-3: var(--colors-orange-light-3);--colors-orange-4: var(--colors-orange-light-4);--colors-orange-5: var(--colors-orange-light-5);--colors-orange-6: var(--colors-orange-light-6);--colors-orange-7: var(--colors-orange-light-7);--colors-orange-8: var(--colors-orange-light-8);--colors-orange-9: var(--colors-orange-light-9);--colors-orange-10: var(--colors-orange-light-10);--colors-orange-11: var(--colors-orange-light-11);--colors-orange-12: var(--colors-orange-light-12);--colors-orange-light-1: #fefcfb;--colors-orange-light-2: #fff7ed;--colors-orange-light-3: #ffefd6;--colors-orange-light-4: #ffdfb5;--colors-orange-light-5: #ffd19a;--colors-orange-light-6: #ffc182;--colors-orange-light-7: #f5ae73;--colors-orange-light-8: #ec9455;--colors-orange-light-9: #f76b15;--colors-orange-light-10: #ef5f00;--colors-orange-light-11: #cc4e00;--colors-orange-light-12: #582d1d;--colors-orange-light-a-1: #c0400004;--colors-orange-light-a-2: #ff8e0012;--colors-orange-light-a-3: #ff9c0029;--colors-orange-light-a-4: #ff91014a;--colors-orange-light-a-5: #ff8b0065;--colors-orange-light-a-6: #ff81007d;--colors-orange-light-a-7: #ed6c008c;--colors-orange-light-a-8: #e35f00aa;--colors-orange-light-a-9: #f65e00ea;--colors-orange-light-a-10: #ef5f00;--colors-orange-light-a-11: #cc4e00;--colors-orange-light-a-12: #431200e2;--colors-orange-light-p3-1: color(display-p3 .995 .988 .985);--colors-orange-light-p3-2: color(display-p3 .994 .968 .934);--colors-orange-light-p3-3: color(display-p3 .989 .938 .85);--colors-orange-light-p3-4: color(display-p3 1 .874 .687);--colors-orange-light-p3-5: color(display-p3 1 .821 .583);--colors-orange-light-p3-6: color(display-p3 .975 .767 .545);--colors-orange-light-p3-7: color(display-p3 .919 .693 .486);--colors-orange-light-p3-8: color(display-p3 .877 .597 .379);--colors-orange-light-p3-9: color(display-p3 .9 .45 .2);--colors-orange-light-p3-10: color(display-p3 .87 .409 .164);--colors-orange-light-p3-11: color(display-p3 .76 .34 0);--colors-orange-light-p3-12: color(display-p3 .323 .185 .127);--colors-orange-light-p3-a-1: color(display-p3 .757 .267 .024 / .016);--colors-orange-light-p3-a-2: color(display-p3 .886 .533 .008 / .067);--colors-orange-light-p3-a-3: color(display-p3 .922 .584 .008 / .15);--colors-orange-light-p3-a-4: color(display-p3 1 .604 .004 / .314);--colors-orange-light-p3-a-5: color(display-p3 1 .569 .004 / .416);--colors-orange-light-p3-a-6: color(display-p3 .949 .494 .004 / .455);--colors-orange-light-p3-a-7: color(display-p3 .839 .408 0 / .514);--colors-orange-light-p3-a-8: color(display-p3 .804 .349 0 / .62);--colors-orange-light-p3-a-9: color(display-p3 .878 .314 0 / .8);--colors-orange-light-p3-a-10: color(display-p3 .843 .29 0 / .836);--colors-orange-light-p3-a-11: color(display-p3 .76 .34 0);--colors-orange-light-p3-a-12: color(display-p3 .323 .185 .127);--colors-orange-dark-1: #17120e;--colors-orange-dark-2: #1e160f;--colors-orange-dark-3: #331e0b;--colors-orange-dark-4: #462100;--colors-orange-dark-5: #562800;--colors-orange-dark-6: #66350c;--colors-orange-dark-7: #7e451d;--colors-orange-dark-8: #a35829;--colors-orange-dark-9: #f76b15;--colors-orange-dark-10: #ff801f;--colors-orange-dark-11: #ffa057;--colors-orange-dark-12: #ffe0c2;--colors-orange-dark-a-1: #ec360007;--colors-orange-dark-a-2: #fe6d000e;--colors-orange-dark-a-3: #fb6a0025;--colors-orange-dark-a-4: #ff590039;--colors-orange-dark-a-5: #ff61004a;--colors-orange-dark-a-6: #fd75045c;--colors-orange-dark-a-7: #ff832c75;--colors-orange-dark-a-8: #fe84389d;--colors-orange-dark-a-9: #fe6d15f7;--colors-orange-dark-a-10: #ff801f;--colors-orange-dark-a-11: #ffa057;--colors-orange-dark-a-12: #ffe0c2;--colors-orange-dark-p3-1: color(display-p3 .088 .07 .057);--colors-orange-dark-p3-2: color(display-p3 .113 .089 .061);--colors-orange-dark-p3-3: color(display-p3 .189 .12 .056);--colors-orange-dark-p3-4: color(display-p3 .262 .132 0);--colors-orange-dark-p3-5: color(display-p3 .315 .168 .016);--colors-orange-dark-p3-6: color(display-p3 .376 .219 .088);--colors-orange-dark-p3-7: color(display-p3 .465 .283 .147);--colors-orange-dark-p3-8: color(display-p3 .601 .359 .201);--colors-orange-dark-p3-9: color(display-p3 .9 .45 .2);--colors-orange-dark-p3-10: color(display-p3 .98 .51 .23);--colors-orange-dark-p3-11: color(display-p3 1 .63 .38);--colors-orange-dark-p3-12: color(display-p3 .98 .883 .775);--colors-orange-dark-p3-a-1: color(display-p3 .961 .247 0 / .022);--colors-orange-dark-p3-a-2: color(display-p3 .992 .529 0 / .051);--colors-orange-dark-p3-a-3: color(display-p3 .996 .486 0 / .131);--colors-orange-dark-p3-a-4: color(display-p3 .996 .384 0 / .211);--colors-orange-dark-p3-a-5: color(display-p3 1 .455 0 / .265);--colors-orange-dark-p3-a-6: color(display-p3 1 .529 .129 / .332);--colors-orange-dark-p3-a-7: color(display-p3 1 .569 .251 / .429);--colors-orange-dark-p3-a-8: color(display-p3 1 .584 .302 / .572);--colors-orange-dark-p3-a-9: color(display-p3 1 .494 .216 / .895);--colors-orange-dark-p3-a-10: color(display-p3 1 .522 .235 / .979);--colors-orange-dark-p3-a-11: color(display-p3 1 .63 .38);--colors-orange-dark-p3-a-12: color(display-p3 .98 .883 .775);--colors-orange-a-1: var(--colors-orange-light-a-1);--colors-orange-a-2: var(--colors-orange-light-a-2);--colors-orange-a-3: var(--colors-orange-light-a-3);--colors-orange-a-4: var(--colors-orange-light-a-4);--colors-orange-a-5: var(--colors-orange-light-a-5);--colors-orange-a-6: var(--colors-orange-light-a-6);--colors-orange-a-7: var(--colors-orange-light-a-7);--colors-orange-a-8: var(--colors-orange-light-a-8);--colors-orange-a-9: var(--colors-orange-light-a-9);--colors-orange-a-10: var(--colors-orange-light-a-10);--colors-orange-a-11: var(--colors-orange-light-a-11);--colors-orange-a-12: var(--colors-orange-light-a-12);--colors-orange-p3-1: var(--colors-orange-light-p3-1);--colors-orange-p3-2: var(--colors-orange-light-p3-2);--colors-orange-p3-3: var(--colors-orange-light-p3-3);--colors-orange-p3-4: var(--colors-orange-light-p3-4);--colors-orange-p3-5: var(--colors-orange-light-p3-5);--colors-orange-p3-6: var(--colors-orange-light-p3-6);--colors-orange-p3-7: var(--colors-orange-light-p3-7);--colors-orange-p3-8: var(--colors-orange-light-p3-8);--colors-orange-p3-9: var(--colors-orange-light-p3-9);--colors-orange-p3-10: var(--colors-orange-light-p3-10);--colors-orange-p3-11: var(--colors-orange-light-p3-11);--colors-orange-p3-12: var(--colors-orange-light-p3-12);--colors-orange-p3-a-1: var(--colors-orange-light-p3-a-1);--colors-orange-p3-a-2: var(--colors-orange-light-p3-a-2);--colors-orange-p3-a-3: var(--colors-orange-light-p3-a-3);--colors-orange-p3-a-4: var(--colors-orange-light-p3-a-4);--colors-orange-p3-a-5: var(--colors-orange-light-p3-a-5);--colors-orange-p3-a-6: var(--colors-orange-light-p3-a-6);--colors-orange-p3-a-7: var(--colors-orange-light-p3-a-7);--colors-orange-p3-a-8: var(--colors-orange-light-p3-a-8);--colors-orange-p3-a-9: var(--colors-orange-light-p3-a-9);--colors-orange-p3-a-10: var(--colors-orange-light-p3-a-10);--colors-orange-p3-a-11: var(--colors-orange-light-p3-a-11);--colors-orange-p3-a-12: var(--colors-orange-light-p3-a-12);--colors-pink-1: var(--colors-pink-light-1);--colors-pink-2: var(--colors-pink-light-2);--colors-pink-3: var(--colors-pink-light-3);--colors-pink-4: var(--colors-pink-light-4);--colors-pink-5: var(--colors-pink-light-5);--colors-pink-6: var(--colors-pink-light-6);--colors-pink-7: var(--colors-pink-light-7);--colors-pink-8: var(--colors-pink-light-8);--colors-pink-9: var(--colors-pink-light-9);--colors-pink-10: var(--colors-pink-light-10);--colors-pink-11: var(--colors-pink-light-11);--colors-pink-12: var(--colors-pink-light-12);--colors-pink-light-1: #fffcfe;--colors-pink-light-2: #fef7fb;--colors-pink-light-3: #fee9f5;--colors-pink-light-4: #fbdcef;--colors-pink-light-5: #f6cee7;--colors-pink-light-6: #efbfdd;--colors-pink-light-7: #e7acd0;--colors-pink-light-8: #dd93c2;--colors-pink-light-9: #d6409f;--colors-pink-light-10: #cf3897;--colors-pink-light-11: #c2298a;--colors-pink-light-12: #651249;--colors-pink-light-a-1: #ff00aa03;--colors-pink-light-a-2: #e0008008;--colors-pink-light-a-3: #f4008c16;--colors-pink-light-a-4: #e2008b23;--colors-pink-light-a-5: #d1008331;--colors-pink-light-a-6: #c0007840;--colors-pink-light-a-7: #b6006f53;--colors-pink-light-a-8: #af006f6c;--colors-pink-light-a-9: #c8007fbf;--colors-pink-light-a-10: #c2007ac7;--colors-pink-light-a-11: #b60074d6;--colors-pink-light-a-12: #59003bed;--colors-pink-light-p3-1: color(display-p3 .998 .989 .996);--colors-pink-light-p3-2: color(display-p3 .992 .97 .985);--colors-pink-light-p3-3: color(display-p3 .981 .917 .96);--colors-pink-light-p3-4: color(display-p3 .963 .867 .932);--colors-pink-light-p3-5: color(display-p3 .939 .815 .899);--colors-pink-light-p3-6: color(display-p3 .907 .756 .859);--colors-pink-light-p3-7: color(display-p3 .869 .683 .81);--colors-pink-light-p3-8: color(display-p3 .825 .59 .751);--colors-pink-light-p3-9: color(display-p3 .775 .297 .61);--colors-pink-light-p3-10: color(display-p3 .748 .27 .581);--colors-pink-light-p3-11: color(display-p3 .698 .219 .528);--colors-pink-light-p3-12: color(display-p3 .363 .101 .279);--colors-pink-light-p3-a-1: color(display-p3 .675 .024 .675 / .012);--colors-pink-light-p3-a-2: color(display-p3 .757 .02 .51 / .032);--colors-pink-light-p3-a-3: color(display-p3 .765 .008 .529 / .083);--colors-pink-light-p3-a-4: color(display-p3 .737 .008 .506 / .134);--colors-pink-light-p3-a-5: color(display-p3 .663 .004 .451 / .185);--colors-pink-light-p3-a-6: color(display-p3 .616 .004 .424 / .244);--colors-pink-light-p3-a-7: color(display-p3 .596 .004 .412 / .318);--colors-pink-light-p3-a-8: color(display-p3 .573 .004 .404 / .412);--colors-pink-light-p3-a-9: color(display-p3 .682 0 .447 / .702);--colors-pink-light-p3-a-10: color(display-p3 .655 0 .424 / .73);--colors-pink-light-p3-a-11: color(display-p3 .698 .219 .528);--colors-pink-light-p3-a-12: color(display-p3 .363 .101 .279);--colors-pink-dark-1: #191117;--colors-pink-dark-2: #21121d;--colors-pink-dark-3: #37172f;--colors-pink-dark-4: #4b143d;--colors-pink-dark-5: #591c47;--colors-pink-dark-6: #692955;--colors-pink-dark-7: #833869;--colors-pink-dark-8: #a84885;--colors-pink-dark-9: #d6409f;--colors-pink-dark-10: #de51a8;--colors-pink-dark-11: #ff8dcc;--colors-pink-dark-12: #fdd1ea;--colors-pink-dark-a-1: #f412bc09;--colors-pink-dark-a-2: #f420bb12;--colors-pink-dark-a-3: #fe37cc29;--colors-pink-dark-a-4: #fc1ec43f;--colors-pink-dark-a-5: #fd35c24e;--colors-pink-dark-a-6: #fd51c75f;--colors-pink-dark-a-7: #fd62c87b;--colors-pink-dark-a-8: #ff68c8a2;--colors-pink-dark-a-9: #fe49bcd4;--colors-pink-dark-a-10: #ff5cc0dc;--colors-pink-dark-a-11: #ff8dcc;--colors-pink-dark-a-12: #ffd3ecfd;--colors-pink-dark-p3-1: color(display-p3 .093 .068 .089);--colors-pink-dark-p3-2: color(display-p3 .121 .073 .11);--colors-pink-dark-p3-3: color(display-p3 .198 .098 .179);--colors-pink-dark-p3-4: color(display-p3 .271 .095 .231);--colors-pink-dark-p3-5: color(display-p3 .32 .127 .273);--colors-pink-dark-p3-6: color(display-p3 .382 .177 .326);--colors-pink-dark-p3-7: color(display-p3 .477 .238 .405);--colors-pink-dark-p3-8: color(display-p3 .612 .304 .51);--colors-pink-dark-p3-9: color(display-p3 .775 .297 .61);--colors-pink-dark-p3-10: color(display-p3 .808 .356 .645);--colors-pink-dark-p3-11: color(display-p3 1 .535 .78);--colors-pink-dark-p3-12: color(display-p3 .964 .826 .912);--colors-pink-dark-p3-a-1: color(display-p3 .984 .071 .855 / .03);--colors-pink-dark-p3-a-2: color(display-p3 1 .2 .8 / .059);--colors-pink-dark-p3-a-3: color(display-p3 1 .294 .886 / .139);--colors-pink-dark-p3-a-4: color(display-p3 1 .192 .82 / .219);--colors-pink-dark-p3-a-5: color(display-p3 1 .282 .827 / .274);--colors-pink-dark-p3-a-6: color(display-p3 1 .396 .835 / .337);--colors-pink-dark-p3-a-7: color(display-p3 1 .459 .831 / .442);--colors-pink-dark-p3-a-8: color(display-p3 1 .478 .827 / .585);--colors-pink-dark-p3-a-9: color(display-p3 1 .373 .784 / .761);--colors-pink-dark-p3-a-10: color(display-p3 1 .435 .792 / .795);--colors-pink-dark-p3-a-11: color(display-p3 1 .535 .78);--colors-pink-dark-p3-a-12: color(display-p3 .964 .826 .912);--colors-pink-a-1: var(--colors-pink-light-a-1);--colors-pink-a-2: var(--colors-pink-light-a-2);--colors-pink-a-3: var(--colors-pink-light-a-3);--colors-pink-a-4: var(--colors-pink-light-a-4);--colors-pink-a-5: var(--colors-pink-light-a-5);--colors-pink-a-6: var(--colors-pink-light-a-6);--colors-pink-a-7: var(--colors-pink-light-a-7);--colors-pink-a-8: var(--colors-pink-light-a-8);--colors-pink-a-9: var(--colors-pink-light-a-9);--colors-pink-a-10: var(--colors-pink-light-a-10);--colors-pink-a-11: var(--colors-pink-light-a-11);--colors-pink-a-12: var(--colors-pink-light-a-12);--colors-pink-p3-1: var(--colors-pink-light-p3-1);--colors-pink-p3-2: var(--colors-pink-light-p3-2);--colors-pink-p3-3: var(--colors-pink-light-p3-3);--colors-pink-p3-4: var(--colors-pink-light-p3-4);--colors-pink-p3-5: var(--colors-pink-light-p3-5);--colors-pink-p3-6: var(--colors-pink-light-p3-6);--colors-pink-p3-7: var(--colors-pink-light-p3-7);--colors-pink-p3-8: var(--colors-pink-light-p3-8);--colors-pink-p3-9: var(--colors-pink-light-p3-9);--colors-pink-p3-10: var(--colors-pink-light-p3-10);--colors-pink-p3-11: var(--colors-pink-light-p3-11);--colors-pink-p3-12: var(--colors-pink-light-p3-12);--colors-pink-p3-a-1: var(--colors-pink-light-p3-a-1);--colors-pink-p3-a-2: var(--colors-pink-light-p3-a-2);--colors-pink-p3-a-3: var(--colors-pink-light-p3-a-3);--colors-pink-p3-a-4: var(--colors-pink-light-p3-a-4);--colors-pink-p3-a-5: var(--colors-pink-light-p3-a-5);--colors-pink-p3-a-6: var(--colors-pink-light-p3-a-6);--colors-pink-p3-a-7: var(--colors-pink-light-p3-a-7);--colors-pink-p3-a-8: var(--colors-pink-light-p3-a-8);--colors-pink-p3-a-9: var(--colors-pink-light-p3-a-9);--colors-pink-p3-a-10: var(--colors-pink-light-p3-a-10);--colors-pink-p3-a-11: var(--colors-pink-light-p3-a-11);--colors-pink-p3-a-12: var(--colors-pink-light-p3-a-12);--colors-purple-1: var(--colors-purple-light-1);--colors-purple-2: var(--colors-purple-light-2);--colors-purple-3: var(--colors-purple-light-3);--colors-purple-4: var(--colors-purple-light-4);--colors-purple-5: var(--colors-purple-light-5);--colors-purple-6: var(--colors-purple-light-6);--colors-purple-7: var(--colors-purple-light-7);--colors-purple-8: var(--colors-purple-light-8);--colors-purple-9: var(--colors-purple-light-9);--colors-purple-10: var(--colors-purple-light-10);--colors-purple-11: var(--colors-purple-light-11);--colors-purple-12: var(--colors-purple-light-12);--colors-purple-light-1: #fefcfe;--colors-purple-light-2: #fbf7fe;--colors-purple-light-3: #f7edfe;--colors-purple-light-4: #f2e2fc;--colors-purple-light-5: #ead5f9;--colors-purple-light-6: #e0c4f4;--colors-purple-light-7: #d1afec;--colors-purple-light-8: #be93e4;--colors-purple-light-9: #8e4ec6;--colors-purple-light-10: #8347b9;--colors-purple-light-11: #8145b5;--colors-purple-light-12: #402060;--colors-purple-light-a-1: #aa00aa03;--colors-purple-light-a-2: #8000e008;--colors-purple-light-a-3: #8e00f112;--colors-purple-light-a-4: #8d00e51d;--colors-purple-light-a-5: #8000db2a;--colors-purple-light-a-6: #7a01d03b;--colors-purple-light-a-7: #6d00c350;--colors-purple-light-a-8: #6600c06c;--colors-purple-light-a-9: #5c00adb1;--colors-purple-light-a-10: #53009eb8;--colors-purple-light-a-11: #52009aba;--colors-purple-light-a-12: #250049df;--colors-purple-light-p3-1: color(display-p3 .995 .988 .996);--colors-purple-light-p3-2: color(display-p3 .983 .971 .993);--colors-purple-light-p3-3: color(display-p3 .963 .931 .989);--colors-purple-light-p3-4: color(display-p3 .937 .888 .981);--colors-purple-light-p3-5: color(display-p3 .904 .837 .966);--colors-purple-light-p3-6: color(display-p3 .86 .774 .942);--colors-purple-light-p3-7: color(display-p3 .799 .69 .91);--colors-purple-light-p3-8: color(display-p3 .719 .583 .874);--colors-purple-light-p3-9: color(display-p3 .523 .318 .751);--colors-purple-light-p3-10: color(display-p3 .483 .289 .7);--colors-purple-light-p3-11: color(display-p3 .473 .281 .687);--colors-purple-light-p3-12: color(display-p3 .234 .132 .363);--colors-purple-light-p3-a-1: color(display-p3 .675 .024 .675 / .012);--colors-purple-light-p3-a-2: color(display-p3 .443 .024 .722 / .028);--colors-purple-light-p3-a-3: color(display-p3 .506 .008 .835 / .071);--colors-purple-light-p3-a-4: color(display-p3 .451 .004 .831 / .114);--colors-purple-light-p3-a-5: color(display-p3 .431 .004 .788 / .165);--colors-purple-light-p3-a-6: color(display-p3 .384 .004 .745 / .228);--colors-purple-light-p3-a-7: color(display-p3 .357 .004 .71 / .31);--colors-purple-light-p3-a-8: color(display-p3 .322 .004 .702 / .416);--colors-purple-light-p3-a-9: color(display-p3 .298 0 .639 / .683);--colors-purple-light-p3-a-10: color(display-p3 .271 0 .58 / .71);--colors-purple-light-p3-a-11: color(display-p3 .473 .281 .687);--colors-purple-light-p3-a-12: color(display-p3 .234 .132 .363);--colors-purple-dark-1: #18111b;--colors-purple-dark-2: #1e1523;--colors-purple-dark-3: #301c3b;--colors-purple-dark-4: #3d224e;--colors-purple-dark-5: #48295c;--colors-purple-dark-6: #54346b;--colors-purple-dark-7: #664282;--colors-purple-dark-8: #8457aa;--colors-purple-dark-9: #8e4ec6;--colors-purple-dark-10: #9a5cd0;--colors-purple-dark-11: #d19dff;--colors-purple-dark-12: #ecd9fa;--colors-purple-dark-a-1: #b412f90b;--colors-purple-dark-a-2: #b744f714;--colors-purple-dark-a-3: #c150ff2d;--colors-purple-dark-a-4: #bb53fd42;--colors-purple-dark-a-5: #be5cfd51;--colors-purple-dark-a-6: #c16dfd61;--colors-purple-dark-a-7: #c378fd7a;--colors-purple-dark-a-8: #c47effa4;--colors-purple-dark-a-9: #b661ffc2;--colors-purple-dark-a-10: #bc6fffcd;--colors-purple-dark-a-11: #d19dff;--colors-purple-dark-a-12: #f1ddfffa;--colors-purple-dark-p3-1: color(display-p3 .09 .068 .103);--colors-purple-dark-p3-2: color(display-p3 .113 .082 .134);--colors-purple-dark-p3-3: color(display-p3 .175 .112 .224);--colors-purple-dark-p3-4: color(display-p3 .224 .137 .297);--colors-purple-dark-p3-5: color(display-p3 .264 .167 .349);--colors-purple-dark-p3-6: color(display-p3 .311 .208 .406);--colors-purple-dark-p3-7: color(display-p3 .381 .266 .496);--colors-purple-dark-p3-8: color(display-p3 .49 .349 .649);--colors-purple-dark-p3-9: color(display-p3 .523 .318 .751);--colors-purple-dark-p3-10: color(display-p3 .57 .373 .791);--colors-purple-dark-p3-11: color(display-p3 .8 .62 1);--colors-purple-dark-p3-12: color(display-p3 .913 .854 .971);--colors-purple-dark-p3-a-1: color(display-p3 .686 .071 .996 / .038);--colors-purple-dark-p3-a-2: color(display-p3 .722 .286 .996 / .072);--colors-purple-dark-p3-a-3: color(display-p3 .718 .349 .996 / .169);--colors-purple-dark-p3-a-4: color(display-p3 .702 .353 1 / .248);--colors-purple-dark-p3-a-5: color(display-p3 .718 .404 1 / .303);--colors-purple-dark-p3-a-6: color(display-p3 .733 .455 1 / .366);--colors-purple-dark-p3-a-7: color(display-p3 .753 .506 1 / .458);--colors-purple-dark-p3-a-8: color(display-p3 .749 .522 1 / .622);--colors-purple-dark-p3-a-9: color(display-p3 .686 .408 1 / .736);--colors-purple-dark-p3-a-10: color(display-p3 .71 .459 1 / .778);--colors-purple-dark-p3-a-11: color(display-p3 .8 .62 1);--colors-purple-dark-p3-a-12: color(display-p3 .913 .854 .971);--colors-purple-a-1: var(--colors-purple-light-a-1);--colors-purple-a-2: var(--colors-purple-light-a-2);--colors-purple-a-3: var(--colors-purple-light-a-3);--colors-purple-a-4: var(--colors-purple-light-a-4);--colors-purple-a-5: var(--colors-purple-light-a-5);--colors-purple-a-6: var(--colors-purple-light-a-6);--colors-purple-a-7: var(--colors-purple-light-a-7);--colors-purple-a-8: var(--colors-purple-light-a-8);--colors-purple-a-9: var(--colors-purple-light-a-9);--colors-purple-a-10: var(--colors-purple-light-a-10);--colors-purple-a-11: var(--colors-purple-light-a-11);--colors-purple-a-12: var(--colors-purple-light-a-12);--colors-purple-p3-1: var(--colors-purple-light-p3-1);--colors-purple-p3-2: var(--colors-purple-light-p3-2);--colors-purple-p3-3: var(--colors-purple-light-p3-3);--colors-purple-p3-4: var(--colors-purple-light-p3-4);--colors-purple-p3-5: var(--colors-purple-light-p3-5);--colors-purple-p3-6: var(--colors-purple-light-p3-6);--colors-purple-p3-7: var(--colors-purple-light-p3-7);--colors-purple-p3-8: var(--colors-purple-light-p3-8);--colors-purple-p3-9: var(--colors-purple-light-p3-9);--colors-purple-p3-10: var(--colors-purple-light-p3-10);--colors-purple-p3-11: var(--colors-purple-light-p3-11);--colors-purple-p3-12: var(--colors-purple-light-p3-12);--colors-purple-p3-a-1: var(--colors-purple-light-p3-a-1);--colors-purple-p3-a-2: var(--colors-purple-light-p3-a-2);--colors-purple-p3-a-3: var(--colors-purple-light-p3-a-3);--colors-purple-p3-a-4: var(--colors-purple-light-p3-a-4);--colors-purple-p3-a-5: var(--colors-purple-light-p3-a-5);--colors-purple-p3-a-6: var(--colors-purple-light-p3-a-6);--colors-purple-p3-a-7: var(--colors-purple-light-p3-a-7);--colors-purple-p3-a-8: var(--colors-purple-light-p3-a-8);--colors-purple-p3-a-9: var(--colors-purple-light-p3-a-9);--colors-purple-p3-a-10: var(--colors-purple-light-p3-a-10);--colors-purple-p3-a-11: var(--colors-purple-light-p3-a-11);--colors-purple-p3-a-12: var(--colors-purple-light-p3-a-12);--colors-red-1: var(--colors-red-light-1);--colors-red-2: var(--colors-red-light-2);--colors-red-3: var(--colors-red-light-3);--colors-red-4: var(--colors-red-light-4);--colors-red-5: var(--colors-red-light-5);--colors-red-6: var(--colors-red-light-6);--colors-red-7: var(--colors-red-light-7);--colors-red-8: var(--colors-red-light-8);--colors-red-9: var(--colors-red-light-9);--colors-red-10: var(--colors-red-light-10);--colors-red-11: var(--colors-red-light-11);--colors-red-12: var(--colors-red-light-12);--colors-red-light-1: #fffcfc;--colors-red-light-2: #fff7f7;--colors-red-light-3: #feebec;--colors-red-light-4: #ffdbdc;--colors-red-light-5: #ffcdce;--colors-red-light-6: #fdbdbe;--colors-red-light-7: #f4a9aa;--colors-red-light-8: #eb8e90;--colors-red-light-9: #e5484d;--colors-red-light-10: #dc3e42;--colors-red-light-11: #ce2c31;--colors-red-light-12: #641723;--colors-red-light-a-1: #ff000003;--colors-red-light-a-2: #ff000008;--colors-red-light-a-3: #f3000d14;--colors-red-light-a-4: #ff000824;--colors-red-light-a-5: #ff000632;--colors-red-light-a-6: #f8000442;--colors-red-light-a-7: #df000356;--colors-red-light-a-8: #d2000571;--colors-red-light-a-9: #db0007b7;--colors-red-light-a-10: #d10005c1;--colors-red-light-a-11: #c40006d3;--colors-red-light-a-12: #55000de8;--colors-red-light-p3-1: color(display-p3 .998 .989 .988);--colors-red-light-p3-2: color(display-p3 .995 .971 .971);--colors-red-light-p3-3: color(display-p3 .985 .925 .925);--colors-red-light-p3-4: color(display-p3 .999 .866 .866);--colors-red-light-p3-5: color(display-p3 .984 .812 .811);--colors-red-light-p3-6: color(display-p3 .955 .751 .749);--colors-red-light-p3-7: color(display-p3 .915 .675 .672);--colors-red-light-p3-8: color(display-p3 .872 .575 .572);--colors-red-light-p3-9: color(display-p3 .83 .329 .324);--colors-red-light-p3-10: color(display-p3 .798 .294 .285);--colors-red-light-p3-11: color(display-p3 .744 .234 .222);--colors-red-light-p3-12: color(display-p3 .36 .115 .143);--colors-red-light-p3-a-1: color(display-p3 .675 .024 .024 / .012);--colors-red-light-p3-a-2: color(display-p3 .863 .024 .024 / .028);--colors-red-light-p3-a-3: color(display-p3 .792 .008 .008 / .075);--colors-red-light-p3-a-4: color(display-p3 1 .008 .008 / .134);--colors-red-light-p3-a-5: color(display-p3 .918 .008 .008 / .189);--colors-red-light-p3-a-6: color(display-p3 .831 .02 .004 / .251);--colors-red-light-p3-a-7: color(display-p3 .741 .016 .004 / .33);--colors-red-light-p3-a-8: color(display-p3 .698 .012 .004 / .428);--colors-red-light-p3-a-9: color(display-p3 .749 .008 0 / .675);--colors-red-light-p3-a-10: color(display-p3 .714 .012 0 / .714);--colors-red-light-p3-a-11: color(display-p3 .744 .234 .222);--colors-red-light-p3-a-12: color(display-p3 .36 .115 .143);--colors-red-dark-1: #191111;--colors-red-dark-2: #201314;--colors-red-dark-3: #3b1219;--colors-red-dark-4: #500f1c;--colors-red-dark-5: #611623;--colors-red-dark-6: #72232d;--colors-red-dark-7: #8c333a;--colors-red-dark-8: #b54548;--colors-red-dark-9: #e5484d;--colors-red-dark-10: #ec5d5e;--colors-red-dark-11: #ff9592;--colors-red-dark-12: #ffd1d9;--colors-red-dark-a-1: #f4121209;--colors-red-dark-a-2: #f22f3e11;--colors-red-dark-a-3: #ff173f2d;--colors-red-dark-a-4: #fe0a3b44;--colors-red-dark-a-5: #ff204756;--colors-red-dark-a-6: #ff3e5668;--colors-red-dark-a-7: #ff536184;--colors-red-dark-a-8: #ff5d61b0;--colors-red-dark-a-9: #fe4e54e4;--colors-red-dark-a-10: #ff6465eb;--colors-red-dark-a-11: #ff9592;--colors-red-dark-a-12: #ffd1d9;--colors-red-dark-p3-1: color(display-p3 .093 .068 .067);--colors-red-dark-p3-2: color(display-p3 .118 .077 .079);--colors-red-dark-p3-3: color(display-p3 .211 .081 .099);--colors-red-dark-p3-4: color(display-p3 .287 .079 .113);--colors-red-dark-p3-5: color(display-p3 .348 .11 .142);--colors-red-dark-p3-6: color(display-p3 .414 .16 .183);--colors-red-dark-p3-7: color(display-p3 .508 .224 .236);--colors-red-dark-p3-8: color(display-p3 .659 .298 .297);--colors-red-dark-p3-9: color(display-p3 .83 .329 .324);--colors-red-dark-p3-10: color(display-p3 .861 .403 .387);--colors-red-dark-p3-11: color(display-p3 1 .57 .55);--colors-red-dark-p3-12: color(display-p3 .971 .826 .852);--colors-red-dark-p3-a-1: color(display-p3 .984 .071 .071 / .03);--colors-red-dark-p3-a-2: color(display-p3 .996 .282 .282 / .055);--colors-red-dark-p3-a-3: color(display-p3 1 .169 .271 / .156);--colors-red-dark-p3-a-4: color(display-p3 1 .118 .267 / .236);--colors-red-dark-p3-a-5: color(display-p3 1 .212 .314 / .303);--colors-red-dark-p3-a-6: color(display-p3 1 .318 .38 / .374);--colors-red-dark-p3-a-7: color(display-p3 1 .4 .424 / .475);--colors-red-dark-p3-a-8: color(display-p3 1 .431 .431 / .635);--colors-red-dark-p3-a-9: color(display-p3 1 .388 .384 / .82);--colors-red-dark-p3-a-10: color(display-p3 1 .463 .447 / .853);--colors-red-dark-p3-a-11: color(display-p3 1 .57 .55);--colors-red-dark-p3-a-12: color(display-p3 .971 .826 .852);--colors-red-a-1: var(--colors-red-light-a-1);--colors-red-a-2: var(--colors-red-light-a-2);--colors-red-a-3: var(--colors-red-light-a-3);--colors-red-a-4: var(--colors-red-light-a-4);--colors-red-a-5: var(--colors-red-light-a-5);--colors-red-a-6: var(--colors-red-light-a-6);--colors-red-a-7: var(--colors-red-light-a-7);--colors-red-a-8: var(--colors-red-light-a-8);--colors-red-a-9: var(--colors-red-light-a-9);--colors-red-a-10: var(--colors-red-light-a-10);--colors-red-a-11: var(--colors-red-light-a-11);--colors-red-a-12: var(--colors-red-light-a-12);--colors-red-p3-1: var(--colors-red-light-p3-1);--colors-red-p3-2: var(--colors-red-light-p3-2);--colors-red-p3-3: var(--colors-red-light-p3-3);--colors-red-p3-4: var(--colors-red-light-p3-4);--colors-red-p3-5: var(--colors-red-light-p3-5);--colors-red-p3-6: var(--colors-red-light-p3-6);--colors-red-p3-7: var(--colors-red-light-p3-7);--colors-red-p3-8: var(--colors-red-light-p3-8);--colors-red-p3-9: var(--colors-red-light-p3-9);--colors-red-p3-10: var(--colors-red-light-p3-10);--colors-red-p3-11: var(--colors-red-light-p3-11);--colors-red-p3-12: var(--colors-red-light-p3-12);--colors-red-p3-a-1: var(--colors-red-light-p3-a-1);--colors-red-p3-a-2: var(--colors-red-light-p3-a-2);--colors-red-p3-a-3: var(--colors-red-light-p3-a-3);--colors-red-p3-a-4: var(--colors-red-light-p3-a-4);--colors-red-p3-a-5: var(--colors-red-light-p3-a-5);--colors-red-p3-a-6: var(--colors-red-light-p3-a-6);--colors-red-p3-a-7: var(--colors-red-light-p3-a-7);--colors-red-p3-a-8: var(--colors-red-light-p3-a-8);--colors-red-p3-a-9: var(--colors-red-light-p3-a-9);--colors-red-p3-a-10: var(--colors-red-light-p3-a-10);--colors-red-p3-a-11: var(--colors-red-light-p3-a-11);--colors-red-p3-a-12: var(--colors-red-light-p3-a-12);--colors-ruby-1: var(--colors-ruby-light-1);--colors-ruby-2: var(--colors-ruby-light-2);--colors-ruby-3: var(--colors-ruby-light-3);--colors-ruby-4: var(--colors-ruby-light-4);--colors-ruby-5: var(--colors-ruby-light-5);--colors-ruby-6: var(--colors-ruby-light-6);--colors-ruby-7: var(--colors-ruby-light-7);--colors-ruby-8: var(--colors-ruby-light-8);--colors-ruby-9: var(--colors-ruby-light-9);--colors-ruby-10: var(--colors-ruby-light-10);--colors-ruby-11: var(--colors-ruby-light-11);--colors-ruby-12: var(--colors-ruby-light-12);--colors-ruby-light-1: #fffcfd;--colors-ruby-light-2: #fff7f8;--colors-ruby-light-3: #feeaed;--colors-ruby-light-4: #ffdce1;--colors-ruby-light-5: #ffced6;--colors-ruby-light-6: #f8bfc8;--colors-ruby-light-7: #efacb8;--colors-ruby-light-8: #e592a3;--colors-ruby-light-9: #e54666;--colors-ruby-light-10: #dc3b5d;--colors-ruby-light-11: #ca244d;--colors-ruby-light-12: #64172b;--colors-ruby-light-a-1: #ff005503;--colors-ruby-light-a-2: #ff002008;--colors-ruby-light-a-3: #f3002515;--colors-ruby-light-a-4: #ff002523;--colors-ruby-light-a-5: #ff002a31;--colors-ruby-light-a-6: #e4002440;--colors-ruby-light-a-7: #ce002553;--colors-ruby-light-a-8: #c300286d;--colors-ruby-light-a-9: #db002cb9;--colors-ruby-light-a-10: #d2002cc4;--colors-ruby-light-a-11: #c10030db;--colors-ruby-light-a-12: #550016e8;--colors-ruby-light-p3-1: color(display-p3 .998 .989 .992);--colors-ruby-light-p3-2: color(display-p3 .995 .971 .974);--colors-ruby-light-p3-3: color(display-p3 .983 .92 .928);--colors-ruby-light-p3-4: color(display-p3 .987 .869 .885);--colors-ruby-light-p3-5: color(display-p3 .968 .817 .839);--colors-ruby-light-p3-6: color(display-p3 .937 .758 .786);--colors-ruby-light-p3-7: color(display-p3 .897 .685 .721);--colors-ruby-light-p3-8: color(display-p3 .851 .588 .639);--colors-ruby-light-p3-9: color(display-p3 .83 .323 .408);--colors-ruby-light-p3-10: color(display-p3 .795 .286 .375);--colors-ruby-light-p3-11: color(display-p3 .728 .211 .311);--colors-ruby-light-p3-12: color(display-p3 .36 .115 .171);--colors-ruby-light-p3-a-1: color(display-p3 .675 .024 .349 / .012);--colors-ruby-light-p3-a-2: color(display-p3 .863 .024 .024 / .028);--colors-ruby-light-p3-a-3: color(display-p3 .804 .008 .11 / .079);--colors-ruby-light-p3-a-4: color(display-p3 .91 .008 .125 / .13);--colors-ruby-light-p3-a-5: color(display-p3 .831 .004 .133 / .185);--colors-ruby-light-p3-a-6: color(display-p3 .745 .004 .118 / .244);--colors-ruby-light-p3-a-7: color(display-p3 .678 .004 .114 / .314);--colors-ruby-light-p3-a-8: color(display-p3 .639 .004 .125 / .412);--colors-ruby-light-p3-a-9: color(display-p3 .753 0 .129 / .679);--colors-ruby-light-p3-a-10: color(display-p3 .714 0 .125 / .714);--colors-ruby-light-p3-a-11: color(display-p3 .728 .211 .311);--colors-ruby-light-p3-a-12: color(display-p3 .36 .115 .171);--colors-ruby-dark-1: #191113;--colors-ruby-dark-2: #1e1517;--colors-ruby-dark-3: #3a141e;--colors-ruby-dark-4: #4e1325;--colors-ruby-dark-5: #5e1a2e;--colors-ruby-dark-6: #6f2539;--colors-ruby-dark-7: #883447;--colors-ruby-dark-8: #b3445a;--colors-ruby-dark-9: #e54666;--colors-ruby-dark-10: #ec5a72;--colors-ruby-dark-11: #ff949d;--colors-ruby-dark-12: #fed2e1;--colors-ruby-dark-a-1: #f4124a09;--colors-ruby-dark-a-2: #fe5a7f0e;--colors-ruby-dark-a-3: #ff235d2c;--colors-ruby-dark-a-4: #fd195e42;--colors-ruby-dark-a-5: #fe2d6b53;--colors-ruby-dark-a-6: #ff447665;--colors-ruby-dark-a-7: #ff577d80;--colors-ruby-dark-a-8: #ff5c7cae;--colors-ruby-dark-a-9: #fe4c70e4;--colors-ruby-dark-a-10: #ff617beb;--colors-ruby-dark-a-11: #ff949d;--colors-ruby-dark-a-12: #ffd3e2fe;--colors-ruby-dark-p3-1: color(display-p3 .093 .068 .074);--colors-ruby-dark-p3-2: color(display-p3 .113 .083 .089);--colors-ruby-dark-p3-3: color(display-p3 .208 .088 .117);--colors-ruby-dark-p3-4: color(display-p3 .279 .092 .147);--colors-ruby-dark-p3-5: color(display-p3 .337 .12 .18);--colors-ruby-dark-p3-6: color(display-p3 .401 .166 .223);--colors-ruby-dark-p3-7: color(display-p3 .495 .224 .281);--colors-ruby-dark-p3-8: color(display-p3 .652 .295 .359);--colors-ruby-dark-p3-9: color(display-p3 .83 .323 .408);--colors-ruby-dark-p3-10: color(display-p3 .857 .392 .455);--colors-ruby-dark-p3-11: color(display-p3 1 .57 .59);--colors-ruby-dark-p3-12: color(display-p3 .968 .83 .88);--colors-ruby-dark-p3-a-1: color(display-p3 .984 .071 .329 / .03);--colors-ruby-dark-p3-a-2: color(display-p3 .992 .376 .529 / .051);--colors-ruby-dark-p3-a-3: color(display-p3 .996 .196 .404 / .152);--colors-ruby-dark-p3-a-4: color(display-p3 1 .173 .416 / .227);--colors-ruby-dark-p3-a-5: color(display-p3 1 .259 .459 / .29);--colors-ruby-dark-p3-a-6: color(display-p3 1 .341 .506 / .358);--colors-ruby-dark-p3-a-7: color(display-p3 1 .412 .541 / .458);--colors-ruby-dark-p3-a-8: color(display-p3 1 .431 .537 / .627);--colors-ruby-dark-p3-a-9: color(display-p3 1 .376 .482 / .82);--colors-ruby-dark-p3-a-10: color(display-p3 1 .447 .522 / .849);--colors-ruby-dark-p3-a-11: color(display-p3 1 .57 .59);--colors-ruby-dark-p3-a-12: color(display-p3 .968 .83 .88);--colors-ruby-a-1: var(--colors-ruby-light-a-1);--colors-ruby-a-2: var(--colors-ruby-light-a-2);--colors-ruby-a-3: var(--colors-ruby-light-a-3);--colors-ruby-a-4: var(--colors-ruby-light-a-4);--colors-ruby-a-5: var(--colors-ruby-light-a-5);--colors-ruby-a-6: var(--colors-ruby-light-a-6);--colors-ruby-a-7: var(--colors-ruby-light-a-7);--colors-ruby-a-8: var(--colors-ruby-light-a-8);--colors-ruby-a-9: var(--colors-ruby-light-a-9);--colors-ruby-a-10: var(--colors-ruby-light-a-10);--colors-ruby-a-11: var(--colors-ruby-light-a-11);--colors-ruby-a-12: var(--colors-ruby-light-a-12);--colors-ruby-p3-1: var(--colors-ruby-light-p3-1);--colors-ruby-p3-2: var(--colors-ruby-light-p3-2);--colors-ruby-p3-3: var(--colors-ruby-light-p3-3);--colors-ruby-p3-4: var(--colors-ruby-light-p3-4);--colors-ruby-p3-5: var(--colors-ruby-light-p3-5);--colors-ruby-p3-6: var(--colors-ruby-light-p3-6);--colors-ruby-p3-7: var(--colors-ruby-light-p3-7);--colors-ruby-p3-8: var(--colors-ruby-light-p3-8);--colors-ruby-p3-9: var(--colors-ruby-light-p3-9);--colors-ruby-p3-10: var(--colors-ruby-light-p3-10);--colors-ruby-p3-11: var(--colors-ruby-light-p3-11);--colors-ruby-p3-12: var(--colors-ruby-light-p3-12);--colors-ruby-p3-a-1: var(--colors-ruby-light-p3-a-1);--colors-ruby-p3-a-2: var(--colors-ruby-light-p3-a-2);--colors-ruby-p3-a-3: var(--colors-ruby-light-p3-a-3);--colors-ruby-p3-a-4: var(--colors-ruby-light-p3-a-4);--colors-ruby-p3-a-5: var(--colors-ruby-light-p3-a-5);--colors-ruby-p3-a-6: var(--colors-ruby-light-p3-a-6);--colors-ruby-p3-a-7: var(--colors-ruby-light-p3-a-7);--colors-ruby-p3-a-8: var(--colors-ruby-light-p3-a-8);--colors-ruby-p3-a-9: var(--colors-ruby-light-p3-a-9);--colors-ruby-p3-a-10: var(--colors-ruby-light-p3-a-10);--colors-ruby-p3-a-11: var(--colors-ruby-light-p3-a-11);--colors-ruby-p3-a-12: var(--colors-ruby-light-p3-a-12);--colors-teal-1: var(--colors-teal-light-1);--colors-teal-2: var(--colors-teal-light-2);--colors-teal-3: var(--colors-teal-light-3);--colors-teal-4: var(--colors-teal-light-4);--colors-teal-5: var(--colors-teal-light-5);--colors-teal-6: var(--colors-teal-light-6);--colors-teal-7: var(--colors-teal-light-7);--colors-teal-8: var(--colors-teal-light-8);--colors-teal-9: var(--colors-teal-light-9);--colors-teal-10: var(--colors-teal-light-10);--colors-teal-11: var(--colors-teal-light-11);--colors-teal-12: var(--colors-teal-light-12);--colors-teal-light-1: #fafefd;--colors-teal-light-2: #f3fbf9;--colors-teal-light-3: #e0f8f3;--colors-teal-light-4: #ccf3ea;--colors-teal-light-5: #b8eae0;--colors-teal-light-6: #a1ded2;--colors-teal-light-7: #83cdc1;--colors-teal-light-8: #53b9ab;--colors-teal-light-9: #12a594;--colors-teal-light-10: #0d9b8a;--colors-teal-light-11: #008573;--colors-teal-light-12: #0d3d38;--colors-teal-light-a-1: #00cc9905;--colors-teal-light-a-2: #00aa800c;--colors-teal-light-a-3: #00c69d1f;--colors-teal-light-a-4: #00c39633;--colors-teal-light-a-5: #00b49047;--colors-teal-light-a-6: #00a6855e;--colors-teal-light-a-7: #0099807c;--colors-teal-light-a-8: #009783ac;--colors-teal-light-a-9: #009e8ced;--colors-teal-light-a-10: #009684f2;--colors-teal-light-a-11: #008573;--colors-teal-light-a-12: #00332df2;--colors-teal-light-p3-1: color(display-p3 .983 .996 .992);--colors-teal-light-p3-2: color(display-p3 .958 .983 .976);--colors-teal-light-p3-3: color(display-p3 .895 .971 .952);--colors-teal-light-p3-4: color(display-p3 .831 .949 .92);--colors-teal-light-p3-5: color(display-p3 .761 .914 .878);--colors-teal-light-p3-6: color(display-p3 .682 .864 .825);--colors-teal-light-p3-7: color(display-p3 .581 .798 .756);--colors-teal-light-p3-8: color(display-p3 .433 .716 .671);--colors-teal-light-p3-9: color(display-p3 .297 .637 .581);--colors-teal-light-p3-10: color(display-p3 .275 .599 .542);--colors-teal-light-p3-11: color(display-p3 .08 .5 .43);--colors-teal-light-p3-12: color(display-p3 .11 .235 .219);--colors-teal-light-p3-a-1: color(display-p3 .024 .757 .514 / .016);--colors-teal-light-p3-a-2: color(display-p3 .02 .647 .467 / .044);--colors-teal-light-p3-a-3: color(display-p3 .004 .741 .557 / .106);--colors-teal-light-p3-a-4: color(display-p3 .004 .702 .537 / .169);--colors-teal-light-p3-a-5: color(display-p3 .004 .643 .494 / .24);--colors-teal-light-p3-a-6: color(display-p3 .004 .569 .447 / .318);--colors-teal-light-p3-a-7: color(display-p3 .004 .518 .424 / .42);--colors-teal-light-p3-a-8: color(display-p3 0 .506 .424 / .569);--colors-teal-light-p3-a-9: color(display-p3 0 .482 .404 / .702);--colors-teal-light-p3-a-10: color(display-p3 0 .451 .369 / .726);--colors-teal-light-p3-a-11: color(display-p3 .08 .5 .43);--colors-teal-light-p3-a-12: color(display-p3 .11 .235 .219);--colors-teal-dark-1: #0d1514;--colors-teal-dark-2: #111c1b;--colors-teal-dark-3: #0d2d2a;--colors-teal-dark-4: #023b37;--colors-teal-dark-5: #084843;--colors-teal-dark-6: #145750;--colors-teal-dark-7: #1c6961;--colors-teal-dark-8: #207e73;--colors-teal-dark-9: #12a594;--colors-teal-dark-10: #0eb39e;--colors-teal-dark-11: #0bd8b6;--colors-teal-dark-12: #adf0dd;--colors-teal-dark-a-1: #00deab05;--colors-teal-dark-a-2: #12fbe60c;--colors-teal-dark-a-3: #00ffe61e;--colors-teal-dark-a-4: #00ffe92d;--colors-teal-dark-a-5: #00ffea3b;--colors-teal-dark-a-6: #1cffe84b;--colors-teal-dark-a-7: #2efde85f;--colors-teal-dark-a-8: #32ffe775;--colors-teal-dark-a-9: #13ffe49f;--colors-teal-dark-a-10: #0dffe0ae;--colors-teal-dark-a-11: #0afed5d6;--colors-teal-dark-a-12: #b8ffebef;--colors-teal-dark-p3-1: color(display-p3 .059 .083 .079);--colors-teal-dark-p3-2: color(display-p3 .075 .11 .107);--colors-teal-dark-p3-3: color(display-p3 .087 .175 .165);--colors-teal-dark-p3-4: color(display-p3 .087 .227 .214);--colors-teal-dark-p3-5: color(display-p3 .12 .277 .261);--colors-teal-dark-p3-6: color(display-p3 .162 .335 .314);--colors-teal-dark-p3-7: color(display-p3 .205 .406 .379);--colors-teal-dark-p3-8: color(display-p3 .245 .489 .453);--colors-teal-dark-p3-9: color(display-p3 .297 .637 .581);--colors-teal-dark-p3-10: color(display-p3 .319 .69 .62);--colors-teal-dark-p3-11: color(display-p3 .388 .835 .719);--colors-teal-dark-p3-12: color(display-p3 .734 .934 .87);--colors-teal-dark-p3-a-1: color(display-p3 0 .992 .761 / .017);--colors-teal-dark-p3-a-2: color(display-p3 .235 .988 .902 / .047);--colors-teal-dark-p3-a-3: color(display-p3 .235 1 .898 / .118);--colors-teal-dark-p3-a-4: color(display-p3 .18 .996 .929 / .173);--colors-teal-dark-p3-a-5: color(display-p3 .31 1 .933 / .227);--colors-teal-dark-p3-a-6: color(display-p3 .396 1 .933 / .286);--colors-teal-dark-p3-a-7: color(display-p3 .443 1 .925 / .366);--colors-teal-dark-p3-a-8: color(display-p3 .459 1 .925 / .454);--colors-teal-dark-p3-a-9: color(display-p3 .443 .996 .906 / .61);--colors-teal-dark-p3-a-10: color(display-p3 .439 .996 .89 / .669);--colors-teal-dark-p3-a-11: color(display-p3 .388 .835 .719);--colors-teal-dark-p3-a-12: color(display-p3 .734 .934 .87);--colors-teal-a-1: var(--colors-teal-light-a-1);--colors-teal-a-2: var(--colors-teal-light-a-2);--colors-teal-a-3: var(--colors-teal-light-a-3);--colors-teal-a-4: var(--colors-teal-light-a-4);--colors-teal-a-5: var(--colors-teal-light-a-5);--colors-teal-a-6: var(--colors-teal-light-a-6);--colors-teal-a-7: var(--colors-teal-light-a-7);--colors-teal-a-8: var(--colors-teal-light-a-8);--colors-teal-a-9: var(--colors-teal-light-a-9);--colors-teal-a-10: var(--colors-teal-light-a-10);--colors-teal-a-11: var(--colors-teal-light-a-11);--colors-teal-a-12: var(--colors-teal-light-a-12);--colors-teal-p3-1: var(--colors-teal-light-p3-1);--colors-teal-p3-2: var(--colors-teal-light-p3-2);--colors-teal-p3-3: var(--colors-teal-light-p3-3);--colors-teal-p3-4: var(--colors-teal-light-p3-4);--colors-teal-p3-5: var(--colors-teal-light-p3-5);--colors-teal-p3-6: var(--colors-teal-light-p3-6);--colors-teal-p3-7: var(--colors-teal-light-p3-7);--colors-teal-p3-8: var(--colors-teal-light-p3-8);--colors-teal-p3-9: var(--colors-teal-light-p3-9);--colors-teal-p3-10: var(--colors-teal-light-p3-10);--colors-teal-p3-11: var(--colors-teal-light-p3-11);--colors-teal-p3-12: var(--colors-teal-light-p3-12);--colors-teal-p3-a-1: var(--colors-teal-light-p3-a-1);--colors-teal-p3-a-2: var(--colors-teal-light-p3-a-2);--colors-teal-p3-a-3: var(--colors-teal-light-p3-a-3);--colors-teal-p3-a-4: var(--colors-teal-light-p3-a-4);--colors-teal-p3-a-5: var(--colors-teal-light-p3-a-5);--colors-teal-p3-a-6: var(--colors-teal-light-p3-a-6);--colors-teal-p3-a-7: var(--colors-teal-light-p3-a-7);--colors-teal-p3-a-8: var(--colors-teal-light-p3-a-8);--colors-teal-p3-a-9: var(--colors-teal-light-p3-a-9);--colors-teal-p3-a-10: var(--colors-teal-light-p3-a-10);--colors-teal-p3-a-11: var(--colors-teal-light-p3-a-11);--colors-teal-p3-a-12: var(--colors-teal-light-p3-a-12);--colors-tomato-1: var(--colors-tomato-light-1);--colors-tomato-2: var(--colors-tomato-light-2);--colors-tomato-3: var(--colors-tomato-light-3);--colors-tomato-4: var(--colors-tomato-light-4);--colors-tomato-5: var(--colors-tomato-light-5);--colors-tomato-6: var(--colors-tomato-light-6);--colors-tomato-7: var(--colors-tomato-light-7);--colors-tomato-8: var(--colors-tomato-light-8);--colors-tomato-9: var(--colors-tomato-light-9);--colors-tomato-10: var(--colors-tomato-light-10);--colors-tomato-11: var(--colors-tomato-light-11);--colors-tomato-12: var(--colors-tomato-light-12);--colors-tomato-light-1: #fffcfc;--colors-tomato-light-2: #fff8f7;--colors-tomato-light-3: #feebe7;--colors-tomato-light-4: #ffdcd3;--colors-tomato-light-5: #ffcdc2;--colors-tomato-light-6: #fdbdaf;--colors-tomato-light-7: #f5a898;--colors-tomato-light-8: #ec8e7b;--colors-tomato-light-9: #e54d2e;--colors-tomato-light-10: #dd4425;--colors-tomato-light-11: #d13415;--colors-tomato-light-12: #5c271f;--colors-tomato-light-a-1: #ff000003;--colors-tomato-light-a-2: #ff200008;--colors-tomato-light-a-3: #f52b0018;--colors-tomato-light-a-4: #ff35002c;--colors-tomato-light-a-5: #ff2e003d;--colors-tomato-light-a-6: #f92d0050;--colors-tomato-light-a-7: #e7280067;--colors-tomato-light-a-8: #db250084;--colors-tomato-light-a-9: #df2600d1;--colors-tomato-light-a-10: #d72400da;--colors-tomato-light-a-11: #cd2200ea;--colors-tomato-light-a-12: #460900e0;--colors-tomato-light-p3-1: color(display-p3 .998 .989 .988);--colors-tomato-light-p3-2: color(display-p3 .994 .974 .969);--colors-tomato-light-p3-3: color(display-p3 .985 .924 .909);--colors-tomato-light-p3-4: color(display-p3 .996 .868 .835);--colors-tomato-light-p3-5: color(display-p3 .98 .812 .77);--colors-tomato-light-p3-6: color(display-p3 .953 .75 .698);--colors-tomato-light-p3-7: color(display-p3 .917 .673 .611);--colors-tomato-light-p3-8: color(display-p3 .875 .575 .502);--colors-tomato-light-p3-9: color(display-p3 .831 .345 .231);--colors-tomato-light-p3-10: color(display-p3 .802 .313 .2);--colors-tomato-light-p3-11: color(display-p3 .755 .259 .152);--colors-tomato-light-p3-12: color(display-p3 .335 .165 .132);--colors-tomato-light-p3-a-1: color(display-p3 .675 .024 .024 / .012);--colors-tomato-light-p3-a-2: color(display-p3 .757 .145 .02 / .032);--colors-tomato-light-p3-a-3: color(display-p3 .831 .184 .012 / .091);--colors-tomato-light-p3-a-4: color(display-p3 .976 .192 .004 / .165);--colors-tomato-light-p3-a-5: color(display-p3 .918 .192 .004 / .232);--colors-tomato-light-p3-a-6: color(display-p3 .847 .173 .004 / .302);--colors-tomato-light-p3-a-7: color(display-p3 .788 .165 .004 / .389);--colors-tomato-light-p3-a-8: color(display-p3 .749 .153 .004 / .499);--colors-tomato-light-p3-a-9: color(display-p3 .78 .149 0 / .769);--colors-tomato-light-p3-a-10: color(display-p3 .757 .141 0 / .8);--colors-tomato-light-p3-a-11: color(display-p3 .755 .259 .152);--colors-tomato-light-p3-a-12: color(display-p3 .335 .165 .132);--colors-tomato-dark-1: #181111;--colors-tomato-dark-2: #1f1513;--colors-tomato-dark-3: #391714;--colors-tomato-dark-4: #4e1511;--colors-tomato-dark-5: #5e1c16;--colors-tomato-dark-6: #6e2920;--colors-tomato-dark-7: #853a2d;--colors-tomato-dark-8: #ac4d39;--colors-tomato-dark-9: #e54d2e;--colors-tomato-dark-10: #ec6142;--colors-tomato-dark-11: #ff977d;--colors-tomato-dark-12: #fbd3cb;--colors-tomato-dark-a-1: #f1121208;--colors-tomato-dark-a-2: #ff55330f;--colors-tomato-dark-a-3: #ff35232b;--colors-tomato-dark-a-4: #fd201142;--colors-tomato-dark-a-5: #fe332153;--colors-tomato-dark-a-6: #ff4f3864;--colors-tomato-dark-a-7: #fd644a7d;--colors-tomato-dark-a-8: #fe6d4ea7;--colors-tomato-dark-a-9: #fe5431e4;--colors-tomato-dark-a-10: #ff6847eb;--colors-tomato-dark-a-11: #ff977d;--colors-tomato-dark-a-12: #ffd6cefb;--colors-tomato-dark-p3-1: color(display-p3 .09 .068 .067);--colors-tomato-dark-p3-2: color(display-p3 .115 .084 .076);--colors-tomato-dark-p3-3: color(display-p3 .205 .097 .083);--colors-tomato-dark-p3-4: color(display-p3 .282 .099 .077);--colors-tomato-dark-p3-5: color(display-p3 .339 .129 .101);--colors-tomato-dark-p3-6: color(display-p3 .398 .179 .141);--colors-tomato-dark-p3-7: color(display-p3 .487 .245 .194);--colors-tomato-dark-p3-8: color(display-p3 .629 .322 .248);--colors-tomato-dark-p3-9: color(display-p3 .831 .345 .231);--colors-tomato-dark-p3-10: color(display-p3 .862 .415 .298);--colors-tomato-dark-p3-11: color(display-p3 1 .585 .455);--colors-tomato-dark-p3-12: color(display-p3 .959 .833 .802);--colors-tomato-dark-p3-a-1: color(display-p3 .973 .071 .071 / .026);--colors-tomato-dark-p3-a-2: color(display-p3 .992 .376 .224 / .051);--colors-tomato-dark-p3-a-3: color(display-p3 .996 .282 .176 / .148);--colors-tomato-dark-p3-a-4: color(display-p3 1 .204 .118 / .232);--colors-tomato-dark-p3-a-5: color(display-p3 1 .286 .192 / .29);--colors-tomato-dark-p3-a-6: color(display-p3 1 .392 .278 / .353);--colors-tomato-dark-p3-a-7: color(display-p3 1 .459 .349 / .45);--colors-tomato-dark-p3-a-8: color(display-p3 1 .49 .369 / .601);--colors-tomato-dark-p3-a-9: color(display-p3 1 .408 .267 / .82);--colors-tomato-dark-p3-a-10: color(display-p3 1 .478 .341 / .853);--colors-tomato-dark-p3-a-11: color(display-p3 1 .585 .455);--colors-tomato-dark-p3-a-12: color(display-p3 .959 .833 .802);--colors-tomato-a-1: var(--colors-tomato-light-a-1);--colors-tomato-a-2: var(--colors-tomato-light-a-2);--colors-tomato-a-3: var(--colors-tomato-light-a-3);--colors-tomato-a-4: var(--colors-tomato-light-a-4);--colors-tomato-a-5: var(--colors-tomato-light-a-5);--colors-tomato-a-6: var(--colors-tomato-light-a-6);--colors-tomato-a-7: var(--colors-tomato-light-a-7);--colors-tomato-a-8: var(--colors-tomato-light-a-8);--colors-tomato-a-9: var(--colors-tomato-light-a-9);--colors-tomato-a-10: var(--colors-tomato-light-a-10);--colors-tomato-a-11: var(--colors-tomato-light-a-11);--colors-tomato-a-12: var(--colors-tomato-light-a-12);--colors-tomato-p3-1: var(--colors-tomato-light-p3-1);--colors-tomato-p3-2: var(--colors-tomato-light-p3-2);--colors-tomato-p3-3: var(--colors-tomato-light-p3-3);--colors-tomato-p3-4: var(--colors-tomato-light-p3-4);--colors-tomato-p3-5: var(--colors-tomato-light-p3-5);--colors-tomato-p3-6: var(--colors-tomato-light-p3-6);--colors-tomato-p3-7: var(--colors-tomato-light-p3-7);--colors-tomato-p3-8: var(--colors-tomato-light-p3-8);--colors-tomato-p3-9: var(--colors-tomato-light-p3-9);--colors-tomato-p3-10: var(--colors-tomato-light-p3-10);--colors-tomato-p3-11: var(--colors-tomato-light-p3-11);--colors-tomato-p3-12: var(--colors-tomato-light-p3-12);--colors-tomato-p3-a-1: var(--colors-tomato-light-p3-a-1);--colors-tomato-p3-a-2: var(--colors-tomato-light-p3-a-2);--colors-tomato-p3-a-3: var(--colors-tomato-light-p3-a-3);--colors-tomato-p3-a-4: var(--colors-tomato-light-p3-a-4);--colors-tomato-p3-a-5: var(--colors-tomato-light-p3-a-5);--colors-tomato-p3-a-6: var(--colors-tomato-light-p3-a-6);--colors-tomato-p3-a-7: var(--colors-tomato-light-p3-a-7);--colors-tomato-p3-a-8: var(--colors-tomato-light-p3-a-8);--colors-tomato-p3-a-9: var(--colors-tomato-light-p3-a-9);--colors-tomato-p3-a-10: var(--colors-tomato-light-p3-a-10);--colors-tomato-p3-a-11: var(--colors-tomato-light-p3-a-11);--colors-tomato-p3-a-12: var(--colors-tomato-light-p3-a-12);--colors-violet-1: var(--colors-violet-light-1);--colors-violet-2: var(--colors-violet-light-2);--colors-violet-3: var(--colors-violet-light-3);--colors-violet-4: var(--colors-violet-light-4);--colors-violet-5: var(--colors-violet-light-5);--colors-violet-6: var(--colors-violet-light-6);--colors-violet-7: var(--colors-violet-light-7);--colors-violet-8: var(--colors-violet-light-8);--colors-violet-9: var(--colors-violet-light-9);--colors-violet-10: var(--colors-violet-light-10);--colors-violet-11: var(--colors-violet-light-11);--colors-violet-12: var(--colors-violet-light-12);--colors-violet-light-1: #fdfcfe;--colors-violet-light-2: #faf8ff;--colors-violet-light-3: #f4f0fe;--colors-violet-light-4: #ebe4ff;--colors-violet-light-5: #e1d9ff;--colors-violet-light-6: #d4cafe;--colors-violet-light-7: #c2b5f5;--colors-violet-light-8: #aa99ec;--colors-violet-light-9: #6e56cf;--colors-violet-light-10: #654dc4;--colors-violet-light-11: #6550b9;--colors-violet-light-12: #2f265f;--colors-violet-light-a-1: #5500aa03;--colors-violet-light-a-2: #4900ff07;--colors-violet-light-a-3: #4400ee0f;--colors-violet-light-a-4: #4300ff1b;--colors-violet-light-a-5: #3600ff26;--colors-violet-light-a-6: #3100fb35;--colors-violet-light-a-7: #2d01dd4a;--colors-violet-light-a-8: #2b00d066;--colors-violet-light-a-9: #2400b7a9;--colors-violet-light-a-10: #2300abb2;--colors-violet-light-a-11: #1f0099af;--colors-violet-light-a-12: #0b0043d9;--colors-violet-light-p3-1: color(display-p3 .991 .988 .995);--colors-violet-light-p3-2: color(display-p3 .978 .974 .998);--colors-violet-light-p3-3: color(display-p3 .953 .943 .993);--colors-violet-light-p3-4: color(display-p3 .916 .897 1);--colors-violet-light-p3-5: color(display-p3 .876 .851 1);--colors-violet-light-p3-6: color(display-p3 .825 .793 .981);--colors-violet-light-p3-7: color(display-p3 .752 .712 .943);--colors-violet-light-p3-8: color(display-p3 .654 .602 .902);--colors-violet-light-p3-9: color(display-p3 .417 .341 .784);--colors-violet-light-p3-10: color(display-p3 .381 .306 .741);--colors-violet-light-p3-11: color(display-p3 .383 .317 .702);--colors-violet-light-p3-12: color(display-p3 .179 .15 .359);--colors-violet-light-p3-a-1: color(display-p3 .349 .024 .675 / .012);--colors-violet-light-p3-a-2: color(display-p3 .161 .024 .863 / .028);--colors-violet-light-p3-a-3: color(display-p3 .204 .004 .871 / .059);--colors-violet-light-p3-a-4: color(display-p3 .196 .004 1 / .102);--colors-violet-light-p3-a-5: color(display-p3 .165 .008 1 / .15);--colors-violet-light-p3-a-6: color(display-p3 .153 .004 .906 / .208);--colors-violet-light-p3-a-7: color(display-p3 .141 .004 .796 / .287);--colors-violet-light-p3-a-8: color(display-p3 .133 .004 .753 / .397);--colors-violet-light-p3-a-9: color(display-p3 .114 0 .675 / .659);--colors-violet-light-p3-a-10: color(display-p3 .11 0 .627 / .695);--colors-violet-light-p3-a-11: color(display-p3 .383 .317 .702);--colors-violet-light-p3-a-12: color(display-p3 .179 .15 .359);--colors-violet-dark-1: #14121f;--colors-violet-dark-2: #1b1525;--colors-violet-dark-3: #291f43;--colors-violet-dark-4: #33255b;--colors-violet-dark-5: #3c2e69;--colors-violet-dark-6: #473876;--colors-violet-dark-7: #56468b;--colors-violet-dark-8: #6958ad;--colors-violet-dark-9: #6e56cf;--colors-violet-dark-10: #7d66d9;--colors-violet-dark-11: #baa7ff;--colors-violet-dark-12: #e2ddfe;--colors-violet-dark-a-1: #4422ff0f;--colors-violet-dark-a-2: #853ff916;--colors-violet-dark-a-3: #8354fe36;--colors-violet-dark-a-4: #7d51fd50;--colors-violet-dark-a-5: #845ffd5f;--colors-violet-dark-a-6: #8f6cfd6d;--colors-violet-dark-a-7: #9879ff83;--colors-violet-dark-a-8: #977dfea8;--colors-violet-dark-a-9: #8668ffcc;--colors-violet-dark-a-10: #9176fed7;--colors-violet-dark-a-11: #baa7ff;--colors-violet-dark-a-12: #e3defffe;--colors-violet-dark-p3-1: color(display-p3 .077 .071 .118);--colors-violet-dark-p3-2: color(display-p3 .101 .084 .141);--colors-violet-dark-p3-3: color(display-p3 .154 .123 .256);--colors-violet-dark-p3-4: color(display-p3 .191 .148 .345);--colors-violet-dark-p3-5: color(display-p3 .226 .182 .396);--colors-violet-dark-p3-6: color(display-p3 .269 .223 .449);--colors-violet-dark-p3-7: color(display-p3 .326 .277 .53);--colors-violet-dark-p3-8: color(display-p3 .399 .346 .656);--colors-violet-dark-p3-9: color(display-p3 .417 .341 .784);--colors-violet-dark-p3-10: color(display-p3 .477 .402 .823);--colors-violet-dark-p3-11: color(display-p3 .72 .65 1);--colors-violet-dark-p3-12: color(display-p3 .883 .867 .986);--colors-violet-dark-p3-a-1: color(display-p3 .282 .141 .996 / .055);--colors-violet-dark-p3-a-2: color(display-p3 .51 .263 1 / .08);--colors-violet-dark-p3-a-3: color(display-p3 .494 .337 .996 / .202);--colors-violet-dark-p3-a-4: color(display-p3 .49 .345 1 / .299);--colors-violet-dark-p3-a-5: color(display-p3 .525 .392 1 / .353);--colors-violet-dark-p3-a-6: color(display-p3 .569 .455 1 / .408);--colors-violet-dark-p3-a-7: color(display-p3 .588 .494 1 / .496);--colors-violet-dark-p3-a-8: color(display-p3 .596 .51 1 / .631);--colors-violet-dark-p3-a-9: color(display-p3 .522 .424 1 / .769);--colors-violet-dark-p3-a-10: color(display-p3 .576 .482 1 / .811);--colors-violet-dark-p3-a-11: color(display-p3 .72 .65 1);--colors-violet-dark-p3-a-12: color(display-p3 .883 .867 .986);--colors-violet-a-1: var(--colors-violet-light-a-1);--colors-violet-a-2: var(--colors-violet-light-a-2);--colors-violet-a-3: var(--colors-violet-light-a-3);--colors-violet-a-4: var(--colors-violet-light-a-4);--colors-violet-a-5: var(--colors-violet-light-a-5);--colors-violet-a-6: var(--colors-violet-light-a-6);--colors-violet-a-7: var(--colors-violet-light-a-7);--colors-violet-a-8: var(--colors-violet-light-a-8);--colors-violet-a-9: var(--colors-violet-light-a-9);--colors-violet-a-10: var(--colors-violet-light-a-10);--colors-violet-a-11: var(--colors-violet-light-a-11);--colors-violet-a-12: var(--colors-violet-light-a-12);--colors-violet-p3-1: var(--colors-violet-light-p3-1);--colors-violet-p3-2: var(--colors-violet-light-p3-2);--colors-violet-p3-3: var(--colors-violet-light-p3-3);--colors-violet-p3-4: var(--colors-violet-light-p3-4);--colors-violet-p3-5: var(--colors-violet-light-p3-5);--colors-violet-p3-6: var(--colors-violet-light-p3-6);--colors-violet-p3-7: var(--colors-violet-light-p3-7);--colors-violet-p3-8: var(--colors-violet-light-p3-8);--colors-violet-p3-9: var(--colors-violet-light-p3-9);--colors-violet-p3-10: var(--colors-violet-light-p3-10);--colors-violet-p3-11: var(--colors-violet-light-p3-11);--colors-violet-p3-12: var(--colors-violet-light-p3-12);--colors-violet-p3-a-1: var(--colors-violet-light-p3-a-1);--colors-violet-p3-a-2: var(--colors-violet-light-p3-a-2);--colors-violet-p3-a-3: var(--colors-violet-light-p3-a-3);--colors-violet-p3-a-4: var(--colors-violet-light-p3-a-4);--colors-violet-p3-a-5: var(--colors-violet-light-p3-a-5);--colors-violet-p3-a-6: var(--colors-violet-light-p3-a-6);--colors-violet-p3-a-7: var(--colors-violet-light-p3-a-7);--colors-violet-p3-a-8: var(--colors-violet-light-p3-a-8);--colors-violet-p3-a-9: var(--colors-violet-light-p3-a-9);--colors-violet-p3-a-10: var(--colors-violet-light-p3-a-10);--colors-violet-p3-a-11: var(--colors-violet-light-p3-a-11);--colors-violet-p3-a-12: var(--colors-violet-light-p3-a-12);--colors-yellow-1: var(--colors-yellow-light-1);--colors-yellow-2: var(--colors-yellow-light-2);--colors-yellow-3: var(--colors-yellow-light-3);--colors-yellow-4: var(--colors-yellow-light-4);--colors-yellow-5: var(--colors-yellow-light-5);--colors-yellow-6: var(--colors-yellow-light-6);--colors-yellow-7: var(--colors-yellow-light-7);--colors-yellow-8: var(--colors-yellow-light-8);--colors-yellow-9: var(--colors-yellow-light-9);--colors-yellow-10: var(--colors-yellow-light-10);--colors-yellow-11: var(--colors-yellow-light-11);--colors-yellow-12: var(--colors-yellow-light-12);--colors-yellow-light-1: #fdfdf9;--colors-yellow-light-2: #fefce9;--colors-yellow-light-3: #fffab8;--colors-yellow-light-4: #fff394;--colors-yellow-light-5: #ffe770;--colors-yellow-light-6: #f3d768;--colors-yellow-light-7: #e4c767;--colors-yellow-light-8: #d5ae39;--colors-yellow-light-9: #ffe629;--colors-yellow-light-10: #ffdc00;--colors-yellow-light-11: #9e6c00;--colors-yellow-light-12: #473b1f;--colors-yellow-light-a-1: #aaaa0006;--colors-yellow-light-a-2: #f4dd0016;--colors-yellow-light-a-3: #ffee0047;--colors-yellow-light-a-4: #ffe3016b;--colors-yellow-light-a-5: #ffd5008f;--colors-yellow-light-a-6: #ebbc0097;--colors-yellow-light-a-7: #d2a10098;--colors-yellow-light-a-8: #c99700c6;--colors-yellow-light-a-9: #ffe100d6;--colors-yellow-light-a-10: #ffdc00;--colors-yellow-light-a-11: #9e6c00;--colors-yellow-light-a-12: #2e2000e0;--colors-yellow-light-p3-1: color(display-p3 .992 .992 .978);--colors-yellow-light-p3-2: color(display-p3 .995 .99 .922);--colors-yellow-light-p3-3: color(display-p3 .997 .982 .749);--colors-yellow-light-p3-4: color(display-p3 .992 .953 .627);--colors-yellow-light-p3-5: color(display-p3 .984 .91 .51);--colors-yellow-light-p3-6: color(display-p3 .934 .847 .474);--colors-yellow-light-p3-7: color(display-p3 .876 .785 .46);--colors-yellow-light-p3-8: color(display-p3 .811 .689 .313);--colors-yellow-light-p3-9: color(display-p3 1 .92 .22);--colors-yellow-light-p3-10: color(display-p3 .977 .868 .291);--colors-yellow-light-p3-11: color(display-p3 .6 .44 0);--colors-yellow-light-p3-12: color(display-p3 .271 .233 .137);--colors-yellow-light-p3-a-1: color(display-p3 .675 .675 .024 / .024);--colors-yellow-light-p3-a-2: color(display-p3 .953 .855 .008 / .079);--colors-yellow-light-p3-a-3: color(display-p3 .988 .925 .004 / .251);--colors-yellow-light-p3-a-4: color(display-p3 .98 .875 .004 / .373);--colors-yellow-light-p3-a-5: color(display-p3 .969 .816 .004 / .491);--colors-yellow-light-p3-a-6: color(display-p3 .875 .71 0 / .526);--colors-yellow-light-p3-a-7: color(display-p3 .769 .604 0 / .542);--colors-yellow-light-p3-a-8: color(display-p3 .725 .549 0 / .687);--colors-yellow-light-p3-a-9: color(display-p3 1 .898 0 / .781);--colors-yellow-light-p3-a-10: color(display-p3 .969 .812 0 / .71);--colors-yellow-light-p3-a-11: color(display-p3 .6 .44 0);--colors-yellow-light-p3-a-12: color(display-p3 .271 .233 .137);--colors-yellow-dark-1: #14120b;--colors-yellow-dark-2: #1b180f;--colors-yellow-dark-3: #2d2305;--colors-yellow-dark-4: #362b00;--colors-yellow-dark-5: #433500;--colors-yellow-dark-6: #524202;--colors-yellow-dark-7: #665417;--colors-yellow-dark-8: #836a21;--colors-yellow-dark-9: #ffe629;--colors-yellow-dark-10: #ffff57;--colors-yellow-dark-11: #f5e147;--colors-yellow-dark-12: #f6eeb4;--colors-yellow-dark-a-1: #d1510004;--colors-yellow-dark-a-2: #f9b4000b;--colors-yellow-dark-a-3: #ffaa001e;--colors-yellow-dark-a-4: #fdb70028;--colors-yellow-dark-a-5: #febb0036;--colors-yellow-dark-a-6: #fec40046;--colors-yellow-dark-a-7: #fdcb225c;--colors-yellow-dark-a-8: #fdca327b;--colors-yellow-dark-a-9: #ffe629;--colors-yellow-dark-a-10: #ffff57;--colors-yellow-dark-a-11: #fee949f5;--colors-yellow-dark-a-12: #fef6baf6;--colors-yellow-dark-p3-1: color(display-p3 .078 .069 .047);--colors-yellow-dark-p3-2: color(display-p3 .103 .094 .063);--colors-yellow-dark-p3-3: color(display-p3 .168 .137 .039);--colors-yellow-dark-p3-4: color(display-p3 .209 .169 0);--colors-yellow-dark-p3-5: color(display-p3 .255 .209 0);--colors-yellow-dark-p3-6: color(display-p3 .31 .261 .07);--colors-yellow-dark-p3-7: color(display-p3 .389 .331 .135);--colors-yellow-dark-p3-8: color(display-p3 .497 .42 .182);--colors-yellow-dark-p3-9: color(display-p3 1 .92 .22);--colors-yellow-dark-p3-10: color(display-p3 1 1 .456);--colors-yellow-dark-p3-11: color(display-p3 .948 .885 .392);--colors-yellow-dark-p3-12: color(display-p3 .959 .934 .731);--colors-yellow-dark-p3-a-1: color(display-p3 .973 .369 0 / .013);--colors-yellow-dark-p3-a-2: color(display-p3 .996 .792 0 / .038);--colors-yellow-dark-p3-a-3: color(display-p3 .996 .71 0 / .11);--colors-yellow-dark-p3-a-4: color(display-p3 .996 .741 0 / .152);--colors-yellow-dark-p3-a-5: color(display-p3 .996 .765 0 / .202);--colors-yellow-dark-p3-a-6: color(display-p3 .996 .816 .082 / .261);--colors-yellow-dark-p3-a-7: color(display-p3 1 .831 .263 / .345);--colors-yellow-dark-p3-a-8: color(display-p3 1 .831 .314 / .463);--colors-yellow-dark-p3-a-9: color(display-p3 1 .922 .22);--colors-yellow-dark-p3-a-10: color(display-p3 1 1 .455);--colors-yellow-dark-p3-a-11: color(display-p3 .948 .885 .392);--colors-yellow-dark-p3-a-12: color(display-p3 .959 .934 .731);--colors-yellow-a-1: var(--colors-yellow-light-a-1);--colors-yellow-a-2: var(--colors-yellow-light-a-2);--colors-yellow-a-3: var(--colors-yellow-light-a-3);--colors-yellow-a-4: var(--colors-yellow-light-a-4);--colors-yellow-a-5: var(--colors-yellow-light-a-5);--colors-yellow-a-6: var(--colors-yellow-light-a-6);--colors-yellow-a-7: var(--colors-yellow-light-a-7);--colors-yellow-a-8: var(--colors-yellow-light-a-8);--colors-yellow-a-9: var(--colors-yellow-light-a-9);--colors-yellow-a-10: var(--colors-yellow-light-a-10);--colors-yellow-a-11: var(--colors-yellow-light-a-11);--colors-yellow-a-12: var(--colors-yellow-light-a-12);--colors-yellow-p3-1: var(--colors-yellow-light-p3-1);--colors-yellow-p3-2: var(--colors-yellow-light-p3-2);--colors-yellow-p3-3: var(--colors-yellow-light-p3-3);--colors-yellow-p3-4: var(--colors-yellow-light-p3-4);--colors-yellow-p3-5: var(--colors-yellow-light-p3-5);--colors-yellow-p3-6: var(--colors-yellow-light-p3-6);--colors-yellow-p3-7: var(--colors-yellow-light-p3-7);--colors-yellow-p3-8: var(--colors-yellow-light-p3-8);--colors-yellow-p3-9: var(--colors-yellow-light-p3-9);--colors-yellow-p3-10: var(--colors-yellow-light-p3-10);--colors-yellow-p3-11: var(--colors-yellow-light-p3-11);--colors-yellow-p3-12: var(--colors-yellow-light-p3-12);--colors-yellow-p3-a-1: var(--colors-yellow-light-p3-a-1);--colors-yellow-p3-a-2: var(--colors-yellow-light-p3-a-2);--colors-yellow-p3-a-3: var(--colors-yellow-light-p3-a-3);--colors-yellow-p3-a-4: var(--colors-yellow-light-p3-a-4);--colors-yellow-p3-a-5: var(--colors-yellow-light-p3-a-5);--colors-yellow-p3-a-6: var(--colors-yellow-light-p3-a-6);--colors-yellow-p3-a-7: var(--colors-yellow-light-p3-a-7);--colors-yellow-p3-a-8: var(--colors-yellow-light-p3-a-8);--colors-yellow-p3-a-9: var(--colors-yellow-light-p3-a-9);--colors-yellow-p3-a-10: var(--colors-yellow-light-p3-a-10);--colors-yellow-p3-a-11: var(--colors-yellow-light-p3-a-11);--colors-yellow-p3-a-12: var(--colors-yellow-light-p3-a-12);--colors-text: var(--mantine-color-text);--colors-text-dimmed: var(--mantine-color-dimmed);--colors-likec4-background: var(--mantine-color-body);--colors-likec4-tag-bg: var(--colors-tomato-9);--colors-likec4-tag-bg-hover: var(--colors-tomato-10);--colors-likec4-tag-border: var(--colors-tomato-8);--colors-likec4-tag-text: var(--colors-tomato-12);--colors-likec4-panel-bg: var(--mantine-color-body);--colors-likec4-panel-border: transparent;--colors-likec4-panel-text: color-mix(in oklab, var(--mantine-color-text) 85%, transparent 15%);--colors-likec4-panel-text-dimmed: var(--mantine-color-dimmed);--colors-likec4-panel-action: color-mix(in oklab, var(--mantine-color-text) 90%, transparent 10%);--colors-likec4-panel-action-disabled: var(--mantine-color-dimmed);--colors-likec4-panel-action-hover: var(--mantine-color-bright);--colors-likec4-panel-action-bg: var(--mantine-color-gray-1);--colors-likec4-panel-action-bg-hover: var(--mantine-color-gray-2);--colors-likec4-panel-action-warning: var(--mantine-color-orange-6);--colors-likec4-panel-action-warning-hover: var(--mantine-color-orange-7);--colors-likec4-panel-action-warning-bg: color-mix(in oklab, var(--mantine-color-orange-1) 90%, transparent 10%);--colors-likec4-panel-action-warning-bg-hover: color-mix(in oklab, var(--mantine-color-orange-3) 70%, transparent 30%);--colors-likec4-dropdown-bg: #FFF;--colors-likec4-dropdown-border: var(--colors-likec4-panel-border);--colors-likec4-overlay-backdrop: rgb(34 34 34);--colors-likec4-overlay-body: var(--mantine-color-body);--colors-likec4-overlay-border: color-mix(in oklab, var(--mantine-color-default-border) 50%, transparent 50%);--colors-likec4-compare-latest: var(--mantine-color-green-6)}[data-mantine-color-scheme=dark]{--colors-amber-1: var(--colors-amber-dark-1);--colors-amber-2: var(--colors-amber-dark-2);--colors-amber-3: var(--colors-amber-dark-3);--colors-amber-4: var(--colors-amber-dark-4);--colors-amber-5: var(--colors-amber-dark-5);--colors-amber-6: var(--colors-amber-dark-6);--colors-amber-7: var(--colors-amber-dark-7);--colors-amber-8: var(--colors-amber-dark-8);--colors-amber-9: var(--colors-amber-dark-9);--colors-amber-10: var(--colors-amber-dark-10);--colors-amber-11: var(--colors-amber-dark-11);--colors-amber-12: var(--colors-amber-dark-12);--colors-amber-a-1: var(--colors-amber-dark-a-1);--colors-amber-a-2: var(--colors-amber-dark-a-2);--colors-amber-a-3: var(--colors-amber-dark-a-3);--colors-amber-a-4: var(--colors-amber-dark-a-4);--colors-amber-a-5: var(--colors-amber-dark-a-5);--colors-amber-a-6: var(--colors-amber-dark-a-6);--colors-amber-a-7: var(--colors-amber-dark-a-7);--colors-amber-a-8: var(--colors-amber-dark-a-8);--colors-amber-a-9: var(--colors-amber-dark-a-9);--colors-amber-a-10: var(--colors-amber-dark-a-10);--colors-amber-a-11: var(--colors-amber-dark-a-11);--colors-amber-a-12: var(--colors-amber-dark-a-12);--colors-amber-p3-1: var(--colors-amber-dark-p3-1);--colors-amber-p3-2: var(--colors-amber-dark-p3-2);--colors-amber-p3-3: var(--colors-amber-dark-p3-3);--colors-amber-p3-4: var(--colors-amber-dark-p3-4);--colors-amber-p3-5: var(--colors-amber-dark-p3-5);--colors-amber-p3-6: var(--colors-amber-dark-p3-6);--colors-amber-p3-7: var(--colors-amber-dark-p3-7);--colors-amber-p3-8: var(--colors-amber-dark-p3-8);--colors-amber-p3-9: var(--colors-amber-dark-p3-9);--colors-amber-p3-10: var(--colors-amber-dark-p3-10);--colors-amber-p3-11: var(--colors-amber-dark-p3-11);--colors-amber-p3-12: var(--colors-amber-dark-p3-12);--colors-amber-p3-a-1: var(--colors-amber-dark-p3-a-1);--colors-amber-p3-a-2: var(--colors-amber-dark-p3-a-2);--colors-amber-p3-a-3: var(--colors-amber-dark-p3-a-3);--colors-amber-p3-a-4: var(--colors-amber-dark-p3-a-4);--colors-amber-p3-a-5: var(--colors-amber-dark-p3-a-5);--colors-amber-p3-a-6: var(--colors-amber-dark-p3-a-6);--colors-amber-p3-a-7: var(--colors-amber-dark-p3-a-7);--colors-amber-p3-a-8: var(--colors-amber-dark-p3-a-8);--colors-amber-p3-a-9: var(--colors-amber-dark-p3-a-9);--colors-amber-p3-a-10: var(--colors-amber-dark-p3-a-10);--colors-amber-p3-a-11: var(--colors-amber-dark-p3-a-11);--colors-amber-p3-a-12: var(--colors-amber-dark-p3-a-12);--colors-blue-1: var(--colors-blue-dark-1);--colors-blue-2: var(--colors-blue-dark-2);--colors-blue-3: var(--colors-blue-dark-3);--colors-blue-4: var(--colors-blue-dark-4);--colors-blue-5: var(--colors-blue-dark-5);--colors-blue-6: var(--colors-blue-dark-6);--colors-blue-7: var(--colors-blue-dark-7);--colors-blue-8: var(--colors-blue-dark-8);--colors-blue-9: var(--colors-blue-dark-9);--colors-blue-10: var(--colors-blue-dark-10);--colors-blue-11: var(--colors-blue-dark-11);--colors-blue-12: var(--colors-blue-dark-12);--colors-blue-a-1: var(--colors-blue-dark-a-1);--colors-blue-a-2: var(--colors-blue-dark-a-2);--colors-blue-a-3: var(--colors-blue-dark-a-3);--colors-blue-a-4: var(--colors-blue-dark-a-4);--colors-blue-a-5: var(--colors-blue-dark-a-5);--colors-blue-a-6: var(--colors-blue-dark-a-6);--colors-blue-a-7: var(--colors-blue-dark-a-7);--colors-blue-a-8: var(--colors-blue-dark-a-8);--colors-blue-a-9: var(--colors-blue-dark-a-9);--colors-blue-a-10: var(--colors-blue-dark-a-10);--colors-blue-a-11: var(--colors-blue-dark-a-11);--colors-blue-a-12: var(--colors-blue-dark-a-12);--colors-blue-p3-1: var(--colors-blue-dark-p3-1);--colors-blue-p3-2: var(--colors-blue-dark-p3-2);--colors-blue-p3-3: var(--colors-blue-dark-p3-3);--colors-blue-p3-4: var(--colors-blue-dark-p3-4);--colors-blue-p3-5: var(--colors-blue-dark-p3-5);--colors-blue-p3-6: var(--colors-blue-dark-p3-6);--colors-blue-p3-7: var(--colors-blue-dark-p3-7);--colors-blue-p3-8: var(--colors-blue-dark-p3-8);--colors-blue-p3-9: var(--colors-blue-dark-p3-9);--colors-blue-p3-10: var(--colors-blue-dark-p3-10);--colors-blue-p3-11: var(--colors-blue-dark-p3-11);--colors-blue-p3-12: var(--colors-blue-dark-p3-12);--colors-blue-p3-a-1: var(--colors-blue-dark-p3-a-1);--colors-blue-p3-a-2: var(--colors-blue-dark-p3-a-2);--colors-blue-p3-a-3: var(--colors-blue-dark-p3-a-3);--colors-blue-p3-a-4: var(--colors-blue-dark-p3-a-4);--colors-blue-p3-a-5: var(--colors-blue-dark-p3-a-5);--colors-blue-p3-a-6: var(--colors-blue-dark-p3-a-6);--colors-blue-p3-a-7: var(--colors-blue-dark-p3-a-7);--colors-blue-p3-a-8: var(--colors-blue-dark-p3-a-8);--colors-blue-p3-a-9: var(--colors-blue-dark-p3-a-9);--colors-blue-p3-a-10: var(--colors-blue-dark-p3-a-10);--colors-blue-p3-a-11: var(--colors-blue-dark-p3-a-11);--colors-blue-p3-a-12: var(--colors-blue-dark-p3-a-12);--colors-crimson-1: var(--colors-crimson-dark-1);--colors-crimson-2: var(--colors-crimson-dark-2);--colors-crimson-3: var(--colors-crimson-dark-3);--colors-crimson-4: var(--colors-crimson-dark-4);--colors-crimson-5: var(--colors-crimson-dark-5);--colors-crimson-6: var(--colors-crimson-dark-6);--colors-crimson-7: var(--colors-crimson-dark-7);--colors-crimson-8: var(--colors-crimson-dark-8);--colors-crimson-9: var(--colors-crimson-dark-9);--colors-crimson-10: var(--colors-crimson-dark-10);--colors-crimson-11: var(--colors-crimson-dark-11);--colors-crimson-12: var(--colors-crimson-dark-12);--colors-crimson-a-1: var(--colors-crimson-dark-a-1);--colors-crimson-a-2: var(--colors-crimson-dark-a-2);--colors-crimson-a-3: var(--colors-crimson-dark-a-3);--colors-crimson-a-4: var(--colors-crimson-dark-a-4);--colors-crimson-a-5: var(--colors-crimson-dark-a-5);--colors-crimson-a-6: var(--colors-crimson-dark-a-6);--colors-crimson-a-7: var(--colors-crimson-dark-a-7);--colors-crimson-a-8: var(--colors-crimson-dark-a-8);--colors-crimson-a-9: var(--colors-crimson-dark-a-9);--colors-crimson-a-10: var(--colors-crimson-dark-a-10);--colors-crimson-a-11: var(--colors-crimson-dark-a-11);--colors-crimson-a-12: var(--colors-crimson-dark-a-12);--colors-crimson-p3-1: var(--colors-crimson-dark-p3-1);--colors-crimson-p3-2: var(--colors-crimson-dark-p3-2);--colors-crimson-p3-3: var(--colors-crimson-dark-p3-3);--colors-crimson-p3-4: var(--colors-crimson-dark-p3-4);--colors-crimson-p3-5: var(--colors-crimson-dark-p3-5);--colors-crimson-p3-6: var(--colors-crimson-dark-p3-6);--colors-crimson-p3-7: var(--colors-crimson-dark-p3-7);--colors-crimson-p3-8: var(--colors-crimson-dark-p3-8);--colors-crimson-p3-9: var(--colors-crimson-dark-p3-9);--colors-crimson-p3-10: var(--colors-crimson-dark-p3-10);--colors-crimson-p3-11: var(--colors-crimson-dark-p3-11);--colors-crimson-p3-12: var(--colors-crimson-dark-p3-12);--colors-crimson-p3-a-1: var(--colors-crimson-dark-p3-a-1);--colors-crimson-p3-a-2: var(--colors-crimson-dark-p3-a-2);--colors-crimson-p3-a-3: var(--colors-crimson-dark-p3-a-3);--colors-crimson-p3-a-4: var(--colors-crimson-dark-p3-a-4);--colors-crimson-p3-a-5: var(--colors-crimson-dark-p3-a-5);--colors-crimson-p3-a-6: var(--colors-crimson-dark-p3-a-6);--colors-crimson-p3-a-7: var(--colors-crimson-dark-p3-a-7);--colors-crimson-p3-a-8: var(--colors-crimson-dark-p3-a-8);--colors-crimson-p3-a-9: var(--colors-crimson-dark-p3-a-9);--colors-crimson-p3-a-10: var(--colors-crimson-dark-p3-a-10);--colors-crimson-p3-a-11: var(--colors-crimson-dark-p3-a-11);--colors-crimson-p3-a-12: var(--colors-crimson-dark-p3-a-12);--colors-grass-1: var(--colors-grass-dark-1);--colors-grass-2: var(--colors-grass-dark-2);--colors-grass-3: var(--colors-grass-dark-3);--colors-grass-4: var(--colors-grass-dark-4);--colors-grass-5: var(--colors-grass-dark-5);--colors-grass-6: var(--colors-grass-dark-6);--colors-grass-7: var(--colors-grass-dark-7);--colors-grass-8: var(--colors-grass-dark-8);--colors-grass-9: var(--colors-grass-dark-9);--colors-grass-10: var(--colors-grass-dark-10);--colors-grass-11: var(--colors-grass-dark-11);--colors-grass-12: var(--colors-grass-dark-12);--colors-grass-a-1: var(--colors-grass-dark-a-1);--colors-grass-a-2: var(--colors-grass-dark-a-2);--colors-grass-a-3: var(--colors-grass-dark-a-3);--colors-grass-a-4: var(--colors-grass-dark-a-4);--colors-grass-a-5: var(--colors-grass-dark-a-5);--colors-grass-a-6: var(--colors-grass-dark-a-6);--colors-grass-a-7: var(--colors-grass-dark-a-7);--colors-grass-a-8: var(--colors-grass-dark-a-8);--colors-grass-a-9: var(--colors-grass-dark-a-9);--colors-grass-a-10: var(--colors-grass-dark-a-10);--colors-grass-a-11: var(--colors-grass-dark-a-11);--colors-grass-a-12: var(--colors-grass-dark-a-12);--colors-grass-p3-1: var(--colors-grass-dark-p3-1);--colors-grass-p3-2: var(--colors-grass-dark-p3-2);--colors-grass-p3-3: var(--colors-grass-dark-p3-3);--colors-grass-p3-4: var(--colors-grass-dark-p3-4);--colors-grass-p3-5: var(--colors-grass-dark-p3-5);--colors-grass-p3-6: var(--colors-grass-dark-p3-6);--colors-grass-p3-7: var(--colors-grass-dark-p3-7);--colors-grass-p3-8: var(--colors-grass-dark-p3-8);--colors-grass-p3-9: var(--colors-grass-dark-p3-9);--colors-grass-p3-10: var(--colors-grass-dark-p3-10);--colors-grass-p3-11: var(--colors-grass-dark-p3-11);--colors-grass-p3-12: var(--colors-grass-dark-p3-12);--colors-grass-p3-a-1: var(--colors-grass-dark-p3-a-1);--colors-grass-p3-a-2: var(--colors-grass-dark-p3-a-2);--colors-grass-p3-a-3: var(--colors-grass-dark-p3-a-3);--colors-grass-p3-a-4: var(--colors-grass-dark-p3-a-4);--colors-grass-p3-a-5: var(--colors-grass-dark-p3-a-5);--colors-grass-p3-a-6: var(--colors-grass-dark-p3-a-6);--colors-grass-p3-a-7: var(--colors-grass-dark-p3-a-7);--colors-grass-p3-a-8: var(--colors-grass-dark-p3-a-8);--colors-grass-p3-a-9: var(--colors-grass-dark-p3-a-9);--colors-grass-p3-a-10: var(--colors-grass-dark-p3-a-10);--colors-grass-p3-a-11: var(--colors-grass-dark-p3-a-11);--colors-grass-p3-a-12: var(--colors-grass-dark-p3-a-12);--colors-indigo-1: var(--colors-indigo-dark-1);--colors-indigo-2: var(--colors-indigo-dark-2);--colors-indigo-3: var(--colors-indigo-dark-3);--colors-indigo-4: var(--colors-indigo-dark-4);--colors-indigo-5: var(--colors-indigo-dark-5);--colors-indigo-6: var(--colors-indigo-dark-6);--colors-indigo-7: var(--colors-indigo-dark-7);--colors-indigo-8: var(--colors-indigo-dark-8);--colors-indigo-9: var(--colors-indigo-dark-9);--colors-indigo-10: var(--colors-indigo-dark-10);--colors-indigo-11: var(--colors-indigo-dark-11);--colors-indigo-12: var(--colors-indigo-dark-12);--colors-indigo-a-1: var(--colors-indigo-dark-a-1);--colors-indigo-a-2: var(--colors-indigo-dark-a-2);--colors-indigo-a-3: var(--colors-indigo-dark-a-3);--colors-indigo-a-4: var(--colors-indigo-dark-a-4);--colors-indigo-a-5: var(--colors-indigo-dark-a-5);--colors-indigo-a-6: var(--colors-indigo-dark-a-6);--colors-indigo-a-7: var(--colors-indigo-dark-a-7);--colors-indigo-a-8: var(--colors-indigo-dark-a-8);--colors-indigo-a-9: var(--colors-indigo-dark-a-9);--colors-indigo-a-10: var(--colors-indigo-dark-a-10);--colors-indigo-a-11: var(--colors-indigo-dark-a-11);--colors-indigo-a-12: var(--colors-indigo-dark-a-12);--colors-indigo-p3-1: var(--colors-indigo-dark-p3-1);--colors-indigo-p3-2: var(--colors-indigo-dark-p3-2);--colors-indigo-p3-3: var(--colors-indigo-dark-p3-3);--colors-indigo-p3-4: var(--colors-indigo-dark-p3-4);--colors-indigo-p3-5: var(--colors-indigo-dark-p3-5);--colors-indigo-p3-6: var(--colors-indigo-dark-p3-6);--colors-indigo-p3-7: var(--colors-indigo-dark-p3-7);--colors-indigo-p3-8: var(--colors-indigo-dark-p3-8);--colors-indigo-p3-9: var(--colors-indigo-dark-p3-9);--colors-indigo-p3-10: var(--colors-indigo-dark-p3-10);--colors-indigo-p3-11: var(--colors-indigo-dark-p3-11);--colors-indigo-p3-12: var(--colors-indigo-dark-p3-12);--colors-indigo-p3-a-1: var(--colors-indigo-dark-p3-a-1);--colors-indigo-p3-a-2: var(--colors-indigo-dark-p3-a-2);--colors-indigo-p3-a-3: var(--colors-indigo-dark-p3-a-3);--colors-indigo-p3-a-4: var(--colors-indigo-dark-p3-a-4);--colors-indigo-p3-a-5: var(--colors-indigo-dark-p3-a-5);--colors-indigo-p3-a-6: var(--colors-indigo-dark-p3-a-6);--colors-indigo-p3-a-7: var(--colors-indigo-dark-p3-a-7);--colors-indigo-p3-a-8: var(--colors-indigo-dark-p3-a-8);--colors-indigo-p3-a-9: var(--colors-indigo-dark-p3-a-9);--colors-indigo-p3-a-10: var(--colors-indigo-dark-p3-a-10);--colors-indigo-p3-a-11: var(--colors-indigo-dark-p3-a-11);--colors-indigo-p3-a-12: var(--colors-indigo-dark-p3-a-12);--colors-lime-1: var(--colors-lime-dark-1);--colors-lime-2: var(--colors-lime-dark-2);--colors-lime-3: var(--colors-lime-dark-3);--colors-lime-4: var(--colors-lime-dark-4);--colors-lime-5: var(--colors-lime-dark-5);--colors-lime-6: var(--colors-lime-dark-6);--colors-lime-7: var(--colors-lime-dark-7);--colors-lime-8: var(--colors-lime-dark-8);--colors-lime-9: var(--colors-lime-dark-9);--colors-lime-10: var(--colors-lime-dark-10);--colors-lime-11: var(--colors-lime-dark-11);--colors-lime-12: var(--colors-lime-dark-12);--colors-lime-a-1: var(--colors-lime-dark-a-1);--colors-lime-a-2: var(--colors-lime-dark-a-2);--colors-lime-a-3: var(--colors-lime-dark-a-3);--colors-lime-a-4: var(--colors-lime-dark-a-4);--colors-lime-a-5: var(--colors-lime-dark-a-5);--colors-lime-a-6: var(--colors-lime-dark-a-6);--colors-lime-a-7: var(--colors-lime-dark-a-7);--colors-lime-a-8: var(--colors-lime-dark-a-8);--colors-lime-a-9: var(--colors-lime-dark-a-9);--colors-lime-a-10: var(--colors-lime-dark-a-10);--colors-lime-a-11: var(--colors-lime-dark-a-11);--colors-lime-a-12: var(--colors-lime-dark-a-12);--colors-lime-p3-1: var(--colors-lime-dark-p3-1);--colors-lime-p3-2: var(--colors-lime-dark-p3-2);--colors-lime-p3-3: var(--colors-lime-dark-p3-3);--colors-lime-p3-4: var(--colors-lime-dark-p3-4);--colors-lime-p3-5: var(--colors-lime-dark-p3-5);--colors-lime-p3-6: var(--colors-lime-dark-p3-6);--colors-lime-p3-7: var(--colors-lime-dark-p3-7);--colors-lime-p3-8: var(--colors-lime-dark-p3-8);--colors-lime-p3-9: var(--colors-lime-dark-p3-9);--colors-lime-p3-10: var(--colors-lime-dark-p3-10);--colors-lime-p3-11: var(--colors-lime-dark-p3-11);--colors-lime-p3-12: var(--colors-lime-dark-p3-12);--colors-lime-p3-a-1: var(--colors-lime-dark-p3-a-1);--colors-lime-p3-a-2: var(--colors-lime-dark-p3-a-2);--colors-lime-p3-a-3: var(--colors-lime-dark-p3-a-3);--colors-lime-p3-a-4: var(--colors-lime-dark-p3-a-4);--colors-lime-p3-a-5: var(--colors-lime-dark-p3-a-5);--colors-lime-p3-a-6: var(--colors-lime-dark-p3-a-6);--colors-lime-p3-a-7: var(--colors-lime-dark-p3-a-7);--colors-lime-p3-a-8: var(--colors-lime-dark-p3-a-8);--colors-lime-p3-a-9: var(--colors-lime-dark-p3-a-9);--colors-lime-p3-a-10: var(--colors-lime-dark-p3-a-10);--colors-lime-p3-a-11: var(--colors-lime-dark-p3-a-11);--colors-lime-p3-a-12: var(--colors-lime-dark-p3-a-12);--colors-orange-1: var(--colors-orange-dark-1);--colors-orange-2: var(--colors-orange-dark-2);--colors-orange-3: var(--colors-orange-dark-3);--colors-orange-4: var(--colors-orange-dark-4);--colors-orange-5: var(--colors-orange-dark-5);--colors-orange-6: var(--colors-orange-dark-6);--colors-orange-7: var(--colors-orange-dark-7);--colors-orange-8: var(--colors-orange-dark-8);--colors-orange-9: var(--colors-orange-dark-9);--colors-orange-10: var(--colors-orange-dark-10);--colors-orange-11: var(--colors-orange-dark-11);--colors-orange-12: var(--colors-orange-dark-12);--colors-orange-a-1: var(--colors-orange-dark-a-1);--colors-orange-a-2: var(--colors-orange-dark-a-2);--colors-orange-a-3: var(--colors-orange-dark-a-3);--colors-orange-a-4: var(--colors-orange-dark-a-4);--colors-orange-a-5: var(--colors-orange-dark-a-5);--colors-orange-a-6: var(--colors-orange-dark-a-6);--colors-orange-a-7: var(--colors-orange-dark-a-7);--colors-orange-a-8: var(--colors-orange-dark-a-8);--colors-orange-a-9: var(--colors-orange-dark-a-9);--colors-orange-a-10: var(--colors-orange-dark-a-10);--colors-orange-a-11: var(--colors-orange-dark-a-11);--colors-orange-a-12: var(--colors-orange-dark-a-12);--colors-orange-p3-1: var(--colors-orange-dark-p3-1);--colors-orange-p3-2: var(--colors-orange-dark-p3-2);--colors-orange-p3-3: var(--colors-orange-dark-p3-3);--colors-orange-p3-4: var(--colors-orange-dark-p3-4);--colors-orange-p3-5: var(--colors-orange-dark-p3-5);--colors-orange-p3-6: var(--colors-orange-dark-p3-6);--colors-orange-p3-7: var(--colors-orange-dark-p3-7);--colors-orange-p3-8: var(--colors-orange-dark-p3-8);--colors-orange-p3-9: var(--colors-orange-dark-p3-9);--colors-orange-p3-10: var(--colors-orange-dark-p3-10);--colors-orange-p3-11: var(--colors-orange-dark-p3-11);--colors-orange-p3-12: var(--colors-orange-dark-p3-12);--colors-orange-p3-a-1: var(--colors-orange-dark-p3-a-1);--colors-orange-p3-a-2: var(--colors-orange-dark-p3-a-2);--colors-orange-p3-a-3: var(--colors-orange-dark-p3-a-3);--colors-orange-p3-a-4: var(--colors-orange-dark-p3-a-4);--colors-orange-p3-a-5: var(--colors-orange-dark-p3-a-5);--colors-orange-p3-a-6: var(--colors-orange-dark-p3-a-6);--colors-orange-p3-a-7: var(--colors-orange-dark-p3-a-7);--colors-orange-p3-a-8: var(--colors-orange-dark-p3-a-8);--colors-orange-p3-a-9: var(--colors-orange-dark-p3-a-9);--colors-orange-p3-a-10: var(--colors-orange-dark-p3-a-10);--colors-orange-p3-a-11: var(--colors-orange-dark-p3-a-11);--colors-orange-p3-a-12: var(--colors-orange-dark-p3-a-12);--colors-pink-1: var(--colors-pink-dark-1);--colors-pink-2: var(--colors-pink-dark-2);--colors-pink-3: var(--colors-pink-dark-3);--colors-pink-4: var(--colors-pink-dark-4);--colors-pink-5: var(--colors-pink-dark-5);--colors-pink-6: var(--colors-pink-dark-6);--colors-pink-7: var(--colors-pink-dark-7);--colors-pink-8: var(--colors-pink-dark-8);--colors-pink-9: var(--colors-pink-dark-9);--colors-pink-10: var(--colors-pink-dark-10);--colors-pink-11: var(--colors-pink-dark-11);--colors-pink-12: var(--colors-pink-dark-12);--colors-pink-a-1: var(--colors-pink-dark-a-1);--colors-pink-a-2: var(--colors-pink-dark-a-2);--colors-pink-a-3: var(--colors-pink-dark-a-3);--colors-pink-a-4: var(--colors-pink-dark-a-4);--colors-pink-a-5: var(--colors-pink-dark-a-5);--colors-pink-a-6: var(--colors-pink-dark-a-6);--colors-pink-a-7: var(--colors-pink-dark-a-7);--colors-pink-a-8: var(--colors-pink-dark-a-8);--colors-pink-a-9: var(--colors-pink-dark-a-9);--colors-pink-a-10: var(--colors-pink-dark-a-10);--colors-pink-a-11: var(--colors-pink-dark-a-11);--colors-pink-a-12: var(--colors-pink-dark-a-12);--colors-pink-p3-1: var(--colors-pink-dark-p3-1);--colors-pink-p3-2: var(--colors-pink-dark-p3-2);--colors-pink-p3-3: var(--colors-pink-dark-p3-3);--colors-pink-p3-4: var(--colors-pink-dark-p3-4);--colors-pink-p3-5: var(--colors-pink-dark-p3-5);--colors-pink-p3-6: var(--colors-pink-dark-p3-6);--colors-pink-p3-7: var(--colors-pink-dark-p3-7);--colors-pink-p3-8: var(--colors-pink-dark-p3-8);--colors-pink-p3-9: var(--colors-pink-dark-p3-9);--colors-pink-p3-10: var(--colors-pink-dark-p3-10);--colors-pink-p3-11: var(--colors-pink-dark-p3-11);--colors-pink-p3-12: var(--colors-pink-dark-p3-12);--colors-pink-p3-a-1: var(--colors-pink-dark-p3-a-1);--colors-pink-p3-a-2: var(--colors-pink-dark-p3-a-2);--colors-pink-p3-a-3: var(--colors-pink-dark-p3-a-3);--colors-pink-p3-a-4: var(--colors-pink-dark-p3-a-4);--colors-pink-p3-a-5: var(--colors-pink-dark-p3-a-5);--colors-pink-p3-a-6: var(--colors-pink-dark-p3-a-6);--colors-pink-p3-a-7: var(--colors-pink-dark-p3-a-7);--colors-pink-p3-a-8: var(--colors-pink-dark-p3-a-8);--colors-pink-p3-a-9: var(--colors-pink-dark-p3-a-9);--colors-pink-p3-a-10: var(--colors-pink-dark-p3-a-10);--colors-pink-p3-a-11: var(--colors-pink-dark-p3-a-11);--colors-pink-p3-a-12: var(--colors-pink-dark-p3-a-12);--colors-purple-1: var(--colors-purple-dark-1);--colors-purple-2: var(--colors-purple-dark-2);--colors-purple-3: var(--colors-purple-dark-3);--colors-purple-4: var(--colors-purple-dark-4);--colors-purple-5: var(--colors-purple-dark-5);--colors-purple-6: var(--colors-purple-dark-6);--colors-purple-7: var(--colors-purple-dark-7);--colors-purple-8: var(--colors-purple-dark-8);--colors-purple-9: var(--colors-purple-dark-9);--colors-purple-10: var(--colors-purple-dark-10);--colors-purple-11: var(--colors-purple-dark-11);--colors-purple-12: var(--colors-purple-dark-12);--colors-purple-a-1: var(--colors-purple-dark-a-1);--colors-purple-a-2: var(--colors-purple-dark-a-2);--colors-purple-a-3: var(--colors-purple-dark-a-3);--colors-purple-a-4: var(--colors-purple-dark-a-4);--colors-purple-a-5: var(--colors-purple-dark-a-5);--colors-purple-a-6: var(--colors-purple-dark-a-6);--colors-purple-a-7: var(--colors-purple-dark-a-7);--colors-purple-a-8: var(--colors-purple-dark-a-8);--colors-purple-a-9: var(--colors-purple-dark-a-9);--colors-purple-a-10: var(--colors-purple-dark-a-10);--colors-purple-a-11: var(--colors-purple-dark-a-11);--colors-purple-a-12: var(--colors-purple-dark-a-12);--colors-purple-p3-1: var(--colors-purple-dark-p3-1);--colors-purple-p3-2: var(--colors-purple-dark-p3-2);--colors-purple-p3-3: var(--colors-purple-dark-p3-3);--colors-purple-p3-4: var(--colors-purple-dark-p3-4);--colors-purple-p3-5: var(--colors-purple-dark-p3-5);--colors-purple-p3-6: var(--colors-purple-dark-p3-6);--colors-purple-p3-7: var(--colors-purple-dark-p3-7);--colors-purple-p3-8: var(--colors-purple-dark-p3-8);--colors-purple-p3-9: var(--colors-purple-dark-p3-9);--colors-purple-p3-10: var(--colors-purple-dark-p3-10);--colors-purple-p3-11: var(--colors-purple-dark-p3-11);--colors-purple-p3-12: var(--colors-purple-dark-p3-12);--colors-purple-p3-a-1: var(--colors-purple-dark-p3-a-1);--colors-purple-p3-a-2: var(--colors-purple-dark-p3-a-2);--colors-purple-p3-a-3: var(--colors-purple-dark-p3-a-3);--colors-purple-p3-a-4: var(--colors-purple-dark-p3-a-4);--colors-purple-p3-a-5: var(--colors-purple-dark-p3-a-5);--colors-purple-p3-a-6: var(--colors-purple-dark-p3-a-6);--colors-purple-p3-a-7: var(--colors-purple-dark-p3-a-7);--colors-purple-p3-a-8: var(--colors-purple-dark-p3-a-8);--colors-purple-p3-a-9: var(--colors-purple-dark-p3-a-9);--colors-purple-p3-a-10: var(--colors-purple-dark-p3-a-10);--colors-purple-p3-a-11: var(--colors-purple-dark-p3-a-11);--colors-purple-p3-a-12: var(--colors-purple-dark-p3-a-12);--colors-red-1: var(--colors-red-dark-1);--colors-red-2: var(--colors-red-dark-2);--colors-red-3: var(--colors-red-dark-3);--colors-red-4: var(--colors-red-dark-4);--colors-red-5: var(--colors-red-dark-5);--colors-red-6: var(--colors-red-dark-6);--colors-red-7: var(--colors-red-dark-7);--colors-red-8: var(--colors-red-dark-8);--colors-red-9: var(--colors-red-dark-9);--colors-red-10: var(--colors-red-dark-10);--colors-red-11: var(--colors-red-dark-11);--colors-red-12: var(--colors-red-dark-12);--colors-red-a-1: var(--colors-red-dark-a-1);--colors-red-a-2: var(--colors-red-dark-a-2);--colors-red-a-3: var(--colors-red-dark-a-3);--colors-red-a-4: var(--colors-red-dark-a-4);--colors-red-a-5: var(--colors-red-dark-a-5);--colors-red-a-6: var(--colors-red-dark-a-6);--colors-red-a-7: var(--colors-red-dark-a-7);--colors-red-a-8: var(--colors-red-dark-a-8);--colors-red-a-9: var(--colors-red-dark-a-9);--colors-red-a-10: var(--colors-red-dark-a-10);--colors-red-a-11: var(--colors-red-dark-a-11);--colors-red-a-12: var(--colors-red-dark-a-12);--colors-red-p3-1: var(--colors-red-dark-p3-1);--colors-red-p3-2: var(--colors-red-dark-p3-2);--colors-red-p3-3: var(--colors-red-dark-p3-3);--colors-red-p3-4: var(--colors-red-dark-p3-4);--colors-red-p3-5: var(--colors-red-dark-p3-5);--colors-red-p3-6: var(--colors-red-dark-p3-6);--colors-red-p3-7: var(--colors-red-dark-p3-7);--colors-red-p3-8: var(--colors-red-dark-p3-8);--colors-red-p3-9: var(--colors-red-dark-p3-9);--colors-red-p3-10: var(--colors-red-dark-p3-10);--colors-red-p3-11: var(--colors-red-dark-p3-11);--colors-red-p3-12: var(--colors-red-dark-p3-12);--colors-red-p3-a-1: var(--colors-red-dark-p3-a-1);--colors-red-p3-a-2: var(--colors-red-dark-p3-a-2);--colors-red-p3-a-3: var(--colors-red-dark-p3-a-3);--colors-red-p3-a-4: var(--colors-red-dark-p3-a-4);--colors-red-p3-a-5: var(--colors-red-dark-p3-a-5);--colors-red-p3-a-6: var(--colors-red-dark-p3-a-6);--colors-red-p3-a-7: var(--colors-red-dark-p3-a-7);--colors-red-p3-a-8: var(--colors-red-dark-p3-a-8);--colors-red-p3-a-9: var(--colors-red-dark-p3-a-9);--colors-red-p3-a-10: var(--colors-red-dark-p3-a-10);--colors-red-p3-a-11: var(--colors-red-dark-p3-a-11);--colors-red-p3-a-12: var(--colors-red-dark-p3-a-12);--colors-ruby-1: var(--colors-ruby-dark-1);--colors-ruby-2: var(--colors-ruby-dark-2);--colors-ruby-3: var(--colors-ruby-dark-3);--colors-ruby-4: var(--colors-ruby-dark-4);--colors-ruby-5: var(--colors-ruby-dark-5);--colors-ruby-6: var(--colors-ruby-dark-6);--colors-ruby-7: var(--colors-ruby-dark-7);--colors-ruby-8: var(--colors-ruby-dark-8);--colors-ruby-9: var(--colors-ruby-dark-9);--colors-ruby-10: var(--colors-ruby-dark-10);--colors-ruby-11: var(--colors-ruby-dark-11);--colors-ruby-12: var(--colors-ruby-dark-12);--colors-ruby-a-1: var(--colors-ruby-dark-a-1);--colors-ruby-a-2: var(--colors-ruby-dark-a-2);--colors-ruby-a-3: var(--colors-ruby-dark-a-3);--colors-ruby-a-4: var(--colors-ruby-dark-a-4);--colors-ruby-a-5: var(--colors-ruby-dark-a-5);--colors-ruby-a-6: var(--colors-ruby-dark-a-6);--colors-ruby-a-7: var(--colors-ruby-dark-a-7);--colors-ruby-a-8: var(--colors-ruby-dark-a-8);--colors-ruby-a-9: var(--colors-ruby-dark-a-9);--colors-ruby-a-10: var(--colors-ruby-dark-a-10);--colors-ruby-a-11: var(--colors-ruby-dark-a-11);--colors-ruby-a-12: var(--colors-ruby-dark-a-12);--colors-ruby-p3-1: var(--colors-ruby-dark-p3-1);--colors-ruby-p3-2: var(--colors-ruby-dark-p3-2);--colors-ruby-p3-3: var(--colors-ruby-dark-p3-3);--colors-ruby-p3-4: var(--colors-ruby-dark-p3-4);--colors-ruby-p3-5: var(--colors-ruby-dark-p3-5);--colors-ruby-p3-6: var(--colors-ruby-dark-p3-6);--colors-ruby-p3-7: var(--colors-ruby-dark-p3-7);--colors-ruby-p3-8: var(--colors-ruby-dark-p3-8);--colors-ruby-p3-9: var(--colors-ruby-dark-p3-9);--colors-ruby-p3-10: var(--colors-ruby-dark-p3-10);--colors-ruby-p3-11: var(--colors-ruby-dark-p3-11);--colors-ruby-p3-12: var(--colors-ruby-dark-p3-12);--colors-ruby-p3-a-1: var(--colors-ruby-dark-p3-a-1);--colors-ruby-p3-a-2: var(--colors-ruby-dark-p3-a-2);--colors-ruby-p3-a-3: var(--colors-ruby-dark-p3-a-3);--colors-ruby-p3-a-4: var(--colors-ruby-dark-p3-a-4);--colors-ruby-p3-a-5: var(--colors-ruby-dark-p3-a-5);--colors-ruby-p3-a-6: var(--colors-ruby-dark-p3-a-6);--colors-ruby-p3-a-7: var(--colors-ruby-dark-p3-a-7);--colors-ruby-p3-a-8: var(--colors-ruby-dark-p3-a-8);--colors-ruby-p3-a-9: var(--colors-ruby-dark-p3-a-9);--colors-ruby-p3-a-10: var(--colors-ruby-dark-p3-a-10);--colors-ruby-p3-a-11: var(--colors-ruby-dark-p3-a-11);--colors-ruby-p3-a-12: var(--colors-ruby-dark-p3-a-12);--colors-teal-1: var(--colors-teal-dark-1);--colors-teal-2: var(--colors-teal-dark-2);--colors-teal-3: var(--colors-teal-dark-3);--colors-teal-4: var(--colors-teal-dark-4);--colors-teal-5: var(--colors-teal-dark-5);--colors-teal-6: var(--colors-teal-dark-6);--colors-teal-7: var(--colors-teal-dark-7);--colors-teal-8: var(--colors-teal-dark-8);--colors-teal-9: var(--colors-teal-dark-9);--colors-teal-10: var(--colors-teal-dark-10);--colors-teal-11: var(--colors-teal-dark-11);--colors-teal-12: var(--colors-teal-dark-12);--colors-teal-a-1: var(--colors-teal-dark-a-1);--colors-teal-a-2: var(--colors-teal-dark-a-2);--colors-teal-a-3: var(--colors-teal-dark-a-3);--colors-teal-a-4: var(--colors-teal-dark-a-4);--colors-teal-a-5: var(--colors-teal-dark-a-5);--colors-teal-a-6: var(--colors-teal-dark-a-6);--colors-teal-a-7: var(--colors-teal-dark-a-7);--colors-teal-a-8: var(--colors-teal-dark-a-8);--colors-teal-a-9: var(--colors-teal-dark-a-9);--colors-teal-a-10: var(--colors-teal-dark-a-10);--colors-teal-a-11: var(--colors-teal-dark-a-11);--colors-teal-a-12: var(--colors-teal-dark-a-12);--colors-teal-p3-1: var(--colors-teal-dark-p3-1);--colors-teal-p3-2: var(--colors-teal-dark-p3-2);--colors-teal-p3-3: var(--colors-teal-dark-p3-3);--colors-teal-p3-4: var(--colors-teal-dark-p3-4);--colors-teal-p3-5: var(--colors-teal-dark-p3-5);--colors-teal-p3-6: var(--colors-teal-dark-p3-6);--colors-teal-p3-7: var(--colors-teal-dark-p3-7);--colors-teal-p3-8: var(--colors-teal-dark-p3-8);--colors-teal-p3-9: var(--colors-teal-dark-p3-9);--colors-teal-p3-10: var(--colors-teal-dark-p3-10);--colors-teal-p3-11: var(--colors-teal-dark-p3-11);--colors-teal-p3-12: var(--colors-teal-dark-p3-12);--colors-teal-p3-a-1: var(--colors-teal-dark-p3-a-1);--colors-teal-p3-a-2: var(--colors-teal-dark-p3-a-2);--colors-teal-p3-a-3: var(--colors-teal-dark-p3-a-3);--colors-teal-p3-a-4: var(--colors-teal-dark-p3-a-4);--colors-teal-p3-a-5: var(--colors-teal-dark-p3-a-5);--colors-teal-p3-a-6: var(--colors-teal-dark-p3-a-6);--colors-teal-p3-a-7: var(--colors-teal-dark-p3-a-7);--colors-teal-p3-a-8: var(--colors-teal-dark-p3-a-8);--colors-teal-p3-a-9: var(--colors-teal-dark-p3-a-9);--colors-teal-p3-a-10: var(--colors-teal-dark-p3-a-10);--colors-teal-p3-a-11: var(--colors-teal-dark-p3-a-11);--colors-teal-p3-a-12: var(--colors-teal-dark-p3-a-12);--colors-tomato-1: var(--colors-tomato-dark-1);--colors-tomato-2: var(--colors-tomato-dark-2);--colors-tomato-3: var(--colors-tomato-dark-3);--colors-tomato-4: var(--colors-tomato-dark-4);--colors-tomato-5: var(--colors-tomato-dark-5);--colors-tomato-6: var(--colors-tomato-dark-6);--colors-tomato-7: var(--colors-tomato-dark-7);--colors-tomato-8: var(--colors-tomato-dark-8);--colors-tomato-9: var(--colors-tomato-dark-9);--colors-tomato-10: var(--colors-tomato-dark-10);--colors-tomato-11: var(--colors-tomato-dark-11);--colors-tomato-12: var(--colors-tomato-dark-12);--colors-tomato-a-1: var(--colors-tomato-dark-a-1);--colors-tomato-a-2: var(--colors-tomato-dark-a-2);--colors-tomato-a-3: var(--colors-tomato-dark-a-3);--colors-tomato-a-4: var(--colors-tomato-dark-a-4);--colors-tomato-a-5: var(--colors-tomato-dark-a-5);--colors-tomato-a-6: var(--colors-tomato-dark-a-6);--colors-tomato-a-7: var(--colors-tomato-dark-a-7);--colors-tomato-a-8: var(--colors-tomato-dark-a-8);--colors-tomato-a-9: var(--colors-tomato-dark-a-9);--colors-tomato-a-10: var(--colors-tomato-dark-a-10);--colors-tomato-a-11: var(--colors-tomato-dark-a-11);--colors-tomato-a-12: var(--colors-tomato-dark-a-12);--colors-tomato-p3-1: var(--colors-tomato-dark-p3-1);--colors-tomato-p3-2: var(--colors-tomato-dark-p3-2);--colors-tomato-p3-3: var(--colors-tomato-dark-p3-3);--colors-tomato-p3-4: var(--colors-tomato-dark-p3-4);--colors-tomato-p3-5: var(--colors-tomato-dark-p3-5);--colors-tomato-p3-6: var(--colors-tomato-dark-p3-6);--colors-tomato-p3-7: var(--colors-tomato-dark-p3-7);--colors-tomato-p3-8: var(--colors-tomato-dark-p3-8);--colors-tomato-p3-9: var(--colors-tomato-dark-p3-9);--colors-tomato-p3-10: var(--colors-tomato-dark-p3-10);--colors-tomato-p3-11: var(--colors-tomato-dark-p3-11);--colors-tomato-p3-12: var(--colors-tomato-dark-p3-12);--colors-tomato-p3-a-1: var(--colors-tomato-dark-p3-a-1);--colors-tomato-p3-a-2: var(--colors-tomato-dark-p3-a-2);--colors-tomato-p3-a-3: var(--colors-tomato-dark-p3-a-3);--colors-tomato-p3-a-4: var(--colors-tomato-dark-p3-a-4);--colors-tomato-p3-a-5: var(--colors-tomato-dark-p3-a-5);--colors-tomato-p3-a-6: var(--colors-tomato-dark-p3-a-6);--colors-tomato-p3-a-7: var(--colors-tomato-dark-p3-a-7);--colors-tomato-p3-a-8: var(--colors-tomato-dark-p3-a-8);--colors-tomato-p3-a-9: var(--colors-tomato-dark-p3-a-9);--colors-tomato-p3-a-10: var(--colors-tomato-dark-p3-a-10);--colors-tomato-p3-a-11: var(--colors-tomato-dark-p3-a-11);--colors-tomato-p3-a-12: var(--colors-tomato-dark-p3-a-12);--colors-violet-1: var(--colors-violet-dark-1);--colors-violet-2: var(--colors-violet-dark-2);--colors-violet-3: var(--colors-violet-dark-3);--colors-violet-4: var(--colors-violet-dark-4);--colors-violet-5: var(--colors-violet-dark-5);--colors-violet-6: var(--colors-violet-dark-6);--colors-violet-7: var(--colors-violet-dark-7);--colors-violet-8: var(--colors-violet-dark-8);--colors-violet-9: var(--colors-violet-dark-9);--colors-violet-10: var(--colors-violet-dark-10);--colors-violet-11: var(--colors-violet-dark-11);--colors-violet-12: var(--colors-violet-dark-12);--colors-violet-a-1: var(--colors-violet-dark-a-1);--colors-violet-a-2: var(--colors-violet-dark-a-2);--colors-violet-a-3: var(--colors-violet-dark-a-3);--colors-violet-a-4: var(--colors-violet-dark-a-4);--colors-violet-a-5: var(--colors-violet-dark-a-5);--colors-violet-a-6: var(--colors-violet-dark-a-6);--colors-violet-a-7: var(--colors-violet-dark-a-7);--colors-violet-a-8: var(--colors-violet-dark-a-8);--colors-violet-a-9: var(--colors-violet-dark-a-9);--colors-violet-a-10: var(--colors-violet-dark-a-10);--colors-violet-a-11: var(--colors-violet-dark-a-11);--colors-violet-a-12: var(--colors-violet-dark-a-12);--colors-violet-p3-1: var(--colors-violet-dark-p3-1);--colors-violet-p3-2: var(--colors-violet-dark-p3-2);--colors-violet-p3-3: var(--colors-violet-dark-p3-3);--colors-violet-p3-4: var(--colors-violet-dark-p3-4);--colors-violet-p3-5: var(--colors-violet-dark-p3-5);--colors-violet-p3-6: var(--colors-violet-dark-p3-6);--colors-violet-p3-7: var(--colors-violet-dark-p3-7);--colors-violet-p3-8: var(--colors-violet-dark-p3-8);--colors-violet-p3-9: var(--colors-violet-dark-p3-9);--colors-violet-p3-10: var(--colors-violet-dark-p3-10);--colors-violet-p3-11: var(--colors-violet-dark-p3-11);--colors-violet-p3-12: var(--colors-violet-dark-p3-12);--colors-violet-p3-a-1: var(--colors-violet-dark-p3-a-1);--colors-violet-p3-a-2: var(--colors-violet-dark-p3-a-2);--colors-violet-p3-a-3: var(--colors-violet-dark-p3-a-3);--colors-violet-p3-a-4: var(--colors-violet-dark-p3-a-4);--colors-violet-p3-a-5: var(--colors-violet-dark-p3-a-5);--colors-violet-p3-a-6: var(--colors-violet-dark-p3-a-6);--colors-violet-p3-a-7: var(--colors-violet-dark-p3-a-7);--colors-violet-p3-a-8: var(--colors-violet-dark-p3-a-8);--colors-violet-p3-a-9: var(--colors-violet-dark-p3-a-9);--colors-violet-p3-a-10: var(--colors-violet-dark-p3-a-10);--colors-violet-p3-a-11: var(--colors-violet-dark-p3-a-11);--colors-violet-p3-a-12: var(--colors-violet-dark-p3-a-12);--colors-yellow-1: var(--colors-yellow-dark-1);--colors-yellow-2: var(--colors-yellow-dark-2);--colors-yellow-3: var(--colors-yellow-dark-3);--colors-yellow-4: var(--colors-yellow-dark-4);--colors-yellow-5: var(--colors-yellow-dark-5);--colors-yellow-6: var(--colors-yellow-dark-6);--colors-yellow-7: var(--colors-yellow-dark-7);--colors-yellow-8: var(--colors-yellow-dark-8);--colors-yellow-9: var(--colors-yellow-dark-9);--colors-yellow-10: var(--colors-yellow-dark-10);--colors-yellow-11: var(--colors-yellow-dark-11);--colors-yellow-12: var(--colors-yellow-dark-12);--colors-yellow-a-1: var(--colors-yellow-dark-a-1);--colors-yellow-a-2: var(--colors-yellow-dark-a-2);--colors-yellow-a-3: var(--colors-yellow-dark-a-3);--colors-yellow-a-4: var(--colors-yellow-dark-a-4);--colors-yellow-a-5: var(--colors-yellow-dark-a-5);--colors-yellow-a-6: var(--colors-yellow-dark-a-6);--colors-yellow-a-7: var(--colors-yellow-dark-a-7);--colors-yellow-a-8: var(--colors-yellow-dark-a-8);--colors-yellow-a-9: var(--colors-yellow-dark-a-9);--colors-yellow-a-10: var(--colors-yellow-dark-a-10);--colors-yellow-a-11: var(--colors-yellow-dark-a-11);--colors-yellow-a-12: var(--colors-yellow-dark-a-12);--colors-yellow-p3-1: var(--colors-yellow-dark-p3-1);--colors-yellow-p3-2: var(--colors-yellow-dark-p3-2);--colors-yellow-p3-3: var(--colors-yellow-dark-p3-3);--colors-yellow-p3-4: var(--colors-yellow-dark-p3-4);--colors-yellow-p3-5: var(--colors-yellow-dark-p3-5);--colors-yellow-p3-6: var(--colors-yellow-dark-p3-6);--colors-yellow-p3-7: var(--colors-yellow-dark-p3-7);--colors-yellow-p3-8: var(--colors-yellow-dark-p3-8);--colors-yellow-p3-9: var(--colors-yellow-dark-p3-9);--colors-yellow-p3-10: var(--colors-yellow-dark-p3-10);--colors-yellow-p3-11: var(--colors-yellow-dark-p3-11);--colors-yellow-p3-12: var(--colors-yellow-dark-p3-12);--colors-yellow-p3-a-1: var(--colors-yellow-dark-p3-a-1);--colors-yellow-p3-a-2: var(--colors-yellow-dark-p3-a-2);--colors-yellow-p3-a-3: var(--colors-yellow-dark-p3-a-3);--colors-yellow-p3-a-4: var(--colors-yellow-dark-p3-a-4);--colors-yellow-p3-a-5: var(--colors-yellow-dark-p3-a-5);--colors-yellow-p3-a-6: var(--colors-yellow-dark-p3-a-6);--colors-yellow-p3-a-7: var(--colors-yellow-dark-p3-a-7);--colors-yellow-p3-a-8: var(--colors-yellow-dark-p3-a-8);--colors-yellow-p3-a-9: var(--colors-yellow-dark-p3-a-9);--colors-yellow-p3-a-10: var(--colors-yellow-dark-p3-a-10);--colors-yellow-p3-a-11: var(--colors-yellow-dark-p3-a-11);--colors-yellow-p3-a-12: var(--colors-yellow-dark-p3-a-12);--colors-likec4-background-pattern: color-mix(in oklab, var(--mantine-color-dark-4) 70%, transparent 30%);--colors-likec4-mix-color: white;--colors-likec4-panel-bg: var(--mantine-color-dark-6);--colors-likec4-panel-action-bg: color-mix(in oklab, var(--mantine-color-dark-7) 70%, transparent 30%);--colors-likec4-panel-action-bg-hover: var(--mantine-color-dark-8);--colors-likec4-panel-action-warning-hover: var(--mantine-color-orange-5);--colors-likec4-panel-action-warning-bg: color-mix(in oklab, var(--mantine-color-orange-9) 10%, transparent 90%);--colors-likec4-panel-action-warning-bg-hover: color-mix(in oklab, var(--mantine-color-orange-9) 20%, transparent 80%);--colors-likec4-dropdown-bg: var(--mantine-color-dark-6);--colors-likec4-overlay-body: var(--mantine-color-dark-6);--colors-likec4-compare-manual: var(--mantine-color-orange-6);--colors-likec4-compare-manual-outline: color-mix(in oklab, var(--mantine-color-orange-6) 80%, transparent 20%) }[data-mantine-color-scheme=light]{--colors-likec4-background-pattern: var(--mantine-color-gray-4);--colors-likec4-mix-color: black;--colors-likec4-panel-border: var(--mantine-color-gray-2);--colors-likec4-overlay-backdrop: rgb(15 15 15);--colors-likec4-compare-manual: var(--mantine-color-orange-8);--colors-likec4-compare-manual-outline: var(--mantine-color-orange-8) }@keyframes indicatorOpacity{0%{opacity:.8;stroke-opacity:.8}to{opacity:.4;stroke-opacity:.4}}@keyframes xyedgeAnimated{0%{stroke-dashoffset:36}to{stroke-dashoffset:0}}}@layer recipes{@layer _base{.likec4-edge-label{background:var(--xy-edge-label-background-color);border:0px solid transparent;padding-block:var(--spacing-1);padding-inline:var(--spacing-1\\.5);gap:var(--spacing-0\\.5);border-radius:4px;font-family:var(--fonts-likec4-relation);display:flex;flex-direction:column;align-items:center;color:var(--xy-edge-label-color);width:max-content;max-width:var(--sizes-100\\%)}.likec4-edge-label .likec4-edge-label__step-number{padding:var(--spacing-1);background:color-mix(in oklab,var(--likec4-palette-relation-label-bg),var(--colors-likec4-mix-color) 10%);flex:0 0 auto;align-self:stretch;font-weight:600;font-size:14px;text-align:center;font-variant-numeric:tabular-nums;min-width:22px;border-top-left-radius:4px;border-bottom-left-radius:4px}.likec4-edge-label .likec4-edge-label__step-number:only-child{border-radius:4px;min-width:24px}[data-mantine-color-scheme=dark] :where([data-likec4-color=gray]) .likec4-edge-label .likec4-edge-label__step-number{background:color-mix(in oklab,var(--likec4-palette-relation-label-bg),var(--colors-likec4-mix-color) 15%)}.likec4-edge-label .likec4-edge-label__text{margin:var(--spacing-0);white-space-collapse:preserve-breaks;font-size:14px;line-height:1.2}.likec4-edge-label .likec4-edge-label__contents{display:contents}.likec4-edge-label .likec4-edge-label__contents:is(:empty,[data-empty]){display:none!important}.likec4-edge-label .likec4-edge-label__technology{text-align:center;white-space-collapse:preserve-breaks;font-size:11px;line-height:var(--line-heights-1);opacity:.75}.likec4-overlay{--_blur: 0px;--_level: 0;--_offset: 0px;--_inset: calc((1 + var(--_level) * .75) * var(--_offset));--_opacity: 0%;--_border-radius: 0px;margin:var(--spacing-0);background:var(--colors-likec4-overlay-border);border:var(--borders-transparent);inset:var(--spacing-0);padding:var(--spacing-0);outline:var(--borders-none);border-radius:var(--_border-radius);box-sizing:border-box;position:fixed;box-shadow:var(--shadows-xl);width:100vw;height:100vh;max-width:100vw;max-height:100vh}.likec4-overlay::backdrop{cursor:zoom-out}.likec4-overlay .likec4-overlay-body{border:var(--borders-transparent);background:var(--colors-likec4-overlay-body);overflow:hidden;position:relative;container-name:likec4-dialog;container-type:size;width:var(--sizes-100\\%);height:var(--sizes-100\\%)}.likec4-markdown-block{--text-fz: 1rem;--text-fz-sm: calc(var(--text-fz) * var(--mantine-scale, 1) / 1.125);--text-fz-md: calc(var(--text-fz) * var(--mantine-scale, 1));--typography-spacing: calc(.75 * var(--text-fz-md));--text-fw-headings: 600;--code-background: var(--mantine-color-gray-2);--code-color: var(--mantine-color-black);font-size:var(--text-fz-md);line-height:var(--mantine-line-height)}[data-mantine-color-scheme=dark] .likec4-markdown-block{--code-background: var(--mantine-color-dark-8);--code-color: var(--mantine-color-white);--color-border-default: #30363d;--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-success-fg: #3fb950;--color-success-emphasis: #238636}[data-mantine-color-scheme=light] .likec4-markdown-block{--color-border-default: #d0d7de;--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-danger-fg: #d1242f;--color-danger-emphasis: #cf222e;--color-attention-fg: #9a6700;--color-attention-emphasis: #9a6700;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-success-fg: #1a7f37;--color-success-emphasis: #1f883d}.likec4-markdown-block :where(hr){border:var(--borders-none);border-bottom:1px solid;border-color:var(--mantine-color-gray-3);margin-top:calc(var(--typography-spacing) / 2);margin-bottom:calc(var(--typography-spacing) / 2)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(hr){border-color:var(--mantine-color-dark-3)}.likec4-markdown-block :where(pre){margin:var(--spacing-0);padding-inline:var(--spacing-3);padding-block:var(--spacing-2);border-radius:var(--radii-sm);line-height:var(--mantine-line-height-xs);font-family:var(--mantine-font-family-monospace);font-size:var(--text-fz-sm);background-color:var(--code-background);color:var(--code-color);margin-top:var(--typography-spacing);margin-bottom:var(--typography-spacing);overflow-x:auto}.likec4-markdown-block :where(code){padding:1px 4px;border-radius:var(--radii-xs);line-height:var(--line-heights-1);font-family:var(--mantine-font-family-monospace);font-size:var(--text-fz-sm);background-color:var(--code-background);color:var(--code-color)}.likec4-markdown-block :where(pre code){padding:var(--spacing-0);border:0;border-radius:var(--radii-0);background-color:var(--colors-transparent);color:inherit}.likec4-markdown-block :where(blockquote){margin:var(--spacing-0);padding:var(--spacing-xs);border-radius:var(--mantine-radius-sm);font-size:var(--text-fz-md);background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(blockquote){background-color:var(--mantine-color-dark-5)}.likec4-markdown-block :where(blockquote):not(:first-child){margin-top:var(--typography-spacing)}.likec4-markdown-block :where(h1,h2,h3,h4,h5,h6){text-wrap:var(--mantine-heading-text-wrap);line-height:1.5;font-family:var(--mantine-font-family-headings);margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(a){text-decoration:none;font-size:var(--text-fz-md);color:var(--mantine-color-anchor);font-weight:500}.likec4-markdown-block :where(a):is(:hover,[data-hover]){text-decoration:underline}.likec4-markdown-block .markdown-alert{border-left:.25em solid var(--borderColor-default, var(--color-border-default));color:inherit;margin-bottom:calc(var(--typography-spacing) * 1.5);padding-left:1em;padding-right:.5em}.likec4-markdown-block .markdown-alert .markdown-alert-title{gap:var(--spacing-2);align-items:center;display:flex;font-size:var(--text-fz-md);font-weight:500;line-height:1.5;margin-bottom:.1em}.likec4-markdown-block .markdown-alert .markdown-alert-title svg{fill:currentColor;height:var(--text-fz-md)}.likec4-markdown-block .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--color-accent-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--color-success-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--color-done-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--color-attention-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--color-danger-fg)}.likec4-markdown-block .markdown-alert:last-child{margin-bottom:var(--spacing-0)!important}.likec4-markdown-block .markdown-alert.markdown-alert-note{border-left-color:var(--borderColor-accent-emphasis,var(--color-accent-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-tip{border-left-color:var(--borderColor-success-emphasis,var(--color-success-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-important{border-left-color:var(--borderColor-done-emphasis,var(--color-done-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-warning{border-left-color:var(--borderColor-attention-emphasis,var(--color-attention-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-caution{border-left-color:var(--borderColor-danger-emphasis,var(--color-danger-emphasis))}.likec4-markdown-block :is(h1){font-size:calc(1.476 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h2){font-size:calc(1.383 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h3){font-size:calc(1.296 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h4){font-size:calc(1.215 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h5){font-size:calc(1.138 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h6){font-size:calc(1.067 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :where(p){font-size:var(--text-fz-md);margin-top:var(--spacing-0);margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(strong){font-weight:500}.likec4-markdown-block :where(mark){font-size:var(--text-fz-md);background-color:var(--mantine-color-yellow-2);color:inherit}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.likec4-markdown-block :where(ul,ol):not([data-type=taskList]){padding-inline-start:var(--typography-spacing);list-style-position:inside;margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(table){border-collapse:collapse;caption-side:bottom;width:var(--sizes-100\\%);margin-bottom:var(--typography-spacing)}[data-mantine-color-scheme=light] .likec4-markdown-block :where(table){--table-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(table){--table-border-color: var(--mantine-color-dark-4)}.likec4-markdown-block :where(table) :where(th){padding:var(--typography-spacing);text-align:left;font-weight:700;font-size:var(--text-fz-sm)}.likec4-markdown-block :where(table) :where(td){padding:var(--typography-spacing);border-bottom:1px solid;border-color:var(--table-border-color);font-size:var(--text-fz-sm)}.likec4-markdown-block :where(table) :where(thead th){border-bottom:1px solid;border-color:var(--table-border-color)}.likec4-markdown-block :where(table) :where(tfoot th){border-top:1px solid;border-color:var(--table-border-color)}.likec4-markdown-block :where(table) :where(tr:last-of-type td){border-bottom:0}.likec4-markdown-block :where(table) :where(caption){font-size:var(--text-fz-sm);color:var(--mantine-color-dimmed);margin-top:calc(.5 * var(--typography-spacing) + 1px)}.likec4-markdown-block :first-child{margin-top:var(--spacing-0)}.likec4-markdown-block :last-child{margin-bottom:var(--spacing-0)}.likec4-markdown-block :is(h1,h2,h3,h4,h5,h6):not(:first-child){margin-top:var(--typography-spacing)}.likec4-markdown-block :where(img){max-width:var(--sizes-100\\%);margin-bottom:var(--typography-spacing)}.likec4-navigation-panel-icon{color:var(--colors-likec4-panel-action)}.likec4-navigation-panel-icon:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);opacity:.5}.likec4-navigation-panel-icon:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover)}.action-btn{--actionbtn-color: var(--likec4-palette-loContrast);--actionbtn-color-hovered: var(--likec4-palette-loContrast);--actionbtn-color-hovered-btn: var(--likec4-palette-hiContrast);--actionbtn-bg-idle: color-mix(in oklab , var(--likec4-palette-fill), transparent 99%);--actionbtn-bg-hovered: color-mix(in oklab , var(--likec4-palette-fill) 65%, var(--likec4-palette-stroke));--actionbtn-bg-hovered-btn: color-mix(in oklab , var(--likec4-palette-fill) 50%, var(--likec4-palette-stroke));--ai-bg: var(--actionbtn-bg-idle);background:var(--ai-bg);color:var(--actionbtn-color);opacity:.75}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .action-btn{--ai-bg: var(--actionbtn-bg-hovered);opacity:1;color:var(--actionbtn-color-hovered)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .action-btn{pointer-events:all;cursor:pointer}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .action-btn{display:none}:where([data-likec4-zoom-small=true]) .action-btn{display:none}.action-btn *{pointer-events:none}.action-btn:is(:hover,[data-hover]){--ai-bg: var(--actionbtn-bg-hovered-btn);opacity:1;color:var(--actionbtn-color-hovered-btn)}.likec4-compound-node{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l - .05) a b);--_border-width: 3px;--_border-radius: 6px;--_compound-transparency: 100%;--_border-transparency: 100%;--_indicator-spacing: calc(var(--_border-width) + 1px);--_compound-color: var(--likec4-palette-loContrast);padding:var(--spacing-0);margin:var(--spacing-0);border-style:solid;border-width:var(--_border-width);border-radius:var(--_border-radius);position:relative;pointer-events:none;background-clip:padding-box;-webkit-background-clip:padding-box;box-sizing:border-box;color:var(--_compound-color);width:var(--sizes-100\\%);height:var(--sizes-100\\%)}[data-mantine-color-scheme=dark] .likec4-compound-node{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l + .2) a b)}.likec4-compound-node:before{border-style:solid;border-width:calc(var(--_border-width) + 1px);border-radius:calc(var(--_border-radius) + 4px);border-color:var(--likec4-palette-outline);position:absolute;content:" ";pointer-events:none;display:none;animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity;animation-play-state:paused;top:calc(-1 * var(--_indicator-spacing));left:calc(-1 * var(--_indicator-spacing));width:calc(100% + 2 * var(--_indicator-spacing));height:calc(100% + 2 * var(--_indicator-spacing))}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-compound-node:before{display:block;animation-play-state:running}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node:before{display:block;animation-play-state:running}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-compound-node:before{animation-play-state:paused}.likec4-compound-node:has(.likec4-compound-navigation) .likec4-compound-title-container{padding-left:24px}.likec4-compound-node .action-btn{--actionbtn-color: var(--_compound-color);--actionbtn-color-hovered: var(--_compound-color);--actionbtn-color-hovered-btn: color-mix(in oklab, var(--_compound-color) 80%, #fff);opacity:.6}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-compound-node .action-btn{transition:all var(--durations-fast) var(--easings-in-out)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-compound-node .action-btn{opacity:.75}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node .action-btn{opacity:.75}.likec4-compound-node .action-btn:is(:hover,[data-hover]){opacity:1}.likec4-compound-node .likec4-compound-title-container{gap:var(--spacing-1\\.5);position:absolute;display:flex;align-items:center;left:var(--spacing-2\\.5);top:var(--spacing-0\\.5);right:30px;width:auto;min-height:30px}:where(.react-flow__node.draggable) .likec4-compound-node .likec4-compound-title-container{pointer-events:all;cursor:grab}.likec4-compound-node .likec4-compound-title{flex:1 1 0%;font-family:var(--fonts-likec4-compound);font-weight:600;font-size:15px;text-transform:uppercase;letter-spacing:.25px;line-height:var(--line-heights-1);color:var(--_compound-color)}.likec4-compound-node .likec4-compound-icon{flex:0 0 20px;display:flex;align-items:center;justify-content:center;mix-blend-mode:hard-light;height:20px;width:20px}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon{mix-blend-mode:normal}.likec4-compound-node .likec4-compound-icon svg,.likec4-compound-node .likec4-compound-icon img{pointer-events:none;filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%)) drop-shadow(0 1px 8px rgb(0 0 0 / 8%)) drop-shadow(1px 1px 16px rgb(0 0 0 / 3%));width:var(--sizes-100\\%);height:auto;max-height:var(--sizes-100\\%)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon img{filter:none}.likec4-compound-node .likec4-compound-icon img{object-fit:contain}.likec4-compound-node .likec4-compound-navigation{position:absolute;top:var(--spacing-1);left:var(--spacing-0\\.5)}:where([data-likec4-zoom-small=true]) .likec4-compound-node .likec4-compound-navigation{display:none}.likec4-compound-node .likec4-compound-details{position:absolute;top:var(--spacing-0\\.5);right:var(--spacing-0\\.5)}:where([data-likec4-zoom-small=true]) .likec4-compound-node .likec4-compound-details{display:none}.likec4-edge-action-btn{--ai-bg: transparent;--ai-hover: color-mix(in oklab , var(--xy-edge-label-background-color), var(--colors-likec4-mix-color) 10%);--ai-size: var(--ai-size-sm);--ai-radius: var(--radii-sm);transition:all var(--durations-fast) var(--easings-in-out);pointer-events:all;color:var(--xy-edge-label-color);cursor:pointer;opacity:.75;translate:var(--translate-x) var(--translate-y)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge-action-btn{--ai-bg: var(--xy-edge-label-background-color);opacity:1}.likec4-edge-action-btn .tabler-icon{stroke-width:2;width:80%;height:80%}.likec4-edge-action-btn:is(:hover,[data-hover]){--translate-y: 2px;scale:1.15}.likec4-edge-action-btn:is(:active,[data-active]){--translate-y: -1px;scale:.9}.likec4-element-node-data{margin:0 auto;flex:1 1 0%;overflow:hidden;gap:var(--spacing-3);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:row;pointer-events:none;text-align:center;height:fit-content;width:fit-content;max-height:var(--sizes-100\\%);max-width:var(--sizes-100\\%);padding-top:var(--likec4-spacing);padding-bottom:var(--likec4-spacing);padding-left:calc(var(--likec4-spacing) + 8px);padding-right:calc(var(--likec4-spacing) + 8px)}:where([data-likec4-shape-size=xs]) .likec4-element-node-data{--likec4-icon-size: 24px}:where([data-likec4-shape-size=sm]) .likec4-element-node-data{--likec4-icon-size: 36px}:where([data-likec4-shape-size=md]) .likec4-element-node-data{--likec4-icon-size: 60px}:where([data-likec4-shape-size=lg]) .likec4-element-node-data{--likec4-icon-size: 82px;gap:var(--spacing-4)}:where([data-likec4-shape-size=xl]) .likec4-element-node-data{--likec4-icon-size: 90px;gap:var(--spacing-4)}.likec4-element-node-data:has([data-likec4-icon]){gap:var(--spacing-4);text-align:left}.likec4-element-node-data:has([data-likec4-icon]) .likec4-element-node-content{align-items:flex-start;min-width:calc(50% + var(--likec4-icon-size))}:where([data-likec4-shape=queue]) .likec4-element-node-data{padding-left:46px;padding-right:16px}:where([data-likec4-shape=mobile]) .likec4-element-node-data{padding-left:46px;padding-right:16px}:where([data-likec4-shape=cylinder]) .likec4-element-node-data{padding-top:30px}:where([data-likec4-shape=storage]) .likec4-element-node-data{padding-top:30px}:where([data-likec4-shape=browser]) .likec4-element-node-data{padding-top:32px;padding-bottom:28px}.likec4-element-node-data [data-likec4-icon]{flex:0 0 var(--likec4-icon-size, 48px);display:flex;align-self:flex-start;align-items:center;justify-content:center;mix-blend-mode:hard-light;height:var(--likec4-icon-size, 48px);width:var(--likec4-icon-size, 48px)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon]{mix-blend-mode:normal}.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{pointer-events:none;filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%));width:var(--sizes-100\\%);height:auto;max-height:var(--sizes-100\\%)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon] svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon] img{filter:none}.likec4-element-node-data [data-likec4-icon] img{object-fit:contain}.likec4-element-node-data .likec4-element-node-content{flex:0 1 auto;overflow:hidden;gap:var(--spacing-2);display:flex;flex-direction:column;align-items:stretch;justify-content:center;flex-wrap:nowrap;height:fit-content;width:fit-content;max-height:var(--sizes-100\\%);max-width:var(--sizes-100\\%)}.likec4-element-node-data .likec4-element-node-content:has([data-likec4-node-description]):has([data-likec4-node-technology]){gap:var(--spacing-1\\.5)}.likec4-element-node-data [data-likec4-node-title]{flex:0 0 auto;font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:500;font-size:var(--likec4-text-size);line-height:1.15;text-wrap-style:balance;white-space:preserve-breaks;text-align:var(__text-align);color:var(--likec4-palette-hiContrast)}.likec4-element-node-data [data-likec4-node-description]{overflow:hidden;flex-grow:0;flex-shrink:1;--text-fz: calc(var(--likec4-text-size) * .74);font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:400;font-size:calc(var(--likec4-text-size) * .74);line-height:1.3;text-wrap-style:pretty;color:var(--likec4-palette-loContrast);text-align:var(__text-align);text-overflow:ellipsis}:where([data-likec4-shape-size=xs]) .likec4-element-node-data [data-likec4-node-description]{display:none}:where([data-likec4-zoom-small=true]) .likec4-element-node-data [data-likec4-node-description]{display:none}.likec4-element-node-data [data-likec4-node-description] a{pointer-events:all}.likec4-element-node-data [data-likec4-node-description] .markdown-alert{mix-blend-mode:screen}.likec4-element-node-data [data-likec4-node-technology]{flex:0 0 auto;text-wrap:balance;--text-fz: calc(var(--likec4-text-size) * .74);font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:400;font-size:calc(var(--likec4-text-size) * .635);line-height:1.125;text-wrap-style:pretty;color:var(--likec4-palette-loContrast);text-align:var(__text-align);opacity:.92}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-node-data [data-likec4-node-technology]{opacity:1}:where([data-likec4-shape-size=xs]) .likec4-element-node-data [data-likec4-node-technology]{display:none}:where([data-likec4-shape-size=sm]) .likec4-element-node-data [data-likec4-node-technology]{display:none}:where([data-likec4-zoom-small=true]) .likec4-element-node-data [data-likec4-node-technology]{display:none}.likec4-element-shape{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l - .05) a b);--likec4-outline-size: 4px;overflow:visible;position:absolute;pointer-events:none;top:var(--spacing-0);left:var(--spacing-0);width:var(--sizes-100\\%);height:var(--sizes-100\\%)}[data-mantine-color-scheme=dark] .likec4-element-shape{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l + .2) a b)}.likec4-element-shape .likec4-shape-outline{visibility:hidden;animation-play-state:paused;pointer-events:none}:where([data-likec4-zoom-small=true]) .likec4-element-shape .likec4-shape-outline{visibility:hidden}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}.group:is(:focus-visible,[data-focus-visible]) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape .likec4-shape-outline{animation-play-state:paused}.likec4-tag{transition:all var(--durations-fast) var(--easings-in-out);gap:1px;padding-inline:var(--spacing-1);padding-block:var(--spacing-0);pointer-events:all;display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-sizes-xs);cursor:default;font-family:var(--fonts-likec4);font-weight:700;border:var(--borders-none);border-radius:3px;color:var(--colors-likec4-tag-text);background-color:var(--colors-likec4-tag-bg)}.likec4-tag:is(:hover,[data-hover]){background-color:var(--colors-likec4-tag-bg-hover)}.likec4-tag{white-space:nowrap;min-width:40px;width:min-content}@media screen and (min-width:36rem){.likec4-markdown-block .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--fgColor-accent,var(--color-accent-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--fgColor-success,var(--color-success-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--fgColor-done,var(--color-done-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--fgColor-attention,var(--color-attention-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--fgColor-danger,var(--color-danger-fg))}.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{filter:drop-shadow(0 1px 8px rgb(0 0 0 / 8%))}}@media screen and (min-width:48rem){.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{filter:drop-shadow(1px 1px 16px rgb(0 0 0 / 3%))}}@media print{.action-btn{display:none}.likec4-compound-node .likec4-compound-icon{mix-blend-mode:normal!important}.likec4-compound-node .action-btn,.likec4-compound-node .likec4-compound-navigation,.likec4-compound-node .likec4-compound-details,.likec4-edge-action-btn{display:none}}}.likec4-edge-label--pointerEvents_all{pointer-events:all}.likec4-edge-label--cursor_default{cursor:default}.likec4-edge-label--cursor_pointer{cursor:pointer}.likec4-edge-label--isStepEdge_true{padding:var(--spacing-0);gap:var(--spacing-1);flex-direction:row}.likec4-edge-label--isStepEdge_true .likec4-edge-label__contents{gap:var(--spacing-0\\.5);display:flex;flex-direction:column;align-items:center;padding-top:var(--spacing-0\\.5);padding-right:var(--spacing-1);padding-bottom:var(--spacing-1)}.likec4-edge-label--isStepEdge_true .likec4-edge-label__text{padding-block:var(--spacing-0\\.5);padding-right:var(--spacing-0\\.5)}.likec4-edge-label--pointerEvents_none{pointer-events:none}.likec4-overlay--withBackdrop_true::backdrop{background:color-mix(in oklab,var(--colors-likec4-overlay-backdrop) var(--_opacity),transparent);backdrop-filter:blur(var(--_blur));-webkit-backdrop-filter:blur(var(--_blur))}.likec4-overlay--fullscreen_true{inset:var(--spacing-0);padding:var(--spacing-0)}.likec4-overlay--withBackdrop_false::backdrop{display:none}.likec4-markdown-block--value_plaintext :where(p){white-space:preserve-breaks}.likec4-markdown-block--uselikec4palette_true{--code-background: color-mix(in oklab , var(--likec4-palette-stroke) 70%, transparent);--code-color: var(--likec4-palette-loContrast);--typography-spacing: calc(.5 * var(--text-fz-md))}.likec4-markdown-block--uselikec4palette_true :where(blockquote){padding:var(--spacing-xxs);--mix-backgroundColor: color-mix(in srgb, var(--likec4-palette-stroke) 65%, transparent);background-color:var(--mix-backgroundColor, var(--likec4-palette-stroke))}.likec4-markdown-block--uselikec4palette_true :where(hr){--mix-borderColor: color-mix(in srgb, var(--likec4-palette-stroke) 85%, transparent);border-color:var(--mix-borderColor, var(--likec4-palette-stroke))}.likec4-markdown-block--uselikec4palette_true :where(a){--mix-color: color-mix(in srgb, var(--likec4-palette-fill) 45%, transparent);color:var(--mix-color, var(--likec4-palette-fill));mix-blend-mode:difference}.likec4-markdown-block--uselikec4palette_true :where(strong){color:color-mix(in oklab,var(--likec4-palette-hiContrast) 50%,var(--likec4-palette-loContrast))}.likec4-navigation-panel-icon--variant_default{background-color:var(--colors-transparent)}.likec4-navigation-panel-icon--variant_default:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.likec4-navigation-panel-icon--variant_filled{background-color:var(--colors-likec4-panel-action-bg)}.likec4-navigation-panel-icon--variant_filled:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.likec4-navigation-panel-icon--type_warning{color:var(--colors-likec4-panel-action-warning)}.likec4-navigation-panel-icon--type_warning:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-warning-hover)}.action-btn--size_md{--ai-size: var(--ai-size-md)}.action-btn--radius_md{--ai-radius: var(--mantine-radius-md)}.action-btn--variant_transparent{--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}.action-btn--variant_filled{box-shadow:1px 1px 3px 0 transparent}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .action-btn--variant_filled{box-shadow:1px 1px 3px #0003}.likec4-root:is([data-likec4-reduced-graphics]) .action-btn--variant_filled{box-shadow:var(--shadows-none)}.action-btn--size_sm{--ai-size: var(--ai-size-sm)}.action-btn--radius_sm{--ai-radius: var(--mantine-radius-sm)}.likec4-compound-node--borderStyle_dashed{border-style:dashed}.likec4-compound-node--borderStyle_none{--_indicator-spacing: calc(var(--_border-width) * 2);border-color:var(--colors-transparent)!important;background-clip:border-box!important;-webkit-background-clip:border-box!important}.likec4-compound-node--isTransparent_false{border-color:var(--likec4-palette-stroke);background-color:var(--likec4-palette-fill)}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-compound-node--isTransparent_false{box-shadow:0 4px 10px .5px #0000001a,0 2px 2px -1px #0006}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node--isTransparent_false{box-shadow:var(--shadows-none)}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-compound-node--isTransparent_false{box-shadow:var(--shadows-none)!important}.likec4-compound-node--isTransparent_true{border-color:color-mix(in oklab,var(--likec4-palette-stroke) var(--_border-transparency),transparent);background-color:color-mix(in oklab,var(--likec4-palette-fill) var(--_compound-transparency),transparent)}.likec4-compound-node--inverseColor_true{--_compound-color: var(--likec4-palette-stroke)}[data-mantine-color-scheme=dark] .likec4-compound-node--inverseColor_true{--_compound-color: color-mix(in oklab, var(--likec4-palette-loContrast) 60%, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .likec4-compound-node--inverseColor_true .action-btn{--actionbtn-color-hovered-btn: var(--likec4-palette-loContrast)}[data-mantine-color-scheme=light] .likec4-compound-node--inverseColor_true .action-btn{--actionbtn-color: var(--likec4-palette-stroke);--actionbtn-color-hovered: var(--likec4-palette-stroke);--actionbtn-color-hovered-btn: var(--likec4-palette-hiContrast);--actionbtn-bg-hovered: var(--likec4-palette-fill)/50;--actionbtn-bg-hovered-btn: var(--likec4-palette-fill)}.likec4-compound-node--borderStyle_solid{border-style:solid}.likec4-compound-node--borderStyle_dotted{border-style:dotted}.likec4-element-shape--shapetype_html{border-radius:6px;transition:background-color .12s linear,box-shadow .13s var(--easings-in-out);background-color:var(--likec4-palette-fill);box-shadow:0 2px 1px #00000036,0 1px 1px color-mix(in oklab,var(--likec4-palette-stroke) 40%,transparent),0 5px 3px #0000001a;transition-delay:0ms}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html{transition:none}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html{box-shadow:#26394df2 0 20px 30px -10px}[data-mantine-color-scheme=dark] :where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html{box-shadow:#0a0b10e5 0 20px 30px -10px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}.likec4-element-shape--shapetype_html .likec4-shape-multiple{border-radius:6px;transition:all var(--durations-fast) var(--easings-in-out);position:absolute;content:" ";background-color:var(--likec4-palette-fill);z-index:var(--z-index--1);filter:brightness(.5)!important;visibility:visible;top:16px;left:16px;width:calc(100% - 6px);height:calc(100% - 6px)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{transform:translate(-14px,-14px)}.likec4-element-shape--shapetype_html .likec4-shape-outline{border-style:solid;border-width:var(--likec4-outline-size);border-radius:11px;border-color:var(--likec4-palette-outline);position:absolute;content:" ";animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity;top:calc(-1 * var(--likec4-outline-size) - 1px);left:calc(-1 * var(--likec4-outline-size) - 1px);width:calc(100% + 2 * var(--likec4-outline-size) + 2px);height:calc(100% + 2 * var(--likec4-outline-size) + 2px)}.likec4-element-shape--shapetype_svg{transition:fill .12s linear,filter .13s var(--easings-in-out);fill:var(--likec4-palette-fill);stroke:var(--likec4-palette-stroke);transition-delay:0ms;filter:drop-shadow(0 2px 1px rgba(0,0,0,.21)) drop-shadow(0 1px 1px color-mix(in oklab,var(--likec4-palette-stroke) 40%,transparent)) drop-shadow(0 5px 3px rgba(0,0,0,.1))}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_svg{filter:drop-shadow(0 2px 1px rgba(0,0,0,.12)) drop-shadow(0px 4px 2px rgba(0,0,0,.12)) drop-shadow(0px 8px 4px rgba(0,0,0,.12)) drop-shadow(0px 16px 8px rgba(0,0,0,.1)) drop-shadow(0px 32px 16px rgba(0,0,0,.09))}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_svg{filter:none}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_svg{filter:none}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_svg{filter:none}.likec4-element-shape--shapetype_svg [data-likec4-fill=fill]{fill:var(--likec4-palette-fill)}.likec4-element-shape--shapetype_svg [data-likec4-fill=stroke]{fill:var(--likec4-palette-stroke)}.likec4-element-shape--shapetype_svg [data-likec4-fill=mix-stroke]{fill:color-mix(in oklab,var(--likec4-palette-stroke) 90%,var(--likec4-palette-fill))}.likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transition:all var(--durations-fast) var(--easings-in-out);transform-origin:50% 50%;transform:translate(14px,14px) perspective(200px) translateZ(-4px);filter:brightness(.5)!important;stroke:var(--colors-none)}:where([data-likec4-shape=queue]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:75% 25%}:where([data-likec4-shape=cylinder]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:50% 100%}:where([data-likec4-shape=storage]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:50% 100%}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform:translate(2px,2px) perspective(200px) translateZ(-4px)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}.likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]) [data-likec4-fill=mix-stroke]{fill:var(--likec4-palette-fill)}.likec4-element-shape--shapetype_svg .likec4-shape-outline{stroke:var(--likec4-palette-outline);fill:var(--colors-none);stroke-width:3;stroke-opacity:.8;animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity}.likec4-tag--autoTextColor_false>span{color:var(--colors-likec4-tag-text)}.likec4-tag--autoTextColor_false>span:first-child{opacity:.65}.likec4-tag--autoTextColor_true>span{background:inherit;color:var(--colors-transparent);filter:invert(1) grayscale(1) brightness(1.3) contrast(1000);background-clip:text;-webkit-background-clip:text;mix-blend-mode:plus-lighter}.hover\\:likec4-tag--autoTextColor_true:is(:hover,[data-hover])>span{background:inherit;color:var(--colors-transparent);filter:invert(1) grayscale(1) brightness(1.3) contrast(1000);background-clip:text;-webkit-background-clip:text;mix-blend-mode:plus-lighter}.hover\\:likec4-tag--autoTextColor_false:is(:hover,[data-hover])>span{color:var(--colors-likec4-tag-text)}.hover\\:likec4-tag--autoTextColor_false:is(:hover,[data-hover])>span:first-child{opacity:.65}@media screen and (min-width:48rem){.likec4-overlay--fullscreen_false{--_border-radius: 6px;--_offset: 1rem;inset:var(--_inset) var(--_inset) var(--_offset) var(--_inset);padding:var(--spacing-1\\.5);border-radius:calc(var(--_border-radius) - 2px);width:calc(100vw - 2 * var(--_inset));height:calc(100vh - var(--_offset) - var(--_inset))}}@media screen and (min-width:62rem){.likec4-overlay--fullscreen_false{--_offset: 1rem}}@media screen and (min-width:75rem){.likec4-overlay--fullscreen_false{--_offset: 2rem}}@media screen and (min-width:88rem){.likec4-overlay--fullscreen_false{--_offset: 4rem}}@media print{.likec4-markdown-block--uselikec4palette_true :where(a){mix-blend-mode:normal!important}}@media print{.likec4-tag--autoTextColor_true>span{mix-blend-mode:normal!important}}@media print{.hover\\:likec4-tag--autoTextColor_true:is(:hover,[data-hover])>span{mix-blend-mode:normal!important}}}@layer recipes.slots{@layer _base{.likec4-navlink__root{border-radius:var(--radii-sm);padding-inline:var(--spacing-xs);padding-block:var(--spacing-xxs)}.likec4-navlink__root:is(:hover,[data-hover]):not([data-active]){background-color:var(--colors-mantine-colors-gray\\[1\\])}[data-mantine-color-scheme=dark] .likec4-navlink__root:is(:hover,[data-hover]):not([data-active]){background-color:var(--colors-mantine-colors-dark\\[5\\])}.likec4-navlink__body{gap:var(--spacing-0\\.5);display:flex;flex-direction:column}.likec4-navlink__section:where([data-position=left]){margin-inline-end:var(--spacing-xxs)}.likec4-navlink__label{display:block;font-size:var(--font-sizes-sm);font-weight:500;line-height:1.2}.likec4-navlink__description{display:block;font-size:var(--font-sizes-xxs);line-height:1.2}.likec4-edge__path{fill:var(--colors-none);stroke-dashoffset:0}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge__path{transition:stroke .13s ease-out,stroke-width .13s ease-out;animation-duration:.8s;animation-iteration-count:infinite;animation-timing-function:linear;animation-fill-mode:both;animation-name:xyedgeAnimated;animation-play-state:paused}:where([data-edge-dir=back]) .likec4-edge__path{animation-direction:reverse}:where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]) .likec4-edge__path{animation-play-state:paused}:where([data-likec4-zoom-small=true]) .likec4-edge__path{animation-name:none}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-edge__path{stroke-dasharray:none!important;animation-play-state:paused}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge__path{animation-play-state:running;animation-delay:.45s}.likec4-root:not([data-likec4-reduced-graphics]) :where(.selected,[data-edge-active=true],[data-edge-animated=true]) .likec4-edge__path{animation-play-state:running;animation-delay:0ms}.likec4-edge__pathBg{pointer-events:none;fill:var(--colors-none);stroke-width:calc(var(--xy-edge-stroke-width) + 2);stroke-opacity:.08}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge__pathBg{--transition-prop: stroke-width, stroke-opacity;transition-property:stroke-width,stroke-opacity;--transition-duration: var(--durations-fast);transition-duration:var(--durations-fast);--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge__pathBg{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out);stroke-width:calc(var(--xy-edge-stroke-width) + 4);stroke-opacity:.2}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-edge__pathBg{stroke-width:calc(var(--xy-edge-stroke-width) + 6);stroke-opacity:.25}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) :where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-edge__pathBg{stroke-opacity:.4}.likec4-edge__markersCtx{fill:var(--xy-edge-stroke);stroke:var(--xy-edge-stroke)}.likec4-edge__middlePoint{visibility:hidden;offset-distance:50%;cx:0;cy:0;r:4px;pointer-events:none}}.likec4-navlink__label--truncateLabel_true,.likec4-navlink__description--truncateLabel_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:var(--sizes-100\\%)}}@layer utilities{@layer compositions{.layerStyle_likec4\\.panel{padding:var(--spacing-1);border:1px solid var(--colors-likec4-panel-border);border-radius:var(--radii-0);background-color:var(--colors-likec4-panel-bg)}.layerStyle_likec4\\.dropdown{padding:var(--spacing-2);border:1px solid var(--colors-likec4-dropdown-border);border-radius:var(--radii-md);background-color:var(--colors-likec4-dropdown-bg);box-shadow:var(--shadows-lg)}.layerStyle_likec4\\.tag{border:var(--borders-none);border-radius:3px;color:var(--colors-likec4-tag-text);background-color:var(--colors-likec4-tag-bg)}.layerStyle_likec4\\.tag:is(:hover,[data-hover]){background-color:var(--colors-likec4-tag-bg-hover)}.textStyle_xs{font-size:.75rem;line-height:1rem}.layerStyle_likec4\\.panel\\.action{border:var(--borders-transparent);padding-inline:var(--spacing-xxs);padding-block:var(--spacing-xxs);border-radius:var(--radii-sm);color:var(--colors-likec4-panel-action);cursor:pointer}.layerStyle_likec4\\.panel\\.action:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);cursor:not-allowed}.layerStyle_likec4\\.panel\\.action:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover);background-color:var(--colors-likec4-panel-action-bg-hover)}.layerStyle_likec4\\.panel\\.action\\.filled{border:var(--borders-transparent);padding-inline:var(--spacing-xxs);padding-block:var(--spacing-xxs);border-radius:var(--radii-sm);color:var(--colors-likec4-panel-action);cursor:pointer;background-color:var(--colors-likec4-panel-action-bg)}.layerStyle_likec4\\.panel\\.action\\.filled:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);cursor:not-allowed;background-color:var(--colors-likec4-panel-action-bg)}.layerStyle_likec4\\.panel\\.action\\.filled:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover);background-color:var(--colors-likec4-panel-action-bg-hover)}@container (min-width: 40rem){.layerStyle_likec4\\.panel{border-radius:var(--radii-md);padding-inline:var(--spacing-2);box-shadow:var(--shadows-lg)}}}.--mantine-cursor-pointer_pointer{--mantine-cursor-pointer: pointer}.--thickness_1px{--thickness: 1px}.--bleed-x_token\\(spacing\\.2\\,_2\\){--bleed-x: var(--spacing-2, 2)}.--bleed-y_token\\(spacing\\.2\\,_2\\){--bleed-y: var(--spacing-2, 2)}.--text-fz_\\{fontSizes\\.sm\\}{--text-fz: var(--font-sizes-sm)}.--view-title-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}{--view-title-color: var(--colors-mantine-colors-dark\\[1\\])}.--likec4-icon-size_24px{--likec4-icon-size: 24px}.--ti-size_var\\(--likec4-icon-size\\,_24px\\){--ti-size: var(--likec4-icon-size, 24px)}.--_color_var\\(--likec4-palette-stroke\\){--_color: var(--likec4-palette-stroke)}.--ai-radius_0px{--ai-radius: 0px}.--badge-radius_2px{--badge-radius: 2px}.--badge-fz_9\\.5px{--badge-fz: 9.5px}.--badge-padding-x_3px{--badge-padding-x: 3px}.--badge-height_13\\.5px{--badge-height: 13.5px}.--badge-lh_1{--badge-lh: 1}.--badge-bg_var\\(--likec4-palette-fill\\){--badge-bg: var(--likec4-palette-fill)}.--badge-color_var\\(--likec4-palette-hiContrast\\){--badge-color: var(--likec4-palette-hiContrast)}.bg_dots{background:dots}.bg_transparent{background:var(--colors-transparent)}.m_0{margin:var(--spacing-0)}.p_0{padding:var(--spacing-0)}.bg_likec4\\.overlay\\.body{background:var(--colors-likec4-overlay-body)}.p_xl{padding:var(--spacing-xl)}.bd_1px_solid{border:1px solid}.bg_mantine\\.colors\\.default{background:var(--colors-mantine-colors-default)}.p_\\[4px_7px\\]{padding:4px 7px}.bg_\\[transparent\\]{background:var(--colors-transparent)}.p_1{padding:var(--spacing-1)}.p_4{padding:var(--spacing-4)}.bg_white{background:#fff}.bd_default{border:var(--borders-default)}.p_0\\.5{padding:var(--spacing-0\\.5)}.m_xs{margin:var(--spacing-xs)}.p_md{padding:var(--spacing-md)}.p_1\\.5{padding:var(--spacing-1\\.5)}.p_8{padding:var(--spacing-8)}.p_xxs{padding:var(--spacing-xxs)}.p_\\[4px_6px\\]{padding:4px 6px}.bg_mantine\\.colors\\.gray\\[2\\]{background:var(--colors-mantine-colors-gray\\[2\\])}.bg_mantine\\.colors\\.gray\\[3\\]{background:var(--colors-mantine-colors-gray\\[3\\])}.bd_2px_solid{border:2px solid}.inset_0{inset:var(--spacing-0)}.bd_transparent{border:var(--borders-transparent)}.bd_none{border:var(--borders-none)}.bg_\\[_linear-gradient\\(180deg\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_60\\%\\,_transparent\\)\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_20\\%\\,_transparent\\)_8px\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_14\\%\\,_transparent\\)_20px\\,_transparent_80px_\\)\\,_linear-gradient\\(180deg\\,_var\\(--likec4-palette-fill\\)\\,_var\\(--likec4-palette-fill\\)_4px\\,_transparent_4px\\)\\,_\\{colors\\.likec4\\.overlay\\.body\\}_\\]{background:linear-gradient(180deg,color-mix(in oklab,var(--likec4-palette-fill) 60%,transparent),color-mix(in oklab,var(--likec4-palette-fill) 20%,transparent) 8px,color-mix(in oklab,var(--likec4-palette-fill) 14%,transparent) 20px,transparent 80px),linear-gradient(180deg,var(--likec4-palette-fill),var(--likec4-palette-fill) 4px,transparent 4px),var(--colors-likec4-overlay-body)}.bg_mantine\\.colors\\.body{background:var(--colors-mantine-colors-body)}.p_\\[10px_8px\\]{padding:10px 8px}.bd_1px_dashed{border:1px dashed}.bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.p_\\[6px_8px\\]{padding:6px 8px}.bd_3\\.5px_solid{border:3.5px solid}.p_xs{padding:var(--spacing-xs)}.p_\\[4px_8px\\]{padding:4px 8px}.p_\\[1px_4px\\]{padding:1px 4px}.p_\\[3px_6px\\]{padding:3px 6px}.bg_var\\(--likec4-palette-fill\\)\\/75{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 75%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}.bd_1px_solid_\\{colors\\.mantine\\.colors\\.defaultBorder\\}{border:1px solid var(--colors-mantine-colors-default-border)}.p_\\[1px_5px\\]{padding:1px 5px}.bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.p_\\[6px_2px_0_2px\\]{padding:6px 2px 0}.p_\\[0_4px_5px_4px\\]{padding:0 4px 5px}.bg_mantine\\.colors\\.dark\\[9\\]\\/30{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[9\\]) 30%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[9\\]))}.bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.p_\\[12px_8px_12px_14px\\]{padding:12px 8px 12px 14px}.bd_2px_dashed{border:2px dashed}.p_2{padding:var(--spacing-2)}.bd_3px_dashed{border:3px dashed}.gap_20{gap:20px}.bdr_sm{border-radius:var(--radii-sm)}.bd-w_3{border-width:3px}.bd-c_likec4\\.overlay\\.border{border-color:var(--colors-likec4-overlay-border)}.ring_none{outline:var(--borders-none)}.gap_lg{gap:var(--spacing-lg)}.gap_md{gap:var(--spacing-md)}.gap_sm{gap:var(--spacing-sm)}.flex_1{flex:1 1 0%}.transition_fast{transition:all var(--durations-fast) var(--easings-in-out)}.td_none{text-decoration:none}.bd-c_mantine\\.colors\\.defaultBorder{border-color:var(--colors-mantine-colors-default-border)}.gap_xs{gap:var(--spacing-xs)}.gap_xxs{gap:var(--spacing-xxs)}.gap_1{gap:var(--spacing-1)}.ov_hidden{overflow:hidden}.gap_0\\.5{gap:var(--spacing-0\\.5)}.gap_\\[4px\\]{gap:4px}.px_xs{padding-inline:var(--spacing-xs)}.py_xxs{padding-block:var(--spacing-xxs)}.px_sm{padding-inline:var(--spacing-sm)}.gap_8px{gap:8px}.gap_1\\.5{gap:var(--spacing-1\\.5)}.bdr_\\[4px\\]{border-radius:4px}.px_1\\.5{padding-inline:var(--spacing-1\\.5)}.gap_3{gap:var(--spacing-3)}.mx_calc\\(var\\(--bleed-x\\,_0\\)_\\*_-1\\){margin-inline:calc(var(--bleed-x, 0) * -1)}.my_calc\\(var\\(--bleed-y\\,_0\\)_\\*_-1\\){margin-block:calc(var(--bleed-y, 0) * -1)}.py_2\\.5{padding-block:var(--spacing-2\\.5)}.px_2{padding-inline:var(--spacing-2)}.gap_2{gap:var(--spacing-2)}.offset_2{offset:2px}.offset_10{offset:10px}.py_1\\.5{padding-block:var(--spacing-1\\.5)}.bd-l_2px_dotted{border-left:2px dotted}.px_1{padding-inline:var(--spacing-1)}.py_0\\.5{padding-block:var(--spacing-0\\.5)}.bdr_\\[2px\\]{border-radius:2px}.bd-w_4{border-width:4px}.px_4{padding-inline:var(--spacing-4)}.py_1{padding-block:var(--spacing-1)}.gap_\\[1px\\]{gap:1px}.ov_auto{overflow:auto}.ovs-b_contain{overscroll-behavior:contain}.ov_visible{overflow:visible}.px_xxs{padding-inline:var(--spacing-xxs)}.my_10{margin-block:var(--spacing-10)}.flex_1_1_40\\%{flex:1 1 40%}.bd-c_mantine\\.colors\\.gray\\[4\\]{border-color:var(--colors-mantine-colors-gray\\[4\\])}.bd-c_mantine\\.colors\\.gray\\[5\\]{border-color:var(--colors-mantine-colors-gray\\[5\\])}.bdr_3{border-radius:3px}.bd-c_mantine\\.colors\\.orange\\[6\\]{border-color:var(--colors-mantine-colors-orange\\[6\\])}.tw_pretty{text-wrap:pretty}.flex_0{flex:0}.flex_0_0_40px{flex:0 0 40px}.gap_\\[24px_20px\\]{gap:24px 20px}.bd-c_mantine\\.colors\\.dark\\[3\\]{border-color:var(--colors-mantine-colors-dark\\[3\\])}.bd-t_none{border-top:var(--borders-none)}.bd-l_none{border-left:var(--borders-none)}.bdr_2px{border-radius:2px}.gap_4{gap:var(--spacing-4)}.gap_6{gap:var(--spacing-6)}.gap_\\[12px_16px\\]{gap:12px 16px}.bd-c_mantine\\.colors\\.gray\\[3\\]{border-color:var(--colors-mantine-colors-gray\\[3\\])}.flex_0_1_auto{flex:0 1 auto}.transition_all_150ms_ease{transition:all .15s ease}.bdr_xs{border-radius:var(--radii-xs)}.flex_1_1_100\\%{flex:1 1 100%}.offset_0{offset:0}.py_4{padding-block:var(--spacing-4)}.gap_8{gap:var(--spacing-8)}.px_md{padding-inline:var(--spacing-md)}.py_xs{padding-block:var(--spacing-xs)}.grid-c_1{grid-column:1}.grid-c_2{grid-column:2}.grid-c_3{grid-column:3}.bd-b_1px_solid{border-bottom:1px solid}.gap_0{gap:var(--spacing-0)}.gap_\\[10px_12px\\]{gap:10px 12px}.py_3{padding-block:var(--spacing-3)}.offset_4{offset:4px}.flex_1_0_auto{flex:1 0 auto}.ring_none\\!{outline:var(--borders-none)!important}.bdr_4px{border-radius:4px}.mx_auto{margin-inline:auto}.py_md{padding-block:var(--spacing-md)}.bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.flex_0_0_var\\(--likec4-icon-size\\,_24px\\){flex:0 0 var(--likec4-icon-size, 24px)}.bdr_md{border-radius:var(--radii-md)}.py_xl{padding-block:var(--spacing-xl)}.bd-w_1{border-width:1px}.bd-c_\\[var\\(--_color\\)\\/30\\]{--mix-borderColor: color-mix(in srgb, var(--_color) 30%, transparent);border-color:var(--mix-borderColor, var(--_color))}.transition_all_100ms_ease-in{transition:all .1s ease-in}.transition_all_150ms_ease-in-out{transition:all .15s ease-in-out}.py_sm{padding-block:var(--spacing-sm)}.flex_0_0_auto{flex:0 0 auto}.flex_0_0_70px{flex:0 0 70px}.bd-w_3px{border-width:3px}.border-style_dashed{border-style:dashed}.px_3{padding-inline:var(--spacing-3)}.px_5{padding-inline:var(--spacing-5)}.gap_6px{gap:6px}.px_4px{padding-inline:4px}.cursor_pointer{cursor:pointer}.pos_absolute{position:absolute}.z_999{z-index:999}.c_gray{color:gray}.pos_fixed{position:fixed}.bx-sh_xl{box-shadow:var(--shadows-xl)}.d_flex{display:flex}.ai_flex-start{align-items:flex-start}.flex-d_row{flex-direction:row}.flex-wrap_nowrap{flex-wrap:nowrap}.ai_center{align-items:center}.c_red{color:red}.ai_stretch{align-items:stretch}.flex-d_column{flex-direction:column}.c_teal{color:teal}.op_1{opacity:1}.op_0\\.45{opacity:.45}.us_all{-webkit-user-select:all;user-select:all}.bg-c_transparent{background-color:var(--colors-transparent)}.stk_2\\.5{stroke:2.5px}.op_0\\.7{opacity:.7}.fill_\\[\\#FCFBF7\\]{fill:#fcfbf7}.bx-sh_xs{box-shadow:var(--shadows-xs)}.fs_sm{font-size:var(--font-sizes-sm)}.fw_500{font-weight:500}.c_mantine\\.colors\\.placeholder{color:var(--colors-mantine-colors-placeholder)}.fs_11px{font-size:11px}.fw_600{font-weight:600}.lh_1{line-height:var(--line-heights-1)}.stk_2{stroke:2px}.pointer-events_none{pointer-events:none}.main-axis_4{main-axis:4px}.pos_bottom-start{position:bottom-start}.pos_relative{position:relative}.pointer-events_all{pointer-events:all}.us_none{-webkit-user-select:none;user-select:none}.d_none{display:none}.flex-sh_1{flex-shrink:1}.flex-g_1{flex-grow:1}.flex-g_0{flex-grow:0}.op_0\\.3{opacity:.3}.bg-c_mantine\\.colors\\.gray\\[1\\]{background-color:var(--colors-mantine-colors-gray\\[1\\])}.stk_1\\.5{stroke:1.5px}.bd-e-w_var\\(--thickness\\){border-inline-end-width:var(--thickness)}.c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.bg-c_likec4\\.panel\\.action\\.warning\\.bg{background-color:var(--colors-likec4-panel-action-warning-bg)}.c_likec4\\.panel\\.action{color:var(--colors-likec4-panel-action)}.trunc_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c_likec4\\.panel\\.text\\.dimmed{color:var(--colors-likec4-panel-text-dimmed)}.bg-c_\\[rgb\\(34_34_34_\\/_var\\(--_opacity\\,_95\\%\\)\\)\\]{background-color:rgb(34 34 34 / var(--_opacity, 95%))}.bkdp_auto{backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );-webkit-backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, )}.bkdp-blur_var\\(--_blur\\,_10px\\){--backdrop-blur: blur(var(--_blur, 10px))}.jc_stretch{justify-content:stretch}.cq-n_likec4-search-elements{container-name:likec4-search-elements}.cq-t_size{container-type:size}.d_contents{display:contents}.d_grid{display:grid}.order_6{order:6}.stk_1\\.8{stroke:1.8px}.trunc_end{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trs-dur_normal{--transition-duration: var(--durations-normal);transition-duration:var(--durations-normal)}.trs-dly_0\\.2s{transition-delay:.2s}.fill_none{fill:var(--colors-none)}.jc_center{justify-content:center}.z_1{z-index:var(--z-index-1)}.ai_flex-end{align-items:flex-end}.justify-items_stretch{justify-items:stretch}.fs_lg{font-size:var(--font-sizes-lg)}.ai_baseline{align-items:baseline}.flex-wrap_wrap{flex-wrap:wrap}.translate_auto{translate:var(--translate-x) var(--translate-y)}.translate-x_\\[-8px\\]{--translate-x: -8px}.bd-be-w_var\\(--thickness\\){border-block-end-width:var(--thickness)}.cursor_default{cursor:default}.c_orange{color:orange}.pos_top-start{position:top-start}.pos_right{position:right}.op_0\\.65{opacity:.65}.d_inline-flex{display:inline-flex}.op_0\\.5{opacity:.5}.d_block{display:block}.fs_xxs{font-size:var(--font-sizes-xxs)}.lh_sm{line-height:var(--line-heights-sm)}.c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.white-space_nowrap{white-space:nowrap}.white-space-collapse_preserve-breaks{white-space-collapse:preserve-breaks}.fs_xs{font-size:var(--font-sizes-xs)}.fw_medium{font-weight:var(--font-weights-medium)}.trf_translateY\\(-4px\\){transform:translateY(-4px)}.c_mantine\\.colors\\.gray\\[9\\]{color:var(--colors-mantine-colors-gray\\[9\\])}.bx-sh_lg{box-shadow:var(--shadows-lg)}.pos_right-start{position:right-start}.stk_1\\.7{stroke:1.7px}.c_likec4\\.panel\\.text{color:var(--colors-likec4-panel-text)}.c_green{color:green}.pos_bottom-end{position:bottom-end}.op_0\\.8{opacity:.8}.me_0\\.5{margin-inline-end:var(--spacing-0\\.5)}.cross-axis_-22{cross-axis:-22px}.bg-c_none{background-color:var(--colors-none)}.fw_400{font-weight:400}.bx-sh_md{box-shadow:var(--shadows-md)}.main-axis_2{main-axis:2px}.lh_1\\.1{line-height:1.1}.main-axis_10{main-axis:10px}.op_0\\.6{opacity:.6}.pos_top{position:top}.main-axis_12{main-axis:12px}.ta_center{text-align:center}.bx-sh_inset_1px_1px_3px_0px_\\#00000024{box-shadow:inset 1px 1px 3px #00000024}.trf_translate\\(-50\\%\\,_-50\\%\\){transform:translate(-50%,-50%)}.flex-sh_0{flex-shrink:0}.ms_0{margin-inline-start:var(--spacing-0)}.z_9{z-index:9}.ta_left{text-align:left}.lh_1\\.25{line-height:1.25}.bx-s_border-box{box-sizing:border-box}.c_mantine\\.colors\\.text{color:var(--colors-mantine-colors-text)}.cursor_move{cursor:move}.ff_likec4\\.element{font-family:var(--fonts-likec4-element)}.font-optical-sizing_auto{font-optical-sizing:auto}.font-style_normal{font-style:normal}.fs_24px{font-size:24px}.lh_xs{line-height:var(--line-heights-xs)}.as_flex-start{align-self:flex-start}.c_\\[var\\(--view-title-color\\,_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}\\)\\]{color:var(--view-title-color, var(--colors-mantine-colors-gray\\[7\\]))}.fs_15px{font-size:15px}.lh_1\\.4{line-height:1.4}.c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}.grid-tc_min-content_1fr{grid-template-columns:min-content 1fr}.grid-ar_min-content_max-content{grid-auto-rows:min-content max-content}.justify-self_end{justify-self:end}.ta_right{text-align:right}.cursor_se-resize{cursor:se-resize}.ai_start{align-items:start}.jc_space-between{justify-content:space-between}.stk_1\\.6{stroke:1.6px}.grid-ar_min-content{grid-auto-rows:min-content}.white-space_pre-wrap{white-space:pre-wrap}.tov_unset{text-overflow:unset}.tov_ellipsis{text-overflow:ellipsis}.wb_break-word{word-break:break-word}.wb_normal{word-break:normal}.bg-c_mantine\\.colors\\.white{background-color:var(--colors-mantine-colors-white)}.jc_flex-end{justify-content:flex-end}.c_mantine\\.colors\\.gray\\[6\\]{color:var(--colors-mantine-colors-gray\\[6\\])}.fw_700{font-weight:700}.justify-self_stretch{justify-self:stretch}.as_start{align-self:start}.ps_\\[16px\\]{padding-inline-start:16px}.pe_2\\.5{padding-inline-end:var(--spacing-2\\.5)}.stk_1\\.2{stroke:1.2px}.d_inline-block{display:inline-block}.lh_1\\.2{line-height:1.2}.c_var\\(--likec4-palette-hiContrast\\){color:var(--likec4-palette-hiContrast)}.fs_xl{font-size:var(--font-sizes-xl)}.c_mantine\\.colors\\.defaultColor{color:var(--colors-mantine-colors-default-color)}.bx-sh_none{box-shadow:var(--shadows-none)}.pos_top-right{position:top-right}.pos_top-left{position:top-left}.grid-cs_1{grid-column-start:1}.grid-ce_4{grid-column-end:4}.grid-tc_1fr_30px_1fr{grid-template-columns:1fr 30px 1fr}.justify-items_start{justify-items:start}.c_dark{color:dark}.stk_3\\.5{stroke:3.5px}.cq-n_likec4-tree{container-name:likec4-tree}.cq-t_inline-size{container-type:inline-size}.fs_10px{font-size:10px}.lh_1\\.3{line-height:1.3}.order_2{order:2}.grayscale_0\\.9{--grayscale: grayscale(.9)}.filter_auto{filter:var(--blur, ) var(--brightness, ) var(--contrast, ) var(--grayscale, ) var(--hue-rotate, ) var(--invert, ) var(--saturate, ) var(--sepia, ) var(--drop-shadow, )}.cross-axis_50{cross-axis:50px}.sr_true{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fs_13px{font-size:13px}.fs_16px{font-size:16px}.c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}.fs_12px{font-size:12px}.fs_md{font-size:var(--font-sizes-md)}.bg-c_\\[rgb\\(34_34_34_\\/_0\\.7\\)\\]{background-color:#222222b3}.z_902{z-index:902}.bkdp-blur_10px{--backdrop-blur: blur(10px)}.trf_translateX\\(-50\\%\\){transform:translate(-50%)}.z_903{z-index:903}.stk_likec4\\.compare\\.manual\\.outline{stroke:var(--colors-likec4-compare-manual-outline)}.stk-w_8px{stroke-width:8px}.stk-op_0\\.5{stroke-opacity:.5}.z_9999{z-index:9999}.fill_\\[var\\(--xy-edge-stroke\\)\\]{fill:var(--xy-edge-stroke)}.stk_transparent{stroke:var(--colors-transparent)}.fill-opacity_0\\.5{fill-opacity:.5}.stk-w_10{stroke-width:10}.r_4{r:4px}.cursor_grab{cursor:grab}.vis_hidden{visibility:hidden}.trs-dur_120ms{--transition-duration: .12s;transition-duration:.12s}.trs-prop_visibility\\,_fill\\,_fill-opacity\\,_r{--transition-prop: visibility, fill, fill-opacity, r;transition-property:visibility,fill,fill-opacity,r}.trs-tmf_inOut{--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}.trs-dly_20ms{transition-delay:20ms}.bg-c_var\\(--likec4-palette-fill\\)\\/15{--mix-backgroundColor: color-mix(in srgb, var(--likec4-palette-fill) 15%, transparent);background-color:var(--mix-backgroundColor, var(--likec4-palette-fill))}.fw_bold{font-weight:700}.ls_\\.75px{letter-spacing:.75px}.c_\\[var\\(--_color\\)\\/75\\]{--mix-color: color-mix(in srgb, var(--_color) 75%, transparent);color:var(--mix-color, var(--_color))}.bg-c_var\\(--likec4-palette-fill\\){background-color:var(--likec4-palette-fill)}.translate-x_-1\\/2{--translate-x: -50%}.translate-y_-1\\/2{--translate-y: -50%}.ring-c_likec4\\.compare\\.manual\\.outline{outline-color:var(--colors-likec4-compare-manual-outline)}.ring-w_4px{outline-width:4px}.outline-style_dashed{outline-style:dashed}.ring-o_1\\.5{outline-offset:var(--spacing-1\\.5)}.bg-c_mantine\\.colors\\.body\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-body) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-body))}.fill_var\\(--likec4-palette-fill\\){fill:var(--likec4-palette-fill)}.stk_var\\(--likec4-palette-stroke\\){stroke:var(--likec4-palette-stroke)}.stk-w_1{stroke-width:1}.filter_drop-shadow\\(0_2px_3px_rgb\\(0_0_0_\\/_22\\%\\)\\)_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_10\\%\\)\\){filter:drop-shadow(0 2px 3px rgb(0 0 0 / 22%)) drop-shadow(0 1px 8px rgb(0 0 0 / 10%))}.ls_0\\.2px{letter-spacing:.2px}.tt_lowercase{text-transform:lowercase}.op_0\\.25{opacity:.25}.stk-w_5{stroke-width:5}.pos_right-end{position:right-end}.jc_flex-start{justify-content:flex-start}.pos_left-start{position:left-start}.top_4{top:var(--spacing-4)}.right_4{right:var(--spacing-4)}.top_10{top:var(--spacing-10)}.left_10{left:var(--spacing-10)}.w_\\[calc\\(100vw_-_\\(\\{spacing\\.10\\}_\\*_2\\)\\)\\]{width:calc(100vw - (var(--spacing-10) * 2))}.h_max-content{height:max-content}.max-h_\\[calc\\(100vh_-_\\(\\{spacing\\.10\\}_\\*_3\\)\\)\\]{max-height:calc(100vh - (var(--spacing-10) * 3))}.mt_md{margin-top:var(--spacing-md)}.min-h_24{min-height:24px}.max-w_500{max-width:500px}.pr_0{padding-right:var(--spacing-0)}.h_12{height:12px}.w_12{width:12px}.h_30px{height:30px}.pl_sm{padding-left:var(--spacing-sm)}.pr_1{padding-right:var(--spacing-1)}.w_100\\%{width:var(--sizes-100\\%)}.pr_2\\.5{padding-right:var(--spacing-2\\.5)}.top_0{top:var(--spacing-0)}.left_0{left:var(--spacing-0)}.max-w_calc\\(100vw\\){max-width:100vw}.max-w_200px{max-width:200px}.max-w_calc\\(100vw_-_50px\\){max-width:calc(100vw - 50px)}.max-w_calc\\(100vw_-_250px\\){max-width:calc(100vw - 250px)}.max-h_calc\\(100vh_-_200px\\){max-height:calc(100vh - 200px)}.max-h_calc\\(100vh_-_160px\\){max-height:calc(100vh - 160px)}.h_100\\%{height:var(--sizes-100\\%)}.mb_1{margin-bottom:var(--spacing-1)}.max-h_100vh{max-height:100vh}.pt_\\[20px\\]{padding-top:20px}.pl_md{padding-left:var(--spacing-md)}.pr_md{padding-right:var(--spacing-md)}.pb_sm{padding-bottom:var(--spacing-sm)}.pr_xs{padding-right:var(--spacing-xs)}.lc_5{-webkit-line-clamp:5}.lc_5,.lc_2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.lc_2{-webkit-line-clamp:2}.lc_3{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.top_0\\.5{top:var(--spacing-0\\.5)}.right_0\\.5{right:var(--spacing-0\\.5)}.w_full{width:var(--sizes-full)}.h_full{height:var(--sizes-full)}.bottom_0{bottom:var(--spacing-0)}.max-w_50{max-width:50px}.h_5{height:5px}.w_max-content{width:max-content}.pt_2{padding-top:var(--spacing-2)}.mt_2{margin-top:var(--spacing-2)}.mt_0{margin-top:var(--spacing-0)}.w_350{width:350px}.pl_2\\.5{padding-left:var(--spacing-2\\.5)}.bd-l-c_mantine\\.colors\\.gray\\[3\\]{border-left-color:var(--colors-mantine-colors-gray\\[3\\])}.bdr-bl_sm{border-bottom-left-radius:var(--radii-sm)}.bdr-br_sm{border-bottom-right-radius:var(--radii-sm)}.pl_3{padding-left:var(--spacing-3)}.w_\\[20px\\]{width:20px}.mt_1{margin-top:var(--spacing-1)}.mb_xxs{margin-bottom:var(--spacing-xxs)}.pb_lg{padding-bottom:var(--spacing-lg)}.max-w_calc\\(100cqw_-_52px\\){max-width:calc(100cqw - 52px)}.min-w_200px{min-width:200px}.max-h_calc\\(100cqh_-_100px\\){max-height:calc(100cqh - 100px)}.mt_4{margin-top:var(--spacing-4)}.mt_xs{margin-top:var(--spacing-xs)}.h_auto{height:auto}.pt_6{padding-top:var(--spacing-6)}.mb_10{margin-bottom:var(--spacing-10)}.pt_100\\%{padding-top:100%}.left_2{left:var(--spacing-2)}.bottom_2{bottom:var(--spacing-2)}.top_md{top:var(--spacing-md)}.left_md{left:var(--spacing-md)}.w_8{width:8px}.h_8{height:8px}.mr_sm{margin-right:var(--spacing-sm)}.h_26{height:26px}.top_\\[1px\\]{top:1px}.right_\\[1px\\]{right:1px}.pt_xxs{padding-top:var(--spacing-xxs)}.max-w_calc\\(100cqw_-_32px\\){max-width:calc(100cqw - 32px)}.min-w_calc\\(100cqw_-_50px\\){min-width:calc(100cqw - 50px)}.w_100vw{width:100vw}.h_100vh{height:100vh}.max-w_100vw{max-width:100vw}.h_40px{height:40px}.w_40px{width:40px}.w_14px{width:14px}.h_14px{height:14px}.bottom_0\\.5{bottom:var(--spacing-0\\.5)}.mb_sm{margin-bottom:var(--spacing-sm)}.lc_1{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.mt_6{margin-top:var(--spacing-6)}.pt_xs{padding-top:var(--spacing-xs)}.w_300{width:300px}.min-w_0{min-width:0}.min-h_32px{min-height:32px}.max-w_min\\(200px\\,_100\\%\\){max-width:min(200px,100%)}.min-w_60px{min-width:60px}.mb_0{margin-bottom:var(--spacing-0)}.h_36px{height:36px}.min-w_24{min-width:24px}.mb_4{margin-bottom:var(--spacing-4)}.top_12{top:12px}.right_12{right:12px}.mt_sm{margin-top:var(--spacing-sm)}.ml_sm{margin-left:var(--spacing-sm)}.pl_1{padding-left:var(--spacing-1)}.bd-b-c_mantine\\.colors\\.defaultBorder{border-bottom-color:var(--colors-mantine-colors-default-border)}.max-h_70vh{max-height:70vh}.mb_2{margin-bottom:var(--spacing-2)}.max-w_8xl{max-width:8xl}.pl_\\[48px\\]{padding-left:48px}.mr_1{margin-right:var(--spacing-1)}.min-h_60px{min-height:60px}.h_var\\(--likec4-icon-size\\,_24px\\){height:var(--likec4-icon-size, 24px)}.w_var\\(--likec4-icon-size\\,_24px\\){width:var(--likec4-icon-size, 24px)}.top_\\[2rem\\]{top:2rem}.left_\\[50\\%\\]{left:50%}.max-w_600px{max-width:600px}.pl_2{padding-left:var(--spacing-2)}.pt_0\\.5{padding-top:var(--spacing-0\\.5)}.w_5px{width:5px}.top_1{top:var(--spacing-1)}.right_0{right:var(--spacing-0)}.w_min-content{width:min-content}.h_min-content{height:min-content}.min-w_200{min-width:200px}.max-w_calc\\(100vw_-_20px\\){max-width:calc(100vw - 20px)}.pt_0{padding-top:var(--spacing-0)}.pb_0{padding-bottom:var(--spacing-0)}.ml_2{margin-left:var(--spacing-2)}.h_xs{height:xs}.pb_8{padding-bottom:var(--spacing-8)}.pt_4{padding-top:var(--spacing-4)}.max-w_220px{max-width:220px}.\\[\\&_\\.action-icon\\]\\:--ai-size_2rem .action-icon{--ai-size: 2rem}[data-mantine-color-scheme=light] .light\\:--icon-color_\\{colors\\.mantine\\.colors\\.gray\\[6\\]\\}{--icon-color: var(--colors-mantine-colors-gray\\[6\\])}[data-mantine-color-scheme=light] .light\\:--view-title-color_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}{--view-title-color: var(--colors-mantine-colors-gray\\[7\\])}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:--ti-size_22px .mantine-ThemeIcon-root{--ti-size: 22px}[data-mantine-color-scheme=dark] .dark\\:--_color_\\[color-mix\\(in_oklab\\,_var\\(--likec4-palette-hiContrast\\)_40\\%\\,_var\\(--likec4-palette-fill\\)\\)\\]{--_color: color-mix(in oklab, var(--likec4-palette-hiContrast) 40%, var(--likec4-palette-fill))}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:--ai-radius_\\{radii\\.md\\}{--ai-radius: var(--radii-md)}.backdrop\\:bg_\\[color-mix\\(in_oklab\\,_\\{colors\\.likec4\\.overlay\\.backdrop\\}_60\\%\\,_transparent\\)\\]::backdrop{background:color-mix(in oklab,var(--colors-likec4-overlay-backdrop) 60%,transparent)}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.white{background:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[6\\]{background:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=light] .light\\:bg_var\\(--likec4-palette-fill\\)\\/90{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 90%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .dark\\:bg_var\\(--likec4-palette-fill\\)\\/60{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 60%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[5\\]{background:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.\\[\\&\\[data-active\\]\\]\\:bg_mantine\\.colors\\.white[data-active]{background:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.\\[\\&\\[data-missing\\]\\]\\:bg_mantine\\.colors\\.orange\\[8\\]\\/15[data-missing]{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-orange\\[8\\]) 15%, transparent);background:var(--mix-background, var(--colors-mantine-colors-orange\\[8\\]))}.\\[\\&\\[data-missing\\]\\]\\:bg_mantine\\.colors\\.orange\\[8\\]\\/20[data-missing]{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-orange\\[8\\]) 20%, transparent);background:var(--mix-background, var(--colors-mantine-colors-orange\\[8\\]))}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[3\\]\\/20{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 20%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[6\\]\\/80{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[6\\]) 80%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[6\\]))}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.white\\/80{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-white) 80%, transparent);background:var(--mix-background, var(--colors-mantine-colors-white))}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[4\\]{border-color:var(--colors-mantine-colors-gray\\[4\\])}[data-mantine-color-scheme=dark] .dark\\:bd-c_mantine\\.colors\\.dark\\[4\\]{border-color:var(--colors-mantine-colors-dark\\[4\\])}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:transition_none\\!{transition:none!important}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[2\\]{border-color:var(--colors-mantine-colors-gray\\[2\\])}[data-mantine-color-scheme=dark] .dark\\:bd-c_mantine\\.colors\\.dark\\[7\\]{border-color:var(--colors-mantine-colors-dark\\[7\\])}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:bdr_4{border-radius:4px}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:transition_fast .mantine-ThemeIcon-root{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&_\\>_\\*\\]\\:transition_all_130ms_\\{easings\\.inOut\\}>*{transition:all .13s var(--easings-in-out)}.\\[\\&\\[data-active\\]\\]\\:transition_none[data-active]{transition:none}.\\[\\&_\\>_\\*\\]\\:transition_fast>*,.\\[\\&_\\.tabler-icon\\]\\:transition_fast .tabler-icon{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&\\[data-missing\\]\\]\\:bd-c_mantine\\.colors\\.orange\\[5\\]\\/20[data-missing]{--mix-borderColor: color-mix(in srgb, var(--colors-mantine-colors-orange\\[5\\]) 20%, transparent);border-color:var(--mix-borderColor, var(--colors-mantine-colors-orange\\[5\\]))}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[3\\]{border-color:var(--colors-mantine-colors-gray\\[3\\])}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:bd-b_none:last-child .likec4-edge-label{border-bottom:var(--borders-none)}.\\[\\&_\\>_\\*\\]\\:transition_all_0\\.15s_ease-in>*{transition:all .15s ease-in}[data-mantine-color-scheme=dark] .dark\\:bd-c_transparent{border-color:var(--colors-transparent)}.\\[\\&_\\:where\\(\\.likec4-diagram\\,_\\.likec4-compound-node\\,_\\.likec4-element-node\\)\\]\\:cursor_pointer :where(.likec4-diagram,.likec4-compound-node,.likec4-element-node){cursor:pointer}.backdrop\\:cursor_zoom-out::backdrop{cursor:zoom-out}.backdrop\\:bkdp_blur\\(18px\\)::backdrop{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:c_mantine\\.colors\\.dimmed:is([data-position=left]){color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:us_none:is([data-position=left]){-webkit-user-select:none;user-select:none}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:pointer-events_none:is([data-position=left]){pointer-events:none}[data-mantine-color-scheme=light] .light\\:fill_\\[\\#222221\\]{fill:#222221}.\\[\\&_\\.tabler-icon\\]\\:c_mantine\\.colors\\.text .tabler-icon{color:var(--colors-mantine-colors-text)}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:bx-sh_none\\!{box-shadow:var(--shadows-none)!important}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[0\\]{color:var(--colors-mantine-colors-dark\\[0\\])}[data-mantine-color-scheme=light] .light\\:bg-c_mantine\\.colors\\.gray\\[2\\]\\/70{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-gray\\[2\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-gray\\[2\\]))}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[8\\]\\/70{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[8\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[8\\]))}.empty\\:d_none:is(:empty,[data-empty]){display:none}.\\[\\&_\\>_mark\\]\\:bg-c_mantine\\.colors\\.yellow\\[2\\]\\/90>mark{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-yellow\\[2\\]) 90%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-yellow\\[2\\]))}[data-mantine-color-scheme=dark] .dark\\:op_0\\.5{opacity:.5}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[5\\]))}.placeholder\\:c_mantine\\.colors\\.dimmed::placeholder,.placeholder\\:c_mantine\\.colors\\.dimmed[data-placeholder]{color:var(--colors-mantine-colors-dimmed)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[3\\]{color:var(--colors-mantine-colors-dark\\[3\\])}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(250_250_250_\\/_var\\(--_opacity\\,_95\\%\\)\\)\\]{background-color:rgb(250 250 250 / var(--_opacity, 95%))}:where([data-likec4-zoom-small=true]) .smallZoom\\:d_none{display:none}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:pointer-events_all{pointer-events:all}:where(.react-flow__node.selectable:not(.dragging)) .\\[\\:where\\(\\.react-flow__node\\.selectable\\:not\\(\\.dragging\\)\\)_\\&\\]\\:cursor_pointer{cursor:pointer}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:trs-dly_\\.08s{transition-delay:.08s}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:pointer-events_none{pointer-events:none}[data-mantine-color-scheme=light] .light\\:c_var\\(--likec4-palette-hiContrast\\){color:var(--likec4-palette-hiContrast)}[data-mantine-color-scheme=dark] .dark\\:c_var\\(--likec4-palette-loContrast\\){color:var(--likec4-palette-loContrast)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\[4\\]{color:var(--colors-mantine-colors-gray\\[4\\])}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[8\\]{color:var(--colors-mantine-colors-gray\\[8\\])}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[9\\]{color:var(--colors-mantine-colors-gray\\[9\\])}.\\[\\&\\:is\\(\\[data-position\\=\\"right\\"\\]\\)\\]\\:ms_1:is([data-position=right]){margin-inline-start:var(--spacing-1)}.\\[\\&_\\:where\\(button\\,_\\.action-icon\\,_\\[role\\=\\'dialog\\'\\]\\)\\]\\:pointer-events_all :where(button,.action-icon,[role=dialog]){pointer-events:all}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:bx-sh_none{box-shadow:var(--shadows-none)}.backdrop\\:bkdp_auto::backdrop{backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );-webkit-backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, )}.backdrop\\:bkdp-blur_var\\(--_blur\\)::backdrop{--backdrop-blur: blur(var(--_blur))}.backdrop\\:bg-c_\\[rgb\\(36_36_36_\\/_var\\(--_opacity\\,_5\\%\\)\\)\\]::backdrop{background-color:rgb(36 36 36 / var(--_opacity, 5%))}.\\[\\&_\\.react-flow__attribution\\]\\:d_none .react-flow__attribution{display:none}[data-mantine-color-scheme=dark] .dark\\:mix-bm_hard-light{mix-blend-mode:hard-light}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:pointer-events_none :where(svg,img){pointer-events:none}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:filter_drop-shadow\\(0_0_3px_rgb\\(0_0_0_\\/_10\\%\\)\\)_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_5\\%\\)\\)_drop-shadow\\(1px_1px_16px_rgb\\(0_0_0_\\/_2\\%\\)\\) :where(svg,img){filter:drop-shadow(0 0 3px rgb(0 0 0 / 10%)) drop-shadow(0 1px 8px rgb(0 0 0 / 5%)) drop-shadow(1px 1px 16px rgb(0 0 0 / 2%))}.\\[\\&_img\\]\\:obj-f_contain img{object-fit:contain}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:c_\\[var\\(--icon-color\\,_\\{colors\\.mantine\\.colors\\.dark\\[2\\]\\}\\)\\] .mantine-ThemeIcon-root{color:var(--icon-color, var(--colors-mantine-colors-dark\\[2\\]))}.\\[\\&\\[data-active\\]\\]\\:bx-sh_xs[data-active]{box-shadow:var(--shadows-xs)}.\\[\\&\\[data-active\\]\\]\\:c_mantine\\.colors\\.defaultColor[data-active]{color:var(--colors-mantine-colors-default-color)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[9\\]{background-color:var(--colors-mantine-colors-dark\\[9\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.text{color:var(--colors-mantine-colors-text)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[2\\]{color:var(--colors-mantine-colors-dark\\[2\\])}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]{background-color:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\.lightColor{color:var(--colors-mantine-colors-gray-light-color)}.\\[\\&_\\.tabler-icon\\]\\:op_0\\.65 .tabler-icon{opacity:.65}.\\[\\&\\[data-missing\\]\\]\\:c_mantine\\.colors\\.orange\\[4\\][data-missing]{color:var(--colors-mantine-colors-orange\\[4\\])}.before\\:content_\\"scope\\:\\":before{content:"scope:"}.before\\:pos_absolute:before{position:absolute}.before\\:fs_xxs:before{font-size:var(--font-sizes-xxs)}.before\\:fw_500:before{font-weight:500}.before\\:lh_1:before{line-height:var(--line-heights-1)}.before\\:c_mantine\\.colors\\.dimmed:before{color:var(--colors-mantine-colors-dimmed)}.before\\:op_0\\.85:before{opacity:.85}.before\\:trf_translateY\\(-100\\%\\)_translateY\\(-2px\\):before{transform:translateY(-100%) translateY(-2px)}.\\[\\&\\[data-zero\\]\\]\\:c_mantine\\.colors\\.dimmed[data-zero]{color:var(--colors-mantine-colors-dimmed)}.\\[\\&_\\.mantine-Text-root\\]\\:c_mantine\\.colors\\.text\\/90 .mantine-Text-root{--mix-color: color-mix(in srgb, var(--colors-mantine-colors-text) 90%, transparent);color:var(--mix-color, var(--colors-mantine-colors-text))}.\\[\\&_\\.mantine-Text-root\\]\\:fs_xs .mantine-Text-root{font-size:var(--font-sizes-xs)}.\\[\\&_\\.mantine-Text-root\\]\\:fw_500 .mantine-Text-root{font-weight:500}.\\[\\&_\\.mantine-Text-root\\]\\:lh_1\\.2 .mantine-Text-root{line-height:1.2}.\\[\\&_\\.mantine-Text-root\\]\\:fs_xxs .mantine-Text-root{font-size:var(--font-sizes-xxs)}.\\[\\&_\\.mantine-Text-root\\]\\:fw_400 .mantine-Text-root{font-weight:400}.\\[\\&_\\.mantine-Text-root\\]\\:lh_xs .mantine-Text-root{line-height:var(--line-heights-xs)}.\\[\\&_\\.mantine-Text-root\\]\\:c_mantine\\.colors\\.dimmed .mantine-Text-root{color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\[data-disabled\\]_\\.mantine-ThemeIcon-root\\]\\:op_0\\.45[data-disabled] .mantine-ThemeIcon-root{opacity:.45}:where(.likec4-view-btn[data-disabled]) .\\[\\:where\\(\\.likec4-view-btn\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.85{opacity:.85}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none svg,.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none img{pointer-events:none}.\\[\\&\\.likec4-shape-icon_svg\\]\\:stk-w_1\\.5.likec4-shape-icon svg{stroke-width:1.5}:where([data-disabled]) .\\[\\:where\\(\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.4{opacity:.4}:where([data-disabled]) .\\[\\:where\\(\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.85{opacity:.85}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(255_255_255_\\/_0\\.6\\)\\]{background-color:#fff9}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:stk-w_12px{stroke-width:12px}.\\[\\&_\\.react-flow__edge-interaction\\]\\:cursor_copy .react-flow__edge-interaction{cursor:copy}[data-mantine-color-scheme=dark] .dark\\:mix-bm_screen{mix-blend-mode:screen}[data-mantine-color-scheme=light] .light\\:mix-bm_multiply{mix-blend-mode:multiply}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:vis_visible{visibility:visible}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:fill-opacity_1{fill-opacity:1}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-tmf_out{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-dly_0ms{transition-delay:0ms}:where([data-likec4-selected=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\)_\\&\\]\\:r_6{r:6px}:is([data-likec4-hovered=true]) .\\[\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:r_8{r:8px}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-c_likec4\\.compare\\.manual\\.outline+.likec4-element-shape{outline-color:var(--colors-likec4-compare-manual-outline)}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-w_4px+.likec4-element-shape{outline-width:4px}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:outline-style_dashed+.likec4-element-shape{outline-style:dashed}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-o_1\\.5+.likec4-element-shape{outline-offset:var(--spacing-1\\.5)}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[6\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[6\\]))}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:min-h_100\\% .mantine-ScrollArea-viewport{min-height:var(--sizes-100\\%)}:where([data-likec4-shape=browser]) .shapeBrowser\\:right_\\[5px\\]{right:5px}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:top_\\[14px\\]{top:14px}:where([data-likec4-shape=storage]) .shapeStorage\\:top_\\[14px\\]{top:14px}:where([data-likec4-shape=queue]) .shapeQueue\\:top_\\[1px\\]{top:1px}:where([data-likec4-shape=queue]) .shapeQueue\\:right_3{right:var(--spacing-3)}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:bottom_\\[5px\\]{bottom:5px}:where([data-likec4-shape=storage]) .shapeStorage\\:bottom_\\[5px\\]{bottom:5px}:where([data-likec4-shape=queue]) .shapeQueue\\:bottom_0{bottom:var(--spacing-0)}:where([data-likec4-shape=queue]) .shapeQueue\\:pl_\\[14px\\]{padding-left:14px}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:h_12{height:12px}[data-mantine-color-scheme=dark] .dark\\:bd-l-c_mantine\\.colors\\.dark\\[4\\]{border-left-color:var(--colors-mantine-colors-dark\\[4\\])}.\\[\\&_\\>_svg\\]\\:w_70\\%>svg{width:70%}.\\[\\&_\\>_svg\\]\\:h_70\\%>svg{height:70%}.\\[\\&_\\.tabler-icon\\]\\:w_65\\% .tabler-icon{width:65%}.\\[\\&_\\.tabler-icon\\]\\:h_65\\% .tabler-icon{height:65%}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:w_100\\% :where(svg,img){width:var(--sizes-100\\%)}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:h_auto :where(svg,img){height:auto}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:max-h_100\\% :where(svg,img){max-height:var(--sizes-100\\%)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pl_1:not(:has(.mantine-ScrollArea-root)){padding-left:var(--spacing-1)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pr_1:not(:has(.mantine-ScrollArea-root)){padding-right:var(--spacing-1)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:w_100\\% .mantine-ScrollArea-root{width:var(--sizes-100\\%)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:h_100\\% .mantine-ScrollArea-root{height:var(--sizes-100\\%)}.\\[\\&\\[data-level\\=\\'1\\'\\]\\]\\:mb_sm[data-level="1"]{margin-bottom:var(--spacing-sm)}.\\[\\&_\\.tabler-icon\\]\\:w_90\\% .tabler-icon{width:90%}.before\\:top_0:before{top:var(--spacing-0)}.before\\:left_2:before{left:var(--spacing-2)}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:mb_0:last-child .likec4-edge-label{margin-bottom:var(--spacing-0)}.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% img{width:var(--sizes-100\\%)}.\\[\\&_svg\\,_\\&_img\\]\\:h_auto svg,.\\[\\&_svg\\,_\\&_img\\]\\:h_auto img{height:auto}.\\[\\&_svg\\,_\\&_img\\]\\:max-h_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:max-h_100\\% img{max-height:var(--sizes-100\\%)}:is(.\\[\\&_\\+_\\&\\]\\:mt_\\[32px\\])+:is(.\\[\\&_\\+_\\&\\]\\:mt_\\[32px\\]){margin-top:32px}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:w_7px{width:7px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .whenSelected\\:w_7px{width:7px}.focusWithin\\:bg_mantine\\.colors\\.gray\\[4\\]\\/55\\!:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[4\\]) 55%, transparent) !important;background:var(--mix-background, var(--colors-mantine-colors-gray\\[4\\]))!important}.group:focus-within .groupFocusWithin\\:op_1{opacity:1}.group:focus-within .groupFocusWithin\\:grayscale_0{--grayscale: grayscale(0)}.focus\\:bg_mantine\\.colors\\.primary\\[8\\]:is(:focus,[data-focus]){background:var(--colors-mantine-colors-primary\\[8\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.group:is(:focus,[data-focus]) .groupFocus\\:transition_none{transition:none}.focus\\:ring_none:is(:focus,[data-focus]){outline:var(--borders-none)}.focusVisible\\:ring_none:is(:focus-visible,[data-focus-visible]){outline:var(--borders-none)}.focus\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:focus,[data-focus]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:ring_none{outline:var(--borders-none)}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.group:is(:focus,[data-focus]) .groupFocus\\:c_\\[inherit\\]\\!{color:inherit!important}.group:is(:focus,[data-focus]) .groupFocus\\:op_0\\.5{opacity:.5}.group:is(:focus,[data-focus]) .groupFocus\\:op_0\\.8{opacity:.8}.focus\\:bg-c_mantine\\.colors\\.gray\\[2\\]:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-gray\\[2\\])}.focus\\:c_mantine\\.colors\\.primary\\.lightColor\\!:is(:focus,[data-focus]){color:var(--colors-mantine-colors-primary-light-color)!important}.focus\\:bg-c_mantine\\.colors\\.primary\\.lightHover\\!:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-primary-light-hover)!important}.group:is(:focus,[data-focus]) .groupFocus\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.group:is(:focus,[data-focus]) .groupFocus\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.hover\\:--icon-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}:is(:hover,[data-hover]){--icon-color: var(--colors-mantine-colors-dark\\[1\\])}.hover\\:--view-title-color_\\{colors\\.mantine\\.colors\\.defaultColor\\}:is(:hover,[data-hover]){--view-title-color: var(--colors-mantine-colors-default-color)}.hover\\:bg_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-default-hover)}.hover\\:bg_mantine\\.colors\\.gray\\[3\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-gray\\[3\\])}.hover\\:bg_mantine\\.colors\\.gray\\.lightHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-gray-light-hover)}.hover\\:bg_mantine\\.colors\\.primary\\[8\\]\\/60:is(:hover,[data-hover]){--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary\\[8\\]) 60%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary\\[8\\]))}.group:is(:hover,[data-hover]) .groupHover\\:bg_mantine\\.colors\\.gray\\[3\\]\\/35{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 35%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}.hover\\:td_underline:is(:hover,[data-hover]){text-decoration:underline}.hover\\:bd-c_mantine\\.colors\\.defaultBorder:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-default-border)}.hover\\:bd-w_4px:is(:hover,[data-hover]){border-width:4px}.hover\\:bd-c_mantine\\.colors\\.dark\\[1\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-dark\\[1\\])}.hover\\:border-style_solid:is(:hover,[data-hover]){border-style:solid}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:transition_all_0\\.15s_ease-out:is(:hover,[data-selected=true])>*{transition:all .15s ease-out}.hover\\:ring_none:is(:hover,[data-hover]){outline:var(--borders-none)}.hover\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.hover\\:transition_all_120ms_ease-out:is(:hover,[data-hover]){transition:all .12s ease-out}.hover\\:op_1:is(:hover,[data-hover]){opacity:1}.hover\\:bg-c_mantine\\.colors\\.gray\\[1\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[1\\])}.hover\\:bx-sh_sm:is(:hover,[data-hover]){box-shadow:var(--shadows-sm)}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.group:is(:hover,[data-hover]) .groupHover\\:op_0\\.5{opacity:.5}.group:is(:hover,[data-hover]) .groupHover\\:op_0\\.8{opacity:.8}.hover\\:bg-c_mantine\\.colors\\.gray\\[2\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[2\\])}.hover\\:bg-c_likec4\\.panel\\.action\\.warning\\.bg\\.hover:is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-warning-bg-hover)}.hover\\:c_likec4\\.panel\\.action\\.hover:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover)}.hover\\:c_likec4\\.panel\\.action:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action)}.hover\\:trs-dly_0s:is(:hover,[data-hover]){transition-delay:0s}.hover\\:bg-c_likec4\\.panel\\.action\\.bg\\.hover:is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.\\[\\&\\:hover_\\>_\\*\\]\\:trs-tmf_out:hover>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.\\[\\&\\:hover_\\>_\\*\\]\\:trf_translateX\\(1\\.6px\\):hover>*{transform:translate(1.6px)}.hover\\:trs-tmf_out:is(:hover,[data-hover]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:c_mantine\\.colors\\.defaultColor:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}.hover\\:c_mantine\\.colors\\.primary\\[6\\]:is(:hover,[data-hover]){color:var(--colors-mantine-colors-primary\\[6\\])}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:cursor_pointer:is(:hover,[data-selected=true])>*{cursor:pointer}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-selected=true])>*{background-color:var(--colors-mantine-colors-default-hover)}.hover\\:bg-c_mantine\\.colors\\.gray\\[0\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[0\\])}.group:is(:hover,[data-hover]) .groupHover\\:op_1{opacity:1}.group:is(:hover,[data-hover]) .groupHover\\:grayscale_0{--grayscale: grayscale(0)}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.hover\\:fill_mantine\\.colors\\.primary\\.filledHover:is(:hover,[data-hover]){fill:var(--colors-mantine-colors-primary-filled-hover)}.hover\\:r_10:is(:hover,[data-hover]){r:10px}.hover\\:trs-dur_100ms:is(:hover,[data-hover]){--transition-duration: .1s;transition-duration:.1s}.hover\\:bg-c_mantine\\.colors\\.primary\\[2\\]\\/50:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-primary\\[2\\]) 50%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-primary\\[2\\]))}.group:is(:active,[data-active]) .groupActive\\:op_0\\.5{opacity:.5}.group:is(:active,[data-active]) .groupActive\\:op_0\\.8{opacity:.8}.active\\:trf_translateY\\(-3px\\):is(:active,[data-active]){transform:translateY(-3px)}.group:is(:active,[data-active]) .groupActive\\:cursor_grabbing{cursor:grabbing}.likec4-root:is([data-likec4-reduced-graphics]) .reduceGraphics\\:\\[\\&_\\.action-icon\\]\\:--ai-radius_0px .action-icon{--ai-radius: 0px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:bg_transparent:before{background:var(--colors-transparent)}[data-mantine-color-scheme=dark] .dark\\:\\[\\&\\:is\\(\\[data-active\\]\\)\\]\\:bg_mantine\\.colors\\.dark\\[5\\]:is([data-active]){background:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .light\\:\\[\\&_\\.mantine-SegmentedControl-root\\]\\:bg_mantine\\.colors\\.gray\\[3\\] .mantine-SegmentedControl-root{background:var(--colors-mantine-colors-gray\\[3\\])}.group:is(:hover,[data-hover]) .\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:groupHover\\:c_\\[var\\(--badge-color\\)\\]:is([data-position=left]){color:var(--badge-color)}.group:is(:hover,[data-hover]) .\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:groupHover\\:op_0\\.7:is([data-position=left]){opacity:.7}[data-mantine-color-scheme=dark] .\\[\\&_\\>_mark\\]\\:dark\\:bg-c_mantine\\.colors\\.yellow\\[5\\]\\/80>mark{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-yellow\\[5\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-yellow\\[5\\]))}.group:is(:focus,[data-focus]) .\\[\\&_\\>_mark\\]\\:groupFocus\\:bg-c_\\[transparent\\]>mark{background-color:var(--colors-transparent)}.group:is(:focus,[data-focus]) .\\[\\&_\\>_mark\\]\\:groupFocus\\:c_\\[inherit\\]\\!>mark{color:inherit!important}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:content_\\"_\\":before{content:" "}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:pos_absolute:before{position:absolute}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:pointer-events_all:before{pointer-events:all}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .reduceGraphicsOnPan\\:before\\:d_none:before{display:none}.notDisabled\\:hover\\:bg-c_likec4\\.panel\\.action\\.bg\\.hover:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:hover\\:c_mantine\\.colors\\.defaultColor .mantine-ThemeIcon-root:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}[data-mantine-color-scheme=dark] .dark\\:\\[\\&\\:is\\(\\[data-active\\]\\)\\]\\:c_mantine\\.colors\\.white:is([data-active]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .\\[\\&\\[data-missing\\]\\]\\:light\\:c_mantine\\.colors\\.orange\\[8\\][data-missing]{color:var(--colors-mantine-colors-orange\\[8\\])}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:min-h_100\\% .mantine-ScrollArea-viewport>div{min-height:var(--sizes-100\\%)}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:h_100\\% .mantine-ScrollArea-viewport>div{height:var(--sizes-100\\%)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:top_\\[calc\\(100\\%_-_4px\\)\\]:before{top:calc(100% - 4px)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:left_0:before{left:var(--spacing-0)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:w_full:before{width:var(--sizes-full)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:h_24px:before{height:24px}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pl_1 .mantine-ScrollArea-root>div{padding-left:var(--spacing-1)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pr_1 .mantine-ScrollArea-root>div{padding-right:var(--spacing-1)}[data-mantine-color-scheme=dark] .focusWithin\\:dark\\:bg_mantine\\.colors\\.dark\\[5\\]\\/55\\!:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 55%, transparent) !important;background:var(--mix-background, var(--colors-mantine-colors-dark\\[5\\]))!important}[data-mantine-color-scheme=dark] .focus\\:dark\\:bg-c_mantine\\.colors\\.dark\\[4\\]:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-dark\\[4\\])}[data-mantine-color-scheme=light] .group:is(:focus,[data-focus]) .groupFocus\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:hover\\:--icon-color_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}:is(:hover,[data-hover]){--icon-color: var(--colors-mantine-colors-gray\\[7\\])}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg_mantine\\.colors\\.dark\\[6\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .group:is(:hover,[data-hover]) .groupHover\\:dark\\:bg_mantine\\.colors\\.dark\\[5\\]\\/35{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 35%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[5\\]))}[data-mantine-color-scheme=light] .light\\:hover\\:bd-c_mantine\\.colors\\.primary\\[6\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[6\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:bg-c_mantine\\.colors\\.gray\\[2\\]{background-color:var(--colors-mantine-colors-gray\\[2\\])}[data-mantine-color-scheme=dark] .group:is(:hover,[data-hover]) .groupHover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[8\\]{background-color:var(--colors-mantine-colors-dark\\[8\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[4\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[4\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]\\/70:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[5\\]))}[data-mantine-color-scheme=dark] .dark\\:hover\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[7\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[7\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:c_mantine\\.colors\\.primary\\[4\\]:is(:hover,[data-hover]){color:var(--colors-mantine-colors-primary\\[4\\])}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trs-tmf_out:is(:hover,[data-hover])>:not([data-no-transform]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>:not([data-no-transform]){transform:translate(1px)}.hover\\:\\[\\&_\\>_\\*\\]\\:trs-tmf_out:is(:hover,[data-hover])>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:\\[\\&_\\>_\\*\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>*{transform:translate(1px)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-default-hover)}[data-mantine-color-scheme=dark] .hover\\:dark\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:hover\\:bg-c_mantine\\.colors\\.primary\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-primary\\[5\\])}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg-c_mantine\\.colors\\.dark\\[3\\]\\/40:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[3\\]) 40%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[3\\]))}@container (min-width: 24rem){.\\@\\/xs\\:d_flex{display:flex}}@media screen and (min-width:36rem){.xs\\:max-w_calc\\(100cqw\\){max-width:100cqw}.xs\\:max-w_calc\\(100cqw_-_50px\\){max-width:calc(100cqw - 50px)}.xs\\:max-w_calc\\(100cqw_-_250px\\){max-width:calc(100cqw - 250px)}.xs\\:max-h_calc\\(100cqh_-_200px\\){max-height:calc(100cqh - 200px)}.xs\\:max-h_calc\\(100cqh_-_160px\\){max-height:calc(100cqh - 160px)}.xs\\:h_100cqh{height:100cqh}.xs\\:max-h_calc\\(100cqh_-_70px\\){max-height:calc(100cqh - 70px)}}@container (min-width: 40rem){.\\@\\/sm\\:m_xs{margin:var(--spacing-xs)}.\\@\\/sm\\:gap_xs{gap:var(--spacing-xs)}.\\@\\/sm\\:w_max-content{width:max-content}.\\@\\/sm\\:max-w_calc\\(100vw_-_2_\\*_\\{spacing\\.md\\}\\){max-width:calc(100vw - 2 * var(--spacing-md))}.\\@\\/sm\\:min-w_400{min-width:400px}.\\@\\/sm\\:max-w_550{max-width:550px}}@container (min-width: 40rem){@media screen and (min-width:36rem){.\\@\\/sm\\:xs\\:max-w_calc\\(100cqw_-_2_\\*_\\{spacing\\.md\\}\\){max-width:calc(100cqw - 2 * var(--spacing-md))}}}@container (min-width: 48rem){.\\@\\/md\\:d_block{display:block}.\\@\\/md\\:d_flex{display:flex}.\\@\\/md\\:d_none{display:none}.\\@\\/md\\:d_inherit{display:inherit}.\\@\\/md\\:ms_2{margin-inline-start:var(--spacing-2)}.\\@\\/md\\:w_\\[64px\\]{width:64px}}@media screen and (min-width:48rem){.sm\\:pr_\\[30px\\]{padding-right:30px}.sm\\:min-w_300{min-width:300px}.sm\\:max-w_65vw{max-width:65vw}}@media screen and (min-width:62rem){.md\\:--text-fz_\\{fontSizes\\.md\\}{--text-fz: var(--font-sizes-md)}.md\\:bd-w_4{border-width:4px}.md\\:px_6{padding-inline:var(--spacing-6)}.md\\:pr_\\[50px\\]{padding-right:50px}.md\\:max-w_40vw{max-width:40vw}}@container (min-width: 64rem){.\\@\\/lg\\:max-w_700{max-width:700px}}@media screen and (min-width:75rem){.lg\\:px_8{padding-inline:var(--spacing-8)}}@container likec4-tree (max-width: 450px){.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:--likec4-icon-size_18px{--likec4-icon-size: 18px}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:gap_0\\.5{gap:var(--spacing-0\\.5)}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:flex-d_column-reverse{flex-direction:column-reverse}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:ai_flex-start{align-items:flex-start}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:d_none{display:none}}@media print{.print\\:d_none{display:none}}}`,Bre={autoContrast:!0,primaryColor:"indigo",cursorType:"pointer",defaultRadius:"sm",fontFamily:"var(--likec4-app-font, var(--likec4-app-font-default))",headings:{fontWeight:"500",sizes:{h1:{fontWeight:"600"},h2:{fontWeight:"500"}}},components:{Portal:py.extend({defaultProps:{reuseTargetNode:!0}}),Tooltip:_n.extend({defaultProps:{color:"dark"}})}};fe({cursor:"pointer","--mantine-cursor-pointer":"pointer","& :where(.likec4-diagram, .likec4-compound-node, .likec4-element-node)":{cursor:"pointer"}});function UQe(e,r){const[n,o]=S.useState([]);return f7(()=>{if(e&&!document.querySelector("style[data-likec4-font]")){const a=document.createElement("style");a.setAttribute("type","text/css"),a.setAttribute("data-likec4-font",""),pw(r)&&a.setAttribute("nonce",r),ey(r)&&a.setAttribute("nonce",r()),a.appendChild(document.createTextNode(HQe)),document.head.appendChild(a)}},[e]),f7(()=>{const a=new CSSStyleSheet;return a.replaceSync(Pre.replaceAll(":where(:root,:host)",".likec4-shadow-root").replaceAll(":root",".likec4-shadow-root").replaceAll(new RegExp("(?{a.replaceSync("")}},[Pre]),n}const Ire=()=>{try{const e=window.getComputedStyle(document.documentElement).colorScheme??"",r=hf(e.split(" "));if(r==="light"||r==="dark")return r}catch{}return null};function WQe(e){const r=mH(),[n,o]=S.useState(Ire);return $H(bf(()=>o(Ire),100),{attributes:!0,childList:!1,subtree:!1},()=>document.documentElement),e??n??r}function Ore({children:e}){const r=S.useContext(Aw);return S.useEffect(()=>{r||console.warn("LikeC4Diagram must be a child of MantineProvider")},[]),r?y.jsx(y.Fragment,{children:e}):y.jsx(R9,{defaultColorScheme:"auto",theme:Bre,children:e})}Ore.displayName="EnsureMantine";const wR=({reducedMotion:e="user",children:r})=>{const n=np()?.();return y.jsx(sLe,{features:rVe,strict:!0,children:y.jsx(uLe,{reducedMotion:e,...n&&{nonce:n},children:r})})};function Lre({onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu: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?y2.withControls:y2.default,pannable:k=!0,zoomable:C=!0,background:_="dots",enableElementTags:$=!1,enableFocusMode:z=!1,enableElementDetails:T=!1,enableRelationshipDetails:A=!1,enableRelationshipBrowser:R=!1,enableCompareWithLatest:j=!!u,nodesSelectable:I,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:O}){const W=DG(),K=S.useRef(null),Q=!!rre(),ae=!Q;I??=Q||z||!!i||!!l;const te=kee(f,M),re=GQe(x);K.current==null&&(K.current={defaultEdges:[],defaultNodes:[],initialWidth:B??te.width,initialHeight:F??te.height,initialFitViewOptions:{maxZoom:l$,minZoom:xi,padding:re},initialMaxZoom:l$,initialMinZoom:xi});const ue=q==="auto"?k&&(te.width??1)*(te.height??1)>6e6&&f.nodes.some(_e=>_e.children?.length>0):q;return y.jsx(Ore,{children:y.jsx(wR,{...ue&&{reducedMotion:"always"},children:y.jsx(U5e,{value:G??null,children:y.jsx(mp,{features:{enableFitView:w,enableEditor:Q,enableReadOnly:ae,enableFocusMode:z,enableNavigateTo:!!i,enableElementDetails:T,enableRelationshipDetails:A,enableRelationshipBrowser:R,enableSearch:V,enableNavigationButtons:L&&!!i,enableDynamicViewWalkthrough:f._type==="dynamic"&&H,enableNotations:P,enableVscode:!!c,enableControls:v,enableElementTags:$,enableCompareWithLatest:j&&!!u},children:y.jsxs(eGe,{handlers:{onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:a,onNavigateTo:i,onNodeClick:l,onNodeContextMenu:s,onOpenSource:c,onBurgerMenuClick:d,onInitialized:p,onLayoutTypeChange:u},children:[y.jsx(qQe,{id:W}),y.jsx(wNe,{rootSelector:`#${W}`,children:y.jsx(mNe,{id:W,className:g,reduceGraphics:ue,children:y.jsx(lw,{fitView:w,...K.current,children:y.jsxs($Qe,{view:f,zoomable:C,pannable:k,fitViewPadding:re,nodesDraggable:Q,nodesSelectable:I,where:U??null,dynamicViewVariant:M,children:[y.jsx(_Ke,{background:_,reactFlowProps:Y,renderNodes:Z,children:O}),y.jsx(yte,{})]})})})})]})})})})})}const Fre=e=>typeof e=="number"?`${e}px`:e;function GQe(e){return SL(()=>{if(i9(e))return D$e(e,Fre);const r=Fre(e);return{x:r,y:r}},[e],tt)}function YQe({children:e,likec4model:r}){return y.jsx(Sy.Provider,{value:r,children:e})}const kR=({children:e})=>y.jsx("div",{style:{margin:"1rem 0"},children:y.jsx("div",{style:{margin:"0 auto",display:"inline-block",padding:"2rem",background:"rgba(250,82,82,.15)",color:"#ffa8a8"},children:e})}),XQe=({viewId:e})=>y.jsxs(kR,{children:["View ",y.jsx("code",{children:e})," not found"]}),ZQe=e=>{throw new Error("LikeC4View is not available SSR")};var Vre={exports:{}},_R,qre;function KQe(){if(qre)return _R;qre=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return _R=e,_R}var SR,Hre;function QQe(){if(Hre)return SR;Hre=1;var e=KQe();function r(){}function n(){}return n.resetWarningCache=r,SR=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},SR}var Ure;function JQe(){return Ure||(Ure=1,Vre.exports=QQe()()),Vre.exports}var eJe=JQe();const ml=Y7(eJe);var tJe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Wre(e,r){return e(r={exports:{}},r.exports),r.exports}var rJe=Wre((function(e){(function(r){var n=function(x,k,C){if(!c(k)||u(k)||p(k)||f(k)||s(k))return k;var _,$=0,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},Xre=function(e,r){if(e==null)return{};var n,o,a=sJe(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},cJe=S.createContext(null);function Zre(e){var r=e.children,n=r===void 0?"":r,o=Xre(e,["children"]);return typeof n!="string"&&(n=ZQe()),Kr.createElement("template",Yre({},o,{dangerouslySetInnerHTML:{__html:n}}))}function Kre(e){var r=e.root,n=e.children;return Vi.createPortal(n===void 0?null:n,r)}function dJe(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=Xre(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=lJe(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 T=x.current.shadowRoot;return void $(T)}var A=x.current.attachShadow({mode:s,delegatesFocus:d});p.length>0&&(A.adoptedStyleSheets=p),$(A)}catch(R){(function(j){var I=j.error,P=j.styleSheets,L=j.root;switch(I.name){case"NotSupportedError":P.length>0&&(L.adoptedStyleSheets=P);break;default:throw I}})({error:R,styleSheets:p,root:_})}}),[o,x,p]),Kr.createElement(Kr.Fragment,null,Kr.createElement(e.tag,Yre({key:z,ref:x},w),(_||g)&&Kr.createElement(cJe.Provider,{value:_},g?Kr.createElement(Zre,{shadowroot:s,shadowrootmode:s},e.render({root:_,ssr:g,children:v})):Kr.createElement(Kre,{root:_},e.render({root:_,ssr:g,children:v})))))}));return r.propTypes={mode:ml.oneOf(["open","closed"]),delegatesFocus:ml.bool,styleSheets:ml.arrayOf(ml.instanceOf(globalThis.CSSStyleSheet)),ssr:ml.bool,children:ml.node},r}Zre.propTypes={children:ml.oneOfType([ml.string,ml.node])},Kre.propTypes={root:ml.object.isRequired,children:ml.node};var ER=new Map;function uJe(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"core",n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:function(o){return o.children};return new Proxy(e,{get:function(o,a){var i=rJe(a,{separator:"-"}),l="".concat(r,"-").concat(i);return ER.has(l)||ER.set(l,dJe({tag:i,render:n})),ER.get(l)}})}var pJe=uJe();const hJe=pJe.div;function fJe(e,r=!1){if(r===!1)return` +`))}const qQe=S.memo(({id:e})=>{const r=`#${e}`,n=np()?.(),{theme:o}=Tte(),a=VQe(r,o);return y.jsx("style",{type:"text/css","data-likec4-colors":e,dangerouslySetInnerHTML:{__html:a},nonce:n})}),HQe='@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-400-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-500-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-600-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-400-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-500-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-600-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-400-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-500-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-600-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-400-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-500-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-600-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}',Pre=`@layer reset,base,mantine,xyflow,tokens,recipes,utilities;@layer mantine{:root,:host{color-scheme:var(--mantine-color-scheme)}*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}body,:host{margin:0;font-family:var(--mantine-font-family);font-size:var(--mantine-font-size-md);line-height:var(--mantine-line-height);background-color:var(--mantine-color-body);color:var(--mantine-color-text);-webkit-font-smoothing:var(--mantine-webkit-font-smoothing);-moz-osx-font-smoothing:var(--mantine-moz-font-smoothing)}@media screen and (max-device-width:31.25em){body,:host{-webkit-text-size-adjust:100%}}@media(prefers-reduced-motion:reduce){[data-respect-reduced-motion] [data-reduce-motion]{transition:none;animation:none}}[data-mantine-color-scheme=light] .mantine-light-hidden,[data-mantine-color-scheme=dark] .mantine-dark-hidden{display:none}.mantine-focus-auto:focus-visible{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-always:focus{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-never:focus{outline:none}.mantine-active:active{transform:translateY(calc(.0625rem * var(--mantine-scale)))}fieldset:disabled .mantine-active:active{transform:none}:where([dir=rtl]) .mantine-rotate-rtl{transform:rotate(180deg)}:root,:host{--mantine-z-index-app: 100;--mantine-z-index-modal: 200;--mantine-z-index-popover: 300;--mantine-z-index-overlay: 400;--mantine-z-index-max: 9999;--mantine-scale: 1;--mantine-cursor-type: default;--mantine-webkit-font-smoothing: antialiased;--mantine-moz-font-smoothing: grayscale;--mantine-color-white: #fff;--mantine-color-black: #000;--mantine-line-height: 1.55;--mantine-font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-font-family-monospace: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;--mantine-font-family-headings: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-heading-font-weight: 700;--mantine-heading-text-wrap: wrap;--mantine-radius-default: calc(.25rem * var(--mantine-scale));--mantine-primary-color-filled: var(--mantine-color-blue-filled);--mantine-primary-color-filled-hover: var(--mantine-color-blue-filled-hover);--mantine-primary-color-light: var(--mantine-color-blue-light);--mantine-primary-color-light-hover: var(--mantine-color-blue-light-hover);--mantine-primary-color-light-color: var(--mantine-color-blue-light-color);--mantine-breakpoint-xs: 36em;--mantine-breakpoint-sm: 48em;--mantine-breakpoint-md: 62em;--mantine-breakpoint-lg: 75em;--mantine-breakpoint-xl: 88em;--mantine-spacing-xs: calc(.625rem * var(--mantine-scale));--mantine-spacing-sm: calc(.75rem * var(--mantine-scale));--mantine-spacing-md: calc(1rem * var(--mantine-scale));--mantine-spacing-lg: calc(1.25rem * var(--mantine-scale));--mantine-spacing-xl: calc(2rem * var(--mantine-scale));--mantine-font-size-xs: calc(.75rem * var(--mantine-scale));--mantine-font-size-sm: calc(.875rem * var(--mantine-scale));--mantine-font-size-md: calc(1rem * var(--mantine-scale));--mantine-font-size-lg: calc(1.125rem * var(--mantine-scale));--mantine-font-size-xl: calc(1.25rem * var(--mantine-scale));--mantine-line-height-xs: 1.4;--mantine-line-height-sm: 1.45;--mantine-line-height-md: 1.55;--mantine-line-height-lg: 1.6;--mantine-line-height-xl: 1.65;--mantine-shadow-xs: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), 0 calc(.0625rem * var(--mantine-scale)) calc(.125rem * var(--mantine-scale)) rgba(0, 0, 0, .1);--mantine-shadow-sm: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(.625rem * var(--mantine-scale)) calc(.9375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.4375rem * var(--mantine-scale)) calc(.4375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-md: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.25rem * var(--mantine-scale)) calc(1.5625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.625rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-lg: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.75rem * var(--mantine-scale)) calc(1.4375rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.75rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-shadow-xl: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(2.25rem * var(--mantine-scale)) calc(1.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(1.0625rem * var(--mantine-scale)) calc(1.0625rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-radius-xs: calc(.125rem * var(--mantine-scale));--mantine-radius-sm: calc(.25rem * var(--mantine-scale));--mantine-radius-md: calc(.5rem * var(--mantine-scale));--mantine-radius-lg: calc(1rem * var(--mantine-scale));--mantine-radius-xl: calc(2rem * var(--mantine-scale));--mantine-primary-color-0: var(--mantine-color-blue-0);--mantine-primary-color-1: var(--mantine-color-blue-1);--mantine-primary-color-2: var(--mantine-color-blue-2);--mantine-primary-color-3: var(--mantine-color-blue-3);--mantine-primary-color-4: var(--mantine-color-blue-4);--mantine-primary-color-5: var(--mantine-color-blue-5);--mantine-primary-color-6: var(--mantine-color-blue-6);--mantine-primary-color-7: var(--mantine-color-blue-7);--mantine-primary-color-8: var(--mantine-color-blue-8);--mantine-primary-color-9: var(--mantine-color-blue-9);--mantine-color-dark-0: #c9c9c9;--mantine-color-dark-1: #b8b8b8;--mantine-color-dark-2: #828282;--mantine-color-dark-3: #696969;--mantine-color-dark-4: #424242;--mantine-color-dark-5: #3b3b3b;--mantine-color-dark-6: #2e2e2e;--mantine-color-dark-7: #242424;--mantine-color-dark-8: #1f1f1f;--mantine-color-dark-9: #141414;--mantine-color-gray-0: #f8f9fa;--mantine-color-gray-1: #f1f3f5;--mantine-color-gray-2: #e9ecef;--mantine-color-gray-3: #dee2e6;--mantine-color-gray-4: #ced4da;--mantine-color-gray-5: #adb5bd;--mantine-color-gray-6: #868e96;--mantine-color-gray-7: #495057;--mantine-color-gray-8: #343a40;--mantine-color-gray-9: #212529;--mantine-color-red-0: #fff5f5;--mantine-color-red-1: #ffe3e3;--mantine-color-red-2: #ffc9c9;--mantine-color-red-3: #ffa8a8;--mantine-color-red-4: #ff8787;--mantine-color-red-5: #ff6b6b;--mantine-color-red-6: #fa5252;--mantine-color-red-7: #f03e3e;--mantine-color-red-8: #e03131;--mantine-color-red-9: #c92a2a;--mantine-color-pink-0: #fff0f6;--mantine-color-pink-1: #ffdeeb;--mantine-color-pink-2: #fcc2d7;--mantine-color-pink-3: #faa2c1;--mantine-color-pink-4: #f783ac;--mantine-color-pink-5: #f06595;--mantine-color-pink-6: #e64980;--mantine-color-pink-7: #d6336c;--mantine-color-pink-8: #c2255c;--mantine-color-pink-9: #a61e4d;--mantine-color-grape-0: #f8f0fc;--mantine-color-grape-1: #f3d9fa;--mantine-color-grape-2: #eebefa;--mantine-color-grape-3: #e599f7;--mantine-color-grape-4: #da77f2;--mantine-color-grape-5: #cc5de8;--mantine-color-grape-6: #be4bdb;--mantine-color-grape-7: #ae3ec9;--mantine-color-grape-8: #9c36b5;--mantine-color-grape-9: #862e9c;--mantine-color-violet-0: #f3f0ff;--mantine-color-violet-1: #e5dbff;--mantine-color-violet-2: #d0bfff;--mantine-color-violet-3: #b197fc;--mantine-color-violet-4: #9775fa;--mantine-color-violet-5: #845ef7;--mantine-color-violet-6: #7950f2;--mantine-color-violet-7: #7048e8;--mantine-color-violet-8: #6741d9;--mantine-color-violet-9: #5f3dc4;--mantine-color-indigo-0: #edf2ff;--mantine-color-indigo-1: #dbe4ff;--mantine-color-indigo-2: #bac8ff;--mantine-color-indigo-3: #91a7ff;--mantine-color-indigo-4: #748ffc;--mantine-color-indigo-5: #5c7cfa;--mantine-color-indigo-6: #4c6ef5;--mantine-color-indigo-7: #4263eb;--mantine-color-indigo-8: #3b5bdb;--mantine-color-indigo-9: #364fc7;--mantine-color-blue-0: #e7f5ff;--mantine-color-blue-1: #d0ebff;--mantine-color-blue-2: #a5d8ff;--mantine-color-blue-3: #74c0fc;--mantine-color-blue-4: #4dabf7;--mantine-color-blue-5: #339af0;--mantine-color-blue-6: #228be6;--mantine-color-blue-7: #1c7ed6;--mantine-color-blue-8: #1971c2;--mantine-color-blue-9: #1864ab;--mantine-color-cyan-0: #e3fafc;--mantine-color-cyan-1: #c5f6fa;--mantine-color-cyan-2: #99e9f2;--mantine-color-cyan-3: #66d9e8;--mantine-color-cyan-4: #3bc9db;--mantine-color-cyan-5: #22b8cf;--mantine-color-cyan-6: #15aabf;--mantine-color-cyan-7: #1098ad;--mantine-color-cyan-8: #0c8599;--mantine-color-cyan-9: #0b7285;--mantine-color-teal-0: #e6fcf5;--mantine-color-teal-1: #c3fae8;--mantine-color-teal-2: #96f2d7;--mantine-color-teal-3: #63e6be;--mantine-color-teal-4: #38d9a9;--mantine-color-teal-5: #20c997;--mantine-color-teal-6: #12b886;--mantine-color-teal-7: #0ca678;--mantine-color-teal-8: #099268;--mantine-color-teal-9: #087f5b;--mantine-color-green-0: #ebfbee;--mantine-color-green-1: #d3f9d8;--mantine-color-green-2: #b2f2bb;--mantine-color-green-3: #8ce99a;--mantine-color-green-4: #69db7c;--mantine-color-green-5: #51cf66;--mantine-color-green-6: #40c057;--mantine-color-green-7: #37b24d;--mantine-color-green-8: #2f9e44;--mantine-color-green-9: #2b8a3e;--mantine-color-lime-0: #f4fce3;--mantine-color-lime-1: #e9fac8;--mantine-color-lime-2: #d8f5a2;--mantine-color-lime-3: #c0eb75;--mantine-color-lime-4: #a9e34b;--mantine-color-lime-5: #94d82d;--mantine-color-lime-6: #82c91e;--mantine-color-lime-7: #74b816;--mantine-color-lime-8: #66a80f;--mantine-color-lime-9: #5c940d;--mantine-color-yellow-0: #fff9db;--mantine-color-yellow-1: #fff3bf;--mantine-color-yellow-2: #ffec99;--mantine-color-yellow-3: #ffe066;--mantine-color-yellow-4: #ffd43b;--mantine-color-yellow-5: #fcc419;--mantine-color-yellow-6: #fab005;--mantine-color-yellow-7: #f59f00;--mantine-color-yellow-8: #f08c00;--mantine-color-yellow-9: #e67700;--mantine-color-orange-0: #fff4e6;--mantine-color-orange-1: #ffe8cc;--mantine-color-orange-2: #ffd8a8;--mantine-color-orange-3: #ffc078;--mantine-color-orange-4: #ffa94d;--mantine-color-orange-5: #ff922b;--mantine-color-orange-6: #fd7e14;--mantine-color-orange-7: #f76707;--mantine-color-orange-8: #e8590c;--mantine-color-orange-9: #d9480f;--mantine-h1-font-size: calc(2.125rem * var(--mantine-scale));--mantine-h1-line-height: 1.3;--mantine-h1-font-weight: 700;--mantine-h2-font-size: calc(1.625rem * var(--mantine-scale));--mantine-h2-line-height: 1.35;--mantine-h2-font-weight: 700;--mantine-h3-font-size: calc(1.375rem * var(--mantine-scale));--mantine-h3-line-height: 1.4;--mantine-h3-font-weight: 700;--mantine-h4-font-size: calc(1.125rem * var(--mantine-scale));--mantine-h4-line-height: 1.45;--mantine-h4-font-weight: 700;--mantine-h5-font-size: calc(1rem * var(--mantine-scale));--mantine-h5-line-height: 1.5;--mantine-h5-font-weight: 700;--mantine-h6-font-size: calc(.875rem * var(--mantine-scale));--mantine-h6-line-height: 1.5;--mantine-h6-font-weight: 700}:root[data-mantine-color-scheme=dark],:host([data-mantine-color-scheme="dark"]){--mantine-color-scheme: dark;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-white);--mantine-color-text: var(--mantine-color-dark-0);--mantine-color-body: var(--mantine-color-dark-7);--mantine-color-error: var(--mantine-color-red-8);--mantine-color-placeholder: var(--mantine-color-dark-3);--mantine-color-anchor: var(--mantine-color-blue-4);--mantine-color-default: var(--mantine-color-dark-6);--mantine-color-default-hover: var(--mantine-color-dark-5);--mantine-color-default-color: var(--mantine-color-white);--mantine-color-default-border: var(--mantine-color-dark-4);--mantine-color-dimmed: var(--mantine-color-dark-2);--mantine-color-disabled: var(--mantine-color-dark-6);--mantine-color-disabled-color: var(--mantine-color-dark-3);--mantine-color-disabled-border: var(--mantine-color-dark-4);--mantine-color-dark-text: var(--mantine-color-dark-4);--mantine-color-dark-filled: var(--mantine-color-dark-8);--mantine-color-dark-filled-hover: var(--mantine-color-dark-9);--mantine-color-dark-light: rgba(46, 46, 46, .15);--mantine-color-dark-light-hover: rgba(46, 46, 46, .2);--mantine-color-dark-light-color: var(--mantine-color-dark-3);--mantine-color-dark-outline: var(--mantine-color-dark-4);--mantine-color-dark-outline-hover: rgba(66, 66, 66, .05);--mantine-color-gray-text: var(--mantine-color-gray-4);--mantine-color-gray-filled: var(--mantine-color-gray-8);--mantine-color-gray-filled-hover: var(--mantine-color-gray-9);--mantine-color-gray-light: rgba(134, 142, 150, .15);--mantine-color-gray-light-hover: rgba(134, 142, 150, .2);--mantine-color-gray-light-color: var(--mantine-color-gray-3);--mantine-color-gray-outline: var(--mantine-color-gray-4);--mantine-color-gray-outline-hover: rgba(206, 212, 218, .05);--mantine-color-red-text: var(--mantine-color-red-4);--mantine-color-red-filled: var(--mantine-color-red-8);--mantine-color-red-filled-hover: var(--mantine-color-red-9);--mantine-color-red-light: rgba(250, 82, 82, .15);--mantine-color-red-light-hover: rgba(250, 82, 82, .2);--mantine-color-red-light-color: var(--mantine-color-red-3);--mantine-color-red-outline: var(--mantine-color-red-4);--mantine-color-red-outline-hover: rgba(255, 135, 135, .05);--mantine-color-pink-text: var(--mantine-color-pink-4);--mantine-color-pink-filled: var(--mantine-color-pink-8);--mantine-color-pink-filled-hover: var(--mantine-color-pink-9);--mantine-color-pink-light: rgba(230, 73, 128, .15);--mantine-color-pink-light-hover: rgba(230, 73, 128, .2);--mantine-color-pink-light-color: var(--mantine-color-pink-3);--mantine-color-pink-outline: var(--mantine-color-pink-4);--mantine-color-pink-outline-hover: rgba(247, 131, 172, .05);--mantine-color-grape-text: var(--mantine-color-grape-4);--mantine-color-grape-filled: var(--mantine-color-grape-8);--mantine-color-grape-filled-hover: var(--mantine-color-grape-9);--mantine-color-grape-light: rgba(190, 75, 219, .15);--mantine-color-grape-light-hover: rgba(190, 75, 219, .2);--mantine-color-grape-light-color: var(--mantine-color-grape-3);--mantine-color-grape-outline: var(--mantine-color-grape-4);--mantine-color-grape-outline-hover: rgba(218, 119, 242, .05);--mantine-color-violet-text: var(--mantine-color-violet-4);--mantine-color-violet-filled: var(--mantine-color-violet-8);--mantine-color-violet-filled-hover: var(--mantine-color-violet-9);--mantine-color-violet-light: rgba(121, 80, 242, .15);--mantine-color-violet-light-hover: rgba(121, 80, 242, .2);--mantine-color-violet-light-color: var(--mantine-color-violet-3);--mantine-color-violet-outline: var(--mantine-color-violet-4);--mantine-color-violet-outline-hover: rgba(151, 117, 250, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-4);--mantine-color-indigo-filled: var(--mantine-color-indigo-8);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-9);--mantine-color-indigo-light: rgba(76, 110, 245, .15);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .2);--mantine-color-indigo-light-color: var(--mantine-color-indigo-3);--mantine-color-indigo-outline: var(--mantine-color-indigo-4);--mantine-color-indigo-outline-hover: rgba(116, 143, 252, .05);--mantine-color-blue-text: var(--mantine-color-blue-4);--mantine-color-blue-filled: var(--mantine-color-blue-8);--mantine-color-blue-filled-hover: var(--mantine-color-blue-9);--mantine-color-blue-light: rgba(34, 139, 230, .15);--mantine-color-blue-light-hover: rgba(34, 139, 230, .2);--mantine-color-blue-light-color: var(--mantine-color-blue-3);--mantine-color-blue-outline: var(--mantine-color-blue-4);--mantine-color-blue-outline-hover: rgba(77, 171, 247, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-4);--mantine-color-cyan-filled: var(--mantine-color-cyan-8);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-9);--mantine-color-cyan-light: rgba(21, 170, 191, .15);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .2);--mantine-color-cyan-light-color: var(--mantine-color-cyan-3);--mantine-color-cyan-outline: var(--mantine-color-cyan-4);--mantine-color-cyan-outline-hover: rgba(59, 201, 219, .05);--mantine-color-teal-text: var(--mantine-color-teal-4);--mantine-color-teal-filled: var(--mantine-color-teal-8);--mantine-color-teal-filled-hover: var(--mantine-color-teal-9);--mantine-color-teal-light: rgba(18, 184, 134, .15);--mantine-color-teal-light-hover: rgba(18, 184, 134, .2);--mantine-color-teal-light-color: var(--mantine-color-teal-3);--mantine-color-teal-outline: var(--mantine-color-teal-4);--mantine-color-teal-outline-hover: rgba(56, 217, 169, .05);--mantine-color-green-text: var(--mantine-color-green-4);--mantine-color-green-filled: var(--mantine-color-green-8);--mantine-color-green-filled-hover: var(--mantine-color-green-9);--mantine-color-green-light: rgba(64, 192, 87, .15);--mantine-color-green-light-hover: rgba(64, 192, 87, .2);--mantine-color-green-light-color: var(--mantine-color-green-3);--mantine-color-green-outline: var(--mantine-color-green-4);--mantine-color-green-outline-hover: rgba(105, 219, 124, .05);--mantine-color-lime-text: var(--mantine-color-lime-4);--mantine-color-lime-filled: var(--mantine-color-lime-8);--mantine-color-lime-filled-hover: var(--mantine-color-lime-9);--mantine-color-lime-light: rgba(130, 201, 30, .15);--mantine-color-lime-light-hover: rgba(130, 201, 30, .2);--mantine-color-lime-light-color: var(--mantine-color-lime-3);--mantine-color-lime-outline: var(--mantine-color-lime-4);--mantine-color-lime-outline-hover: rgba(169, 227, 75, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-4);--mantine-color-yellow-filled: var(--mantine-color-yellow-8);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-9);--mantine-color-yellow-light: rgba(250, 176, 5, .15);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .2);--mantine-color-yellow-light-color: var(--mantine-color-yellow-3);--mantine-color-yellow-outline: var(--mantine-color-yellow-4);--mantine-color-yellow-outline-hover: rgba(255, 212, 59, .05);--mantine-color-orange-text: var(--mantine-color-orange-4);--mantine-color-orange-filled: var(--mantine-color-orange-8);--mantine-color-orange-filled-hover: var(--mantine-color-orange-9);--mantine-color-orange-light: rgba(253, 126, 20, .15);--mantine-color-orange-light-hover: rgba(253, 126, 20, .2);--mantine-color-orange-light-color: var(--mantine-color-orange-3);--mantine-color-orange-outline: var(--mantine-color-orange-4);--mantine-color-orange-outline-hover: rgba(255, 169, 77, .05)}:root[data-mantine-color-scheme=light],:host([data-mantine-color-scheme="light"]){--mantine-color-scheme: light;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-black);--mantine-color-text: #000;--mantine-color-body: #fff;--mantine-color-error: var(--mantine-color-red-6);--mantine-color-placeholder: var(--mantine-color-gray-5);--mantine-color-anchor: var(--mantine-color-blue-6);--mantine-color-default: var(--mantine-color-white);--mantine-color-default-hover: var(--mantine-color-gray-0);--mantine-color-default-color: var(--mantine-color-black);--mantine-color-default-border: var(--mantine-color-gray-4);--mantine-color-dimmed: var(--mantine-color-gray-6);--mantine-color-disabled: var(--mantine-color-gray-2);--mantine-color-disabled-color: var(--mantine-color-gray-5);--mantine-color-disabled-border: var(--mantine-color-gray-3);--mantine-color-dark-text: var(--mantine-color-dark-filled);--mantine-color-dark-filled: var(--mantine-color-dark-6);--mantine-color-dark-filled-hover: var(--mantine-color-dark-7);--mantine-color-dark-light: rgba(46, 46, 46, .1);--mantine-color-dark-light-hover: rgba(46, 46, 46, .12);--mantine-color-dark-light-color: var(--mantine-color-dark-6);--mantine-color-dark-outline: var(--mantine-color-dark-6);--mantine-color-dark-outline-hover: rgba(46, 46, 46, .05);--mantine-color-gray-text: var(--mantine-color-gray-filled);--mantine-color-gray-filled: var(--mantine-color-gray-6);--mantine-color-gray-filled-hover: var(--mantine-color-gray-7);--mantine-color-gray-light: rgba(134, 142, 150, .1);--mantine-color-gray-light-hover: rgba(134, 142, 150, .12);--mantine-color-gray-light-color: var(--mantine-color-gray-6);--mantine-color-gray-outline: var(--mantine-color-gray-6);--mantine-color-gray-outline-hover: rgba(134, 142, 150, .05);--mantine-color-red-text: var(--mantine-color-red-filled);--mantine-color-red-filled: var(--mantine-color-red-6);--mantine-color-red-filled-hover: var(--mantine-color-red-7);--mantine-color-red-light: rgba(250, 82, 82, .1);--mantine-color-red-light-hover: rgba(250, 82, 82, .12);--mantine-color-red-light-color: var(--mantine-color-red-6);--mantine-color-red-outline: var(--mantine-color-red-6);--mantine-color-red-outline-hover: rgba(250, 82, 82, .05);--mantine-color-pink-text: var(--mantine-color-pink-filled);--mantine-color-pink-filled: var(--mantine-color-pink-6);--mantine-color-pink-filled-hover: var(--mantine-color-pink-7);--mantine-color-pink-light: rgba(230, 73, 128, .1);--mantine-color-pink-light-hover: rgba(230, 73, 128, .12);--mantine-color-pink-light-color: var(--mantine-color-pink-6);--mantine-color-pink-outline: var(--mantine-color-pink-6);--mantine-color-pink-outline-hover: rgba(230, 73, 128, .05);--mantine-color-grape-text: var(--mantine-color-grape-filled);--mantine-color-grape-filled: var(--mantine-color-grape-6);--mantine-color-grape-filled-hover: var(--mantine-color-grape-7);--mantine-color-grape-light: rgba(190, 75, 219, .1);--mantine-color-grape-light-hover: rgba(190, 75, 219, .12);--mantine-color-grape-light-color: var(--mantine-color-grape-6);--mantine-color-grape-outline: var(--mantine-color-grape-6);--mantine-color-grape-outline-hover: rgba(190, 75, 219, .05);--mantine-color-violet-text: var(--mantine-color-violet-filled);--mantine-color-violet-filled: var(--mantine-color-violet-6);--mantine-color-violet-filled-hover: var(--mantine-color-violet-7);--mantine-color-violet-light: rgba(121, 80, 242, .1);--mantine-color-violet-light-hover: rgba(121, 80, 242, .12);--mantine-color-violet-light-color: var(--mantine-color-violet-6);--mantine-color-violet-outline: var(--mantine-color-violet-6);--mantine-color-violet-outline-hover: rgba(121, 80, 242, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-filled);--mantine-color-indigo-filled: var(--mantine-color-indigo-6);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-7);--mantine-color-indigo-light: rgba(76, 110, 245, .1);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .12);--mantine-color-indigo-light-color: var(--mantine-color-indigo-6);--mantine-color-indigo-outline: var(--mantine-color-indigo-6);--mantine-color-indigo-outline-hover: rgba(76, 110, 245, .05);--mantine-color-blue-text: var(--mantine-color-blue-filled);--mantine-color-blue-filled: var(--mantine-color-blue-6);--mantine-color-blue-filled-hover: var(--mantine-color-blue-7);--mantine-color-blue-light: rgba(34, 139, 230, .1);--mantine-color-blue-light-hover: rgba(34, 139, 230, .12);--mantine-color-blue-light-color: var(--mantine-color-blue-6);--mantine-color-blue-outline: var(--mantine-color-blue-6);--mantine-color-blue-outline-hover: rgba(34, 139, 230, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-filled);--mantine-color-cyan-filled: var(--mantine-color-cyan-6);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-7);--mantine-color-cyan-light: rgba(21, 170, 191, .1);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .12);--mantine-color-cyan-light-color: var(--mantine-color-cyan-6);--mantine-color-cyan-outline: var(--mantine-color-cyan-6);--mantine-color-cyan-outline-hover: rgba(21, 170, 191, .05);--mantine-color-teal-text: var(--mantine-color-teal-filled);--mantine-color-teal-filled: var(--mantine-color-teal-6);--mantine-color-teal-filled-hover: var(--mantine-color-teal-7);--mantine-color-teal-light: rgba(18, 184, 134, .1);--mantine-color-teal-light-hover: rgba(18, 184, 134, .12);--mantine-color-teal-light-color: var(--mantine-color-teal-6);--mantine-color-teal-outline: var(--mantine-color-teal-6);--mantine-color-teal-outline-hover: rgba(18, 184, 134, .05);--mantine-color-green-text: var(--mantine-color-green-filled);--mantine-color-green-filled: var(--mantine-color-green-6);--mantine-color-green-filled-hover: var(--mantine-color-green-7);--mantine-color-green-light: rgba(64, 192, 87, .1);--mantine-color-green-light-hover: rgba(64, 192, 87, .12);--mantine-color-green-light-color: var(--mantine-color-green-6);--mantine-color-green-outline: var(--mantine-color-green-6);--mantine-color-green-outline-hover: rgba(64, 192, 87, .05);--mantine-color-lime-text: var(--mantine-color-lime-filled);--mantine-color-lime-filled: var(--mantine-color-lime-6);--mantine-color-lime-filled-hover: var(--mantine-color-lime-7);--mantine-color-lime-light: rgba(130, 201, 30, .1);--mantine-color-lime-light-hover: rgba(130, 201, 30, .12);--mantine-color-lime-light-color: var(--mantine-color-lime-6);--mantine-color-lime-outline: var(--mantine-color-lime-6);--mantine-color-lime-outline-hover: rgba(130, 201, 30, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-filled);--mantine-color-yellow-filled: var(--mantine-color-yellow-6);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-7);--mantine-color-yellow-light: rgba(250, 176, 5, .1);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .12);--mantine-color-yellow-light-color: var(--mantine-color-yellow-6);--mantine-color-yellow-outline: var(--mantine-color-yellow-6);--mantine-color-yellow-outline-hover: rgba(250, 176, 5, .05);--mantine-color-orange-text: var(--mantine-color-orange-filled);--mantine-color-orange-filled: var(--mantine-color-orange-6);--mantine-color-orange-filled-hover: var(--mantine-color-orange-7);--mantine-color-orange-light: rgba(253, 126, 20, .1);--mantine-color-orange-light-hover: rgba(253, 126, 20, .12);--mantine-color-orange-light-color: var(--mantine-color-orange-6);--mantine-color-orange-outline: var(--mantine-color-orange-6);--mantine-color-orange-outline-hover: rgba(253, 126, 20, .05)}.m_d57069b5{--scrollarea-scrollbar-size: calc(.75rem * var(--mantine-scale));position:relative;overflow:hidden}.m_d57069b5:where([data-autosize]) .m_b1336c6{min-width:min-content}.m_c0783ff9{scrollbar-width:none;overscroll-behavior:var(--scrollarea-over-scroll-behavior);-ms-overflow-style:none;-webkit-overflow-scrolling:touch;width:100%;height:100%}.m_c0783ff9::-webkit-scrollbar{display:none}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):where([data-vertical-hidden]){padding-inline-end:0;padding-inline-start:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):not([data-vertical-hidden]){padding-inline-end:var(--scrollarea-scrollbar-size);padding-inline-start:unset}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):where([data-horizontal-hidden]){padding-bottom:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):not([data-horizontal-hidden]){padding-bottom:var(--scrollarea-scrollbar-size)}.m_f8f631dd{min-width:100%;display:table}.m_c44ba933{user-select:none;touch-action:none;box-sizing:border-box;transition:background-color .15s ease,opacity .15s ease;padding:calc(var(--scrollarea-scrollbar-size) / 5);display:flex;background-color:transparent;flex-direction:row}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_c44ba933:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:hover>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover>.m_d8b5e363{background-color:#ffffff80}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_c44ba933:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:active>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active>.m_d8b5e363{background-color:#ffffff80}}.m_c44ba933:where([data-hidden],[data-state=hidden]){display:none}.m_c44ba933:where([data-orientation=vertical]){width:var(--scrollarea-scrollbar-size);top:0;bottom:var(--sa-corner-width);inset-inline-end:0}.m_c44ba933:where([data-orientation=horizontal]){height:var(--scrollarea-scrollbar-size);flex-direction:column;bottom:0;inset-inline-start:0;inset-inline-end:var(--sa-corner-width)}.m_d8b5e363{flex:1;border-radius:var(--scrollarea-scrollbar-size);position:relative;transition:background-color .15s ease;overflow:hidden;opacity:var(--thumb-opacity)}.m_d8b5e363:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:calc(2.75rem * var(--mantine-scale));min-height:calc(2.75rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d8b5e363{background-color:#0006}:where([data-mantine-color-scheme=dark]) .m_d8b5e363{background-color:#fff6}.m_21657268{position:absolute;opacity:0;transition:opacity .15s ease;display:block;inset-inline-end:0;bottom:0}:where([data-mantine-color-scheme=light]) .m_21657268{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_21657268{background-color:var(--mantine-color-dark-8)}.m_21657268:where([data-hovered]){opacity:1}.m_21657268:where([data-hidden]){display:none}.m_b1336c6{min-width:100%}.m_87cf2631{background-color:transparent;cursor:pointer;border:0;padding:0;appearance:none;font-size:var(--mantine-font-size-md);text-align:left;text-decoration:none;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}:where([dir=rtl]) .m_87cf2631{text-align:right}.m_515a97f8{border:0;clip:rect(0 0 0 0);height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));margin:calc(-.0625rem * var(--mantine-scale));overflow:hidden;padding:0;position:absolute;white-space:nowrap}.m_1b7284a3{--paper-radius: var(--mantine-radius-default);outline:0;-webkit-tap-highlight-color:transparent;display:block;touch-action:manipulation;text-decoration:none;border-radius:var(--paper-radius);box-shadow:var(--paper-shadow);background-color:var(--mantine-color-body)}[data-mantine-color-scheme=light] .m_1b7284a3{--paper-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_1b7284a3{--paper-border-color: var(--mantine-color-dark-4)}.m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--paper-border-color)}.m_9814e45f{inset:0;position:absolute;background:var(--overlay-bg, rgba(0, 0, 0, .6));-webkit-backdrop-filter:var(--overlay-filter);backdrop-filter:var(--overlay-filter);border-radius:var(--overlay-radius, 0);z-index:var(--overlay-z-index)}.m_9814e45f:where([data-fixed]){position:fixed}.m_9814e45f:where([data-center]){display:flex;align-items:center;justify-content:center}.m_38a85659{position:absolute;border:1px solid var(--popover-border-color);padding:var(--mantine-spacing-sm) var(--mantine-spacing-md);box-shadow:var(--popover-shadow, none);border-radius:var(--popover-radius, var(--mantine-radius-default))}.m_38a85659:where([data-fixed]){position:fixed}.m_38a85659:focus{outline:none}:where([data-mantine-color-scheme=light]) .m_38a85659{--popover-border-color: var(--mantine-color-gray-2);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_38a85659{--popover-border-color: var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_a31dc6c1{background-color:inherit;border:1px solid var(--popover-border-color);z-index:1}.m_3d7bc908{position:fixed;inset:0}.m_5ae2e3c{--loader-size-xs: calc(1.125rem * var(--mantine-scale));--loader-size-sm: calc(1.375rem * var(--mantine-scale));--loader-size-md: calc(2.25rem * var(--mantine-scale));--loader-size-lg: calc(2.75rem * var(--mantine-scale));--loader-size-xl: calc(3.625rem * var(--mantine-scale));--loader-size: var(--loader-size-md);--loader-color: var(--mantine-primary-color-filled)}@keyframes m_5d2b3b9d{0%{transform:scale(.6);opacity:0}50%,to{transform:scale(1)}}.m_7a2bd4cd{position:relative;width:var(--loader-size);height:var(--loader-size);display:flex;gap:calc(var(--loader-size) / 5)}.m_870bb79{flex:1;background:var(--loader-color);animation:m_5d2b3b9d 1.2s cubic-bezier(0,.5,.5,1) infinite;border-radius:calc(.125rem * var(--mantine-scale))}.m_870bb79:nth-of-type(1){animation-delay:-.24s}.m_870bb79:nth-of-type(2){animation-delay:-.12s}.m_870bb79:nth-of-type(3){animation-delay:0}@keyframes m_aac34a1{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.5}}.m_4e3f22d7{display:flex;justify-content:center;align-items:center;gap:calc(var(--loader-size) / 10);position:relative;width:var(--loader-size);height:var(--loader-size)}.m_870c4af{width:calc(var(--loader-size) / 3 - var(--loader-size) / 15);height:calc(var(--loader-size) / 3 - var(--loader-size) / 15);border-radius:50%;background:var(--loader-color);animation:m_aac34a1 .8s infinite linear}.m_870c4af:nth-child(2){animation-delay:.4s}@keyframes m_f8e89c4b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.m_b34414df{display:inline-block;width:var(--loader-size);height:var(--loader-size)}.m_b34414df:after{content:"";display:block;width:var(--loader-size);height:var(--loader-size);border-radius:calc(625rem * var(--mantine-scale));border-width:calc(var(--loader-size) / 8);border-style:solid;border-color:var(--loader-color) var(--loader-color) var(--loader-color) transparent;animation:m_f8e89c4b 1.2s linear infinite}.m_8d3f4000{--ai-size-xs: calc(1.125rem * var(--mantine-scale));--ai-size-sm: calc(1.375rem * var(--mantine-scale));--ai-size-md: calc(1.75rem * var(--mantine-scale));--ai-size-lg: calc(2.125rem * var(--mantine-scale));--ai-size-xl: calc(2.75rem * var(--mantine-scale));--ai-size-input-xs: calc(1.875rem * var(--mantine-scale));--ai-size-input-sm: calc(2.25rem * var(--mantine-scale));--ai-size-input-md: calc(2.625rem * var(--mantine-scale));--ai-size-input-lg: calc(3.125rem * var(--mantine-scale));--ai-size-input-xl: calc(3.75rem * var(--mantine-scale));--ai-size: var(--ai-size-md);--ai-color: var(--mantine-color-white);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;overflow:hidden;width:var(--ai-size);height:var(--ai-size);min-width:var(--ai-size);min-height:var(--ai-size);border-radius:var(--ai-radius, var(--mantine-radius-default));background:var(--ai-bg, var(--mantine-primary-color-filled));color:var(--ai-color, var(--mantine-color-white));border:var(--ai-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);cursor:pointer}@media(hover:hover){.m_8d3f4000:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}@media(hover:none){.m_8d3f4000:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}.m_8d3f4000[data-loading]{cursor:not-allowed}.m_8d3f4000[data-loading] .m_8d3afb97{opacity:0;transform:translateY(100%)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-disabled-color);background:var(--mantine-color-disabled)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])):active{transform:none}.m_302b9fb1{inset:calc(-.0625rem * var(--mantine-scale));position:absolute;border-radius:var(--ai-radius, var(--mantine-radius-default));display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_302b9fb1{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_302b9fb1{background-color:#00000026}.m_1a0f1b21{--ai-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_1a0f1b21 :where(*):focus{position:relative;z-index:1}.m_1a0f1b21[data-orientation=horizontal]{flex-direction:row}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical]{flex-direction:column}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2);border-top-width:calc(var(--ai-border-width) / 2)}.m_8d3afb97{display:flex;align-items:center;justify-content:center;transition:transform .15s ease,opacity .1s ease;width:100%;height:100%}.m_437b6484{--section-height-xs: calc(1.125rem * var(--mantine-scale));--section-height-sm: calc(1.375rem * var(--mantine-scale));--section-height-md: calc(1.75rem * var(--mantine-scale));--section-height-lg: calc(2.125rem * var(--mantine-scale));--section-height-xl: calc(2.75rem * var(--mantine-scale));--section-height-input-xs: calc(1.875rem * var(--mantine-scale));--section-height-input-sm: calc(2.25rem * var(--mantine-scale));--section-height-input-md: calc(2.625rem * var(--mantine-scale));--section-height-input-lg: calc(3.125rem * var(--mantine-scale));--section-height-input-xl: calc(3.75rem * var(--mantine-scale));--section-padding-x-xs: calc(.375rem * var(--mantine-scale));--section-padding-x-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-md: calc(.625rem * var(--mantine-scale));--section-padding-x-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-xl: calc(1rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_86a44da5{--cb-size-xs: calc(1.125rem * var(--mantine-scale));--cb-size-sm: calc(1.375rem * var(--mantine-scale));--cb-size-md: calc(1.75rem * var(--mantine-scale));--cb-size-lg: calc(2.125rem * var(--mantine-scale));--cb-size-xl: calc(2.75rem * var(--mantine-scale));--cb-size: var(--cb-size-md);--cb-icon-size: 70%;--cb-radius: var(--mantine-radius-default);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;width:var(--cb-size);height:var(--cb-size);min-width:var(--cb-size);min-height:var(--cb-size);border-radius:var(--cb-radius)}:where([data-mantine-color-scheme=light]) .m_86a44da5{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_86a44da5{color:var(--mantine-color-dark-1)}.m_86a44da5[data-disabled],.m_86a44da5:disabled{cursor:not-allowed;opacity:.6}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-dark-6)}}.m_4081bf90{display:flex;flex-direction:row;flex-wrap:var(--group-wrap, wrap);justify-content:var(--group-justify, flex-start);align-items:var(--group-align, center);gap:var(--group-gap, var(--mantine-spacing-md))}.m_4081bf90:where([data-grow])>*{flex-grow:1;max-width:var(--group-child-width)}.m_615af6c9{line-height:1;padding:0;margin:0;font-weight:400;font-size:var(--mantine-font-size-md)}.m_b5489c3c{display:flex;justify-content:space-between;align-items:center;padding:var(--mb-padding, var(--mantine-spacing-md));padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) - calc(.3125rem * var(--mantine-scale)));position:sticky;top:0;background-color:var(--mantine-color-body);z-index:1000;min-height:calc(3.75rem * var(--mantine-scale));transition:padding-inline-end .1s}.m_60c222c7{position:fixed;width:100%;top:0;bottom:0;z-index:var(--mb-z-index);pointer-events:none}.m_fd1ab0aa{pointer-events:all;box-shadow:var(--mb-shadow, var(--mantine-shadow-xl))}.m_fd1ab0aa [data-mantine-scrollbar]{z-index:1001}[data-offset-scrollbars] .m_fd1ab0aa:has([data-mantine-scrollbar]) .m_b5489c3c{padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) + calc(.3125rem * var(--mantine-scale)))}.m_606cb269{margin-inline-start:auto}.m_5df29311{padding:var(--mb-padding, var(--mantine-spacing-md));padding-top:var(--mb-padding, var(--mantine-spacing-md))}.m_5df29311:where(:not(:only-child)){padding-top:0}.m_6c018570{position:relative;margin-top:var(--input-margin-top, 0rem);margin-bottom:var(--input-margin-bottom, 0rem);--input-height-xs: calc(1.875rem * var(--mantine-scale));--input-height-sm: calc(2.25rem * var(--mantine-scale));--input-height-md: calc(2.625rem * var(--mantine-scale));--input-height-lg: calc(3.125rem * var(--mantine-scale));--input-height-xl: calc(3.75rem * var(--mantine-scale));--input-padding-y-xs: calc(.3125rem * var(--mantine-scale));--input-padding-y-sm: calc(.375rem * var(--mantine-scale));--input-padding-y-md: calc(.5rem * var(--mantine-scale));--input-padding-y-lg: calc(.625rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-height: var(--input-height-sm);--input-radius: var(--mantine-radius-default);--input-cursor: text;--input-text-align: left;--input-line-height: calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));--input-padding: calc(var(--input-height) / 3);--input-padding-inline-start: var(--input-padding);--input-padding-inline-end: var(--input-padding);--input-placeholder-color: var(--mantine-color-placeholder);--input-color: var(--mantine-color-text);--input-disabled-bg: var(--mantine-color-disabled);--input-disabled-color: var(--mantine-color-disabled-color);--input-left-section-size: var(--input-left-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))));--input-right-section-size: var( --input-right-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))) );--input-size: var(--input-height);--section-y: calc(.0625rem * var(--mantine-scale));--left-section-start: calc(.0625rem * var(--mantine-scale));--left-section-border-radius: var(--input-radius) 0 0 var(--input-radius);--right-section-end: calc(.0625rem * var(--mantine-scale));--right-section-border-radius: 0 var(--input-radius) var(--input-radius) 0}.m_6c018570[data-variant=unstyled]{--input-padding: 0;--input-padding-y: 0;--input-padding-inline-start: 0;--input-padding-inline-end: 0}.m_6c018570[data-pointer]{--input-cursor: pointer}.m_6c018570[data-multiline]{--input-padding-y-xs: calc(.28125rem * var(--mantine-scale));--input-padding-y-sm: calc(.34375rem * var(--mantine-scale));--input-padding-y-md: calc(.4375rem * var(--mantine-scale));--input-padding-y-lg: calc(.59375rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-size: auto;--input-line-height: var(--mantine-line-height)}.m_6c018570[data-with-left-section]{--input-padding-inline-start: var(--input-left-section-size)}.m_6c018570[data-with-right-section]{--input-padding-inline-end: var(--input-right-section-size)}.m_6c018570[data-size=xs] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(2.5625rem * var(--mantine-scale))}.m_6c018570[data-size=sm] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(3.125rem * var(--mantine-scale))}.m_6c018570[data-size=md] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(3.75rem * var(--mantine-scale))}.m_6c018570[data-size=lg] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(4.5rem * var(--mantine-scale))}.m_6c018570[data-size=xl] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(5.5625rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-gray-4);--input-bg: var(--mantine-color-white);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-gray-1);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-dark-4);--input-bg: var(--mantine-color-dark-6);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-dark-5);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme] .m_6c018570[data-error]:not([data-variant=unstyled]){--input-bd: var(--mantine-color-error)}[data-mantine-color-scheme] .m_6c018570[data-error]{--input-color: var(--mantine-color-error);--input-placeholder-color: var(--mantine-color-error);--input-section-color: var(--mantine-color-error)}:where([dir=rtl]) .m_6c018570{--input-text-align: right;--left-section-border-radius: 0 var(--input-radius) var(--input-radius) 0;--right-section-border-radius: var(--input-radius) 0 0 var(--input-radius)}.m_8fb7ebe7{-webkit-tap-highlight-color:transparent;appearance:none;resize:var(--input-resize, none);display:block;width:100%;transition:border-color .1s ease;text-align:var(--input-text-align);color:var(--input-color);border:calc(.0625rem * var(--mantine-scale)) solid var(--input-bd);background-color:var(--input-bg);font-family:var(--input-font-family, var(--mantine-font-family));height:var(--input-size);min-height:var(--input-height);line-height:var(--input-line-height);font-size:var(--_input-fz, var(--input-fz, var(--mantine-font-size-md)));border-radius:var(--input-radius);padding-inline-start:var(--input-padding-inline-start);padding-inline-end:var(--input-padding-inline-end);padding-top:var(--input-padding-y, 0rem);padding-bottom:var(--input-padding-y, 0rem);cursor:var(--input-cursor);overflow:var(--input-overflow)}.m_8fb7ebe7[data-no-overflow]{--input-overflow: hidden}.m_8fb7ebe7[data-monospace]{--input-font-family: var(--mantine-font-family-monospace);--_input-fz: calc(var(--input-fz) - calc(.125rem * var(--mantine-scale)))}.m_8fb7ebe7:focus,.m_8fb7ebe7:focus-within{outline:none;--input-bd: var(--input-bd-focus)}[data-error] .m_8fb7ebe7:focus,[data-error] .m_8fb7ebe7:focus-within{--input-bd: var(--mantine-color-error)}.m_8fb7ebe7::placeholder{color:var(--input-placeholder-color);opacity:1}.m_8fb7ebe7::-webkit-inner-spin-button,.m_8fb7ebe7::-webkit-outer-spin-button,.m_8fb7ebe7::-webkit-search-decoration,.m_8fb7ebe7::-webkit-search-cancel-button,.m_8fb7ebe7::-webkit-search-results-button,.m_8fb7ebe7::-webkit-search-results-decoration{appearance:none}.m_8fb7ebe7[type=number]{-moz-appearance:textfield}.m_8fb7ebe7:disabled,.m_8fb7ebe7[data-disabled]{cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7:has(input:disabled){cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7[readonly]{caret-color:transparent}.m_82577fc2{pointer-events:var(--section-pointer-events);position:absolute;z-index:1;inset-inline-start:var(--section-start);inset-inline-end:var(--section-end);bottom:var(--section-y);top:var(--section-y);display:flex;align-items:center;justify-content:center;width:var(--section-size);border-radius:var(--section-border-radius);color:var(--input-section-color, var(--mantine-color-dimmed))}.m_82577fc2[data-position=right]{--section-pointer-events: var(--input-right-section-pointer-events);--section-end: var(--right-section-end);--section-size: var(--input-right-section-size);--section-border-radius: var(--right-section-border-radius)}.m_6c018570[data-size=xs] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(2.5625rem * var(--mantine-scale))}.m_6c018570[data-size=sm] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(3.125rem * var(--mantine-scale))}.m_6c018570[data-size=md] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(3.75rem * var(--mantine-scale))}.m_6c018570[data-size=lg] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(4.5rem * var(--mantine-scale))}.m_6c018570[data-size=xl] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(5.5625rem * var(--mantine-scale))}.m_82577fc2[data-position=left]{--section-pointer-events: var(--input-left-section-pointer-events);--section-start: var(--left-section-start);--section-size: var(--input-left-section-size);--section-border-radius: var(--left-section-border-radius)}.m_88bacfd0{color:var(--input-placeholder-color, var(--mantine-color-placeholder))}[data-error] .m_88bacfd0{--input-placeholder-color: var(--input-color, var(--mantine-color-placeholder))}.m_46b77525{line-height:var(--mantine-line-height)}.m_8fdc1311{display:inline-block;font-weight:500;overflow-wrap:break-word;cursor:default;-webkit-tap-highlight-color:transparent;font-size:var(--input-label-size, var(--mantine-font-size-sm))}.m_78a94662{color:var(--input-asterisk-color, var(--mantine-color-error))}.m_8f816625,.m_fe47ce59{word-wrap:break-word;line-height:1.2;display:block;margin:0;padding:0}.m_8f816625{color:var(--mantine-color-error);font-size:var(--input-error-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_fe47ce59{color:var(--mantine-color-dimmed);font-size:var(--input-description-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_8bffd616{display:flex}.m_96b553a6{--transition-duration: .15s;top:0;left:0;position:absolute;z-index:0;transition-property:transform,width,height;transition-timing-function:ease;transition-duration:0ms}.m_96b553a6:where([data-initialized]){transition-duration:var(--transition-duration)}.m_96b553a6:where([data-hidden]){background-color:red;display:none}.m_9bdbb667{--accordion-radius: var(--mantine-radius-default)}.m_df78851f{overflow-wrap:break-word}.m_4ba554d4{padding:var(--mantine-spacing-md);padding-top:calc(var(--mantine-spacing-xs) / 2)}.m_8fa820a0{margin:0;padding:0}.m_4ba585b8{width:100%;display:flex;align-items:center;flex-direction:row-reverse;padding-inline:var(--mantine-spacing-md);opacity:1;cursor:pointer;background-color:transparent;color:var(--mantine-color-bright)}.m_4ba585b8:where([data-chevron-position=left]){flex-direction:row;padding-inline-start:0}.m_4ba585b8:where(:disabled,[data-disabled]){opacity:.4;cursor:not-allowed}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-dark-6)}}.m_df3ffa0f{color:inherit;font-weight:400;flex:1;overflow:hidden;text-overflow:ellipsis;padding-top:var(--mantine-spacing-sm);padding-bottom:var(--mantine-spacing-sm)}.m_3f35ae96{display:flex;align-items:center;justify-content:flex-start;transition:transform var(--accordion-transition-duration, .2s) ease;width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));min-width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));transform:rotate(0)}.m_3f35ae96:where([data-rotate]){transform:rotate(180deg)}.m_3f35ae96:where([data-position=left]){margin-inline-end:var(--mantine-spacing-md);margin-inline-start:var(--mantine-spacing-md)}.m_9bd771fe{display:flex;align-items:center;justify-content:center;margin-inline-end:var(--mantine-spacing-sm)}.m_9bd771fe:where([data-chevron-position=left]){margin-inline-end:0;margin-inline-start:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_9bd7b098{--item-border-color: var(--mantine-color-gray-3);--item-filled-color: var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_9bd7b098{--item-border-color: var(--mantine-color-dark-4);--item-filled-color: var(--mantine-color-dark-6)}.m_fe19b709{border-bottom:1px solid var(--item-border-color)}.m_1f921b3b{border:1px solid var(--item-border-color);transition:background-color .15s ease}.m_1f921b3b:where([data-active]){background-color:var(--item-filled-color)}.m_1f921b3b:first-of-type{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:first-of-type>[data-accordion-control]{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type>[data-accordion-control]{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b+.m_1f921b3b{border-top:0}.m_2cdf939a{border-radius:var(--accordion-radius)}.m_2cdf939a:where([data-active]){background-color:var(--item-filled-color)}.m_9f59b069{background-color:var(--item-filled-color);border-radius:var(--accordion-radius);border:calc(.0625rem * var(--mantine-scale)) solid transparent;transition:background-color .15s ease}.m_9f59b069[data-active]{border-color:var(--item-border-color)}:where([data-mantine-color-scheme=light]) .m_9f59b069[data-active]{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_9f59b069[data-active]{background-color:var(--mantine-color-dark-7)}.m_9f59b069+.m_9f59b069{margin-top:var(--mantine-spacing-md)}.m_7f854edf{position:fixed;z-index:var(--affix-z-index);inset-inline-start:var(--affix-left);inset-inline-end:var(--affix-right);top:var(--affix-top);bottom:var(--affix-bottom)}.m_66836ed3{--alert-radius: var(--mantine-radius-default);--alert-bg: var(--mantine-primary-color-light);--alert-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--alert-color: var(--mantine-primary-color-light-color);padding:var(--mantine-spacing-md) var(--mantine-spacing-md);border-radius:var(--alert-radius);position:relative;overflow:hidden;background-color:var(--alert-bg);border:var(--alert-bd);color:var(--alert-color)}.m_a5d60502{display:flex}.m_667c2793{flex:1;display:flex;flex-direction:column;gap:var(--mantine-spacing-xs)}.m_6a03f287{display:flex;align-items:center;justify-content:space-between;font-size:var(--mantine-font-size-sm);font-weight:700}.m_6a03f287:where([data-with-close-button]){padding-inline-end:var(--mantine-spacing-md)}.m_698f4f23{display:block;overflow:hidden;text-overflow:ellipsis}.m_667f2a6a{line-height:1;width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));display:flex;align-items:center;justify-content:flex-start;margin-inline-end:var(--mantine-spacing-md);margin-top:calc(.0625rem * var(--mantine-scale))}.m_7fa78076{text-overflow:ellipsis;overflow:hidden;font-size:var(--mantine-font-size-sm)}:where([data-mantine-color-scheme=light]) .m_7fa78076{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_7fa78076{color:var(--mantine-color-white)}.m_7fa78076:where([data-variant=filled]){color:var(--alert-color)}.m_7fa78076:where([data-variant=white]){color:var(--mantine-color-black)}.m_87f54839{width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));color:var(--alert-color)}.m_b6d8b162{-webkit-tap-highlight-color:transparent;text-decoration:none;font-size:var(--text-fz, var(--mantine-font-size-md));line-height:var(--text-lh, var(--mantine-line-height-md));font-weight:400;margin:0;padding:0;color:var(--text-color)}.m_b6d8b162:where([data-truncate]){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m_b6d8b162:where([data-truncate=start]){direction:rtl;text-align:right}:where([dir=rtl]) .m_b6d8b162:where([data-truncate=start]){direction:ltr;text-align:left}.m_b6d8b162:where([data-variant=gradient]){background-image:var(--text-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.m_b6d8b162:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--text-line-clamp);-webkit-box-orient:vertical}.m_b6d8b162:where([data-inherit]){line-height:inherit;font-weight:inherit;font-size:inherit}.m_b6d8b162:where([data-inline]){line-height:1}.m_849cf0da{color:var(--mantine-color-anchor);text-decoration:none;appearance:none;border:none;display:inline;padding:0;margin:0;background-color:transparent;cursor:pointer}@media(hover:hover){.m_849cf0da:where([data-underline=hover]):hover{text-decoration:underline}}@media(hover:none){.m_849cf0da:where([data-underline=hover]):active{text-decoration:underline}}.m_849cf0da:where([data-underline=not-hover]){text-decoration:underline}@media(hover:hover){.m_849cf0da:where([data-underline=not-hover]):hover{text-decoration:none}}@media(hover:none){.m_849cf0da:where([data-underline=not-hover]):active{text-decoration:none}}.m_849cf0da:where([data-underline=always]){text-decoration:underline}.m_849cf0da:where([data-variant=gradient]),.m_849cf0da:where([data-variant=gradient]):hover{text-decoration:none}.m_849cf0da:where([data-line-clamp]){display:-webkit-box}.m_48204f9b{width:var(--slider-size);height:var(--slider-size);position:relative;border-radius:100%;display:flex;align-items:center;justify-content:center;user-select:none}.m_48204f9b:focus-within{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_48204f9b{--slider-size: calc(3.75rem * var(--mantine-scale));--thumb-size: calc(var(--slider-size) / 5)}:where([data-mantine-color-scheme=light]) .m_48204f9b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_48204f9b{background-color:var(--mantine-color-dark-5)}.m_bb9cdbad{position:absolute;inset:calc(.0625rem * var(--mantine-scale));border-radius:var(--slider-size);pointer-events:none}.m_481dd586{width:calc(.125rem * var(--mantine-scale));position:absolute;top:0;bottom:0;left:calc(50% - 1px);transform:rotate(var(--angle))}.m_481dd586:before{content:"";position:absolute;top:calc(var(--thumb-size) / 3);left:calc(.03125rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));height:calc(var(--thumb-size) / 1.5);transform:translate(-50%,-50%)}:where([data-mantine-color-scheme=light]) .m_481dd586:before{background-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_481dd586:before{background-color:var(--mantine-color-dark-3)}.m_481dd586[data-label]:after{min-width:calc(1.125rem * var(--mantine-scale));text-align:center;content:attr(data-label);position:absolute;top:calc(-1.5rem * var(--mantine-scale));left:calc(-.4375rem * var(--mantine-scale));transform:rotate(calc(360deg - var(--angle)));font-size:var(--mantine-font-size-xs)}.m_bc02ba3d{position:absolute;inset-block:0;inset-inline-start:calc(50% - 1.5px);inset-inline-end:0;height:100%;width:calc(.1875rem * var(--mantine-scale));outline:none;pointer-events:none}.m_bc02ba3d:before{content:"";position:absolute;right:0;top:0;height:min(var(--thumb-size),calc(var(--slider-size) / 2));width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_bc02ba3d:before{background-color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_bc02ba3d:before{background-color:var(--mantine-color-dark-1)}.m_bb8e875b{font-size:var(--mantine-font-size-xs)}.m_89ab340[data-resizing]{--app-shell-transition-duration: 0ms !important}.m_89ab340[data-disabled]{--app-shell-header-offset: 0rem !important;--app-shell-navbar-offset: 0rem !important;--app-shell-aside-offset: 0rem !important;--app-shell-footer-offset: 0rem !important}[data-mantine-color-scheme=light] .m_89ab340{--app-shell-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89ab340{--app-shell-border-color: var(--mantine-color-dark-4)}.m_45252eee,.m_9cdde9a,.m_3b16f56b,.m_8983817,.m_3840c879{transition-duration:var(--app-shell-transition-duration);transition-timing-function:var(--app-shell-transition-timing-function)}.m_45252eee,.m_9cdde9a{position:fixed;display:flex;flex-direction:column;top:var(--app-shell-header-offset, 0rem);height:calc(100dvh - var(--app-shell-header-offset, 0rem) - var(--app-shell-footer-offset, 0rem));background-color:var(--mantine-color-body);transition-property:transform,top,height}:where([data-layout=alt]) .m_45252eee,:where([data-layout=alt]) .m_9cdde9a{top:0rem;height:100dvh}.m_45252eee{inset-inline-start:0;width:var(--app-shell-navbar-width);transition-property:transform,top,height;transform:var(--app-shell-navbar-transform);z-index:var(--app-shell-navbar-z-index)}:where([dir=rtl]) .m_45252eee{transform:var(--app-shell-navbar-transform-rtl)}.m_45252eee:where([data-with-border]){border-inline-end:1px solid var(--app-shell-border-color)}.m_9cdde9a{inset-inline-end:0;width:var(--app-shell-aside-width);transform:var(--app-shell-aside-transform);z-index:var(--app-shell-aside-z-index)}:where([dir=rtl]) .m_9cdde9a{transform:var(--app-shell-aside-transform-rtl)}.m_9cdde9a:where([data-with-border]){border-inline-start:1px solid var(--app-shell-border-color)}:where([data-scroll-locked]) .m_9cdde9a{visibility:var(--app-shell-aside-scroll-locked-visibility)}.m_8983817{padding-inline-start:calc(var(--app-shell-navbar-offset, 0rem) + var(--app-shell-padding));padding-inline-end:calc(var(--app-shell-aside-offset, 0rem) + var(--app-shell-padding));padding-top:calc(var(--app-shell-header-offset, 0rem) + var(--app-shell-padding));padding-bottom:calc(var(--app-shell-footer-offset, 0rem) + var(--app-shell-padding));min-height:100dvh;transition-property:padding}.m_3b16f56b,.m_3840c879{position:fixed;inset-inline:0;transition-property:transform,margin-inline-start,margin-inline-end;background-color:var(--mantine-color-body)}:where([data-layout=alt]) .m_3b16f56b,:where([data-layout=alt]) .m_3840c879{margin-inline-start:var(--app-shell-navbar-offset, 0rem);margin-inline-end:var(--app-shell-aside-offset, 0rem)}.m_3b16f56b{top:0;height:var(--app-shell-header-height);background-color:var(--mantine-color-body);transform:var(--app-shell-header-transform);z-index:var(--app-shell-header-z-index)}.m_3b16f56b:where([data-with-border]){border-bottom:1px solid var(--app-shell-border-color)}.m_3840c879{bottom:0;height:calc(var(--app-shell-footer-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);transform:var(--app-shell-footer-transform);z-index:var(--app-shell-footer-z-index)}.m_3840c879:where([data-with-border]){border-top:1px solid var(--app-shell-border-color)}.m_6dcfc7c7{flex-grow:0}.m_6dcfc7c7:where([data-grow]){flex-grow:1}.m_71ac47fc{--ar-ratio: 1;max-width:100%}.m_71ac47fc>:where(*:not(style)){aspect-ratio:var(--ar-ratio);width:100%}.m_71ac47fc>:where(img,video){object-fit:cover}.m_88b62a41{--combobox-padding: calc(.25rem * var(--mantine-scale));padding:var(--combobox-padding)}.m_88b62a41:has([data-mantine-scrollbar]) .m_985517d8{max-width:calc(100% + var(--combobox-padding))}.m_88b62a41[data-composed]{padding-inline-end:0}.m_88b62a41[data-hidden]{display:none}.m_88b62a41,.m_b2821a6e{--combobox-option-padding-xs: calc(.25rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));--combobox-option-padding-sm: calc(.375rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--combobox-option-padding-md: calc(.5rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale));--combobox-option-padding-lg: calc(.625rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--combobox-option-padding-xl: calc(.875rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--combobox-option-padding: var(--combobox-option-padding-sm)}.m_92253aa5{padding:var(--combobox-option-padding);font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border-radius:var(--mantine-radius-default);background-color:transparent;color:inherit;cursor:pointer;overflow-wrap:break-word}.m_92253aa5:where([data-combobox-selected]){background-color:var(--mantine-primary-color-filled);color:var(--mantine-color-white)}.m_92253aa5:where([data-combobox-disabled]){cursor:not-allowed;opacity:.35}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}.m_985517d8{margin-inline:calc(var(--combobox-padding) * -1);margin-top:calc(var(--combobox-padding) * -1);width:calc(100% + var(--combobox-padding) * 2);border-top-width:0;border-inline-width:0;border-end-start-radius:0;border-end-end-radius:0;margin-bottom:var(--combobox-padding);position:relative}:where([data-mantine-color-scheme=light]) .m_985517d8,:where([data-mantine-color-scheme=light]) .m_985517d8:focus{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_985517d8,:where([data-mantine-color-scheme=dark]) .m_985517d8:focus{border-color:var(--mantine-color-dark-4)}:where([data-mantine-color-scheme=light]) .m_985517d8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_985517d8{background-color:var(--mantine-color-dark-7)}.m_2530cd1d{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));text-align:center;padding:var(--combobox-option-padding);color:var(--mantine-color-dimmed)}.m_858f94bd,.m_82b967cb{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border:0 solid transparent;margin-inline:calc(var(--combobox-padding) * -1);padding:var(--combobox-option-padding)}:where([data-mantine-color-scheme=light]) .m_858f94bd,:where([data-mantine-color-scheme=light]) .m_82b967cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_858f94bd,:where([data-mantine-color-scheme=dark]) .m_82b967cb{border-color:var(--mantine-color-dark-4)}.m_82b967cb{border-top-width:calc(.0625rem * var(--mantine-scale));margin-top:var(--combobox-padding);margin-bottom:calc(var(--combobox-padding) * -1)}.m_858f94bd{border-bottom-width:calc(.0625rem * var(--mantine-scale));margin-bottom:var(--combobox-padding);margin-top:calc(var(--combobox-padding) * -1)}.m_254f3e4f:has(.m_2bb2e9e5:only-child){display:none}.m_2bb2e9e5{color:var(--mantine-color-dimmed);font-size:calc(var(--combobox-option-fz, var(--mantine-font-size-sm)) * .85);padding:var(--combobox-option-padding);font-weight:500;position:relative;display:flex;align-items:center}.m_2bb2e9e5:after{content:"";flex:1;inset-inline:0;height:calc(.0625rem * var(--mantine-scale));margin-inline-start:var(--mantine-spacing-xs)}:where([data-mantine-color-scheme=light]) .m_2bb2e9e5:after{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_2bb2e9e5:after{background-color:var(--mantine-color-dark-4)}.m_2bb2e9e5:only-child{display:none}.m_2943220b{--combobox-chevron-size-xs: calc(.875rem * var(--mantine-scale));--combobox-chevron-size-sm: calc(1.125rem * var(--mantine-scale));--combobox-chevron-size-md: calc(1.25rem * var(--mantine-scale));--combobox-chevron-size-lg: calc(1.5rem * var(--mantine-scale));--combobox-chevron-size-xl: calc(1.75rem * var(--mantine-scale));--combobox-chevron-size: var(--combobox-chevron-size-sm)}:where([data-mantine-color-scheme=light]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-gray-6))}:where([data-mantine-color-scheme=dark]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-dark-3))}.m_2943220b{width:var(--combobox-chevron-size);height:var(--combobox-chevron-size);color:var(--_combobox-chevron-color)}.m_2943220b:where([data-error]){color:var(--combobox-chevron-color, var(--mantine-color-error))}.m_390b5f4{display:flex;align-items:center;gap:calc(.5rem * var(--mantine-scale))}.m_390b5f4:where([data-reverse]){justify-content:space-between}.m_8ee53fc2{opacity:.4;width:.8em;min-width:.8em;height:.8em}:where([data-combobox-selected]) .m_8ee53fc2{opacity:1}.m_a530ee0a{width:.8em;min-width:.8em;height:.8em}.m_5f75b09e{--label-lh-xs: calc(1rem * var(--mantine-scale));--label-lh-sm: calc(1.25rem * var(--mantine-scale));--label-lh-md: calc(1.5rem * var(--mantine-scale));--label-lh-lg: calc(1.875rem * var(--mantine-scale));--label-lh-xl: calc(2.25rem * var(--mantine-scale));--label-lh: var(--label-lh-sm)}.m_5f75b09e[data-label-position=left]{--label-order: 1;--label-offset-end: var(--mantine-spacing-sm);--label-offset-start: 0}.m_5f75b09e[data-label-position=right]{--label-order: 2;--label-offset-end: 0;--label-offset-start: var(--mantine-spacing-sm)}.m_5f6e695e{-webkit-tap-highlight-color:transparent;display:flex}.m_d3ea56bb{--label-cursor: var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:inline-flex;flex-direction:column;font-size:var(--label-fz, var(--mantine-font-size-sm));line-height:var(--label-lh);cursor:var(--label-cursor);order:var(--label-order)}fieldset:disabled .m_d3ea56bb,.m_d3ea56bb[data-disabled]{--label-cursor: not-allowed}.m_8ee546b8{cursor:var(--label-cursor);color:inherit;padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}fieldset:disabled .m_8ee546b8,.m_8ee546b8:where([data-disabled]){color:var(--mantine-color-disabled-color)}.m_328f68c0{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end);cursor:default}.m_8e8a99cc{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}.m_26775b0a{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_26775b0a :where(*){cursor:inherit}.m_26775b0a:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_5e5256ee{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled)}.m_5e5256ee:where([data-variant=filled]){--checkbox-icon-color: var(--mantine-color-white)}.m_5e5256ee:where([data-variant=outline]){--checkbox-icon-color: var(--checkbox-color)}.m_5e5256ee{position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);min-width:var(--checkbox-size);height:var(--checkbox-size);min-height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_5e5256ee{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_5e5256ee{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_5e5256ee[data-indeterminate],.m_5e5256ee[data-checked]{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_5e5256ee[data-indeterminate]>.m_1b1c543a,.m_5e5256ee[data-checked]>.m_1b1c543a{opacity:1;transform:none;color:var(--checkbox-icon-color)}.m_5e5256ee[data-disabled]{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}[data-mantine-color-scheme=light] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-dark-3)}.m_76e20374[data-indeterminate]:not([data-disabled]),.m_76e20374[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--checkbox-color)}.m_76e20374[data-indeterminate]:not([data-disabled])>.m_1b1c543a,.m_76e20374[data-checked]:not([data-disabled])>.m_1b1c543a{color:var(--checkbox-icon-color);opacity:1;transform:none}.m_1b1c543a{display:block;width:60%;color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_bf2d988c{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled)}.m_bf2d988c:where([data-variant=filled]){--checkbox-icon-color: var(--mantine-color-white)}.m_bf2d988c:where([data-variant=outline]){--checkbox-icon-color: var(--checkbox-color)}.m_26062bec{position:relative;width:var(--checkbox-size);height:var(--checkbox-size);order:1}.m_26062bec:where([data-label-position=left]){order:2}.m_26063560{appearance:none;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));padding:0;display:block;margin:0;transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_26063560{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_26063560{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_26063560:where([data-error]){border-color:var(--mantine-color-error)}.m_26063560[data-indeterminate],.m_26063560:checked{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_26063560[data-indeterminate]+.m_bf295423,.m_26063560:checked+.m_bf295423{opacity:1;transform:none}.m_26063560:disabled{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}.m_26063560:disabled+.m_bf295423{color:var(--mantine-color-disabled-color)}.m_215c4542+.m_bf295423{color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled),.m_215c4542:checked:not(:disabled){background-color:transparent;border-color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled)+.m_bf295423,.m_215c4542:checked:not(:disabled)+.m_bf295423{color:var(--checkbox-icon-color);opacity:1;transform:none}.m_bf295423{position:absolute;inset:0;width:60%;margin:auto;color:var(--checkbox-icon-color);pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:0;transition:transform .1s ease,opacity .1s ease}.m_11def92b{--ag-spacing: var(--mantine-spacing-sm);--ag-offset: calc(var(--ag-spacing) * -1);display:flex;padding-inline-start:var(--ag-spacing)}.m_f85678b6{--avatar-size-xs: calc(1rem * var(--mantine-scale));--avatar-size-sm: calc(1.625rem * var(--mantine-scale));--avatar-size-md: calc(2.375rem * var(--mantine-scale));--avatar-size-lg: calc(3.5rem * var(--mantine-scale));--avatar-size-xl: calc(5.25rem * var(--mantine-scale));--avatar-size: var(--avatar-size-md);--avatar-radius: calc(62.5rem * var(--mantine-scale));--avatar-bg: var(--mantine-color-gray-light);--avatar-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--avatar-color: var(--mantine-color-gray-light-color);--avatar-placeholder-fz: calc(var(--avatar-size) / 2.5);-webkit-tap-highlight-color:transparent;position:relative;display:block;user-select:none;overflow:hidden;border-radius:var(--avatar-radius);text-decoration:none;padding:0;width:var(--avatar-size);height:var(--avatar-size);min-width:var(--avatar-size)}.m_f85678b6:where([data-within-group]){margin-inline-start:var(--ag-offset);border:2px solid var(--mantine-color-body);background:var(--mantine-color-body)}.m_11f8ac07{object-fit:cover;width:100%;height:100%;display:block}.m_104cd71f{font-weight:700;display:flex;align-items:center;justify-content:center;width:100%;height:100%;user-select:none;border-radius:var(--avatar-radius);font-size:var(--avatar-placeholder-fz);background:var(--avatar-bg);border:var(--avatar-bd);color:var(--avatar-color)}.m_104cd71f>[data-avatar-placeholder-icon]{width:70%;height:70%}.m_2ce0de02{background-size:cover;background-position:center;display:block;width:100%;border:0;text-decoration:none;border-radius:var(--bi-radius, 0)}.m_347db0ec{--badge-height-xs: calc(1rem * var(--mantine-scale));--badge-height-sm: calc(1.125rem * var(--mantine-scale));--badge-height-md: calc(1.25rem * var(--mantine-scale));--badge-height-lg: calc(1.625rem * var(--mantine-scale));--badge-height-xl: calc(2rem * var(--mantine-scale));--badge-fz-xs: calc(.5625rem * var(--mantine-scale));--badge-fz-sm: calc(.625rem * var(--mantine-scale));--badge-fz-md: calc(.6875rem * var(--mantine-scale));--badge-fz-lg: calc(.8125rem * var(--mantine-scale));--badge-fz-xl: calc(1rem * var(--mantine-scale));--badge-padding-x-xs: calc(.375rem * var(--mantine-scale));--badge-padding-x-sm: calc(.5rem * var(--mantine-scale));--badge-padding-x-md: calc(.625rem * var(--mantine-scale));--badge-padding-x-lg: calc(.75rem * var(--mantine-scale));--badge-padding-x-xl: calc(1rem * var(--mantine-scale));--badge-height: var(--badge-height-md);--badge-fz: var(--badge-fz-md);--badge-padding-x: var(--badge-padding-x-md);--badge-radius: calc(62.5rem * var(--mantine-scale));--badge-lh: calc(var(--badge-height) - calc(.125rem * var(--mantine-scale)));--badge-color: var(--mantine-color-white);--badge-bg: var(--mantine-primary-color-filled);--badge-border-width: calc(.0625rem * var(--mantine-scale));--badge-bd: var(--badge-border-width) solid transparent;-webkit-tap-highlight-color:transparent;font-size:var(--badge-fz);border-radius:var(--badge-radius);height:var(--badge-height);line-height:var(--badge-lh);text-decoration:none;padding:0 var(--badge-padding-x);display:inline-grid;align-items:center;justify-content:center;width:fit-content;text-transform:uppercase;font-weight:700;letter-spacing:calc(.015625rem * var(--mantine-scale));cursor:default;text-overflow:ellipsis;overflow:hidden;color:var(--badge-color);background:var(--badge-bg);border:var(--badge-bd)}.m_347db0ec:where([data-with-left-section],[data-variant=dot]){grid-template-columns:auto 1fr}.m_347db0ec:where([data-with-right-section]){grid-template-columns:1fr auto}.m_347db0ec:where([data-with-left-section][data-with-right-section],[data-variant=dot][data-with-right-section]){grid-template-columns:auto 1fr auto}.m_347db0ec:where([data-block]){display:flex;width:100%}.m_347db0ec:where([data-circle]){padding-inline:calc(.125rem * var(--mantine-scale));display:flex;width:var(--badge-height)}.m_fbd81e3d{--badge-dot-size: calc(var(--badge-height) / 3.4)}:where([data-mantine-color-scheme=light]) .m_fbd81e3d{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fbd81e3d{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_fbd81e3d:before{content:"";display:block;width:var(--badge-dot-size);height:var(--badge-dot-size);border-radius:var(--badge-dot-size);background-color:var(--badge-dot-color);margin-inline-end:var(--badge-dot-size)}.m_5add502a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;cursor:inherit}.m_91fdda9b{--badge-section-margin: calc(var(--mantine-spacing-xs) / 2);display:inline-flex;justify-content:center;align-items:center;max-height:calc(var(--badge-height) - var(--badge-border-width) * 2)}.m_91fdda9b:where([data-position=left]){margin-inline-end:var(--badge-section-margin)}.m_91fdda9b:where([data-position=right]){margin-inline-start:var(--badge-section-margin)}.m_ddec01c0{--blockquote-border: 3px solid var(--bq-bd);position:relative;margin:0;border-inline-start:var(--blockquote-border);border-start-end-radius:var(--bq-radius);border-end-end-radius:var(--bq-radius);padding:var(--mantine-spacing-xl) calc(2.375rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_ddec01c0{background-color:var(--bq-bg-light)}:where([data-mantine-color-scheme=dark]) .m_ddec01c0{background-color:var(--bq-bg-dark)}.m_dde7bd57{--blockquote-icon-offset: calc(var(--bq-icon-size) / -2);position:absolute;color:var(--bq-bd);background-color:var(--mantine-color-body);display:flex;align-items:center;justify-content:center;top:var(--blockquote-icon-offset);inset-inline-start:var(--blockquote-icon-offset);width:var(--bq-icon-size);height:var(--bq-icon-size);border-radius:var(--bq-icon-size)}.m_dde51a35{display:block;margin-top:var(--mantine-spacing-md);opacity:.6;font-size:85%}.m_8b3717df{display:flex;align-items:center;flex-wrap:wrap}.m_f678d540{line-height:1;white-space:nowrap;-webkit-tap-highlight-color:transparent}.m_3b8f2208{margin-inline:var(--bc-separator-margin, var(--mantine-spacing-xs));line-height:1;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_3b8f2208{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_3b8f2208{color:var(--mantine-color-dark-2)}.m_fea6bf1a{--burger-size-xs: calc(.75rem * var(--mantine-scale));--burger-size-sm: calc(1.125rem * var(--mantine-scale));--burger-size-md: calc(1.5rem * var(--mantine-scale));--burger-size-lg: calc(2.125rem * var(--mantine-scale));--burger-size-xl: calc(2.625rem * var(--mantine-scale));--burger-size: var(--burger-size-md);--burger-line-size: calc(var(--burger-size) / 12);width:calc(var(--burger-size) + var(--mantine-spacing-xs));height:calc(var(--burger-size) + var(--mantine-spacing-xs));padding:calc(var(--mantine-spacing-xs) / 2);cursor:pointer}:where([data-mantine-color-scheme=light]) .m_fea6bf1a{--burger-color: var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fea6bf1a{--burger-color: var(--mantine-color-white)}.m_d4fb9cad{position:relative;user-select:none}.m_d4fb9cad,.m_d4fb9cad:before,.m_d4fb9cad:after{display:block;width:var(--burger-size);height:var(--burger-line-size);background-color:var(--burger-color);outline:calc(.0625rem * var(--mantine-scale)) solid transparent;transition-property:background-color,transform;transition-duration:var(--burger-transition-duration, .3s);transition-timing-function:var(--burger-transition-timing-function, ease)}.m_d4fb9cad:before,.m_d4fb9cad:after{position:absolute;content:"";inset-inline-start:0}.m_d4fb9cad:before{top:calc(var(--burger-size) / -3)}.m_d4fb9cad:after{top:calc(var(--burger-size) / 3)}.m_d4fb9cad[data-opened]{background-color:transparent}.m_d4fb9cad[data-opened]:before{transform:translateY(calc(var(--burger-size) / 3)) rotate(45deg)}.m_d4fb9cad[data-opened]:after{transform:translateY(calc(var(--burger-size) / -3)) rotate(-45deg)}.m_77c9d27d{--button-height-xs: calc(1.875rem * var(--mantine-scale));--button-height-sm: calc(2.25rem * var(--mantine-scale));--button-height-md: calc(2.625rem * var(--mantine-scale));--button-height-lg: calc(3.125rem * var(--mantine-scale));--button-height-xl: calc(3.75rem * var(--mantine-scale));--button-height-compact-xs: calc(1.375rem * var(--mantine-scale));--button-height-compact-sm: calc(1.625rem * var(--mantine-scale));--button-height-compact-md: calc(1.875rem * var(--mantine-scale));--button-height-compact-lg: calc(2.125rem * var(--mantine-scale));--button-height-compact-xl: calc(2.5rem * var(--mantine-scale));--button-padding-x-xs: calc(.875rem * var(--mantine-scale));--button-padding-x-sm: calc(1.125rem * var(--mantine-scale));--button-padding-x-md: calc(1.375rem * var(--mantine-scale));--button-padding-x-lg: calc(1.625rem * var(--mantine-scale));--button-padding-x-xl: calc(2rem * var(--mantine-scale));--button-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--button-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--button-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--button-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--button-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--button-height: var(--button-height-sm);--button-padding-x: var(--button-padding-x-sm);--button-color: var(--mantine-color-white);user-select:none;font-weight:600;position:relative;line-height:1;text-align:center;overflow:hidden;width:auto;cursor:pointer;display:inline-block;border-radius:var(--button-radius, var(--mantine-radius-default));font-size:var(--button-fz, var(--mantine-font-size-sm));background:var(--button-bg, var(--mantine-primary-color-filled));border:var(--button-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--button-color, var(--mantine-color-white));height:var(--button-height, var(--button-height-sm));padding-inline:var(--button-padding-x, var(--button-padding-x-sm));vertical-align:middle}.m_77c9d27d:where([data-block]){display:block;width:100%}.m_77c9d27d:where([data-with-left-section]){padding-inline-start:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where([data-with-right-section]){padding-inline-end:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;transform:none;color:var(--mantine-color-disabled-color);background:var(--mantine-color-disabled)}.m_77c9d27d:before{content:"";pointer-events:none;position:absolute;inset:calc(-.0625rem * var(--mantine-scale));border-radius:var(--button-radius, var(--mantine-radius-default));transform:translateY(-100%);opacity:0;filter:blur(12px);transition:transform .15s ease,opacity .1s ease}:where([data-mantine-color-scheme=light]) .m_77c9d27d:before{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_77c9d27d:before{background-color:#00000026}.m_77c9d27d:where([data-loading]){cursor:not-allowed;transform:none}.m_77c9d27d:where([data-loading]):before{transform:translateY(0);opacity:1}.m_77c9d27d:where([data-loading]) .m_80f1301b{opacity:0;transform:translateY(100%)}@media(hover:hover){.m_77c9d27d:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}@media(hover:none){.m_77c9d27d:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}.m_80f1301b{display:flex;align-items:center;justify-content:var(--button-justify, center);height:100%;overflow:visible;transition:transform .15s ease,opacity .1s ease}.m_811560b9{white-space:nowrap;height:100%;overflow:hidden;display:flex;align-items:center;opacity:1}.m_811560b9:where([data-loading]){opacity:.2}.m_a74036a{display:flex;align-items:center}.m_a74036a:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_a74036a:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_a25b86ee{position:absolute;left:50%;top:50%}.m_80d6d844{--button-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_80d6d844 :where(.m_77c9d27d):focus{position:relative;z-index:1}.m_80d6d844[data-orientation=horizontal]{flex-direction:row}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical]{flex-direction:column}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--button-border-width) / 2);border-top-width:calc(var(--button-border-width) / 2)}.m_70be2a01{--section-height-xs: calc(1.875rem * var(--mantine-scale));--section-height-sm: calc(2.25rem * var(--mantine-scale));--section-height-md: calc(2.625rem * var(--mantine-scale));--section-height-lg: calc(3.125rem * var(--mantine-scale));--section-height-xl: calc(3.75rem * var(--mantine-scale));--section-height-compact-xs: calc(1.375rem * var(--mantine-scale));--section-height-compact-sm: calc(1.625rem * var(--mantine-scale));--section-height-compact-md: calc(1.875rem * var(--mantine-scale));--section-height-compact-lg: calc(2.125rem * var(--mantine-scale));--section-height-compact-xl: calc(2.5rem * var(--mantine-scale));--section-padding-x-xs: calc(.875rem * var(--mantine-scale));--section-padding-x-sm: calc(1.125rem * var(--mantine-scale));--section-padding-x-md: calc(1.375rem * var(--mantine-scale));--section-padding-x-lg: calc(1.625rem * var(--mantine-scale));--section-padding-x-xl: calc(2rem * var(--mantine-scale));--section-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--section-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--section-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_e615b15f{--card-padding: var(--mantine-spacing-md);position:relative;overflow:hidden;display:flex;flex-direction:column;padding:var(--card-padding);color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_e615b15f{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_e615b15f{background-color:var(--mantine-color-dark-6)}.m_599a2148{display:block;margin-inline:calc(var(--card-padding) * -1)}.m_599a2148:where(:first-child){margin-top:calc(var(--card-padding) * -1);border-top:none!important}.m_599a2148:where(:last-child){margin-bottom:calc(var(--card-padding) * -1);border-bottom:none!important}.m_599a2148:where([data-inherit-padding]){padding-inline:var(--card-padding)}.m_599a2148:where([data-with-border]){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-bottom:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_599a2148{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_599a2148{border-color:var(--mantine-color-dark-4)}.m_599a2148+.m_599a2148{border-top:none!important}.m_4451eb3a{display:flex;align-items:center;justify-content:center}.m_4451eb3a:where([data-inline]){display:inline-flex}.m_f59ffda3{--chip-size-xs: calc(1.4375rem * var(--mantine-scale));--chip-size-sm: calc(1.75rem * var(--mantine-scale));--chip-size-md: calc(2rem * var(--mantine-scale));--chip-size-lg: calc(2.25rem * var(--mantine-scale));--chip-size-xl: calc(2.5rem * var(--mantine-scale));--chip-icon-size-xs: calc(.5625rem * var(--mantine-scale));--chip-icon-size-sm: calc(.75rem * var(--mantine-scale));--chip-icon-size-md: calc(.875rem * var(--mantine-scale));--chip-icon-size-lg: calc(1rem * var(--mantine-scale));--chip-icon-size-xl: calc(1.125rem * var(--mantine-scale));--chip-padding-xs: calc(1rem * var(--mantine-scale));--chip-padding-sm: calc(1.25rem * var(--mantine-scale));--chip-padding-md: calc(1.5rem * var(--mantine-scale));--chip-padding-lg: calc(1.75rem * var(--mantine-scale));--chip-padding-xl: calc(2rem * var(--mantine-scale));--chip-checked-padding-xs: calc(.5125rem * var(--mantine-scale));--chip-checked-padding-sm: calc(.625rem * var(--mantine-scale));--chip-checked-padding-md: calc(.73125rem * var(--mantine-scale));--chip-checked-padding-lg: calc(.84375rem * var(--mantine-scale));--chip-checked-padding-xl: calc(.98125rem * var(--mantine-scale));--chip-spacing-xs: calc(.625rem * var(--mantine-scale));--chip-spacing-sm: calc(.75rem * var(--mantine-scale));--chip-spacing-md: calc(1rem * var(--mantine-scale));--chip-spacing-lg: calc(1.25rem * var(--mantine-scale));--chip-spacing-xl: calc(1.375rem * var(--mantine-scale));--chip-size: var(--chip-size-sm);--chip-icon-size: var(--chip-icon-size-sm);--chip-padding: var(--chip-padding-sm);--chip-spacing: var(--chip-spacing-sm);--chip-checked-padding: var(--chip-checked-padding-sm);--chip-bg: var(--mantine-primary-color-filled);--chip-hover: var(--mantine-primary-color-filled-hover);--chip-color: var(--mantine-color-white);--chip-bd: calc(.0625rem * var(--mantine-scale)) solid transparent}.m_be049a53{display:inline-flex;align-items:center;user-select:none;border-radius:var(--chip-radius, 1000rem);height:var(--chip-size);font-size:var(--chip-fz, var(--mantine-font-size-sm));line-height:calc(var(--chip-size) - calc(.125rem * var(--mantine-scale)));padding-inline:var(--chip-padding);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}.m_be049a53:where([data-checked]){padding:var(--chip-checked-padding)}.m_be049a53:where([data-disabled]){cursor:not-allowed;background-color:var(--mantine-color-disabled);color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-white);border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-dark-6);border:1px solid var(--mantine-color-dark-4)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-dark-5)}}.m_3904c1af:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);border:var(--chip-bd)}@media(hover:hover){.m_3904c1af:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_3904c1af:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_fa109255:not([data-disabled]),.m_f7e165c3:not([data-disabled]){border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-dark-5)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-dark-4)}}.m_fa109255:not([data-disabled]):where([data-checked]),.m_f7e165c3:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);color:var(--chip-color);background-color:var(--chip-bg)}@media(hover:hover){.m_fa109255:not([data-disabled]):where([data-checked]):hover,.m_f7e165c3:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_fa109255:not([data-disabled]):where([data-checked]):active,.m_f7e165c3:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_9ac86df9{width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));max-width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));height:var(--chip-icon-size);display:flex;align-items:center;overflow:hidden}.m_d6d72580{width:var(--chip-icon-size);height:var(--chip-icon-size);display:block;color:var(--chip-icon-color, inherit)}.m_bde07329{width:0;height:0;padding:0;opacity:0;margin:0}.m_bde07329:focus-visible+.m_be049a53{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_b183c0a2{font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);padding:2px calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);font-size:var(--mantine-font-size-xs);margin:0;overflow:auto}:where([data-mantine-color-scheme=light]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-gray-0))}:where([data-mantine-color-scheme=dark]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-dark-6))}.m_b183c0a2[data-block]{padding:var(--mantine-spacing-xs)}.m_de3d2490{--cs-size: calc(1.75rem * var(--mantine-scale));--cs-radius: calc(62.5rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;border:none;appearance:none;display:block;line-height:1;position:relative;width:var(--cs-size);height:var(--cs-size);min-width:var(--cs-size);min-height:var(--cs-size);border-radius:var(--cs-radius);color:inherit;text-decoration:none}[data-mantine-color-scheme=light] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-gray-3);--alpha-overlay-bg: var(--mantine-color-white)}[data-mantine-color-scheme=dark] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-dark-4);--alpha-overlay-bg: var(--mantine-color-dark-7)}.m_862f3d1b{position:absolute;inset:0;border-radius:var(--cs-radius)}.m_98ae7f22{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:1;box-shadow:#0000001a 0 0 0 calc(.0625rem * var(--mantine-scale)) inset,#00000026 0 0 calc(.25rem * var(--mantine-scale)) inset}.m_95709ac0{position:absolute;inset:0;border-radius:var(--cs-radius);background-size:calc(.5rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));background-position:0 0,0 calc(.25rem * var(--mantine-scale)),calc(.25rem * var(--mantine-scale)) calc(-.25rem * var(--mantine-scale)),calc(-.25rem * var(--mantine-scale)) 0;background-image:linear-gradient(45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(-45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--alpha-overlay-color) 75%),linear-gradient(-45deg,var(--alpha-overlay-bg) 75%,var(--alpha-overlay-color) 75%)}.m_93e74e3{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:2;display:flex;align-items:center;justify-content:center}.m_fee9c77{--cp-width-xs: calc(11.25rem * var(--mantine-scale));--cp-width-sm: calc(12.5rem * var(--mantine-scale));--cp-width-md: calc(15rem * var(--mantine-scale));--cp-width-lg: calc(17.5rem * var(--mantine-scale));--cp-width-xl: calc(20rem * var(--mantine-scale));--cp-preview-size-xs: calc(1.625rem * var(--mantine-scale));--cp-preview-size-sm: calc(2.125rem * var(--mantine-scale));--cp-preview-size-md: calc(2.625rem * var(--mantine-scale));--cp-preview-size-lg: calc(3.125rem * var(--mantine-scale));--cp-preview-size-xl: calc(3.375rem * var(--mantine-scale));--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-saturation-height-xs: calc(6.25rem * var(--mantine-scale));--cp-saturation-height-sm: calc(6.875rem * var(--mantine-scale));--cp-saturation-height-md: calc(7.5rem * var(--mantine-scale));--cp-saturation-height-lg: calc(8.75rem * var(--mantine-scale));--cp-saturation-height-xl: calc(10rem * var(--mantine-scale));--cp-preview-size: var(--cp-preview-size-sm);--cp-thumb-size: var(--cp-thumb-size-sm);--cp-saturation-height: var(--cp-saturation-height-sm);--cp-width: var(--cp-width-sm);--cp-body-spacing: var(--mantine-spacing-sm);width:var(--cp-width);padding:calc(.0625rem * var(--mantine-scale))}.m_fee9c77:where([data-full-width]){width:100%}.m_9dddfbac{width:var(--cp-preview-size);height:var(--cp-preview-size)}.m_bffecc3e{display:flex;padding-top:calc(var(--cp-body-spacing) / 2)}.m_3283bb96{flex:1}.m_3283bb96:not(:only-child){margin-inline-end:var(--mantine-spacing-xs)}.m_40d572ba{overflow:hidden;position:absolute;box-shadow:0 0 1px #0009;border:2px solid var(--mantine-color-white);width:var(--cp-thumb-size);height:var(--cp-thumb-size);border-radius:var(--cp-thumb-size);left:calc(var(--thumb-x-offset) - var(--cp-thumb-size) / 2);top:calc(var(--thumb-y-offset) - var(--cp-thumb-size) / 2)}.m_d8ee6fd8{height:unset!important;width:unset!important;min-width:0!important;min-height:0!important;margin:calc(.125rem * var(--mantine-scale));cursor:pointer;padding-bottom:calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)));flex:0 0 calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)))}.m_5711e686{margin-top:calc(.3125rem * var(--mantine-scale));margin-inline:calc(-.125rem * var(--mantine-scale));display:flex;flex-wrap:wrap}.m_5711e686:only-child{margin-top:0}.m_202a296e{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;position:relative;height:var(--cp-saturation-height);border-radius:var(--mantine-radius-sm);margin:calc(var(--cp-thumb-size) / 2)}.m_202a296e:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_202a296e:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_11b3db02{position:absolute;border-radius:var(--mantine-radius-sm);inset:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)))}.m_d856d47d{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-thumb-size: var(--cp-thumb-size, calc(.75rem * var(--mantine-scale)));position:relative;height:calc(var(--cp-thumb-size) + calc(.125rem * var(--mantine-scale)));margin-inline:calc(var(--cp-thumb-size) / 2);outline:none}.m_d856d47d+.m_d856d47d{margin-top:calc(.375rem * var(--mantine-scale))}.m_d856d47d:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_d856d47d:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}:where([data-mantine-color-scheme=light]) .m_d856d47d{--slider-checkers: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d856d47d{--slider-checkers: var(--mantine-color-dark-4)}.m_8f327113{position:absolute;top:0;bottom:0;inset-inline:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)));border-radius:10000rem}.m_b077c2bc{--ci-eye-dropper-icon-size-xs: calc(.875rem * var(--mantine-scale));--ci-eye-dropper-icon-size-sm: calc(1rem * var(--mantine-scale));--ci-eye-dropper-icon-size-md: calc(1.125rem * var(--mantine-scale));--ci-eye-dropper-icon-size-lg: calc(1.25rem * var(--mantine-scale));--ci-eye-dropper-icon-size-xl: calc(1.375rem * var(--mantine-scale));--ci-eye-dropper-icon-size: var(--ci-eye-dropper-icon-size-sm)}.m_66a028b5{--ci-button-size-xs: calc(1.375rem * var(--mantine-scale));--ci-button-size-sm: calc(1.625rem * var(--mantine-scale));--ci-button-size-md: calc(1.75rem * var(--mantine-scale));--ci-button-size-lg: calc(2rem * var(--mantine-scale));--ci-button-size-xl: calc(2.5rem * var(--mantine-scale));--ci-button-size: var(--ci-button-size-sm);width:var(--ci-button-size);height:var(--ci-button-size);min-width:var(--ci-button-size);min-height:var(--ci-button-size)}.m_c5ccdcab{--ci-preview-size-xs: calc(1rem * var(--mantine-scale));--ci-preview-size-sm: calc(1.125rem * var(--mantine-scale));--ci-preview-size-md: calc(1.375rem * var(--mantine-scale));--ci-preview-size-lg: calc(1.75rem * var(--mantine-scale));--ci-preview-size-xl: calc(2.25rem * var(--mantine-scale));--ci-preview-size: var(--ci-preview-size-sm)}.m_5ece2cd7{padding:calc(.5rem * var(--mantine-scale))}.m_7485cace{--container-size-xs: calc(33.75rem * var(--mantine-scale));--container-size-sm: calc(45rem * var(--mantine-scale));--container-size-md: calc(60rem * var(--mantine-scale));--container-size-lg: calc(71.25rem * var(--mantine-scale));--container-size-xl: calc(82.5rem * var(--mantine-scale));--container-size: var(--container-size-md)}.m_7485cace:where([data-strategy=block]){max-width:var(--container-size);padding-inline:var(--mantine-spacing-md);margin-inline:auto}.m_7485cace:where([data-strategy=block]):where([data-fluid]){max-width:100%}.m_7485cace:where([data-strategy=grid]){display:grid;grid-template-columns:1fr min(100%,var(--container-size)) 1fr;margin-inline:auto}.m_7485cace:where([data-strategy=grid])>*{grid-column:2}.m_7485cace:where([data-strategy=grid])>[data-breakout]{grid-column:1 / -1}.m_7485cace:where([data-strategy=grid])>[data-breakout]>[data-container]{max-width:var(--container-size);margin-inline:auto}.m_e2125a27{--dialog-size-xs: calc(10rem * var(--mantine-scale));--dialog-size-sm: calc(12.5rem * var(--mantine-scale));--dialog-size-md: calc(21.25rem * var(--mantine-scale));--dialog-size-lg: calc(25rem * var(--mantine-scale));--dialog-size-xl: calc(31.25rem * var(--mantine-scale));--dialog-size: var(--dialog-size-md);position:relative;width:var(--dialog-size);max-width:calc(100vw - var(--mantine-spacing-xl) * 2);min-height:calc(3.125rem * var(--mantine-scale))}.m_5abab665{position:absolute;top:calc(var(--mantine-spacing-md) / 2);inset-inline-end:calc(var(--mantine-spacing-md) / 2)}.m_3eebeb36{--divider-size-xs: calc(.0625rem * var(--mantine-scale));--divider-size-sm: calc(.125rem * var(--mantine-scale));--divider-size-md: calc(.1875rem * var(--mantine-scale));--divider-size-lg: calc(.25rem * var(--mantine-scale));--divider-size-xl: calc(.3125rem * var(--mantine-scale));--divider-size: var(--divider-size-xs)}:where([data-mantine-color-scheme=light]) .m_3eebeb36{--divider-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3eebeb36{--divider-color: var(--mantine-color-dark-4)}.m_3eebeb36:where([data-orientation=horizontal]){border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color)}.m_3eebeb36:where([data-orientation=vertical]){border-inline-start:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);height:auto;align-self:stretch}.m_3eebeb36:where([data-with-label]){border:0}.m_9e365f20{display:flex;align-items:center;font-size:var(--mantine-font-size-xs);color:var(--mantine-color-dimmed);white-space:nowrap}.m_9e365f20:where([data-position=left]):before{display:none}.m_9e365f20:where([data-position=right]):after{display:none}.m_9e365f20:before{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-end:var(--mantine-spacing-xs)}.m_9e365f20:after{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-start:var(--mantine-spacing-xs)}.m_f11b401e{--drawer-size-xs: calc(20rem * var(--mantine-scale));--drawer-size-sm: calc(23.75rem * var(--mantine-scale));--drawer-size-md: calc(27.5rem * var(--mantine-scale));--drawer-size-lg: calc(38.75rem * var(--mantine-scale));--drawer-size-xl: calc(48.75rem * var(--mantine-scale));--drawer-size: var(--drawer-size-md);--drawer-offset: 0rem}.m_5a7c2c9{z-index:1000}.m_b8a05bbd{flex:var(--drawer-flex, 0 0 var(--drawer-size));height:var(--drawer-height, calc(100% - var(--drawer-offset) * 2));margin:var(--drawer-offset);max-width:calc(100% - var(--drawer-offset) * 2);max-height:calc(100% - var(--drawer-offset) * 2);overflow-y:auto}.m_b8a05bbd[data-hidden]{opacity:0!important;pointer-events:none}.m_31cd769a{display:flex;justify-content:var(--drawer-justify, flex-start);align-items:var(--drawer-align, flex-start)}.m_e9408a47{padding:var(--mantine-spacing-lg);padding-top:var(--mantine-spacing-xs);border-radius:var(--fieldset-radius, var(--mantine-radius-default));min-inline-size:auto}.m_84c9523a{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_84c9523a{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_84c9523a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-7)}.m_ef274e49{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_ef274e49{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_ef274e49{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_eda993d3{padding:0;border:0;border-radius:0}.m_90794832{font-size:var(--mantine-font-size-sm)}.m_74ca27fe{padding:0;margin-bottom:var(--mantine-spacing-sm)}.m_8478a6da{container:mantine-grid / inline-size}.m_410352e9{--grid-overflow: visible;--grid-margin: calc(var(--grid-gutter) / -2);--grid-col-padding: calc(var(--grid-gutter) / 2);overflow:var(--grid-overflow)}.m_dee7bd2f{width:calc(100% + var(--grid-gutter));display:flex;flex-wrap:wrap;justify-content:var(--grid-justify);align-items:var(--grid-align);margin:var(--grid-margin)}.m_96bdd299{--col-flex-grow: 0;--col-offset: 0rem;flex-shrink:0;order:var(--col-order);flex-basis:var(--col-flex-basis);width:var(--col-width);max-width:var(--col-max-width);flex-grow:var(--col-flex-grow);margin-inline-start:var(--col-offset);padding:var(--grid-col-padding)}.m_bcb3f3c2{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=light]) .m_bcb3f3c2{background-color:var(--mark-bg-light)}:where([data-mantine-color-scheme=dark]) .m_bcb3f3c2{background-color:var(--mark-bg-dark)}.m_9e117634{display:block;object-fit:var(--image-object-fit, cover);width:100%;border-radius:var(--image-radius, 0)}@keyframes m_885901b1{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(2.8)}}.m_e5262200{--indicator-size: calc(.625rem * var(--mantine-scale));--indicator-color: var(--mantine-primary-color-filled);position:relative;display:block}.m_e5262200:where([data-inline]){display:inline-block}.m_760d1fb1{position:absolute;top:var(--indicator-top);left:var(--indicator-left);right:var(--indicator-right);bottom:var(--indicator-bottom);transform:translate(var(--indicator-translate-x),var(--indicator-translate-y));min-width:var(--indicator-size);height:var(--indicator-size);border-radius:var(--indicator-radius, 1000rem);z-index:var(--indicator-z-index, 200);display:flex;align-items:center;justify-content:center;font-size:var(--mantine-font-size-xs);background-color:var(--indicator-color);color:var(--indicator-text-color, var(--mantine-color-white));white-space:nowrap}.m_760d1fb1:before{content:"";position:absolute;inset:0;background-color:var(--indicator-color);border-radius:var(--indicator-radius, 1000rem);z-index:-1}.m_760d1fb1:where([data-with-label]){padding-inline:calc(var(--mantine-spacing-xs) / 2)}.m_760d1fb1:where([data-with-border]){border:2px solid var(--mantine-color-body)}.m_760d1fb1[data-processing]:before{animation:m_885901b1 1s linear infinite}.m_dc6f14e2{--kbd-fz-xs: calc(.625rem * var(--mantine-scale));--kbd-fz-sm: calc(.75rem * var(--mantine-scale));--kbd-fz-md: calc(.875rem * var(--mantine-scale));--kbd-fz-lg: calc(1rem * var(--mantine-scale));--kbd-fz-xl: calc(1.25rem * var(--mantine-scale));--kbd-fz: var(--kbd-fz-sm);font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale));unicode-bidi:embed;text-align:center;padding:.12em .45em}:where([data-mantine-color-scheme=light]) .m_dc6f14e2{border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_dc6f14e2{border-color:var(--mantine-color-dark-4);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-6)}.m_abbac491{--list-fz: var(--mantine-font-size-md);--list-lh: var(--mantine-line-height-md);--list-marker-gap: var(--mantine-spacing-lg);list-style-position:outside;font-size:var(--list-fz);line-height:var(--list-lh);margin:0;padding:0;padding-inline-start:var(--list-marker-gap)}.m_abbac491[data-type=none]{--list-marker-gap: 0}.m_abbac491:where([data-with-padding]){padding-inline-start:calc(var(--list-marker-gap) + var(--mantine-spacing-md))}.m_abb6bec2{white-space:normal;line-height:var(--list-lh)}.m_abb6bec2:where([data-with-icon]){list-style:none}.m_abb6bec2:where([data-with-icon]) .m_75cd9f71{--li-direction: row;--li-align: center}.m_abb6bec2:where(:not(:first-of-type)){margin-top:var(--list-spacing, 0)}.m_abb6bec2:where([data-centered]){line-height:1}.m_75cd9f71{display:inline-flex;flex-direction:var(--li-direction, column);align-items:var(--li-align, flex-start);white-space:normal}.m_60f83e5b{display:inline-block;vertical-align:middle;margin-inline-end:var(--mantine-spacing-sm)}.m_6e45937b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:var(--lo-z-index)}.m_e8eb006c{position:relative;z-index:calc(var(--lo-z-index) + 1)}.m_df587f17{z-index:var(--lo-z-index)}.m_dc9b7c9f{padding:calc(.25rem * var(--mantine-scale))}.m_9bfac126{color:var(--mantine-color-dimmed);font-weight:500;font-size:var(--mantine-font-size-xs);padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-sm);cursor:default}.m_efdf90cb{margin-top:calc(.25rem * var(--mantine-scale));margin-bottom:calc(.25rem * var(--mantine-scale));border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_efdf90cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_efdf90cb{border-color:var(--mantine-color-dark-4)}.m_99ac2aa1{font-size:var(--mantine-font-size-sm);width:100%;padding:calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-sm);border-radius:var(--popover-radius, var(--mantine-radius-default));color:var(--menu-item-color, var(--mantine-color-text));display:flex;align-items:center;user-select:none}.m_99ac2aa1:where([data-disabled],:disabled){color:var(--mantine-color-disabled-color);opacity:.6;cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-gray-1))}:where([data-mantine-color-scheme=dark]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-dark-4))}.m_99ac2aa1:where([data-sub-menu-item]){padding-inline-end:calc(.3125rem * var(--mantine-scale))}.m_5476e0d3{flex:1}.m_8b75e504{display:flex;justify-content:center;align-items:center}.m_8b75e504:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_8b75e504:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_b85b0bed{transform:rotate(-90deg)}:where([dir=rtl]) .m_b85b0bed{transform:rotate(90deg)}.m_9df02822{--modal-size-xs: calc(20rem * var(--mantine-scale));--modal-size-sm: calc(23.75rem * var(--mantine-scale));--modal-size-md: calc(27.5rem * var(--mantine-scale));--modal-size-lg: calc(38.75rem * var(--mantine-scale));--modal-size-xl: calc(48.75rem * var(--mantine-scale));--modal-size: var(--modal-size-md);--modal-y-offset: 5dvh;--modal-x-offset: 5vw}.m_9df02822[data-full-screen]{--modal-border-radius: 0 !important}.m_9df02822[data-full-screen] .m_54c44539{--modal-content-flex: 0 0 100%;--modal-content-max-height: auto;--modal-content-height: 100dvh}.m_9df02822[data-full-screen] .m_1f958f16{--modal-inner-y-offset: 0;--modal-inner-x-offset: 0}.m_9df02822[data-centered] .m_1f958f16{--modal-inner-align: center}.m_d0e2b9cd{border-start-start-radius:var(--modal-radius, var(--mantine-radius-default));border-start-end-radius:var(--modal-radius, var(--mantine-radius-default))}.m_54c44539{flex:var(--modal-content-flex, 0 0 var(--modal-size));max-width:100%;max-height:var(--modal-content-max-height, calc(100dvh - var(--modal-y-offset) * 2));height:var(--modal-content-height, auto);overflow-y:auto}.m_54c44539[data-full-screen]{border-radius:0}.m_54c44539[data-hidden]{opacity:0!important;pointer-events:none}.m_1f958f16{display:flex;justify-content:center;align-items:var(--modal-inner-align, flex-start);padding-top:var(--modal-inner-y-offset, var(--modal-y-offset));padding-bottom:var(--modal-inner-y-offset, var(--modal-y-offset));padding-inline:var(--modal-inner-x-offset, var(--modal-x-offset))}.m_7cda1cd6{--pill-fz-xs: calc(.625rem * var(--mantine-scale));--pill-fz-sm: calc(.75rem * var(--mantine-scale));--pill-fz-md: calc(.875rem * var(--mantine-scale));--pill-fz-lg: calc(1rem * var(--mantine-scale));--pill-fz-xl: calc(1.125rem * var(--mantine-scale));--pill-height-xs: calc(1.125rem * var(--mantine-scale));--pill-height-sm: calc(1.375rem * var(--mantine-scale));--pill-height-md: calc(1.5625rem * var(--mantine-scale));--pill-height-lg: calc(1.75rem * var(--mantine-scale));--pill-height-xl: calc(2rem * var(--mantine-scale));--pill-fz: var(--pill-fz-sm);--pill-height: var(--pill-height-sm);font-size:var(--pill-fz);flex:0;height:var(--pill-height);padding-inline:.8em;display:inline-flex;align-items:center;border-radius:var(--pill-radius, 1000rem);line-height:1;white-space:nowrap;user-select:none;-webkit-user-select:none;max-width:100%}:where([data-mantine-color-scheme=dark]) .m_7cda1cd6{background-color:var(--mantine-color-dark-7);color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_7cda1cd6{color:var(--mantine-color-black)}.m_7cda1cd6:where([data-with-remove]:not(:has(button:disabled))){padding-inline-end:0}.m_7cda1cd6:where([data-disabled],:has(button:disabled)){cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_44da308b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=light]) .m_44da308b:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}:where([data-mantine-color-scheme=light]) .m_e3a01f8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=light]) .m_e3a01f8:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}.m_1e0e6180{cursor:inherit;overflow:hidden;height:100%;line-height:var(--pill-height);text-overflow:ellipsis}.m_ae386778{color:inherit;font-size:inherit;height:100%;min-height:unset;min-width:2em;width:unset;border-radius:0;padding-inline-start:.1em;padding-inline-end:.3em;flex:0;border-end-end-radius:var(--pill-radius, 50%);border-start-end-radius:var(--pill-radius, 50%)}.m_7cda1cd6[data-disabled]>.m_ae386778,.m_ae386778:disabled{display:none;background-color:transparent;width:.8em;min-width:.8em;padding:0;cursor:not-allowed}.m_7cda1cd6[data-disabled]>.m_ae386778>svg,.m_ae386778:disabled>svg{display:none}.m_ae386778>svg{pointer-events:none}.m_1dcfd90b{--pg-gap-xs: calc(.375rem * var(--mantine-scale));--pg-gap-sm: calc(.5rem * var(--mantine-scale));--pg-gap-md: calc(.625rem * var(--mantine-scale));--pg-gap-lg: calc(.75rem * var(--mantine-scale));--pg-gap-xl: calc(.75rem * var(--mantine-scale));--pg-gap: var(--pg-gap-sm);display:flex;align-items:center;gap:var(--pg-gap);flex-wrap:wrap}.m_45c4369d{background-color:transparent;appearance:none;min-width:calc(6.25rem * var(--mantine-scale));flex:1;border:0;font-size:inherit;height:1.6em;color:inherit;padding:0}.m_45c4369d::placeholder{color:var(--input-placeholder-color);opacity:1}.m_45c4369d:where([data-type=hidden],[data-type=auto]){height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));top:0;left:0;pointer-events:none;position:absolute;opacity:0}.m_45c4369d:focus{outline:none}.m_45c4369d:where([data-type=auto]:focus){height:1.6em;visibility:visible;opacity:1;position:static}.m_45c4369d:where([data-pointer]:not([data-disabled],:disabled)){cursor:pointer}.m_45c4369d:where([data-disabled],:disabled){cursor:not-allowed}.m_f0824112{--nl-bg: var(--mantine-primary-color-light);--nl-hover: var(--mantine-primary-color-light-hover);--nl-color: var(--mantine-primary-color-light-color);display:flex;align-items:center;width:100%;padding:8px var(--mantine-spacing-sm);user-select:none}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_f0824112:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_f0824112:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:active{background-color:var(--mantine-color-dark-6)}}.m_f0824112:where([data-disabled]){opacity:.4;pointer-events:none}.m_f0824112:where([data-active],[aria-current=page]){background-color:var(--nl-bg);color:var(--nl-color)}@media(hover:hover){.m_f0824112:where([data-active],[aria-current=page]):hover{background-color:var(--nl-hover)}}@media(hover:none){.m_f0824112:where([data-active],[aria-current=page]):active{background-color:var(--nl-hover)}}.m_f0824112:where([data-active],[aria-current=page]) .m_57492dcc{--description-opacity: .9;--description-color: var(--nl-color)}.m_690090b5{display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.m_690090b5>svg{display:block}.m_690090b5:where([data-position=left]){margin-inline-end:var(--mantine-spacing-sm)}.m_690090b5:where([data-position=right]){margin-inline-start:var(--mantine-spacing-sm)}.m_690090b5:where([data-rotate]){transform:rotate(90deg)}.m_1f6ac4c4{font-size:var(--mantine-font-size-sm)}.m_f07af9d2{flex:1;overflow:hidden;text-overflow:ellipsis}.m_f07af9d2:where([data-no-wrap]){white-space:nowrap}.m_57492dcc{display:block;font-size:var(--mantine-font-size-xs);opacity:var(--description-opacity, 1);color:var(--description-color, var(--mantine-color-dimmed));overflow:hidden;text-overflow:ellipsis}:where([data-no-wrap]) .m_57492dcc{white-space:nowrap}.m_e17b862f{padding-inline-start:var(--nl-offset, var(--mantine-spacing-lg))}.m_1fd8a00b{transform:rotate(-90deg)}.m_a513464{--notification-radius: var(--mantine-radius-default);--notification-color: var(--mantine-primary-color-filled);overflow:hidden;box-sizing:border-box;position:relative;display:flex;align-items:center;padding-inline-start:calc(1.375rem * var(--mantine-scale));padding-inline-end:var(--mantine-spacing-xs);padding-top:var(--mantine-spacing-xs);padding-bottom:var(--mantine-spacing-xs);border-radius:var(--notification-radius);box-shadow:var(--mantine-shadow-lg)}.m_a513464:before{content:"";display:block;position:absolute;width:calc(.375rem * var(--mantine-scale));top:var(--notification-radius);bottom:var(--notification-radius);inset-inline-start:calc(.25rem * var(--mantine-scale));border-radius:var(--notification-radius);background-color:var(--notification-color)}:where([data-mantine-color-scheme=light]) .m_a513464{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_a513464{background-color:var(--mantine-color-dark-6)}.m_a513464:where([data-with-icon]):before{display:none}:where([data-mantine-color-scheme=light]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-dark-4)}.m_a4ceffb{box-sizing:border-box;margin-inline-end:var(--mantine-spacing-md);width:calc(1.75rem * var(--mantine-scale));height:calc(1.75rem * var(--mantine-scale));border-radius:calc(1.75rem * var(--mantine-scale));display:flex;align-items:center;justify-content:center;background-color:var(--notification-color);color:var(--mantine-color-white)}.m_b0920b15{margin-inline-end:var(--mantine-spacing-md)}.m_a49ed24{flex:1;overflow:hidden;margin-inline-end:var(--mantine-spacing-xs)}.m_3feedf16{margin-bottom:calc(.125rem * var(--mantine-scale));overflow:hidden;text-overflow:ellipsis;font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);font-weight:500}:where([data-mantine-color-scheme=light]) .m_3feedf16{color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_3feedf16{color:var(--mantine-color-white)}.m_3d733a3a{font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);overflow:hidden;text-overflow:ellipsis}:where([data-mantine-color-scheme=light]) .m_3d733a3a{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a{color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-dark-2)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_919a4d88:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:hover{background-color:var(--mantine-color-dark-8)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_919a4d88:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:active{background-color:var(--mantine-color-dark-8)}}.m_e2f5cd4e{--ni-right-section-width-xs: calc(1.0625rem * var(--mantine-scale));--ni-right-section-width-sm: calc(1.5rem * var(--mantine-scale));--ni-right-section-width-md: calc(1.6875rem * var(--mantine-scale));--ni-right-section-width-lg: calc(1.9375rem * var(--mantine-scale));--ni-right-section-width-xl: calc(2.125rem * var(--mantine-scale))}.m_95e17d22{--ni-chevron-size-xs: calc(.625rem * var(--mantine-scale));--ni-chevron-size-sm: calc(.875rem * var(--mantine-scale));--ni-chevron-size-md: calc(1rem * var(--mantine-scale));--ni-chevron-size-lg: calc(1.125rem * var(--mantine-scale));--ni-chevron-size-xl: calc(1.25rem * var(--mantine-scale));--ni-chevron-size: var(--ni-chevron-size-sm);display:flex;flex-direction:column;width:100%;height:calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));max-width:calc(var(--ni-chevron-size) * 1.7);margin-inline-start:auto}.m_80b4b171{--control-border: 1px solid var(--input-bd);--control-radius: calc(var(--input-radius) - calc(.0625rem * var(--mantine-scale)));flex:0 0 50%;width:100%;padding:0;height:calc(var(--input-height) / 2 - calc(.0625rem * var(--mantine-scale)));border-inline-start:var(--control-border);display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text);background-color:transparent;cursor:pointer}.m_80b4b171:where(:disabled){background-color:transparent;cursor:not-allowed;opacity:.6;color:var(--mantine-color-disabled-color)}.m_e2f5cd4e[data-error] :where(.m_80b4b171){color:var(--mantine-color-error)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_80b4b171:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_80b4b171:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:active{background-color:var(--mantine-color-dark-4)}}.m_80b4b171:where(:first-of-type){border-radius:0;border-start-end-radius:var(--control-radius)}.m_80b4b171:last-of-type{border-radius:0;border-end-end-radius:var(--control-radius)}.m_4addd315{--pagination-control-size-xs: calc(1.375rem * var(--mantine-scale));--pagination-control-size-sm: calc(1.625rem * var(--mantine-scale));--pagination-control-size-md: calc(2rem * var(--mantine-scale));--pagination-control-size-lg: calc(2.375rem * var(--mantine-scale));--pagination-control-size-xl: calc(2.75rem * var(--mantine-scale));--pagination-control-size: var(--pagination-control-size-md);--pagination-control-fz: var(--mantine-font-size-md);--pagination-active-bg: var(--mantine-primary-color-filled)}.m_326d024a{display:flex;align-items:center;justify-content:center;border:calc(.0625rem * var(--mantine-scale)) solid;cursor:pointer;color:var(--mantine-color-text);height:var(--pagination-control-size);min-width:var(--pagination-control-size);font-size:var(--pagination-control-fz);line-height:1;border-radius:var(--pagination-control-radius, var(--mantine-radius-default))}.m_326d024a:where([data-with-padding]){padding:calc(var(--pagination-control-size) / 4)}.m_326d024a:where(:disabled,[data-disabled]){cursor:not-allowed;opacity:.4}:where([data-mantine-color-scheme=light]) .m_326d024a{border-color:var(--mantine-color-gray-4);background-color:var(--mantine-color-white)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}:where([data-mantine-color-scheme=dark]) .m_326d024a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}@media(hover:hover){:where([data-mantine-color-scheme=dark]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=dark]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}.m_326d024a:where([data-active]){background-color:var(--pagination-active-bg);border-color:var(--pagination-active-bg);color:var(--pagination-active-color, var(--mantine-color-white))}@media(hover:hover){.m_326d024a:where([data-active]):hover{background-color:var(--pagination-active-bg)}}@media(hover:none){.m_326d024a:where([data-active]):active{background-color:var(--pagination-active-bg)}}.m_4ad7767d{height:var(--pagination-control-size);min-width:var(--pagination-control-size);display:flex;align-items:center;justify-content:center;pointer-events:none}.m_f61ca620{--psi-button-size-xs: calc(1.375rem * var(--mantine-scale));--psi-button-size-sm: calc(1.625rem * var(--mantine-scale));--psi-button-size-md: calc(1.75rem * var(--mantine-scale));--psi-button-size-lg: calc(2rem * var(--mantine-scale));--psi-button-size-xl: calc(2.5rem * var(--mantine-scale));--psi-icon-size-xs: calc(.75rem * var(--mantine-scale));--psi-icon-size-sm: calc(.9375rem * var(--mantine-scale));--psi-icon-size-md: calc(1.0625rem * var(--mantine-scale));--psi-icon-size-lg: calc(1.1875rem * var(--mantine-scale));--psi-icon-size-xl: calc(1.3125rem * var(--mantine-scale));--psi-button-size: var(--psi-button-size-sm);--psi-icon-size: var(--psi-icon-size-sm)}.m_ccf8da4c{position:relative;overflow:hidden}.m_f2d85dd2{font-family:var(--mantine-font-family);background-color:transparent;border:0;padding-inline-end:var(--input-padding-inline-end);padding-inline-start:var(--input-padding-inline-start);position:absolute;inset:0;outline:0;font-size:inherit;line-height:var(--mantine-line-height);height:100%;width:100%;color:inherit}.m_ccf8da4c[data-disabled] .m_f2d85dd2,.m_f2d85dd2:disabled{cursor:not-allowed}.m_f2d85dd2::placeholder{color:var(--input-placeholder-color);opacity:1}.m_f2d85dd2::-ms-reveal{display:none}.m_b1072d44{width:var(--psi-button-size);height:var(--psi-button-size);min-width:var(--psi-button-size);min-height:var(--psi-button-size)}.m_b1072d44:disabled{display:none}.m_f1cb205a{--pin-input-size-xs: calc(1.875rem * var(--mantine-scale));--pin-input-size-sm: calc(2.25rem * var(--mantine-scale));--pin-input-size-md: calc(2.625rem * var(--mantine-scale));--pin-input-size-lg: calc(3.125rem * var(--mantine-scale));--pin-input-size-xl: calc(3.75rem * var(--mantine-scale));--pin-input-size: var(--pin-input-size-sm)}.m_cb288ead{width:var(--pin-input-size);height:var(--pin-input-size)}@keyframes m_81a374bd{0%{background-position:0 0}to{background-position:calc(2.5rem * var(--mantine-scale)) 0}}@keyframes m_e0fb7a86{0%{background-position:0 0}to{background-position:0 calc(2.5rem * var(--mantine-scale))}}.m_db6d6462{--progress-radius: var(--mantine-radius-default);--progress-size: var(--progress-size-md);--progress-size-xs: calc(.1875rem * var(--mantine-scale));--progress-size-sm: calc(.3125rem * var(--mantine-scale));--progress-size-md: calc(.5rem * var(--mantine-scale));--progress-size-lg: calc(.75rem * var(--mantine-scale));--progress-size-xl: calc(1rem * var(--mantine-scale));position:relative;height:var(--progress-size);border-radius:var(--progress-radius);overflow:hidden;display:flex}:where([data-mantine-color-scheme=light]) .m_db6d6462{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_db6d6462{background-color:var(--mantine-color-dark-4)}.m_db6d6462:where([data-orientation=vertical]){height:auto;width:var(--progress-size);flex-direction:column-reverse}.m_2242eb65{background-color:var(--progress-section-color);height:100%;width:var(--progress-section-size);display:flex;align-items:center;justify-content:center;overflow:hidden;background-size:calc(1.25rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));transition:width var(--progress-transition-duration, .1s) ease}.m_2242eb65:where([data-striped]){background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_2242eb65:where([data-animated]){animation:m_81a374bd 1s linear infinite}.m_2242eb65:where(:last-of-type){border-radius:0;border-start-end-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_2242eb65:where(:first-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-end-start-radius:var(--progress-radius)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65{width:100%;height:var(--progress-section-size);transition:height var(--progress-transition-duration, .1s) ease}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where([data-striped]){background-image:linear-gradient(135deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where([data-animated]){animation:m_e0fb7a86 1s linear infinite}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where(:last-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-start-end-radius:var(--progress-radius)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where(:first-of-type){border-radius:0;border-end-start-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_91e40b74{color:var(--progress-label-color, var(--mantine-color-white));font-weight:700;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:min(calc(var(--progress-size) * .65),calc(1.125rem * var(--mantine-scale)));line-height:1;padding-inline:calc(.25rem * var(--mantine-scale))}.m_db6d6462:where([data-orientation=vertical]) .m_91e40b74{writing-mode:vertical-rl}.m_9dc8ae12{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_9dc8ae12 :where(*){cursor:inherit}.m_9dc8ae12:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_717d7ff6{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-size: var(--radio-size-sm);--radio-color: var(--mantine-primary-color-filled);--radio-icon-color: var(--mantine-color-white);position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--radio-size);min-width:var(--radio-size);height:var(--radio-size);min-height:var(--radio-size);border-radius:var(--radio-radius, 10000px);transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_717d7ff6{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_717d7ff6{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_717d7ff6[data-indeterminate],.m_717d7ff6[data-checked]{background-color:var(--radio-color);border-color:var(--radio-color)}.m_717d7ff6[data-indeterminate]>.m_3e4da632,.m_717d7ff6[data-checked]>.m_3e4da632{opacity:1;transform:none;color:var(--radio-icon-color)}.m_717d7ff6[data-disabled]{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-disabled-color)}.m_2980836c[data-indeterminate]:not([data-disabled]),.m_2980836c[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--radio-color)}.m_2980836c[data-indeterminate]:not([data-disabled])>.m_3e4da632,.m_2980836c[data-checked]:not([data-disabled])>.m_3e4da632{color:var(--radio-color);opacity:1;transform:none}.m_3e4da632{display:block;width:var(--radio-icon-size);height:var(--radio-icon-size);color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_f3f1af94{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-size: var(--radio-size-sm);--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-icon-color: var(--mantine-color-white)}.m_89c4f5e4{position:relative;width:var(--radio-size);height:var(--radio-size);order:1}.m_89c4f5e4:where([data-label-position=left]){order:2}.m_f3ed6b2b{color:var(--radio-icon-color);opacity:var(--radio-icon-opacity, 0);transform:var(--radio-icon-transform, scale(.2) translateY(calc(.625rem * var(--mantine-scale))));transition:opacity .1s ease,transform .2s ease;pointer-events:none;width:var(--radio-icon-size);height:var(--radio-icon-size);position:absolute;top:calc(50% - var(--radio-icon-size) / 2);left:calc(50% - var(--radio-icon-size) / 2)}.m_8a3dbb89{border:calc(.0625rem * var(--mantine-scale)) solid;position:relative;appearance:none;width:var(--radio-size);height:var(--radio-size);border-radius:var(--radio-radius, var(--radio-size));margin:0;display:flex;align-items:center;justify-content:center;transition-property:background-color,border-color;transition-timing-function:ease;transition-duration:.1s;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_8a3dbb89{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_8a3dbb89:checked{background-color:var(--radio-color, var(--mantine-primary-color-filled));border-color:var(--radio-color, var(--mantine-primary-color-filled))}.m_8a3dbb89:checked+.m_f3ed6b2b{--radio-icon-opacity: 1;--radio-icon-transform: scale(1)}.m_8a3dbb89:disabled{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-disabled-color)}.m_8a3dbb89:where([data-error]){border-color:var(--mantine-color-error)}.m_1bfe9d39+.m_f3ed6b2b{--radio-icon-color: var(--radio-color)}.m_1bfe9d39:checked:not(:disabled){background-color:transparent;border-color:var(--radio-color)}.m_1bfe9d39:checked:not(:disabled)+.m_f3ed6b2b{--radio-icon-color: var(--radio-color);--radio-icon-opacity: 1;--radio-icon-transform: none}.m_f8d312f2{--rating-size-xs: calc(.875rem * var(--mantine-scale));--rating-size-sm: calc(1.125rem * var(--mantine-scale));--rating-size-md: calc(1.25rem * var(--mantine-scale));--rating-size-lg: calc(1.75rem * var(--mantine-scale));--rating-size-xl: calc(2rem * var(--mantine-scale));display:flex;width:max-content}.m_f8d312f2:where(:has(input:disabled)){pointer-events:none}.m_61734bb7{position:relative;transition:transform .1s ease}.m_61734bb7:where([data-active]){z-index:1;transform:scale(1.1)}.m_5662a89a{width:var(--rating-size);height:var(--rating-size);display:block}:where([data-mantine-color-scheme=light]) .m_5662a89a{fill:var(--mantine-color-gray-3);stroke:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_5662a89a{fill:var(--mantine-color-dark-3);stroke:var(--mantine-color-dark-3)}.m_5662a89a:where([data-filled]){fill:var(--rating-color);stroke:var(--rating-color)}.m_211007ba{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0;-webkit-tap-highlight-color:transparent}.m_211007ba:focus-visible+label{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_21342ee4{display:block;cursor:pointer;position:absolute;top:0;left:0;z-index:var(--rating-item-z-index, 0);-webkit-tap-highlight-color:transparent}.m_21342ee4:where([data-read-only]){cursor:default}.m_21342ee4:where(:last-of-type){position:relative}.m_fae05d6a{clip-path:var(--rating-symbol-clip-path)}.m_1b3c8819{--tooltip-radius: var(--mantine-radius-default);position:absolute;padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-xs);pointer-events:none;font-size:var(--mantine-font-size-sm);white-space:nowrap;border-radius:var(--tooltip-radius)}:where([data-mantine-color-scheme=light]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-9));color:var(--tooltip-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-2));color:var(--tooltip-color, var(--mantine-color-black))}.m_1b3c8819:where([data-multiline]){white-space:normal}.m_1b3c8819:where([data-fixed]){position:fixed}.m_f898399f{background-color:inherit;border:0;z-index:1}.m_b32e4812{position:relative;width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);--rp-transition-duration: 0ms}.m_d43b5134{width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);transform:rotate(-90deg)}.m_b1ca1fbf{stroke:var(--curve-color, var(--rp-curve-root-color));transition:stroke-dashoffset var(--rp-transition-duration) ease,stroke-dasharray var(--rp-transition-duration) ease,stroke var(--rp-transition-duration)}[data-mantine-color-scheme=light] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-dark-4)}.m_b23f9dc4{position:absolute;top:50%;transform:translateY(-50%);inset-inline:var(--rp-label-offset)}.m_cf365364{--sc-padding-xs: calc(.125rem * var(--mantine-scale)) calc(.375rem * var(--mantine-scale));--sc-padding-sm: calc(.1875rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--sc-padding-md: calc(.25rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--sc-padding-lg: calc(.4375rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--sc-padding-xl: calc(.625rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--sc-transition-duration: .2s;--sc-padding: var(--sc-padding-sm);--sc-transition-timing-function: ease;--sc-font-size: var(--mantine-font-size-sm);position:relative;display:inline-flex;flex-direction:row;width:auto;border-radius:var(--sc-radius, var(--mantine-radius-default));overflow:hidden;padding:calc(.25rem * var(--mantine-scale))}.m_cf365364:where([data-full-width]){display:flex}.m_cf365364:where([data-orientation=vertical]){display:flex;flex-direction:column;width:max-content}.m_cf365364:where([data-orientation=vertical]):where([data-full-width]){width:auto}:where([data-mantine-color-scheme=light]) .m_cf365364{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_cf365364{background-color:var(--mantine-color-dark-8)}.m_9e182ccd{position:absolute;display:block;z-index:1;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_9e182ccd{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_9e182ccd{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}.m_1738fcb2{-webkit-tap-highlight-color:transparent;font-weight:500;display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;border-radius:var(--sc-radius, var(--mantine-radius-default));font-size:var(--sc-font-size);padding:var(--sc-padding);transition:color var(--sc-transition-duration) var(--sc-transition-timing-function);cursor:pointer;outline:var(--segmented-control-outline, none)}:where([data-mantine-color-scheme=light]) .m_1738fcb2{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2{color:var(--mantine-color-dark-1)}.m_1738fcb2:where([data-read-only]){cursor:default}fieldset:disabled .m_1738fcb2,.m_1738fcb2:where([data-disabled]){cursor:not-allowed;color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-black))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-white))}.m_cf365364:where([data-initialized]) .m_1738fcb2:where([data-active]):before{display:none}.m_1738fcb2:where([data-active]):before{content:"";inset:0;z-index:0;position:absolute;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]):before{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]):before{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-white)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-white)}}@media(hover:hover){fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-disabled-color)!important}}@media(hover:none){fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-disabled-color)!important}}.m_1714d588{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0}.m_1714d588[data-focus-ring=auto]:focus:focus-visible+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_1714d588[data-focus-ring=always]:focus+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_69686b9b{position:relative;flex:1;z-index:2;transition:border-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_cf365364[data-with-items-borders] :where(.m_69686b9b):before{content:"";position:absolute;top:0;bottom:0;inset-inline-start:0;background-color:var(--separator-color);width:calc(.0625rem * var(--mantine-scale));transition:background-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_69686b9b[data-orientation=vertical]:before{top:0;inset-inline:0;bottom:auto;height:calc(.0625rem * var(--mantine-scale));width:auto}:where([data-mantine-color-scheme=light]) .m_69686b9b{--separator-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_69686b9b{--separator-color: var(--mantine-color-dark-4)}.m_69686b9b:first-of-type:before{--separator-color: transparent}[data-mantine-color-scheme] .m_69686b9b[data-active]:before,[data-mantine-color-scheme] .m_69686b9b[data-active]+.m_69686b9b:before{--separator-color: transparent}.m_78882f40{position:relative;z-index:2}.m_fa528724{--scp-filled-segment-color: var(--mantine-primary-color-filled);--scp-transition-duration: 0ms;--scp-thickness: calc(.625rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-dark-4)}.m_fa528724{position:relative;width:fit-content}.m_62e9e7e2{display:block;transform:var(--scp-rotation);overflow:hidden}.m_c573fb6f{transition:stroke-dashoffset var(--scp-transition-duration) ease,stroke-dasharray var(--scp-transition-duration) ease,stroke var(--scp-transition-duration)}.m_4fa340f2{position:absolute;margin:0;padding:0;inset-inline:0;text-align:center;z-index:1}.m_4fa340f2:where([data-position=bottom]){bottom:0;padding-inline:calc(var(--scp-thickness) * 2)}.m_4fa340f2:where([data-position=bottom]):where([data-orientation=down]){bottom:auto;top:0}.m_4fa340f2:where([data-position=center]){top:50%;padding-inline:calc(var(--scp-thickness) * 3)}.m_925c2d2c{container:simple-grid / inline-size}.m_2415a157{display:grid;grid-template-columns:repeat(var(--sg-cols),minmax(0,1fr));gap:var(--sg-spacing-y) var(--sg-spacing-x)}@keyframes m_299c329c{0%,to{opacity:.4}50%{opacity:1}}.m_18320242{height:var(--skeleton-height, auto);width:var(--skeleton-width, 100%);border-radius:var(--skeleton-radius, var(--mantine-radius-default));position:relative;transform:translateZ(0);-webkit-transform:translateZ(0)}.m_18320242:where([data-animate]):after{animation:m_299c329c 1.5s linear infinite}.m_18320242:where([data-visible]){overflow:hidden}.m_18320242:where([data-visible]):before{position:absolute;content:"";inset:0;z-index:10;background-color:var(--mantine-color-body)}.m_18320242:where([data-visible]):after{position:absolute;content:"";inset:0;z-index:11}:where([data-mantine-color-scheme=light]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-dark-4)}.m_dd36362e{--slider-size-xs: calc(.25rem * var(--mantine-scale));--slider-size-sm: calc(.375rem * var(--mantine-scale));--slider-size-md: calc(.5rem * var(--mantine-scale));--slider-size-lg: calc(.625rem * var(--mantine-scale));--slider-size-xl: calc(.75rem * var(--mantine-scale));--slider-size: var(--slider-size-md);--slider-radius: calc(62.5rem * var(--mantine-scale));--slider-color: var(--mantine-primary-color-filled);--slider-track-disabled-bg: var(--mantine-color-disabled);-webkit-tap-highlight-color:transparent;outline:none;height:calc(var(--slider-size) * 2);padding-inline:var(--slider-size);display:flex;flex-direction:column;align-items:center;touch-action:none;position:relative}[data-mantine-color-scheme=light] .m_dd36362e{--slider-track-bg: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_dd36362e{--slider-track-bg: var(--mantine-color-dark-4)}.m_c9357328{position:absolute;top:calc(-2.25rem * var(--mantine-scale));font-size:var(--mantine-font-size-xs);color:var(--mantine-color-white);padding:calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);white-space:nowrap;pointer-events:none;user-select:none;touch-action:none}:where([data-mantine-color-scheme=light]) .m_c9357328{background-color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_c9357328{background-color:var(--mantine-color-dark-4)}.m_c9a9a60a{position:absolute;display:flex;height:var(--slider-thumb-size);width:var(--slider-thumb-size);border:calc(.25rem * var(--mantine-scale)) solid;transform:translate(-50%,-50%);top:50%;cursor:pointer;border-radius:var(--slider-radius);align-items:center;justify-content:center;transition:box-shadow .1s ease,transform .1s ease;z-index:3;user-select:none;touch-action:none;outline-offset:calc(.125rem * var(--mantine-scale));left:var(--slider-thumb-offset)}:where([dir=rtl]) .m_c9a9a60a{left:auto;right:calc(var(--slider-thumb-offset) - var(--slider-thumb-size))}fieldset:disabled .m_c9a9a60a,.m_c9a9a60a:where([data-disabled]){display:none}.m_c9a9a60a:where([data-dragging]){transform:translate(-50%,-50%) scale(1.05);box-shadow:var(--mantine-shadow-sm)}:where([data-mantine-color-scheme=light]) .m_c9a9a60a{color:var(--slider-color);border-color:var(--slider-color);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_c9a9a60a{color:var(--mantine-color-white);border-color:var(--mantine-color-white);background-color:var(--slider-color)}.m_a8645c2{display:flex;align-items:center;width:100%;height:calc(var(--slider-size) * 2);cursor:pointer}fieldset:disabled .m_a8645c2,.m_a8645c2:where([data-disabled]){cursor:not-allowed}.m_c9ade57f{position:relative;width:100%;height:var(--slider-size)}.m_c9ade57f:where([data-inverted]:not([data-disabled])){--track-bg: var(--slider-color)}fieldset:disabled .m_c9ade57f:where([data-inverted]),.m_c9ade57f:where([data-inverted][data-disabled]){--track-bg: var(--slider-track-disabled-bg)}.m_c9ade57f:before{content:"";position:absolute;top:0;bottom:0;border-radius:var(--slider-radius);inset-inline:calc(var(--slider-size) * -1);background-color:var(--track-bg, var(--slider-track-bg));z-index:0}.m_38aeed47{position:absolute;z-index:1;top:0;bottom:0;background-color:var(--slider-color);border-radius:var(--slider-radius);width:var(--slider-bar-width);inset-inline-start:var(--slider-bar-offset)}.m_38aeed47:where([data-inverted]){background-color:var(--slider-track-bg)}fieldset:disabled .m_38aeed47:where(:not([data-inverted])),.m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-disabled-color)}.m_b7b0423a{position:absolute;inset-inline-start:calc(var(--mark-offset) - var(--slider-size) / 2);top:0;z-index:2;height:0;pointer-events:none}.m_dd33bc19{border:calc(.125rem * var(--mantine-scale)) solid;height:var(--slider-size);width:var(--slider-size);border-radius:calc(62.5rem * var(--mantine-scale));background-color:var(--mantine-color-white);pointer-events:none}:where([data-mantine-color-scheme=light]) .m_dd33bc19{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_dd33bc19{border-color:var(--mantine-color-dark-4)}.m_dd33bc19:where([data-filled]){border-color:var(--slider-color)}.m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-disabled-border)}.m_68c77a5b{transform:translate(calc(-50% + var(--slider-size) / 2),calc(var(--mantine-spacing-xs) / 2));font-size:var(--mantine-font-size-sm);white-space:nowrap;cursor:pointer;user-select:none}:where([data-mantine-color-scheme=light]) .m_68c77a5b{color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_68c77a5b{color:var(--mantine-color-dark-2)}.m_559cce2d{position:relative}.m_559cce2d:where([data-has-spoiler]){margin-bottom:calc(1.5rem * var(--mantine-scale))}.m_b912df4e{display:flex;flex-direction:column;overflow:hidden;transition:max-height var(--spoiler-transition-duration, .2s) ease}.m_b9131032{position:absolute;inset-inline-start:0;top:100%;height:calc(1.5rem * var(--mantine-scale))}.m_6d731127{display:flex;flex-direction:column;align-items:var(--stack-align, stretch);justify-content:var(--stack-justify, flex-start);gap:var(--stack-gap, var(--mantine-spacing-md))}.m_cbb4ea7e{--stepper-icon-size-xs: calc(2.125rem * var(--mantine-scale));--stepper-icon-size-sm: calc(2.25rem * var(--mantine-scale));--stepper-icon-size-md: calc(2.625rem * var(--mantine-scale));--stepper-icon-size-lg: calc(3rem * var(--mantine-scale));--stepper-icon-size-xl: calc(3.25rem * var(--mantine-scale));--stepper-icon-size: var(--stepper-icon-size-md);--stepper-color: var(--mantine-primary-color-filled);--stepper-content-padding: var(--mantine-spacing-md);--stepper-spacing: var(--mantine-spacing-md);--stepper-radius: calc(62.5rem * var(--mantine-scale));--stepper-fz: var(--mantine-font-size-md);--stepper-outline-thickness: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-dark-5)}.m_aaf89d0b{display:flex;flex-wrap:nowrap;align-items:center}.m_aaf89d0b:where([data-wrap]){flex-wrap:wrap;gap:var(--mantine-spacing-md) 0}.m_aaf89d0b:where([data-orientation=vertical]){flex-direction:column}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=left]){align-items:flex-start}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=right]){align-items:flex-end}.m_aaf89d0b:where([data-orientation=horizontal]){flex-direction:row}.m_2a371ac9{transition:background-color .15s ease;flex:1;height:var(--stepper-outline-thickness);margin-inline:var(--mantine-spacing-md);background-color:var(--stepper-outline-color)}.m_2a371ac9:where([data-active]){background-color:var(--stepper-color)}.m_78da155d{padding-top:var(--stepper-content-padding)}.m_cbb57068{--step-color: var(--stepper-color);display:flex;cursor:default}.m_cbb57068:where([data-allow-click]){cursor:pointer}.m_cbb57068:where([data-icon-position=left]){flex-direction:row}.m_cbb57068:where([data-icon-position=right]){flex-direction:row-reverse}.m_f56b1e2c{align-items:center}.m_833edb7e{--separator-spacing: calc(var(--mantine-spacing-xs) / 2);justify-content:flex-start;min-height:calc(var(--stepper-icon-size) + var(--mantine-spacing-xl) + var(--separator-spacing));margin-top:var(--separator-spacing);overflow:hidden}.m_833edb7e:where(:first-of-type){margin-top:0}.m_833edb7e:where(:last-of-type){min-height:auto}.m_833edb7e:where(:last-of-type) .m_6496b3f3{display:none}.m_818e70b{position:relative}.m_6496b3f3{top:calc(var(--stepper-icon-size) + var(--separator-spacing));inset-inline-start:calc(var(--stepper-icon-size) / 2);height:100vh;position:absolute;border-inline-start:var(--stepper-outline-thickness) solid var(--stepper-outline-color)}.m_6496b3f3:where([data-active]){border-color:var(--stepper-color)}.m_1959ad01{height:var(--stepper-icon-size);width:var(--stepper-icon-size);min-height:var(--stepper-icon-size);min-width:var(--stepper-icon-size);border-radius:var(--stepper-radius);font-size:var(--stepper-fz);display:flex;align-items:center;justify-content:center;position:relative;font-weight:700;transition:background-color .15s ease,border-color .15s ease;border:var(--stepper-outline-thickness) solid var(--stepper-outline-color);background-color:var(--stepper-outline-color)}:where([data-mantine-color-scheme=light]) .m_1959ad01{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1959ad01{color:var(--mantine-color-dark-1)}.m_1959ad01:where([data-progress]){border-color:var(--step-color)}.m_1959ad01:where([data-completed]){color:var(--stepper-icon-color, var(--mantine-color-white));background-color:var(--step-color);border-color:var(--step-color)}.m_a79331dc{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--stepper-icon-color, var(--mantine-color-white))}.m_1956aa2a{display:flex;flex-direction:column}.m_1956aa2a:where([data-icon-position=left]){margin-inline-start:var(--mantine-spacing-sm)}.m_1956aa2a:where([data-icon-position=right]){text-align:right;margin-inline-end:var(--mantine-spacing-sm)}:where([dir=rtl]) .m_1956aa2a:where([data-icon-position=right]){text-align:left}.m_12051f6c{font-weight:500;font-size:var(--stepper-fz);line-height:1}.m_164eea74{margin-top:calc(var(--stepper-spacing) / 3);margin-bottom:calc(var(--stepper-spacing) / 3);font-size:calc(var(--stepper-fz) - calc(.125rem * var(--mantine-scale)));line-height:1;color:var(--mantine-color-dimmed)}.m_5f93f3bb{--switch-height-xs: calc(1rem * var(--mantine-scale));--switch-height-sm: calc(1.25rem * var(--mantine-scale));--switch-height-md: calc(1.5rem * var(--mantine-scale));--switch-height-lg: calc(1.875rem * var(--mantine-scale));--switch-height-xl: calc(2.25rem * var(--mantine-scale));--switch-width-xs: calc(2rem * var(--mantine-scale));--switch-width-sm: calc(2.375rem * var(--mantine-scale));--switch-width-md: calc(2.875rem * var(--mantine-scale));--switch-width-lg: calc(3.5rem * var(--mantine-scale));--switch-width-xl: calc(4.5rem * var(--mantine-scale));--switch-thumb-size-xs: calc(.75rem * var(--mantine-scale));--switch-thumb-size-sm: calc(.875rem * var(--mantine-scale));--switch-thumb-size-md: calc(1.125rem * var(--mantine-scale));--switch-thumb-size-lg: calc(1.375rem * var(--mantine-scale));--switch-thumb-size-xl: calc(1.75rem * var(--mantine-scale));--switch-label-font-size-xs: calc(.3125rem * var(--mantine-scale));--switch-label-font-size-sm: calc(.375rem * var(--mantine-scale));--switch-label-font-size-md: calc(.4375rem * var(--mantine-scale));--switch-label-font-size-lg: calc(.5625rem * var(--mantine-scale));--switch-label-font-size-xl: calc(.6875rem * var(--mantine-scale));--switch-track-label-padding-xs: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-sm: calc(.15625rem * var(--mantine-scale));--switch-track-label-padding-md: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-lg: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-xl: calc(.21875rem * var(--mantine-scale));--switch-height: var(--switch-height-sm);--switch-width: var(--switch-width-sm);--switch-thumb-size: var(--switch-thumb-size-sm);--switch-label-font-size: var(--switch-label-font-size-sm);--switch-track-label-padding: var(--switch-track-label-padding-sm);--switch-radius: calc(62.5rem * var(--mantine-scale));--switch-color: var(--mantine-primary-color-filled);--switch-disabled-color: var(--mantine-color-disabled);position:relative}.m_926b4011{height:0;width:0;opacity:0;margin:0;padding:0;position:absolute;overflow:hidden;white-space:nowrap}.m_9307d992{-webkit-tap-highlight-color:transparent;cursor:var(--switch-cursor, var(--mantine-cursor-type));overflow:hidden;position:relative;border-radius:var(--switch-radius);background-color:var(--switch-bg);height:var(--switch-height);min-width:var(--switch-width);margin:0;transition:background-color .15s ease,border-color .15s ease;appearance:none;display:flex;align-items:center;font-size:var(--switch-label-font-size);font-weight:600;order:var(--switch-order, 1);user-select:none;z-index:0;line-height:0;color:var(--switch-text-color)}.m_9307d992:where([data-without-labels]){width:var(--switch-width)}.m_926b4011:focus-visible+.m_9307d992{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_926b4011:checked+.m_9307d992{--switch-bg: var(--switch-color);--switch-text-color: var(--mantine-color-white)}.m_926b4011:disabled+.m_9307d992,.m_926b4011[data-disabled]+.m_9307d992{--switch-bg: var(--switch-disabled-color);--switch-cursor: not-allowed}[data-mantine-color-scheme=light] .m_9307d992{--switch-bg: var(--mantine-color-gray-3);--switch-text-color: var(--mantine-color-gray-6)}[data-mantine-color-scheme=dark] .m_9307d992{--switch-bg: var(--mantine-color-dark-5);--switch-text-color: var(--mantine-color-dark-1)}.m_9307d992[data-label-position=left]{--switch-order: 2}.m_93039a1d{position:absolute;z-index:1;border-radius:var(--switch-radius);display:flex;background-color:var(--switch-thumb-bg, var(--mantine-color-white));height:var(--switch-thumb-size);width:var(--switch-thumb-size);inset-inline-start:var(--switch-thumb-start, var(--switch-track-label-padding));transition:inset-inline-start .15s ease}.m_93039a1d:where([data-with-thumb-indicator]):before{content:"";width:40%;height:40%;background-color:var(--switch-bg);position:absolute;border-radius:var(--switch-radius);top:50%;left:50%;transform:translate(-50%,-50%)}.m_93039a1d>*{margin:auto}.m_926b4011:checked+*>.m_93039a1d{--switch-thumb-start: calc(100% - var(--switch-thumb-size) - var(--switch-track-label-padding))}.m_926b4011:disabled+*>.m_93039a1d,.m_926b4011[data-disabled]+*>.m_93039a1d{--switch-thumb-bg: var(--switch-thumb-bg-disabled)}[data-mantine-color-scheme=light] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-dark-3)}.m_8277e082{height:100%;display:grid;place-content:center;min-width:calc(var(--switch-width) - var(--switch-thumb-size));padding-inline:var(--switch-track-label-padding);margin-inline-start:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));transition:margin .15s ease}.m_926b4011:checked+*>.m_8277e082{margin-inline-end:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));margin-inline-start:0}.m_b23fa0ef{width:100%;border-collapse:collapse;border-spacing:0;line-height:var(--mantine-line-height);font-size:var(--mantine-font-size-sm);table-layout:var(--table-layout, auto);caption-side:var(--table-caption-side, bottom);border:none}:where([data-mantine-color-scheme=light]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-gray-1);--table-striped-color: var(--mantine-color-gray-0);--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-dark-5);--table-striped-color: var(--mantine-color-dark-6);--table-border-color: var(--mantine-color-dark-4)}.m_b23fa0ef:where([data-with-table-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b23fa0ef:where([data-tabular-nums]){font-variant-numeric:tabular-nums}.m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){font-weight:500}:where([data-mantine-color-scheme=light]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-dark-6)}.m_4e7aa4f3{text-align:left}:where([dir=rtl]) .m_4e7aa4f3{text-align:right}.m_4e7aa4fd{border-bottom:none;background-color:transparent}@media(hover:hover){.m_4e7aa4fd:hover:where([data-hover]){background-color:var(--tr-hover-bg)}}@media(hover:none){.m_4e7aa4fd:active:where([data-hover]){background-color:var(--tr-hover-bg)}}.m_4e7aa4fd:where([data-with-row-border]){border-bottom:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef,.m_4e7aa4f3{padding:var(--table-vertical-spacing) var(--table-horizontal-spacing, var(--mantine-spacing-xs))}.m_4e7aa4ef:where([data-with-column-border]:not(:first-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:first-child)){border-inline-start:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef:where([data-with-column-border]:not(:last-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:last-child)){border-inline-end:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b2404537>:where(tr):where([data-with-row-border]:last-of-type){border-bottom:none}.m_b2404537>:where(tr):where([data-striped=odd]:nth-of-type(odd)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr):where([data-striped=even]:nth-of-type(2n)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr)[data-hover]{--tr-hover-bg: var(--table-highlight-on-hover-color, var(--table-hover-color))}.m_b242d975{top:var(--table-sticky-header-offset, 0);z-index:3}.m_b242d975:where([data-sticky]){position:sticky}.m_b242d975:where([data-sticky]) :where(.m_4e7aa4f3){position:sticky;top:var(--table-sticky-header-offset, 0);background-color:var(--mantine-color-body)}:where([data-with-table-border]) .m_b242d975[data-sticky]{position:sticky;top:var(--table-sticky-header-offset, 0);z-index:4;border-top:none}:where([data-with-table-border]) .m_b242d975[data-sticky]:before{content:"";display:block;position:absolute;left:0;top:calc(-.03125rem * var(--mantine-scale));width:100%;height:calc(.0625rem * var(--mantine-scale));background-color:var(--table-border-color);z-index:5}:where([data-with-table-border]) .m_b242d975[data-sticky] .m_4e7aa4f3:first-child{border-top:none}.m_9e5a3ac7{color:var(--mantine-color-dimmed)}.m_9e5a3ac7:where([data-side=top]){margin-bottom:var(--mantine-spacing-xs)}.m_9e5a3ac7:where([data-side=bottom]){margin-top:var(--mantine-spacing-xs)}.m_a100c15{overflow-x:var(--table-overflow)}.m_62259741{min-width:var(--table-min-width);max-height:var(--table-max-height)}.m_bcaa9990{display:flex;flex-direction:column;--toc-depth-offset: .8em}.m_375a65ef{display:block;padding:.3em .8em;font-size:var(--toc-size, var(--mantine-font-size-md));border-radius:var(--toc-radius, var(--mantine-radius-default));padding-left:max(calc(var(--depth-offset) * var(--toc-depth-offset)),.8em)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}.m_375a65ef:where([data-active]){background-color:var(--toc-bg);color:var(--toc-color)}[data-mantine-color-scheme=light] .m_89d60db1{--tab-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89d60db1{--tab-border-color: var(--mantine-color-dark-4)}.m_89d60db1{display:var(--tabs-display);flex-direction:var(--tabs-flex-direction);--tabs-list-direction: row;--tabs-panel-grow: unset;--tabs-display: block;--tabs-flex-direction: row;--tabs-list-border-width: 0;--tabs-list-border-size: 0 0 var(--tabs-list-border-width) 0;--tabs-list-gap: unset;--tabs-list-line-bottom: 0;--tabs-list-line-top: unset;--tabs-list-line-start: 0;--tabs-list-line-end: 0;--tab-radius: var(--tabs-radius) var(--tabs-radius) 0 0;--tab-border-width: 0 0 var(--tabs-list-border-width) 0}.m_89d60db1[data-inverted]{--tabs-list-line-bottom: unset;--tabs-list-line-top: 0;--tab-radius: 0 0 var(--tabs-radius) var(--tabs-radius);--tab-border-width: var(--tabs-list-border-width) 0 0 0}.m_89d60db1[data-inverted] .m_576c9d4:before{top:0;bottom:unset}.m_89d60db1[data-orientation=vertical]{--tabs-list-line-start: unset;--tabs-list-line-end: 0;--tabs-list-line-top: 0;--tabs-list-line-bottom: 0;--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);--tabs-list-direction: column;--tabs-panel-grow: 1;--tabs-display: flex}[dir=rtl] .m_89d60db1[data-orientation=vertical]{--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}.m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-flex-direction: row-reverse;--tabs-list-line-start: 0;--tabs-list-line-end: unset;--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}[dir=rtl] .m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius)}.m_89d60db1[data-variant=default]{--tabs-list-border-width: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d60db1[data-variant=outline]{--tabs-list-border-width: calc(.0625rem * var(--mantine-scale))}.m_89d60db1[data-variant=pills]{--tabs-list-gap: calc(var(--mantine-spacing-sm) / 2)}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d33d6d{display:flex;flex-wrap:wrap;justify-content:var(--tabs-justify, flex-start);flex-direction:var(--tabs-list-direction);gap:var(--tabs-list-gap)}.m_89d33d6d:where([data-grow]) .m_4ec4dce6{flex:1}.m_b0c91715{flex-grow:var(--tabs-panel-grow)}.m_4ec4dce6{position:relative;padding:var(--mantine-spacing-xs) var(--mantine-spacing-md);font-size:var(--mantine-font-size-sm);white-space:nowrap;z-index:0;display:flex;align-items:center;line-height:1;user-select:none}.m_4ec4dce6:where(:disabled,[data-disabled]){opacity:.5;cursor:not-allowed}.m_4ec4dce6:focus{z-index:1}.m_fc420b1f{display:flex;align-items:center;justify-content:center}.m_fc420b1f:where([data-position=left]:not(:only-child)){margin-inline-end:var(--mantine-spacing-xs)}.m_fc420b1f:where([data-position=right]:not(:only-child)){margin-inline-start:var(--mantine-spacing-xs)}.m_42bbd1ae{flex:1;text-align:center}.m_576c9d4{position:relative}.m_576c9d4:before{content:"";position:absolute;border:1px solid var(--tab-border-color);bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_539e827b{border-radius:var(--tab-radius);border-width:var(--tab-border-width);border-style:solid;border-color:transparent;background-color:transparent}.m_539e827b:where([data-active]){border-color:var(--tabs-color)}@media(hover:hover){.m_539e827b:hover{background-color:var(--tab-hover-color)}.m_539e827b:hover:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:none){.m_539e827b:active{background-color:var(--tab-hover-color)}.m_539e827b:active:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:hover){.m_539e827b:disabled:hover,.m_539e827b[data-disabled]:hover{background-color:transparent}}@media(hover:none){.m_539e827b:disabled:active,.m_539e827b[data-disabled]:active{background-color:transparent}}.m_6772fbd5{position:relative}.m_6772fbd5:before{content:"";position:absolute;border-color:var(--tab-border-color);border-width:var(--tabs-list-border-size);border-style:solid;bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_b59ab47c{border-top:calc(.0625rem * var(--mantine-scale)) solid transparent;border-bottom:calc(.0625rem * var(--mantine-scale)) solid transparent;border-right:calc(.0625rem * var(--mantine-scale)) solid transparent;border-left:calc(.0625rem * var(--mantine-scale)) solid transparent;border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-radius:var(--tab-radius);position:relative;--tab-border-bottom-color: transparent;--tab-border-top-color: transparent;--tab-border-inline-end-color: transparent;--tab-border-inline-start-color: transparent}.m_b59ab47c:where([data-active]):before{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-before-bottom, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-before-left, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-before-right, auto);top:var(--tab-before-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]):after{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-after-bottom, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-after-right, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-after-left, auto);top:var(--tab-after-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]){border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-inline-start-color:var(--tab-border-inline-start-color);border-inline-end-color:var(--tab-border-inline-end-color);--tab-border-top-color: var(--tab-border-color);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--mantine-color-body)}.m_b59ab47c:where([data-active])[data-inverted]{--tab-border-bottom-color: var(--tab-border-color);--tab-border-top-color: var(--mantine-color-body);--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-bottom: auto;--tab-after-top: calc(-.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-border-inline-end-color: var(--mantine-color-body);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-before-left: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto;--tab-after-right: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-before-right: auto;--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-after-left: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-border-inline-start-color: var(--mantine-color-body);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-before-right: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto;--tab-after-left: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-before-left: auto;--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-after-right: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto}.m_c3381914{border-radius:var(--tabs-radius);background-color:var(--tab-bg);color:var(--tab-color);--tab-bg: transparent;--tab-color: inherit}@media(hover:hover){.m_c3381914:not([data-disabled]):hover{--tab-bg: var(--tab-hover-color)}}@media(hover:none){.m_c3381914:not([data-disabled]):active{--tab-bg: var(--tab-hover-color)}}.m_c3381914[data-active][data-active]{--tab-bg: var(--tabs-color);--tab-color: var(--tabs-text-color, var(--mantine-color-white))}@media(hover:hover){.m_c3381914[data-active][data-active]:hover{--tab-bg: var(--tabs-color)}}@media(hover:none){.m_c3381914[data-active][data-active]:active{--tab-bg: var(--tabs-color)}}.m_7341320d{--ti-size-xs: calc(1.125rem * var(--mantine-scale));--ti-size-sm: calc(1.375rem * var(--mantine-scale));--ti-size-md: calc(1.75rem * var(--mantine-scale));--ti-size-lg: calc(2.125rem * var(--mantine-scale));--ti-size-xl: calc(2.75rem * var(--mantine-scale));--ti-size: var(--ti-size-md);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;width:var(--ti-size);height:var(--ti-size);min-width:var(--ti-size);min-height:var(--ti-size);border-radius:var(--ti-radius, var(--mantine-radius-default));background:var(--ti-bg, var(--mantine-primary-color-filled));color:var(--ti-color, var(--mantine-color-white));border:var(--ti-bd, 1px solid transparent)}.m_43657ece{--offset: calc(var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2);--tl-bullet-size: calc(1.25rem * var(--mantine-scale));--tl-line-width: calc(.25rem * var(--mantine-scale));--tl-radius: calc(62.5rem * var(--mantine-scale));--tl-color: var(--mantine-primary-color-filled)}.m_43657ece:where([data-align=left]){padding-inline-start:var(--offset)}.m_43657ece:where([data-align=right]){padding-inline-end:var(--offset)}.m_2ebe8099{font-weight:500;line-height:1;margin-bottom:calc(var(--mantine-spacing-xs) / 2)}.m_436178ff{--item-border: var(--tl-line-width) var(--tli-border-style, solid) var(--item-border-color);position:relative;color:var(--mantine-color-text)}.m_436178ff:before{content:"";pointer-events:none;position:absolute;top:0;left:var(--timeline-line-left, 0);right:var(--timeline-line-right, 0);bottom:calc(var(--mantine-spacing-xl) * -1);border-inline-start:var(--item-border);display:var(--timeline-line-display, none)}.m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}[dir=rtl] .m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}.m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}[dir=rtl] .m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}.m_43657ece:where([data-align=left]) .m_436178ff{padding-inline-start:var(--offset);text-align:left}.m_43657ece:where([data-align=right]) .m_436178ff{padding-inline-end:var(--offset);text-align:right}:where([data-mantine-color-scheme=light]) .m_436178ff{--item-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_436178ff{--item-border-color: var(--mantine-color-dark-4)}.m_436178ff:where([data-line-active]):before{border-color:var(--tli-color, var(--tl-color))}.m_436178ff:where(:not(:last-of-type)){--timeline-line-display: block}.m_436178ff:where(:not(:first-of-type)){margin-top:var(--mantine-spacing-xl)}.m_8affcee1{width:var(--tl-bullet-size);height:var(--tl-bullet-size);border-radius:var(--tli-radius, var(--tl-radius));border:var(--tl-line-width) solid;background-color:var(--mantine-color-body);position:absolute;top:0;display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_8affcee1{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1{border-color:var(--mantine-color-dark-4)}.m_43657ece:where([data-align=left]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}.m_43657ece:where([data-align=right]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}.m_8affcee1:where([data-with-child]){border-width:var(--tl-line-width)}:where([data-mantine-color-scheme=light]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-dark-4)}.m_8affcee1:where([data-active]){border-color:var(--tli-color, var(--tl-color));background-color:var(--mantine-color-white);color:var(--tl-icon-color, var(--mantine-color-white))}.m_8affcee1:where([data-active]):where([data-with-child]){background-color:var(--tli-color, var(--tl-color));color:var(--tl-icon-color, var(--mantine-color-white))}.m_43657ece:where([data-align=left]) .m_540e8f41{padding-inline-start:var(--offset);text-align:left}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_540e8f41{text-align:right}.m_43657ece:where([data-align=right]) .m_540e8f41{padding-inline-end:var(--offset);text-align:right}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_540e8f41{text-align:left}.m_8a5d1357{margin:0;font-weight:var(--title-fw);font-size:var(--title-fz);line-height:var(--title-lh);font-family:var(--mantine-font-family-headings);text-wrap:var(--title-text-wrap, var(--mantine-heading-text-wrap))}.m_8a5d1357:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--title-line-clamp);-webkit-box-orient:vertical}.m_f698e191{--level-offset: var(--mantine-spacing-lg);margin:0;padding:0;user-select:none}.m_75f3ecf{margin:0;padding:0}.m_f6970eb1{cursor:pointer;list-style:none;margin:0;padding:0;outline:0}.m_f6970eb1:focus-visible>.m_dc283425{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_dc283425{padding-inline-start:var(--label-offset)}:where([data-mantine-color-scheme=light]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-dark-5)}.m_d08caa0 :first-child{margin-top:0}.m_d08caa0 :last-child{margin-bottom:0}.m_d08caa0 :where(h1,h2,h3,h4,h5,h6){margin-bottom:var(--mantine-spacing-xs);text-wrap:var(--mantine-heading-text-wrap);font-family:var(--mantine-font-family-headings)}.m_d08caa0 :where(h1){margin-top:calc(1.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h1-font-size);line-height:var(--mantine-h1-line-height);font-weight:var(--mantine-h1-font-weight)}.m_d08caa0 :where(h2){margin-top:var(--mantine-spacing-xl);font-size:var(--mantine-h2-font-size);line-height:var(--mantine-h2-line-height);font-weight:var(--mantine-h2-font-weight)}.m_d08caa0 :where(h3){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h3-font-size);line-height:var(--mantine-h3-line-height);font-weight:var(--mantine-h3-font-weight)}.m_d08caa0 :where(h4){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h4-font-size);line-height:var(--mantine-h4-line-height);font-weight:var(--mantine-h4-font-weight)}.m_d08caa0 :where(h5){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h5-font-size);line-height:var(--mantine-h5-line-height);font-weight:var(--mantine-h5-font-weight)}.m_d08caa0 :where(h6){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h6-font-size);line-height:var(--mantine-h6-line-height);font-weight:var(--mantine-h6-font-weight)}.m_d08caa0 :where(img){max-width:100%;margin-bottom:var(--mantine-spacing-xs)}.m_d08caa0 :where(p){margin-top:0;margin-bottom:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(mark){background-color:var(--mantine-color-yellow-2);color:inherit}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.m_d08caa0 :where(a){color:var(--mantine-color-anchor);text-decoration:none}@media(hover:hover){.m_d08caa0 :where(a):hover{text-decoration:underline}}@media(hover:none){.m_d08caa0 :where(a):active{text-decoration:underline}}.m_d08caa0 :where(hr){margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);border:0;border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(hr){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(hr){border-color:var(--mantine-color-dark-3)}.m_d08caa0 :where(pre){padding:var(--mantine-spacing-xs);line-height:var(--mantine-line-height);margin:0;margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);overflow-x:auto;font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs);border-radius:var(--mantine-radius-sm)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(pre){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(pre){background-color:var(--mantine-color-dark-8)}.m_d08caa0 :where(pre) :where(code){background-color:transparent;padding:0;border-radius:0;color:inherit;border:0}.m_d08caa0 :where(kbd){--kbd-fz: calc(.75rem * var(--mantine-scale));--kbd-padding: calc(.1875rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;padding:var(--kbd-padding);font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(kbd){border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(kbd){border-color:var(--mantine-color-dark-3);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-5)}.m_d08caa0 :where(code){line-height:var(--mantine-line-height);padding:calc(.0625rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));border-radius:var(--mantine-radius-sm);font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(code){background-color:var(--mantine-color-gray-0);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(code){background-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_d08caa0 :where(ul,ol):not([data-type=taskList]){margin-bottom:var(--mantine-spacing-md);padding-inline-start:var(--mantine-spacing-xl);list-style-position:outside}.m_d08caa0 :where(table){width:100%;border-collapse:collapse;caption-side:bottom;margin-bottom:var(--mantine-spacing-md)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(table){--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(table){--table-border-color: var(--mantine-color-dark-4)}.m_d08caa0 :where(table) :where(caption){margin-top:var(--mantine-spacing-xs);font-size:var(--mantine-font-size-sm);color:var(--mantine-color-dimmed)}.m_d08caa0 :where(table) :where(th){text-align:left;font-weight:700;font-size:var(--mantine-font-size-sm);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm)}.m_d08caa0 :where(table) :where(thead th){border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d08caa0 :where(table) :where(tfoot th){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d08caa0 :where(table) :where(td){padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color);font-size:var(--mantine-font-size-sm)}.m_d08caa0 :where(table) :where(tr:last-of-type td){border-bottom:0}.m_d08caa0 :where(blockquote){font-size:var(--mantine-font-size-lg);line-height:var(--mantine-line-height);margin:var(--mantine-spacing-md) 0;border-radius:var(--mantine-radius-sm);padding:var(--mantine-spacing-md) var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(blockquote){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(blockquote){background-color:var(--mantine-color-dark-8)}}@layer xyflow{.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}}@layer base{:root{--made-with-panda: "🐼"}*,:before,:after,::backdrop{--blur: ;--brightness: ;--contrast: ;--grayscale: ;--hue-rotate: ;--invert: ;--saturate: ;--sepia: ;--drop-shadow: ;--backdrop-blur: ;--backdrop-brightness: ;--backdrop-contrast: ;--backdrop-grayscale: ;--backdrop-hue-rotate: ;--backdrop-invert: ;--backdrop-opacity: ;--backdrop-saturate: ;--backdrop-sepia: ;--gradient-from-position: ;--gradient-to-position: ;--gradient-via-position: ;--scroll-snap-strictness: proximity;--border-spacing-x: 0;--border-spacing-y: 0;--translate-x: 0;--translate-y: 0;--rotate: 0;--rotate-x: 0;--rotate-y: 0;--skew-x: 0;--skew-y: 0;--scale-x: 1;--scale-y: 1}:where(:root,:host){--likec4-app-font-default: "IBM Plex Sans",'ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'}:where([data-likec4-text-size=xs]){--likec4-text-size: var(--font-sizes-likec4-xs)}:where([data-likec4-text-size=sm]){--likec4-text-size: var(--font-sizes-likec4-sm)}:where([data-likec4-text-size=md]){--likec4-text-size: var(--font-sizes-likec4-md)}:where([data-likec4-text-size=lg]){--likec4-text-size: var(--font-sizes-likec4-lg)}:where([data-likec4-text-size=xl]){--likec4-text-size: var(--font-sizes-likec4-xl)}:where([data-likec4-spacing=xs]){--likec4-spacing: var(--spacing-likec4-xs)}:where([data-likec4-spacing=sm]){--likec4-spacing: var(--spacing-likec4-sm)}:where([data-likec4-spacing=md]){--likec4-spacing: var(--spacing-likec4-md)}:where([data-likec4-spacing=lg]){--likec4-spacing: var(--spacing-likec4-lg)}:where([data-likec4-spacing=xl]){--likec4-spacing: var(--spacing-likec4-xl)}.likec4-shadow-root{--mantine-font-family: var(--likec4-app-font, var(--likec4-app-font-default));--mantine-font-family-headings: var(--likec4-app-font, var(--likec4-app-font-default));display:contents}.likec4-shadow-root dialog{color:var(--mantine-color-text)}.likec4-edge-label-container{position:absolute;top:var(--spacing-0);left:var(--spacing-0);width:auto;height:auto}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-edge-label-container{display:none}:where([data-likec4-zoom-small=true]) .likec4-edge-label-container{display:none}.likec4-root{padding:var(--spacing-0);margin:var(--spacing-0);border:0px solid transparent;background:var(--colors-transparent);overflow:hidden;position:relative;container-name:likec4-root;container-type:size;width:var(--sizes-100\\%);height:var(--sizes-100\\%)}.likec4-root .react-flow{--xy-background-color: var(--colors-likec4-background);--xy-background-pattern-color: var(--colors-likec4-background-pattern, var(--colors-likec4-background))}.likec4-root .react-flow:is(.bg-transparent){--xy-background-color: transparent !important;background:var(--colors-transparent)!important}.likec4-root .react-flow:is(.not-initialized){opacity:0}.likec4-root .react-flow .react-flow__pane{-webkit-user-select:none;user-select:none}.likec4-root .react-flow :where(.react-flow__nodes,.react-flow__edges,.react-flow__edgelabel-renderer){display:contents}.likec4-root .react-flow .react-flow__node.draggable:has(.likec4-compound-node){cursor:default}.likec4-root .react-flow .likec4-node-handle-center{visibility:hidden!important;transform:translate(-50%,-50%)!important;top:50%!important;left:50%!important;right:unset!important;bottom:unset!important;width:5px!important;height:5px!important}.likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-stroke-width: 3;--xy-edge-stroke: var(--likec4-palette-relation-stroke);--xy-edge-stroke-selected: var(--likec4-palette-relation-stroke-selected);--xy-edge-label-color: var(--likec4-palette-relation-label);--xy-edge-label-background-color: var(--likec4-palette-relation-label-bg)}[data-mantine-color-scheme=dark] .likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-label-background-color: color-mix(in oklab, var(--likec4-palette-relation-label-bg) 50%, transparent)}[data-mantine-color-scheme=light] .likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-label-color: color-mix(in oklab, var(--likec4-palette-relation-label), #FFF 50%);--xy-edge-label-background-color: color-mix(in oklab, var(--likec4-palette-relation-label-bg) 65%, transparent)}.likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container):is([data-likec4-hovered=true],[data-edge-active=true]){--xy-edge-stroke-width: 4;--xy-edge-stroke: var(--likec4-palette-relation-stroke-selected)}.likec4-root :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]){opacity:.25}.likec4-root .likec4-edge-label-container:is([data-likec4-dimmed]){opacity:.25}.likec4-root:is([data-likec4-reduced-graphics]) .hide-on-reduced-graphics{display:none}.likec4-root :where(.relationships-browser,.likec4-relationship-details) .react-flow__attribution{display:none}.likec4-root .mantine-ActionIcon-icon .tabler-icon{width:75%;height:75%}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]){filter:grayscale(85%)}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: cubic-bezier(.5, 0, .2, 1);transition-timing-function:cubic-bezier(.5,0,.2,1);--transition-duration: .4s;transition-duration:.4s}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge-label-container:is([data-likec4-dimmed]){filter:grayscale(85%)}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge-label-container:is([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: cubic-bezier(.5, 0, .2, 1);transition-timing-function:cubic-bezier(.5,0,.2,1);--transition-duration: .4s;transition-duration:.4s}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:screen}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:hard-light}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:plus-lighter}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:multiply}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]):has(.react-flow__node-seq-parallel) :where(.react-flow__edges>svg){mix-blend-mode:color-burn}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:luminosity}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:color-burn}.likec4-static-view .react-flow .react-flow__attribution{display:none}:where(:root,:host){--likec4-text-size: 1.2rem;--likec4-palette-fill: #3b82f6;--likec4-palette-stroke: #2563eb;--likec4-palette-hiContrast: #eff6ff;--likec4-palette-loContrast: #bfdbfe;--likec4-palette-relation-stroke: #8D8D8D;--likec4-palette-relation-label: #C9C9C9;--likec4-palette-relation-label-bg: #18191B;--mantine-scale: 1;--likec4-palette-outline: var(--likec4-palette-loContrast);--likec4-spacing: ;--text-fz: ;--likec4-icon-size: }@media print{.likec4-root .react-flow{--xy-background-color: transparent !important;background:var(--colors-transparent)!important}.likec4-root .react-flow__background{display:none}.likec4-root *{color-adjust:exact!important;print-color-adjust:exact!important}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:normal!important}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:normal!important}.likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:normal!important}}}@layer tokens{:where(:root,:host){--spacing-0: 0px;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-7: 28px;--spacing-8: 32px;--spacing-9: 36px;--spacing-10: 40px;--spacing-likec4-xs: 8px;--spacing-likec4-sm: 10px;--spacing-likec4-md: 16px;--spacing-likec4-lg: 24px;--spacing-likec4-xl: 32px;--spacing-0\\.5: 2px;--spacing-1\\.5: 6px;--spacing-2\\.5: 10px;--spacing-3\\.5: 14px;--spacing-4\\.5: 18px;--spacing-xxs: calc(.5rem * var(--mantine-scale));--spacing-xs: calc(.625rem * var(--mantine-scale));--spacing-sm: calc(.75rem * var(--mantine-scale));--spacing-md: calc(1rem * var(--mantine-scale));--spacing-lg: calc(1.25rem * var(--mantine-scale));--spacing-xl: calc(2rem * var(--mantine-scale));--font-sizes-xxs: .625rem;--font-sizes-xs: calc(.75rem * var(--mantine-scale));--font-sizes-sm: calc(.875rem * var(--mantine-scale));--font-sizes-md: calc(1rem * var(--mantine-scale));--font-sizes-lg: calc(1.125rem * var(--mantine-scale));--font-sizes-xl: calc(1.25rem * var(--mantine-scale));--font-sizes-likec4-xs: .833rem;--font-sizes-likec4-sm: 1rem;--font-sizes-likec4-md: 1.2rem;--font-sizes-likec4-lg: 1.44rem;--font-sizes-likec4-xl: 1.73rem;--line-heights-1: 1;--line-heights-xs: 1.4;--line-heights-sm: 1.45;--line-heights-md: 1.55;--line-heights-lg: 1.6;--line-heights-xl: 1.65;--colors-mantine-colors-primary: var(--mantine-primary-color-6);--colors-mantine-colors-primary-filled: var(--mantine-primary-color-filled);--colors-mantine-colors-primary-filled-hover: var(--mantine-primary-color-filled-hover);--colors-mantine-colors-primary-light: var(--mantine-primary-color-light);--colors-mantine-colors-primary-light-hover: var(--mantine-primary-color-light-hover);--colors-mantine-colors-primary-light-color: var(--mantine-primary-color-light-color);--colors-mantine-colors-primary-outline: var(--mantine-primary-color-outline);--colors-mantine-colors-primary-outline-hover: var(--mantine-primary-color-outline-hover);--colors-mantine-colors-primary\\[0\\]: var(--mantine-primary-color-0);--colors-mantine-colors-primary\\[1\\]: var(--mantine-primary-color-1);--colors-mantine-colors-primary\\[2\\]: var(--mantine-primary-color-2);--colors-mantine-colors-primary\\[3\\]: var(--mantine-primary-color-3);--colors-mantine-colors-primary\\[4\\]: var(--mantine-primary-color-4);--colors-mantine-colors-primary\\[5\\]: var(--mantine-primary-color-5);--colors-mantine-colors-primary\\[6\\]: var(--mantine-primary-color-6);--colors-mantine-colors-primary\\[7\\]: var(--mantine-primary-color-7);--colors-mantine-colors-primary\\[8\\]: var(--mantine-primary-color-8);--colors-mantine-colors-primary\\[9\\]: var(--mantine-primary-color-9);--colors-mantine-colors-white: var(--mantine-color-white);--colors-mantine-colors-text: var(--mantine-color-text);--colors-mantine-colors-body: var(--mantine-color-body);--colors-mantine-colors-dimmed: var(--mantine-color-dimmed);--colors-mantine-colors-default-border: var(--mantine-color-default-border);--colors-mantine-colors-default-color: var(--mantine-color-default-color);--colors-mantine-colors-default-hover: var(--mantine-color-default-hover);--colors-mantine-colors-default: var(--mantine-color-default);--colors-mantine-colors-error: var(--mantine-color-error);--colors-mantine-colors-placeholder: var(--mantine-color-placeholder);--colors-mantine-colors-gray: var(--mantine-color-gray-6);--colors-mantine-colors-gray-filled: var(--mantine-color-gray-filled);--colors-mantine-colors-gray-filled-hover: var(--mantine-color-gray-filled-hover);--colors-mantine-colors-gray-light: var(--mantine-color-gray-light);--colors-mantine-colors-gray-light-hover: var(--mantine-color-gray-light-hover);--colors-mantine-colors-gray-light-color: var(--mantine-color-gray-light-color);--colors-mantine-colors-gray-outline: var(--mantine-color-gray-outline);--colors-mantine-colors-gray-outline-hover: var(--mantine-color-gray-outline-hover);--colors-mantine-colors-gray\\[0\\]: var(--mantine-color-gray-0);--colors-mantine-colors-gray\\[1\\]: var(--mantine-color-gray-1);--colors-mantine-colors-gray\\[2\\]: var(--mantine-color-gray-2);--colors-mantine-colors-gray\\[3\\]: var(--mantine-color-gray-3);--colors-mantine-colors-gray\\[4\\]: var(--mantine-color-gray-4);--colors-mantine-colors-gray\\[5\\]: var(--mantine-color-gray-5);--colors-mantine-colors-gray\\[6\\]: var(--mantine-color-gray-6);--colors-mantine-colors-gray\\[7\\]: var(--mantine-color-gray-7);--colors-mantine-colors-gray\\[8\\]: var(--mantine-color-gray-8);--colors-mantine-colors-gray\\[9\\]: var(--mantine-color-gray-9);--colors-mantine-colors-dark: var(--mantine-color-dark-6);--colors-mantine-colors-dark-filled: var(--mantine-color-dark-filled);--colors-mantine-colors-dark-filled-hover: var(--mantine-color-dark-filled-hover);--colors-mantine-colors-dark-light: var(--mantine-color-dark-light);--colors-mantine-colors-dark-light-hover: var(--mantine-color-dark-light-hover);--colors-mantine-colors-dark-light-color: var(--mantine-color-dark-light-color);--colors-mantine-colors-dark-outline: var(--mantine-color-dark-outline);--colors-mantine-colors-dark-outline-hover: var(--mantine-color-dark-outline-hover);--colors-mantine-colors-dark\\[0\\]: var(--mantine-color-dark-0);--colors-mantine-colors-dark\\[1\\]: var(--mantine-color-dark-1);--colors-mantine-colors-dark\\[2\\]: var(--mantine-color-dark-2);--colors-mantine-colors-dark\\[3\\]: var(--mantine-color-dark-3);--colors-mantine-colors-dark\\[4\\]: var(--mantine-color-dark-4);--colors-mantine-colors-dark\\[5\\]: var(--mantine-color-dark-5);--colors-mantine-colors-dark\\[6\\]: var(--mantine-color-dark-6);--colors-mantine-colors-dark\\[7\\]: var(--mantine-color-dark-7);--colors-mantine-colors-dark\\[8\\]: var(--mantine-color-dark-8);--colors-mantine-colors-dark\\[9\\]: var(--mantine-color-dark-9);--colors-mantine-colors-orange: var(--mantine-color-orange-6);--colors-mantine-colors-orange-filled: var(--mantine-color-orange-filled);--colors-mantine-colors-orange-filled-hover: var(--mantine-color-orange-filled-hover);--colors-mantine-colors-orange-light: var(--mantine-color-orange-light);--colors-mantine-colors-orange-light-hover: var(--mantine-color-orange-light-hover);--colors-mantine-colors-orange-light-color: var(--mantine-color-orange-light-color);--colors-mantine-colors-orange-outline: var(--mantine-color-orange-outline);--colors-mantine-colors-orange-outline-hover: var(--mantine-color-orange-outline-hover);--colors-mantine-colors-orange\\[0\\]: var(--mantine-color-orange-0);--colors-mantine-colors-orange\\[1\\]: var(--mantine-color-orange-1);--colors-mantine-colors-orange\\[2\\]: var(--mantine-color-orange-2);--colors-mantine-colors-orange\\[3\\]: var(--mantine-color-orange-3);--colors-mantine-colors-orange\\[4\\]: var(--mantine-color-orange-4);--colors-mantine-colors-orange\\[5\\]: var(--mantine-color-orange-5);--colors-mantine-colors-orange\\[6\\]: var(--mantine-color-orange-6);--colors-mantine-colors-orange\\[7\\]: var(--mantine-color-orange-7);--colors-mantine-colors-orange\\[8\\]: var(--mantine-color-orange-8);--colors-mantine-colors-orange\\[9\\]: var(--mantine-color-orange-9);--colors-mantine-colors-teal: var(--mantine-color-teal-6);--colors-mantine-colors-teal-filled: var(--mantine-color-teal-filled);--colors-mantine-colors-teal-filled-hover: var(--mantine-color-teal-filled-hover);--colors-mantine-colors-teal-light: var(--mantine-color-teal-light);--colors-mantine-colors-teal-light-hover: var(--mantine-color-teal-light-hover);--colors-mantine-colors-teal-light-color: var(--mantine-color-teal-light-color);--colors-mantine-colors-teal-outline: var(--mantine-color-teal-outline);--colors-mantine-colors-teal-outline-hover: var(--mantine-color-teal-outline-hover);--colors-mantine-colors-teal\\[0\\]: var(--mantine-color-teal-0);--colors-mantine-colors-teal\\[1\\]: var(--mantine-color-teal-1);--colors-mantine-colors-teal\\[2\\]: var(--mantine-color-teal-2);--colors-mantine-colors-teal\\[3\\]: var(--mantine-color-teal-3);--colors-mantine-colors-teal\\[4\\]: var(--mantine-color-teal-4);--colors-mantine-colors-teal\\[5\\]: var(--mantine-color-teal-5);--colors-mantine-colors-teal\\[6\\]: var(--mantine-color-teal-6);--colors-mantine-colors-teal\\[7\\]: var(--mantine-color-teal-7);--colors-mantine-colors-teal\\[8\\]: var(--mantine-color-teal-8);--colors-mantine-colors-teal\\[9\\]: var(--mantine-color-teal-9);--colors-mantine-colors-red: var(--mantine-color-red-6);--colors-mantine-colors-red-filled: var(--mantine-color-red-filled);--colors-mantine-colors-red-filled-hover: var(--mantine-color-red-filled-hover);--colors-mantine-colors-red-light: var(--mantine-color-red-light);--colors-mantine-colors-red-light-hover: var(--mantine-color-red-light-hover);--colors-mantine-colors-red-light-color: var(--mantine-color-red-light-color);--colors-mantine-colors-red-outline: var(--mantine-color-red-outline);--colors-mantine-colors-red-outline-hover: var(--mantine-color-red-outline-hover);--colors-mantine-colors-red\\[0\\]: var(--mantine-color-red-0);--colors-mantine-colors-red\\[1\\]: var(--mantine-color-red-1);--colors-mantine-colors-red\\[2\\]: var(--mantine-color-red-2);--colors-mantine-colors-red\\[3\\]: var(--mantine-color-red-3);--colors-mantine-colors-red\\[4\\]: var(--mantine-color-red-4);--colors-mantine-colors-red\\[5\\]: var(--mantine-color-red-5);--colors-mantine-colors-red\\[6\\]: var(--mantine-color-red-6);--colors-mantine-colors-red\\[7\\]: var(--mantine-color-red-7);--colors-mantine-colors-red\\[8\\]: var(--mantine-color-red-8);--colors-mantine-colors-red\\[9\\]: var(--mantine-color-red-9);--colors-mantine-colors-green: var(--mantine-color-green-6);--colors-mantine-colors-green-filled: var(--mantine-color-green-filled);--colors-mantine-colors-green-filled-hover: var(--mantine-color-green-filled-hover);--colors-mantine-colors-green-light: var(--mantine-color-green-light);--colors-mantine-colors-green-light-hover: var(--mantine-color-green-light-hover);--colors-mantine-colors-green-light-color: var(--mantine-color-green-light-color);--colors-mantine-colors-green-outline: var(--mantine-color-green-outline);--colors-mantine-colors-green-outline-hover: var(--mantine-color-green-outline-hover);--colors-mantine-colors-green\\[0\\]: var(--mantine-color-green-0);--colors-mantine-colors-green\\[1\\]: var(--mantine-color-green-1);--colors-mantine-colors-green\\[2\\]: var(--mantine-color-green-2);--colors-mantine-colors-green\\[3\\]: var(--mantine-color-green-3);--colors-mantine-colors-green\\[4\\]: var(--mantine-color-green-4);--colors-mantine-colors-green\\[5\\]: var(--mantine-color-green-5);--colors-mantine-colors-green\\[6\\]: var(--mantine-color-green-6);--colors-mantine-colors-green\\[7\\]: var(--mantine-color-green-7);--colors-mantine-colors-green\\[8\\]: var(--mantine-color-green-8);--colors-mantine-colors-green\\[9\\]: var(--mantine-color-green-9);--colors-mantine-colors-yellow: var(--mantine-color-yellow-6);--colors-mantine-colors-yellow-filled: var(--mantine-color-yellow-filled);--colors-mantine-colors-yellow-filled-hover: var(--mantine-color-yellow-filled-hover);--colors-mantine-colors-yellow-light: var(--mantine-color-yellow-light);--colors-mantine-colors-yellow-light-hover: var(--mantine-color-yellow-light-hover);--colors-mantine-colors-yellow-light-color: var(--mantine-color-yellow-light-color);--colors-mantine-colors-yellow-outline: var(--mantine-color-yellow-outline);--colors-mantine-colors-yellow-outline-hover: var(--mantine-color-yellow-outline-hover);--colors-mantine-colors-yellow\\[0\\]: var(--mantine-color-yellow-0);--colors-mantine-colors-yellow\\[1\\]: var(--mantine-color-yellow-1);--colors-mantine-colors-yellow\\[2\\]: var(--mantine-color-yellow-2);--colors-mantine-colors-yellow\\[3\\]: var(--mantine-color-yellow-3);--colors-mantine-colors-yellow\\[4\\]: var(--mantine-color-yellow-4);--colors-mantine-colors-yellow\\[5\\]: var(--mantine-color-yellow-5);--colors-mantine-colors-yellow\\[6\\]: var(--mantine-color-yellow-6);--colors-mantine-colors-yellow\\[7\\]: var(--mantine-color-yellow-7);--colors-mantine-colors-yellow\\[8\\]: var(--mantine-color-yellow-8);--colors-mantine-colors-yellow\\[9\\]: var(--mantine-color-yellow-9);--colors-transparent: transparent;--colors-none: none;--sizes-100\\%: 100%;--sizes-full: 100%;--sizes-breakpoint-xs: 36em;--sizes-breakpoint-sm: 48em;--sizes-breakpoint-md: 62em;--sizes-breakpoint-lg: 75em;--sizes-breakpoint-xl: 88em;--borders-none: none;--borders-transparent: 0px solid transparent;--borders-default: 1px solid var(--mantine-color-default-border);--radii-0: 0px;--radii-xs: .125rem;--radii-sm: .25rem;--radii-md: .5rem;--radii-lg: 1rem;--radii-xl: 2rem;--font-weights-normal: 400;--font-weights-medium: 500;--fonts-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--fonts-body: var(--likec4-app-font, var(--likec4-app-font-default));--fonts-likec4: var(--likec4-app-font, var(--likec4-app-font-default));--fonts-likec4-element: var(--likec4-element-font, var(--fonts-likec4));--fonts-likec4-compound: var(--likec4-compound-font, var(--fonts-likec4));--fonts-likec4-relation: var(--likec4-relation-font, var(--fonts-likec4));--easings-default: cubic-bezier(.4, 0, .2, 1);--easings-in: cubic-bezier(.4, 0, 1, 1);--easings-out: cubic-bezier(0, 0, .4, 1);--easings-in-out: cubic-bezier(.5, 0, .2, 1);--durations-fastest: 50ms;--durations-faster: .1s;--durations-fast: .13s;--durations-normal: .17s;--durations-slow: .3s;--durations-slower: .4s;--durations-slowest: .5s;--shadows-none: none;--shadows-xs: 0 1px 3px rgb(0 0 0/5%), 0 1px 2px rgb(0 0 0/10%);--shadows-sm: 0 1px 3px rgb(0 0 0/5%), 0 10px 15px -5px rgb(0 0 0/5%), 0 7px 7px -5px rgb(0 0 0/4%);--shadows-md: 0 1px 3px rgb(0 0 0/5%), 0 20px 25px -5px rgb(0 0 0/5%), 0 10px 10px -5px rgb(0 0 0/4%);--shadows-lg: 0 1px 3px rgb(0 0 0/5%), 0 28px 23px -7px rgb(0 0 0/5%), 0 12px 12px -7px rgb(0 0 0/4%);--shadows-xl: 0 1px 3px rgb(0 0 0/5%), 0 36px 28px -7px rgb(0 0 0/5%), 0 17px 17px -7px rgb(0 0 0/4%);--z-index-0: 0;--z-index-1: 1;--z-index--1: -1;--z-index-likec4-panel: 100;--z-index-likec4-dropdown: 200;--breakpoints-xs: 36em;--breakpoints-sm: 48em;--breakpoints-md: 62em;--breakpoints-lg: 75em;--breakpoints-xl: 88em;--colors-amber-1: var(--colors-amber-light-1);--colors-amber-2: var(--colors-amber-light-2);--colors-amber-3: var(--colors-amber-light-3);--colors-amber-4: var(--colors-amber-light-4);--colors-amber-5: var(--colors-amber-light-5);--colors-amber-6: var(--colors-amber-light-6);--colors-amber-7: var(--colors-amber-light-7);--colors-amber-8: var(--colors-amber-light-8);--colors-amber-9: var(--colors-amber-light-9);--colors-amber-10: var(--colors-amber-light-10);--colors-amber-11: var(--colors-amber-light-11);--colors-amber-12: var(--colors-amber-light-12);--colors-amber-light-1: #fefdfb;--colors-amber-light-2: #fefbe9;--colors-amber-light-3: #fff7c2;--colors-amber-light-4: #ffee9c;--colors-amber-light-5: #fbe577;--colors-amber-light-6: #f3d673;--colors-amber-light-7: #e9c162;--colors-amber-light-8: #e2a336;--colors-amber-light-9: #ffc53d;--colors-amber-light-10: #ffba18;--colors-amber-light-11: #ab6400;--colors-amber-light-12: #4f3422;--colors-amber-light-a-1: #c0800004;--colors-amber-light-a-2: #f4d10016;--colors-amber-light-a-3: #ffde003d;--colors-amber-light-a-4: #ffd40063;--colors-amber-light-a-5: #f8cf0088;--colors-amber-light-a-6: #eab5008c;--colors-amber-light-a-7: #dc9b009d;--colors-amber-light-a-8: #da8a00c9;--colors-amber-light-a-9: #ffb300c2;--colors-amber-light-a-10: #ffb300e7;--colors-amber-light-a-11: #ab6400;--colors-amber-light-a-12: #341500dd;--colors-amber-light-p3-1: color(display-p3 .995 .992 .985);--colors-amber-light-p3-2: color(display-p3 .994 .986 .921);--colors-amber-light-p3-3: color(display-p3 .994 .969 .782);--colors-amber-light-p3-4: color(display-p3 .989 .937 .65);--colors-amber-light-p3-5: color(display-p3 .97 .902 .527);--colors-amber-light-p3-6: color(display-p3 .936 .844 .506);--colors-amber-light-p3-7: color(display-p3 .89 .762 .443);--colors-amber-light-p3-8: color(display-p3 .85 .65 .3);--colors-amber-light-p3-9: color(display-p3 1 .77 .26);--colors-amber-light-p3-10: color(display-p3 .959 .741 .274);--colors-amber-light-p3-11: color(display-p3 .64 .4 0);--colors-amber-light-p3-12: color(display-p3 .294 .208 .145);--colors-amber-light-p3-a-1: color(display-p3 .757 .514 .024 / .016);--colors-amber-light-p3-a-2: color(display-p3 .902 .804 .008 / .079);--colors-amber-light-p3-a-3: color(display-p3 .965 .859 .004 / .22);--colors-amber-light-p3-a-4: color(display-p3 .969 .82 .004 / .35);--colors-amber-light-p3-a-5: color(display-p3 .933 .796 .004 / .475);--colors-amber-light-p3-a-6: color(display-p3 .875 .682 .004 / .495);--colors-amber-light-p3-a-7: color(display-p3 .804 .573 0 / .557);--colors-amber-light-p3-a-8: color(display-p3 .788 .502 0 / .699);--colors-amber-light-p3-a-9: color(display-p3 1 .686 0 / .742);--colors-amber-light-p3-a-10: color(display-p3 .945 .643 0 / .726);--colors-amber-light-p3-a-11: color(display-p3 .64 .4 0);--colors-amber-light-p3-a-12: color(display-p3 .294 .208 .145);--colors-amber-dark-1: #16120c;--colors-amber-dark-2: #1d180f;--colors-amber-dark-3: #302008;--colors-amber-dark-4: #3f2700;--colors-amber-dark-5: #4d3000;--colors-amber-dark-6: #5c3d05;--colors-amber-dark-7: #714f19;--colors-amber-dark-8: #8f6424;--colors-amber-dark-9: #ffc53d;--colors-amber-dark-10: #ffd60a;--colors-amber-dark-11: #ffca16;--colors-amber-dark-12: #ffe7b3;--colors-amber-dark-a-1: #e63c0006;--colors-amber-dark-a-2: #fd9b000d;--colors-amber-dark-a-3: #fa820022;--colors-amber-dark-a-4: #fc820032;--colors-amber-dark-a-5: #fd8b0041;--colors-amber-dark-a-6: #fd9b0051;--colors-amber-dark-a-7: #ffab2567;--colors-amber-dark-a-8: #ffae3587;--colors-amber-dark-a-9: #ffc53d;--colors-amber-dark-a-10: #ffd60a;--colors-amber-dark-a-11: #ffca16;--colors-amber-dark-a-12: #ffe7b3;--colors-amber-dark-p3-1: color(display-p3 .082 .07 .05);--colors-amber-dark-p3-2: color(display-p3 .111 .094 .064);--colors-amber-dark-p3-3: color(display-p3 .178 .128 .049);--colors-amber-dark-p3-4: color(display-p3 .239 .156 0);--colors-amber-dark-p3-5: color(display-p3 .29 .193 0);--colors-amber-dark-p3-6: color(display-p3 .344 .245 .076);--colors-amber-dark-p3-7: color(display-p3 .422 .314 .141);--colors-amber-dark-p3-8: color(display-p3 .535 .399 .189);--colors-amber-dark-p3-9: color(display-p3 1 .77 .26);--colors-amber-dark-p3-10: color(display-p3 1 .87 .15);--colors-amber-dark-p3-11: color(display-p3 1 .8 .29);--colors-amber-dark-p3-12: color(display-p3 .984 .909 .726);--colors-amber-dark-p3-a-1: color(display-p3 .992 .298 0 / .017);--colors-amber-dark-p3-a-2: color(display-p3 .988 .651 0 / .047);--colors-amber-dark-p3-a-3: color(display-p3 1 .6 0 / .118);--colors-amber-dark-p3-a-4: color(display-p3 1 .557 0 / .185);--colors-amber-dark-p3-a-5: color(display-p3 1 .592 0 / .24);--colors-amber-dark-p3-a-6: color(display-p3 1 .659 .094 / .299);--colors-amber-dark-p3-a-7: color(display-p3 1 .714 .263 / .383);--colors-amber-dark-p3-a-8: color(display-p3 .996 .729 .306 / .5);--colors-amber-dark-p3-a-9: color(display-p3 1 .769 .259);--colors-amber-dark-p3-a-10: color(display-p3 1 .871 .149);--colors-amber-dark-p3-a-11: color(display-p3 1 .8 .29);--colors-amber-dark-p3-a-12: color(display-p3 .984 .909 .726);--colors-amber-a-1: var(--colors-amber-light-a-1);--colors-amber-a-2: var(--colors-amber-light-a-2);--colors-amber-a-3: var(--colors-amber-light-a-3);--colors-amber-a-4: var(--colors-amber-light-a-4);--colors-amber-a-5: var(--colors-amber-light-a-5);--colors-amber-a-6: var(--colors-amber-light-a-6);--colors-amber-a-7: var(--colors-amber-light-a-7);--colors-amber-a-8: var(--colors-amber-light-a-8);--colors-amber-a-9: var(--colors-amber-light-a-9);--colors-amber-a-10: var(--colors-amber-light-a-10);--colors-amber-a-11: var(--colors-amber-light-a-11);--colors-amber-a-12: var(--colors-amber-light-a-12);--colors-amber-p3-1: var(--colors-amber-light-p3-1);--colors-amber-p3-2: var(--colors-amber-light-p3-2);--colors-amber-p3-3: var(--colors-amber-light-p3-3);--colors-amber-p3-4: var(--colors-amber-light-p3-4);--colors-amber-p3-5: var(--colors-amber-light-p3-5);--colors-amber-p3-6: var(--colors-amber-light-p3-6);--colors-amber-p3-7: var(--colors-amber-light-p3-7);--colors-amber-p3-8: var(--colors-amber-light-p3-8);--colors-amber-p3-9: var(--colors-amber-light-p3-9);--colors-amber-p3-10: var(--colors-amber-light-p3-10);--colors-amber-p3-11: var(--colors-amber-light-p3-11);--colors-amber-p3-12: var(--colors-amber-light-p3-12);--colors-amber-p3-a-1: var(--colors-amber-light-p3-a-1);--colors-amber-p3-a-2: var(--colors-amber-light-p3-a-2);--colors-amber-p3-a-3: var(--colors-amber-light-p3-a-3);--colors-amber-p3-a-4: var(--colors-amber-light-p3-a-4);--colors-amber-p3-a-5: var(--colors-amber-light-p3-a-5);--colors-amber-p3-a-6: var(--colors-amber-light-p3-a-6);--colors-amber-p3-a-7: var(--colors-amber-light-p3-a-7);--colors-amber-p3-a-8: var(--colors-amber-light-p3-a-8);--colors-amber-p3-a-9: var(--colors-amber-light-p3-a-9);--colors-amber-p3-a-10: var(--colors-amber-light-p3-a-10);--colors-amber-p3-a-11: var(--colors-amber-light-p3-a-11);--colors-amber-p3-a-12: var(--colors-amber-light-p3-a-12);--colors-blue-1: var(--colors-blue-light-1);--colors-blue-2: var(--colors-blue-light-2);--colors-blue-3: var(--colors-blue-light-3);--colors-blue-4: var(--colors-blue-light-4);--colors-blue-5: var(--colors-blue-light-5);--colors-blue-6: var(--colors-blue-light-6);--colors-blue-7: var(--colors-blue-light-7);--colors-blue-8: var(--colors-blue-light-8);--colors-blue-9: var(--colors-blue-light-9);--colors-blue-10: var(--colors-blue-light-10);--colors-blue-11: var(--colors-blue-light-11);--colors-blue-12: var(--colors-blue-light-12);--colors-blue-light-1: #fbfdff;--colors-blue-light-2: #f4faff;--colors-blue-light-3: #e6f4fe;--colors-blue-light-4: #d5efff;--colors-blue-light-5: #c2e5ff;--colors-blue-light-6: #acd8fc;--colors-blue-light-7: #8ec8f6;--colors-blue-light-8: #5eb1ef;--colors-blue-light-9: #0090ff;--colors-blue-light-10: #0588f0;--colors-blue-light-11: #0d74ce;--colors-blue-light-12: #113264;--colors-blue-light-a-1: #0080ff04;--colors-blue-light-a-2: #008cff0b;--colors-blue-light-a-3: #008ff519;--colors-blue-light-a-4: #009eff2a;--colors-blue-light-a-5: #0093ff3d;--colors-blue-light-a-6: #0088f653;--colors-blue-light-a-7: #0083eb71;--colors-blue-light-a-8: #0084e6a1;--colors-blue-light-a-9: #0090ff;--colors-blue-light-a-10: #0086f0fa;--colors-blue-light-a-11: #006dcbf2;--colors-blue-light-a-12: #002359ee;--colors-blue-light-p3-1: color(display-p3 .986 .992 .999);--colors-blue-light-p3-2: color(display-p3 .96 .979 .998);--colors-blue-light-p3-3: color(display-p3 .912 .956 .991);--colors-blue-light-p3-4: color(display-p3 .853 .932 1);--colors-blue-light-p3-5: color(display-p3 .788 .894 .998);--colors-blue-light-p3-6: color(display-p3 .709 .843 .976);--colors-blue-light-p3-7: color(display-p3 .606 .777 .947);--colors-blue-light-p3-8: color(display-p3 .451 .688 .917);--colors-blue-light-p3-9: color(display-p3 .247 .556 .969);--colors-blue-light-p3-10: color(display-p3 .234 .523 .912);--colors-blue-light-p3-11: color(display-p3 .15 .44 .84);--colors-blue-light-p3-12: color(display-p3 .102 .193 .379);--colors-blue-light-p3-a-1: color(display-p3 .024 .514 1 / .016);--colors-blue-light-p3-a-2: color(display-p3 .024 .514 .906 / .04);--colors-blue-light-p3-a-3: color(display-p3 .012 .506 .914 / .087);--colors-blue-light-p3-a-4: color(display-p3 .008 .545 1 / .146);--colors-blue-light-p3-a-5: color(display-p3 .004 .502 .984 / .212);--colors-blue-light-p3-a-6: color(display-p3 .004 .463 .922 / .291);--colors-blue-light-p3-a-7: color(display-p3 .004 .431 .863 / .393);--colors-blue-light-p3-a-8: color(display-p3 0 .427 .851 / .55);--colors-blue-light-p3-a-9: color(display-p3 0 .412 .961 / .753);--colors-blue-light-p3-a-10: color(display-p3 0 .376 .886 / .765);--colors-blue-light-p3-a-11: color(display-p3 .15 .44 .84);--colors-blue-light-p3-a-12: color(display-p3 .102 .193 .379);--colors-blue-dark-1: #0d1520;--colors-blue-dark-2: #111927;--colors-blue-dark-3: #0d2847;--colors-blue-dark-4: #003362;--colors-blue-dark-5: #004074;--colors-blue-dark-6: #104d87;--colors-blue-dark-7: #205d9e;--colors-blue-dark-8: #2870bd;--colors-blue-dark-9: #0090ff;--colors-blue-dark-10: #3b9eff;--colors-blue-dark-11: #70b8ff;--colors-blue-dark-12: #c2e6ff;--colors-blue-dark-a-1: #004df211;--colors-blue-dark-a-2: #1166fb18;--colors-blue-dark-a-3: #0077ff3a;--colors-blue-dark-a-4: #0075ff57;--colors-blue-dark-a-5: #0081fd6b;--colors-blue-dark-a-6: #0f89fd7f;--colors-blue-dark-a-7: #2a91fe98;--colors-blue-dark-a-8: #3094feb9;--colors-blue-dark-a-9: #0090ff;--colors-blue-dark-a-10: #3b9eff;--colors-blue-dark-a-11: #70b8ff;--colors-blue-dark-a-12: #c2e6ff;--colors-blue-dark-p3-1: color(display-p3 .057 .081 .122);--colors-blue-dark-p3-2: color(display-p3 .072 .098 .147);--colors-blue-dark-p3-3: color(display-p3 .078 .154 .27);--colors-blue-dark-p3-4: color(display-p3 .033 .197 .37);--colors-blue-dark-p3-5: color(display-p3 .08 .245 .441);--colors-blue-dark-p3-6: color(display-p3 .14 .298 .511);--colors-blue-dark-p3-7: color(display-p3 .195 .361 .6);--colors-blue-dark-p3-8: color(display-p3 .239 .434 .72);--colors-blue-dark-p3-9: color(display-p3 .247 .556 .969);--colors-blue-dark-p3-10: color(display-p3 .344 .612 .973);--colors-blue-dark-p3-11: color(display-p3 .49 .72 1);--colors-blue-dark-p3-12: color(display-p3 .788 .898 .99);--colors-blue-dark-p3-a-1: color(display-p3 0 .333 1 / .059);--colors-blue-dark-p3-a-2: color(display-p3 .114 .435 .988 / .085);--colors-blue-dark-p3-a-3: color(display-p3 .122 .463 1 / .219);--colors-blue-dark-p3-a-4: color(display-p3 0 .467 1 / .324);--colors-blue-dark-p3-a-5: color(display-p3 .098 .51 1 / .4);--colors-blue-dark-p3-a-6: color(display-p3 .224 .557 1 / .475);--colors-blue-dark-p3-a-7: color(display-p3 .294 .584 1 / .572);--colors-blue-dark-p3-a-8: color(display-p3 .314 .592 1 / .702);--colors-blue-dark-p3-a-9: color(display-p3 .251 .573 .996 / .967);--colors-blue-dark-p3-a-10: color(display-p3 .357 .631 1 / .971);--colors-blue-dark-p3-a-11: color(display-p3 .49 .72 1);--colors-blue-dark-p3-a-12: color(display-p3 .788 .898 .99);--colors-blue-a-1: var(--colors-blue-light-a-1);--colors-blue-a-2: var(--colors-blue-light-a-2);--colors-blue-a-3: var(--colors-blue-light-a-3);--colors-blue-a-4: var(--colors-blue-light-a-4);--colors-blue-a-5: var(--colors-blue-light-a-5);--colors-blue-a-6: var(--colors-blue-light-a-6);--colors-blue-a-7: var(--colors-blue-light-a-7);--colors-blue-a-8: var(--colors-blue-light-a-8);--colors-blue-a-9: var(--colors-blue-light-a-9);--colors-blue-a-10: var(--colors-blue-light-a-10);--colors-blue-a-11: var(--colors-blue-light-a-11);--colors-blue-a-12: var(--colors-blue-light-a-12);--colors-blue-p3-1: var(--colors-blue-light-p3-1);--colors-blue-p3-2: var(--colors-blue-light-p3-2);--colors-blue-p3-3: var(--colors-blue-light-p3-3);--colors-blue-p3-4: var(--colors-blue-light-p3-4);--colors-blue-p3-5: var(--colors-blue-light-p3-5);--colors-blue-p3-6: var(--colors-blue-light-p3-6);--colors-blue-p3-7: var(--colors-blue-light-p3-7);--colors-blue-p3-8: var(--colors-blue-light-p3-8);--colors-blue-p3-9: var(--colors-blue-light-p3-9);--colors-blue-p3-10: var(--colors-blue-light-p3-10);--colors-blue-p3-11: var(--colors-blue-light-p3-11);--colors-blue-p3-12: var(--colors-blue-light-p3-12);--colors-blue-p3-a-1: var(--colors-blue-light-p3-a-1);--colors-blue-p3-a-2: var(--colors-blue-light-p3-a-2);--colors-blue-p3-a-3: var(--colors-blue-light-p3-a-3);--colors-blue-p3-a-4: var(--colors-blue-light-p3-a-4);--colors-blue-p3-a-5: var(--colors-blue-light-p3-a-5);--colors-blue-p3-a-6: var(--colors-blue-light-p3-a-6);--colors-blue-p3-a-7: var(--colors-blue-light-p3-a-7);--colors-blue-p3-a-8: var(--colors-blue-light-p3-a-8);--colors-blue-p3-a-9: var(--colors-blue-light-p3-a-9);--colors-blue-p3-a-10: var(--colors-blue-light-p3-a-10);--colors-blue-p3-a-11: var(--colors-blue-light-p3-a-11);--colors-blue-p3-a-12: var(--colors-blue-light-p3-a-12);--colors-crimson-1: var(--colors-crimson-light-1);--colors-crimson-2: var(--colors-crimson-light-2);--colors-crimson-3: var(--colors-crimson-light-3);--colors-crimson-4: var(--colors-crimson-light-4);--colors-crimson-5: var(--colors-crimson-light-5);--colors-crimson-6: var(--colors-crimson-light-6);--colors-crimson-7: var(--colors-crimson-light-7);--colors-crimson-8: var(--colors-crimson-light-8);--colors-crimson-9: var(--colors-crimson-light-9);--colors-crimson-10: var(--colors-crimson-light-10);--colors-crimson-11: var(--colors-crimson-light-11);--colors-crimson-12: var(--colors-crimson-light-12);--colors-crimson-light-1: #fffcfd;--colors-crimson-light-2: #fef7f9;--colors-crimson-light-3: #ffe9f0;--colors-crimson-light-4: #fedce7;--colors-crimson-light-5: #facedd;--colors-crimson-light-6: #f3bed1;--colors-crimson-light-7: #eaacc3;--colors-crimson-light-8: #e093b2;--colors-crimson-light-9: #e93d82;--colors-crimson-light-10: #df3478;--colors-crimson-light-11: #cb1d63;--colors-crimson-light-12: #621639;--colors-crimson-light-a-1: #ff005503;--colors-crimson-light-a-2: #e0004008;--colors-crimson-light-a-3: #ff005216;--colors-crimson-light-a-4: #f8005123;--colors-crimson-light-a-5: #e5004f31;--colors-crimson-light-a-6: #d0004b41;--colors-crimson-light-a-7: #bf004753;--colors-crimson-light-a-8: #b6004a6c;--colors-crimson-light-a-9: #e2005bc2;--colors-crimson-light-a-10: #d70056cb;--colors-crimson-light-a-11: #c4004fe2;--colors-crimson-light-a-12: #530026e9;--colors-crimson-light-p3-1: color(display-p3 .998 .989 .992);--colors-crimson-light-p3-2: color(display-p3 .991 .969 .976);--colors-crimson-light-p3-3: color(display-p3 .987 .917 .941);--colors-crimson-light-p3-4: color(display-p3 .975 .866 .904);--colors-crimson-light-p3-5: color(display-p3 .953 .813 .864);--colors-crimson-light-p3-6: color(display-p3 .921 .755 .817);--colors-crimson-light-p3-7: color(display-p3 .88 .683 .761);--colors-crimson-light-p3-8: color(display-p3 .834 .592 .694);--colors-crimson-light-p3-9: color(display-p3 .843 .298 .507);--colors-crimson-light-p3-10: color(display-p3 .807 .266 .468);--colors-crimson-light-p3-11: color(display-p3 .731 .195 .388);--colors-crimson-light-p3-12: color(display-p3 .352 .111 .221);--colors-crimson-light-p3-a-1: color(display-p3 .675 .024 .349 / .012);--colors-crimson-light-p3-a-2: color(display-p3 .757 .02 .267 / .032);--colors-crimson-light-p3-a-3: color(display-p3 .859 .008 .294 / .083);--colors-crimson-light-p3-a-4: color(display-p3 .827 .008 .298 / .134);--colors-crimson-light-p3-a-5: color(display-p3 .753 .008 .275 / .189);--colors-crimson-light-p3-a-6: color(display-p3 .682 .004 .247 / .244);--colors-crimson-light-p3-a-7: color(display-p3 .62 .004 .251 / .318);--colors-crimson-light-p3-a-8: color(display-p3 .6 .004 .251 / .408);--colors-crimson-light-p3-a-9: color(display-p3 .776 0 .298 / .702);--colors-crimson-light-p3-a-10: color(display-p3 .737 0 .275 / .734);--colors-crimson-light-p3-a-11: color(display-p3 .731 .195 .388);--colors-crimson-light-p3-a-12: color(display-p3 .352 .111 .221);--colors-crimson-dark-1: #191114;--colors-crimson-dark-2: #201318;--colors-crimson-dark-3: #381525;--colors-crimson-dark-4: #4d122f;--colors-crimson-dark-5: #5c1839;--colors-crimson-dark-6: #6d2545;--colors-crimson-dark-7: #873356;--colors-crimson-dark-8: #b0436e;--colors-crimson-dark-9: #e93d82;--colors-crimson-dark-10: #ee518a;--colors-crimson-dark-11: #ff92ad;--colors-crimson-dark-12: #fdd3e8;--colors-crimson-dark-a-1: #f4126709;--colors-crimson-dark-a-2: #f22f7a11;--colors-crimson-dark-a-3: #fe2a8b2a;--colors-crimson-dark-a-4: #fd158741;--colors-crimson-dark-a-5: #fd278f51;--colors-crimson-dark-a-6: #fe459763;--colors-crimson-dark-a-7: #fd559b7f;--colors-crimson-dark-a-8: #fe5b9bab;--colors-crimson-dark-a-9: #fe418de8;--colors-crimson-dark-a-10: #ff5693ed;--colors-crimson-dark-a-11: #ff92ad;--colors-crimson-dark-a-12: #ffd5eafd;--colors-crimson-dark-p3-1: color(display-p3 .093 .068 .078);--colors-crimson-dark-p3-2: color(display-p3 .117 .078 .095);--colors-crimson-dark-p3-3: color(display-p3 .203 .091 .143);--colors-crimson-dark-p3-4: color(display-p3 .277 .087 .182);--colors-crimson-dark-p3-5: color(display-p3 .332 .115 .22);--colors-crimson-dark-p3-6: color(display-p3 .394 .162 .268);--colors-crimson-dark-p3-7: color(display-p3 .489 .222 .336);--colors-crimson-dark-p3-8: color(display-p3 .638 .289 .429);--colors-crimson-dark-p3-9: color(display-p3 .843 .298 .507);--colors-crimson-dark-p3-10: color(display-p3 .864 .364 .539);--colors-crimson-dark-p3-11: color(display-p3 1 .56 .66);--colors-crimson-dark-p3-12: color(display-p3 .966 .834 .906);--colors-crimson-dark-p3-a-1: color(display-p3 .984 .071 .463 / .03);--colors-crimson-dark-p3-a-2: color(display-p3 .996 .282 .569 / .055);--colors-crimson-dark-p3-a-3: color(display-p3 .996 .227 .573 / .148);--colors-crimson-dark-p3-a-4: color(display-p3 1 .157 .569 / .227);--colors-crimson-dark-p3-a-5: color(display-p3 1 .231 .604 / .286);--colors-crimson-dark-p3-a-6: color(display-p3 1 .337 .643 / .349);--colors-crimson-dark-p3-a-7: color(display-p3 1 .416 .663 / .454);--colors-crimson-dark-p3-a-8: color(display-p3 .996 .427 .651 / .614);--colors-crimson-dark-p3-a-9: color(display-p3 1 .345 .596 / .832);--colors-crimson-dark-p3-a-10: color(display-p3 1 .42 .62 / .853);--colors-crimson-dark-p3-a-11: color(display-p3 1 .56 .66);--colors-crimson-dark-p3-a-12: color(display-p3 .966 .834 .906);--colors-crimson-a-1: var(--colors-crimson-light-a-1);--colors-crimson-a-2: var(--colors-crimson-light-a-2);--colors-crimson-a-3: var(--colors-crimson-light-a-3);--colors-crimson-a-4: var(--colors-crimson-light-a-4);--colors-crimson-a-5: var(--colors-crimson-light-a-5);--colors-crimson-a-6: var(--colors-crimson-light-a-6);--colors-crimson-a-7: var(--colors-crimson-light-a-7);--colors-crimson-a-8: var(--colors-crimson-light-a-8);--colors-crimson-a-9: var(--colors-crimson-light-a-9);--colors-crimson-a-10: var(--colors-crimson-light-a-10);--colors-crimson-a-11: var(--colors-crimson-light-a-11);--colors-crimson-a-12: var(--colors-crimson-light-a-12);--colors-crimson-p3-1: var(--colors-crimson-light-p3-1);--colors-crimson-p3-2: var(--colors-crimson-light-p3-2);--colors-crimson-p3-3: var(--colors-crimson-light-p3-3);--colors-crimson-p3-4: var(--colors-crimson-light-p3-4);--colors-crimson-p3-5: var(--colors-crimson-light-p3-5);--colors-crimson-p3-6: var(--colors-crimson-light-p3-6);--colors-crimson-p3-7: var(--colors-crimson-light-p3-7);--colors-crimson-p3-8: var(--colors-crimson-light-p3-8);--colors-crimson-p3-9: var(--colors-crimson-light-p3-9);--colors-crimson-p3-10: var(--colors-crimson-light-p3-10);--colors-crimson-p3-11: var(--colors-crimson-light-p3-11);--colors-crimson-p3-12: var(--colors-crimson-light-p3-12);--colors-crimson-p3-a-1: var(--colors-crimson-light-p3-a-1);--colors-crimson-p3-a-2: var(--colors-crimson-light-p3-a-2);--colors-crimson-p3-a-3: var(--colors-crimson-light-p3-a-3);--colors-crimson-p3-a-4: var(--colors-crimson-light-p3-a-4);--colors-crimson-p3-a-5: var(--colors-crimson-light-p3-a-5);--colors-crimson-p3-a-6: var(--colors-crimson-light-p3-a-6);--colors-crimson-p3-a-7: var(--colors-crimson-light-p3-a-7);--colors-crimson-p3-a-8: var(--colors-crimson-light-p3-a-8);--colors-crimson-p3-a-9: var(--colors-crimson-light-p3-a-9);--colors-crimson-p3-a-10: var(--colors-crimson-light-p3-a-10);--colors-crimson-p3-a-11: var(--colors-crimson-light-p3-a-11);--colors-crimson-p3-a-12: var(--colors-crimson-light-p3-a-12);--colors-grass-1: var(--colors-grass-light-1);--colors-grass-2: var(--colors-grass-light-2);--colors-grass-3: var(--colors-grass-light-3);--colors-grass-4: var(--colors-grass-light-4);--colors-grass-5: var(--colors-grass-light-5);--colors-grass-6: var(--colors-grass-light-6);--colors-grass-7: var(--colors-grass-light-7);--colors-grass-8: var(--colors-grass-light-8);--colors-grass-9: var(--colors-grass-light-9);--colors-grass-10: var(--colors-grass-light-10);--colors-grass-11: var(--colors-grass-light-11);--colors-grass-12: var(--colors-grass-light-12);--colors-grass-light-1: #fbfefb;--colors-grass-light-2: #f5fbf5;--colors-grass-light-3: #e9f6e9;--colors-grass-light-4: #daf1db;--colors-grass-light-5: #c9e8ca;--colors-grass-light-6: #b2ddb5;--colors-grass-light-7: #94ce9a;--colors-grass-light-8: #65ba74;--colors-grass-light-9: #46a758;--colors-grass-light-10: #3e9b4f;--colors-grass-light-11: #2a7e3b;--colors-grass-light-12: #203c25;--colors-grass-light-a-1: #00c00004;--colors-grass-light-a-2: #0099000a;--colors-grass-light-a-3: #00970016;--colors-grass-light-a-4: #009f0725;--colors-grass-light-a-5: #00930536;--colors-grass-light-a-6: #008f0a4d;--colors-grass-light-a-7: #018b0f6b;--colors-grass-light-a-8: #008d199a;--colors-grass-light-a-9: #008619b9;--colors-grass-light-a-10: #007b17c1;--colors-grass-light-a-11: #006514d5;--colors-grass-light-a-12: #002006df;--colors-grass-light-p3-1: color(display-p3 .986 .996 .985);--colors-grass-light-p3-2: color(display-p3 .966 .983 .964);--colors-grass-light-p3-3: color(display-p3 .923 .965 .917);--colors-grass-light-p3-4: color(display-p3 .872 .94 .865);--colors-grass-light-p3-5: color(display-p3 .811 .908 .802);--colors-grass-light-p3-6: color(display-p3 .733 .864 .724);--colors-grass-light-p3-7: color(display-p3 .628 .803 .622);--colors-grass-light-p3-8: color(display-p3 .477 .72 .482);--colors-grass-light-p3-9: color(display-p3 .38 .647 .378);--colors-grass-light-p3-10: color(display-p3 .344 .598 .342);--colors-grass-light-p3-11: color(display-p3 .263 .488 .261);--colors-grass-light-p3-12: color(display-p3 .151 .233 .153);--colors-grass-light-p3-a-1: color(display-p3 .024 .757 .024 / .016);--colors-grass-light-p3-a-2: color(display-p3 .024 .565 .024 / .036);--colors-grass-light-p3-a-3: color(display-p3 .059 .576 .008 / .083);--colors-grass-light-p3-a-4: color(display-p3 .035 .565 .008 / .134);--colors-grass-light-p3-a-5: color(display-p3 .047 .545 .008 / .197);--colors-grass-light-p3-a-6: color(display-p3 .031 .502 .004 / .275);--colors-grass-light-p3-a-7: color(display-p3 .012 .482 .004 / .377);--colors-grass-light-p3-a-8: color(display-p3 0 .467 .008 / .522);--colors-grass-light-p3-a-9: color(display-p3 .008 .435 0 / .624);--colors-grass-light-p3-a-10: color(display-p3 .008 .388 0 / .659);--colors-grass-light-p3-a-11: color(display-p3 .263 .488 .261);--colors-grass-light-p3-a-12: color(display-p3 .151 .233 .153);--colors-grass-dark-1: #0e1511;--colors-grass-dark-2: #141a15;--colors-grass-dark-3: #1b2a1e;--colors-grass-dark-4: #1d3a24;--colors-grass-dark-5: #25482d;--colors-grass-dark-6: #2d5736;--colors-grass-dark-7: #366740;--colors-grass-dark-8: #3e7949;--colors-grass-dark-9: #46a758;--colors-grass-dark-10: #53b365;--colors-grass-dark-11: #71d083;--colors-grass-dark-12: #c2f0c2;--colors-grass-dark-a-1: #00de1205;--colors-grass-dark-a-2: #5ef7780a;--colors-grass-dark-a-3: #70fe8c1b;--colors-grass-dark-a-4: #57ff802c;--colors-grass-dark-a-5: #68ff8b3b;--colors-grass-dark-a-6: #71ff8f4b;--colors-grass-dark-a-7: #77fd925d;--colors-grass-dark-a-8: #77fd9070;--colors-grass-dark-a-9: #65ff82a1;--colors-grass-dark-a-10: #72ff8dae;--colors-grass-dark-a-11: #89ff9fcd;--colors-grass-dark-a-12: #ceffceef;--colors-grass-dark-p3-1: color(display-p3 .062 .083 .067);--colors-grass-dark-p3-2: color(display-p3 .083 .103 .085);--colors-grass-dark-p3-3: color(display-p3 .118 .163 .122);--colors-grass-dark-p3-4: color(display-p3 .142 .225 .15);--colors-grass-dark-p3-5: color(display-p3 .178 .279 .186);--colors-grass-dark-p3-6: color(display-p3 .217 .337 .224);--colors-grass-dark-p3-7: color(display-p3 .258 .4 .264);--colors-grass-dark-p3-8: color(display-p3 .302 .47 .305);--colors-grass-dark-p3-9: color(display-p3 .38 .647 .378);--colors-grass-dark-p3-10: color(display-p3 .426 .694 .426);--colors-grass-dark-p3-11: color(display-p3 .535 .807 .542);--colors-grass-dark-p3-12: color(display-p3 .797 .936 .776);--colors-grass-dark-p3-a-1: color(display-p3 0 .992 .071 / .017);--colors-grass-dark-p3-a-2: color(display-p3 .482 .996 .584 / .038);--colors-grass-dark-p3-a-3: color(display-p3 .549 .992 .588 / .106);--colors-grass-dark-p3-a-4: color(display-p3 .51 .996 .557 / .169);--colors-grass-dark-p3-a-5: color(display-p3 .553 1 .588 / .227);--colors-grass-dark-p3-a-6: color(display-p3 .584 1 .608 / .29);--colors-grass-dark-p3-a-7: color(display-p3 .604 1 .616 / .358);--colors-grass-dark-p3-a-8: color(display-p3 .608 1 .62 / .433);--colors-grass-dark-p3-a-9: color(display-p3 .573 1 .569 / .622);--colors-grass-dark-p3-a-10: color(display-p3 .6 .996 .6 / .673);--colors-grass-dark-p3-a-11: color(display-p3 .535 .807 .542);--colors-grass-dark-p3-a-12: color(display-p3 .797 .936 .776);--colors-grass-a-1: var(--colors-grass-light-a-1);--colors-grass-a-2: var(--colors-grass-light-a-2);--colors-grass-a-3: var(--colors-grass-light-a-3);--colors-grass-a-4: var(--colors-grass-light-a-4);--colors-grass-a-5: var(--colors-grass-light-a-5);--colors-grass-a-6: var(--colors-grass-light-a-6);--colors-grass-a-7: var(--colors-grass-light-a-7);--colors-grass-a-8: var(--colors-grass-light-a-8);--colors-grass-a-9: var(--colors-grass-light-a-9);--colors-grass-a-10: var(--colors-grass-light-a-10);--colors-grass-a-11: var(--colors-grass-light-a-11);--colors-grass-a-12: var(--colors-grass-light-a-12);--colors-grass-p3-1: var(--colors-grass-light-p3-1);--colors-grass-p3-2: var(--colors-grass-light-p3-2);--colors-grass-p3-3: var(--colors-grass-light-p3-3);--colors-grass-p3-4: var(--colors-grass-light-p3-4);--colors-grass-p3-5: var(--colors-grass-light-p3-5);--colors-grass-p3-6: var(--colors-grass-light-p3-6);--colors-grass-p3-7: var(--colors-grass-light-p3-7);--colors-grass-p3-8: var(--colors-grass-light-p3-8);--colors-grass-p3-9: var(--colors-grass-light-p3-9);--colors-grass-p3-10: var(--colors-grass-light-p3-10);--colors-grass-p3-11: var(--colors-grass-light-p3-11);--colors-grass-p3-12: var(--colors-grass-light-p3-12);--colors-grass-p3-a-1: var(--colors-grass-light-p3-a-1);--colors-grass-p3-a-2: var(--colors-grass-light-p3-a-2);--colors-grass-p3-a-3: var(--colors-grass-light-p3-a-3);--colors-grass-p3-a-4: var(--colors-grass-light-p3-a-4);--colors-grass-p3-a-5: var(--colors-grass-light-p3-a-5);--colors-grass-p3-a-6: var(--colors-grass-light-p3-a-6);--colors-grass-p3-a-7: var(--colors-grass-light-p3-a-7);--colors-grass-p3-a-8: var(--colors-grass-light-p3-a-8);--colors-grass-p3-a-9: var(--colors-grass-light-p3-a-9);--colors-grass-p3-a-10: var(--colors-grass-light-p3-a-10);--colors-grass-p3-a-11: var(--colors-grass-light-p3-a-11);--colors-grass-p3-a-12: var(--colors-grass-light-p3-a-12);--colors-indigo-1: var(--colors-indigo-light-1);--colors-indigo-2: var(--colors-indigo-light-2);--colors-indigo-3: var(--colors-indigo-light-3);--colors-indigo-4: var(--colors-indigo-light-4);--colors-indigo-5: var(--colors-indigo-light-5);--colors-indigo-6: var(--colors-indigo-light-6);--colors-indigo-7: var(--colors-indigo-light-7);--colors-indigo-8: var(--colors-indigo-light-8);--colors-indigo-9: var(--colors-indigo-light-9);--colors-indigo-10: var(--colors-indigo-light-10);--colors-indigo-11: var(--colors-indigo-light-11);--colors-indigo-12: var(--colors-indigo-light-12);--colors-indigo-light-1: #fdfdfe;--colors-indigo-light-2: #f7f9ff;--colors-indigo-light-3: #edf2fe;--colors-indigo-light-4: #e1e9ff;--colors-indigo-light-5: #d2deff;--colors-indigo-light-6: #c1d0ff;--colors-indigo-light-7: #abbdf9;--colors-indigo-light-8: #8da4ef;--colors-indigo-light-9: #3e63dd;--colors-indigo-light-10: #3358d4;--colors-indigo-light-11: #3a5bc7;--colors-indigo-light-12: #1f2d5c;--colors-indigo-light-a-1: #00008002;--colors-indigo-light-a-2: #0040ff08;--colors-indigo-light-a-3: #0047f112;--colors-indigo-light-a-4: #0044ff1e;--colors-indigo-light-a-5: #0044ff2d;--colors-indigo-light-a-6: #003eff3e;--colors-indigo-light-a-7: #0037ed54;--colors-indigo-light-a-8: #0034dc72;--colors-indigo-light-a-9: #0031d2c1;--colors-indigo-light-a-10: #002ec9cc;--colors-indigo-light-a-11: #002bb7c5;--colors-indigo-light-a-12: #001046e0;--colors-indigo-light-p3-1: color(display-p3 .992 .992 .996);--colors-indigo-light-p3-2: color(display-p3 .971 .977 .998);--colors-indigo-light-p3-3: color(display-p3 .933 .948 .992);--colors-indigo-light-p3-4: color(display-p3 .885 .914 1);--colors-indigo-light-p3-5: color(display-p3 .831 .87 1);--colors-indigo-light-p3-6: color(display-p3 .767 .814 .995);--colors-indigo-light-p3-7: color(display-p3 .685 .74 .957);--colors-indigo-light-p3-8: color(display-p3 .569 .639 .916);--colors-indigo-light-p3-9: color(display-p3 .276 .384 .837);--colors-indigo-light-p3-10: color(display-p3 .234 .343 .801);--colors-indigo-light-p3-11: color(display-p3 .256 .354 .755);--colors-indigo-light-p3-12: color(display-p3 .133 .175 .348);--colors-indigo-light-p3-a-1: color(display-p3 .02 .02 .51 / .008);--colors-indigo-light-p3-a-2: color(display-p3 .024 .161 .863 / .028);--colors-indigo-light-p3-a-3: color(display-p3 .008 .239 .886 / .067);--colors-indigo-light-p3-a-4: color(display-p3 .004 .247 1 / .114);--colors-indigo-light-p3-a-5: color(display-p3 .004 .235 1 / .169);--colors-indigo-light-p3-a-6: color(display-p3 .004 .208 .984 / .232);--colors-indigo-light-p3-a-7: color(display-p3 .004 .176 .863 / .314);--colors-indigo-light-p3-a-8: color(display-p3 .004 .165 .812 / .432);--colors-indigo-light-p3-a-9: color(display-p3 0 .153 .773 / .726);--colors-indigo-light-p3-a-10: color(display-p3 0 .137 .737 / .765);--colors-indigo-light-p3-a-11: color(display-p3 .256 .354 .755);--colors-indigo-light-p3-a-12: color(display-p3 .133 .175 .348);--colors-indigo-dark-1: #11131f;--colors-indigo-dark-2: #141726;--colors-indigo-dark-3: #182449;--colors-indigo-dark-4: #1d2e62;--colors-indigo-dark-5: #253974;--colors-indigo-dark-6: #304384;--colors-indigo-dark-7: #3a4f97;--colors-indigo-dark-8: #435db1;--colors-indigo-dark-9: #3e63dd;--colors-indigo-dark-10: #5472e4;--colors-indigo-dark-11: #9eb1ff;--colors-indigo-dark-12: #d6e1ff;--colors-indigo-dark-a-1: #1133ff0f;--colors-indigo-dark-a-2: #3354fa17;--colors-indigo-dark-a-3: #2f62ff3c;--colors-indigo-dark-a-4: #3566ff57;--colors-indigo-dark-a-5: #4171fd6b;--colors-indigo-dark-a-6: #5178fd7c;--colors-indigo-dark-a-7: #5a7fff90;--colors-indigo-dark-a-8: #5b81feac;--colors-indigo-dark-a-9: #4671ffdb;--colors-indigo-dark-a-10: #5c7efee3;--colors-indigo-dark-a-11: #9eb1ff;--colors-indigo-dark-a-12: #d6e1ff;--colors-indigo-dark-p3-1: color(display-p3 .068 .074 .118);--colors-indigo-dark-p3-2: color(display-p3 .081 .089 .144);--colors-indigo-dark-p3-3: color(display-p3 .105 .141 .275);--colors-indigo-dark-p3-4: color(display-p3 .129 .18 .369);--colors-indigo-dark-p3-5: color(display-p3 .163 .22 .439);--colors-indigo-dark-p3-6: color(display-p3 .203 .262 .5);--colors-indigo-dark-p3-7: color(display-p3 .245 .309 .575);--colors-indigo-dark-p3-8: color(display-p3 .285 .362 .674);--colors-indigo-dark-p3-9: color(display-p3 .276 .384 .837);--colors-indigo-dark-p3-10: color(display-p3 .354 .445 .866);--colors-indigo-dark-p3-11: color(display-p3 .63 .69 1);--colors-indigo-dark-p3-12: color(display-p3 .848 .881 .99);--colors-indigo-dark-p3-a-1: color(display-p3 .071 .212 .996 / .055);--colors-indigo-dark-p3-a-2: color(display-p3 .251 .345 .988 / .085);--colors-indigo-dark-p3-a-3: color(display-p3 .243 .404 1 / .223);--colors-indigo-dark-p3-a-4: color(display-p3 .263 .42 1 / .324);--colors-indigo-dark-p3-a-5: color(display-p3 .314 .451 1 / .4);--colors-indigo-dark-p3-a-6: color(display-p3 .361 .49 1 / .467);--colors-indigo-dark-p3-a-7: color(display-p3 .388 .51 1 / .547);--colors-indigo-dark-p3-a-8: color(display-p3 .404 .518 1 / .652);--colors-indigo-dark-p3-a-9: color(display-p3 .318 .451 1 / .824);--colors-indigo-dark-p3-a-10: color(display-p3 .404 .506 1 / .858);--colors-indigo-dark-p3-a-11: color(display-p3 .63 .69 1);--colors-indigo-dark-p3-a-12: color(display-p3 .848 .881 .99);--colors-indigo-a-1: var(--colors-indigo-light-a-1);--colors-indigo-a-2: var(--colors-indigo-light-a-2);--colors-indigo-a-3: var(--colors-indigo-light-a-3);--colors-indigo-a-4: var(--colors-indigo-light-a-4);--colors-indigo-a-5: var(--colors-indigo-light-a-5);--colors-indigo-a-6: var(--colors-indigo-light-a-6);--colors-indigo-a-7: var(--colors-indigo-light-a-7);--colors-indigo-a-8: var(--colors-indigo-light-a-8);--colors-indigo-a-9: var(--colors-indigo-light-a-9);--colors-indigo-a-10: var(--colors-indigo-light-a-10);--colors-indigo-a-11: var(--colors-indigo-light-a-11);--colors-indigo-a-12: var(--colors-indigo-light-a-12);--colors-indigo-p3-1: var(--colors-indigo-light-p3-1);--colors-indigo-p3-2: var(--colors-indigo-light-p3-2);--colors-indigo-p3-3: var(--colors-indigo-light-p3-3);--colors-indigo-p3-4: var(--colors-indigo-light-p3-4);--colors-indigo-p3-5: var(--colors-indigo-light-p3-5);--colors-indigo-p3-6: var(--colors-indigo-light-p3-6);--colors-indigo-p3-7: var(--colors-indigo-light-p3-7);--colors-indigo-p3-8: var(--colors-indigo-light-p3-8);--colors-indigo-p3-9: var(--colors-indigo-light-p3-9);--colors-indigo-p3-10: var(--colors-indigo-light-p3-10);--colors-indigo-p3-11: var(--colors-indigo-light-p3-11);--colors-indigo-p3-12: var(--colors-indigo-light-p3-12);--colors-indigo-p3-a-1: var(--colors-indigo-light-p3-a-1);--colors-indigo-p3-a-2: var(--colors-indigo-light-p3-a-2);--colors-indigo-p3-a-3: var(--colors-indigo-light-p3-a-3);--colors-indigo-p3-a-4: var(--colors-indigo-light-p3-a-4);--colors-indigo-p3-a-5: var(--colors-indigo-light-p3-a-5);--colors-indigo-p3-a-6: var(--colors-indigo-light-p3-a-6);--colors-indigo-p3-a-7: var(--colors-indigo-light-p3-a-7);--colors-indigo-p3-a-8: var(--colors-indigo-light-p3-a-8);--colors-indigo-p3-a-9: var(--colors-indigo-light-p3-a-9);--colors-indigo-p3-a-10: var(--colors-indigo-light-p3-a-10);--colors-indigo-p3-a-11: var(--colors-indigo-light-p3-a-11);--colors-indigo-p3-a-12: var(--colors-indigo-light-p3-a-12);--colors-lime-1: var(--colors-lime-light-1);--colors-lime-2: var(--colors-lime-light-2);--colors-lime-3: var(--colors-lime-light-3);--colors-lime-4: var(--colors-lime-light-4);--colors-lime-5: var(--colors-lime-light-5);--colors-lime-6: var(--colors-lime-light-6);--colors-lime-7: var(--colors-lime-light-7);--colors-lime-8: var(--colors-lime-light-8);--colors-lime-9: var(--colors-lime-light-9);--colors-lime-10: var(--colors-lime-light-10);--colors-lime-11: var(--colors-lime-light-11);--colors-lime-12: var(--colors-lime-light-12);--colors-lime-light-1: #fcfdfa;--colors-lime-light-2: #f8faf3;--colors-lime-light-3: #eef6d6;--colors-lime-light-4: #e2f0bd;--colors-lime-light-5: #d3e7a6;--colors-lime-light-6: #c2da91;--colors-lime-light-7: #abc978;--colors-lime-light-8: #8db654;--colors-lime-light-9: #bdee63;--colors-lime-light-10: #b0e64c;--colors-lime-light-11: #5c7c2f;--colors-lime-light-12: #37401c;--colors-lime-light-a-1: #66990005;--colors-lime-light-a-2: #6b95000c;--colors-lime-light-a-3: #96c80029;--colors-lime-light-a-4: #8fc60042;--colors-lime-light-a-5: #81bb0059;--colors-lime-light-a-6: #72aa006e;--colors-lime-light-a-7: #61990087;--colors-lime-light-a-8: #559200ab;--colors-lime-light-a-9: #93e4009c;--colors-lime-light-a-10: #8fdc00b3;--colors-lime-light-a-11: #375f00d0;--colors-lime-light-a-12: #1e2900e3;--colors-lime-light-p3-1: color(display-p3 .989 .992 .981);--colors-lime-light-p3-2: color(display-p3 .975 .98 .954);--colors-lime-light-p3-3: color(display-p3 .939 .965 .851);--colors-lime-light-p3-4: color(display-p3 .896 .94 .76);--colors-lime-light-p3-5: color(display-p3 .843 .903 .678);--colors-lime-light-p3-6: color(display-p3 .778 .852 .599);--colors-lime-light-p3-7: color(display-p3 .694 .784 .508);--colors-lime-light-p3-8: color(display-p3 .585 .707 .378);--colors-lime-light-p3-9: color(display-p3 .78 .928 .466);--colors-lime-light-p3-10: color(display-p3 .734 .896 .397);--colors-lime-light-p3-11: color(display-p3 .386 .482 .227);--colors-lime-light-p3-12: color(display-p3 .222 .25 .128);--colors-lime-light-p3-a-1: color(display-p3 .412 .608 .02 / .02);--colors-lime-light-p3-a-2: color(display-p3 .514 .592 .024 / .048);--colors-lime-light-p3-a-3: color(display-p3 .584 .765 .008 / .15);--colors-lime-light-p3-a-4: color(display-p3 .561 .757 .004 / .24);--colors-lime-light-p3-a-5: color(display-p3 .514 .698 .004 / .322);--colors-lime-light-p3-a-6: color(display-p3 .443 .627 0 / .4);--colors-lime-light-p3-a-7: color(display-p3 .376 .561 .004 / .491);--colors-lime-light-p3-a-8: color(display-p3 .333 .529 0 / .624);--colors-lime-light-p3-a-9: color(display-p3 .588 .867 0 / .534);--colors-lime-light-p3-a-10: color(display-p3 .561 .827 0 / .604);--colors-lime-light-p3-a-11: color(display-p3 .386 .482 .227);--colors-lime-light-p3-a-12: color(display-p3 .222 .25 .128);--colors-lime-dark-1: #11130c;--colors-lime-dark-2: #151a10;--colors-lime-dark-3: #1f2917;--colors-lime-dark-4: #29371d;--colors-lime-dark-5: #334423;--colors-lime-dark-6: #3d522a;--colors-lime-dark-7: #496231;--colors-lime-dark-8: #577538;--colors-lime-dark-9: #bdee63;--colors-lime-dark-10: #d4ff70;--colors-lime-dark-11: #bde56c;--colors-lime-dark-12: #e3f7ba;--colors-lime-dark-a-1: #11bb0003;--colors-lime-dark-a-2: #78f7000a;--colors-lime-dark-a-3: #9bfd4c1a;--colors-lime-dark-a-4: #a7fe5c29;--colors-lime-dark-a-5: #affe6537;--colors-lime-dark-a-6: #b2fe6d46;--colors-lime-dark-a-7: #b6ff6f57;--colors-lime-dark-a-8: #b6fd6d6c;--colors-lime-dark-a-9: #caff69ed;--colors-lime-dark-a-10: #d4ff70;--colors-lime-dark-a-11: #d1fe77e4;--colors-lime-dark-a-12: #e9febff7;--colors-lime-dark-p3-1: color(display-p3 .067 .073 .048);--colors-lime-dark-p3-2: color(display-p3 .086 .1 .067);--colors-lime-dark-p3-3: color(display-p3 .13 .16 .099);--colors-lime-dark-p3-4: color(display-p3 .172 .214 .126);--colors-lime-dark-p3-5: color(display-p3 .213 .266 .153);--colors-lime-dark-p3-6: color(display-p3 .257 .321 .182);--colors-lime-dark-p3-7: color(display-p3 .307 .383 .215);--colors-lime-dark-p3-8: color(display-p3 .365 .456 .25);--colors-lime-dark-p3-9: color(display-p3 .78 .928 .466);--colors-lime-dark-p3-10: color(display-p3 .865 .995 .519);--colors-lime-dark-p3-11: color(display-p3 .771 .893 .485);--colors-lime-dark-p3-12: color(display-p3 .905 .966 .753);--colors-lime-dark-p3-a-1: color(display-p3 .067 .941 0 / .009);--colors-lime-dark-p3-a-2: color(display-p3 .584 .996 .071 / .038);--colors-lime-dark-p3-a-3: color(display-p3 .69 1 .38 / .101);--colors-lime-dark-p3-a-4: color(display-p3 .729 1 .435 / .16);--colors-lime-dark-p3-a-5: color(display-p3 .745 1 .471 / .215);--colors-lime-dark-p3-a-6: color(display-p3 .769 1 .482 / .274);--colors-lime-dark-p3-a-7: color(display-p3 .769 1 .506 / .341);--colors-lime-dark-p3-a-8: color(display-p3 .784 1 .51 / .416);--colors-lime-dark-p3-a-9: color(display-p3 .839 1 .502 / .925);--colors-lime-dark-p3-a-10: color(display-p3 .871 1 .522 / .996);--colors-lime-dark-p3-a-11: color(display-p3 .771 .893 .485);--colors-lime-dark-p3-a-12: color(display-p3 .905 .966 .753);--colors-lime-a-1: var(--colors-lime-light-a-1);--colors-lime-a-2: var(--colors-lime-light-a-2);--colors-lime-a-3: var(--colors-lime-light-a-3);--colors-lime-a-4: var(--colors-lime-light-a-4);--colors-lime-a-5: var(--colors-lime-light-a-5);--colors-lime-a-6: var(--colors-lime-light-a-6);--colors-lime-a-7: var(--colors-lime-light-a-7);--colors-lime-a-8: var(--colors-lime-light-a-8);--colors-lime-a-9: var(--colors-lime-light-a-9);--colors-lime-a-10: var(--colors-lime-light-a-10);--colors-lime-a-11: var(--colors-lime-light-a-11);--colors-lime-a-12: var(--colors-lime-light-a-12);--colors-lime-p3-1: var(--colors-lime-light-p3-1);--colors-lime-p3-2: var(--colors-lime-light-p3-2);--colors-lime-p3-3: var(--colors-lime-light-p3-3);--colors-lime-p3-4: var(--colors-lime-light-p3-4);--colors-lime-p3-5: var(--colors-lime-light-p3-5);--colors-lime-p3-6: var(--colors-lime-light-p3-6);--colors-lime-p3-7: var(--colors-lime-light-p3-7);--colors-lime-p3-8: var(--colors-lime-light-p3-8);--colors-lime-p3-9: var(--colors-lime-light-p3-9);--colors-lime-p3-10: var(--colors-lime-light-p3-10);--colors-lime-p3-11: var(--colors-lime-light-p3-11);--colors-lime-p3-12: var(--colors-lime-light-p3-12);--colors-lime-p3-a-1: var(--colors-lime-light-p3-a-1);--colors-lime-p3-a-2: var(--colors-lime-light-p3-a-2);--colors-lime-p3-a-3: var(--colors-lime-light-p3-a-3);--colors-lime-p3-a-4: var(--colors-lime-light-p3-a-4);--colors-lime-p3-a-5: var(--colors-lime-light-p3-a-5);--colors-lime-p3-a-6: var(--colors-lime-light-p3-a-6);--colors-lime-p3-a-7: var(--colors-lime-light-p3-a-7);--colors-lime-p3-a-8: var(--colors-lime-light-p3-a-8);--colors-lime-p3-a-9: var(--colors-lime-light-p3-a-9);--colors-lime-p3-a-10: var(--colors-lime-light-p3-a-10);--colors-lime-p3-a-11: var(--colors-lime-light-p3-a-11);--colors-lime-p3-a-12: var(--colors-lime-light-p3-a-12);--colors-orange-1: var(--colors-orange-light-1);--colors-orange-2: var(--colors-orange-light-2);--colors-orange-3: var(--colors-orange-light-3);--colors-orange-4: var(--colors-orange-light-4);--colors-orange-5: var(--colors-orange-light-5);--colors-orange-6: var(--colors-orange-light-6);--colors-orange-7: var(--colors-orange-light-7);--colors-orange-8: var(--colors-orange-light-8);--colors-orange-9: var(--colors-orange-light-9);--colors-orange-10: var(--colors-orange-light-10);--colors-orange-11: var(--colors-orange-light-11);--colors-orange-12: var(--colors-orange-light-12);--colors-orange-light-1: #fefcfb;--colors-orange-light-2: #fff7ed;--colors-orange-light-3: #ffefd6;--colors-orange-light-4: #ffdfb5;--colors-orange-light-5: #ffd19a;--colors-orange-light-6: #ffc182;--colors-orange-light-7: #f5ae73;--colors-orange-light-8: #ec9455;--colors-orange-light-9: #f76b15;--colors-orange-light-10: #ef5f00;--colors-orange-light-11: #cc4e00;--colors-orange-light-12: #582d1d;--colors-orange-light-a-1: #c0400004;--colors-orange-light-a-2: #ff8e0012;--colors-orange-light-a-3: #ff9c0029;--colors-orange-light-a-4: #ff91014a;--colors-orange-light-a-5: #ff8b0065;--colors-orange-light-a-6: #ff81007d;--colors-orange-light-a-7: #ed6c008c;--colors-orange-light-a-8: #e35f00aa;--colors-orange-light-a-9: #f65e00ea;--colors-orange-light-a-10: #ef5f00;--colors-orange-light-a-11: #cc4e00;--colors-orange-light-a-12: #431200e2;--colors-orange-light-p3-1: color(display-p3 .995 .988 .985);--colors-orange-light-p3-2: color(display-p3 .994 .968 .934);--colors-orange-light-p3-3: color(display-p3 .989 .938 .85);--colors-orange-light-p3-4: color(display-p3 1 .874 .687);--colors-orange-light-p3-5: color(display-p3 1 .821 .583);--colors-orange-light-p3-6: color(display-p3 .975 .767 .545);--colors-orange-light-p3-7: color(display-p3 .919 .693 .486);--colors-orange-light-p3-8: color(display-p3 .877 .597 .379);--colors-orange-light-p3-9: color(display-p3 .9 .45 .2);--colors-orange-light-p3-10: color(display-p3 .87 .409 .164);--colors-orange-light-p3-11: color(display-p3 .76 .34 0);--colors-orange-light-p3-12: color(display-p3 .323 .185 .127);--colors-orange-light-p3-a-1: color(display-p3 .757 .267 .024 / .016);--colors-orange-light-p3-a-2: color(display-p3 .886 .533 .008 / .067);--colors-orange-light-p3-a-3: color(display-p3 .922 .584 .008 / .15);--colors-orange-light-p3-a-4: color(display-p3 1 .604 .004 / .314);--colors-orange-light-p3-a-5: color(display-p3 1 .569 .004 / .416);--colors-orange-light-p3-a-6: color(display-p3 .949 .494 .004 / .455);--colors-orange-light-p3-a-7: color(display-p3 .839 .408 0 / .514);--colors-orange-light-p3-a-8: color(display-p3 .804 .349 0 / .62);--colors-orange-light-p3-a-9: color(display-p3 .878 .314 0 / .8);--colors-orange-light-p3-a-10: color(display-p3 .843 .29 0 / .836);--colors-orange-light-p3-a-11: color(display-p3 .76 .34 0);--colors-orange-light-p3-a-12: color(display-p3 .323 .185 .127);--colors-orange-dark-1: #17120e;--colors-orange-dark-2: #1e160f;--colors-orange-dark-3: #331e0b;--colors-orange-dark-4: #462100;--colors-orange-dark-5: #562800;--colors-orange-dark-6: #66350c;--colors-orange-dark-7: #7e451d;--colors-orange-dark-8: #a35829;--colors-orange-dark-9: #f76b15;--colors-orange-dark-10: #ff801f;--colors-orange-dark-11: #ffa057;--colors-orange-dark-12: #ffe0c2;--colors-orange-dark-a-1: #ec360007;--colors-orange-dark-a-2: #fe6d000e;--colors-orange-dark-a-3: #fb6a0025;--colors-orange-dark-a-4: #ff590039;--colors-orange-dark-a-5: #ff61004a;--colors-orange-dark-a-6: #fd75045c;--colors-orange-dark-a-7: #ff832c75;--colors-orange-dark-a-8: #fe84389d;--colors-orange-dark-a-9: #fe6d15f7;--colors-orange-dark-a-10: #ff801f;--colors-orange-dark-a-11: #ffa057;--colors-orange-dark-a-12: #ffe0c2;--colors-orange-dark-p3-1: color(display-p3 .088 .07 .057);--colors-orange-dark-p3-2: color(display-p3 .113 .089 .061);--colors-orange-dark-p3-3: color(display-p3 .189 .12 .056);--colors-orange-dark-p3-4: color(display-p3 .262 .132 0);--colors-orange-dark-p3-5: color(display-p3 .315 .168 .016);--colors-orange-dark-p3-6: color(display-p3 .376 .219 .088);--colors-orange-dark-p3-7: color(display-p3 .465 .283 .147);--colors-orange-dark-p3-8: color(display-p3 .601 .359 .201);--colors-orange-dark-p3-9: color(display-p3 .9 .45 .2);--colors-orange-dark-p3-10: color(display-p3 .98 .51 .23);--colors-orange-dark-p3-11: color(display-p3 1 .63 .38);--colors-orange-dark-p3-12: color(display-p3 .98 .883 .775);--colors-orange-dark-p3-a-1: color(display-p3 .961 .247 0 / .022);--colors-orange-dark-p3-a-2: color(display-p3 .992 .529 0 / .051);--colors-orange-dark-p3-a-3: color(display-p3 .996 .486 0 / .131);--colors-orange-dark-p3-a-4: color(display-p3 .996 .384 0 / .211);--colors-orange-dark-p3-a-5: color(display-p3 1 .455 0 / .265);--colors-orange-dark-p3-a-6: color(display-p3 1 .529 .129 / .332);--colors-orange-dark-p3-a-7: color(display-p3 1 .569 .251 / .429);--colors-orange-dark-p3-a-8: color(display-p3 1 .584 .302 / .572);--colors-orange-dark-p3-a-9: color(display-p3 1 .494 .216 / .895);--colors-orange-dark-p3-a-10: color(display-p3 1 .522 .235 / .979);--colors-orange-dark-p3-a-11: color(display-p3 1 .63 .38);--colors-orange-dark-p3-a-12: color(display-p3 .98 .883 .775);--colors-orange-a-1: var(--colors-orange-light-a-1);--colors-orange-a-2: var(--colors-orange-light-a-2);--colors-orange-a-3: var(--colors-orange-light-a-3);--colors-orange-a-4: var(--colors-orange-light-a-4);--colors-orange-a-5: var(--colors-orange-light-a-5);--colors-orange-a-6: var(--colors-orange-light-a-6);--colors-orange-a-7: var(--colors-orange-light-a-7);--colors-orange-a-8: var(--colors-orange-light-a-8);--colors-orange-a-9: var(--colors-orange-light-a-9);--colors-orange-a-10: var(--colors-orange-light-a-10);--colors-orange-a-11: var(--colors-orange-light-a-11);--colors-orange-a-12: var(--colors-orange-light-a-12);--colors-orange-p3-1: var(--colors-orange-light-p3-1);--colors-orange-p3-2: var(--colors-orange-light-p3-2);--colors-orange-p3-3: var(--colors-orange-light-p3-3);--colors-orange-p3-4: var(--colors-orange-light-p3-4);--colors-orange-p3-5: var(--colors-orange-light-p3-5);--colors-orange-p3-6: var(--colors-orange-light-p3-6);--colors-orange-p3-7: var(--colors-orange-light-p3-7);--colors-orange-p3-8: var(--colors-orange-light-p3-8);--colors-orange-p3-9: var(--colors-orange-light-p3-9);--colors-orange-p3-10: var(--colors-orange-light-p3-10);--colors-orange-p3-11: var(--colors-orange-light-p3-11);--colors-orange-p3-12: var(--colors-orange-light-p3-12);--colors-orange-p3-a-1: var(--colors-orange-light-p3-a-1);--colors-orange-p3-a-2: var(--colors-orange-light-p3-a-2);--colors-orange-p3-a-3: var(--colors-orange-light-p3-a-3);--colors-orange-p3-a-4: var(--colors-orange-light-p3-a-4);--colors-orange-p3-a-5: var(--colors-orange-light-p3-a-5);--colors-orange-p3-a-6: var(--colors-orange-light-p3-a-6);--colors-orange-p3-a-7: var(--colors-orange-light-p3-a-7);--colors-orange-p3-a-8: var(--colors-orange-light-p3-a-8);--colors-orange-p3-a-9: var(--colors-orange-light-p3-a-9);--colors-orange-p3-a-10: var(--colors-orange-light-p3-a-10);--colors-orange-p3-a-11: var(--colors-orange-light-p3-a-11);--colors-orange-p3-a-12: var(--colors-orange-light-p3-a-12);--colors-pink-1: var(--colors-pink-light-1);--colors-pink-2: var(--colors-pink-light-2);--colors-pink-3: var(--colors-pink-light-3);--colors-pink-4: var(--colors-pink-light-4);--colors-pink-5: var(--colors-pink-light-5);--colors-pink-6: var(--colors-pink-light-6);--colors-pink-7: var(--colors-pink-light-7);--colors-pink-8: var(--colors-pink-light-8);--colors-pink-9: var(--colors-pink-light-9);--colors-pink-10: var(--colors-pink-light-10);--colors-pink-11: var(--colors-pink-light-11);--colors-pink-12: var(--colors-pink-light-12);--colors-pink-light-1: #fffcfe;--colors-pink-light-2: #fef7fb;--colors-pink-light-3: #fee9f5;--colors-pink-light-4: #fbdcef;--colors-pink-light-5: #f6cee7;--colors-pink-light-6: #efbfdd;--colors-pink-light-7: #e7acd0;--colors-pink-light-8: #dd93c2;--colors-pink-light-9: #d6409f;--colors-pink-light-10: #cf3897;--colors-pink-light-11: #c2298a;--colors-pink-light-12: #651249;--colors-pink-light-a-1: #ff00aa03;--colors-pink-light-a-2: #e0008008;--colors-pink-light-a-3: #f4008c16;--colors-pink-light-a-4: #e2008b23;--colors-pink-light-a-5: #d1008331;--colors-pink-light-a-6: #c0007840;--colors-pink-light-a-7: #b6006f53;--colors-pink-light-a-8: #af006f6c;--colors-pink-light-a-9: #c8007fbf;--colors-pink-light-a-10: #c2007ac7;--colors-pink-light-a-11: #b60074d6;--colors-pink-light-a-12: #59003bed;--colors-pink-light-p3-1: color(display-p3 .998 .989 .996);--colors-pink-light-p3-2: color(display-p3 .992 .97 .985);--colors-pink-light-p3-3: color(display-p3 .981 .917 .96);--colors-pink-light-p3-4: color(display-p3 .963 .867 .932);--colors-pink-light-p3-5: color(display-p3 .939 .815 .899);--colors-pink-light-p3-6: color(display-p3 .907 .756 .859);--colors-pink-light-p3-7: color(display-p3 .869 .683 .81);--colors-pink-light-p3-8: color(display-p3 .825 .59 .751);--colors-pink-light-p3-9: color(display-p3 .775 .297 .61);--colors-pink-light-p3-10: color(display-p3 .748 .27 .581);--colors-pink-light-p3-11: color(display-p3 .698 .219 .528);--colors-pink-light-p3-12: color(display-p3 .363 .101 .279);--colors-pink-light-p3-a-1: color(display-p3 .675 .024 .675 / .012);--colors-pink-light-p3-a-2: color(display-p3 .757 .02 .51 / .032);--colors-pink-light-p3-a-3: color(display-p3 .765 .008 .529 / .083);--colors-pink-light-p3-a-4: color(display-p3 .737 .008 .506 / .134);--colors-pink-light-p3-a-5: color(display-p3 .663 .004 .451 / .185);--colors-pink-light-p3-a-6: color(display-p3 .616 .004 .424 / .244);--colors-pink-light-p3-a-7: color(display-p3 .596 .004 .412 / .318);--colors-pink-light-p3-a-8: color(display-p3 .573 .004 .404 / .412);--colors-pink-light-p3-a-9: color(display-p3 .682 0 .447 / .702);--colors-pink-light-p3-a-10: color(display-p3 .655 0 .424 / .73);--colors-pink-light-p3-a-11: color(display-p3 .698 .219 .528);--colors-pink-light-p3-a-12: color(display-p3 .363 .101 .279);--colors-pink-dark-1: #191117;--colors-pink-dark-2: #21121d;--colors-pink-dark-3: #37172f;--colors-pink-dark-4: #4b143d;--colors-pink-dark-5: #591c47;--colors-pink-dark-6: #692955;--colors-pink-dark-7: #833869;--colors-pink-dark-8: #a84885;--colors-pink-dark-9: #d6409f;--colors-pink-dark-10: #de51a8;--colors-pink-dark-11: #ff8dcc;--colors-pink-dark-12: #fdd1ea;--colors-pink-dark-a-1: #f412bc09;--colors-pink-dark-a-2: #f420bb12;--colors-pink-dark-a-3: #fe37cc29;--colors-pink-dark-a-4: #fc1ec43f;--colors-pink-dark-a-5: #fd35c24e;--colors-pink-dark-a-6: #fd51c75f;--colors-pink-dark-a-7: #fd62c87b;--colors-pink-dark-a-8: #ff68c8a2;--colors-pink-dark-a-9: #fe49bcd4;--colors-pink-dark-a-10: #ff5cc0dc;--colors-pink-dark-a-11: #ff8dcc;--colors-pink-dark-a-12: #ffd3ecfd;--colors-pink-dark-p3-1: color(display-p3 .093 .068 .089);--colors-pink-dark-p3-2: color(display-p3 .121 .073 .11);--colors-pink-dark-p3-3: color(display-p3 .198 .098 .179);--colors-pink-dark-p3-4: color(display-p3 .271 .095 .231);--colors-pink-dark-p3-5: color(display-p3 .32 .127 .273);--colors-pink-dark-p3-6: color(display-p3 .382 .177 .326);--colors-pink-dark-p3-7: color(display-p3 .477 .238 .405);--colors-pink-dark-p3-8: color(display-p3 .612 .304 .51);--colors-pink-dark-p3-9: color(display-p3 .775 .297 .61);--colors-pink-dark-p3-10: color(display-p3 .808 .356 .645);--colors-pink-dark-p3-11: color(display-p3 1 .535 .78);--colors-pink-dark-p3-12: color(display-p3 .964 .826 .912);--colors-pink-dark-p3-a-1: color(display-p3 .984 .071 .855 / .03);--colors-pink-dark-p3-a-2: color(display-p3 1 .2 .8 / .059);--colors-pink-dark-p3-a-3: color(display-p3 1 .294 .886 / .139);--colors-pink-dark-p3-a-4: color(display-p3 1 .192 .82 / .219);--colors-pink-dark-p3-a-5: color(display-p3 1 .282 .827 / .274);--colors-pink-dark-p3-a-6: color(display-p3 1 .396 .835 / .337);--colors-pink-dark-p3-a-7: color(display-p3 1 .459 .831 / .442);--colors-pink-dark-p3-a-8: color(display-p3 1 .478 .827 / .585);--colors-pink-dark-p3-a-9: color(display-p3 1 .373 .784 / .761);--colors-pink-dark-p3-a-10: color(display-p3 1 .435 .792 / .795);--colors-pink-dark-p3-a-11: color(display-p3 1 .535 .78);--colors-pink-dark-p3-a-12: color(display-p3 .964 .826 .912);--colors-pink-a-1: var(--colors-pink-light-a-1);--colors-pink-a-2: var(--colors-pink-light-a-2);--colors-pink-a-3: var(--colors-pink-light-a-3);--colors-pink-a-4: var(--colors-pink-light-a-4);--colors-pink-a-5: var(--colors-pink-light-a-5);--colors-pink-a-6: var(--colors-pink-light-a-6);--colors-pink-a-7: var(--colors-pink-light-a-7);--colors-pink-a-8: var(--colors-pink-light-a-8);--colors-pink-a-9: var(--colors-pink-light-a-9);--colors-pink-a-10: var(--colors-pink-light-a-10);--colors-pink-a-11: var(--colors-pink-light-a-11);--colors-pink-a-12: var(--colors-pink-light-a-12);--colors-pink-p3-1: var(--colors-pink-light-p3-1);--colors-pink-p3-2: var(--colors-pink-light-p3-2);--colors-pink-p3-3: var(--colors-pink-light-p3-3);--colors-pink-p3-4: var(--colors-pink-light-p3-4);--colors-pink-p3-5: var(--colors-pink-light-p3-5);--colors-pink-p3-6: var(--colors-pink-light-p3-6);--colors-pink-p3-7: var(--colors-pink-light-p3-7);--colors-pink-p3-8: var(--colors-pink-light-p3-8);--colors-pink-p3-9: var(--colors-pink-light-p3-9);--colors-pink-p3-10: var(--colors-pink-light-p3-10);--colors-pink-p3-11: var(--colors-pink-light-p3-11);--colors-pink-p3-12: var(--colors-pink-light-p3-12);--colors-pink-p3-a-1: var(--colors-pink-light-p3-a-1);--colors-pink-p3-a-2: var(--colors-pink-light-p3-a-2);--colors-pink-p3-a-3: var(--colors-pink-light-p3-a-3);--colors-pink-p3-a-4: var(--colors-pink-light-p3-a-4);--colors-pink-p3-a-5: var(--colors-pink-light-p3-a-5);--colors-pink-p3-a-6: var(--colors-pink-light-p3-a-6);--colors-pink-p3-a-7: var(--colors-pink-light-p3-a-7);--colors-pink-p3-a-8: var(--colors-pink-light-p3-a-8);--colors-pink-p3-a-9: var(--colors-pink-light-p3-a-9);--colors-pink-p3-a-10: var(--colors-pink-light-p3-a-10);--colors-pink-p3-a-11: var(--colors-pink-light-p3-a-11);--colors-pink-p3-a-12: var(--colors-pink-light-p3-a-12);--colors-purple-1: var(--colors-purple-light-1);--colors-purple-2: var(--colors-purple-light-2);--colors-purple-3: var(--colors-purple-light-3);--colors-purple-4: var(--colors-purple-light-4);--colors-purple-5: var(--colors-purple-light-5);--colors-purple-6: var(--colors-purple-light-6);--colors-purple-7: var(--colors-purple-light-7);--colors-purple-8: var(--colors-purple-light-8);--colors-purple-9: var(--colors-purple-light-9);--colors-purple-10: var(--colors-purple-light-10);--colors-purple-11: var(--colors-purple-light-11);--colors-purple-12: var(--colors-purple-light-12);--colors-purple-light-1: #fefcfe;--colors-purple-light-2: #fbf7fe;--colors-purple-light-3: #f7edfe;--colors-purple-light-4: #f2e2fc;--colors-purple-light-5: #ead5f9;--colors-purple-light-6: #e0c4f4;--colors-purple-light-7: #d1afec;--colors-purple-light-8: #be93e4;--colors-purple-light-9: #8e4ec6;--colors-purple-light-10: #8347b9;--colors-purple-light-11: #8145b5;--colors-purple-light-12: #402060;--colors-purple-light-a-1: #aa00aa03;--colors-purple-light-a-2: #8000e008;--colors-purple-light-a-3: #8e00f112;--colors-purple-light-a-4: #8d00e51d;--colors-purple-light-a-5: #8000db2a;--colors-purple-light-a-6: #7a01d03b;--colors-purple-light-a-7: #6d00c350;--colors-purple-light-a-8: #6600c06c;--colors-purple-light-a-9: #5c00adb1;--colors-purple-light-a-10: #53009eb8;--colors-purple-light-a-11: #52009aba;--colors-purple-light-a-12: #250049df;--colors-purple-light-p3-1: color(display-p3 .995 .988 .996);--colors-purple-light-p3-2: color(display-p3 .983 .971 .993);--colors-purple-light-p3-3: color(display-p3 .963 .931 .989);--colors-purple-light-p3-4: color(display-p3 .937 .888 .981);--colors-purple-light-p3-5: color(display-p3 .904 .837 .966);--colors-purple-light-p3-6: color(display-p3 .86 .774 .942);--colors-purple-light-p3-7: color(display-p3 .799 .69 .91);--colors-purple-light-p3-8: color(display-p3 .719 .583 .874);--colors-purple-light-p3-9: color(display-p3 .523 .318 .751);--colors-purple-light-p3-10: color(display-p3 .483 .289 .7);--colors-purple-light-p3-11: color(display-p3 .473 .281 .687);--colors-purple-light-p3-12: color(display-p3 .234 .132 .363);--colors-purple-light-p3-a-1: color(display-p3 .675 .024 .675 / .012);--colors-purple-light-p3-a-2: color(display-p3 .443 .024 .722 / .028);--colors-purple-light-p3-a-3: color(display-p3 .506 .008 .835 / .071);--colors-purple-light-p3-a-4: color(display-p3 .451 .004 .831 / .114);--colors-purple-light-p3-a-5: color(display-p3 .431 .004 .788 / .165);--colors-purple-light-p3-a-6: color(display-p3 .384 .004 .745 / .228);--colors-purple-light-p3-a-7: color(display-p3 .357 .004 .71 / .31);--colors-purple-light-p3-a-8: color(display-p3 .322 .004 .702 / .416);--colors-purple-light-p3-a-9: color(display-p3 .298 0 .639 / .683);--colors-purple-light-p3-a-10: color(display-p3 .271 0 .58 / .71);--colors-purple-light-p3-a-11: color(display-p3 .473 .281 .687);--colors-purple-light-p3-a-12: color(display-p3 .234 .132 .363);--colors-purple-dark-1: #18111b;--colors-purple-dark-2: #1e1523;--colors-purple-dark-3: #301c3b;--colors-purple-dark-4: #3d224e;--colors-purple-dark-5: #48295c;--colors-purple-dark-6: #54346b;--colors-purple-dark-7: #664282;--colors-purple-dark-8: #8457aa;--colors-purple-dark-9: #8e4ec6;--colors-purple-dark-10: #9a5cd0;--colors-purple-dark-11: #d19dff;--colors-purple-dark-12: #ecd9fa;--colors-purple-dark-a-1: #b412f90b;--colors-purple-dark-a-2: #b744f714;--colors-purple-dark-a-3: #c150ff2d;--colors-purple-dark-a-4: #bb53fd42;--colors-purple-dark-a-5: #be5cfd51;--colors-purple-dark-a-6: #c16dfd61;--colors-purple-dark-a-7: #c378fd7a;--colors-purple-dark-a-8: #c47effa4;--colors-purple-dark-a-9: #b661ffc2;--colors-purple-dark-a-10: #bc6fffcd;--colors-purple-dark-a-11: #d19dff;--colors-purple-dark-a-12: #f1ddfffa;--colors-purple-dark-p3-1: color(display-p3 .09 .068 .103);--colors-purple-dark-p3-2: color(display-p3 .113 .082 .134);--colors-purple-dark-p3-3: color(display-p3 .175 .112 .224);--colors-purple-dark-p3-4: color(display-p3 .224 .137 .297);--colors-purple-dark-p3-5: color(display-p3 .264 .167 .349);--colors-purple-dark-p3-6: color(display-p3 .311 .208 .406);--colors-purple-dark-p3-7: color(display-p3 .381 .266 .496);--colors-purple-dark-p3-8: color(display-p3 .49 .349 .649);--colors-purple-dark-p3-9: color(display-p3 .523 .318 .751);--colors-purple-dark-p3-10: color(display-p3 .57 .373 .791);--colors-purple-dark-p3-11: color(display-p3 .8 .62 1);--colors-purple-dark-p3-12: color(display-p3 .913 .854 .971);--colors-purple-dark-p3-a-1: color(display-p3 .686 .071 .996 / .038);--colors-purple-dark-p3-a-2: color(display-p3 .722 .286 .996 / .072);--colors-purple-dark-p3-a-3: color(display-p3 .718 .349 .996 / .169);--colors-purple-dark-p3-a-4: color(display-p3 .702 .353 1 / .248);--colors-purple-dark-p3-a-5: color(display-p3 .718 .404 1 / .303);--colors-purple-dark-p3-a-6: color(display-p3 .733 .455 1 / .366);--colors-purple-dark-p3-a-7: color(display-p3 .753 .506 1 / .458);--colors-purple-dark-p3-a-8: color(display-p3 .749 .522 1 / .622);--colors-purple-dark-p3-a-9: color(display-p3 .686 .408 1 / .736);--colors-purple-dark-p3-a-10: color(display-p3 .71 .459 1 / .778);--colors-purple-dark-p3-a-11: color(display-p3 .8 .62 1);--colors-purple-dark-p3-a-12: color(display-p3 .913 .854 .971);--colors-purple-a-1: var(--colors-purple-light-a-1);--colors-purple-a-2: var(--colors-purple-light-a-2);--colors-purple-a-3: var(--colors-purple-light-a-3);--colors-purple-a-4: var(--colors-purple-light-a-4);--colors-purple-a-5: var(--colors-purple-light-a-5);--colors-purple-a-6: var(--colors-purple-light-a-6);--colors-purple-a-7: var(--colors-purple-light-a-7);--colors-purple-a-8: var(--colors-purple-light-a-8);--colors-purple-a-9: var(--colors-purple-light-a-9);--colors-purple-a-10: var(--colors-purple-light-a-10);--colors-purple-a-11: var(--colors-purple-light-a-11);--colors-purple-a-12: var(--colors-purple-light-a-12);--colors-purple-p3-1: var(--colors-purple-light-p3-1);--colors-purple-p3-2: var(--colors-purple-light-p3-2);--colors-purple-p3-3: var(--colors-purple-light-p3-3);--colors-purple-p3-4: var(--colors-purple-light-p3-4);--colors-purple-p3-5: var(--colors-purple-light-p3-5);--colors-purple-p3-6: var(--colors-purple-light-p3-6);--colors-purple-p3-7: var(--colors-purple-light-p3-7);--colors-purple-p3-8: var(--colors-purple-light-p3-8);--colors-purple-p3-9: var(--colors-purple-light-p3-9);--colors-purple-p3-10: var(--colors-purple-light-p3-10);--colors-purple-p3-11: var(--colors-purple-light-p3-11);--colors-purple-p3-12: var(--colors-purple-light-p3-12);--colors-purple-p3-a-1: var(--colors-purple-light-p3-a-1);--colors-purple-p3-a-2: var(--colors-purple-light-p3-a-2);--colors-purple-p3-a-3: var(--colors-purple-light-p3-a-3);--colors-purple-p3-a-4: var(--colors-purple-light-p3-a-4);--colors-purple-p3-a-5: var(--colors-purple-light-p3-a-5);--colors-purple-p3-a-6: var(--colors-purple-light-p3-a-6);--colors-purple-p3-a-7: var(--colors-purple-light-p3-a-7);--colors-purple-p3-a-8: var(--colors-purple-light-p3-a-8);--colors-purple-p3-a-9: var(--colors-purple-light-p3-a-9);--colors-purple-p3-a-10: var(--colors-purple-light-p3-a-10);--colors-purple-p3-a-11: var(--colors-purple-light-p3-a-11);--colors-purple-p3-a-12: var(--colors-purple-light-p3-a-12);--colors-red-1: var(--colors-red-light-1);--colors-red-2: var(--colors-red-light-2);--colors-red-3: var(--colors-red-light-3);--colors-red-4: var(--colors-red-light-4);--colors-red-5: var(--colors-red-light-5);--colors-red-6: var(--colors-red-light-6);--colors-red-7: var(--colors-red-light-7);--colors-red-8: var(--colors-red-light-8);--colors-red-9: var(--colors-red-light-9);--colors-red-10: var(--colors-red-light-10);--colors-red-11: var(--colors-red-light-11);--colors-red-12: var(--colors-red-light-12);--colors-red-light-1: #fffcfc;--colors-red-light-2: #fff7f7;--colors-red-light-3: #feebec;--colors-red-light-4: #ffdbdc;--colors-red-light-5: #ffcdce;--colors-red-light-6: #fdbdbe;--colors-red-light-7: #f4a9aa;--colors-red-light-8: #eb8e90;--colors-red-light-9: #e5484d;--colors-red-light-10: #dc3e42;--colors-red-light-11: #ce2c31;--colors-red-light-12: #641723;--colors-red-light-a-1: #ff000003;--colors-red-light-a-2: #ff000008;--colors-red-light-a-3: #f3000d14;--colors-red-light-a-4: #ff000824;--colors-red-light-a-5: #ff000632;--colors-red-light-a-6: #f8000442;--colors-red-light-a-7: #df000356;--colors-red-light-a-8: #d2000571;--colors-red-light-a-9: #db0007b7;--colors-red-light-a-10: #d10005c1;--colors-red-light-a-11: #c40006d3;--colors-red-light-a-12: #55000de8;--colors-red-light-p3-1: color(display-p3 .998 .989 .988);--colors-red-light-p3-2: color(display-p3 .995 .971 .971);--colors-red-light-p3-3: color(display-p3 .985 .925 .925);--colors-red-light-p3-4: color(display-p3 .999 .866 .866);--colors-red-light-p3-5: color(display-p3 .984 .812 .811);--colors-red-light-p3-6: color(display-p3 .955 .751 .749);--colors-red-light-p3-7: color(display-p3 .915 .675 .672);--colors-red-light-p3-8: color(display-p3 .872 .575 .572);--colors-red-light-p3-9: color(display-p3 .83 .329 .324);--colors-red-light-p3-10: color(display-p3 .798 .294 .285);--colors-red-light-p3-11: color(display-p3 .744 .234 .222);--colors-red-light-p3-12: color(display-p3 .36 .115 .143);--colors-red-light-p3-a-1: color(display-p3 .675 .024 .024 / .012);--colors-red-light-p3-a-2: color(display-p3 .863 .024 .024 / .028);--colors-red-light-p3-a-3: color(display-p3 .792 .008 .008 / .075);--colors-red-light-p3-a-4: color(display-p3 1 .008 .008 / .134);--colors-red-light-p3-a-5: color(display-p3 .918 .008 .008 / .189);--colors-red-light-p3-a-6: color(display-p3 .831 .02 .004 / .251);--colors-red-light-p3-a-7: color(display-p3 .741 .016 .004 / .33);--colors-red-light-p3-a-8: color(display-p3 .698 .012 .004 / .428);--colors-red-light-p3-a-9: color(display-p3 .749 .008 0 / .675);--colors-red-light-p3-a-10: color(display-p3 .714 .012 0 / .714);--colors-red-light-p3-a-11: color(display-p3 .744 .234 .222);--colors-red-light-p3-a-12: color(display-p3 .36 .115 .143);--colors-red-dark-1: #191111;--colors-red-dark-2: #201314;--colors-red-dark-3: #3b1219;--colors-red-dark-4: #500f1c;--colors-red-dark-5: #611623;--colors-red-dark-6: #72232d;--colors-red-dark-7: #8c333a;--colors-red-dark-8: #b54548;--colors-red-dark-9: #e5484d;--colors-red-dark-10: #ec5d5e;--colors-red-dark-11: #ff9592;--colors-red-dark-12: #ffd1d9;--colors-red-dark-a-1: #f4121209;--colors-red-dark-a-2: #f22f3e11;--colors-red-dark-a-3: #ff173f2d;--colors-red-dark-a-4: #fe0a3b44;--colors-red-dark-a-5: #ff204756;--colors-red-dark-a-6: #ff3e5668;--colors-red-dark-a-7: #ff536184;--colors-red-dark-a-8: #ff5d61b0;--colors-red-dark-a-9: #fe4e54e4;--colors-red-dark-a-10: #ff6465eb;--colors-red-dark-a-11: #ff9592;--colors-red-dark-a-12: #ffd1d9;--colors-red-dark-p3-1: color(display-p3 .093 .068 .067);--colors-red-dark-p3-2: color(display-p3 .118 .077 .079);--colors-red-dark-p3-3: color(display-p3 .211 .081 .099);--colors-red-dark-p3-4: color(display-p3 .287 .079 .113);--colors-red-dark-p3-5: color(display-p3 .348 .11 .142);--colors-red-dark-p3-6: color(display-p3 .414 .16 .183);--colors-red-dark-p3-7: color(display-p3 .508 .224 .236);--colors-red-dark-p3-8: color(display-p3 .659 .298 .297);--colors-red-dark-p3-9: color(display-p3 .83 .329 .324);--colors-red-dark-p3-10: color(display-p3 .861 .403 .387);--colors-red-dark-p3-11: color(display-p3 1 .57 .55);--colors-red-dark-p3-12: color(display-p3 .971 .826 .852);--colors-red-dark-p3-a-1: color(display-p3 .984 .071 .071 / .03);--colors-red-dark-p3-a-2: color(display-p3 .996 .282 .282 / .055);--colors-red-dark-p3-a-3: color(display-p3 1 .169 .271 / .156);--colors-red-dark-p3-a-4: color(display-p3 1 .118 .267 / .236);--colors-red-dark-p3-a-5: color(display-p3 1 .212 .314 / .303);--colors-red-dark-p3-a-6: color(display-p3 1 .318 .38 / .374);--colors-red-dark-p3-a-7: color(display-p3 1 .4 .424 / .475);--colors-red-dark-p3-a-8: color(display-p3 1 .431 .431 / .635);--colors-red-dark-p3-a-9: color(display-p3 1 .388 .384 / .82);--colors-red-dark-p3-a-10: color(display-p3 1 .463 .447 / .853);--colors-red-dark-p3-a-11: color(display-p3 1 .57 .55);--colors-red-dark-p3-a-12: color(display-p3 .971 .826 .852);--colors-red-a-1: var(--colors-red-light-a-1);--colors-red-a-2: var(--colors-red-light-a-2);--colors-red-a-3: var(--colors-red-light-a-3);--colors-red-a-4: var(--colors-red-light-a-4);--colors-red-a-5: var(--colors-red-light-a-5);--colors-red-a-6: var(--colors-red-light-a-6);--colors-red-a-7: var(--colors-red-light-a-7);--colors-red-a-8: var(--colors-red-light-a-8);--colors-red-a-9: var(--colors-red-light-a-9);--colors-red-a-10: var(--colors-red-light-a-10);--colors-red-a-11: var(--colors-red-light-a-11);--colors-red-a-12: var(--colors-red-light-a-12);--colors-red-p3-1: var(--colors-red-light-p3-1);--colors-red-p3-2: var(--colors-red-light-p3-2);--colors-red-p3-3: var(--colors-red-light-p3-3);--colors-red-p3-4: var(--colors-red-light-p3-4);--colors-red-p3-5: var(--colors-red-light-p3-5);--colors-red-p3-6: var(--colors-red-light-p3-6);--colors-red-p3-7: var(--colors-red-light-p3-7);--colors-red-p3-8: var(--colors-red-light-p3-8);--colors-red-p3-9: var(--colors-red-light-p3-9);--colors-red-p3-10: var(--colors-red-light-p3-10);--colors-red-p3-11: var(--colors-red-light-p3-11);--colors-red-p3-12: var(--colors-red-light-p3-12);--colors-red-p3-a-1: var(--colors-red-light-p3-a-1);--colors-red-p3-a-2: var(--colors-red-light-p3-a-2);--colors-red-p3-a-3: var(--colors-red-light-p3-a-3);--colors-red-p3-a-4: var(--colors-red-light-p3-a-4);--colors-red-p3-a-5: var(--colors-red-light-p3-a-5);--colors-red-p3-a-6: var(--colors-red-light-p3-a-6);--colors-red-p3-a-7: var(--colors-red-light-p3-a-7);--colors-red-p3-a-8: var(--colors-red-light-p3-a-8);--colors-red-p3-a-9: var(--colors-red-light-p3-a-9);--colors-red-p3-a-10: var(--colors-red-light-p3-a-10);--colors-red-p3-a-11: var(--colors-red-light-p3-a-11);--colors-red-p3-a-12: var(--colors-red-light-p3-a-12);--colors-ruby-1: var(--colors-ruby-light-1);--colors-ruby-2: var(--colors-ruby-light-2);--colors-ruby-3: var(--colors-ruby-light-3);--colors-ruby-4: var(--colors-ruby-light-4);--colors-ruby-5: var(--colors-ruby-light-5);--colors-ruby-6: var(--colors-ruby-light-6);--colors-ruby-7: var(--colors-ruby-light-7);--colors-ruby-8: var(--colors-ruby-light-8);--colors-ruby-9: var(--colors-ruby-light-9);--colors-ruby-10: var(--colors-ruby-light-10);--colors-ruby-11: var(--colors-ruby-light-11);--colors-ruby-12: var(--colors-ruby-light-12);--colors-ruby-light-1: #fffcfd;--colors-ruby-light-2: #fff7f8;--colors-ruby-light-3: #feeaed;--colors-ruby-light-4: #ffdce1;--colors-ruby-light-5: #ffced6;--colors-ruby-light-6: #f8bfc8;--colors-ruby-light-7: #efacb8;--colors-ruby-light-8: #e592a3;--colors-ruby-light-9: #e54666;--colors-ruby-light-10: #dc3b5d;--colors-ruby-light-11: #ca244d;--colors-ruby-light-12: #64172b;--colors-ruby-light-a-1: #ff005503;--colors-ruby-light-a-2: #ff002008;--colors-ruby-light-a-3: #f3002515;--colors-ruby-light-a-4: #ff002523;--colors-ruby-light-a-5: #ff002a31;--colors-ruby-light-a-6: #e4002440;--colors-ruby-light-a-7: #ce002553;--colors-ruby-light-a-8: #c300286d;--colors-ruby-light-a-9: #db002cb9;--colors-ruby-light-a-10: #d2002cc4;--colors-ruby-light-a-11: #c10030db;--colors-ruby-light-a-12: #550016e8;--colors-ruby-light-p3-1: color(display-p3 .998 .989 .992);--colors-ruby-light-p3-2: color(display-p3 .995 .971 .974);--colors-ruby-light-p3-3: color(display-p3 .983 .92 .928);--colors-ruby-light-p3-4: color(display-p3 .987 .869 .885);--colors-ruby-light-p3-5: color(display-p3 .968 .817 .839);--colors-ruby-light-p3-6: color(display-p3 .937 .758 .786);--colors-ruby-light-p3-7: color(display-p3 .897 .685 .721);--colors-ruby-light-p3-8: color(display-p3 .851 .588 .639);--colors-ruby-light-p3-9: color(display-p3 .83 .323 .408);--colors-ruby-light-p3-10: color(display-p3 .795 .286 .375);--colors-ruby-light-p3-11: color(display-p3 .728 .211 .311);--colors-ruby-light-p3-12: color(display-p3 .36 .115 .171);--colors-ruby-light-p3-a-1: color(display-p3 .675 .024 .349 / .012);--colors-ruby-light-p3-a-2: color(display-p3 .863 .024 .024 / .028);--colors-ruby-light-p3-a-3: color(display-p3 .804 .008 .11 / .079);--colors-ruby-light-p3-a-4: color(display-p3 .91 .008 .125 / .13);--colors-ruby-light-p3-a-5: color(display-p3 .831 .004 .133 / .185);--colors-ruby-light-p3-a-6: color(display-p3 .745 .004 .118 / .244);--colors-ruby-light-p3-a-7: color(display-p3 .678 .004 .114 / .314);--colors-ruby-light-p3-a-8: color(display-p3 .639 .004 .125 / .412);--colors-ruby-light-p3-a-9: color(display-p3 .753 0 .129 / .679);--colors-ruby-light-p3-a-10: color(display-p3 .714 0 .125 / .714);--colors-ruby-light-p3-a-11: color(display-p3 .728 .211 .311);--colors-ruby-light-p3-a-12: color(display-p3 .36 .115 .171);--colors-ruby-dark-1: #191113;--colors-ruby-dark-2: #1e1517;--colors-ruby-dark-3: #3a141e;--colors-ruby-dark-4: #4e1325;--colors-ruby-dark-5: #5e1a2e;--colors-ruby-dark-6: #6f2539;--colors-ruby-dark-7: #883447;--colors-ruby-dark-8: #b3445a;--colors-ruby-dark-9: #e54666;--colors-ruby-dark-10: #ec5a72;--colors-ruby-dark-11: #ff949d;--colors-ruby-dark-12: #fed2e1;--colors-ruby-dark-a-1: #f4124a09;--colors-ruby-dark-a-2: #fe5a7f0e;--colors-ruby-dark-a-3: #ff235d2c;--colors-ruby-dark-a-4: #fd195e42;--colors-ruby-dark-a-5: #fe2d6b53;--colors-ruby-dark-a-6: #ff447665;--colors-ruby-dark-a-7: #ff577d80;--colors-ruby-dark-a-8: #ff5c7cae;--colors-ruby-dark-a-9: #fe4c70e4;--colors-ruby-dark-a-10: #ff617beb;--colors-ruby-dark-a-11: #ff949d;--colors-ruby-dark-a-12: #ffd3e2fe;--colors-ruby-dark-p3-1: color(display-p3 .093 .068 .074);--colors-ruby-dark-p3-2: color(display-p3 .113 .083 .089);--colors-ruby-dark-p3-3: color(display-p3 .208 .088 .117);--colors-ruby-dark-p3-4: color(display-p3 .279 .092 .147);--colors-ruby-dark-p3-5: color(display-p3 .337 .12 .18);--colors-ruby-dark-p3-6: color(display-p3 .401 .166 .223);--colors-ruby-dark-p3-7: color(display-p3 .495 .224 .281);--colors-ruby-dark-p3-8: color(display-p3 .652 .295 .359);--colors-ruby-dark-p3-9: color(display-p3 .83 .323 .408);--colors-ruby-dark-p3-10: color(display-p3 .857 .392 .455);--colors-ruby-dark-p3-11: color(display-p3 1 .57 .59);--colors-ruby-dark-p3-12: color(display-p3 .968 .83 .88);--colors-ruby-dark-p3-a-1: color(display-p3 .984 .071 .329 / .03);--colors-ruby-dark-p3-a-2: color(display-p3 .992 .376 .529 / .051);--colors-ruby-dark-p3-a-3: color(display-p3 .996 .196 .404 / .152);--colors-ruby-dark-p3-a-4: color(display-p3 1 .173 .416 / .227);--colors-ruby-dark-p3-a-5: color(display-p3 1 .259 .459 / .29);--colors-ruby-dark-p3-a-6: color(display-p3 1 .341 .506 / .358);--colors-ruby-dark-p3-a-7: color(display-p3 1 .412 .541 / .458);--colors-ruby-dark-p3-a-8: color(display-p3 1 .431 .537 / .627);--colors-ruby-dark-p3-a-9: color(display-p3 1 .376 .482 / .82);--colors-ruby-dark-p3-a-10: color(display-p3 1 .447 .522 / .849);--colors-ruby-dark-p3-a-11: color(display-p3 1 .57 .59);--colors-ruby-dark-p3-a-12: color(display-p3 .968 .83 .88);--colors-ruby-a-1: var(--colors-ruby-light-a-1);--colors-ruby-a-2: var(--colors-ruby-light-a-2);--colors-ruby-a-3: var(--colors-ruby-light-a-3);--colors-ruby-a-4: var(--colors-ruby-light-a-4);--colors-ruby-a-5: var(--colors-ruby-light-a-5);--colors-ruby-a-6: var(--colors-ruby-light-a-6);--colors-ruby-a-7: var(--colors-ruby-light-a-7);--colors-ruby-a-8: var(--colors-ruby-light-a-8);--colors-ruby-a-9: var(--colors-ruby-light-a-9);--colors-ruby-a-10: var(--colors-ruby-light-a-10);--colors-ruby-a-11: var(--colors-ruby-light-a-11);--colors-ruby-a-12: var(--colors-ruby-light-a-12);--colors-ruby-p3-1: var(--colors-ruby-light-p3-1);--colors-ruby-p3-2: var(--colors-ruby-light-p3-2);--colors-ruby-p3-3: var(--colors-ruby-light-p3-3);--colors-ruby-p3-4: var(--colors-ruby-light-p3-4);--colors-ruby-p3-5: var(--colors-ruby-light-p3-5);--colors-ruby-p3-6: var(--colors-ruby-light-p3-6);--colors-ruby-p3-7: var(--colors-ruby-light-p3-7);--colors-ruby-p3-8: var(--colors-ruby-light-p3-8);--colors-ruby-p3-9: var(--colors-ruby-light-p3-9);--colors-ruby-p3-10: var(--colors-ruby-light-p3-10);--colors-ruby-p3-11: var(--colors-ruby-light-p3-11);--colors-ruby-p3-12: var(--colors-ruby-light-p3-12);--colors-ruby-p3-a-1: var(--colors-ruby-light-p3-a-1);--colors-ruby-p3-a-2: var(--colors-ruby-light-p3-a-2);--colors-ruby-p3-a-3: var(--colors-ruby-light-p3-a-3);--colors-ruby-p3-a-4: var(--colors-ruby-light-p3-a-4);--colors-ruby-p3-a-5: var(--colors-ruby-light-p3-a-5);--colors-ruby-p3-a-6: var(--colors-ruby-light-p3-a-6);--colors-ruby-p3-a-7: var(--colors-ruby-light-p3-a-7);--colors-ruby-p3-a-8: var(--colors-ruby-light-p3-a-8);--colors-ruby-p3-a-9: var(--colors-ruby-light-p3-a-9);--colors-ruby-p3-a-10: var(--colors-ruby-light-p3-a-10);--colors-ruby-p3-a-11: var(--colors-ruby-light-p3-a-11);--colors-ruby-p3-a-12: var(--colors-ruby-light-p3-a-12);--colors-teal-1: var(--colors-teal-light-1);--colors-teal-2: var(--colors-teal-light-2);--colors-teal-3: var(--colors-teal-light-3);--colors-teal-4: var(--colors-teal-light-4);--colors-teal-5: var(--colors-teal-light-5);--colors-teal-6: var(--colors-teal-light-6);--colors-teal-7: var(--colors-teal-light-7);--colors-teal-8: var(--colors-teal-light-8);--colors-teal-9: var(--colors-teal-light-9);--colors-teal-10: var(--colors-teal-light-10);--colors-teal-11: var(--colors-teal-light-11);--colors-teal-12: var(--colors-teal-light-12);--colors-teal-light-1: #fafefd;--colors-teal-light-2: #f3fbf9;--colors-teal-light-3: #e0f8f3;--colors-teal-light-4: #ccf3ea;--colors-teal-light-5: #b8eae0;--colors-teal-light-6: #a1ded2;--colors-teal-light-7: #83cdc1;--colors-teal-light-8: #53b9ab;--colors-teal-light-9: #12a594;--colors-teal-light-10: #0d9b8a;--colors-teal-light-11: #008573;--colors-teal-light-12: #0d3d38;--colors-teal-light-a-1: #00cc9905;--colors-teal-light-a-2: #00aa800c;--colors-teal-light-a-3: #00c69d1f;--colors-teal-light-a-4: #00c39633;--colors-teal-light-a-5: #00b49047;--colors-teal-light-a-6: #00a6855e;--colors-teal-light-a-7: #0099807c;--colors-teal-light-a-8: #009783ac;--colors-teal-light-a-9: #009e8ced;--colors-teal-light-a-10: #009684f2;--colors-teal-light-a-11: #008573;--colors-teal-light-a-12: #00332df2;--colors-teal-light-p3-1: color(display-p3 .983 .996 .992);--colors-teal-light-p3-2: color(display-p3 .958 .983 .976);--colors-teal-light-p3-3: color(display-p3 .895 .971 .952);--colors-teal-light-p3-4: color(display-p3 .831 .949 .92);--colors-teal-light-p3-5: color(display-p3 .761 .914 .878);--colors-teal-light-p3-6: color(display-p3 .682 .864 .825);--colors-teal-light-p3-7: color(display-p3 .581 .798 .756);--colors-teal-light-p3-8: color(display-p3 .433 .716 .671);--colors-teal-light-p3-9: color(display-p3 .297 .637 .581);--colors-teal-light-p3-10: color(display-p3 .275 .599 .542);--colors-teal-light-p3-11: color(display-p3 .08 .5 .43);--colors-teal-light-p3-12: color(display-p3 .11 .235 .219);--colors-teal-light-p3-a-1: color(display-p3 .024 .757 .514 / .016);--colors-teal-light-p3-a-2: color(display-p3 .02 .647 .467 / .044);--colors-teal-light-p3-a-3: color(display-p3 .004 .741 .557 / .106);--colors-teal-light-p3-a-4: color(display-p3 .004 .702 .537 / .169);--colors-teal-light-p3-a-5: color(display-p3 .004 .643 .494 / .24);--colors-teal-light-p3-a-6: color(display-p3 .004 .569 .447 / .318);--colors-teal-light-p3-a-7: color(display-p3 .004 .518 .424 / .42);--colors-teal-light-p3-a-8: color(display-p3 0 .506 .424 / .569);--colors-teal-light-p3-a-9: color(display-p3 0 .482 .404 / .702);--colors-teal-light-p3-a-10: color(display-p3 0 .451 .369 / .726);--colors-teal-light-p3-a-11: color(display-p3 .08 .5 .43);--colors-teal-light-p3-a-12: color(display-p3 .11 .235 .219);--colors-teal-dark-1: #0d1514;--colors-teal-dark-2: #111c1b;--colors-teal-dark-3: #0d2d2a;--colors-teal-dark-4: #023b37;--colors-teal-dark-5: #084843;--colors-teal-dark-6: #145750;--colors-teal-dark-7: #1c6961;--colors-teal-dark-8: #207e73;--colors-teal-dark-9: #12a594;--colors-teal-dark-10: #0eb39e;--colors-teal-dark-11: #0bd8b6;--colors-teal-dark-12: #adf0dd;--colors-teal-dark-a-1: #00deab05;--colors-teal-dark-a-2: #12fbe60c;--colors-teal-dark-a-3: #00ffe61e;--colors-teal-dark-a-4: #00ffe92d;--colors-teal-dark-a-5: #00ffea3b;--colors-teal-dark-a-6: #1cffe84b;--colors-teal-dark-a-7: #2efde85f;--colors-teal-dark-a-8: #32ffe775;--colors-teal-dark-a-9: #13ffe49f;--colors-teal-dark-a-10: #0dffe0ae;--colors-teal-dark-a-11: #0afed5d6;--colors-teal-dark-a-12: #b8ffebef;--colors-teal-dark-p3-1: color(display-p3 .059 .083 .079);--colors-teal-dark-p3-2: color(display-p3 .075 .11 .107);--colors-teal-dark-p3-3: color(display-p3 .087 .175 .165);--colors-teal-dark-p3-4: color(display-p3 .087 .227 .214);--colors-teal-dark-p3-5: color(display-p3 .12 .277 .261);--colors-teal-dark-p3-6: color(display-p3 .162 .335 .314);--colors-teal-dark-p3-7: color(display-p3 .205 .406 .379);--colors-teal-dark-p3-8: color(display-p3 .245 .489 .453);--colors-teal-dark-p3-9: color(display-p3 .297 .637 .581);--colors-teal-dark-p3-10: color(display-p3 .319 .69 .62);--colors-teal-dark-p3-11: color(display-p3 .388 .835 .719);--colors-teal-dark-p3-12: color(display-p3 .734 .934 .87);--colors-teal-dark-p3-a-1: color(display-p3 0 .992 .761 / .017);--colors-teal-dark-p3-a-2: color(display-p3 .235 .988 .902 / .047);--colors-teal-dark-p3-a-3: color(display-p3 .235 1 .898 / .118);--colors-teal-dark-p3-a-4: color(display-p3 .18 .996 .929 / .173);--colors-teal-dark-p3-a-5: color(display-p3 .31 1 .933 / .227);--colors-teal-dark-p3-a-6: color(display-p3 .396 1 .933 / .286);--colors-teal-dark-p3-a-7: color(display-p3 .443 1 .925 / .366);--colors-teal-dark-p3-a-8: color(display-p3 .459 1 .925 / .454);--colors-teal-dark-p3-a-9: color(display-p3 .443 .996 .906 / .61);--colors-teal-dark-p3-a-10: color(display-p3 .439 .996 .89 / .669);--colors-teal-dark-p3-a-11: color(display-p3 .388 .835 .719);--colors-teal-dark-p3-a-12: color(display-p3 .734 .934 .87);--colors-teal-a-1: var(--colors-teal-light-a-1);--colors-teal-a-2: var(--colors-teal-light-a-2);--colors-teal-a-3: var(--colors-teal-light-a-3);--colors-teal-a-4: var(--colors-teal-light-a-4);--colors-teal-a-5: var(--colors-teal-light-a-5);--colors-teal-a-6: var(--colors-teal-light-a-6);--colors-teal-a-7: var(--colors-teal-light-a-7);--colors-teal-a-8: var(--colors-teal-light-a-8);--colors-teal-a-9: var(--colors-teal-light-a-9);--colors-teal-a-10: var(--colors-teal-light-a-10);--colors-teal-a-11: var(--colors-teal-light-a-11);--colors-teal-a-12: var(--colors-teal-light-a-12);--colors-teal-p3-1: var(--colors-teal-light-p3-1);--colors-teal-p3-2: var(--colors-teal-light-p3-2);--colors-teal-p3-3: var(--colors-teal-light-p3-3);--colors-teal-p3-4: var(--colors-teal-light-p3-4);--colors-teal-p3-5: var(--colors-teal-light-p3-5);--colors-teal-p3-6: var(--colors-teal-light-p3-6);--colors-teal-p3-7: var(--colors-teal-light-p3-7);--colors-teal-p3-8: var(--colors-teal-light-p3-8);--colors-teal-p3-9: var(--colors-teal-light-p3-9);--colors-teal-p3-10: var(--colors-teal-light-p3-10);--colors-teal-p3-11: var(--colors-teal-light-p3-11);--colors-teal-p3-12: var(--colors-teal-light-p3-12);--colors-teal-p3-a-1: var(--colors-teal-light-p3-a-1);--colors-teal-p3-a-2: var(--colors-teal-light-p3-a-2);--colors-teal-p3-a-3: var(--colors-teal-light-p3-a-3);--colors-teal-p3-a-4: var(--colors-teal-light-p3-a-4);--colors-teal-p3-a-5: var(--colors-teal-light-p3-a-5);--colors-teal-p3-a-6: var(--colors-teal-light-p3-a-6);--colors-teal-p3-a-7: var(--colors-teal-light-p3-a-7);--colors-teal-p3-a-8: var(--colors-teal-light-p3-a-8);--colors-teal-p3-a-9: var(--colors-teal-light-p3-a-9);--colors-teal-p3-a-10: var(--colors-teal-light-p3-a-10);--colors-teal-p3-a-11: var(--colors-teal-light-p3-a-11);--colors-teal-p3-a-12: var(--colors-teal-light-p3-a-12);--colors-tomato-1: var(--colors-tomato-light-1);--colors-tomato-2: var(--colors-tomato-light-2);--colors-tomato-3: var(--colors-tomato-light-3);--colors-tomato-4: var(--colors-tomato-light-4);--colors-tomato-5: var(--colors-tomato-light-5);--colors-tomato-6: var(--colors-tomato-light-6);--colors-tomato-7: var(--colors-tomato-light-7);--colors-tomato-8: var(--colors-tomato-light-8);--colors-tomato-9: var(--colors-tomato-light-9);--colors-tomato-10: var(--colors-tomato-light-10);--colors-tomato-11: var(--colors-tomato-light-11);--colors-tomato-12: var(--colors-tomato-light-12);--colors-tomato-light-1: #fffcfc;--colors-tomato-light-2: #fff8f7;--colors-tomato-light-3: #feebe7;--colors-tomato-light-4: #ffdcd3;--colors-tomato-light-5: #ffcdc2;--colors-tomato-light-6: #fdbdaf;--colors-tomato-light-7: #f5a898;--colors-tomato-light-8: #ec8e7b;--colors-tomato-light-9: #e54d2e;--colors-tomato-light-10: #dd4425;--colors-tomato-light-11: #d13415;--colors-tomato-light-12: #5c271f;--colors-tomato-light-a-1: #ff000003;--colors-tomato-light-a-2: #ff200008;--colors-tomato-light-a-3: #f52b0018;--colors-tomato-light-a-4: #ff35002c;--colors-tomato-light-a-5: #ff2e003d;--colors-tomato-light-a-6: #f92d0050;--colors-tomato-light-a-7: #e7280067;--colors-tomato-light-a-8: #db250084;--colors-tomato-light-a-9: #df2600d1;--colors-tomato-light-a-10: #d72400da;--colors-tomato-light-a-11: #cd2200ea;--colors-tomato-light-a-12: #460900e0;--colors-tomato-light-p3-1: color(display-p3 .998 .989 .988);--colors-tomato-light-p3-2: color(display-p3 .994 .974 .969);--colors-tomato-light-p3-3: color(display-p3 .985 .924 .909);--colors-tomato-light-p3-4: color(display-p3 .996 .868 .835);--colors-tomato-light-p3-5: color(display-p3 .98 .812 .77);--colors-tomato-light-p3-6: color(display-p3 .953 .75 .698);--colors-tomato-light-p3-7: color(display-p3 .917 .673 .611);--colors-tomato-light-p3-8: color(display-p3 .875 .575 .502);--colors-tomato-light-p3-9: color(display-p3 .831 .345 .231);--colors-tomato-light-p3-10: color(display-p3 .802 .313 .2);--colors-tomato-light-p3-11: color(display-p3 .755 .259 .152);--colors-tomato-light-p3-12: color(display-p3 .335 .165 .132);--colors-tomato-light-p3-a-1: color(display-p3 .675 .024 .024 / .012);--colors-tomato-light-p3-a-2: color(display-p3 .757 .145 .02 / .032);--colors-tomato-light-p3-a-3: color(display-p3 .831 .184 .012 / .091);--colors-tomato-light-p3-a-4: color(display-p3 .976 .192 .004 / .165);--colors-tomato-light-p3-a-5: color(display-p3 .918 .192 .004 / .232);--colors-tomato-light-p3-a-6: color(display-p3 .847 .173 .004 / .302);--colors-tomato-light-p3-a-7: color(display-p3 .788 .165 .004 / .389);--colors-tomato-light-p3-a-8: color(display-p3 .749 .153 .004 / .499);--colors-tomato-light-p3-a-9: color(display-p3 .78 .149 0 / .769);--colors-tomato-light-p3-a-10: color(display-p3 .757 .141 0 / .8);--colors-tomato-light-p3-a-11: color(display-p3 .755 .259 .152);--colors-tomato-light-p3-a-12: color(display-p3 .335 .165 .132);--colors-tomato-dark-1: #181111;--colors-tomato-dark-2: #1f1513;--colors-tomato-dark-3: #391714;--colors-tomato-dark-4: #4e1511;--colors-tomato-dark-5: #5e1c16;--colors-tomato-dark-6: #6e2920;--colors-tomato-dark-7: #853a2d;--colors-tomato-dark-8: #ac4d39;--colors-tomato-dark-9: #e54d2e;--colors-tomato-dark-10: #ec6142;--colors-tomato-dark-11: #ff977d;--colors-tomato-dark-12: #fbd3cb;--colors-tomato-dark-a-1: #f1121208;--colors-tomato-dark-a-2: #ff55330f;--colors-tomato-dark-a-3: #ff35232b;--colors-tomato-dark-a-4: #fd201142;--colors-tomato-dark-a-5: #fe332153;--colors-tomato-dark-a-6: #ff4f3864;--colors-tomato-dark-a-7: #fd644a7d;--colors-tomato-dark-a-8: #fe6d4ea7;--colors-tomato-dark-a-9: #fe5431e4;--colors-tomato-dark-a-10: #ff6847eb;--colors-tomato-dark-a-11: #ff977d;--colors-tomato-dark-a-12: #ffd6cefb;--colors-tomato-dark-p3-1: color(display-p3 .09 .068 .067);--colors-tomato-dark-p3-2: color(display-p3 .115 .084 .076);--colors-tomato-dark-p3-3: color(display-p3 .205 .097 .083);--colors-tomato-dark-p3-4: color(display-p3 .282 .099 .077);--colors-tomato-dark-p3-5: color(display-p3 .339 .129 .101);--colors-tomato-dark-p3-6: color(display-p3 .398 .179 .141);--colors-tomato-dark-p3-7: color(display-p3 .487 .245 .194);--colors-tomato-dark-p3-8: color(display-p3 .629 .322 .248);--colors-tomato-dark-p3-9: color(display-p3 .831 .345 .231);--colors-tomato-dark-p3-10: color(display-p3 .862 .415 .298);--colors-tomato-dark-p3-11: color(display-p3 1 .585 .455);--colors-tomato-dark-p3-12: color(display-p3 .959 .833 .802);--colors-tomato-dark-p3-a-1: color(display-p3 .973 .071 .071 / .026);--colors-tomato-dark-p3-a-2: color(display-p3 .992 .376 .224 / .051);--colors-tomato-dark-p3-a-3: color(display-p3 .996 .282 .176 / .148);--colors-tomato-dark-p3-a-4: color(display-p3 1 .204 .118 / .232);--colors-tomato-dark-p3-a-5: color(display-p3 1 .286 .192 / .29);--colors-tomato-dark-p3-a-6: color(display-p3 1 .392 .278 / .353);--colors-tomato-dark-p3-a-7: color(display-p3 1 .459 .349 / .45);--colors-tomato-dark-p3-a-8: color(display-p3 1 .49 .369 / .601);--colors-tomato-dark-p3-a-9: color(display-p3 1 .408 .267 / .82);--colors-tomato-dark-p3-a-10: color(display-p3 1 .478 .341 / .853);--colors-tomato-dark-p3-a-11: color(display-p3 1 .585 .455);--colors-tomato-dark-p3-a-12: color(display-p3 .959 .833 .802);--colors-tomato-a-1: var(--colors-tomato-light-a-1);--colors-tomato-a-2: var(--colors-tomato-light-a-2);--colors-tomato-a-3: var(--colors-tomato-light-a-3);--colors-tomato-a-4: var(--colors-tomato-light-a-4);--colors-tomato-a-5: var(--colors-tomato-light-a-5);--colors-tomato-a-6: var(--colors-tomato-light-a-6);--colors-tomato-a-7: var(--colors-tomato-light-a-7);--colors-tomato-a-8: var(--colors-tomato-light-a-8);--colors-tomato-a-9: var(--colors-tomato-light-a-9);--colors-tomato-a-10: var(--colors-tomato-light-a-10);--colors-tomato-a-11: var(--colors-tomato-light-a-11);--colors-tomato-a-12: var(--colors-tomato-light-a-12);--colors-tomato-p3-1: var(--colors-tomato-light-p3-1);--colors-tomato-p3-2: var(--colors-tomato-light-p3-2);--colors-tomato-p3-3: var(--colors-tomato-light-p3-3);--colors-tomato-p3-4: var(--colors-tomato-light-p3-4);--colors-tomato-p3-5: var(--colors-tomato-light-p3-5);--colors-tomato-p3-6: var(--colors-tomato-light-p3-6);--colors-tomato-p3-7: var(--colors-tomato-light-p3-7);--colors-tomato-p3-8: var(--colors-tomato-light-p3-8);--colors-tomato-p3-9: var(--colors-tomato-light-p3-9);--colors-tomato-p3-10: var(--colors-tomato-light-p3-10);--colors-tomato-p3-11: var(--colors-tomato-light-p3-11);--colors-tomato-p3-12: var(--colors-tomato-light-p3-12);--colors-tomato-p3-a-1: var(--colors-tomato-light-p3-a-1);--colors-tomato-p3-a-2: var(--colors-tomato-light-p3-a-2);--colors-tomato-p3-a-3: var(--colors-tomato-light-p3-a-3);--colors-tomato-p3-a-4: var(--colors-tomato-light-p3-a-4);--colors-tomato-p3-a-5: var(--colors-tomato-light-p3-a-5);--colors-tomato-p3-a-6: var(--colors-tomato-light-p3-a-6);--colors-tomato-p3-a-7: var(--colors-tomato-light-p3-a-7);--colors-tomato-p3-a-8: var(--colors-tomato-light-p3-a-8);--colors-tomato-p3-a-9: var(--colors-tomato-light-p3-a-9);--colors-tomato-p3-a-10: var(--colors-tomato-light-p3-a-10);--colors-tomato-p3-a-11: var(--colors-tomato-light-p3-a-11);--colors-tomato-p3-a-12: var(--colors-tomato-light-p3-a-12);--colors-violet-1: var(--colors-violet-light-1);--colors-violet-2: var(--colors-violet-light-2);--colors-violet-3: var(--colors-violet-light-3);--colors-violet-4: var(--colors-violet-light-4);--colors-violet-5: var(--colors-violet-light-5);--colors-violet-6: var(--colors-violet-light-6);--colors-violet-7: var(--colors-violet-light-7);--colors-violet-8: var(--colors-violet-light-8);--colors-violet-9: var(--colors-violet-light-9);--colors-violet-10: var(--colors-violet-light-10);--colors-violet-11: var(--colors-violet-light-11);--colors-violet-12: var(--colors-violet-light-12);--colors-violet-light-1: #fdfcfe;--colors-violet-light-2: #faf8ff;--colors-violet-light-3: #f4f0fe;--colors-violet-light-4: #ebe4ff;--colors-violet-light-5: #e1d9ff;--colors-violet-light-6: #d4cafe;--colors-violet-light-7: #c2b5f5;--colors-violet-light-8: #aa99ec;--colors-violet-light-9: #6e56cf;--colors-violet-light-10: #654dc4;--colors-violet-light-11: #6550b9;--colors-violet-light-12: #2f265f;--colors-violet-light-a-1: #5500aa03;--colors-violet-light-a-2: #4900ff07;--colors-violet-light-a-3: #4400ee0f;--colors-violet-light-a-4: #4300ff1b;--colors-violet-light-a-5: #3600ff26;--colors-violet-light-a-6: #3100fb35;--colors-violet-light-a-7: #2d01dd4a;--colors-violet-light-a-8: #2b00d066;--colors-violet-light-a-9: #2400b7a9;--colors-violet-light-a-10: #2300abb2;--colors-violet-light-a-11: #1f0099af;--colors-violet-light-a-12: #0b0043d9;--colors-violet-light-p3-1: color(display-p3 .991 .988 .995);--colors-violet-light-p3-2: color(display-p3 .978 .974 .998);--colors-violet-light-p3-3: color(display-p3 .953 .943 .993);--colors-violet-light-p3-4: color(display-p3 .916 .897 1);--colors-violet-light-p3-5: color(display-p3 .876 .851 1);--colors-violet-light-p3-6: color(display-p3 .825 .793 .981);--colors-violet-light-p3-7: color(display-p3 .752 .712 .943);--colors-violet-light-p3-8: color(display-p3 .654 .602 .902);--colors-violet-light-p3-9: color(display-p3 .417 .341 .784);--colors-violet-light-p3-10: color(display-p3 .381 .306 .741);--colors-violet-light-p3-11: color(display-p3 .383 .317 .702);--colors-violet-light-p3-12: color(display-p3 .179 .15 .359);--colors-violet-light-p3-a-1: color(display-p3 .349 .024 .675 / .012);--colors-violet-light-p3-a-2: color(display-p3 .161 .024 .863 / .028);--colors-violet-light-p3-a-3: color(display-p3 .204 .004 .871 / .059);--colors-violet-light-p3-a-4: color(display-p3 .196 .004 1 / .102);--colors-violet-light-p3-a-5: color(display-p3 .165 .008 1 / .15);--colors-violet-light-p3-a-6: color(display-p3 .153 .004 .906 / .208);--colors-violet-light-p3-a-7: color(display-p3 .141 .004 .796 / .287);--colors-violet-light-p3-a-8: color(display-p3 .133 .004 .753 / .397);--colors-violet-light-p3-a-9: color(display-p3 .114 0 .675 / .659);--colors-violet-light-p3-a-10: color(display-p3 .11 0 .627 / .695);--colors-violet-light-p3-a-11: color(display-p3 .383 .317 .702);--colors-violet-light-p3-a-12: color(display-p3 .179 .15 .359);--colors-violet-dark-1: #14121f;--colors-violet-dark-2: #1b1525;--colors-violet-dark-3: #291f43;--colors-violet-dark-4: #33255b;--colors-violet-dark-5: #3c2e69;--colors-violet-dark-6: #473876;--colors-violet-dark-7: #56468b;--colors-violet-dark-8: #6958ad;--colors-violet-dark-9: #6e56cf;--colors-violet-dark-10: #7d66d9;--colors-violet-dark-11: #baa7ff;--colors-violet-dark-12: #e2ddfe;--colors-violet-dark-a-1: #4422ff0f;--colors-violet-dark-a-2: #853ff916;--colors-violet-dark-a-3: #8354fe36;--colors-violet-dark-a-4: #7d51fd50;--colors-violet-dark-a-5: #845ffd5f;--colors-violet-dark-a-6: #8f6cfd6d;--colors-violet-dark-a-7: #9879ff83;--colors-violet-dark-a-8: #977dfea8;--colors-violet-dark-a-9: #8668ffcc;--colors-violet-dark-a-10: #9176fed7;--colors-violet-dark-a-11: #baa7ff;--colors-violet-dark-a-12: #e3defffe;--colors-violet-dark-p3-1: color(display-p3 .077 .071 .118);--colors-violet-dark-p3-2: color(display-p3 .101 .084 .141);--colors-violet-dark-p3-3: color(display-p3 .154 .123 .256);--colors-violet-dark-p3-4: color(display-p3 .191 .148 .345);--colors-violet-dark-p3-5: color(display-p3 .226 .182 .396);--colors-violet-dark-p3-6: color(display-p3 .269 .223 .449);--colors-violet-dark-p3-7: color(display-p3 .326 .277 .53);--colors-violet-dark-p3-8: color(display-p3 .399 .346 .656);--colors-violet-dark-p3-9: color(display-p3 .417 .341 .784);--colors-violet-dark-p3-10: color(display-p3 .477 .402 .823);--colors-violet-dark-p3-11: color(display-p3 .72 .65 1);--colors-violet-dark-p3-12: color(display-p3 .883 .867 .986);--colors-violet-dark-p3-a-1: color(display-p3 .282 .141 .996 / .055);--colors-violet-dark-p3-a-2: color(display-p3 .51 .263 1 / .08);--colors-violet-dark-p3-a-3: color(display-p3 .494 .337 .996 / .202);--colors-violet-dark-p3-a-4: color(display-p3 .49 .345 1 / .299);--colors-violet-dark-p3-a-5: color(display-p3 .525 .392 1 / .353);--colors-violet-dark-p3-a-6: color(display-p3 .569 .455 1 / .408);--colors-violet-dark-p3-a-7: color(display-p3 .588 .494 1 / .496);--colors-violet-dark-p3-a-8: color(display-p3 .596 .51 1 / .631);--colors-violet-dark-p3-a-9: color(display-p3 .522 .424 1 / .769);--colors-violet-dark-p3-a-10: color(display-p3 .576 .482 1 / .811);--colors-violet-dark-p3-a-11: color(display-p3 .72 .65 1);--colors-violet-dark-p3-a-12: color(display-p3 .883 .867 .986);--colors-violet-a-1: var(--colors-violet-light-a-1);--colors-violet-a-2: var(--colors-violet-light-a-2);--colors-violet-a-3: var(--colors-violet-light-a-3);--colors-violet-a-4: var(--colors-violet-light-a-4);--colors-violet-a-5: var(--colors-violet-light-a-5);--colors-violet-a-6: var(--colors-violet-light-a-6);--colors-violet-a-7: var(--colors-violet-light-a-7);--colors-violet-a-8: var(--colors-violet-light-a-8);--colors-violet-a-9: var(--colors-violet-light-a-9);--colors-violet-a-10: var(--colors-violet-light-a-10);--colors-violet-a-11: var(--colors-violet-light-a-11);--colors-violet-a-12: var(--colors-violet-light-a-12);--colors-violet-p3-1: var(--colors-violet-light-p3-1);--colors-violet-p3-2: var(--colors-violet-light-p3-2);--colors-violet-p3-3: var(--colors-violet-light-p3-3);--colors-violet-p3-4: var(--colors-violet-light-p3-4);--colors-violet-p3-5: var(--colors-violet-light-p3-5);--colors-violet-p3-6: var(--colors-violet-light-p3-6);--colors-violet-p3-7: var(--colors-violet-light-p3-7);--colors-violet-p3-8: var(--colors-violet-light-p3-8);--colors-violet-p3-9: var(--colors-violet-light-p3-9);--colors-violet-p3-10: var(--colors-violet-light-p3-10);--colors-violet-p3-11: var(--colors-violet-light-p3-11);--colors-violet-p3-12: var(--colors-violet-light-p3-12);--colors-violet-p3-a-1: var(--colors-violet-light-p3-a-1);--colors-violet-p3-a-2: var(--colors-violet-light-p3-a-2);--colors-violet-p3-a-3: var(--colors-violet-light-p3-a-3);--colors-violet-p3-a-4: var(--colors-violet-light-p3-a-4);--colors-violet-p3-a-5: var(--colors-violet-light-p3-a-5);--colors-violet-p3-a-6: var(--colors-violet-light-p3-a-6);--colors-violet-p3-a-7: var(--colors-violet-light-p3-a-7);--colors-violet-p3-a-8: var(--colors-violet-light-p3-a-8);--colors-violet-p3-a-9: var(--colors-violet-light-p3-a-9);--colors-violet-p3-a-10: var(--colors-violet-light-p3-a-10);--colors-violet-p3-a-11: var(--colors-violet-light-p3-a-11);--colors-violet-p3-a-12: var(--colors-violet-light-p3-a-12);--colors-yellow-1: var(--colors-yellow-light-1);--colors-yellow-2: var(--colors-yellow-light-2);--colors-yellow-3: var(--colors-yellow-light-3);--colors-yellow-4: var(--colors-yellow-light-4);--colors-yellow-5: var(--colors-yellow-light-5);--colors-yellow-6: var(--colors-yellow-light-6);--colors-yellow-7: var(--colors-yellow-light-7);--colors-yellow-8: var(--colors-yellow-light-8);--colors-yellow-9: var(--colors-yellow-light-9);--colors-yellow-10: var(--colors-yellow-light-10);--colors-yellow-11: var(--colors-yellow-light-11);--colors-yellow-12: var(--colors-yellow-light-12);--colors-yellow-light-1: #fdfdf9;--colors-yellow-light-2: #fefce9;--colors-yellow-light-3: #fffab8;--colors-yellow-light-4: #fff394;--colors-yellow-light-5: #ffe770;--colors-yellow-light-6: #f3d768;--colors-yellow-light-7: #e4c767;--colors-yellow-light-8: #d5ae39;--colors-yellow-light-9: #ffe629;--colors-yellow-light-10: #ffdc00;--colors-yellow-light-11: #9e6c00;--colors-yellow-light-12: #473b1f;--colors-yellow-light-a-1: #aaaa0006;--colors-yellow-light-a-2: #f4dd0016;--colors-yellow-light-a-3: #ffee0047;--colors-yellow-light-a-4: #ffe3016b;--colors-yellow-light-a-5: #ffd5008f;--colors-yellow-light-a-6: #ebbc0097;--colors-yellow-light-a-7: #d2a10098;--colors-yellow-light-a-8: #c99700c6;--colors-yellow-light-a-9: #ffe100d6;--colors-yellow-light-a-10: #ffdc00;--colors-yellow-light-a-11: #9e6c00;--colors-yellow-light-a-12: #2e2000e0;--colors-yellow-light-p3-1: color(display-p3 .992 .992 .978);--colors-yellow-light-p3-2: color(display-p3 .995 .99 .922);--colors-yellow-light-p3-3: color(display-p3 .997 .982 .749);--colors-yellow-light-p3-4: color(display-p3 .992 .953 .627);--colors-yellow-light-p3-5: color(display-p3 .984 .91 .51);--colors-yellow-light-p3-6: color(display-p3 .934 .847 .474);--colors-yellow-light-p3-7: color(display-p3 .876 .785 .46);--colors-yellow-light-p3-8: color(display-p3 .811 .689 .313);--colors-yellow-light-p3-9: color(display-p3 1 .92 .22);--colors-yellow-light-p3-10: color(display-p3 .977 .868 .291);--colors-yellow-light-p3-11: color(display-p3 .6 .44 0);--colors-yellow-light-p3-12: color(display-p3 .271 .233 .137);--colors-yellow-light-p3-a-1: color(display-p3 .675 .675 .024 / .024);--colors-yellow-light-p3-a-2: color(display-p3 .953 .855 .008 / .079);--colors-yellow-light-p3-a-3: color(display-p3 .988 .925 .004 / .251);--colors-yellow-light-p3-a-4: color(display-p3 .98 .875 .004 / .373);--colors-yellow-light-p3-a-5: color(display-p3 .969 .816 .004 / .491);--colors-yellow-light-p3-a-6: color(display-p3 .875 .71 0 / .526);--colors-yellow-light-p3-a-7: color(display-p3 .769 .604 0 / .542);--colors-yellow-light-p3-a-8: color(display-p3 .725 .549 0 / .687);--colors-yellow-light-p3-a-9: color(display-p3 1 .898 0 / .781);--colors-yellow-light-p3-a-10: color(display-p3 .969 .812 0 / .71);--colors-yellow-light-p3-a-11: color(display-p3 .6 .44 0);--colors-yellow-light-p3-a-12: color(display-p3 .271 .233 .137);--colors-yellow-dark-1: #14120b;--colors-yellow-dark-2: #1b180f;--colors-yellow-dark-3: #2d2305;--colors-yellow-dark-4: #362b00;--colors-yellow-dark-5: #433500;--colors-yellow-dark-6: #524202;--colors-yellow-dark-7: #665417;--colors-yellow-dark-8: #836a21;--colors-yellow-dark-9: #ffe629;--colors-yellow-dark-10: #ffff57;--colors-yellow-dark-11: #f5e147;--colors-yellow-dark-12: #f6eeb4;--colors-yellow-dark-a-1: #d1510004;--colors-yellow-dark-a-2: #f9b4000b;--colors-yellow-dark-a-3: #ffaa001e;--colors-yellow-dark-a-4: #fdb70028;--colors-yellow-dark-a-5: #febb0036;--colors-yellow-dark-a-6: #fec40046;--colors-yellow-dark-a-7: #fdcb225c;--colors-yellow-dark-a-8: #fdca327b;--colors-yellow-dark-a-9: #ffe629;--colors-yellow-dark-a-10: #ffff57;--colors-yellow-dark-a-11: #fee949f5;--colors-yellow-dark-a-12: #fef6baf6;--colors-yellow-dark-p3-1: color(display-p3 .078 .069 .047);--colors-yellow-dark-p3-2: color(display-p3 .103 .094 .063);--colors-yellow-dark-p3-3: color(display-p3 .168 .137 .039);--colors-yellow-dark-p3-4: color(display-p3 .209 .169 0);--colors-yellow-dark-p3-5: color(display-p3 .255 .209 0);--colors-yellow-dark-p3-6: color(display-p3 .31 .261 .07);--colors-yellow-dark-p3-7: color(display-p3 .389 .331 .135);--colors-yellow-dark-p3-8: color(display-p3 .497 .42 .182);--colors-yellow-dark-p3-9: color(display-p3 1 .92 .22);--colors-yellow-dark-p3-10: color(display-p3 1 1 .456);--colors-yellow-dark-p3-11: color(display-p3 .948 .885 .392);--colors-yellow-dark-p3-12: color(display-p3 .959 .934 .731);--colors-yellow-dark-p3-a-1: color(display-p3 .973 .369 0 / .013);--colors-yellow-dark-p3-a-2: color(display-p3 .996 .792 0 / .038);--colors-yellow-dark-p3-a-3: color(display-p3 .996 .71 0 / .11);--colors-yellow-dark-p3-a-4: color(display-p3 .996 .741 0 / .152);--colors-yellow-dark-p3-a-5: color(display-p3 .996 .765 0 / .202);--colors-yellow-dark-p3-a-6: color(display-p3 .996 .816 .082 / .261);--colors-yellow-dark-p3-a-7: color(display-p3 1 .831 .263 / .345);--colors-yellow-dark-p3-a-8: color(display-p3 1 .831 .314 / .463);--colors-yellow-dark-p3-a-9: color(display-p3 1 .922 .22);--colors-yellow-dark-p3-a-10: color(display-p3 1 1 .455);--colors-yellow-dark-p3-a-11: color(display-p3 .948 .885 .392);--colors-yellow-dark-p3-a-12: color(display-p3 .959 .934 .731);--colors-yellow-a-1: var(--colors-yellow-light-a-1);--colors-yellow-a-2: var(--colors-yellow-light-a-2);--colors-yellow-a-3: var(--colors-yellow-light-a-3);--colors-yellow-a-4: var(--colors-yellow-light-a-4);--colors-yellow-a-5: var(--colors-yellow-light-a-5);--colors-yellow-a-6: var(--colors-yellow-light-a-6);--colors-yellow-a-7: var(--colors-yellow-light-a-7);--colors-yellow-a-8: var(--colors-yellow-light-a-8);--colors-yellow-a-9: var(--colors-yellow-light-a-9);--colors-yellow-a-10: var(--colors-yellow-light-a-10);--colors-yellow-a-11: var(--colors-yellow-light-a-11);--colors-yellow-a-12: var(--colors-yellow-light-a-12);--colors-yellow-p3-1: var(--colors-yellow-light-p3-1);--colors-yellow-p3-2: var(--colors-yellow-light-p3-2);--colors-yellow-p3-3: var(--colors-yellow-light-p3-3);--colors-yellow-p3-4: var(--colors-yellow-light-p3-4);--colors-yellow-p3-5: var(--colors-yellow-light-p3-5);--colors-yellow-p3-6: var(--colors-yellow-light-p3-6);--colors-yellow-p3-7: var(--colors-yellow-light-p3-7);--colors-yellow-p3-8: var(--colors-yellow-light-p3-8);--colors-yellow-p3-9: var(--colors-yellow-light-p3-9);--colors-yellow-p3-10: var(--colors-yellow-light-p3-10);--colors-yellow-p3-11: var(--colors-yellow-light-p3-11);--colors-yellow-p3-12: var(--colors-yellow-light-p3-12);--colors-yellow-p3-a-1: var(--colors-yellow-light-p3-a-1);--colors-yellow-p3-a-2: var(--colors-yellow-light-p3-a-2);--colors-yellow-p3-a-3: var(--colors-yellow-light-p3-a-3);--colors-yellow-p3-a-4: var(--colors-yellow-light-p3-a-4);--colors-yellow-p3-a-5: var(--colors-yellow-light-p3-a-5);--colors-yellow-p3-a-6: var(--colors-yellow-light-p3-a-6);--colors-yellow-p3-a-7: var(--colors-yellow-light-p3-a-7);--colors-yellow-p3-a-8: var(--colors-yellow-light-p3-a-8);--colors-yellow-p3-a-9: var(--colors-yellow-light-p3-a-9);--colors-yellow-p3-a-10: var(--colors-yellow-light-p3-a-10);--colors-yellow-p3-a-11: var(--colors-yellow-light-p3-a-11);--colors-yellow-p3-a-12: var(--colors-yellow-light-p3-a-12);--colors-text: var(--mantine-color-text);--colors-text-dimmed: var(--mantine-color-dimmed);--colors-likec4-background: var(--mantine-color-body);--colors-likec4-tag-bg: var(--colors-tomato-9);--colors-likec4-tag-bg-hover: var(--colors-tomato-10);--colors-likec4-tag-border: var(--colors-tomato-8);--colors-likec4-tag-text: var(--colors-tomato-12);--colors-likec4-panel-bg: var(--mantine-color-body);--colors-likec4-panel-border: transparent;--colors-likec4-panel-text: color-mix(in oklab, var(--mantine-color-text) 85%, transparent 15%);--colors-likec4-panel-text-dimmed: var(--mantine-color-dimmed);--colors-likec4-panel-action: color-mix(in oklab, var(--mantine-color-text) 90%, transparent 10%);--colors-likec4-panel-action-disabled: var(--mantine-color-dimmed);--colors-likec4-panel-action-hover: var(--mantine-color-bright);--colors-likec4-panel-action-bg: var(--mantine-color-gray-1);--colors-likec4-panel-action-bg-hover: var(--mantine-color-gray-2);--colors-likec4-panel-action-warning: var(--mantine-color-orange-6);--colors-likec4-panel-action-warning-hover: var(--mantine-color-orange-7);--colors-likec4-panel-action-warning-bg: color-mix(in oklab, var(--mantine-color-orange-1) 90%, transparent 10%);--colors-likec4-panel-action-warning-bg-hover: color-mix(in oklab, var(--mantine-color-orange-3) 70%, transparent 30%);--colors-likec4-dropdown-bg: #FFF;--colors-likec4-dropdown-border: var(--colors-likec4-panel-border);--colors-likec4-overlay-backdrop: rgb(34 34 34);--colors-likec4-overlay-body: var(--mantine-color-body);--colors-likec4-overlay-border: color-mix(in oklab, var(--mantine-color-default-border) 50%, transparent 50%);--colors-likec4-compare-latest: var(--mantine-color-green-6)}[data-mantine-color-scheme=dark]{--colors-amber-1: var(--colors-amber-dark-1);--colors-amber-2: var(--colors-amber-dark-2);--colors-amber-3: var(--colors-amber-dark-3);--colors-amber-4: var(--colors-amber-dark-4);--colors-amber-5: var(--colors-amber-dark-5);--colors-amber-6: var(--colors-amber-dark-6);--colors-amber-7: var(--colors-amber-dark-7);--colors-amber-8: var(--colors-amber-dark-8);--colors-amber-9: var(--colors-amber-dark-9);--colors-amber-10: var(--colors-amber-dark-10);--colors-amber-11: var(--colors-amber-dark-11);--colors-amber-12: var(--colors-amber-dark-12);--colors-amber-a-1: var(--colors-amber-dark-a-1);--colors-amber-a-2: var(--colors-amber-dark-a-2);--colors-amber-a-3: var(--colors-amber-dark-a-3);--colors-amber-a-4: var(--colors-amber-dark-a-4);--colors-amber-a-5: var(--colors-amber-dark-a-5);--colors-amber-a-6: var(--colors-amber-dark-a-6);--colors-amber-a-7: var(--colors-amber-dark-a-7);--colors-amber-a-8: var(--colors-amber-dark-a-8);--colors-amber-a-9: var(--colors-amber-dark-a-9);--colors-amber-a-10: var(--colors-amber-dark-a-10);--colors-amber-a-11: var(--colors-amber-dark-a-11);--colors-amber-a-12: var(--colors-amber-dark-a-12);--colors-amber-p3-1: var(--colors-amber-dark-p3-1);--colors-amber-p3-2: var(--colors-amber-dark-p3-2);--colors-amber-p3-3: var(--colors-amber-dark-p3-3);--colors-amber-p3-4: var(--colors-amber-dark-p3-4);--colors-amber-p3-5: var(--colors-amber-dark-p3-5);--colors-amber-p3-6: var(--colors-amber-dark-p3-6);--colors-amber-p3-7: var(--colors-amber-dark-p3-7);--colors-amber-p3-8: var(--colors-amber-dark-p3-8);--colors-amber-p3-9: var(--colors-amber-dark-p3-9);--colors-amber-p3-10: var(--colors-amber-dark-p3-10);--colors-amber-p3-11: var(--colors-amber-dark-p3-11);--colors-amber-p3-12: var(--colors-amber-dark-p3-12);--colors-amber-p3-a-1: var(--colors-amber-dark-p3-a-1);--colors-amber-p3-a-2: var(--colors-amber-dark-p3-a-2);--colors-amber-p3-a-3: var(--colors-amber-dark-p3-a-3);--colors-amber-p3-a-4: var(--colors-amber-dark-p3-a-4);--colors-amber-p3-a-5: var(--colors-amber-dark-p3-a-5);--colors-amber-p3-a-6: var(--colors-amber-dark-p3-a-6);--colors-amber-p3-a-7: var(--colors-amber-dark-p3-a-7);--colors-amber-p3-a-8: var(--colors-amber-dark-p3-a-8);--colors-amber-p3-a-9: var(--colors-amber-dark-p3-a-9);--colors-amber-p3-a-10: var(--colors-amber-dark-p3-a-10);--colors-amber-p3-a-11: var(--colors-amber-dark-p3-a-11);--colors-amber-p3-a-12: var(--colors-amber-dark-p3-a-12);--colors-blue-1: var(--colors-blue-dark-1);--colors-blue-2: var(--colors-blue-dark-2);--colors-blue-3: var(--colors-blue-dark-3);--colors-blue-4: var(--colors-blue-dark-4);--colors-blue-5: var(--colors-blue-dark-5);--colors-blue-6: var(--colors-blue-dark-6);--colors-blue-7: var(--colors-blue-dark-7);--colors-blue-8: var(--colors-blue-dark-8);--colors-blue-9: var(--colors-blue-dark-9);--colors-blue-10: var(--colors-blue-dark-10);--colors-blue-11: var(--colors-blue-dark-11);--colors-blue-12: var(--colors-blue-dark-12);--colors-blue-a-1: var(--colors-blue-dark-a-1);--colors-blue-a-2: var(--colors-blue-dark-a-2);--colors-blue-a-3: var(--colors-blue-dark-a-3);--colors-blue-a-4: var(--colors-blue-dark-a-4);--colors-blue-a-5: var(--colors-blue-dark-a-5);--colors-blue-a-6: var(--colors-blue-dark-a-6);--colors-blue-a-7: var(--colors-blue-dark-a-7);--colors-blue-a-8: var(--colors-blue-dark-a-8);--colors-blue-a-9: var(--colors-blue-dark-a-9);--colors-blue-a-10: var(--colors-blue-dark-a-10);--colors-blue-a-11: var(--colors-blue-dark-a-11);--colors-blue-a-12: var(--colors-blue-dark-a-12);--colors-blue-p3-1: var(--colors-blue-dark-p3-1);--colors-blue-p3-2: var(--colors-blue-dark-p3-2);--colors-blue-p3-3: var(--colors-blue-dark-p3-3);--colors-blue-p3-4: var(--colors-blue-dark-p3-4);--colors-blue-p3-5: var(--colors-blue-dark-p3-5);--colors-blue-p3-6: var(--colors-blue-dark-p3-6);--colors-blue-p3-7: var(--colors-blue-dark-p3-7);--colors-blue-p3-8: var(--colors-blue-dark-p3-8);--colors-blue-p3-9: var(--colors-blue-dark-p3-9);--colors-blue-p3-10: var(--colors-blue-dark-p3-10);--colors-blue-p3-11: var(--colors-blue-dark-p3-11);--colors-blue-p3-12: var(--colors-blue-dark-p3-12);--colors-blue-p3-a-1: var(--colors-blue-dark-p3-a-1);--colors-blue-p3-a-2: var(--colors-blue-dark-p3-a-2);--colors-blue-p3-a-3: var(--colors-blue-dark-p3-a-3);--colors-blue-p3-a-4: var(--colors-blue-dark-p3-a-4);--colors-blue-p3-a-5: var(--colors-blue-dark-p3-a-5);--colors-blue-p3-a-6: var(--colors-blue-dark-p3-a-6);--colors-blue-p3-a-7: var(--colors-blue-dark-p3-a-7);--colors-blue-p3-a-8: var(--colors-blue-dark-p3-a-8);--colors-blue-p3-a-9: var(--colors-blue-dark-p3-a-9);--colors-blue-p3-a-10: var(--colors-blue-dark-p3-a-10);--colors-blue-p3-a-11: var(--colors-blue-dark-p3-a-11);--colors-blue-p3-a-12: var(--colors-blue-dark-p3-a-12);--colors-crimson-1: var(--colors-crimson-dark-1);--colors-crimson-2: var(--colors-crimson-dark-2);--colors-crimson-3: var(--colors-crimson-dark-3);--colors-crimson-4: var(--colors-crimson-dark-4);--colors-crimson-5: var(--colors-crimson-dark-5);--colors-crimson-6: var(--colors-crimson-dark-6);--colors-crimson-7: var(--colors-crimson-dark-7);--colors-crimson-8: var(--colors-crimson-dark-8);--colors-crimson-9: var(--colors-crimson-dark-9);--colors-crimson-10: var(--colors-crimson-dark-10);--colors-crimson-11: var(--colors-crimson-dark-11);--colors-crimson-12: var(--colors-crimson-dark-12);--colors-crimson-a-1: var(--colors-crimson-dark-a-1);--colors-crimson-a-2: var(--colors-crimson-dark-a-2);--colors-crimson-a-3: var(--colors-crimson-dark-a-3);--colors-crimson-a-4: var(--colors-crimson-dark-a-4);--colors-crimson-a-5: var(--colors-crimson-dark-a-5);--colors-crimson-a-6: var(--colors-crimson-dark-a-6);--colors-crimson-a-7: var(--colors-crimson-dark-a-7);--colors-crimson-a-8: var(--colors-crimson-dark-a-8);--colors-crimson-a-9: var(--colors-crimson-dark-a-9);--colors-crimson-a-10: var(--colors-crimson-dark-a-10);--colors-crimson-a-11: var(--colors-crimson-dark-a-11);--colors-crimson-a-12: var(--colors-crimson-dark-a-12);--colors-crimson-p3-1: var(--colors-crimson-dark-p3-1);--colors-crimson-p3-2: var(--colors-crimson-dark-p3-2);--colors-crimson-p3-3: var(--colors-crimson-dark-p3-3);--colors-crimson-p3-4: var(--colors-crimson-dark-p3-4);--colors-crimson-p3-5: var(--colors-crimson-dark-p3-5);--colors-crimson-p3-6: var(--colors-crimson-dark-p3-6);--colors-crimson-p3-7: var(--colors-crimson-dark-p3-7);--colors-crimson-p3-8: var(--colors-crimson-dark-p3-8);--colors-crimson-p3-9: var(--colors-crimson-dark-p3-9);--colors-crimson-p3-10: var(--colors-crimson-dark-p3-10);--colors-crimson-p3-11: var(--colors-crimson-dark-p3-11);--colors-crimson-p3-12: var(--colors-crimson-dark-p3-12);--colors-crimson-p3-a-1: var(--colors-crimson-dark-p3-a-1);--colors-crimson-p3-a-2: var(--colors-crimson-dark-p3-a-2);--colors-crimson-p3-a-3: var(--colors-crimson-dark-p3-a-3);--colors-crimson-p3-a-4: var(--colors-crimson-dark-p3-a-4);--colors-crimson-p3-a-5: var(--colors-crimson-dark-p3-a-5);--colors-crimson-p3-a-6: var(--colors-crimson-dark-p3-a-6);--colors-crimson-p3-a-7: var(--colors-crimson-dark-p3-a-7);--colors-crimson-p3-a-8: var(--colors-crimson-dark-p3-a-8);--colors-crimson-p3-a-9: var(--colors-crimson-dark-p3-a-9);--colors-crimson-p3-a-10: var(--colors-crimson-dark-p3-a-10);--colors-crimson-p3-a-11: var(--colors-crimson-dark-p3-a-11);--colors-crimson-p3-a-12: var(--colors-crimson-dark-p3-a-12);--colors-grass-1: var(--colors-grass-dark-1);--colors-grass-2: var(--colors-grass-dark-2);--colors-grass-3: var(--colors-grass-dark-3);--colors-grass-4: var(--colors-grass-dark-4);--colors-grass-5: var(--colors-grass-dark-5);--colors-grass-6: var(--colors-grass-dark-6);--colors-grass-7: var(--colors-grass-dark-7);--colors-grass-8: var(--colors-grass-dark-8);--colors-grass-9: var(--colors-grass-dark-9);--colors-grass-10: var(--colors-grass-dark-10);--colors-grass-11: var(--colors-grass-dark-11);--colors-grass-12: var(--colors-grass-dark-12);--colors-grass-a-1: var(--colors-grass-dark-a-1);--colors-grass-a-2: var(--colors-grass-dark-a-2);--colors-grass-a-3: var(--colors-grass-dark-a-3);--colors-grass-a-4: var(--colors-grass-dark-a-4);--colors-grass-a-5: var(--colors-grass-dark-a-5);--colors-grass-a-6: var(--colors-grass-dark-a-6);--colors-grass-a-7: var(--colors-grass-dark-a-7);--colors-grass-a-8: var(--colors-grass-dark-a-8);--colors-grass-a-9: var(--colors-grass-dark-a-9);--colors-grass-a-10: var(--colors-grass-dark-a-10);--colors-grass-a-11: var(--colors-grass-dark-a-11);--colors-grass-a-12: var(--colors-grass-dark-a-12);--colors-grass-p3-1: var(--colors-grass-dark-p3-1);--colors-grass-p3-2: var(--colors-grass-dark-p3-2);--colors-grass-p3-3: var(--colors-grass-dark-p3-3);--colors-grass-p3-4: var(--colors-grass-dark-p3-4);--colors-grass-p3-5: var(--colors-grass-dark-p3-5);--colors-grass-p3-6: var(--colors-grass-dark-p3-6);--colors-grass-p3-7: var(--colors-grass-dark-p3-7);--colors-grass-p3-8: var(--colors-grass-dark-p3-8);--colors-grass-p3-9: var(--colors-grass-dark-p3-9);--colors-grass-p3-10: var(--colors-grass-dark-p3-10);--colors-grass-p3-11: var(--colors-grass-dark-p3-11);--colors-grass-p3-12: var(--colors-grass-dark-p3-12);--colors-grass-p3-a-1: var(--colors-grass-dark-p3-a-1);--colors-grass-p3-a-2: var(--colors-grass-dark-p3-a-2);--colors-grass-p3-a-3: var(--colors-grass-dark-p3-a-3);--colors-grass-p3-a-4: var(--colors-grass-dark-p3-a-4);--colors-grass-p3-a-5: var(--colors-grass-dark-p3-a-5);--colors-grass-p3-a-6: var(--colors-grass-dark-p3-a-6);--colors-grass-p3-a-7: var(--colors-grass-dark-p3-a-7);--colors-grass-p3-a-8: var(--colors-grass-dark-p3-a-8);--colors-grass-p3-a-9: var(--colors-grass-dark-p3-a-9);--colors-grass-p3-a-10: var(--colors-grass-dark-p3-a-10);--colors-grass-p3-a-11: var(--colors-grass-dark-p3-a-11);--colors-grass-p3-a-12: var(--colors-grass-dark-p3-a-12);--colors-indigo-1: var(--colors-indigo-dark-1);--colors-indigo-2: var(--colors-indigo-dark-2);--colors-indigo-3: var(--colors-indigo-dark-3);--colors-indigo-4: var(--colors-indigo-dark-4);--colors-indigo-5: var(--colors-indigo-dark-5);--colors-indigo-6: var(--colors-indigo-dark-6);--colors-indigo-7: var(--colors-indigo-dark-7);--colors-indigo-8: var(--colors-indigo-dark-8);--colors-indigo-9: var(--colors-indigo-dark-9);--colors-indigo-10: var(--colors-indigo-dark-10);--colors-indigo-11: var(--colors-indigo-dark-11);--colors-indigo-12: var(--colors-indigo-dark-12);--colors-indigo-a-1: var(--colors-indigo-dark-a-1);--colors-indigo-a-2: var(--colors-indigo-dark-a-2);--colors-indigo-a-3: var(--colors-indigo-dark-a-3);--colors-indigo-a-4: var(--colors-indigo-dark-a-4);--colors-indigo-a-5: var(--colors-indigo-dark-a-5);--colors-indigo-a-6: var(--colors-indigo-dark-a-6);--colors-indigo-a-7: var(--colors-indigo-dark-a-7);--colors-indigo-a-8: var(--colors-indigo-dark-a-8);--colors-indigo-a-9: var(--colors-indigo-dark-a-9);--colors-indigo-a-10: var(--colors-indigo-dark-a-10);--colors-indigo-a-11: var(--colors-indigo-dark-a-11);--colors-indigo-a-12: var(--colors-indigo-dark-a-12);--colors-indigo-p3-1: var(--colors-indigo-dark-p3-1);--colors-indigo-p3-2: var(--colors-indigo-dark-p3-2);--colors-indigo-p3-3: var(--colors-indigo-dark-p3-3);--colors-indigo-p3-4: var(--colors-indigo-dark-p3-4);--colors-indigo-p3-5: var(--colors-indigo-dark-p3-5);--colors-indigo-p3-6: var(--colors-indigo-dark-p3-6);--colors-indigo-p3-7: var(--colors-indigo-dark-p3-7);--colors-indigo-p3-8: var(--colors-indigo-dark-p3-8);--colors-indigo-p3-9: var(--colors-indigo-dark-p3-9);--colors-indigo-p3-10: var(--colors-indigo-dark-p3-10);--colors-indigo-p3-11: var(--colors-indigo-dark-p3-11);--colors-indigo-p3-12: var(--colors-indigo-dark-p3-12);--colors-indigo-p3-a-1: var(--colors-indigo-dark-p3-a-1);--colors-indigo-p3-a-2: var(--colors-indigo-dark-p3-a-2);--colors-indigo-p3-a-3: var(--colors-indigo-dark-p3-a-3);--colors-indigo-p3-a-4: var(--colors-indigo-dark-p3-a-4);--colors-indigo-p3-a-5: var(--colors-indigo-dark-p3-a-5);--colors-indigo-p3-a-6: var(--colors-indigo-dark-p3-a-6);--colors-indigo-p3-a-7: var(--colors-indigo-dark-p3-a-7);--colors-indigo-p3-a-8: var(--colors-indigo-dark-p3-a-8);--colors-indigo-p3-a-9: var(--colors-indigo-dark-p3-a-9);--colors-indigo-p3-a-10: var(--colors-indigo-dark-p3-a-10);--colors-indigo-p3-a-11: var(--colors-indigo-dark-p3-a-11);--colors-indigo-p3-a-12: var(--colors-indigo-dark-p3-a-12);--colors-lime-1: var(--colors-lime-dark-1);--colors-lime-2: var(--colors-lime-dark-2);--colors-lime-3: var(--colors-lime-dark-3);--colors-lime-4: var(--colors-lime-dark-4);--colors-lime-5: var(--colors-lime-dark-5);--colors-lime-6: var(--colors-lime-dark-6);--colors-lime-7: var(--colors-lime-dark-7);--colors-lime-8: var(--colors-lime-dark-8);--colors-lime-9: var(--colors-lime-dark-9);--colors-lime-10: var(--colors-lime-dark-10);--colors-lime-11: var(--colors-lime-dark-11);--colors-lime-12: var(--colors-lime-dark-12);--colors-lime-a-1: var(--colors-lime-dark-a-1);--colors-lime-a-2: var(--colors-lime-dark-a-2);--colors-lime-a-3: var(--colors-lime-dark-a-3);--colors-lime-a-4: var(--colors-lime-dark-a-4);--colors-lime-a-5: var(--colors-lime-dark-a-5);--colors-lime-a-6: var(--colors-lime-dark-a-6);--colors-lime-a-7: var(--colors-lime-dark-a-7);--colors-lime-a-8: var(--colors-lime-dark-a-8);--colors-lime-a-9: var(--colors-lime-dark-a-9);--colors-lime-a-10: var(--colors-lime-dark-a-10);--colors-lime-a-11: var(--colors-lime-dark-a-11);--colors-lime-a-12: var(--colors-lime-dark-a-12);--colors-lime-p3-1: var(--colors-lime-dark-p3-1);--colors-lime-p3-2: var(--colors-lime-dark-p3-2);--colors-lime-p3-3: var(--colors-lime-dark-p3-3);--colors-lime-p3-4: var(--colors-lime-dark-p3-4);--colors-lime-p3-5: var(--colors-lime-dark-p3-5);--colors-lime-p3-6: var(--colors-lime-dark-p3-6);--colors-lime-p3-7: var(--colors-lime-dark-p3-7);--colors-lime-p3-8: var(--colors-lime-dark-p3-8);--colors-lime-p3-9: var(--colors-lime-dark-p3-9);--colors-lime-p3-10: var(--colors-lime-dark-p3-10);--colors-lime-p3-11: var(--colors-lime-dark-p3-11);--colors-lime-p3-12: var(--colors-lime-dark-p3-12);--colors-lime-p3-a-1: var(--colors-lime-dark-p3-a-1);--colors-lime-p3-a-2: var(--colors-lime-dark-p3-a-2);--colors-lime-p3-a-3: var(--colors-lime-dark-p3-a-3);--colors-lime-p3-a-4: var(--colors-lime-dark-p3-a-4);--colors-lime-p3-a-5: var(--colors-lime-dark-p3-a-5);--colors-lime-p3-a-6: var(--colors-lime-dark-p3-a-6);--colors-lime-p3-a-7: var(--colors-lime-dark-p3-a-7);--colors-lime-p3-a-8: var(--colors-lime-dark-p3-a-8);--colors-lime-p3-a-9: var(--colors-lime-dark-p3-a-9);--colors-lime-p3-a-10: var(--colors-lime-dark-p3-a-10);--colors-lime-p3-a-11: var(--colors-lime-dark-p3-a-11);--colors-lime-p3-a-12: var(--colors-lime-dark-p3-a-12);--colors-orange-1: var(--colors-orange-dark-1);--colors-orange-2: var(--colors-orange-dark-2);--colors-orange-3: var(--colors-orange-dark-3);--colors-orange-4: var(--colors-orange-dark-4);--colors-orange-5: var(--colors-orange-dark-5);--colors-orange-6: var(--colors-orange-dark-6);--colors-orange-7: var(--colors-orange-dark-7);--colors-orange-8: var(--colors-orange-dark-8);--colors-orange-9: var(--colors-orange-dark-9);--colors-orange-10: var(--colors-orange-dark-10);--colors-orange-11: var(--colors-orange-dark-11);--colors-orange-12: var(--colors-orange-dark-12);--colors-orange-a-1: var(--colors-orange-dark-a-1);--colors-orange-a-2: var(--colors-orange-dark-a-2);--colors-orange-a-3: var(--colors-orange-dark-a-3);--colors-orange-a-4: var(--colors-orange-dark-a-4);--colors-orange-a-5: var(--colors-orange-dark-a-5);--colors-orange-a-6: var(--colors-orange-dark-a-6);--colors-orange-a-7: var(--colors-orange-dark-a-7);--colors-orange-a-8: var(--colors-orange-dark-a-8);--colors-orange-a-9: var(--colors-orange-dark-a-9);--colors-orange-a-10: var(--colors-orange-dark-a-10);--colors-orange-a-11: var(--colors-orange-dark-a-11);--colors-orange-a-12: var(--colors-orange-dark-a-12);--colors-orange-p3-1: var(--colors-orange-dark-p3-1);--colors-orange-p3-2: var(--colors-orange-dark-p3-2);--colors-orange-p3-3: var(--colors-orange-dark-p3-3);--colors-orange-p3-4: var(--colors-orange-dark-p3-4);--colors-orange-p3-5: var(--colors-orange-dark-p3-5);--colors-orange-p3-6: var(--colors-orange-dark-p3-6);--colors-orange-p3-7: var(--colors-orange-dark-p3-7);--colors-orange-p3-8: var(--colors-orange-dark-p3-8);--colors-orange-p3-9: var(--colors-orange-dark-p3-9);--colors-orange-p3-10: var(--colors-orange-dark-p3-10);--colors-orange-p3-11: var(--colors-orange-dark-p3-11);--colors-orange-p3-12: var(--colors-orange-dark-p3-12);--colors-orange-p3-a-1: var(--colors-orange-dark-p3-a-1);--colors-orange-p3-a-2: var(--colors-orange-dark-p3-a-2);--colors-orange-p3-a-3: var(--colors-orange-dark-p3-a-3);--colors-orange-p3-a-4: var(--colors-orange-dark-p3-a-4);--colors-orange-p3-a-5: var(--colors-orange-dark-p3-a-5);--colors-orange-p3-a-6: var(--colors-orange-dark-p3-a-6);--colors-orange-p3-a-7: var(--colors-orange-dark-p3-a-7);--colors-orange-p3-a-8: var(--colors-orange-dark-p3-a-8);--colors-orange-p3-a-9: var(--colors-orange-dark-p3-a-9);--colors-orange-p3-a-10: var(--colors-orange-dark-p3-a-10);--colors-orange-p3-a-11: var(--colors-orange-dark-p3-a-11);--colors-orange-p3-a-12: var(--colors-orange-dark-p3-a-12);--colors-pink-1: var(--colors-pink-dark-1);--colors-pink-2: var(--colors-pink-dark-2);--colors-pink-3: var(--colors-pink-dark-3);--colors-pink-4: var(--colors-pink-dark-4);--colors-pink-5: var(--colors-pink-dark-5);--colors-pink-6: var(--colors-pink-dark-6);--colors-pink-7: var(--colors-pink-dark-7);--colors-pink-8: var(--colors-pink-dark-8);--colors-pink-9: var(--colors-pink-dark-9);--colors-pink-10: var(--colors-pink-dark-10);--colors-pink-11: var(--colors-pink-dark-11);--colors-pink-12: var(--colors-pink-dark-12);--colors-pink-a-1: var(--colors-pink-dark-a-1);--colors-pink-a-2: var(--colors-pink-dark-a-2);--colors-pink-a-3: var(--colors-pink-dark-a-3);--colors-pink-a-4: var(--colors-pink-dark-a-4);--colors-pink-a-5: var(--colors-pink-dark-a-5);--colors-pink-a-6: var(--colors-pink-dark-a-6);--colors-pink-a-7: var(--colors-pink-dark-a-7);--colors-pink-a-8: var(--colors-pink-dark-a-8);--colors-pink-a-9: var(--colors-pink-dark-a-9);--colors-pink-a-10: var(--colors-pink-dark-a-10);--colors-pink-a-11: var(--colors-pink-dark-a-11);--colors-pink-a-12: var(--colors-pink-dark-a-12);--colors-pink-p3-1: var(--colors-pink-dark-p3-1);--colors-pink-p3-2: var(--colors-pink-dark-p3-2);--colors-pink-p3-3: var(--colors-pink-dark-p3-3);--colors-pink-p3-4: var(--colors-pink-dark-p3-4);--colors-pink-p3-5: var(--colors-pink-dark-p3-5);--colors-pink-p3-6: var(--colors-pink-dark-p3-6);--colors-pink-p3-7: var(--colors-pink-dark-p3-7);--colors-pink-p3-8: var(--colors-pink-dark-p3-8);--colors-pink-p3-9: var(--colors-pink-dark-p3-9);--colors-pink-p3-10: var(--colors-pink-dark-p3-10);--colors-pink-p3-11: var(--colors-pink-dark-p3-11);--colors-pink-p3-12: var(--colors-pink-dark-p3-12);--colors-pink-p3-a-1: var(--colors-pink-dark-p3-a-1);--colors-pink-p3-a-2: var(--colors-pink-dark-p3-a-2);--colors-pink-p3-a-3: var(--colors-pink-dark-p3-a-3);--colors-pink-p3-a-4: var(--colors-pink-dark-p3-a-4);--colors-pink-p3-a-5: var(--colors-pink-dark-p3-a-5);--colors-pink-p3-a-6: var(--colors-pink-dark-p3-a-6);--colors-pink-p3-a-7: var(--colors-pink-dark-p3-a-7);--colors-pink-p3-a-8: var(--colors-pink-dark-p3-a-8);--colors-pink-p3-a-9: var(--colors-pink-dark-p3-a-9);--colors-pink-p3-a-10: var(--colors-pink-dark-p3-a-10);--colors-pink-p3-a-11: var(--colors-pink-dark-p3-a-11);--colors-pink-p3-a-12: var(--colors-pink-dark-p3-a-12);--colors-purple-1: var(--colors-purple-dark-1);--colors-purple-2: var(--colors-purple-dark-2);--colors-purple-3: var(--colors-purple-dark-3);--colors-purple-4: var(--colors-purple-dark-4);--colors-purple-5: var(--colors-purple-dark-5);--colors-purple-6: var(--colors-purple-dark-6);--colors-purple-7: var(--colors-purple-dark-7);--colors-purple-8: var(--colors-purple-dark-8);--colors-purple-9: var(--colors-purple-dark-9);--colors-purple-10: var(--colors-purple-dark-10);--colors-purple-11: var(--colors-purple-dark-11);--colors-purple-12: var(--colors-purple-dark-12);--colors-purple-a-1: var(--colors-purple-dark-a-1);--colors-purple-a-2: var(--colors-purple-dark-a-2);--colors-purple-a-3: var(--colors-purple-dark-a-3);--colors-purple-a-4: var(--colors-purple-dark-a-4);--colors-purple-a-5: var(--colors-purple-dark-a-5);--colors-purple-a-6: var(--colors-purple-dark-a-6);--colors-purple-a-7: var(--colors-purple-dark-a-7);--colors-purple-a-8: var(--colors-purple-dark-a-8);--colors-purple-a-9: var(--colors-purple-dark-a-9);--colors-purple-a-10: var(--colors-purple-dark-a-10);--colors-purple-a-11: var(--colors-purple-dark-a-11);--colors-purple-a-12: var(--colors-purple-dark-a-12);--colors-purple-p3-1: var(--colors-purple-dark-p3-1);--colors-purple-p3-2: var(--colors-purple-dark-p3-2);--colors-purple-p3-3: var(--colors-purple-dark-p3-3);--colors-purple-p3-4: var(--colors-purple-dark-p3-4);--colors-purple-p3-5: var(--colors-purple-dark-p3-5);--colors-purple-p3-6: var(--colors-purple-dark-p3-6);--colors-purple-p3-7: var(--colors-purple-dark-p3-7);--colors-purple-p3-8: var(--colors-purple-dark-p3-8);--colors-purple-p3-9: var(--colors-purple-dark-p3-9);--colors-purple-p3-10: var(--colors-purple-dark-p3-10);--colors-purple-p3-11: var(--colors-purple-dark-p3-11);--colors-purple-p3-12: var(--colors-purple-dark-p3-12);--colors-purple-p3-a-1: var(--colors-purple-dark-p3-a-1);--colors-purple-p3-a-2: var(--colors-purple-dark-p3-a-2);--colors-purple-p3-a-3: var(--colors-purple-dark-p3-a-3);--colors-purple-p3-a-4: var(--colors-purple-dark-p3-a-4);--colors-purple-p3-a-5: var(--colors-purple-dark-p3-a-5);--colors-purple-p3-a-6: var(--colors-purple-dark-p3-a-6);--colors-purple-p3-a-7: var(--colors-purple-dark-p3-a-7);--colors-purple-p3-a-8: var(--colors-purple-dark-p3-a-8);--colors-purple-p3-a-9: var(--colors-purple-dark-p3-a-9);--colors-purple-p3-a-10: var(--colors-purple-dark-p3-a-10);--colors-purple-p3-a-11: var(--colors-purple-dark-p3-a-11);--colors-purple-p3-a-12: var(--colors-purple-dark-p3-a-12);--colors-red-1: var(--colors-red-dark-1);--colors-red-2: var(--colors-red-dark-2);--colors-red-3: var(--colors-red-dark-3);--colors-red-4: var(--colors-red-dark-4);--colors-red-5: var(--colors-red-dark-5);--colors-red-6: var(--colors-red-dark-6);--colors-red-7: var(--colors-red-dark-7);--colors-red-8: var(--colors-red-dark-8);--colors-red-9: var(--colors-red-dark-9);--colors-red-10: var(--colors-red-dark-10);--colors-red-11: var(--colors-red-dark-11);--colors-red-12: var(--colors-red-dark-12);--colors-red-a-1: var(--colors-red-dark-a-1);--colors-red-a-2: var(--colors-red-dark-a-2);--colors-red-a-3: var(--colors-red-dark-a-3);--colors-red-a-4: var(--colors-red-dark-a-4);--colors-red-a-5: var(--colors-red-dark-a-5);--colors-red-a-6: var(--colors-red-dark-a-6);--colors-red-a-7: var(--colors-red-dark-a-7);--colors-red-a-8: var(--colors-red-dark-a-8);--colors-red-a-9: var(--colors-red-dark-a-9);--colors-red-a-10: var(--colors-red-dark-a-10);--colors-red-a-11: var(--colors-red-dark-a-11);--colors-red-a-12: var(--colors-red-dark-a-12);--colors-red-p3-1: var(--colors-red-dark-p3-1);--colors-red-p3-2: var(--colors-red-dark-p3-2);--colors-red-p3-3: var(--colors-red-dark-p3-3);--colors-red-p3-4: var(--colors-red-dark-p3-4);--colors-red-p3-5: var(--colors-red-dark-p3-5);--colors-red-p3-6: var(--colors-red-dark-p3-6);--colors-red-p3-7: var(--colors-red-dark-p3-7);--colors-red-p3-8: var(--colors-red-dark-p3-8);--colors-red-p3-9: var(--colors-red-dark-p3-9);--colors-red-p3-10: var(--colors-red-dark-p3-10);--colors-red-p3-11: var(--colors-red-dark-p3-11);--colors-red-p3-12: var(--colors-red-dark-p3-12);--colors-red-p3-a-1: var(--colors-red-dark-p3-a-1);--colors-red-p3-a-2: var(--colors-red-dark-p3-a-2);--colors-red-p3-a-3: var(--colors-red-dark-p3-a-3);--colors-red-p3-a-4: var(--colors-red-dark-p3-a-4);--colors-red-p3-a-5: var(--colors-red-dark-p3-a-5);--colors-red-p3-a-6: var(--colors-red-dark-p3-a-6);--colors-red-p3-a-7: var(--colors-red-dark-p3-a-7);--colors-red-p3-a-8: var(--colors-red-dark-p3-a-8);--colors-red-p3-a-9: var(--colors-red-dark-p3-a-9);--colors-red-p3-a-10: var(--colors-red-dark-p3-a-10);--colors-red-p3-a-11: var(--colors-red-dark-p3-a-11);--colors-red-p3-a-12: var(--colors-red-dark-p3-a-12);--colors-ruby-1: var(--colors-ruby-dark-1);--colors-ruby-2: var(--colors-ruby-dark-2);--colors-ruby-3: var(--colors-ruby-dark-3);--colors-ruby-4: var(--colors-ruby-dark-4);--colors-ruby-5: var(--colors-ruby-dark-5);--colors-ruby-6: var(--colors-ruby-dark-6);--colors-ruby-7: var(--colors-ruby-dark-7);--colors-ruby-8: var(--colors-ruby-dark-8);--colors-ruby-9: var(--colors-ruby-dark-9);--colors-ruby-10: var(--colors-ruby-dark-10);--colors-ruby-11: var(--colors-ruby-dark-11);--colors-ruby-12: var(--colors-ruby-dark-12);--colors-ruby-a-1: var(--colors-ruby-dark-a-1);--colors-ruby-a-2: var(--colors-ruby-dark-a-2);--colors-ruby-a-3: var(--colors-ruby-dark-a-3);--colors-ruby-a-4: var(--colors-ruby-dark-a-4);--colors-ruby-a-5: var(--colors-ruby-dark-a-5);--colors-ruby-a-6: var(--colors-ruby-dark-a-6);--colors-ruby-a-7: var(--colors-ruby-dark-a-7);--colors-ruby-a-8: var(--colors-ruby-dark-a-8);--colors-ruby-a-9: var(--colors-ruby-dark-a-9);--colors-ruby-a-10: var(--colors-ruby-dark-a-10);--colors-ruby-a-11: var(--colors-ruby-dark-a-11);--colors-ruby-a-12: var(--colors-ruby-dark-a-12);--colors-ruby-p3-1: var(--colors-ruby-dark-p3-1);--colors-ruby-p3-2: var(--colors-ruby-dark-p3-2);--colors-ruby-p3-3: var(--colors-ruby-dark-p3-3);--colors-ruby-p3-4: var(--colors-ruby-dark-p3-4);--colors-ruby-p3-5: var(--colors-ruby-dark-p3-5);--colors-ruby-p3-6: var(--colors-ruby-dark-p3-6);--colors-ruby-p3-7: var(--colors-ruby-dark-p3-7);--colors-ruby-p3-8: var(--colors-ruby-dark-p3-8);--colors-ruby-p3-9: var(--colors-ruby-dark-p3-9);--colors-ruby-p3-10: var(--colors-ruby-dark-p3-10);--colors-ruby-p3-11: var(--colors-ruby-dark-p3-11);--colors-ruby-p3-12: var(--colors-ruby-dark-p3-12);--colors-ruby-p3-a-1: var(--colors-ruby-dark-p3-a-1);--colors-ruby-p3-a-2: var(--colors-ruby-dark-p3-a-2);--colors-ruby-p3-a-3: var(--colors-ruby-dark-p3-a-3);--colors-ruby-p3-a-4: var(--colors-ruby-dark-p3-a-4);--colors-ruby-p3-a-5: var(--colors-ruby-dark-p3-a-5);--colors-ruby-p3-a-6: var(--colors-ruby-dark-p3-a-6);--colors-ruby-p3-a-7: var(--colors-ruby-dark-p3-a-7);--colors-ruby-p3-a-8: var(--colors-ruby-dark-p3-a-8);--colors-ruby-p3-a-9: var(--colors-ruby-dark-p3-a-9);--colors-ruby-p3-a-10: var(--colors-ruby-dark-p3-a-10);--colors-ruby-p3-a-11: var(--colors-ruby-dark-p3-a-11);--colors-ruby-p3-a-12: var(--colors-ruby-dark-p3-a-12);--colors-teal-1: var(--colors-teal-dark-1);--colors-teal-2: var(--colors-teal-dark-2);--colors-teal-3: var(--colors-teal-dark-3);--colors-teal-4: var(--colors-teal-dark-4);--colors-teal-5: var(--colors-teal-dark-5);--colors-teal-6: var(--colors-teal-dark-6);--colors-teal-7: var(--colors-teal-dark-7);--colors-teal-8: var(--colors-teal-dark-8);--colors-teal-9: var(--colors-teal-dark-9);--colors-teal-10: var(--colors-teal-dark-10);--colors-teal-11: var(--colors-teal-dark-11);--colors-teal-12: var(--colors-teal-dark-12);--colors-teal-a-1: var(--colors-teal-dark-a-1);--colors-teal-a-2: var(--colors-teal-dark-a-2);--colors-teal-a-3: var(--colors-teal-dark-a-3);--colors-teal-a-4: var(--colors-teal-dark-a-4);--colors-teal-a-5: var(--colors-teal-dark-a-5);--colors-teal-a-6: var(--colors-teal-dark-a-6);--colors-teal-a-7: var(--colors-teal-dark-a-7);--colors-teal-a-8: var(--colors-teal-dark-a-8);--colors-teal-a-9: var(--colors-teal-dark-a-9);--colors-teal-a-10: var(--colors-teal-dark-a-10);--colors-teal-a-11: var(--colors-teal-dark-a-11);--colors-teal-a-12: var(--colors-teal-dark-a-12);--colors-teal-p3-1: var(--colors-teal-dark-p3-1);--colors-teal-p3-2: var(--colors-teal-dark-p3-2);--colors-teal-p3-3: var(--colors-teal-dark-p3-3);--colors-teal-p3-4: var(--colors-teal-dark-p3-4);--colors-teal-p3-5: var(--colors-teal-dark-p3-5);--colors-teal-p3-6: var(--colors-teal-dark-p3-6);--colors-teal-p3-7: var(--colors-teal-dark-p3-7);--colors-teal-p3-8: var(--colors-teal-dark-p3-8);--colors-teal-p3-9: var(--colors-teal-dark-p3-9);--colors-teal-p3-10: var(--colors-teal-dark-p3-10);--colors-teal-p3-11: var(--colors-teal-dark-p3-11);--colors-teal-p3-12: var(--colors-teal-dark-p3-12);--colors-teal-p3-a-1: var(--colors-teal-dark-p3-a-1);--colors-teal-p3-a-2: var(--colors-teal-dark-p3-a-2);--colors-teal-p3-a-3: var(--colors-teal-dark-p3-a-3);--colors-teal-p3-a-4: var(--colors-teal-dark-p3-a-4);--colors-teal-p3-a-5: var(--colors-teal-dark-p3-a-5);--colors-teal-p3-a-6: var(--colors-teal-dark-p3-a-6);--colors-teal-p3-a-7: var(--colors-teal-dark-p3-a-7);--colors-teal-p3-a-8: var(--colors-teal-dark-p3-a-8);--colors-teal-p3-a-9: var(--colors-teal-dark-p3-a-9);--colors-teal-p3-a-10: var(--colors-teal-dark-p3-a-10);--colors-teal-p3-a-11: var(--colors-teal-dark-p3-a-11);--colors-teal-p3-a-12: var(--colors-teal-dark-p3-a-12);--colors-tomato-1: var(--colors-tomato-dark-1);--colors-tomato-2: var(--colors-tomato-dark-2);--colors-tomato-3: var(--colors-tomato-dark-3);--colors-tomato-4: var(--colors-tomato-dark-4);--colors-tomato-5: var(--colors-tomato-dark-5);--colors-tomato-6: var(--colors-tomato-dark-6);--colors-tomato-7: var(--colors-tomato-dark-7);--colors-tomato-8: var(--colors-tomato-dark-8);--colors-tomato-9: var(--colors-tomato-dark-9);--colors-tomato-10: var(--colors-tomato-dark-10);--colors-tomato-11: var(--colors-tomato-dark-11);--colors-tomato-12: var(--colors-tomato-dark-12);--colors-tomato-a-1: var(--colors-tomato-dark-a-1);--colors-tomato-a-2: var(--colors-tomato-dark-a-2);--colors-tomato-a-3: var(--colors-tomato-dark-a-3);--colors-tomato-a-4: var(--colors-tomato-dark-a-4);--colors-tomato-a-5: var(--colors-tomato-dark-a-5);--colors-tomato-a-6: var(--colors-tomato-dark-a-6);--colors-tomato-a-7: var(--colors-tomato-dark-a-7);--colors-tomato-a-8: var(--colors-tomato-dark-a-8);--colors-tomato-a-9: var(--colors-tomato-dark-a-9);--colors-tomato-a-10: var(--colors-tomato-dark-a-10);--colors-tomato-a-11: var(--colors-tomato-dark-a-11);--colors-tomato-a-12: var(--colors-tomato-dark-a-12);--colors-tomato-p3-1: var(--colors-tomato-dark-p3-1);--colors-tomato-p3-2: var(--colors-tomato-dark-p3-2);--colors-tomato-p3-3: var(--colors-tomato-dark-p3-3);--colors-tomato-p3-4: var(--colors-tomato-dark-p3-4);--colors-tomato-p3-5: var(--colors-tomato-dark-p3-5);--colors-tomato-p3-6: var(--colors-tomato-dark-p3-6);--colors-tomato-p3-7: var(--colors-tomato-dark-p3-7);--colors-tomato-p3-8: var(--colors-tomato-dark-p3-8);--colors-tomato-p3-9: var(--colors-tomato-dark-p3-9);--colors-tomato-p3-10: var(--colors-tomato-dark-p3-10);--colors-tomato-p3-11: var(--colors-tomato-dark-p3-11);--colors-tomato-p3-12: var(--colors-tomato-dark-p3-12);--colors-tomato-p3-a-1: var(--colors-tomato-dark-p3-a-1);--colors-tomato-p3-a-2: var(--colors-tomato-dark-p3-a-2);--colors-tomato-p3-a-3: var(--colors-tomato-dark-p3-a-3);--colors-tomato-p3-a-4: var(--colors-tomato-dark-p3-a-4);--colors-tomato-p3-a-5: var(--colors-tomato-dark-p3-a-5);--colors-tomato-p3-a-6: var(--colors-tomato-dark-p3-a-6);--colors-tomato-p3-a-7: var(--colors-tomato-dark-p3-a-7);--colors-tomato-p3-a-8: var(--colors-tomato-dark-p3-a-8);--colors-tomato-p3-a-9: var(--colors-tomato-dark-p3-a-9);--colors-tomato-p3-a-10: var(--colors-tomato-dark-p3-a-10);--colors-tomato-p3-a-11: var(--colors-tomato-dark-p3-a-11);--colors-tomato-p3-a-12: var(--colors-tomato-dark-p3-a-12);--colors-violet-1: var(--colors-violet-dark-1);--colors-violet-2: var(--colors-violet-dark-2);--colors-violet-3: var(--colors-violet-dark-3);--colors-violet-4: var(--colors-violet-dark-4);--colors-violet-5: var(--colors-violet-dark-5);--colors-violet-6: var(--colors-violet-dark-6);--colors-violet-7: var(--colors-violet-dark-7);--colors-violet-8: var(--colors-violet-dark-8);--colors-violet-9: var(--colors-violet-dark-9);--colors-violet-10: var(--colors-violet-dark-10);--colors-violet-11: var(--colors-violet-dark-11);--colors-violet-12: var(--colors-violet-dark-12);--colors-violet-a-1: var(--colors-violet-dark-a-1);--colors-violet-a-2: var(--colors-violet-dark-a-2);--colors-violet-a-3: var(--colors-violet-dark-a-3);--colors-violet-a-4: var(--colors-violet-dark-a-4);--colors-violet-a-5: var(--colors-violet-dark-a-5);--colors-violet-a-6: var(--colors-violet-dark-a-6);--colors-violet-a-7: var(--colors-violet-dark-a-7);--colors-violet-a-8: var(--colors-violet-dark-a-8);--colors-violet-a-9: var(--colors-violet-dark-a-9);--colors-violet-a-10: var(--colors-violet-dark-a-10);--colors-violet-a-11: var(--colors-violet-dark-a-11);--colors-violet-a-12: var(--colors-violet-dark-a-12);--colors-violet-p3-1: var(--colors-violet-dark-p3-1);--colors-violet-p3-2: var(--colors-violet-dark-p3-2);--colors-violet-p3-3: var(--colors-violet-dark-p3-3);--colors-violet-p3-4: var(--colors-violet-dark-p3-4);--colors-violet-p3-5: var(--colors-violet-dark-p3-5);--colors-violet-p3-6: var(--colors-violet-dark-p3-6);--colors-violet-p3-7: var(--colors-violet-dark-p3-7);--colors-violet-p3-8: var(--colors-violet-dark-p3-8);--colors-violet-p3-9: var(--colors-violet-dark-p3-9);--colors-violet-p3-10: var(--colors-violet-dark-p3-10);--colors-violet-p3-11: var(--colors-violet-dark-p3-11);--colors-violet-p3-12: var(--colors-violet-dark-p3-12);--colors-violet-p3-a-1: var(--colors-violet-dark-p3-a-1);--colors-violet-p3-a-2: var(--colors-violet-dark-p3-a-2);--colors-violet-p3-a-3: var(--colors-violet-dark-p3-a-3);--colors-violet-p3-a-4: var(--colors-violet-dark-p3-a-4);--colors-violet-p3-a-5: var(--colors-violet-dark-p3-a-5);--colors-violet-p3-a-6: var(--colors-violet-dark-p3-a-6);--colors-violet-p3-a-7: var(--colors-violet-dark-p3-a-7);--colors-violet-p3-a-8: var(--colors-violet-dark-p3-a-8);--colors-violet-p3-a-9: var(--colors-violet-dark-p3-a-9);--colors-violet-p3-a-10: var(--colors-violet-dark-p3-a-10);--colors-violet-p3-a-11: var(--colors-violet-dark-p3-a-11);--colors-violet-p3-a-12: var(--colors-violet-dark-p3-a-12);--colors-yellow-1: var(--colors-yellow-dark-1);--colors-yellow-2: var(--colors-yellow-dark-2);--colors-yellow-3: var(--colors-yellow-dark-3);--colors-yellow-4: var(--colors-yellow-dark-4);--colors-yellow-5: var(--colors-yellow-dark-5);--colors-yellow-6: var(--colors-yellow-dark-6);--colors-yellow-7: var(--colors-yellow-dark-7);--colors-yellow-8: var(--colors-yellow-dark-8);--colors-yellow-9: var(--colors-yellow-dark-9);--colors-yellow-10: var(--colors-yellow-dark-10);--colors-yellow-11: var(--colors-yellow-dark-11);--colors-yellow-12: var(--colors-yellow-dark-12);--colors-yellow-a-1: var(--colors-yellow-dark-a-1);--colors-yellow-a-2: var(--colors-yellow-dark-a-2);--colors-yellow-a-3: var(--colors-yellow-dark-a-3);--colors-yellow-a-4: var(--colors-yellow-dark-a-4);--colors-yellow-a-5: var(--colors-yellow-dark-a-5);--colors-yellow-a-6: var(--colors-yellow-dark-a-6);--colors-yellow-a-7: var(--colors-yellow-dark-a-7);--colors-yellow-a-8: var(--colors-yellow-dark-a-8);--colors-yellow-a-9: var(--colors-yellow-dark-a-9);--colors-yellow-a-10: var(--colors-yellow-dark-a-10);--colors-yellow-a-11: var(--colors-yellow-dark-a-11);--colors-yellow-a-12: var(--colors-yellow-dark-a-12);--colors-yellow-p3-1: var(--colors-yellow-dark-p3-1);--colors-yellow-p3-2: var(--colors-yellow-dark-p3-2);--colors-yellow-p3-3: var(--colors-yellow-dark-p3-3);--colors-yellow-p3-4: var(--colors-yellow-dark-p3-4);--colors-yellow-p3-5: var(--colors-yellow-dark-p3-5);--colors-yellow-p3-6: var(--colors-yellow-dark-p3-6);--colors-yellow-p3-7: var(--colors-yellow-dark-p3-7);--colors-yellow-p3-8: var(--colors-yellow-dark-p3-8);--colors-yellow-p3-9: var(--colors-yellow-dark-p3-9);--colors-yellow-p3-10: var(--colors-yellow-dark-p3-10);--colors-yellow-p3-11: var(--colors-yellow-dark-p3-11);--colors-yellow-p3-12: var(--colors-yellow-dark-p3-12);--colors-yellow-p3-a-1: var(--colors-yellow-dark-p3-a-1);--colors-yellow-p3-a-2: var(--colors-yellow-dark-p3-a-2);--colors-yellow-p3-a-3: var(--colors-yellow-dark-p3-a-3);--colors-yellow-p3-a-4: var(--colors-yellow-dark-p3-a-4);--colors-yellow-p3-a-5: var(--colors-yellow-dark-p3-a-5);--colors-yellow-p3-a-6: var(--colors-yellow-dark-p3-a-6);--colors-yellow-p3-a-7: var(--colors-yellow-dark-p3-a-7);--colors-yellow-p3-a-8: var(--colors-yellow-dark-p3-a-8);--colors-yellow-p3-a-9: var(--colors-yellow-dark-p3-a-9);--colors-yellow-p3-a-10: var(--colors-yellow-dark-p3-a-10);--colors-yellow-p3-a-11: var(--colors-yellow-dark-p3-a-11);--colors-yellow-p3-a-12: var(--colors-yellow-dark-p3-a-12);--colors-likec4-background-pattern: color-mix(in oklab, var(--mantine-color-dark-4) 70%, transparent 30%);--colors-likec4-mix-color: white;--colors-likec4-panel-bg: var(--mantine-color-dark-6);--colors-likec4-panel-action-bg: color-mix(in oklab, var(--mantine-color-dark-7) 70%, transparent 30%);--colors-likec4-panel-action-bg-hover: var(--mantine-color-dark-8);--colors-likec4-panel-action-warning-hover: var(--mantine-color-orange-5);--colors-likec4-panel-action-warning-bg: color-mix(in oklab, var(--mantine-color-orange-9) 10%, transparent 90%);--colors-likec4-panel-action-warning-bg-hover: color-mix(in oklab, var(--mantine-color-orange-9) 20%, transparent 80%);--colors-likec4-dropdown-bg: var(--mantine-color-dark-6);--colors-likec4-overlay-body: var(--mantine-color-dark-6);--colors-likec4-compare-manual: var(--mantine-color-orange-6);--colors-likec4-compare-manual-outline: color-mix(in oklab, var(--mantine-color-orange-6) 80%, transparent 20%) }[data-mantine-color-scheme=light]{--colors-likec4-background-pattern: var(--mantine-color-gray-4);--colors-likec4-mix-color: black;--colors-likec4-panel-border: var(--mantine-color-gray-2);--colors-likec4-overlay-backdrop: rgb(15 15 15);--colors-likec4-compare-manual: var(--mantine-color-orange-8);--colors-likec4-compare-manual-outline: var(--mantine-color-orange-8) }@keyframes indicatorOpacity{0%{opacity:.8;stroke-opacity:.8}to{opacity:.4;stroke-opacity:.4}}@keyframes xyedgeAnimated{0%{stroke-dashoffset:36}to{stroke-dashoffset:0}}}@layer recipes{@layer _base{.likec4-edge-label{background:var(--xy-edge-label-background-color);border:0px solid transparent;padding-block:var(--spacing-1);padding-inline:var(--spacing-1\\.5);gap:var(--spacing-0\\.5);border-radius:4px;font-family:var(--fonts-likec4-relation);display:flex;flex-direction:column;align-items:center;color:var(--xy-edge-label-color);width:max-content;max-width:var(--sizes-100\\%)}.likec4-edge-label .likec4-edge-label__step-number{padding:var(--spacing-1);background:color-mix(in oklab,var(--likec4-palette-relation-label-bg),var(--colors-likec4-mix-color) 10%);flex:0 0 auto;align-self:stretch;font-weight:600;font-size:14px;text-align:center;font-variant-numeric:tabular-nums;min-width:22px;border-top-left-radius:4px;border-bottom-left-radius:4px}.likec4-edge-label .likec4-edge-label__step-number:only-child{border-radius:4px;min-width:24px}[data-mantine-color-scheme=dark] :where([data-likec4-color=gray]) .likec4-edge-label .likec4-edge-label__step-number{background:color-mix(in oklab,var(--likec4-palette-relation-label-bg),var(--colors-likec4-mix-color) 15%)}.likec4-edge-label .likec4-edge-label__text{margin:var(--spacing-0);white-space-collapse:preserve-breaks;font-size:14px;line-height:1.2}.likec4-edge-label .likec4-edge-label__contents{display:contents}.likec4-edge-label .likec4-edge-label__contents:is(:empty,[data-empty]){display:none!important}.likec4-edge-label .likec4-edge-label__technology{text-align:center;white-space-collapse:preserve-breaks;font-size:11px;line-height:var(--line-heights-1);opacity:.75}.likec4-overlay{--_blur: 0px;--_level: 0;--_offset: 0px;--_inset: calc((1 + var(--_level) * .75) * var(--_offset));--_opacity: 0%;--_border-radius: 0px;margin:var(--spacing-0);background:var(--colors-likec4-overlay-border);border:var(--borders-transparent);inset:var(--spacing-0);padding:var(--spacing-0);outline:var(--borders-none);border-radius:var(--_border-radius);box-sizing:border-box;position:fixed;box-shadow:var(--shadows-xl);width:100vw;height:100vh;max-width:100vw;max-height:100vh}.likec4-overlay::backdrop{cursor:zoom-out}.likec4-overlay .likec4-overlay-body{border:var(--borders-transparent);background:var(--colors-likec4-overlay-body);overflow:hidden;position:relative;container-name:likec4-dialog;container-type:size;width:var(--sizes-100\\%);height:var(--sizes-100\\%)}.likec4-markdown-block{--text-fz: 1rem;--text-fz-sm: calc(var(--text-fz) * var(--mantine-scale, 1) / 1.125);--text-fz-md: calc(var(--text-fz) * var(--mantine-scale, 1));--typography-spacing: calc(.75 * var(--text-fz-md));--text-fw-headings: 600;--code-background: var(--mantine-color-gray-2);--code-color: var(--mantine-color-black);font-size:var(--text-fz-md);line-height:var(--mantine-line-height)}[data-mantine-color-scheme=dark] .likec4-markdown-block{--code-background: var(--mantine-color-dark-8);--code-color: var(--mantine-color-white);--color-border-default: #30363d;--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-success-fg: #3fb950;--color-success-emphasis: #238636}[data-mantine-color-scheme=light] .likec4-markdown-block{--color-border-default: #d0d7de;--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-danger-fg: #d1242f;--color-danger-emphasis: #cf222e;--color-attention-fg: #9a6700;--color-attention-emphasis: #9a6700;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-success-fg: #1a7f37;--color-success-emphasis: #1f883d}.likec4-markdown-block :where(hr){border:var(--borders-none);border-bottom:1px solid;border-color:var(--mantine-color-gray-3);margin-top:calc(var(--typography-spacing) / 2);margin-bottom:calc(var(--typography-spacing) / 2)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(hr){border-color:var(--mantine-color-dark-3)}.likec4-markdown-block :where(pre){margin:var(--spacing-0);padding-inline:var(--spacing-3);padding-block:var(--spacing-2);border-radius:var(--radii-sm);line-height:var(--mantine-line-height-xs);font-family:var(--mantine-font-family-monospace);font-size:var(--text-fz-sm);background-color:var(--code-background);color:var(--code-color);margin-top:var(--typography-spacing);margin-bottom:var(--typography-spacing);overflow-x:auto}.likec4-markdown-block :where(code){padding:1px 4px;border-radius:var(--radii-xs);line-height:var(--line-heights-1);font-family:var(--mantine-font-family-monospace);font-size:var(--text-fz-sm);background-color:var(--code-background);color:var(--code-color)}.likec4-markdown-block :where(pre code){padding:var(--spacing-0);border:0;border-radius:var(--radii-0);background-color:var(--colors-transparent);color:inherit}.likec4-markdown-block :where(blockquote){margin:var(--spacing-0);padding:var(--spacing-xs);border-radius:var(--mantine-radius-sm);font-size:var(--text-fz-md);background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(blockquote){background-color:var(--mantine-color-dark-5)}.likec4-markdown-block :where(blockquote):not(:first-child){margin-top:var(--typography-spacing)}.likec4-markdown-block :where(h1,h2,h3,h4,h5,h6){text-wrap:var(--mantine-heading-text-wrap);line-height:1.5;font-family:var(--mantine-font-family-headings);margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(a){text-decoration:none;font-size:var(--text-fz-md);color:var(--mantine-color-anchor);font-weight:500}.likec4-markdown-block :where(a):is(:hover,[data-hover]){text-decoration:underline}.likec4-markdown-block .markdown-alert{border-left:.25em solid var(--borderColor-default, var(--color-border-default));color:inherit;margin-bottom:calc(var(--typography-spacing) * 1.5);padding-left:1em;padding-right:.5em}.likec4-markdown-block .markdown-alert .markdown-alert-title{gap:var(--spacing-2);align-items:center;display:flex;font-size:var(--text-fz-md);font-weight:500;line-height:1.5;margin-bottom:.1em}.likec4-markdown-block .markdown-alert .markdown-alert-title svg{fill:currentColor;height:var(--text-fz-md)}.likec4-markdown-block .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--color-accent-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--color-success-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--color-done-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--color-attention-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--color-danger-fg)}.likec4-markdown-block .markdown-alert:last-child{margin-bottom:var(--spacing-0)!important}.likec4-markdown-block .markdown-alert.markdown-alert-note{border-left-color:var(--borderColor-accent-emphasis,var(--color-accent-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-tip{border-left-color:var(--borderColor-success-emphasis,var(--color-success-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-important{border-left-color:var(--borderColor-done-emphasis,var(--color-done-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-warning{border-left-color:var(--borderColor-attention-emphasis,var(--color-attention-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-caution{border-left-color:var(--borderColor-danger-emphasis,var(--color-danger-emphasis))}.likec4-markdown-block :is(h1){font-size:calc(1.476 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h2){font-size:calc(1.383 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h3){font-size:calc(1.296 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h4){font-size:calc(1.215 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h5){font-size:calc(1.138 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h6){font-size:calc(1.067 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :where(p){font-size:var(--text-fz-md);margin-top:var(--spacing-0);margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(strong){font-weight:500}.likec4-markdown-block :where(mark){font-size:var(--text-fz-md);background-color:var(--mantine-color-yellow-2);color:inherit}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.likec4-markdown-block :where(ul,ol):not([data-type=taskList]){padding-inline-start:var(--typography-spacing);list-style-position:inside;margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(table){border-collapse:collapse;caption-side:bottom;width:var(--sizes-100\\%);margin-bottom:var(--typography-spacing)}[data-mantine-color-scheme=light] .likec4-markdown-block :where(table){--table-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(table){--table-border-color: var(--mantine-color-dark-4)}.likec4-markdown-block :where(table) :where(th){padding:var(--typography-spacing);text-align:left;font-weight:700;font-size:var(--text-fz-sm)}.likec4-markdown-block :where(table) :where(td){padding:var(--typography-spacing);border-bottom:1px solid;border-color:var(--table-border-color);font-size:var(--text-fz-sm)}.likec4-markdown-block :where(table) :where(thead th){border-bottom:1px solid;border-color:var(--table-border-color)}.likec4-markdown-block :where(table) :where(tfoot th){border-top:1px solid;border-color:var(--table-border-color)}.likec4-markdown-block :where(table) :where(tr:last-of-type td){border-bottom:0}.likec4-markdown-block :where(table) :where(caption){font-size:var(--text-fz-sm);color:var(--mantine-color-dimmed);margin-top:calc(.5 * var(--typography-spacing) + 1px)}.likec4-markdown-block :first-child{margin-top:var(--spacing-0)}.likec4-markdown-block :last-child{margin-bottom:var(--spacing-0)}.likec4-markdown-block :is(h1,h2,h3,h4,h5,h6):not(:first-child){margin-top:var(--typography-spacing)}.likec4-markdown-block :where(img){max-width:var(--sizes-100\\%);margin-bottom:var(--typography-spacing)}.likec4-navigation-panel-icon{color:var(--colors-likec4-panel-action)}.likec4-navigation-panel-icon:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);opacity:.5}.likec4-navigation-panel-icon:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover)}.action-btn{--actionbtn-color: var(--likec4-palette-loContrast);--actionbtn-color-hovered: var(--likec4-palette-loContrast);--actionbtn-color-hovered-btn: var(--likec4-palette-hiContrast);--actionbtn-bg-idle: color-mix(in oklab , var(--likec4-palette-fill), transparent 99%);--actionbtn-bg-hovered: color-mix(in oklab , var(--likec4-palette-fill) 65%, var(--likec4-palette-stroke));--actionbtn-bg-hovered-btn: color-mix(in oklab , var(--likec4-palette-fill) 50%, var(--likec4-palette-stroke));--ai-bg: var(--actionbtn-bg-idle);background:var(--ai-bg);color:var(--actionbtn-color);opacity:.75}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .action-btn{--ai-bg: var(--actionbtn-bg-hovered);opacity:1;color:var(--actionbtn-color-hovered)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .action-btn{pointer-events:all;cursor:pointer}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .action-btn{display:none}:where([data-likec4-zoom-small=true]) .action-btn{display:none}.action-btn *{pointer-events:none}.action-btn:is(:hover,[data-hover]){--ai-bg: var(--actionbtn-bg-hovered-btn);opacity:1;color:var(--actionbtn-color-hovered-btn)}.likec4-compound-node{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l - .05) a b);--_border-width: 3px;--_border-radius: 6px;--_compound-transparency: 100%;--_border-transparency: 100%;--_indicator-spacing: calc(var(--_border-width) + 1px);--_compound-color: var(--likec4-palette-loContrast);padding:var(--spacing-0);margin:var(--spacing-0);border-style:solid;border-width:var(--_border-width);border-radius:var(--_border-radius);position:relative;pointer-events:none;background-clip:padding-box;-webkit-background-clip:padding-box;box-sizing:border-box;color:var(--_compound-color);width:var(--sizes-100\\%);height:var(--sizes-100\\%)}[data-mantine-color-scheme=dark] .likec4-compound-node{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l + .2) a b)}.likec4-compound-node:before{border-style:solid;border-width:calc(var(--_border-width) + 1px);border-radius:calc(var(--_border-radius) + 4px);border-color:var(--likec4-palette-outline);position:absolute;content:" ";pointer-events:none;display:none;animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity;animation-play-state:paused;top:calc(-1 * var(--_indicator-spacing));left:calc(-1 * var(--_indicator-spacing));width:calc(100% + 2 * var(--_indicator-spacing));height:calc(100% + 2 * var(--_indicator-spacing))}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-compound-node:before{display:block;animation-play-state:running}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node:before{display:block;animation-play-state:running}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-compound-node:before{animation-play-state:paused}.likec4-compound-node:has(.likec4-compound-navigation) .likec4-compound-title-container{padding-left:24px}.likec4-compound-node .action-btn{--actionbtn-color: var(--_compound-color);--actionbtn-color-hovered: var(--_compound-color);--actionbtn-color-hovered-btn: color-mix(in oklab, var(--_compound-color) 80%, #fff);opacity:.6}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-compound-node .action-btn{transition:all var(--durations-fast) var(--easings-in-out)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-compound-node .action-btn{opacity:.75}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node .action-btn{opacity:.75}.likec4-compound-node .action-btn:is(:hover,[data-hover]){opacity:1}.likec4-compound-node .likec4-compound-title-container{gap:var(--spacing-1\\.5);position:absolute;display:flex;align-items:center;left:var(--spacing-2\\.5);top:var(--spacing-0\\.5);right:30px;width:auto;min-height:30px}:where(.react-flow__node.draggable) .likec4-compound-node .likec4-compound-title-container{pointer-events:all;cursor:grab}.likec4-compound-node .likec4-compound-title{flex:1 1 0%;font-family:var(--fonts-likec4-compound);font-weight:600;font-size:15px;text-transform:uppercase;letter-spacing:.25px;line-height:var(--line-heights-1);color:var(--_compound-color)}.likec4-compound-node .likec4-compound-icon{flex:0 0 20px;display:flex;align-items:center;justify-content:center;mix-blend-mode:hard-light;height:20px;width:20px}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon{mix-blend-mode:normal}.likec4-compound-node .likec4-compound-icon svg,.likec4-compound-node .likec4-compound-icon img{pointer-events:none;filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%)) drop-shadow(0 1px 8px rgb(0 0 0 / 8%)) drop-shadow(1px 1px 16px rgb(0 0 0 / 3%));width:var(--sizes-100\\%);height:auto;max-height:var(--sizes-100\\%)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon img{filter:none}.likec4-compound-node .likec4-compound-icon img{object-fit:contain}.likec4-compound-node .likec4-compound-navigation{position:absolute;top:var(--spacing-1);left:var(--spacing-0\\.5)}:where([data-likec4-zoom-small=true]) .likec4-compound-node .likec4-compound-navigation{display:none}.likec4-compound-node .likec4-compound-details{position:absolute;top:var(--spacing-0\\.5);right:var(--spacing-0\\.5)}:where([data-likec4-zoom-small=true]) .likec4-compound-node .likec4-compound-details{display:none}.likec4-edge-action-btn{--ai-bg: transparent;--ai-hover: color-mix(in oklab , var(--xy-edge-label-background-color), var(--colors-likec4-mix-color) 10%);--ai-size: var(--ai-size-sm);--ai-radius: var(--radii-sm);transition:all var(--durations-fast) var(--easings-in-out);pointer-events:all;color:var(--xy-edge-label-color);cursor:pointer;opacity:.75;translate:var(--translate-x) var(--translate-y)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge-action-btn{--ai-bg: var(--xy-edge-label-background-color);opacity:1}.likec4-edge-action-btn .tabler-icon{stroke-width:2;width:80%;height:80%}.likec4-edge-action-btn:is(:hover,[data-hover]){--translate-y: 2px;scale:1.15}.likec4-edge-action-btn:is(:active,[data-active]){--translate-y: -1px;scale:.9}.likec4-element-node-data{margin:0 auto;flex:1 1 0%;overflow:hidden;gap:var(--spacing-3);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:row;pointer-events:none;text-align:center;height:fit-content;width:fit-content;max-height:var(--sizes-100\\%);max-width:var(--sizes-100\\%);padding-top:var(--likec4-spacing);padding-bottom:var(--likec4-spacing);padding-left:calc(var(--likec4-spacing) + 8px);padding-right:calc(var(--likec4-spacing) + 8px)}:where([data-likec4-shape-size=xs]) .likec4-element-node-data{--likec4-icon-size: 24px}:where([data-likec4-shape-size=sm]) .likec4-element-node-data{--likec4-icon-size: 36px}:where([data-likec4-shape-size=md]) .likec4-element-node-data{--likec4-icon-size: 60px}:where([data-likec4-shape-size=lg]) .likec4-element-node-data{--likec4-icon-size: 82px;gap:var(--spacing-4)}:where([data-likec4-shape-size=xl]) .likec4-element-node-data{--likec4-icon-size: 90px;gap:var(--spacing-4)}.likec4-element-node-data:has([data-likec4-icon]){gap:var(--spacing-4);text-align:left}.likec4-element-node-data:has([data-likec4-icon]) .likec4-element-node-content{align-items:flex-start;min-width:calc(50% + var(--likec4-icon-size))}:where([data-likec4-shape=queue]) .likec4-element-node-data{padding-left:46px;padding-right:16px}:where([data-likec4-shape=mobile]) .likec4-element-node-data{padding-left:46px;padding-right:16px}:where([data-likec4-shape=cylinder]) .likec4-element-node-data{padding-top:30px}:where([data-likec4-shape=storage]) .likec4-element-node-data{padding-top:30px}:where([data-likec4-shape=browser]) .likec4-element-node-data{padding-top:32px;padding-bottom:28px}.likec4-element-node-data [data-likec4-icon]{flex:0 0 var(--likec4-icon-size, 48px);display:flex;align-self:flex-start;align-items:center;justify-content:center;mix-blend-mode:hard-light;height:var(--likec4-icon-size, 48px);width:var(--likec4-icon-size, 48px)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon]{mix-blend-mode:normal}.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{pointer-events:none;filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%));width:var(--sizes-100\\%);height:auto;max-height:var(--sizes-100\\%)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon] svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon] img{filter:none}.likec4-element-node-data [data-likec4-icon] img{object-fit:contain}.likec4-element-node-data .likec4-element-node-content{flex:0 1 auto;overflow:hidden;gap:var(--spacing-2);display:flex;flex-direction:column;align-items:stretch;justify-content:center;flex-wrap:nowrap;height:fit-content;width:fit-content;max-height:var(--sizes-100\\%);max-width:var(--sizes-100\\%)}.likec4-element-node-data .likec4-element-node-content:has([data-likec4-node-description]):has([data-likec4-node-technology]){gap:var(--spacing-1\\.5)}.likec4-element-node-data [data-likec4-node-title]{flex:0 0 auto;font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:500;font-size:var(--likec4-text-size);line-height:1.15;text-wrap-style:balance;white-space:preserve-breaks;text-align:var(__text-align);color:var(--likec4-palette-hiContrast)}.likec4-element-node-data [data-likec4-node-description]{overflow:hidden;flex-grow:0;flex-shrink:1;--text-fz: calc(var(--likec4-text-size) * .74);font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:400;font-size:calc(var(--likec4-text-size) * .74);line-height:1.3;text-wrap-style:pretty;color:var(--likec4-palette-loContrast);text-align:var(__text-align);text-overflow:ellipsis}:where([data-likec4-shape-size=xs]) .likec4-element-node-data [data-likec4-node-description]{display:none}:where([data-likec4-zoom-small=true]) .likec4-element-node-data [data-likec4-node-description]{display:none}.likec4-element-node-data [data-likec4-node-description] a{pointer-events:all}.likec4-element-node-data [data-likec4-node-description] .markdown-alert{mix-blend-mode:screen}.likec4-element-node-data [data-likec4-node-technology]{flex:0 0 auto;text-wrap:balance;--text-fz: calc(var(--likec4-text-size) * .74);font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:400;font-size:calc(var(--likec4-text-size) * .635);line-height:1.125;text-wrap-style:pretty;color:var(--likec4-palette-loContrast);text-align:var(__text-align);opacity:.92}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-node-data [data-likec4-node-technology]{opacity:1}:where([data-likec4-shape-size=xs]) .likec4-element-node-data [data-likec4-node-technology]{display:none}:where([data-likec4-shape-size=sm]) .likec4-element-node-data [data-likec4-node-technology]{display:none}:where([data-likec4-zoom-small=true]) .likec4-element-node-data [data-likec4-node-technology]{display:none}.likec4-element-shape{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l - .05) a b);--likec4-outline-size: 4px;overflow:visible;position:absolute;pointer-events:none;top:var(--spacing-0);left:var(--spacing-0);width:var(--sizes-100\\%);height:var(--sizes-100\\%)}[data-mantine-color-scheme=dark] .likec4-element-shape{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l + .2) a b)}.likec4-element-shape .likec4-shape-outline{visibility:hidden;animation-play-state:paused;pointer-events:none}:where([data-likec4-zoom-small=true]) .likec4-element-shape .likec4-shape-outline{visibility:hidden}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}.group:is(:focus-visible,[data-focus-visible]) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape .likec4-shape-outline{animation-play-state:paused}.likec4-tag{transition:all var(--durations-fast) var(--easings-in-out);gap:1px;padding-inline:var(--spacing-1);padding-block:var(--spacing-0);pointer-events:all;display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-sizes-xs);cursor:default;font-family:var(--fonts-likec4);font-weight:700;border:var(--borders-none);border-radius:3px;color:var(--colors-likec4-tag-text);background-color:var(--colors-likec4-tag-bg)}.likec4-tag:is(:hover,[data-hover]){background-color:var(--colors-likec4-tag-bg-hover)}.likec4-tag{white-space:nowrap;min-width:40px;width:min-content}@media screen and (min-width:36rem){.likec4-markdown-block .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--fgColor-accent,var(--color-accent-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--fgColor-success,var(--color-success-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--fgColor-done,var(--color-done-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--fgColor-attention,var(--color-attention-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--fgColor-danger,var(--color-danger-fg))}.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{filter:drop-shadow(0 1px 8px rgb(0 0 0 / 8%))}}@media screen and (min-width:48rem){.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{filter:drop-shadow(1px 1px 16px rgb(0 0 0 / 3%))}}@media print{.action-btn{display:none}.likec4-compound-node .likec4-compound-icon{mix-blend-mode:normal!important}.likec4-compound-node .action-btn,.likec4-compound-node .likec4-compound-navigation,.likec4-compound-node .likec4-compound-details,.likec4-edge-action-btn{display:none}}}.likec4-edge-label--pointerEvents_all{pointer-events:all}.likec4-edge-label--cursor_default{cursor:default}.likec4-edge-label--cursor_pointer{cursor:pointer}.likec4-edge-label--isStepEdge_true{padding:var(--spacing-0);gap:var(--spacing-1);flex-direction:row}.likec4-edge-label--isStepEdge_true .likec4-edge-label__contents{gap:var(--spacing-0\\.5);display:flex;flex-direction:column;align-items:center;padding-top:var(--spacing-0\\.5);padding-right:var(--spacing-1);padding-bottom:var(--spacing-1)}.likec4-edge-label--isStepEdge_true .likec4-edge-label__text{padding-block:var(--spacing-0\\.5);padding-right:var(--spacing-0\\.5)}.likec4-edge-label--pointerEvents_none{pointer-events:none}.likec4-overlay--withBackdrop_true::backdrop{background:color-mix(in oklab,var(--colors-likec4-overlay-backdrop) var(--_opacity),transparent);backdrop-filter:blur(var(--_blur));-webkit-backdrop-filter:blur(var(--_blur))}.likec4-overlay--fullscreen_true{inset:var(--spacing-0);padding:var(--spacing-0)}.likec4-overlay--withBackdrop_false::backdrop{display:none}.likec4-markdown-block--value_plaintext :where(p){white-space:preserve-breaks}.likec4-markdown-block--uselikec4palette_true{--code-background: color-mix(in oklab , var(--likec4-palette-stroke) 70%, transparent);--code-color: var(--likec4-palette-loContrast);--typography-spacing: calc(.5 * var(--text-fz-md))}.likec4-markdown-block--uselikec4palette_true :where(blockquote){padding:var(--spacing-xxs);--mix-backgroundColor: color-mix(in srgb, var(--likec4-palette-stroke) 65%, transparent);background-color:var(--mix-backgroundColor, var(--likec4-palette-stroke))}.likec4-markdown-block--uselikec4palette_true :where(hr){--mix-borderColor: color-mix(in srgb, var(--likec4-palette-stroke) 85%, transparent);border-color:var(--mix-borderColor, var(--likec4-palette-stroke))}.likec4-markdown-block--uselikec4palette_true :where(a){--mix-color: color-mix(in srgb, var(--likec4-palette-fill) 45%, transparent);color:var(--mix-color, var(--likec4-palette-fill));mix-blend-mode:difference}.likec4-markdown-block--uselikec4palette_true :where(strong){color:color-mix(in oklab,var(--likec4-palette-hiContrast) 50%,var(--likec4-palette-loContrast))}.likec4-navigation-panel-icon--variant_default{background-color:var(--colors-transparent)}.likec4-navigation-panel-icon--variant_default:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.likec4-navigation-panel-icon--variant_filled{background-color:var(--colors-likec4-panel-action-bg)}.likec4-navigation-panel-icon--variant_filled:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.likec4-navigation-panel-icon--type_warning{color:var(--colors-likec4-panel-action-warning)}.likec4-navigation-panel-icon--type_warning:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-warning-hover)}.action-btn--size_md{--ai-size: var(--ai-size-md)}.action-btn--radius_md{--ai-radius: var(--mantine-radius-md)}.action-btn--variant_transparent{--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}.action-btn--variant_filled{box-shadow:1px 1px 3px 0 transparent}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .action-btn--variant_filled{box-shadow:1px 1px 3px #0003}.likec4-root:is([data-likec4-reduced-graphics]) .action-btn--variant_filled{box-shadow:var(--shadows-none)}.action-btn--size_sm{--ai-size: var(--ai-size-sm)}.action-btn--radius_sm{--ai-radius: var(--mantine-radius-sm)}.likec4-compound-node--borderStyle_dashed{border-style:dashed}.likec4-compound-node--borderStyle_none{--_indicator-spacing: calc(var(--_border-width) * 2);border-color:var(--colors-transparent)!important;background-clip:border-box!important;-webkit-background-clip:border-box!important}.likec4-compound-node--isTransparent_false{border-color:var(--likec4-palette-stroke);background-color:var(--likec4-palette-fill)}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-compound-node--isTransparent_false{box-shadow:0 4px 10px .5px #0000001a,0 2px 2px -1px #0006}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node--isTransparent_false{box-shadow:var(--shadows-none)}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-compound-node--isTransparent_false{box-shadow:var(--shadows-none)!important}.likec4-compound-node--isTransparent_true{border-color:color-mix(in oklab,var(--likec4-palette-stroke) var(--_border-transparency),transparent);background-color:color-mix(in oklab,var(--likec4-palette-fill) var(--_compound-transparency),transparent)}.likec4-compound-node--inverseColor_true{--_compound-color: var(--likec4-palette-stroke)}[data-mantine-color-scheme=dark] .likec4-compound-node--inverseColor_true{--_compound-color: color-mix(in oklab, var(--likec4-palette-loContrast) 60%, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .likec4-compound-node--inverseColor_true .action-btn{--actionbtn-color-hovered-btn: var(--likec4-palette-loContrast)}[data-mantine-color-scheme=light] .likec4-compound-node--inverseColor_true .action-btn{--actionbtn-color: var(--likec4-palette-stroke);--actionbtn-color-hovered: var(--likec4-palette-stroke);--actionbtn-color-hovered-btn: var(--likec4-palette-hiContrast);--actionbtn-bg-hovered: var(--likec4-palette-fill)/50;--actionbtn-bg-hovered-btn: var(--likec4-palette-fill)}.likec4-compound-node--borderStyle_solid{border-style:solid}.likec4-compound-node--borderStyle_dotted{border-style:dotted}.likec4-element-shape--shapetype_html{border-radius:6px;transition:background-color .12s linear,box-shadow .13s var(--easings-in-out);background-color:var(--likec4-palette-fill);box-shadow:0 2px 1px #00000036,0 1px 1px color-mix(in oklab,var(--likec4-palette-stroke) 40%,transparent),0 5px 3px #0000001a;transition-delay:0ms}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html{transition:none}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html{box-shadow:#26394df2 0 20px 30px -10px}[data-mantine-color-scheme=dark] :where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html{box-shadow:#0a0b10e5 0 20px 30px -10px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}.likec4-element-shape--shapetype_html .likec4-shape-multiple{border-radius:6px;transition:all var(--durations-fast) var(--easings-in-out);position:absolute;content:" ";background-color:var(--likec4-palette-fill);z-index:var(--z-index--1);filter:brightness(.5)!important;visibility:visible;top:16px;left:16px;width:calc(100% - 6px);height:calc(100% - 6px)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{transform:translate(-14px,-14px)}.likec4-element-shape--shapetype_html .likec4-shape-outline{border-style:solid;border-width:var(--likec4-outline-size);border-radius:11px;border-color:var(--likec4-palette-outline);position:absolute;content:" ";animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity;top:calc(-1 * var(--likec4-outline-size) - 1px);left:calc(-1 * var(--likec4-outline-size) - 1px);width:calc(100% + 2 * var(--likec4-outline-size) + 2px);height:calc(100% + 2 * var(--likec4-outline-size) + 2px)}.likec4-element-shape--shapetype_svg{transition:fill .12s linear,filter .13s var(--easings-in-out);fill:var(--likec4-palette-fill);stroke:var(--likec4-palette-stroke);transition-delay:0ms;filter:drop-shadow(0 2px 1px rgba(0,0,0,.21)) drop-shadow(0 1px 1px color-mix(in oklab,var(--likec4-palette-stroke) 40%,transparent)) drop-shadow(0 5px 3px rgba(0,0,0,.1))}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_svg{filter:drop-shadow(0 2px 1px rgba(0,0,0,.12)) drop-shadow(0px 4px 2px rgba(0,0,0,.12)) drop-shadow(0px 8px 4px rgba(0,0,0,.12)) drop-shadow(0px 16px 8px rgba(0,0,0,.1)) drop-shadow(0px 32px 16px rgba(0,0,0,.09))}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_svg{filter:none}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_svg{filter:none}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_svg{filter:none}.likec4-element-shape--shapetype_svg [data-likec4-fill=fill]{fill:var(--likec4-palette-fill)}.likec4-element-shape--shapetype_svg [data-likec4-fill=stroke]{fill:var(--likec4-palette-stroke)}.likec4-element-shape--shapetype_svg [data-likec4-fill=mix-stroke]{fill:color-mix(in oklab,var(--likec4-palette-stroke) 90%,var(--likec4-palette-fill))}.likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transition:all var(--durations-fast) var(--easings-in-out);transform-origin:50% 50%;transform:translate(14px,14px) perspective(200px) translateZ(-4px);filter:brightness(.5)!important;stroke:var(--colors-none)}:where([data-likec4-shape=queue]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:75% 25%}:where([data-likec4-shape=cylinder]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:50% 100%}:where([data-likec4-shape=storage]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:50% 100%}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform:translate(2px,2px) perspective(200px) translateZ(-4px)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}.likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]) [data-likec4-fill=mix-stroke]{fill:var(--likec4-palette-fill)}.likec4-element-shape--shapetype_svg .likec4-shape-outline{stroke:var(--likec4-palette-outline);fill:var(--colors-none);stroke-width:3;stroke-opacity:.8;animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity}.likec4-tag--autoTextColor_false>span{color:var(--colors-likec4-tag-text)}.likec4-tag--autoTextColor_false>span:first-child{opacity:.65}.likec4-tag--autoTextColor_true>span{background:inherit;color:var(--colors-transparent);filter:invert(1) grayscale(1) brightness(1.3) contrast(1000);background-clip:text;-webkit-background-clip:text;mix-blend-mode:plus-lighter}.hover\\:likec4-tag--autoTextColor_true:is(:hover,[data-hover])>span{background:inherit;color:var(--colors-transparent);filter:invert(1) grayscale(1) brightness(1.3) contrast(1000);background-clip:text;-webkit-background-clip:text;mix-blend-mode:plus-lighter}.hover\\:likec4-tag--autoTextColor_false:is(:hover,[data-hover])>span{color:var(--colors-likec4-tag-text)}.hover\\:likec4-tag--autoTextColor_false:is(:hover,[data-hover])>span:first-child{opacity:.65}@media screen and (min-width:48rem){.likec4-overlay--fullscreen_false{--_border-radius: 6px;--_offset: 1rem;inset:var(--_inset) var(--_inset) var(--_offset) var(--_inset);padding:var(--spacing-1\\.5);border-radius:calc(var(--_border-radius) - 2px);width:calc(100vw - 2 * var(--_inset));height:calc(100vh - var(--_offset) - var(--_inset))}}@media screen and (min-width:62rem){.likec4-overlay--fullscreen_false{--_offset: 1rem}}@media screen and (min-width:75rem){.likec4-overlay--fullscreen_false{--_offset: 2rem}}@media screen and (min-width:88rem){.likec4-overlay--fullscreen_false{--_offset: 4rem}}@media print{.likec4-markdown-block--uselikec4palette_true :where(a){mix-blend-mode:normal!important}}@media print{.likec4-tag--autoTextColor_true>span{mix-blend-mode:normal!important}}@media print{.hover\\:likec4-tag--autoTextColor_true:is(:hover,[data-hover])>span{mix-blend-mode:normal!important}}}@layer recipes.slots{@layer _base{.likec4-navlink__root{border-radius:var(--radii-sm);padding-inline:var(--spacing-xs);padding-block:var(--spacing-xxs)}.likec4-navlink__root:is(:hover,[data-hover]):not([data-active]){background-color:var(--colors-mantine-colors-gray\\[1\\])}[data-mantine-color-scheme=dark] .likec4-navlink__root:is(:hover,[data-hover]):not([data-active]){background-color:var(--colors-mantine-colors-dark\\[5\\])}.likec4-navlink__body{gap:var(--spacing-0\\.5);display:flex;flex-direction:column}.likec4-navlink__section:where([data-position=left]){margin-inline-end:var(--spacing-xxs)}.likec4-navlink__label{display:block;font-size:var(--font-sizes-sm);font-weight:500;line-height:1.2}.likec4-navlink__description{display:block;font-size:var(--font-sizes-xxs);line-height:1.2}.likec4-edge__path{fill:var(--colors-none);stroke-dashoffset:0}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge__path{transition:stroke .13s ease-out,stroke-width .13s ease-out;animation-duration:.8s;animation-iteration-count:infinite;animation-timing-function:linear;animation-fill-mode:both;animation-name:xyedgeAnimated;animation-play-state:paused}:where([data-edge-dir=back]) .likec4-edge__path{animation-direction:reverse}:where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]) .likec4-edge__path{animation-play-state:paused}:where([data-likec4-zoom-small=true]) .likec4-edge__path{animation-name:none}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-edge__path{stroke-dasharray:none!important;animation-play-state:paused}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge__path{animation-play-state:running;animation-delay:.45s}.likec4-root:not([data-likec4-reduced-graphics]) :where(.selected,[data-edge-active=true],[data-edge-animated=true]) .likec4-edge__path{animation-play-state:running;animation-delay:0ms}.likec4-edge__pathBg{pointer-events:none;fill:var(--colors-none);stroke-width:calc(var(--xy-edge-stroke-width) + 2);stroke-opacity:.08}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge__pathBg{--transition-prop: stroke-width, stroke-opacity;transition-property:stroke-width,stroke-opacity;--transition-duration: var(--durations-fast);transition-duration:var(--durations-fast);--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge__pathBg{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out);stroke-width:calc(var(--xy-edge-stroke-width) + 4);stroke-opacity:.2}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-edge__pathBg{stroke-width:calc(var(--xy-edge-stroke-width) + 6);stroke-opacity:.25}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) :where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-edge__pathBg{stroke-opacity:.4}.likec4-edge__markersCtx{fill:var(--xy-edge-stroke);stroke:var(--xy-edge-stroke)}.likec4-edge__middlePoint{visibility:hidden;offset-distance:50%;cx:0;cy:0;r:4px;pointer-events:none}}.likec4-navlink__label--truncateLabel_true,.likec4-navlink__description--truncateLabel_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:var(--sizes-100\\%)}}@layer utilities{@layer compositions{.layerStyle_likec4\\.panel{padding:var(--spacing-1);border:1px solid var(--colors-likec4-panel-border);border-radius:var(--radii-0);background-color:var(--colors-likec4-panel-bg)}.layerStyle_likec4\\.dropdown{padding:var(--spacing-2);border:1px solid var(--colors-likec4-dropdown-border);border-radius:var(--radii-md);background-color:var(--colors-likec4-dropdown-bg);box-shadow:var(--shadows-lg)}.layerStyle_likec4\\.tag{border:var(--borders-none);border-radius:3px;color:var(--colors-likec4-tag-text);background-color:var(--colors-likec4-tag-bg)}.layerStyle_likec4\\.tag:is(:hover,[data-hover]){background-color:var(--colors-likec4-tag-bg-hover)}.textStyle_xs{font-size:.75rem;line-height:1rem}.layerStyle_likec4\\.panel\\.action{border:var(--borders-transparent);padding-inline:var(--spacing-xxs);padding-block:var(--spacing-xxs);border-radius:var(--radii-sm);color:var(--colors-likec4-panel-action);cursor:pointer}.layerStyle_likec4\\.panel\\.action:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);cursor:not-allowed}.layerStyle_likec4\\.panel\\.action:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover);background-color:var(--colors-likec4-panel-action-bg-hover)}.layerStyle_likec4\\.panel\\.action\\.filled{border:var(--borders-transparent);padding-inline:var(--spacing-xxs);padding-block:var(--spacing-xxs);border-radius:var(--radii-sm);color:var(--colors-likec4-panel-action);cursor:pointer;background-color:var(--colors-likec4-panel-action-bg)}.layerStyle_likec4\\.panel\\.action\\.filled:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);cursor:not-allowed;background-color:var(--colors-likec4-panel-action-bg)}.layerStyle_likec4\\.panel\\.action\\.filled:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover);background-color:var(--colors-likec4-panel-action-bg-hover)}@container (min-width: 40rem){.layerStyle_likec4\\.panel{border-radius:var(--radii-md);padding-inline:var(--spacing-2);box-shadow:var(--shadows-lg)}}}.--mantine-cursor-pointer_pointer{--mantine-cursor-pointer: pointer}.--thickness_1px{--thickness: 1px}.--bleed-x_token\\(spacing\\.2\\,_2\\){--bleed-x: var(--spacing-2, 2)}.--bleed-y_token\\(spacing\\.2\\,_2\\){--bleed-y: var(--spacing-2, 2)}.--text-fz_\\{fontSizes\\.sm\\}{--text-fz: var(--font-sizes-sm)}.--view-title-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}{--view-title-color: var(--colors-mantine-colors-dark\\[1\\])}.--likec4-icon-size_24px{--likec4-icon-size: 24px}.--ti-size_var\\(--likec4-icon-size\\,_24px\\){--ti-size: var(--likec4-icon-size, 24px)}.--_color_var\\(--likec4-palette-stroke\\){--_color: var(--likec4-palette-stroke)}.--ai-radius_0px{--ai-radius: 0px}.--badge-radius_2px{--badge-radius: 2px}.--badge-fz_9\\.5px{--badge-fz: 9.5px}.--badge-padding-x_3px{--badge-padding-x: 3px}.--badge-height_13\\.5px{--badge-height: 13.5px}.--badge-lh_1{--badge-lh: 1}.--badge-bg_var\\(--likec4-palette-fill\\){--badge-bg: var(--likec4-palette-fill)}.--badge-color_var\\(--likec4-palette-hiContrast\\){--badge-color: var(--likec4-palette-hiContrast)}.bg_dots{background:dots}.bg_transparent{background:var(--colors-transparent)}.m_0{margin:var(--spacing-0)}.p_0{padding:var(--spacing-0)}.bg_likec4\\.overlay\\.body{background:var(--colors-likec4-overlay-body)}.p_xl{padding:var(--spacing-xl)}.bd_1px_solid{border:1px solid}.bg_mantine\\.colors\\.default{background:var(--colors-mantine-colors-default)}.p_\\[4px_7px\\]{padding:4px 7px}.bg_\\[transparent\\]{background:var(--colors-transparent)}.p_1{padding:var(--spacing-1)}.p_4{padding:var(--spacing-4)}.bg_white{background:#fff}.bd_default{border:var(--borders-default)}.p_0\\.5{padding:var(--spacing-0\\.5)}.m_xs{margin:var(--spacing-xs)}.p_md{padding:var(--spacing-md)}.p_1\\.5{padding:var(--spacing-1\\.5)}.p_8{padding:var(--spacing-8)}.p_xxs{padding:var(--spacing-xxs)}.p_\\[4px_6px\\]{padding:4px 6px}.bg_mantine\\.colors\\.gray\\[2\\]{background:var(--colors-mantine-colors-gray\\[2\\])}.bg_mantine\\.colors\\.gray\\[3\\]{background:var(--colors-mantine-colors-gray\\[3\\])}.bd_2px_solid{border:2px solid}.inset_0{inset:var(--spacing-0)}.bd_transparent{border:var(--borders-transparent)}.bd_none{border:var(--borders-none)}.bg_\\[_linear-gradient\\(180deg\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_60\\%\\,_transparent\\)\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_20\\%\\,_transparent\\)_8px\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_14\\%\\,_transparent\\)_20px\\,_transparent_80px_\\)\\,_linear-gradient\\(180deg\\,_var\\(--likec4-palette-fill\\)\\,_var\\(--likec4-palette-fill\\)_4px\\,_transparent_4px\\)\\,_\\{colors\\.likec4\\.overlay\\.body\\}_\\]{background:linear-gradient(180deg,color-mix(in oklab,var(--likec4-palette-fill) 60%,transparent),color-mix(in oklab,var(--likec4-palette-fill) 20%,transparent) 8px,color-mix(in oklab,var(--likec4-palette-fill) 14%,transparent) 20px,transparent 80px),linear-gradient(180deg,var(--likec4-palette-fill),var(--likec4-palette-fill) 4px,transparent 4px),var(--colors-likec4-overlay-body)}.bg_mantine\\.colors\\.body{background:var(--colors-mantine-colors-body)}.p_\\[10px_8px\\]{padding:10px 8px}.bd_1px_dashed{border:1px dashed}.bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.p_\\[6px_8px\\]{padding:6px 8px}.bd_3\\.5px_solid{border:3.5px solid}.p_xs{padding:var(--spacing-xs)}.p_\\[4px_8px\\]{padding:4px 8px}.p_\\[1px_4px\\]{padding:1px 4px}.p_\\[3px_6px\\]{padding:3px 6px}.bg_var\\(--likec4-palette-fill\\)\\/75{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 75%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}.bd_1px_solid_\\{colors\\.mantine\\.colors\\.defaultBorder\\}{border:1px solid var(--colors-mantine-colors-default-border)}.p_\\[1px_5px\\]{padding:1px 5px}.bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.p_\\[6px_2px_0_2px\\]{padding:6px 2px 0}.p_\\[0_4px_5px_4px\\]{padding:0 4px 5px}.bg_mantine\\.colors\\.dark\\[9\\]\\/30{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[9\\]) 30%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[9\\]))}.bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.p_\\[12px_8px_12px_14px\\]{padding:12px 8px 12px 14px}.bd_2px_dashed{border:2px dashed}.p_2{padding:var(--spacing-2)}.bd_3px_dashed{border:3px dashed}.gap_20{gap:20px}.bdr_sm{border-radius:var(--radii-sm)}.bd-w_3{border-width:3px}.bd-c_likec4\\.overlay\\.border{border-color:var(--colors-likec4-overlay-border)}.ring_none{outline:var(--borders-none)}.gap_lg{gap:var(--spacing-lg)}.gap_md{gap:var(--spacing-md)}.gap_sm{gap:var(--spacing-sm)}.flex_1{flex:1 1 0%}.transition_fast{transition:all var(--durations-fast) var(--easings-in-out)}.td_none{text-decoration:none}.bd-c_mantine\\.colors\\.defaultBorder{border-color:var(--colors-mantine-colors-default-border)}.gap_xs{gap:var(--spacing-xs)}.gap_xxs{gap:var(--spacing-xxs)}.gap_1{gap:var(--spacing-1)}.ov_hidden{overflow:hidden}.gap_0\\.5{gap:var(--spacing-0\\.5)}.gap_\\[4px\\]{gap:4px}.px_xs{padding-inline:var(--spacing-xs)}.py_xxs{padding-block:var(--spacing-xxs)}.px_sm{padding-inline:var(--spacing-sm)}.gap_8px{gap:8px}.gap_1\\.5{gap:var(--spacing-1\\.5)}.bdr_\\[4px\\]{border-radius:4px}.px_1\\.5{padding-inline:var(--spacing-1\\.5)}.gap_3{gap:var(--spacing-3)}.mx_calc\\(var\\(--bleed-x\\,_0\\)_\\*_-1\\){margin-inline:calc(var(--bleed-x, 0) * -1)}.my_calc\\(var\\(--bleed-y\\,_0\\)_\\*_-1\\){margin-block:calc(var(--bleed-y, 0) * -1)}.py_2\\.5{padding-block:var(--spacing-2\\.5)}.px_2{padding-inline:var(--spacing-2)}.gap_2{gap:var(--spacing-2)}.offset_2{offset:2px}.offset_10{offset:10px}.py_1\\.5{padding-block:var(--spacing-1\\.5)}.bd-l_2px_dotted{border-left:2px dotted}.px_1{padding-inline:var(--spacing-1)}.py_0\\.5{padding-block:var(--spacing-0\\.5)}.bdr_\\[2px\\]{border-radius:2px}.bd-w_4{border-width:4px}.px_4{padding-inline:var(--spacing-4)}.py_1{padding-block:var(--spacing-1)}.gap_\\[1px\\]{gap:1px}.ov_auto{overflow:auto}.ovs-b_contain{overscroll-behavior:contain}.ov_visible{overflow:visible}.px_xxs{padding-inline:var(--spacing-xxs)}.my_10{margin-block:var(--spacing-10)}.flex_1_1_40\\%{flex:1 1 40%}.bd-c_mantine\\.colors\\.gray\\[4\\]{border-color:var(--colors-mantine-colors-gray\\[4\\])}.bd-c_mantine\\.colors\\.gray\\[5\\]{border-color:var(--colors-mantine-colors-gray\\[5\\])}.bdr_3{border-radius:3px}.bd-c_mantine\\.colors\\.orange\\[6\\]{border-color:var(--colors-mantine-colors-orange\\[6\\])}.tw_pretty{text-wrap:pretty}.flex_0{flex:0}.flex_0_0_40px{flex:0 0 40px}.gap_\\[24px_20px\\]{gap:24px 20px}.bd-c_mantine\\.colors\\.dark\\[3\\]{border-color:var(--colors-mantine-colors-dark\\[3\\])}.bd-t_none{border-top:var(--borders-none)}.bd-l_none{border-left:var(--borders-none)}.bdr_2px{border-radius:2px}.gap_4{gap:var(--spacing-4)}.gap_6{gap:var(--spacing-6)}.gap_\\[12px_16px\\]{gap:12px 16px}.bd-c_mantine\\.colors\\.gray\\[3\\]{border-color:var(--colors-mantine-colors-gray\\[3\\])}.flex_0_1_auto{flex:0 1 auto}.transition_all_150ms_ease{transition:all .15s ease}.bdr_xs{border-radius:var(--radii-xs)}.flex_1_1_100\\%{flex:1 1 100%}.offset_0{offset:0}.py_4{padding-block:var(--spacing-4)}.gap_8{gap:var(--spacing-8)}.px_md{padding-inline:var(--spacing-md)}.py_xs{padding-block:var(--spacing-xs)}.grid-c_1{grid-column:1}.grid-c_2{grid-column:2}.grid-c_3{grid-column:3}.bd-b_1px_solid{border-bottom:1px solid}.gap_0{gap:var(--spacing-0)}.gap_\\[10px_12px\\]{gap:10px 12px}.py_3{padding-block:var(--spacing-3)}.offset_4{offset:4px}.flex_1_0_auto{flex:1 0 auto}.ring_none\\!{outline:var(--borders-none)!important}.bdr_4px{border-radius:4px}.mx_auto{margin-inline:auto}.py_md{padding-block:var(--spacing-md)}.bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.flex_0_0_var\\(--likec4-icon-size\\,_24px\\){flex:0 0 var(--likec4-icon-size, 24px)}.bdr_md{border-radius:var(--radii-md)}.py_xl{padding-block:var(--spacing-xl)}.bd-w_1{border-width:1px}.bd-c_\\[var\\(--_color\\)\\/30\\]{--mix-borderColor: color-mix(in srgb, var(--_color) 30%, transparent);border-color:var(--mix-borderColor, var(--_color))}.transition_all_100ms_ease-in{transition:all .1s ease-in}.transition_all_150ms_ease-in-out{transition:all .15s ease-in-out}.py_sm{padding-block:var(--spacing-sm)}.flex_0_0_auto{flex:0 0 auto}.flex_0_0_70px{flex:0 0 70px}.bd-w_3px{border-width:3px}.border-style_dashed{border-style:dashed}.px_3{padding-inline:var(--spacing-3)}.px_5{padding-inline:var(--spacing-5)}.gap_6px{gap:6px}.px_4px{padding-inline:4px}.cursor_pointer{cursor:pointer}.pos_absolute{position:absolute}.z_999{z-index:999}.c_gray{color:gray}.pos_fixed{position:fixed}.bx-sh_xl{box-shadow:var(--shadows-xl)}.d_flex{display:flex}.ai_flex-start{align-items:flex-start}.flex-d_row{flex-direction:row}.flex-wrap_nowrap{flex-wrap:nowrap}.ai_center{align-items:center}.c_red{color:red}.ai_stretch{align-items:stretch}.flex-d_column{flex-direction:column}.c_teal{color:teal}.op_1{opacity:1}.op_0\\.45{opacity:.45}.us_all{-webkit-user-select:all;user-select:all}.bg-c_transparent{background-color:var(--colors-transparent)}.stk_2\\.5{stroke:2.5px}.op_0\\.7{opacity:.7}.fill_\\[\\#FCFBF7\\]{fill:#fcfbf7}.bx-sh_xs{box-shadow:var(--shadows-xs)}.fs_sm{font-size:var(--font-sizes-sm)}.fw_500{font-weight:500}.c_mantine\\.colors\\.placeholder{color:var(--colors-mantine-colors-placeholder)}.fs_11px{font-size:11px}.fw_600{font-weight:600}.lh_1{line-height:var(--line-heights-1)}.stk_2{stroke:2px}.pointer-events_none{pointer-events:none}.main-axis_4{main-axis:4px}.pos_bottom-start{position:bottom-start}.pos_relative{position:relative}.pointer-events_all{pointer-events:all}.us_none{-webkit-user-select:none;user-select:none}.d_none{display:none}.flex-sh_1{flex-shrink:1}.flex-g_1{flex-grow:1}.flex-g_0{flex-grow:0}.op_0\\.3{opacity:.3}.bg-c_mantine\\.colors\\.gray\\[1\\]{background-color:var(--colors-mantine-colors-gray\\[1\\])}.stk_1\\.5{stroke:1.5px}.bd-e-w_var\\(--thickness\\){border-inline-end-width:var(--thickness)}.c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.bg-c_likec4\\.panel\\.action\\.warning\\.bg{background-color:var(--colors-likec4-panel-action-warning-bg)}.c_likec4\\.panel\\.action{color:var(--colors-likec4-panel-action)}.trunc_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c_likec4\\.panel\\.text\\.dimmed{color:var(--colors-likec4-panel-text-dimmed)}.bg-c_\\[rgb\\(34_34_34_\\/_var\\(--_opacity\\,_95\\%\\)\\)\\]{background-color:rgb(34 34 34 / var(--_opacity, 95%))}.bkdp_auto{backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );-webkit-backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, )}.bkdp-blur_var\\(--_blur\\,_10px\\){--backdrop-blur: blur(var(--_blur, 10px))}.jc_stretch{justify-content:stretch}.cq-n_likec4-search-elements{container-name:likec4-search-elements}.cq-t_size{container-type:size}.d_contents{display:contents}.d_grid{display:grid}.order_6{order:6}.stk_1\\.8{stroke:1.8px}.trunc_end{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trs-dur_normal{--transition-duration: var(--durations-normal);transition-duration:var(--durations-normal)}.trs-dly_0\\.2s{transition-delay:.2s}.fill_none{fill:var(--colors-none)}.jc_center{justify-content:center}.z_1{z-index:var(--z-index-1)}.ai_flex-end{align-items:flex-end}.justify-items_stretch{justify-items:stretch}.fs_lg{font-size:var(--font-sizes-lg)}.ai_baseline{align-items:baseline}.flex-wrap_wrap{flex-wrap:wrap}.translate_auto{translate:var(--translate-x) var(--translate-y)}.translate-x_\\[-8px\\]{--translate-x: -8px}.bd-be-w_var\\(--thickness\\){border-block-end-width:var(--thickness)}.cursor_default{cursor:default}.c_orange{color:orange}.pos_top-start{position:top-start}.pos_right{position:right}.op_0\\.65{opacity:.65}.d_inline-flex{display:inline-flex}.op_0\\.5{opacity:.5}.d_block{display:block}.fs_xxs{font-size:var(--font-sizes-xxs)}.lh_sm{line-height:var(--line-heights-sm)}.c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.white-space_nowrap{white-space:nowrap}.white-space-collapse_preserve-breaks{white-space-collapse:preserve-breaks}.fs_xs{font-size:var(--font-sizes-xs)}.fw_medium{font-weight:var(--font-weights-medium)}.trf_translateY\\(-4px\\){transform:translateY(-4px)}.c_mantine\\.colors\\.gray\\[9\\]{color:var(--colors-mantine-colors-gray\\[9\\])}.bx-sh_lg{box-shadow:var(--shadows-lg)}.pos_right-start{position:right-start}.stk_1\\.7{stroke:1.7px}.c_likec4\\.panel\\.text{color:var(--colors-likec4-panel-text)}.c_green{color:green}.pos_bottom-end{position:bottom-end}.op_0\\.8{opacity:.8}.me_0\\.5{margin-inline-end:var(--spacing-0\\.5)}.cross-axis_-22{cross-axis:-22px}.bg-c_none{background-color:var(--colors-none)}.fw_400{font-weight:400}.bx-sh_md{box-shadow:var(--shadows-md)}.main-axis_2{main-axis:2px}.lh_1\\.1{line-height:1.1}.main-axis_10{main-axis:10px}.op_0\\.6{opacity:.6}.pos_top{position:top}.main-axis_12{main-axis:12px}.ta_center{text-align:center}.bx-sh_inset_1px_1px_3px_0px_\\#00000024{box-shadow:inset 1px 1px 3px #00000024}.trf_translate\\(-50\\%\\,_-50\\%\\){transform:translate(-50%,-50%)}.flex-sh_0{flex-shrink:0}.ms_0{margin-inline-start:var(--spacing-0)}.z_9{z-index:9}.ta_left{text-align:left}.lh_1\\.25{line-height:1.25}.bx-s_border-box{box-sizing:border-box}.c_mantine\\.colors\\.text{color:var(--colors-mantine-colors-text)}.cursor_move{cursor:move}.ff_likec4\\.element{font-family:var(--fonts-likec4-element)}.font-optical-sizing_auto{font-optical-sizing:auto}.font-style_normal{font-style:normal}.fs_24px{font-size:24px}.lh_xs{line-height:var(--line-heights-xs)}.as_flex-start{align-self:flex-start}.c_\\[var\\(--view-title-color\\,_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}\\)\\]{color:var(--view-title-color, var(--colors-mantine-colors-gray\\[7\\]))}.fs_15px{font-size:15px}.lh_1\\.4{line-height:1.4}.c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}.grid-tc_min-content_1fr{grid-template-columns:min-content 1fr}.grid-ar_min-content_max-content{grid-auto-rows:min-content max-content}.justify-self_end{justify-self:end}.ta_right{text-align:right}.cursor_se-resize{cursor:se-resize}.ai_start{align-items:start}.jc_space-between{justify-content:space-between}.stk_1\\.6{stroke:1.6px}.grid-ar_min-content{grid-auto-rows:min-content}.white-space_pre-wrap{white-space:pre-wrap}.tov_unset{text-overflow:unset}.tov_ellipsis{text-overflow:ellipsis}.wb_break-word{word-break:break-word}.wb_normal{word-break:normal}.bg-c_mantine\\.colors\\.white{background-color:var(--colors-mantine-colors-white)}.jc_flex-end{justify-content:flex-end}.c_mantine\\.colors\\.gray\\[6\\]{color:var(--colors-mantine-colors-gray\\[6\\])}.fw_700{font-weight:700}.justify-self_stretch{justify-self:stretch}.as_start{align-self:start}.ps_\\[16px\\]{padding-inline-start:16px}.pe_2\\.5{padding-inline-end:var(--spacing-2\\.5)}.stk_1\\.2{stroke:1.2px}.d_inline-block{display:inline-block}.lh_1\\.2{line-height:1.2}.c_var\\(--likec4-palette-hiContrast\\){color:var(--likec4-palette-hiContrast)}.fs_xl{font-size:var(--font-sizes-xl)}.c_mantine\\.colors\\.defaultColor{color:var(--colors-mantine-colors-default-color)}.bx-sh_none{box-shadow:var(--shadows-none)}.pos_top-right{position:top-right}.pos_top-left{position:top-left}.grid-cs_1{grid-column-start:1}.grid-ce_4{grid-column-end:4}.grid-tc_1fr_30px_1fr{grid-template-columns:1fr 30px 1fr}.justify-items_start{justify-items:start}.c_dark{color:dark}.stk_3\\.5{stroke:3.5px}.cq-n_likec4-tree{container-name:likec4-tree}.cq-t_inline-size{container-type:inline-size}.fs_10px{font-size:10px}.lh_1\\.3{line-height:1.3}.order_2{order:2}.grayscale_0\\.9{--grayscale: grayscale(.9)}.filter_auto{filter:var(--blur, ) var(--brightness, ) var(--contrast, ) var(--grayscale, ) var(--hue-rotate, ) var(--invert, ) var(--saturate, ) var(--sepia, ) var(--drop-shadow, )}.cross-axis_50{cross-axis:50px}.sr_true{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fs_13px{font-size:13px}.fs_16px{font-size:16px}.c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}.fs_12px{font-size:12px}.fs_md{font-size:var(--font-sizes-md)}.bg-c_\\[rgb\\(34_34_34_\\/_0\\.7\\)\\]{background-color:#222222b3}.z_902{z-index:902}.bkdp-blur_10px{--backdrop-blur: blur(10px)}.trf_translateX\\(-50\\%\\){transform:translate(-50%)}.z_903{z-index:903}.stk_likec4\\.compare\\.manual\\.outline{stroke:var(--colors-likec4-compare-manual-outline)}.stk-w_8px{stroke-width:8px}.stk-op_0\\.5{stroke-opacity:.5}.z_9999{z-index:9999}.fill_\\[var\\(--xy-edge-stroke\\)\\]{fill:var(--xy-edge-stroke)}.stk_transparent{stroke:var(--colors-transparent)}.fill-opacity_0\\.5{fill-opacity:.5}.stk-w_10{stroke-width:10}.r_4{r:4px}.cursor_grab{cursor:grab}.vis_hidden{visibility:hidden}.trs-dur_120ms{--transition-duration: .12s;transition-duration:.12s}.trs-prop_visibility\\,_fill\\,_fill-opacity\\,_r{--transition-prop: visibility, fill, fill-opacity, r;transition-property:visibility,fill,fill-opacity,r}.trs-tmf_inOut{--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}.trs-dly_20ms{transition-delay:20ms}.bg-c_var\\(--likec4-palette-fill\\)\\/15{--mix-backgroundColor: color-mix(in srgb, var(--likec4-palette-fill) 15%, transparent);background-color:var(--mix-backgroundColor, var(--likec4-palette-fill))}.fw_bold{font-weight:700}.ls_\\.75px{letter-spacing:.75px}.c_\\[var\\(--_color\\)\\/75\\]{--mix-color: color-mix(in srgb, var(--_color) 75%, transparent);color:var(--mix-color, var(--_color))}.bg-c_var\\(--likec4-palette-fill\\){background-color:var(--likec4-palette-fill)}.translate-x_-1\\/2{--translate-x: -50%}.translate-y_-1\\/2{--translate-y: -50%}.ring-c_likec4\\.compare\\.manual\\.outline{outline-color:var(--colors-likec4-compare-manual-outline)}.ring-w_4px{outline-width:4px}.outline-style_dashed{outline-style:dashed}.ring-o_1\\.5{outline-offset:var(--spacing-1\\.5)}.bg-c_mantine\\.colors\\.body\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-body) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-body))}.fill_var\\(--likec4-palette-fill\\){fill:var(--likec4-palette-fill)}.stk_var\\(--likec4-palette-stroke\\){stroke:var(--likec4-palette-stroke)}.stk-w_1{stroke-width:1}.filter_drop-shadow\\(0_2px_3px_rgb\\(0_0_0_\\/_22\\%\\)\\)_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_10\\%\\)\\){filter:drop-shadow(0 2px 3px rgb(0 0 0 / 22%)) drop-shadow(0 1px 8px rgb(0 0 0 / 10%))}.ls_0\\.2px{letter-spacing:.2px}.tt_lowercase{text-transform:lowercase}.op_0\\.25{opacity:.25}.stk-w_5{stroke-width:5}.pos_right-end{position:right-end}.jc_flex-start{justify-content:flex-start}.pos_left-start{position:left-start}.top_4{top:var(--spacing-4)}.right_4{right:var(--spacing-4)}.top_10{top:var(--spacing-10)}.left_10{left:var(--spacing-10)}.w_\\[calc\\(100vw_-_\\(\\{spacing\\.10\\}_\\*_2\\)\\)\\]{width:calc(100vw - (var(--spacing-10) * 2))}.h_max-content{height:max-content}.max-h_\\[calc\\(100vh_-_\\(\\{spacing\\.10\\}_\\*_3\\)\\)\\]{max-height:calc(100vh - (var(--spacing-10) * 3))}.mt_md{margin-top:var(--spacing-md)}.min-h_24{min-height:24px}.max-w_500{max-width:500px}.pr_0{padding-right:var(--spacing-0)}.h_12{height:12px}.w_12{width:12px}.h_30px{height:30px}.pl_sm{padding-left:var(--spacing-sm)}.pr_1{padding-right:var(--spacing-1)}.w_100\\%{width:var(--sizes-100\\%)}.pr_2\\.5{padding-right:var(--spacing-2\\.5)}.top_0{top:var(--spacing-0)}.left_0{left:var(--spacing-0)}.max-w_calc\\(100vw\\){max-width:100vw}.max-w_200px{max-width:200px}.max-w_calc\\(100vw_-_50px\\){max-width:calc(100vw - 50px)}.max-w_calc\\(100vw_-_250px\\){max-width:calc(100vw - 250px)}.max-h_calc\\(100vh_-_200px\\){max-height:calc(100vh - 200px)}.max-h_calc\\(100vh_-_160px\\){max-height:calc(100vh - 160px)}.h_100\\%{height:var(--sizes-100\\%)}.mb_1{margin-bottom:var(--spacing-1)}.max-h_100vh{max-height:100vh}.pt_\\[20px\\]{padding-top:20px}.pl_md{padding-left:var(--spacing-md)}.pr_md{padding-right:var(--spacing-md)}.pb_sm{padding-bottom:var(--spacing-sm)}.pr_xs{padding-right:var(--spacing-xs)}.lc_5{-webkit-line-clamp:5}.lc_5,.lc_2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.lc_2{-webkit-line-clamp:2}.lc_3{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.top_0\\.5{top:var(--spacing-0\\.5)}.right_0\\.5{right:var(--spacing-0\\.5)}.w_full{width:var(--sizes-full)}.h_full{height:var(--sizes-full)}.bottom_0{bottom:var(--spacing-0)}.max-w_50{max-width:50px}.h_5{height:5px}.w_max-content{width:max-content}.pt_2{padding-top:var(--spacing-2)}.mt_2{margin-top:var(--spacing-2)}.mt_0{margin-top:var(--spacing-0)}.w_350{width:350px}.pl_2\\.5{padding-left:var(--spacing-2\\.5)}.bd-l-c_mantine\\.colors\\.gray\\[3\\]{border-left-color:var(--colors-mantine-colors-gray\\[3\\])}.bdr-bl_sm{border-bottom-left-radius:var(--radii-sm)}.bdr-br_sm{border-bottom-right-radius:var(--radii-sm)}.pl_3{padding-left:var(--spacing-3)}.w_\\[20px\\]{width:20px}.mt_1{margin-top:var(--spacing-1)}.mb_xxs{margin-bottom:var(--spacing-xxs)}.pb_lg{padding-bottom:var(--spacing-lg)}.max-w_calc\\(100cqw_-_52px\\){max-width:calc(100cqw - 52px)}.min-w_200px{min-width:200px}.max-h_calc\\(100cqh_-_100px\\){max-height:calc(100cqh - 100px)}.mt_4{margin-top:var(--spacing-4)}.mt_xs{margin-top:var(--spacing-xs)}.h_auto{height:auto}.pt_6{padding-top:var(--spacing-6)}.mb_10{margin-bottom:var(--spacing-10)}.pt_100\\%{padding-top:100%}.left_2{left:var(--spacing-2)}.bottom_2{bottom:var(--spacing-2)}.top_md{top:var(--spacing-md)}.left_md{left:var(--spacing-md)}.w_8{width:8px}.h_8{height:8px}.mr_sm{margin-right:var(--spacing-sm)}.h_26{height:26px}.top_\\[1px\\]{top:1px}.right_\\[1px\\]{right:1px}.pt_xxs{padding-top:var(--spacing-xxs)}.max-w_calc\\(100cqw_-_32px\\){max-width:calc(100cqw - 32px)}.min-w_calc\\(100cqw_-_50px\\){min-width:calc(100cqw - 50px)}.w_100vw{width:100vw}.h_100vh{height:100vh}.max-w_100vw{max-width:100vw}.h_40px{height:40px}.w_40px{width:40px}.w_14px{width:14px}.h_14px{height:14px}.bottom_0\\.5{bottom:var(--spacing-0\\.5)}.mb_sm{margin-bottom:var(--spacing-sm)}.lc_1{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.mt_6{margin-top:var(--spacing-6)}.pt_xs{padding-top:var(--spacing-xs)}.w_300{width:300px}.min-w_0{min-width:0}.min-h_32px{min-height:32px}.max-w_min\\(200px\\,_100\\%\\){max-width:min(200px,100%)}.min-w_60px{min-width:60px}.mb_0{margin-bottom:var(--spacing-0)}.h_36px{height:36px}.min-w_24{min-width:24px}.mb_4{margin-bottom:var(--spacing-4)}.top_12{top:12px}.right_12{right:12px}.mt_sm{margin-top:var(--spacing-sm)}.ml_sm{margin-left:var(--spacing-sm)}.pl_1{padding-left:var(--spacing-1)}.bd-b-c_mantine\\.colors\\.defaultBorder{border-bottom-color:var(--colors-mantine-colors-default-border)}.max-h_70vh{max-height:70vh}.mb_2{margin-bottom:var(--spacing-2)}.max-w_8xl{max-width:8xl}.pl_\\[48px\\]{padding-left:48px}.mr_1{margin-right:var(--spacing-1)}.min-h_60px{min-height:60px}.h_var\\(--likec4-icon-size\\,_24px\\){height:var(--likec4-icon-size, 24px)}.w_var\\(--likec4-icon-size\\,_24px\\){width:var(--likec4-icon-size, 24px)}.top_\\[2rem\\]{top:2rem}.left_\\[50\\%\\]{left:50%}.max-w_600px{max-width:600px}.pl_2{padding-left:var(--spacing-2)}.pt_0\\.5{padding-top:var(--spacing-0\\.5)}.w_5px{width:5px}.top_1{top:var(--spacing-1)}.right_0{right:var(--spacing-0)}.w_min-content{width:min-content}.h_min-content{height:min-content}.min-w_200{min-width:200px}.max-w_calc\\(100vw_-_20px\\){max-width:calc(100vw - 20px)}.pt_0{padding-top:var(--spacing-0)}.pb_0{padding-bottom:var(--spacing-0)}.ml_2{margin-left:var(--spacing-2)}.h_xs{height:xs}.pb_8{padding-bottom:var(--spacing-8)}.pt_4{padding-top:var(--spacing-4)}.max-w_220px{max-width:220px}.\\[\\&_\\.action-icon\\]\\:--ai-size_2rem .action-icon{--ai-size: 2rem}[data-mantine-color-scheme=light] .light\\:--icon-color_\\{colors\\.mantine\\.colors\\.gray\\[6\\]\\}{--icon-color: var(--colors-mantine-colors-gray\\[6\\])}[data-mantine-color-scheme=light] .light\\:--view-title-color_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}{--view-title-color: var(--colors-mantine-colors-gray\\[7\\])}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:--ti-size_22px .mantine-ThemeIcon-root{--ti-size: 22px}[data-mantine-color-scheme=dark] .dark\\:--_color_\\[color-mix\\(in_oklab\\,_var\\(--likec4-palette-hiContrast\\)_40\\%\\,_var\\(--likec4-palette-fill\\)\\)\\]{--_color: color-mix(in oklab, var(--likec4-palette-hiContrast) 40%, var(--likec4-palette-fill))}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:--ai-radius_\\{radii\\.md\\}{--ai-radius: var(--radii-md)}.backdrop\\:bg_\\[color-mix\\(in_oklab\\,_\\{colors\\.likec4\\.overlay\\.backdrop\\}_60\\%\\,_transparent\\)\\]::backdrop{background:color-mix(in oklab,var(--colors-likec4-overlay-backdrop) 60%,transparent)}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.white{background:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[6\\]{background:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=light] .light\\:bg_var\\(--likec4-palette-fill\\)\\/90{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 90%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .dark\\:bg_var\\(--likec4-palette-fill\\)\\/60{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 60%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[5\\]{background:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.\\[\\&\\[data-active\\]\\]\\:bg_mantine\\.colors\\.white[data-active]{background:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.\\[\\&\\[data-missing\\]\\]\\:bg_mantine\\.colors\\.orange\\[8\\]\\/15[data-missing]{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-orange\\[8\\]) 15%, transparent);background:var(--mix-background, var(--colors-mantine-colors-orange\\[8\\]))}.\\[\\&\\[data-missing\\]\\]\\:bg_mantine\\.colors\\.orange\\[8\\]\\/20[data-missing]{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-orange\\[8\\]) 20%, transparent);background:var(--mix-background, var(--colors-mantine-colors-orange\\[8\\]))}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[3\\]\\/20{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 20%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[6\\]\\/80{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[6\\]) 80%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[6\\]))}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.white\\/80{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-white) 80%, transparent);background:var(--mix-background, var(--colors-mantine-colors-white))}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[4\\]{border-color:var(--colors-mantine-colors-gray\\[4\\])}[data-mantine-color-scheme=dark] .dark\\:bd-c_mantine\\.colors\\.dark\\[4\\]{border-color:var(--colors-mantine-colors-dark\\[4\\])}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:transition_none\\!{transition:none!important}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[2\\]{border-color:var(--colors-mantine-colors-gray\\[2\\])}[data-mantine-color-scheme=dark] .dark\\:bd-c_mantine\\.colors\\.dark\\[7\\]{border-color:var(--colors-mantine-colors-dark\\[7\\])}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:bdr_4{border-radius:4px}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:transition_fast .mantine-ThemeIcon-root{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&_\\>_\\*\\]\\:transition_all_130ms_\\{easings\\.inOut\\}>*{transition:all .13s var(--easings-in-out)}.\\[\\&\\[data-active\\]\\]\\:transition_none[data-active]{transition:none}.\\[\\&_\\>_\\*\\]\\:transition_fast>*,.\\[\\&_\\.tabler-icon\\]\\:transition_fast .tabler-icon{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&\\[data-missing\\]\\]\\:bd-c_mantine\\.colors\\.orange\\[5\\]\\/20[data-missing]{--mix-borderColor: color-mix(in srgb, var(--colors-mantine-colors-orange\\[5\\]) 20%, transparent);border-color:var(--mix-borderColor, var(--colors-mantine-colors-orange\\[5\\]))}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[3\\]{border-color:var(--colors-mantine-colors-gray\\[3\\])}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:bd-b_none:last-child .likec4-edge-label{border-bottom:var(--borders-none)}.\\[\\&_\\>_\\*\\]\\:transition_all_0\\.15s_ease-in>*{transition:all .15s ease-in}[data-mantine-color-scheme=dark] .dark\\:bd-c_transparent{border-color:var(--colors-transparent)}.\\[\\&_\\:where\\(\\.likec4-diagram\\,_\\.likec4-compound-node\\,_\\.likec4-element-node\\)\\]\\:cursor_pointer :where(.likec4-diagram,.likec4-compound-node,.likec4-element-node){cursor:pointer}.backdrop\\:cursor_zoom-out::backdrop{cursor:zoom-out}.backdrop\\:bkdp_blur\\(18px\\)::backdrop{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:c_mantine\\.colors\\.dimmed:is([data-position=left]){color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:us_none:is([data-position=left]){-webkit-user-select:none;user-select:none}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:pointer-events_none:is([data-position=left]){pointer-events:none}[data-mantine-color-scheme=light] .light\\:fill_\\[\\#222221\\]{fill:#222221}.\\[\\&_\\.tabler-icon\\]\\:c_mantine\\.colors\\.text .tabler-icon{color:var(--colors-mantine-colors-text)}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:bx-sh_none\\!{box-shadow:var(--shadows-none)!important}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[0\\]{color:var(--colors-mantine-colors-dark\\[0\\])}[data-mantine-color-scheme=light] .light\\:bg-c_mantine\\.colors\\.gray\\[2\\]\\/70{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-gray\\[2\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-gray\\[2\\]))}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[8\\]\\/70{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[8\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[8\\]))}.empty\\:d_none:is(:empty,[data-empty]){display:none}.\\[\\&_\\>_mark\\]\\:bg-c_mantine\\.colors\\.yellow\\[2\\]\\/90>mark{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-yellow\\[2\\]) 90%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-yellow\\[2\\]))}[data-mantine-color-scheme=dark] .dark\\:op_0\\.5{opacity:.5}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[5\\]))}.placeholder\\:c_mantine\\.colors\\.dimmed::placeholder,.placeholder\\:c_mantine\\.colors\\.dimmed[data-placeholder]{color:var(--colors-mantine-colors-dimmed)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[3\\]{color:var(--colors-mantine-colors-dark\\[3\\])}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(250_250_250_\\/_var\\(--_opacity\\,_95\\%\\)\\)\\]{background-color:rgb(250 250 250 / var(--_opacity, 95%))}:where([data-likec4-zoom-small=true]) .smallZoom\\:d_none{display:none}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:pointer-events_all{pointer-events:all}:where(.react-flow__node.selectable:not(.dragging)) .\\[\\:where\\(\\.react-flow__node\\.selectable\\:not\\(\\.dragging\\)\\)_\\&\\]\\:cursor_pointer{cursor:pointer}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:trs-dly_\\.08s{transition-delay:.08s}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:pointer-events_none{pointer-events:none}[data-mantine-color-scheme=light] .light\\:c_var\\(--likec4-palette-hiContrast\\){color:var(--likec4-palette-hiContrast)}[data-mantine-color-scheme=dark] .dark\\:c_var\\(--likec4-palette-loContrast\\){color:var(--likec4-palette-loContrast)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\[4\\]{color:var(--colors-mantine-colors-gray\\[4\\])}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[8\\]{color:var(--colors-mantine-colors-gray\\[8\\])}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[9\\]{color:var(--colors-mantine-colors-gray\\[9\\])}.\\[\\&\\:is\\(\\[data-position\\=\\"right\\"\\]\\)\\]\\:ms_1:is([data-position=right]){margin-inline-start:var(--spacing-1)}.\\[\\&_\\:where\\(button\\,_\\.action-icon\\,_\\[role\\=\\'dialog\\'\\]\\)\\]\\:pointer-events_all :where(button,.action-icon,[role=dialog]){pointer-events:all}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:bx-sh_none{box-shadow:var(--shadows-none)}.backdrop\\:bkdp_auto::backdrop{backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );-webkit-backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, )}.backdrop\\:bkdp-blur_var\\(--_blur\\)::backdrop{--backdrop-blur: blur(var(--_blur))}.backdrop\\:bg-c_\\[rgb\\(36_36_36_\\/_var\\(--_opacity\\,_5\\%\\)\\)\\]::backdrop{background-color:rgb(36 36 36 / var(--_opacity, 5%))}.\\[\\&_\\.react-flow__attribution\\]\\:d_none .react-flow__attribution{display:none}[data-mantine-color-scheme=dark] .dark\\:mix-bm_hard-light{mix-blend-mode:hard-light}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:pointer-events_none :where(svg,img){pointer-events:none}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:filter_drop-shadow\\(0_0_3px_rgb\\(0_0_0_\\/_10\\%\\)\\)_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_5\\%\\)\\)_drop-shadow\\(1px_1px_16px_rgb\\(0_0_0_\\/_2\\%\\)\\) :where(svg,img){filter:drop-shadow(0 0 3px rgb(0 0 0 / 10%)) drop-shadow(0 1px 8px rgb(0 0 0 / 5%)) drop-shadow(1px 1px 16px rgb(0 0 0 / 2%))}.\\[\\&_img\\]\\:obj-f_contain img{object-fit:contain}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:c_\\[var\\(--icon-color\\,_\\{colors\\.mantine\\.colors\\.dark\\[2\\]\\}\\)\\] .mantine-ThemeIcon-root{color:var(--icon-color, var(--colors-mantine-colors-dark\\[2\\]))}.\\[\\&\\[data-active\\]\\]\\:bx-sh_xs[data-active]{box-shadow:var(--shadows-xs)}.\\[\\&\\[data-active\\]\\]\\:c_mantine\\.colors\\.defaultColor[data-active]{color:var(--colors-mantine-colors-default-color)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[9\\]{background-color:var(--colors-mantine-colors-dark\\[9\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.text{color:var(--colors-mantine-colors-text)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[2\\]{color:var(--colors-mantine-colors-dark\\[2\\])}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]{background-color:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\.lightColor{color:var(--colors-mantine-colors-gray-light-color)}.\\[\\&_\\.tabler-icon\\]\\:op_0\\.65 .tabler-icon{opacity:.65}.\\[\\&\\[data-missing\\]\\]\\:c_mantine\\.colors\\.orange\\[4\\][data-missing]{color:var(--colors-mantine-colors-orange\\[4\\])}.before\\:content_\\"scope\\:\\":before{content:"scope:"}.before\\:pos_absolute:before{position:absolute}.before\\:fs_xxs:before{font-size:var(--font-sizes-xxs)}.before\\:fw_500:before{font-weight:500}.before\\:lh_1:before{line-height:var(--line-heights-1)}.before\\:c_mantine\\.colors\\.dimmed:before{color:var(--colors-mantine-colors-dimmed)}.before\\:op_0\\.85:before{opacity:.85}.before\\:trf_translateY\\(-100\\%\\)_translateY\\(-2px\\):before{transform:translateY(-100%) translateY(-2px)}.\\[\\&\\[data-zero\\]\\]\\:c_mantine\\.colors\\.dimmed[data-zero]{color:var(--colors-mantine-colors-dimmed)}.\\[\\&_\\.mantine-Text-root\\]\\:c_mantine\\.colors\\.text\\/90 .mantine-Text-root{--mix-color: color-mix(in srgb, var(--colors-mantine-colors-text) 90%, transparent);color:var(--mix-color, var(--colors-mantine-colors-text))}.\\[\\&_\\.mantine-Text-root\\]\\:fs_xs .mantine-Text-root{font-size:var(--font-sizes-xs)}.\\[\\&_\\.mantine-Text-root\\]\\:fw_500 .mantine-Text-root{font-weight:500}.\\[\\&_\\.mantine-Text-root\\]\\:lh_1\\.2 .mantine-Text-root{line-height:1.2}.\\[\\&_\\.mantine-Text-root\\]\\:fs_xxs .mantine-Text-root{font-size:var(--font-sizes-xxs)}.\\[\\&_\\.mantine-Text-root\\]\\:fw_400 .mantine-Text-root{font-weight:400}.\\[\\&_\\.mantine-Text-root\\]\\:lh_xs .mantine-Text-root{line-height:var(--line-heights-xs)}.\\[\\&_\\.mantine-Text-root\\]\\:c_mantine\\.colors\\.dimmed .mantine-Text-root{color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\[data-disabled\\]_\\.mantine-ThemeIcon-root\\]\\:op_0\\.45[data-disabled] .mantine-ThemeIcon-root{opacity:.45}:where(.likec4-view-btn[data-disabled]) .\\[\\:where\\(\\.likec4-view-btn\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.85{opacity:.85}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none svg,.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none img{pointer-events:none}.\\[\\&\\.likec4-shape-icon_svg\\]\\:stk-w_1\\.5.likec4-shape-icon svg{stroke-width:1.5}:where([data-disabled]) .\\[\\:where\\(\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.4{opacity:.4}:where([data-disabled]) .\\[\\:where\\(\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.85{opacity:.85}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(255_255_255_\\/_0\\.6\\)\\]{background-color:#fff9}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:stk-w_12px{stroke-width:12px}.\\[\\&_\\.react-flow__edge-interaction\\]\\:cursor_copy .react-flow__edge-interaction{cursor:copy}[data-mantine-color-scheme=dark] .dark\\:mix-bm_screen{mix-blend-mode:screen}[data-mantine-color-scheme=light] .light\\:mix-bm_multiply{mix-blend-mode:multiply}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:vis_visible{visibility:visible}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:fill-opacity_1{fill-opacity:1}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-tmf_out{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-dly_0ms{transition-delay:0ms}:where([data-likec4-selected=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\)_\\&\\]\\:r_6{r:6px}:is([data-likec4-hovered=true]) .\\[\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:r_8{r:8px}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-c_likec4\\.compare\\.manual\\.outline+.likec4-element-shape{outline-color:var(--colors-likec4-compare-manual-outline)}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-w_4px+.likec4-element-shape{outline-width:4px}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:outline-style_dashed+.likec4-element-shape{outline-style:dashed}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-o_1\\.5+.likec4-element-shape{outline-offset:var(--spacing-1\\.5)}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[6\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[6\\]))}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:min-h_100\\% .mantine-ScrollArea-viewport{min-height:var(--sizes-100\\%)}:where([data-likec4-shape=browser]) .shapeBrowser\\:right_\\[5px\\]{right:5px}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:top_\\[14px\\]{top:14px}:where([data-likec4-shape=storage]) .shapeStorage\\:top_\\[14px\\]{top:14px}:where([data-likec4-shape=queue]) .shapeQueue\\:top_\\[1px\\]{top:1px}:where([data-likec4-shape=queue]) .shapeQueue\\:right_3{right:var(--spacing-3)}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:bottom_\\[5px\\]{bottom:5px}:where([data-likec4-shape=storage]) .shapeStorage\\:bottom_\\[5px\\]{bottom:5px}:where([data-likec4-shape=queue]) .shapeQueue\\:bottom_0{bottom:var(--spacing-0)}:where([data-likec4-shape=queue]) .shapeQueue\\:pl_\\[14px\\]{padding-left:14px}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:h_12{height:12px}[data-mantine-color-scheme=dark] .dark\\:bd-l-c_mantine\\.colors\\.dark\\[4\\]{border-left-color:var(--colors-mantine-colors-dark\\[4\\])}.\\[\\&_\\>_svg\\]\\:w_70\\%>svg{width:70%}.\\[\\&_\\>_svg\\]\\:h_70\\%>svg{height:70%}.\\[\\&_\\.tabler-icon\\]\\:w_65\\% .tabler-icon{width:65%}.\\[\\&_\\.tabler-icon\\]\\:h_65\\% .tabler-icon{height:65%}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:w_100\\% :where(svg,img){width:var(--sizes-100\\%)}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:h_auto :where(svg,img){height:auto}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:max-h_100\\% :where(svg,img){max-height:var(--sizes-100\\%)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pl_1:not(:has(.mantine-ScrollArea-root)){padding-left:var(--spacing-1)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pr_1:not(:has(.mantine-ScrollArea-root)){padding-right:var(--spacing-1)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:w_100\\% .mantine-ScrollArea-root{width:var(--sizes-100\\%)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:h_100\\% .mantine-ScrollArea-root{height:var(--sizes-100\\%)}.\\[\\&\\[data-level\\=\\'1\\'\\]\\]\\:mb_sm[data-level="1"]{margin-bottom:var(--spacing-sm)}.\\[\\&_\\.tabler-icon\\]\\:w_90\\% .tabler-icon{width:90%}.before\\:top_0:before{top:var(--spacing-0)}.before\\:left_2:before{left:var(--spacing-2)}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:mb_0:last-child .likec4-edge-label{margin-bottom:var(--spacing-0)}.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% img{width:var(--sizes-100\\%)}.\\[\\&_svg\\,_\\&_img\\]\\:h_auto svg,.\\[\\&_svg\\,_\\&_img\\]\\:h_auto img{height:auto}.\\[\\&_svg\\,_\\&_img\\]\\:max-h_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:max-h_100\\% img{max-height:var(--sizes-100\\%)}:is(.\\[\\&_\\+_\\&\\]\\:mt_\\[32px\\])+:is(.\\[\\&_\\+_\\&\\]\\:mt_\\[32px\\]){margin-top:32px}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:w_7px{width:7px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .whenSelected\\:w_7px{width:7px}.focusWithin\\:bg_mantine\\.colors\\.gray\\[4\\]\\/55\\!:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[4\\]) 55%, transparent) !important;background:var(--mix-background, var(--colors-mantine-colors-gray\\[4\\]))!important}.group:focus-within .groupFocusWithin\\:op_1{opacity:1}.group:focus-within .groupFocusWithin\\:grayscale_0{--grayscale: grayscale(0)}.focus\\:bg_mantine\\.colors\\.primary\\[8\\]:is(:focus,[data-focus]){background:var(--colors-mantine-colors-primary\\[8\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.group:is(:focus,[data-focus]) .groupFocus\\:transition_none{transition:none}.focus\\:ring_none:is(:focus,[data-focus]){outline:var(--borders-none)}.focusVisible\\:ring_none:is(:focus-visible,[data-focus-visible]){outline:var(--borders-none)}.focus\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:focus,[data-focus]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:ring_none{outline:var(--borders-none)}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.group:is(:focus,[data-focus]) .groupFocus\\:c_\\[inherit\\]\\!{color:inherit!important}.group:is(:focus,[data-focus]) .groupFocus\\:op_0\\.5{opacity:.5}.group:is(:focus,[data-focus]) .groupFocus\\:op_0\\.8{opacity:.8}.focus\\:bg-c_mantine\\.colors\\.gray\\[2\\]:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-gray\\[2\\])}.focus\\:c_mantine\\.colors\\.primary\\.lightColor\\!:is(:focus,[data-focus]){color:var(--colors-mantine-colors-primary-light-color)!important}.focus\\:bg-c_mantine\\.colors\\.primary\\.lightHover\\!:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-primary-light-hover)!important}.group:is(:focus,[data-focus]) .groupFocus\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.group:is(:focus,[data-focus]) .groupFocus\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.hover\\:--icon-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}:is(:hover,[data-hover]){--icon-color: var(--colors-mantine-colors-dark\\[1\\])}.hover\\:--view-title-color_\\{colors\\.mantine\\.colors\\.defaultColor\\}:is(:hover,[data-hover]){--view-title-color: var(--colors-mantine-colors-default-color)}.hover\\:bg_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-default-hover)}.hover\\:bg_mantine\\.colors\\.gray\\[3\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-gray\\[3\\])}.hover\\:bg_mantine\\.colors\\.gray\\.lightHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-gray-light-hover)}.hover\\:bg_mantine\\.colors\\.primary\\[8\\]\\/60:is(:hover,[data-hover]){--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary\\[8\\]) 60%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary\\[8\\]))}.group:is(:hover,[data-hover]) .groupHover\\:bg_mantine\\.colors\\.gray\\[3\\]\\/35{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 35%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}.hover\\:td_underline:is(:hover,[data-hover]){text-decoration:underline}.hover\\:bd-c_mantine\\.colors\\.defaultBorder:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-default-border)}.hover\\:bd-w_4px:is(:hover,[data-hover]){border-width:4px}.hover\\:bd-c_mantine\\.colors\\.dark\\[1\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-dark\\[1\\])}.hover\\:border-style_solid:is(:hover,[data-hover]){border-style:solid}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:transition_all_0\\.15s_ease-out:is(:hover,[data-selected=true])>*{transition:all .15s ease-out}.hover\\:ring_none:is(:hover,[data-hover]){outline:var(--borders-none)}.hover\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.hover\\:transition_all_120ms_ease-out:is(:hover,[data-hover]){transition:all .12s ease-out}.hover\\:op_1:is(:hover,[data-hover]){opacity:1}.hover\\:bg-c_mantine\\.colors\\.gray\\[1\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[1\\])}.hover\\:bx-sh_sm:is(:hover,[data-hover]){box-shadow:var(--shadows-sm)}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.group:is(:hover,[data-hover]) .groupHover\\:op_0\\.5{opacity:.5}.group:is(:hover,[data-hover]) .groupHover\\:op_0\\.8{opacity:.8}.hover\\:bg-c_mantine\\.colors\\.gray\\[2\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[2\\])}.hover\\:bg-c_likec4\\.panel\\.action\\.warning\\.bg\\.hover:is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-warning-bg-hover)}.hover\\:c_likec4\\.panel\\.action\\.hover:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover)}.hover\\:c_likec4\\.panel\\.action:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action)}.hover\\:trs-dly_0s:is(:hover,[data-hover]){transition-delay:0s}.hover\\:bg-c_likec4\\.panel\\.action\\.bg\\.hover:is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.\\[\\&\\:hover_\\>_\\*\\]\\:trs-tmf_out:hover>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.\\[\\&\\:hover_\\>_\\*\\]\\:trf_translateX\\(1\\.6px\\):hover>*{transform:translate(1.6px)}.hover\\:trs-tmf_out:is(:hover,[data-hover]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:c_mantine\\.colors\\.defaultColor:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}.hover\\:c_mantine\\.colors\\.primary\\[6\\]:is(:hover,[data-hover]){color:var(--colors-mantine-colors-primary\\[6\\])}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:cursor_pointer:is(:hover,[data-selected=true])>*{cursor:pointer}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-selected=true])>*{background-color:var(--colors-mantine-colors-default-hover)}.hover\\:bg-c_mantine\\.colors\\.gray\\[0\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[0\\])}.group:is(:hover,[data-hover]) .groupHover\\:op_1{opacity:1}.group:is(:hover,[data-hover]) .groupHover\\:grayscale_0{--grayscale: grayscale(0)}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.hover\\:fill_mantine\\.colors\\.primary\\.filledHover:is(:hover,[data-hover]){fill:var(--colors-mantine-colors-primary-filled-hover)}.hover\\:r_10:is(:hover,[data-hover]){r:10px}.hover\\:trs-dur_100ms:is(:hover,[data-hover]){--transition-duration: .1s;transition-duration:.1s}.hover\\:bg-c_mantine\\.colors\\.primary\\[2\\]\\/50:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-primary\\[2\\]) 50%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-primary\\[2\\]))}.group:is(:active,[data-active]) .groupActive\\:op_0\\.5{opacity:.5}.group:is(:active,[data-active]) .groupActive\\:op_0\\.8{opacity:.8}.active\\:trf_translateY\\(-3px\\):is(:active,[data-active]){transform:translateY(-3px)}.group:is(:active,[data-active]) .groupActive\\:cursor_grabbing{cursor:grabbing}.likec4-root:is([data-likec4-reduced-graphics]) .reduceGraphics\\:\\[\\&_\\.action-icon\\]\\:--ai-radius_0px .action-icon{--ai-radius: 0px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:bg_transparent:before{background:var(--colors-transparent)}[data-mantine-color-scheme=dark] .dark\\:\\[\\&\\:is\\(\\[data-active\\]\\)\\]\\:bg_mantine\\.colors\\.dark\\[5\\]:is([data-active]){background:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .light\\:\\[\\&_\\.mantine-SegmentedControl-root\\]\\:bg_mantine\\.colors\\.gray\\[3\\] .mantine-SegmentedControl-root{background:var(--colors-mantine-colors-gray\\[3\\])}.group:is(:hover,[data-hover]) .\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:groupHover\\:c_\\[var\\(--badge-color\\)\\]:is([data-position=left]){color:var(--badge-color)}.group:is(:hover,[data-hover]) .\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:groupHover\\:op_0\\.7:is([data-position=left]){opacity:.7}[data-mantine-color-scheme=dark] .\\[\\&_\\>_mark\\]\\:dark\\:bg-c_mantine\\.colors\\.yellow\\[5\\]\\/80>mark{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-yellow\\[5\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-yellow\\[5\\]))}.group:is(:focus,[data-focus]) .\\[\\&_\\>_mark\\]\\:groupFocus\\:bg-c_\\[transparent\\]>mark{background-color:var(--colors-transparent)}.group:is(:focus,[data-focus]) .\\[\\&_\\>_mark\\]\\:groupFocus\\:c_\\[inherit\\]\\!>mark{color:inherit!important}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:content_\\"_\\":before{content:" "}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:pos_absolute:before{position:absolute}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:pointer-events_all:before{pointer-events:all}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .reduceGraphicsOnPan\\:before\\:d_none:before{display:none}.notDisabled\\:hover\\:bg-c_likec4\\.panel\\.action\\.bg\\.hover:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:hover\\:c_mantine\\.colors\\.defaultColor .mantine-ThemeIcon-root:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}[data-mantine-color-scheme=dark] .dark\\:\\[\\&\\:is\\(\\[data-active\\]\\)\\]\\:c_mantine\\.colors\\.white:is([data-active]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .\\[\\&\\[data-missing\\]\\]\\:light\\:c_mantine\\.colors\\.orange\\[8\\][data-missing]{color:var(--colors-mantine-colors-orange\\[8\\])}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:min-h_100\\% .mantine-ScrollArea-viewport>div{min-height:var(--sizes-100\\%)}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:h_100\\% .mantine-ScrollArea-viewport>div{height:var(--sizes-100\\%)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:top_\\[calc\\(100\\%_-_4px\\)\\]:before{top:calc(100% - 4px)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:left_0:before{left:var(--spacing-0)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:w_full:before{width:var(--sizes-full)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:h_24px:before{height:24px}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pl_1 .mantine-ScrollArea-root>div{padding-left:var(--spacing-1)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pr_1 .mantine-ScrollArea-root>div{padding-right:var(--spacing-1)}[data-mantine-color-scheme=dark] .focusWithin\\:dark\\:bg_mantine\\.colors\\.dark\\[5\\]\\/55\\!:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 55%, transparent) !important;background:var(--mix-background, var(--colors-mantine-colors-dark\\[5\\]))!important}[data-mantine-color-scheme=dark] .focus\\:dark\\:bg-c_mantine\\.colors\\.dark\\[4\\]:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-dark\\[4\\])}[data-mantine-color-scheme=light] .group:is(:focus,[data-focus]) .groupFocus\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:hover\\:--icon-color_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}:is(:hover,[data-hover]){--icon-color: var(--colors-mantine-colors-gray\\[7\\])}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg_mantine\\.colors\\.dark\\[6\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .group:is(:hover,[data-hover]) .groupHover\\:dark\\:bg_mantine\\.colors\\.dark\\[5\\]\\/35{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 35%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[5\\]))}[data-mantine-color-scheme=light] .light\\:hover\\:bd-c_mantine\\.colors\\.primary\\[6\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[6\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:bg-c_mantine\\.colors\\.gray\\[2\\]{background-color:var(--colors-mantine-colors-gray\\[2\\])}[data-mantine-color-scheme=dark] .group:is(:hover,[data-hover]) .groupHover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[8\\]{background-color:var(--colors-mantine-colors-dark\\[8\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[4\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[4\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]\\/70:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[5\\]))}[data-mantine-color-scheme=dark] .dark\\:hover\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[7\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[7\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:c_mantine\\.colors\\.primary\\[4\\]:is(:hover,[data-hover]){color:var(--colors-mantine-colors-primary\\[4\\])}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trs-tmf_out:is(:hover,[data-hover])>:not([data-no-transform]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>:not([data-no-transform]){transform:translate(1px)}.hover\\:\\[\\&_\\>_\\*\\]\\:trs-tmf_out:is(:hover,[data-hover])>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:\\[\\&_\\>_\\*\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>*{transform:translate(1px)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-default-hover)}[data-mantine-color-scheme=dark] .hover\\:dark\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:hover\\:bg-c_mantine\\.colors\\.primary\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-primary\\[5\\])}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg-c_mantine\\.colors\\.dark\\[3\\]\\/40:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[3\\]) 40%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[3\\]))}@container (min-width: 24rem){.\\@\\/xs\\:d_flex{display:flex}}@media screen and (min-width:36rem){.xs\\:max-w_calc\\(100cqw\\){max-width:100cqw}.xs\\:max-w_calc\\(100cqw_-_50px\\){max-width:calc(100cqw - 50px)}.xs\\:max-w_calc\\(100cqw_-_250px\\){max-width:calc(100cqw - 250px)}.xs\\:max-h_calc\\(100cqh_-_200px\\){max-height:calc(100cqh - 200px)}.xs\\:max-h_calc\\(100cqh_-_160px\\){max-height:calc(100cqh - 160px)}.xs\\:h_100cqh{height:100cqh}.xs\\:max-h_calc\\(100cqh_-_70px\\){max-height:calc(100cqh - 70px)}}@container (min-width: 40rem){.\\@\\/sm\\:m_xs{margin:var(--spacing-xs)}.\\@\\/sm\\:gap_xs{gap:var(--spacing-xs)}.\\@\\/sm\\:w_max-content{width:max-content}.\\@\\/sm\\:max-w_calc\\(100vw_-_2_\\*_\\{spacing\\.md\\}\\){max-width:calc(100vw - 2 * var(--spacing-md))}.\\@\\/sm\\:min-w_400{min-width:400px}.\\@\\/sm\\:max-w_550{max-width:550px}}@container (min-width: 40rem){@media screen and (min-width:36rem){.\\@\\/sm\\:xs\\:max-w_calc\\(100cqw_-_2_\\*_\\{spacing\\.md\\}\\){max-width:calc(100cqw - 2 * var(--spacing-md))}}}@container (min-width: 48rem){.\\@\\/md\\:d_block{display:block}.\\@\\/md\\:d_flex{display:flex}.\\@\\/md\\:d_none{display:none}.\\@\\/md\\:d_inherit{display:inherit}.\\@\\/md\\:ms_2{margin-inline-start:var(--spacing-2)}.\\@\\/md\\:w_\\[64px\\]{width:64px}}@media screen and (min-width:48rem){.sm\\:pr_\\[30px\\]{padding-right:30px}.sm\\:min-w_300{min-width:300px}.sm\\:max-w_65vw{max-width:65vw}}@media screen and (min-width:62rem){.md\\:--text-fz_\\{fontSizes\\.md\\}{--text-fz: var(--font-sizes-md)}.md\\:bd-w_4{border-width:4px}.md\\:px_6{padding-inline:var(--spacing-6)}.md\\:pr_\\[50px\\]{padding-right:50px}.md\\:max-w_40vw{max-width:40vw}}@container (min-width: 64rem){.\\@\\/lg\\:max-w_700{max-width:700px}}@media screen and (min-width:75rem){.lg\\:px_8{padding-inline:var(--spacing-8)}}@container likec4-tree (max-width: 450px){.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:--likec4-icon-size_18px{--likec4-icon-size: 18px}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:gap_0\\.5{gap:var(--spacing-0\\.5)}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:flex-d_column-reverse{flex-direction:column-reverse}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:ai_flex-start{align-items:flex-start}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:d_none{display:none}}@media print{.print\\:d_none{display:none}}}`,Bre={autoContrast:!0,primaryColor:"indigo",cursorType:"pointer",defaultRadius:"sm",fontFamily:"var(--likec4-app-font, var(--likec4-app-font-default))",headings:{fontWeight:"500",sizes:{h1:{fontWeight:"600"},h2:{fontWeight:"500"}}},components:{Portal:py.extend({defaultProps:{reuseTargetNode:!0}}),Tooltip:_n.extend({defaultProps:{color:"dark"}})}};fe({cursor:"pointer","--mantine-cursor-pointer":"pointer","& :where(.likec4-diagram, .likec4-compound-node, .likec4-element-node)":{cursor:"pointer"}});function UQe(e,r){const[n,o]=S.useState([]);return f7(()=>{if(e&&!document.querySelector("style[data-likec4-font]")){const a=document.createElement("style");a.setAttribute("type","text/css"),a.setAttribute("data-likec4-font",""),pw(r)&&a.setAttribute("nonce",r),ey(r)&&a.setAttribute("nonce",r()),a.appendChild(document.createTextNode(HQe)),document.head.appendChild(a)}},[e]),f7(()=>{const a=new CSSStyleSheet;return a.replaceSync(Pre.replaceAll(":where(:root,:host)",".likec4-shadow-root").replaceAll(":root",".likec4-shadow-root").replaceAll(new RegExp("(?{a.replaceSync("")}},[Pre]),n}const Ire=()=>{try{const e=window.getComputedStyle(document.documentElement).colorScheme??"",r=hf(e.split(" "));if(r==="light"||r==="dark")return r}catch{}return null};function WQe(e){const r=mH(),[n,o]=S.useState(Ire);return $H(bf(()=>o(Ire),100),{attributes:!0,childList:!1,subtree:!1},()=>document.documentElement),e??n??r}function Ore({children:e}){const r=S.useContext(Aw);return S.useEffect(()=>{r||console.warn("LikeC4Diagram must be a child of MantineProvider")},[]),r?y.jsx(y.Fragment,{children:e}):y.jsx(z9,{defaultColorScheme:"auto",theme:Bre,children:e})}Ore.displayName="EnsureMantine";const wz=({reducedMotion:e="user",children:r})=>{const n=np()?.();return y.jsx(sLe,{features:rVe,strict:!0,children:y.jsx(uLe,{reducedMotion:e,...n&&{nonce:n},children:r})})};function Lre({onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu: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?y2.withControls:y2.default,pannable:k=!0,zoomable:C=!0,background:_="dots",enableElementTags:$=!1,enableFocusMode:R=!1,enableElementDetails:T=!1,enableRelationshipDetails:A=!1,enableRelationshipBrowser:z=!1,enableCompareWithLatest:j=!!u,nodesSelectable:I,enableNotations:P=!1,showNavigationButtons:L=!!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:O}){const W=DG(),K=S.useRef(null),Q=!!rre(),ae=!Q;I??=Q||R||!!i||!!l;const te=kee(f,M),re=GQe(x);K.current==null&&(K.current={defaultEdges:[],defaultNodes:[],initialWidth:B??te.width,initialHeight:F??te.height,initialFitViewOptions:{maxZoom:l$,minZoom:xi,padding:re},initialMaxZoom:l$,initialMinZoom:xi});const ue=q==="auto"?k&&(te.width??1)*(te.height??1)>6e6&&f.nodes.some(_e=>_e.children?.length>0):q;return y.jsx(Ore,{children:y.jsx(wz,{...ue&&{reducedMotion:"always"},children:y.jsx(U5e,{value:G??null,children:y.jsx(mp,{features:{enableFitView:w,enableEditor:Q,enableReadOnly:ae,enableFocusMode:R,enableNavigateTo:!!i,enableElementDetails:T,enableRelationshipDetails:A,enableRelationshipBrowser:z,enableSearch:V,enableNavigationButtons:L&&!!i,enableDynamicViewWalkthrough:f._type==="dynamic"&&H,enableNotations:P,enableVscode:!!c,enableControls:v,enableElementTags:$,enableCompareWithLatest:j&&!!u},children:y.jsxs(eGe,{handlers:{onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:a,onNavigateTo:i,onNodeClick:l,onNodeContextMenu:s,onOpenSource:c,onBurgerMenuClick:d,onInitialized:p,onLayoutTypeChange:u},children:[y.jsx(qQe,{id:W}),y.jsx(wNe,{rootSelector:`#${W}`,children:y.jsx(mNe,{id:W,className:g,reduceGraphics:ue,children:y.jsx(lw,{fitView:w,...K.current,children:y.jsxs($Qe,{view:f,zoomable:C,pannable:k,fitViewPadding:re,nodesDraggable:Q,nodesSelectable:I,where:U??null,dynamicViewVariant:M,children:[y.jsx(_Ke,{background:_,reactFlowProps:Y,renderNodes:Z,children:O}),y.jsx(yte,{})]})})})})]})})})})})}const Fre=e=>typeof e=="number"?`${e}px`:e;function GQe(e){return SL(()=>{if(i9(e))return D$e(e,Fre);const r=Fre(e);return{x:r,y:r}},[e],tt)}function YQe({children:e,likec4model:r}){return y.jsx(Sy.Provider,{value:r,children:e})}const kz=({children:e})=>y.jsx("div",{style:{margin:"1rem 0"},children:y.jsx("div",{style:{margin:"0 auto",display:"inline-block",padding:"2rem",background:"rgba(250,82,82,.15)",color:"#ffa8a8"},children:e})}),XQe=({viewId:e})=>y.jsxs(kz,{children:["View ",y.jsx("code",{children:e})," not found"]}),ZQe=e=>{throw new Error("LikeC4View is not available SSR")};var Vre={exports:{}},_z,qre;function KQe(){if(qre)return _z;qre=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return _z=e,_z}var Sz,Hre;function QQe(){if(Hre)return Sz;Hre=1;var e=KQe();function r(){}function n(){}return n.resetWarningCache=r,Sz=function(){function o(l,s,c,d,u,p){if(p!==e){var f=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw f.name="Invariant Violation",f}}o.isRequired=o;function 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},Sz}var Ure;function JQe(){return Ure||(Ure=1,Vre.exports=QQe()()),Vre.exports}var eJe=JQe();const ml=Y7(eJe);var tJe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Wre(e,r){return e(r={exports:{}},r.exports),r.exports}var rJe=Wre((function(e){(function(r){var n=function(x,k,C){if(!c(k)||u(k)||p(k)||f(k)||s(k))return k;var _,$=0,R=0;if(d(k))for(_=[],R=k.length;$e.length)&&(r=e.length);for(var n=0,o=new Array(r);n=0||(a[n]=e[n]);return a},Xre=function(e,r){if(e==null)return{};var n,o,a=sJe(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},cJe=S.createContext(null);function Zre(e){var r=e.children,n=r===void 0?"":r,o=Xre(e,["children"]);return typeof n!="string"&&(n=ZQe()),Kr.createElement("template",Yre({},o,{dangerouslySetInnerHTML:{__html:n}}))}function Kre(e){var r=e.root,n=e.children;return Vi.createPortal(n===void 0?null:n,r)}function dJe(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=Xre(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=lJe(k,2),_=C[0],$=C[1],R="node_".concat(s).concat(d);return S.useLayoutEffect((function(){if(x.current)try{if(typeof o=="function"&&o(x.current),g){var T=x.current.shadowRoot;return void $(T)}var A=x.current.attachShadow({mode:s,delegatesFocus:d});p.length>0&&(A.adoptedStyleSheets=p),$(A)}catch(z){(function(j){var I=j.error,P=j.styleSheets,L=j.root;switch(I.name){case"NotSupportedError":P.length>0&&(L.adoptedStyleSheets=P);break;default:throw I}})({error:z,styleSheets:p,root:_})}}),[o,x,p]),Kr.createElement(Kr.Fragment,null,Kr.createElement(e.tag,Yre({key:R,ref:x},w),(_||g)&&Kr.createElement(cJe.Provider,{value:_},g?Kr.createElement(Zre,{shadowroot:s,shadowrootmode:s},e.render({root:_,ssr:g,children:v})):Kr.createElement(Kre,{root:_},e.render({root:_,ssr:g,children:v})))))}));return r.propTypes={mode:ml.oneOf(["open","closed"]),delegatesFocus:ml.bool,styleSheets:ml.arrayOf(ml.instanceOf(globalThis.CSSStyleSheet)),ssr:ml.bool,children:ml.node},r}Zre.propTypes={children:ml.oneOfType([ml.string,ml.node])},Kre.propTypes={root:ml.object.isRequired,children:ml.node};var Ez=new Map;function uJe(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"core",n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:function(o){return o.children};return new Proxy(e,{get:function(o,a){var i=rJe(a,{separator:"-"}),l="".concat(r,"-").concat(i);return Ez.has(l)||Ez.set(l,dJe({tag:i,render:n})),Ez.get(l)}})}var pJe=uJe();const hJe=pJe.div;function fJe(e,r=!1){if(r===!1)return` :where([data-likec4-instance="${e}"]) { display: block; box-sizing: border-box; @@ -205,16 +205,16 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho ${a?"min-width: 80px;":"min-height: 80px;"} max-height: min(100%, var(--likec4-view-max-height, ${Math.ceil(o)}px)); } -`.trim()}const Qre=S.forwardRef(({children:e,theme:r=Bre,injectFontCss:n=!0,styleNonce:o,colorScheme:a,keepAspectRatio:i=!1,...l},s)=>{const c=WQe(a),d=DG(),u=fJe(d,i),p=S.useRef(null),f=UQe(n,o),g=S.useCallback(()=>p.current??void 0,[p]),v=it(()=>{if(ri(o)){if(typeof o=="string")return o;if(typeof o=="function")return o()}return""});let w=ri(o)?v():void 0;return y.jsxs(y.Fragment,{children:[y.jsx("style",{type:"text/css",nonce:w,dangerouslySetInnerHTML:{__html:u}}),y.jsx(hJe,{ssr:!1,...l,styleSheets:f,"data-likec4-instance":d,children:y.jsx("div",{ref:$r(p,s),"data-mantine-color-scheme":c,className:"likec4-shadow-root",children:y.jsx(R9,{...a&&{forceColorScheme:a},defaultColorScheme:c,getRootElement:g,...!!w&&{getStyleNonce:v},cssVariablesSelector:".likec4-shadow-root",theme:r,children:y.jsx(wR,{children:e})})})})]})});Qre.displayName="ShadowRoot";const mJe=fe({cursor:"pointer","--mantine-cursor-pointer":"pointer","& :where(.likec4-diagram, .likec4-compound-node, .likec4-element-node)":{cursor:"pointer"}});function gJe({viewId:e,className:r,pannable:n=!1,zoomable:o=!1,keepAspectRatio:a=!0,colorScheme:i,injectFontCss:l=!0,controls:s=!1,background:c="transparent",browser:d=!0,showNavigationButtons:u=!1,enableNotations:p,enableFocusMode:f=!1,enableDynamicViewWalkthrough:g=!1,enableElementDetails:v=!1,enableRelationshipDetails:w=!1,enableRelationshipBrowser:x=w,reduceGraphics:k="auto",mantineTheme:C,styleNonce:_,style:$,reactFlowProps:z,renderNodes:T,children:A,...R}){const j=S.useRef(null),I=gNe(),[P,L]=S.useState("manual"),[H,M]=S.useState(null),V=it(Q=>{Q&&Q!==H&&L("manual"),M(Q)}),B=it(()=>{V(e)});if(!I)return y.jsx(kR,{children:"LikeC4Model not found. Make sure you provided LikeC4ModelProvider."});const F=I.findView(e)?.$layouted;if(!F)return y.jsx(XQe,{viewId:e});if(F._stage!=="layouted")return y.jsxs(kR,{children:['LikeC4 View "$',e,'" is not layouted. Make sure you have LikeC4ModelProvider with layouted model.']});const q=H?I.findView(H):null,G=P==="manual"?q?.$layouted:q?.$view,U=!!p&&(F.notation?.nodes?.length??0)>0,Y=(G?.notation?.nodes?.length??0)>0,Z=d!==!1,O=Pq(d)?{}:d,W=kee(F,R.dynamicViewVariant),K=j.current?{root:j.current}:void 0;return y.jsx(Qre,{ref:j,injectFontCss:l,theme:C,colorScheme:i,styleNonce:_,keepAspectRatio:a?W:!1,className:Ge("likec4-view",r),style:$,children:y.jsxs(wR,{children:[y.jsx(Lre,{view:F,pannable:n,zoomable:o,background:c,fitView:!0,fitViewPadding:y2.default,enableNotations:U,enableDynamicViewWalkthrough:g,showNavigationButtons:u,enableCompareWithLatest:!1,enableFocusMode:f,enableRelationshipDetails:w,enableElementDetails:v,enableRelationshipBrowser:x,enableElementTags:!1,controls:s,reduceGraphics:k,className:Ge("likec4-static-view",Z&&mJe),enableSearch:!1,...Z&&{onCanvasClick:B,onNodeClick:B},reactFlowProps:z,renderNodes:T,children:A,...R}),y.jsx(Cn,{...K,children:G&&y.jsxs(p0,{openDelay:0,onClose:()=>V(null),children:[y.jsx(Lre,{view:G,pannable:!0,zoomable:!0,background:"dots",onNavigateTo:V,showNavigationButtons:!0,enableDynamicViewWalkthrough:!0,enableFocusMode:!0,enableRelationshipBrowser:!0,enableElementDetails:!0,enableRelationshipDetails:!0,enableSearch:!0,enableElementTags:!0,enableCompareWithLatest:!0,controls:!0,fitView:!0,...R,fitViewPadding:y2.withControls,...O,enableNotations:Y&&(O.enableNotations??!0),renderNodes:T,onLayoutTypeChange:L}),y.jsx(hr,{pos:"absolute",top:"4",right:"4",zIndex:"999",children:y.jsx(lr,{variant:"default",color:"gray",onClick:Q=>{Q.stopPropagation(),V(null)},children:y.jsx(fp,{})})})]})})]})})}var yJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 131",...e,children:y.jsx("path",{fill:"#2396ED",d:"m140.598 25.715 3.892 2.818c6.77 5.46 10.662 11.625 11.508 18.67 7.277-1.409 16.584-.352 20.646 2.466l3.723 2.29-.677 1.41c-1.185 2.641-1.523 3.346-1.692 3.698-6.6 13.21-19.631 13.386-25.723 13.21-15.4 38.573-48.23 59.885-92.57 59.885-20.476 0-36.045-6.517-46.538-19.375C-.709 93.88-.709 71.862.475 64.817l.339-1.41h122.353c6.43 0 11.339-1.76 13.708-3.17-2.539-3.875-3.385-8.278-3.554-10.744-.508-7.045 1.185-14.443 4.57-19.727zm106.014 8.179q2.048 0 3.468 1.373t1.42 3.467v43.563q0 10.89-7.634 18.43-7.726 7.633-18.43 7.633-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633 9.262 0 16.336 5.724V38.734q0-2.094 1.373-3.467t3.467-1.373m36.49 22.34q10.705 0 18.43 7.632 3.818 3.818 5.702 8.424 1.885 4.608 1.932 10.007 0 10.89-7.633 18.43-7.725 7.633-18.43 7.633-10.798 0-18.43-7.633-7.634-7.633-7.634-18.43t7.633-18.43q7.633-7.634 18.43-7.633m57.574 0q9.82 0 16.988 6.33 1.675 1.488 1.675 3.676 0 2.095-1.373 3.49-1.373 1.397-3.467 1.397a4.93 4.93 0 0 1-3.165-1.117q-2.373-2.002-4.98-3.025t-5.678-1.024q-3.397 0-6.376 1.28a16.7 16.7 0 0 0-5.213 3.49 16.2 16.2 0 0 0-3.514 5.19q-1.28 2.977-1.28 6.376 0 3.397 1.28 6.376a16.2 16.2 0 0 0 3.514 5.19 16.7 16.7 0 0 0 5.213 3.49q2.979 1.28 6.376 1.28 3.072 0 5.678-1 2.607-1.002 4.933-3.003 1.304-.977 3.072-1.024 2.094 0 3.467 1.373t1.373 3.468q0 2.048-1.535 3.583-7.214 6.33-16.988 6.33-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633m29.044-22.34q2.001 0 3.42 1.42 1.42 1.418 1.42 3.467v36.302l27.832-18.105q1.163-.744 2.606-.744 1.024 0 1.908.372.885.372 1.536 1.047t1.047 1.56.396 1.86q0 2.607-1.862 3.864l-19.5 12.66 20.012 22.525q1.35 1.489 1.35 3.398 0 .977-.396 1.861a5.4 5.4 0 0 1-1.047 1.56q-.651.675-1.536 1.046a4.9 4.9 0 0 1-1.908.373q-1.955 0-3.258-1.257l-21.502-24.155-5.678 3.724v16.801q0 2.001-1.42 3.444t-3.42 1.443q-2.048 0-3.468-1.443t-1.42-3.444V38.781q0-2.048 1.42-3.468t3.468-1.42m71.489 22.34q10.704 0 18.43 7.632 3.816 3.77 5.725 8.401 1.908 4.63 1.908 10.03 0 2.094-1.42 3.467t-3.467 1.373h-36.86a15.9 15.9 0 0 0 2.327 4.677 16.3 16.3 0 0 0 3.606 3.63 16.7 16.7 0 0 0 4.562 2.351q2.49.838 5.189.838 3.072 0 5.631-.931 2.56-.93 4.748-2.793a5.1 5.1 0 0 1 3.21-1.21q2.095 0 3.468 1.373t1.373 3.468q0 2.047-1.396 3.49-7.214 6.33-17.034 6.33-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633m57.48 0q2.048 0 4.398.279 2.35.28 4.329 1 1.978.721 3.28 1.978 1.305 1.257 1.304 3.258 0 1.025-.396 1.909a5.4 5.4 0 0 1-1.047 1.559q-.651.675-1.536 1.047a4.9 4.9 0 0 1-1.908.372q-.885 0-2.048-.512-2.932-1.163-6.376-1.163-3.397 0-6.376 1.28-2.978 1.28-5.19 3.49-2.21 2.211-3.49 5.19-1.28 2.977-1.28 6.376v21.223q0 2.001-1.42 3.42t-3.42 1.42q-2.048 0-3.467-1.42t-1.42-3.42V61.074q0-2.002 1.42-3.42 1.42-1.42 3.467-1.42 2.001 0 3.42 1.42 1.42 1.418 1.42 3.42v.93a26.7 26.7 0 0 1 7.586-4.281q4.095-1.49 8.75-1.49M225.436 65.96q-3.444 0-6.423 1.303t-5.166 3.514-3.467 5.19-1.28 6.329 1.28 6.33 3.467 5.189 5.166 3.514q2.979 1.302 6.423 1.303 3.397 0 6.376-1.303a16.6 16.6 0 0 0 5.19-3.538 16.8 16.8 0 0 0 3.49-5.189q1.28-2.955 1.28-6.306t-1.28-6.307a16.8 16.8 0 0 0-3.49-5.189 16.6 16.6 0 0 0-5.19-3.537q-2.978-1.303-6.376-1.303m57.667 0q-3.444 0-6.423 1.303t-5.166 3.514-3.468 5.19-1.28 6.329 1.28 6.33q1.281 2.978 3.468 5.189t5.166 3.514 6.423 1.303q3.397 0 6.376-1.303a16.6 16.6 0 0 0 5.19-3.538 16.8 16.8 0 0 0 3.49-5.189q1.28-2.955 1.28-6.306t-1.28-6.307a16.8 16.8 0 0 0-3.49-5.189 16.6 16.6 0 0 0-5.19-3.537q-2.979-1.303-6.376-1.303m158.106 0q-2.653 0-5.166.837a17 17 0 0 0-4.608 2.35 16.1 16.1 0 0 0-3.63 3.631 15.1 15.1 0 0 0-2.28 4.677h31.368a15.6 15.6 0 0 0-2.35-4.677 16.8 16.8 0 0 0-3.63-3.63 16.7 16.7 0 0 0-4.561-2.35 16 16 0 0 0-5.143-.838M32.629 42.27v17.614H14.014V42.272zm22 0v17.614H36.014V42.272zm22 0v17.614H58.013V42.272zm22 0v17.614H80.013V42.272zm22 0v17.614h-18.616V42.272zm-22-21.135v17.613H80.013V21.136zm-22 0v17.613H58.013V21.136zm-22 0v17.613H36.014V21.136zM98.629 0v17.613H80.013V0z"})}),vJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 288",...e,children:[y.jsx("path",{fill:"#343741",d:"M0 143.82c0 12.44 1.744 24.441 4.71 35.956h175.067c19.856 0 35.955-16.1 35.955-35.956 0-19.865-16.1-35.955-35.955-35.955H4.71C1.744 119.371 0 131.38 0 143.82"}),y.jsx("path",{fill:"#FEC514",d:"M242.013 68.863c5.025-4.629 9.7-9.6 13.987-14.93C229.636 21.079 189.213 0 143.82 0 87 0 38.101 33.052 14.775 80.9h196.559c11.38 0 22.319-4.324 30.678-12.037"}),y.jsx("path",{fill:"#00BFB3",d:"M211.334 206.742H14.774c23.336 47.839 72.226 80.9 129.045 80.9 45.393 0 85.816-21.088 112.18-53.933a136.6 136.6 0 0 0-13.987-14.94c-8.36-7.721-19.299-12.027-30.678-12.027"})]}),bJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 278",...e,children:y.jsx("path",{fill:"#47848F",d:"M90.317 59.645c-36.264-6.605-64.936.308-76.364 20.101-8.527 14.77-6.09 34.353 5.912 55.285a3.719 3.719 0 1 0 6.452-3.699c-10.811-18.856-12.915-35.757-5.923-47.867 9.493-16.442 35.068-22.608 68.59-16.503a3.719 3.719 0 1 0 1.333-7.317m53.63-33.684c-2.959 5.723-8.932 9.635-15.819 9.635-9.83 0-17.798-7.969-17.798-17.798C110.33 7.968 118.3 0 128.128 0c9.83 0 17.798 7.968 17.798 17.798q0 .386-.016.767c29.461 15.237 49.933 67.197 49.933 127.226 0 24.69-3.452 48.382-9.879 68.92a3.719 3.719 0 1 1-7.097-2.221c6.196-19.802 9.539-42.747 9.539-66.699 0-56.524-18.789-105.163-44.458-119.83M16.469 193.319a18 18 0 0 1 1.33-.05c9.83 0 17.798 7.97 17.798 17.799s-7.969 17.797-17.798 17.797C7.968 228.865 0 220.897 0 211.068c0-6.692 3.693-12.52 9.151-15.56-2.68-33.265 32.283-77.855 85.12-108.36 21.946-12.671 44.798-21.665 66.267-26.265a3.719 3.719 0 0 1 1.558 7.273c-20.69 4.433-42.817 13.141-64.107 25.433-49.759 28.728-82.66 70.134-81.52 99.73m206.26 26.546a17.7 17.7 0 0 1-2.324-8.797c0-9.83 7.969-17.798 17.798-17.798 9.83 0 17.798 7.968 17.798 17.798s-7.968 17.797-17.798 17.797a17.7 17.7 0 0 1-10.38-3.338c-28.392 16.703-82.625 8.184-133.66-21.282-21.726-12.543-40.776-27.657-55.439-43.77a3.719 3.719 0 0 1 5.5-5.006c14.134 15.532 32.581 30.167 53.657 42.335 48.165 27.808 98.886 36.084 124.847 22.061m-1.166-63.914a3.719 3.719 0 0 1-5.676-4.805c21.946-25.926 29.34-51.086 19.867-67.492-6.876-11.91-22.159-18.52-43.362-18.796a3.719 3.719 0 1 1 .097-7.437c23.575.307 41.315 7.98 49.706 22.514 11.404 19.752 3.113 47.965-20.632 76.016M72.564 221.49a3.719 3.719 0 0 1 7.001-2.507c11.476 32.045 29.591 51.082 48.563 51.082 13.645 0 26.91-9.774 37.71-27.74a3.719 3.719 0 0 1 6.375 3.832c-12.018 19.99-27.428 31.345-44.085 31.345-22.839 0-43.15-21.344-55.564-56.011m175.999-10.423c0-5.722-4.639-10.361-10.36-10.361-5.723 0-10.362 4.639-10.362 10.36 0 5.723 4.64 10.361 10.361 10.361s10.36-4.638 10.36-10.36m-230.765 10.36c5.722 0 10.36-4.638 10.36-10.36s-4.638-10.361-10.36-10.361-10.36 4.639-10.36 10.36c0 5.723 4.638 10.361 10.36 10.361m110.33-193.27c5.722 0 10.36-4.638 10.36-10.36s-4.638-10.36-10.36-10.36-10.36 4.638-10.36 10.36 4.638 10.36 10.36 10.36m2.718 130.22c-6.951 1.502-13.8-2.916-15.305-9.868-1.499-6.952 2.916-13.8 9.868-15.305 6.951-1.502 13.8 2.915 15.305 9.867 1.502 6.952-2.916 13.8-9.868 15.305"})}),xJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 108",...e,children:[y.jsx("path",{fill:"#2F2707",d:"M152.984 37.214c-5.597 0-9.765 2.748-9.765 9.362 0 4.983 2.747 8.443 9.463 8.443 5.693 0 9.56-3.355 9.56-8.65 0-6-3.46-9.155-9.258-9.155m-11.19 46.701c-1.325 1.625-2.645 3.353-2.645 5.39 0 4.067 5.186 5.291 12.31 5.291 5.9 0 13.938-.414 13.938-5.9 0-3.261-3.867-3.462-8.753-3.768zm30.113-46.394c1.828 2.34 3.764 5.597 3.764 10.276 0 11.292-8.851 17.904-21.667 17.904-3.259 0-6.209-.406-8.038-.914l-3.359 5.39 9.969.61c17.602 1.122 27.975 1.632 27.975 15.157 0 11.702-10.272 18.311-27.975 18.311-18.413 0-25.433-4.68-25.433-12.716 0-4.578 2.035-7.015 5.596-10.378-3.358-1.419-4.476-3.961-4.476-6.71 0-2.24 1.118-4.273 2.952-6.208 1.83-1.93 3.864-3.865 6.306-6.103-4.984-2.442-8.75-7.732-8.75-15.262 0-11.697 7.733-19.731 23.295-19.731 4.376 0 7.022.402 9.362 1.017h19.84v8.644zM199.166 19.034c-5.8 0-9.157-3.36-9.157-9.161 0-5.793 3.356-8.95 9.157-8.95 5.9 0 9.258 3.157 9.258 8.95 0 5.801-3.357 9.161-9.258 9.161M186.04 80.171v-8.033l5.19-.71c1.425-.205 1.627-.509 1.627-2.038V39.48c0-1.116-.304-1.832-1.325-2.134l-5.492-1.935 1.118-8.238h21.061V69.39c0 1.63.098 1.833 1.629 2.039l5.188.71v8.032zM255.267 76.227c-4.376 2.135-10.785 4.068-16.586 4.068-12.106 0-16.682-4.878-16.682-16.38V37.264c0-.61 0-1.017-.817-1.017h-7.12V27.19c8.955-1.02 12.513-5.496 13.632-16.585h9.666v14.45c0 .71 0 1.017.815 1.017h14.343v10.173H237.36v24.313c0 6.002 1.426 8.34 6.917 8.34 2.852 0 5.799-.71 8.24-1.626z"}),y.jsx("path",{fill:"#DE4C36",d:"M104.529 49.53 58.013 3.017a6.86 6.86 0 0 0-9.703 0l-9.659 9.66 12.253 12.252a8.15 8.15 0 0 1 8.383 1.953 8.16 8.16 0 0 1 1.936 8.434L73.03 47.125c2.857-.984 6.154-.347 8.435 1.938a8.16 8.16 0 0 1 0 11.545 8.164 8.164 0 0 1-13.324-8.88L57.129 40.716l-.001 28.98a8.3 8.3 0 0 1 2.159 1.544 8.164 8.164 0 0 1 0 11.547c-3.19 3.19-8.36 3.19-11.545 0a8.164 8.164 0 0 1 2.672-13.328v-29.25a8.1 8.1 0 0 1-2.672-1.782c-2.416-2.413-2.997-5.958-1.759-8.925l-12.078-12.08L2.011 49.314a6.863 6.863 0 0 0 0 9.706l46.516 46.514a6.86 6.86 0 0 0 9.703 0l46.299-46.297a6.866 6.866 0 0 0 0-9.707"})]}),wJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 139",...e,children:y.jsx("path",{fill:"#11110F",d:"M98.696 59.312h-43.06c-1.111 0-2.013.903-2.013 2.014v21.053c0 1.111.902 2.015 2.012 2.015h16.799v26.157s-3.772 1.286-14.2 1.286c-12.303 0-29.49-4.496-29.49-42.288 0-37.8 17.897-42.773 34.698-42.773 14.543 0 20.809 2.56 24.795 3.794 1.253.384 2.412-.863 2.412-1.975l4.803-20.342c0-.52-.176-1.146-.769-1.571C93.064 5.527 83.187 0 58.233 0 29.488 0 0 12.23 0 71.023c0 58.795 33.76 67.556 62.21 67.556 23.555 0 37.844-10.066 37.844-10.066.59-.325.653-1.148.653-1.526V61.326c0-1.11-.9-2.014-2.01-2.014m221.8-51.953c0-1.12-.888-2.024-1.999-2.024h-24.246a2.016 2.016 0 0 0-2.008 2.024l.006 46.856h-37.792V7.36c0-1.12-.892-2.024-2.001-2.024H228.21a2.014 2.014 0 0 0-2.003 2.024v126.872c0 1.12.9 2.03 2.003 2.03h24.245c1.109 0 2-.91 2-2.03V79.964h37.793l-.066 54.267c0 1.12.9 2.03 2.008 2.03h24.304c1.11 0 1.998-.91 2-2.03zM144.37 24.322c0-8.73-7-15.786-15.635-15.786-8.627 0-15.632 7.055-15.632 15.786 0 8.72 7.005 15.795 15.632 15.795 8.635 0 15.635-7.075 15.635-15.795m-1.924 83.212V48.97c0-1.112-.897-2.021-2.006-2.021h-24.169c-1.109 0-2.1 1.144-2.1 2.256v83.905c0 2.466 1.536 3.199 3.525 3.199h21.775c2.39 0 2.975-1.173 2.975-3.239zM413.162 46.95h-24.06c-1.104 0-2.002.909-2.002 2.028v62.21s-6.112 4.472-14.788 4.472-10.977-3.937-10.977-12.431v-54.25c0-1.12-.897-2.03-2.001-2.03h-24.419c-1.102 0-2.005.91-2.005 2.03v58.358c0 25.23 14.063 31.403 33.408 31.403 15.87 0 28.665-8.767 28.665-8.767s.61 4.62.885 5.168c.276.547.994 1.098 1.77 1.098l15.535-.068c1.102 0 2.005-.911 2.005-2.025l-.008-85.168c0-1.119-.9-2.028-2.008-2.028m55.435 68.758c-8.345-.254-14.006-4.041-14.006-4.041V71.488s5.585-3.423 12.436-4.035c8.664-.776 17.013 1.841 17.013 22.51 0 21.795-3.768 26.096-15.443 25.744m9.49-71.483c-13.665 0-22.96 6.097-22.96 6.097V7.359a2.01 2.01 0 0 0-2-2.024h-24.315a2.013 2.013 0 0 0-2.004 2.024v126.872c0 1.12.898 2.03 2.007 2.03h16.87c.76 0 1.335-.39 1.76-1.077.419-.682 1.024-5.85 1.024-5.85s9.942 9.422 28.763 9.422c22.096 0 34.768-11.208 34.768-50.315s-20.238-44.217-33.913-44.217M212.229 46.73h-18.187l-.028-24.027c0-.909-.468-1.364-1.52-1.364H167.71c-.964 0-1.481.424-1.481 1.35v24.83s-12.42 2.998-13.26 3.24a2.01 2.01 0 0 0-1.452 1.934v15.603c0 1.122.896 2.027 2.005 2.027h12.707v37.536c0 27.88 19.556 30.619 32.753 30.619 6.03 0 13.243-1.937 14.434-2.376.72-.265 1.138-1.01 1.138-1.82l.02-17.164c0-1.119-.945-2.025-2.01-2.025-1.06 0-3.77.431-6.562.431-8.933 0-11.96-4.154-11.96-9.53l-.001-35.67h18.188a2.014 2.014 0 0 0 2.006-2.028V48.753c0-1.12-.897-2.022-2.006-2.022"})}),kJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 192",...e,children:y.jsx("path",{fill:"#00ACD7",d:"m292.533 13.295 1.124.75c13.212 8.725 22.685 20.691 28.917 35.15 1.496 2.243.499 3.49-2.493 4.237l-5.063 1.296c-11.447 2.949-20.53 5.429-31.827 8.378l-6.443 1.678c-2.32.574-2.96.333-5.428-2.477l-.348-.399c-3.519-3.988-6.155-6.652-10.817-9.03l-.899-.443c-15.705-7.727-30.911-5.484-45.12 3.74-16.952 10.968-25.677 27.172-25.428 47.364.25 19.942 13.96 36.395 33.654 39.137 16.951 2.244 31.16-3.739 42.378-16.452 2.244-2.743 4.238-5.734 6.73-9.224H223.36c-5.235 0-6.481-3.24-4.736-7.478l.864-2.035c3.204-7.454 8.173-18.168 11.4-24.294l.704-1.319c.862-1.494 2.612-3.513 5.977-3.513h80.224c3.603-11.415 9.449-22.201 17.246-32.407 18.198-23.931 40.135-36.396 69.8-41.63 25.427-4.488 49.359-1.995 71.046 12.713 19.694 13.461 31.909 31.66 35.15 55.59 4.237 33.654-5.485 61.075-28.668 84.508-16.453 16.702-36.645 27.172-59.829 31.908-6.73 1.247-13.461 1.496-19.942 2.244-22.685-.499-43.376-6.98-60.826-21.937-12.273-10.61-20.727-23.648-24.928-38.828a105 105 0 0 1-10.47 16.89c-17.949 23.683-41.381 38.39-71.046 42.38-24.43 3.24-47.115-1.497-67.058-16.454-18.447-13.96-28.917-32.407-31.66-55.34-3.24-27.173 4.737-51.603 21.19-73.041 17.7-23.184 41.132-37.891 69.8-43.126 22.999-4.16 45.037-1.595 64.936 11.464M411.12 49.017l-.798.178c-23.183 5.235-38.14 19.942-43.624 43.375-4.488 19.444 4.985 39.138 22.934 47.115 13.71 5.983 27.421 5.235 40.633-1.496 19.694-10.22 30.413-26.175 31.66-47.613-.25-3.24-.25-5.734-.749-8.227-4.436-24.401-26.664-38.324-50.056-33.332M116.416 94.564c.997 0 1.496.748 1.496 1.745l-.499 5.983c0 .997-.997 1.745-1.745 1.745l-54.344-.249c-.997 0-1.246-.748-.748-1.496l3.49-6.232c.499-.748 1.496-1.496 2.493-1.496zM121.9 71.63c.997 0 1.496.748 1.247 1.496l-1.995 5.983c-.249.997-1.246 1.495-2.243 1.495l-117.912.25c-.997 0-1.246-.499-.748-1.247l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247zm12.963-22.934c.997 0 1.246.748.748 1.496l-4.238 6.481c-.499.748-1.745 1.496-2.493 1.496l-90.24-.25c-.998 0-1.247-.498-.749-1.246l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247z"})}),_Je=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 279",...e,children:[y.jsx("defs",{children:y.jsxs("linearGradient",{id:"Grafana_svg__a",x1:"49.995%",x2:"49.995%",y1:"122.45%",y2:"31.139%",children:[y.jsx("stop",{offset:"0%",stopColor:"#FFF100"}),y.jsx("stop",{offset:"100%",stopColor:"#F05A28"})]})}),y.jsx("path",{fill:"url(#Grafana_svg__a)",d:"M255.59 122.775c-.46-4.675-1.226-10.04-2.759-16.017a98 98 0 0 0-7.204-19.16 106.7 106.7 0 0 0-13.412-20.54c-2.222-2.681-4.675-5.287-7.28-7.816 3.908-15.558-4.752-29.046-4.752-29.046-14.945-.92-24.448 4.675-27.973 7.204-.613-.23-1.15-.537-1.763-.767-2.529-.996-5.135-1.992-7.894-2.835a130 130 0 0 0-8.277-2.3c-2.835-.69-5.67-1.226-8.583-1.686-.537-.076-.996-.153-1.533-.23C157.646 8.738 138.946 0 138.946 0c-20.922 13.258-24.831 31.805-24.831 31.805s-.077.383-.23 1.073c-1.15.307-2.299.69-3.449.996-1.609.46-3.218 1.073-4.751 1.686a123 123 0 0 0-4.752 1.916 117 117 0 0 0-9.35 4.599c-2.989 1.686-5.9 3.525-8.737 5.441l-.766-.307c-28.97-11.036-54.643 2.223-54.643 2.223-2.376 30.809 11.572 50.198 14.331 53.724-.69 1.916-1.303 3.832-1.916 5.748-2.146 6.974-3.755 14.101-4.751 21.535-.154 1.073-.307 2.146-.384 3.219C7.894 146.916 0 173.97 0 173.97c22.302 25.674 48.359 27.283 48.359 27.283l.077-.076c3.295 5.9 7.127 11.495 11.419 16.783a112 112 0 0 0 5.671 6.362c-8.124 23.298 1.15 42.61 1.15 42.61 24.83.92 41.155-10.882 44.603-13.564a85 85 0 0 0 7.511 2.222 109.7 109.7 0 0 0 23.298 3.449c1.916.076 3.909.153 5.825.076h2.759l1.226-.076v.076c11.726 16.708 32.265 19.084 32.265 19.084 14.638-15.405 15.48-30.733 15.48-34.028v-1.38c3.066-2.145 5.979-4.445 8.738-6.974 5.824-5.288 10.959-11.342 15.25-17.857l1.15-1.839c16.554.92 28.28-10.27 28.28-10.27-2.759-17.243-12.569-25.673-14.638-27.283 0 0-.077-.076-.23-.153s-.153-.153-.153-.153c-.077-.077-.23-.154-.383-.23.076-1.073.153-2.07.23-3.142.153-1.84.153-3.756.153-5.595v-2.913l-.077-1.149-.076-1.533c0-.536-.077-.996-.154-1.456-.076-.46-.076-.996-.153-1.456l-.153-1.456-.23-1.456c-.307-1.916-.613-3.756-1.073-5.672-1.763-7.433-4.675-14.484-8.43-20.845a70.4 70.4 0 0 0-14.025-16.707c-5.365-4.752-11.42-8.584-17.704-11.42-6.36-2.835-12.952-4.675-19.543-5.518-3.295-.46-6.59-.613-9.886-.536h-2.453l-1.226.077c-.46 0-.92.076-1.303.076a52 52 0 0 0-4.981.69c-6.591 1.226-12.799 3.602-18.24 6.897s-10.193 7.358-14.025 11.956a54.7 54.7 0 0 0-8.89 15.021 52.9 52.9 0 0 0-3.525 16.094c-.077 1.303-.077 2.683-.077 3.986v.996l.077 1.073c.076.613.076 1.303.153 1.916.23 2.682.766 5.288 1.456 7.74 1.456 4.982 3.755 9.503 6.59 13.335s6.285 6.975 9.887 9.504c3.602 2.452 7.51 4.215 11.343 5.364 3.832 1.15 7.664 1.61 11.266 1.61h1.993c.23 0 .46 0 .689-.077.383 0 .766-.077 1.15-.077.076 0 .23 0 .306-.076l.383-.077c.23 0 .46-.076.69-.076.46-.077.843-.154 1.303-.23s.843-.154 1.226-.307c.843-.153 1.61-.46 2.376-.69 1.533-.536 3.066-1.15 4.368-1.839 1.38-.69 2.606-1.533 3.832-2.3.307-.23.69-.459.997-.766 1.226-.996 1.456-2.835.46-4.061-.844-1.073-2.376-1.38-3.603-.69l-.92.46a25 25 0 0 1-3.295 1.38c-1.15.382-2.375.689-3.602.919-.613.076-1.226.153-1.916.23-.306 0-.613.076-.996.076h-1.84c-.383 0-.766 0-1.149-.076h-.46c-.153 0-.383 0-.536-.077-.383-.077-.69-.077-1.073-.153-2.836-.383-5.671-1.226-8.354-2.453a29.3 29.3 0 0 1-7.74-5.058c-2.376-2.146-4.445-4.675-6.055-7.587s-2.759-6.131-3.295-9.503c-.23-1.686-.383-3.449-.307-5.135 0-.46.077-.92.077-1.38v-.613c0-.23.077-.46.077-.69.076-.919.23-1.839.383-2.758 1.303-7.358 4.981-14.562 10.653-20.003 1.456-1.38 2.988-2.606 4.598-3.755a31.7 31.7 0 0 1 5.211-2.99 36 36 0 0 1 5.672-2.068c1.915-.537 3.908-.844 5.977-1.073.997-.077 1.993-.154 3.066-.154h2.376l.843.077c2.222.153 4.368.46 6.514.996 4.292.92 8.507 2.53 12.415 4.675 7.818 4.369 14.485 11.113 18.547 19.237 2.07 4.061 3.525 8.43 4.215 12.951.153 1.15.307 2.3.383 3.45l.077.842.077.843v3.296c0 .536-.077 1.456-.077 1.992-.077 1.227-.23 2.53-.383 3.756s-.383 2.452-.613 3.678a50 50 0 0 1-.843 3.602 64 64 0 0 1-2.3 7.128 62.4 62.4 0 0 1-7.204 13.105c-5.9 8.124-13.948 14.715-23.144 18.93-4.599 2.069-9.427 3.602-14.408 4.368-2.453.46-4.982.69-7.511.766h-3.832a36 36 0 0 1-4.062-.23c-5.365-.383-10.653-1.379-15.864-2.835-5.135-1.456-10.116-3.525-14.868-5.978-9.427-5.058-17.933-11.956-24.524-20.31a79 79 0 0 1-8.584-13.334 79 79 0 0 1-5.671-14.638c-1.38-5.058-2.223-10.193-2.606-15.405l-.077-.996v-6.821c.077-2.529.307-5.211.614-7.817.306-2.606.766-5.288 1.302-7.894.537-2.605 1.15-5.211 1.916-7.817a103 103 0 0 1 5.442-14.791c4.368-9.35 10.04-17.704 16.86-24.371 1.686-1.686 3.449-3.22 5.288-4.752a78 78 0 0 1 5.748-4.138c1.916-1.303 3.985-2.453 6.055-3.526a40 40 0 0 1 3.142-1.533l3.219-1.379c2.146-.92 4.368-1.686 6.667-2.376.537-.153 1.15-.306 1.686-.536.537-.154 1.15-.307 1.686-.46 1.15-.307 2.3-.613 3.45-.843.536-.153 1.149-.23 1.762-.383.613-.154 1.15-.23 1.763-.384.613-.076 1.15-.23 1.762-.306l.843-.153.92-.154c.613-.076 1.15-.153 1.763-.23.69-.076 1.302-.153 1.992-.23.537-.076 1.456-.153 1.993-.23.383-.076.843-.076 1.226-.153l.843-.076.383-.077h.46c.69-.077 1.303-.077 1.993-.153l.996-.077h.767c.536 0 1.149-.076 1.685-.076a99 99 0 0 1 6.745 0c4.445.153 8.813.69 13.028 1.456 8.507 1.61 16.478 4.291 23.758 7.893 7.28 3.526 13.719 7.894 19.39 12.646.383.306.69.613 1.073.92.306.306.69.613.996.92.69.612 1.303 1.225 1.993 1.838.69.614 1.303 1.227 1.916 1.84a44 44 0 0 1 1.839 1.916c2.376 2.529 4.598 5.058 6.59 7.664a99 99 0 0 1 9.734 15.25l.46.92.46.92c.306.613.613 1.226.843 1.84.306.613.536 1.149.843 1.762.23.613.536 1.15.766 1.763.92 2.299 1.84 4.521 2.53 6.59 1.149 3.373 1.992 6.362 2.682 8.967a2.043 2.043 0 0 0 2.299 1.61c1.15-.077 1.992-.996 1.992-2.146.077-2.759 0-6.054-.383-9.81"})]}),SJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 346",...e,children:[y.jsx("path",{fill:"#5382A1",d:"M82.554 267.473s-13.198 7.675 9.393 10.272c27.369 3.122 41.356 2.675 71.517-3.034 0 0 7.93 4.972 19.003 9.279-67.611 28.977-153.019-1.679-99.913-16.517M74.292 229.659s-14.803 10.958 7.805 13.296c29.236 3.016 52.324 3.263 92.276-4.43 0 0 5.526 5.602 14.215 8.666-81.747 23.904-172.798 1.885-114.296-17.532"}),y.jsx("path",{fill:"#E76F00",d:"M143.942 165.515c16.66 19.18-4.377 36.44-4.377 36.44s42.301-21.837 22.874-49.183c-18.144-25.5-32.059-38.172 43.268-81.858 0 0-118.238 29.53-61.765 94.6"}),y.jsx("path",{fill:"#5382A1",d:"M233.364 295.442s9.767 8.047-10.757 14.273c-39.026 11.823-162.432 15.393-196.714.471-12.323-5.36 10.787-12.8 18.056-14.362 7.581-1.644 11.914-1.337 11.914-1.337-13.705-9.655-88.583 18.957-38.034 27.15 137.853 22.356 251.292-10.066 215.535-26.195M88.9 190.48s-62.771 14.91-22.228 20.323c17.118 2.292 51.243 1.774 83.03-.89 25.978-2.19 52.063-6.85 52.063-6.85s-9.16 3.923-15.787 8.448c-63.744 16.765-186.886 8.966-151.435-8.183 29.981-14.492 54.358-12.848 54.358-12.848M201.506 253.422c64.8-33.672 34.839-66.03 13.927-61.67-5.126 1.066-7.411 1.99-7.411 1.99s1.903-2.98 5.537-4.27c41.37-14.545 73.187 42.897-13.355 65.647 0 .001 1.003-.895 1.302-1.697"}),y.jsx("path",{fill:"#E76F00",d:"M162.439.371s35.887 35.9-34.037 91.101c-56.071 44.282-12.786 69.53-.023 98.377-32.73-29.53-56.75-55.526-40.635-79.72C111.395 74.612 176.918 57.393 162.439.37"}),y.jsx("path",{fill:"#5382A1",d:"M95.268 344.665c62.199 3.982 157.712-2.209 159.974-31.64 0 0-4.348 11.158-51.404 20.018-53.088 9.99-118.564 8.824-157.399 2.421.001 0 7.95 6.58 48.83 9.201"})]}),EJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 249",...e,children:[y.jsx("path",{fill:"#326DE6",d:"M82.085 244.934c-5.946 0-11.561-2.642-15.36-7.432L8.92 165.657c-3.799-4.79-5.285-10.9-3.799-16.847l20.645-89.682c1.321-5.946 5.285-10.736 10.736-13.378l83.571-39.97c2.643-1.32 5.616-1.981 8.589-1.981s5.945.66 8.588 1.982l83.572 39.804c5.45 2.642 9.414 7.432 10.735 13.378l20.645 89.682c1.322 5.946 0 12.057-3.798 16.847l-57.807 71.845c-3.799 4.624-9.414 7.432-15.36 7.432z"}),y.jsx("path",{fill:"#FFF",d:"M128.495 7.928c2.313 0 4.625.495 6.772 1.486l83.572 39.804c4.294 2.147 7.597 6.111 8.588 10.736l20.645 89.682c1.156 4.79 0 9.745-3.138 13.543l-57.806 71.846c-2.973 3.798-7.598 5.945-12.387 5.945H82.085c-4.79 0-9.414-2.147-12.387-5.945l-57.806-71.846c-2.973-3.798-4.13-8.753-3.138-13.543l20.645-89.682c1.156-4.79 4.294-8.754 8.588-10.736L121.56 9.25c2.147-.826 4.624-1.321 6.936-1.321m0-7.763c-3.468 0-6.936.826-10.24 2.312l-83.571 39.97c-6.607 3.138-11.231 8.918-12.883 16.02L1.156 148.15c-1.651 7.102 0 14.369 4.625 20.15l57.806 71.845c4.46 5.615 11.231 8.753 18.333 8.753h92.655c7.102 0 13.874-3.138 18.333-8.753l57.807-71.846c4.624-5.615 6.276-13.047 4.624-20.15l-20.645-89.682c-1.651-7.102-6.276-12.882-12.882-16.02L138.57 2.476C135.432.991 131.964.165 128.495.165"}),y.jsx("path",{fill:"#FFF",d:"M212.232 142.534q-.248 0 0 0h-.165c-.165 0-.33 0-.33-.165-.33 0-.66-.165-.991-.165-1.156-.165-2.147-.33-3.138-.33-.496 0-.991 0-1.652-.166h-.165c-3.468-.33-6.276-.66-8.919-1.486-1.156-.496-1.486-1.156-1.817-1.817 0-.165-.165-.165-.165-.33l-2.147-.66a65.3 65.3 0 0 0-1.156-23.289 68 68 0 0 0-9.249-21.636l1.652-1.486v-.33c0-.826.165-1.652.825-2.478 1.982-1.817 4.46-3.303 7.433-5.12.495-.33.99-.495 1.486-.826.991-.495 1.817-.99 2.808-1.651.165-.165.495-.33.826-.66.165-.166.33-.166.33-.331 2.312-1.982 2.808-5.285 1.156-7.433-.826-1.156-2.312-1.816-3.799-1.816-1.32 0-2.477.495-3.633 1.321l-.33.33c-.33.165-.496.496-.826.661-.826.826-1.487 1.486-2.147 2.312-.33.33-.66.826-1.156 1.156-2.313 2.478-4.46 4.46-6.607 5.946q-.742.495-1.486.496c-.33 0-.661 0-.991-.166h-.33l-1.983 1.322c-2.147-2.312-4.459-4.294-6.771-6.276a65.96 65.96 0 0 0-34.519-13.709l-.165-2.147-.33-.33c-.496-.496-1.156-.991-1.322-2.147-.165-2.643.166-5.616.496-8.919v-.165c0-.496.165-1.156.33-1.652.165-.99.33-1.982.496-3.138v-1.486c0-2.973-2.313-5.45-5.12-5.45-1.322 0-2.643.66-3.634 1.651-.99.991-1.486 2.312-1.486 3.799v1.321c0 1.156.165 2.147.495 3.138.165.496.165.991.33 1.652v.165c.33 3.303.826 6.276.496 8.919-.165 1.156-.826 1.651-1.321 2.147l-.33.33-.166 2.147c-2.973.33-5.946.66-8.919 1.321-12.717 2.808-23.948 9.25-32.701 18.498l-1.652-1.156h-.33c-.33 0-.661.165-.991.165q-.743 0-1.487-.495c-2.147-1.486-4.294-3.634-6.606-6.111-.33-.33-.66-.826-1.156-1.156-.661-.826-1.322-1.487-2.148-2.312-.165-.166-.495-.33-.825-.661-.165-.165-.33-.165-.33-.33a5.77 5.77 0 0 0-3.634-1.322c-1.487 0-2.973.661-3.799 1.817-1.652 2.147-1.156 5.45 1.156 7.432.165 0 .165.166.33.166.33.165.496.495.826.66.991.66 1.817 1.156 2.808 1.652.496.165.991.495 1.487.826 2.972 1.816 5.45 3.303 7.432 5.12.826.825.826 1.651.826 2.477v.33l1.651 1.487c-.33.495-.66.826-.826 1.321-8.258 13.048-11.396 28.408-9.249 43.603l-2.147.66c0 .166-.165.166-.165.33-.33.661-.826 1.322-1.817 1.817-2.477.826-5.45 1.157-8.918 1.487h-.166c-.495 0-1.156 0-1.651.165-.991 0-1.982.165-3.138.33-.33 0-.66.166-.991.166-.165 0-.33 0-.496.165-2.973.66-4.79 3.468-4.294 6.11.496 2.313 2.643 3.8 5.285 3.8.496 0 .826 0 1.322-.166.165 0 .33 0 .33-.165.33 0 .66-.165.99-.165 1.157-.33 1.983-.66 2.974-1.156.495-.165.99-.496 1.486-.66h.165c3.138-1.157 5.946-2.148 8.589-2.478h.33c.991 0 1.652.495 2.147.826.165 0 .165.165.33.165l2.313-.33c3.964 12.221 11.561 23.122 21.636 31.05 2.312 1.816 4.624 3.303 7.102 4.79l-.991 2.146c0 .166.165.166.165.33.33.661.66 1.487.33 2.643-.99 2.478-2.477 4.955-4.294 7.763v.165c-.33.496-.66.826-.99 1.321-.661.826-1.157 1.652-1.818 2.643-.165.165-.33.495-.495.826 0 .165-.165.33-.165.33-1.321 2.808-.33 5.946 2.147 7.102q.99.496 1.982.496c1.982 0 3.964-1.322 4.955-3.139 0-.165.165-.33.165-.33.165-.33.33-.66.495-.826.496-1.156.661-1.982.991-2.973l.496-1.486c1.156-3.303 1.982-5.946 3.468-8.258.66-.991 1.487-1.156 2.147-1.487.165 0 .165 0 .33-.165l1.157-2.147c7.267 2.808 15.195 4.294 23.122 4.294 4.79 0 9.745-.495 14.37-1.651a73 73 0 0 0 8.588-2.478l.99 1.817c.166 0 .166 0 .331.165.826.165 1.486.496 2.147 1.487 1.321 2.312 2.312 5.12 3.468 8.258v.165l.496 1.486c.33.991.495 1.982.99 2.973.166.33.331.496.496.826 0 .165.166.33.166.33.99 1.982 2.972 3.139 4.954 3.139q.992 0 1.982-.496c1.156-.66 2.147-1.652 2.478-2.973.33-1.321.33-2.808-.33-4.129 0-.165-.166-.165-.166-.33-.165-.33-.33-.66-.495-.826-.496-.991-1.156-1.817-1.817-2.643-.33-.495-.66-.825-.99-1.32v-.166c-1.818-2.808-3.47-5.285-4.295-7.763-.33-1.156 0-1.816.165-2.642 0-.165.165-.165.165-.33l-.826-1.982c8.754-5.12 16.186-12.388 21.802-21.306 2.973-4.625 5.285-9.745 6.936-14.865l1.982.33c.166 0 .166-.165.33-.165.661-.33 1.157-.825 2.148-.825h.33c2.643.33 5.45 1.32 8.589 2.477h.165c.495.165.99.495 1.486.66.991.496 1.817.826 2.973 1.157.33 0 .66.165.991.165.165 0 .33 0 .495.165.496.165.826.165 1.322.165 2.477 0 4.624-1.651 5.285-3.798 0-1.982-1.817-4.625-4.79-5.45m-76.47-8.093-7.267 3.469-7.267-3.469-1.816-7.762 4.954-6.276h8.093l4.955 6.276zm43.108-17.176a52.1 52.1 0 0 1 1.156 16.68l-25.27-7.266c-2.312-.66-3.633-2.973-3.138-5.285.165-.661.496-1.322.991-1.817l19.985-18.003c2.807 4.625 4.954 9.91 6.276 15.69m-14.204-25.6-21.636 15.36c-1.817 1.156-4.295.825-5.781-.991-.495-.496-.66-1.157-.826-1.817l-1.486-26.922a50.13 50.13 0 0 1 29.729 14.37M116.769 78.12c1.817-.33 3.468-.66 5.285-.99l-1.486 26.425c-.165 2.312-1.982 4.294-4.46 4.294-.66 0-1.486-.165-1.982-.495L92.16 91.665c6.772-6.772 15.195-11.397 24.609-13.544m-32.537 23.453 19.654 17.507c1.817 1.487 1.982 4.294.496 6.111-.496.66-1.156 1.156-1.982 1.322l-25.6 7.432c-.991-11.231 1.486-22.627 7.432-32.372m-4.46 44.759 26.262-4.46c2.147-.165 4.129 1.322 4.624 3.469.165.99.165 1.817-.165 2.643l-10.075 24.278c-9.249-5.946-16.681-15.03-20.645-25.93m60.285 32.867c-3.799.826-7.598 1.321-11.562 1.321-5.78 0-11.396-.99-16.68-2.642l13.047-23.618c1.321-1.487 3.468-2.147 5.285-1.156a7 7 0 0 1 1.982 1.816l12.717 22.958c-1.486.495-3.138.826-4.79 1.321m32.206-22.957c-4.129 6.606-9.58 11.891-15.855 16.02l-10.405-24.94c-.496-1.981.33-4.128 2.312-5.12.66-.33 1.486-.495 2.312-.495l26.426 4.46c-.991 3.633-2.643 6.937-4.79 10.075"})]}),CJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 291",...e,children:[y.jsx("path",{fill:"#009639",d:"M2.054 218.187c1.32 2.347 3.227 4.108 5.575 5.428l112.962 65.137c4.695 2.787 10.416 2.787 14.964 0l112.963-65.137c4.695-2.64 7.482-7.629 7.482-13.057V80.284c0-5.428-2.787-10.416-7.482-13.056L135.555 2.09c-4.694-2.788-10.416-2.788-14.964 0L7.63 67.228C2.787 69.868 0 74.856 0 80.284v130.42c0 2.642.587 5.136 2.054 7.483"}),y.jsx("path",{fill:"#FFF",d:"M91.837 195.154a14.463 14.463 0 0 1-14.524 14.524 14.463 14.463 0 0 1-14.523-14.524V95.542c0-7.776 6.895-14.084 16.43-14.084 6.896 0 14.965 2.787 19.806 8.802l4.4 5.282 60.737 72.618V95.835a14.463 14.463 0 0 1 14.524-14.524 14.463 14.463 0 0 1 14.523 14.524v99.613c0 7.775-6.895 14.083-16.43 14.083-6.896 0-14.965-2.787-19.806-8.802l-65.137-77.754z"})]}),$Je=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 264",...e,children:[y.jsx("path",{d:"M255.008 158.086c-1.535-4.649-5.556-7.887-10.756-8.664-2.452-.366-5.26-.21-8.583.475-5.792 1.195-10.089 1.65-13.225 1.738 11.837-19.985 21.462-42.775 27.003-64.228 8.96-34.689 4.172-50.492-1.423-57.64C233.217 10.847 211.614.683 185.552.372c-13.903-.17-26.108 2.575-32.475 4.549-5.928-1.046-12.302-1.63-18.99-1.738-12.537-.2-23.614 2.533-33.079 8.15-5.24-1.772-13.65-4.27-23.362-5.864-22.842-3.75-41.252-.828-54.718 8.685C6.622 25.672-.937 45.684.461 73.634c.444 8.874 5.408 35.874 13.224 61.48 4.492 14.718 9.282 26.94 14.237 36.33 7.027 13.315 14.546 21.156 22.987 23.972 4.731 1.576 13.327 2.68 22.368-4.85 1.146 1.388 2.675 2.767 4.704 4.048 2.577 1.625 5.728 2.953 8.875 3.74 11.341 2.835 21.964 2.126 31.027-1.848.056 1.612.099 3.152.135 4.482.06 2.157.12 4.272.199 6.25.537 13.374 1.447 23.773 4.143 31.049.148.4.347 1.01.557 1.657 1.345 4.118 3.594 11.012 9.316 16.411 5.925 5.593 13.092 7.308 19.656 7.308 3.292 0 6.433-.432 9.188-1.022 9.82-2.105 20.973-5.311 29.041-16.799 7.628-10.86 11.336-27.217 12.007-52.99q.13-1.094.244-2.088l.16-1.362 1.797.158.463.031c10.002.456 22.232-1.665 29.743-5.154 5.935-2.754 24.954-12.795 20.476-26.351"}),y.jsx("path",{fill:"#336791",d:"M237.906 160.722c-29.74 6.135-31.785-3.934-31.785-3.934 31.4-46.593 44.527-105.736 33.2-120.211-30.904-39.485-84.399-20.811-85.292-20.327l-.287.052c-5.876-1.22-12.451-1.946-19.842-2.067-13.456-.22-23.664 3.528-31.41 9.402 0 0-95.43-39.314-90.991 49.444.944 18.882 27.064 142.873 58.218 105.422 11.387-13.695 22.39-25.274 22.39-25.274 5.464 3.63 12.006 5.482 18.864 4.817l.533-.452c-.166 1.7-.09 3.363.213 5.332-8.026 8.967-5.667 10.541-21.711 13.844-16.235 3.346-6.698 9.302-.471 10.86 7.549 1.887 25.013 4.561 36.813-11.958l-.47 1.885c3.144 2.519 5.352 16.383 4.982 28.952-.37 12.568-.617 21.197 1.86 27.937 2.479 6.74 4.948 21.905 26.04 17.386 17.623-3.777 26.756-13.564 28.027-29.89.901-11.606 2.942-9.89 3.07-20.267l1.637-4.912c1.887-15.733.3-20.809 11.157-18.448l2.64.232c7.99.363 18.45-1.286 24.589-4.139 13.218-6.134 21.058-16.377 8.024-13.686z"}),y.jsx("path",{fill:"#FFF",d:"M108.076 81.525c-2.68-.373-5.107-.028-6.335.902-.69.523-.904 1.129-.962 1.546-.154 1.105.62 2.327 1.096 2.957 1.346 1.784 3.312 3.01 5.258 3.28q.423.059.842.058c3.245 0 6.196-2.527 6.456-4.392.325-2.336-3.066-3.893-6.355-4.35M196.86 81.599c-.256-1.831-3.514-2.353-6.606-1.923-3.088.43-6.082 1.824-5.832 3.659.2 1.427 2.777 3.863 5.827 3.863q.387 0 .78-.054c2.036-.282 3.53-1.575 4.24-2.32 1.08-1.136 1.706-2.402 1.591-3.225"}),y.jsx("path",{fill:"#FFF",d:"M247.802 160.025c-1.134-3.429-4.784-4.532-10.848-3.28-18.005 3.716-24.453 1.142-26.57-.417 13.995-21.32 25.508-47.092 31.719-71.137 2.942-11.39 4.567-21.968 4.7-30.59.147-9.463-1.465-16.417-4.789-20.665-13.402-17.125-33.072-26.311-56.882-26.563-16.369-.184-30.199 4.005-32.88 5.183-5.646-1.404-11.801-2.266-18.502-2.376-12.288-.199-22.91 2.743-31.704 8.74-3.82-1.422-13.692-4.811-25.765-6.756-20.872-3.36-37.458-.814-49.294 7.571-14.123 10.006-20.643 27.892-19.38 53.16.425 8.501 5.269 34.653 12.913 59.698 10.062 32.964 21 51.625 32.508 55.464 1.347.449 2.9.763 4.613.763 4.198 0 9.345-1.892 14.7-8.33a530 530 0 0 1 20.261-22.926c4.524 2.428 9.494 3.784 14.577 3.92q.016.2.035.398a118 118 0 0 0-2.57 3.175c-3.522 4.471-4.255 5.402-15.592 7.736-3.225.666-11.79 2.431-11.916 8.435-.136 6.56 10.125 9.315 11.294 9.607 4.074 1.02 7.999 1.523 11.742 1.523 9.103 0 17.114-2.992 23.516-8.781-.197 23.386.778 46.43 3.586 53.451 2.3 5.748 7.918 19.795 25.664 19.794 2.604 0 5.47-.303 8.623-.979 18.521-3.97 26.564-12.156 29.675-30.203 1.665-9.645 4.522-32.676 5.866-45.03 2.836.885 6.487 1.29 10.434 1.289 8.232 0 17.731-1.749 23.688-4.514 6.692-3.108 18.768-10.734 16.578-17.36m-44.106-83.48c-.061 3.647-.563 6.958-1.095 10.414-.573 3.717-1.165 7.56-1.314 12.225-.147 4.54.42 9.26.968 13.825 1.108 9.22 2.245 18.712-2.156 28.078a37 37 0 0 1-1.95-4.009c-.547-1.326-1.735-3.456-3.38-6.404-6.399-11.476-21.384-38.35-13.713-49.316 2.285-3.264 8.084-6.62 22.64-4.813m-17.644-61.787c21.334.471 38.21 8.452 50.158 23.72 9.164 11.711-.927 64.998-30.14 110.969a171 171 0 0 0-.886-1.117l-.37-.462c7.549-12.467 6.073-24.802 4.759-35.738-.54-4.488-1.05-8.727-.92-12.709.134-4.22.692-7.84 1.232-11.34.663-4.313 1.338-8.776 1.152-14.037.139-.552.195-1.204.122-1.978-.475-5.045-6.235-20.144-17.975-33.81-6.422-7.475-15.787-15.84-28.574-21.482 5.5-1.14 13.021-2.203 21.442-2.016M66.674 175.778c-5.9 7.094-9.974 5.734-11.314 5.288-8.73-2.912-18.86-21.364-27.791-50.624-7.728-25.318-12.244-50.777-12.602-57.916-1.128-22.578 4.345-38.313 16.268-46.769 19.404-13.76 51.306-5.524 64.125-1.347-.184.182-.376.352-.558.537-21.036 21.244-20.537 57.54-20.485 59.759-.002.856.07 2.068.168 3.735.362 6.105 1.036 17.467-.764 30.334-1.672 11.957 2.014 23.66 10.111 32.109a36 36 0 0 0 2.617 2.468c-3.604 3.86-11.437 12.396-19.775 22.426m22.479-29.993c-6.526-6.81-9.49-16.282-8.133-25.99 1.9-13.592 1.199-25.43.822-31.79-.053-.89-.1-1.67-.127-2.285 3.073-2.725 17.314-10.355 27.47-8.028 4.634 1.061 7.458 4.217 8.632 9.645 6.076 28.103.804 39.816-3.432 49.229-.873 1.939-1.698 3.772-2.402 5.668l-.546 1.466c-1.382 3.706-2.668 7.152-3.465 10.424-6.938-.02-13.687-2.984-18.819-8.34m1.065 37.9c-2.026-.506-3.848-1.385-4.917-2.114.893-.42 2.482-.992 5.238-1.56 13.337-2.745 15.397-4.683 19.895-10.394 1.031-1.31 2.2-2.794 3.819-4.602l.002-.002c2.411-2.7 3.514-2.242 5.514-1.412 1.621.67 3.2 2.702 3.84 4.938.303 1.056.643 3.06-.47 4.62-9.396 13.156-23.088 12.987-32.921 10.526m69.799 64.952c-16.316 3.496-22.093-4.829-25.9-14.346-2.457-6.144-3.665-33.85-2.808-64.447.011-.407-.047-.8-.159-1.17a15.4 15.4 0 0 0-.456-2.162c-1.274-4.452-4.379-8.176-8.104-9.72-1.48-.613-4.196-1.738-7.46-.903.696-2.868 1.903-6.107 3.212-9.614l.549-1.475c.618-1.663 1.394-3.386 2.214-5.21 4.433-9.848 10.504-23.337 3.915-53.81-2.468-11.414-10.71-16.988-23.204-15.693-7.49.775-14.343 3.797-17.761 5.53-.735.372-1.407.732-2.035 1.082.954-11.5 4.558-32.992 18.04-46.59 8.489-8.56 19.794-12.788 33.568-12.56 27.14.444 44.544 14.372 54.366 25.979 8.464 10.001 13.047 20.076 14.876 25.51-13.755-1.399-23.11 1.316-27.852 8.096-10.317 14.748 5.644 43.372 13.315 57.129 1.407 2.521 2.621 4.7 3.003 5.626 2.498 6.054 5.732 10.096 8.093 13.046.724.904 1.426 1.781 1.96 2.547-4.166 1.201-11.649 3.976-10.967 17.847-.55 6.96-4.461 39.546-6.448 51.059-2.623 15.21-8.22 20.875-23.957 24.25m68.104-77.936c-4.26 1.977-11.389 3.46-18.161 3.779-7.48.35-11.288-.838-12.184-1.569-.42-8.644 2.797-9.547 6.202-10.503.535-.15 1.057-.297 1.561-.473q.469.383 1.032.756c6.012 3.968 16.735 4.396 31.874 1.271l.166-.033c-2.042 1.909-5.536 4.471-10.49 6.772"})]}),zJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 257",...e,children:y.jsx("path",{fill:"#DA4E31",d:"M128.001.667C57.311.667 0 57.971 0 128.664c0 70.69 57.311 127.998 128.001 127.998S256 199.354 256 128.664C256 57.97 198.689.667 128.001.667m0 239.56c-20.112 0-36.419-13.435-36.419-30.004h72.838c0 16.566-16.306 30.004-36.419 30.004m60.153-39.94H67.842V178.47h120.314v21.816zm-.432-33.045H68.185c-.398-.458-.804-.91-1.188-1.375-12.315-14.954-15.216-22.76-18.032-30.716-.048-.262 14.933 3.06 25.556 5.45 0 0 5.466 1.265 13.458 2.722-7.673-8.994-12.23-20.428-12.23-32.116 0-25.658 19.68-48.079 12.58-66.201 6.91.562 14.3 14.583 14.8 36.505 7.346-10.152 10.42-28.69 10.42-40.056 0-11.769 7.755-25.44 15.512-25.907-6.915 11.396 1.79 21.165 9.53 45.4 2.902 9.103 2.532 24.423 4.772 34.138.744-20.178 4.213-49.62 17.014-59.784-5.647 12.8.836 28.818 5.27 36.518 7.154 12.424 11.49 21.836 11.49 39.638 0 11.936-4.407 23.173-11.84 31.958 8.452-1.586 14.289-3.016 14.289-3.016l27.45-5.355c.002-.002-3.987 16.401-19.314 32.197"})}),RJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 228",...e,children:y.jsx("path",{fill:"#00D8FF",d:"M210.483 73.824a172 172 0 0 0-8.24-2.597c.465-1.9.893-3.777 1.273-5.621 6.238-30.281 2.16-54.676-11.769-62.708-13.355-7.7-35.196.329-57.254 19.526a171 171 0 0 0-6.375 5.848 156 156 0 0 0-4.241-3.917C100.759 3.829 77.587-4.822 63.673 3.233 50.33 10.957 46.379 33.89 51.995 62.588a171 171 0 0 0 1.892 8.48c-3.28.932-6.445 1.924-9.474 2.98C17.309 83.498 0 98.307 0 113.668c0 15.865 18.582 31.778 46.812 41.427a146 146 0 0 0 6.921 2.165 168 168 0 0 0-2.01 9.138c-5.354 28.2-1.173 50.591 12.134 58.266 13.744 7.926 36.812-.22 59.273-19.855a146 146 0 0 0 5.342-4.923 168 168 0 0 0 6.92 6.314c21.758 18.722 43.246 26.282 56.54 18.586 13.731-7.949 18.194-32.003 12.4-61.268a145 145 0 0 0-1.535-6.842c1.62-.48 3.21-.974 4.76-1.488 29.348-9.723 48.443-25.443 48.443-41.52 0-15.417-17.868-30.326-45.517-39.844m-6.365 70.984c-1.4.463-2.836.91-4.3 1.345-3.24-10.257-7.612-21.163-12.963-32.432 5.106-11 9.31-21.767 12.459-31.957 2.619.758 5.16 1.557 7.61 2.4 23.69 8.156 38.14 20.213 38.14 29.504 0 9.896-15.606 22.743-40.946 31.14m-10.514 20.834c2.562 12.94 2.927 24.64 1.23 33.787-1.524 8.219-4.59 13.698-8.382 15.893-8.067 4.67-25.32-1.4-43.927-17.412a157 157 0 0 1-6.437-5.87c7.214-7.889 14.423-17.06 21.459-27.246 12.376-1.098 24.068-2.894 34.671-5.345q.785 3.162 1.386 6.193M87.276 214.515c-7.882 2.783-14.16 2.863-17.955.675-8.075-4.657-11.432-22.636-6.853-46.752a157 157 0 0 1 1.869-8.499c10.486 2.32 22.093 3.988 34.498 4.994 7.084 9.967 14.501 19.128 21.976 27.15a135 135 0 0 1-4.877 4.492c-9.933 8.682-19.886 14.842-28.658 17.94M50.35 144.747c-12.483-4.267-22.792-9.812-29.858-15.863-6.35-5.437-9.555-10.836-9.555-15.216 0-9.322 13.897-21.212 37.076-29.293 2.813-.98 5.757-1.905 8.812-2.773 3.204 10.42 7.406 21.315 12.477 32.332-5.137 11.18-9.399 22.249-12.634 32.792a135 135 0 0 1-6.318-1.979m12.378-84.26c-4.811-24.587-1.616-43.134 6.425-47.789 8.564-4.958 27.502 2.111 47.463 19.835a144 144 0 0 1 3.841 3.545c-7.438 7.987-14.787 17.08-21.808 26.988-12.04 1.116-23.565 2.908-34.161 5.309a160 160 0 0 1-1.76-7.887m110.427 27.268a348 348 0 0 0-7.785-12.803c8.168 1.033 15.994 2.404 23.343 4.08-2.206 7.072-4.956 14.465-8.193 22.045a381 381 0 0 0-7.365-13.322m-45.032-43.861c5.044 5.465 10.096 11.566 15.065 18.186a322 322 0 0 0-30.257-.006c4.974-6.559 10.069-12.652 15.192-18.18M82.802 87.83a323 323 0 0 0-7.227 13.238c-3.184-7.553-5.909-14.98-8.134-22.152 7.304-1.634 15.093-2.97 23.209-3.984a322 322 0 0 0-7.848 12.897m8.081 65.352c-8.385-.936-16.291-2.203-23.593-3.793 2.26-7.3 5.045-14.885 8.298-22.6a321 321 0 0 0 7.257 13.246c2.594 4.48 5.28 8.868 8.038 13.147m37.542 31.03c-5.184-5.592-10.354-11.779-15.403-18.433 4.902.192 9.899.29 14.978.29 5.218 0 10.376-.117 15.453-.343-4.985 6.774-10.018 12.97-15.028 18.486m52.198-57.817c3.422 7.8 6.306 15.345 8.596 22.52-7.422 1.694-15.436 3.058-23.88 4.071a382 382 0 0 0 7.859-13.026 347 347 0 0 0 7.425-13.565m-16.898 8.101a359 359 0 0 1-12.281 19.815 329 329 0 0 1-23.444.823c-7.967 0-15.716-.248-23.178-.732a310 310 0 0 1-12.513-19.846h.001a307 307 0 0 1-10.923-20.627 310 310 0 0 1 10.89-20.637l-.001.001a307 307 0 0 1 12.413-19.761c7.613-.576 15.42-.876 23.31-.876H128c7.926 0 15.743.303 23.354.883a329 329 0 0 1 12.335 19.695 359 359 0 0 1 11.036 20.54 330 330 0 0 1-11 20.722m22.56-122.124c8.572 4.944 11.906 24.881 6.52 51.026q-.518 2.504-1.15 5.09c-10.622-2.452-22.155-4.275-34.23-5.408-7.034-10.017-14.323-19.124-21.64-27.008a161 161 0 0 1 5.888-5.4c18.9-16.447 36.564-22.941 44.612-18.3M128 90.808c12.625 0 22.86 10.235 22.86 22.86s-10.235 22.86-22.86 22.86-22.86-10.235-22.86-22.86 10.235-22.86 22.86-22.86"})}),TJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 220",...e,children:[y.jsx("path",{fill:"#912626",d:"M245.97 168.943c-13.662 7.121-84.434 36.22-99.501 44.075s-23.437 7.78-35.34 2.09c-11.902-5.69-87.216-36.112-100.783-42.597C3.566 169.271 0 166.535 0 163.951v-25.876s98.05-21.345 113.879-27.024c15.828-5.679 21.32-5.884 34.79-.95 13.472 4.936 94.018 19.468 107.331 24.344l-.006 25.51c.002 2.558-3.07 5.364-10.024 8.988"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 143.22c-13.661 7.118-84.431 36.218-99.498 44.072-15.066 7.857-23.436 7.78-35.338 2.09-11.903-5.686-87.214-36.113-100.78-42.594-13.566-6.485-13.85-10.948-.524-16.166 13.326-5.22 88.224-34.605 104.055-40.284 15.828-5.677 21.319-5.884 34.789-.948 13.471 4.934 83.819 32.935 97.13 37.81 13.316 4.881 13.827 8.9.166 16.02"}),y.jsx("path",{fill:"#912626",d:"M245.97 127.074c-13.662 7.122-84.434 36.22-99.501 44.078-15.067 7.853-23.437 7.777-35.34 2.087-11.903-5.687-87.216-36.112-100.783-42.597C3.566 127.402 0 124.67 0 122.085V96.206s98.05-21.344 113.879-27.023c15.828-5.679 21.32-5.885 34.79-.95C162.142 73.168 242.688 87.697 256 92.574l-.006 25.513c.002 2.557-3.07 5.363-10.024 8.987"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 101.351c-13.661 7.12-84.431 36.218-99.498 44.075-15.066 7.854-23.436 7.777-35.338 2.087-11.903-5.686-87.214-36.112-100.78-42.594-13.566-6.483-13.85-10.947-.524-16.167C23.151 83.535 98.05 54.148 113.88 48.47c15.828-5.678 21.319-5.884 34.789-.949 13.471 4.934 83.819 32.933 97.13 37.81 13.316 4.88 13.827 8.9.166 16.02"}),y.jsx("path",{fill:"#912626",d:"M245.97 83.653c-13.662 7.12-84.434 36.22-99.501 44.078-15.067 7.854-23.437 7.777-35.34 2.087-11.903-5.687-87.216-36.113-100.783-42.595C3.566 83.98 0 81.247 0 78.665v-25.88s98.05-21.343 113.879-27.021c15.828-5.68 21.32-5.884 34.79-.95C162.142 29.749 242.688 44.278 256 49.155l-.006 25.512c.002 2.555-3.07 5.361-10.024 8.986"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 57.93c-13.661 7.12-84.431 36.22-99.498 44.074-15.066 7.854-23.436 7.777-35.338 2.09C99.227 98.404 23.915 67.98 10.35 61.497S-3.5 50.55 9.825 45.331C23.151 40.113 98.05 10.73 113.88 5.05c15.828-5.679 21.319-5.883 34.789-.948s83.819 32.934 97.13 37.811c13.316 4.876 13.827 8.897.166 16.017"}),y.jsx("path",{fill:"#FFF",d:"m159.283 32.757-22.01 2.285-4.927 11.856-7.958-13.23-25.415-2.284 18.964-6.839-5.69-10.498 17.755 6.944 16.738-5.48-4.524 10.855zM131.032 90.275 89.955 73.238l58.86-9.035zM74.082 39.347c17.375 0 31.46 5.46 31.46 12.194 0 6.736-14.085 12.195-31.46 12.195s-31.46-5.46-31.46-12.195c0-6.734 14.085-12.194 31.46-12.194"}),y.jsx("path",{fill:"#621B1C",d:"m185.295 35.998 34.836 13.766-34.806 13.753z"}),y.jsx("path",{fill:"#9A2928",d:"m146.755 51.243 38.54-15.245.03 27.519-3.779 1.478z"})]}),jJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 258",...e,children:y.jsxs("g",{fill:"#FFA64D",children:[y.jsx("path",{d:"M13.222 183.045C30.007 165.978 244.278 4.782 247.936 8.44c2.813 2.813-156.507 219.616-173.387 236.589s-44.26 16.785-61.14-.282c-16.972-17.066-16.972-44.73-.187-61.702",opacity:.5}),y.jsx("path",{d:"M22.693 175.45c20.63-12.098 230.119-95.18 232.65-90.68 1.97 3.47-168.79 154.538-189.514 166.541-20.63 12.003-46.98 4.783-58.89-16.222-11.909-20.818-4.876-47.543 15.754-59.64",opacity:.3}),y.jsx("path",{d:"M82.051 235.276C94.054 214.46 176.387 3.47 171.98.938 168.51-1.032 18.661 171.042 6.658 191.859c-11.91 20.818-4.689 47.356 16.129 59.265C43.51 263.127 70.048 256 82.05 235.276",opacity:.3}),y.jsx("path",{d:"M32.727 171.042c23.068-6.283 216.521-30.195 217.928-25.225 1.031 3.845-172.73 103.431-195.798 109.714s-46.699-7.595-52.794-30.945 7.69-47.261 30.664-53.544",opacity:.2}),y.jsx("path",{d:"M32.727 171.042c23.068-6.283 179.387 29.07 180.7 33.946 1.032 3.844-135.595 44.167-158.664 50.45-23.068 6.282-46.699-7.596-52.794-30.946-6.001-23.255 7.783-47.167 30.758-53.45",opacity:.1}),y.jsx("path",{d:"M86.459 225.055c6.282-23.256-28.882-180.7-33.852-182.013C48.762 42.01 8.815 179.575 2.626 202.83c-6.19 23.255 7.595 47.074 30.757 53.075 23.068 6.19 46.887-7.595 53.076-30.851",opacity:.1}),y.jsx("path",{d:"M86.459 225.055C92.74 201.799 116.372 6.939 111.496 5.626 107.651 4.595 8.908 179.576 2.626 202.925-3.564 226.18 10.22 249.999 33.383 256c23.068 6.189 46.887-7.69 53.076-30.945",opacity:.2})]})}),AJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 256",...e,children:[y.jsx("path",{fill:"#85EA2D",d:"M127.999 249.895c-67.215 0-121.9-54.68-121.9-121.896S60.785 6.102 128 6.102c67.214 0 121.899 54.685 121.899 121.9 0 67.214-54.685 121.893-121.9 121.893"}),y.jsx("path",{fill:"#173647",d:"M127.999 12.202c63.954 0 115.797 51.842 115.797 115.797 0 63.952-51.843 115.797-115.797 115.797-63.952 0-115.797-51.845-115.797-115.797S64.047 12.202 127.999 12.202m0-12.202C57.419 0 0 57.42 0 127.999s57.42 127.998 127.999 127.998S256 198.577 256 128C256 57.419 198.578 0 127.999 0"}),y.jsx("path",{fill:"#173647",d:"M80.598 86.619c-.394 4.38.146 8.909-.146 13.338-.345 4.431-.887 8.811-1.773 13.192-1.23 6.25-5.12 10.976-10.482 14.914 10.436 6.793 11.616 17.324 12.304 28.006.345 5.76.197 11.567.788 17.276.443 4.429 2.165 5.562 6.745 5.708 1.87.048 3.786 0 5.956 0v13.683c-13.535 2.313-24.708-1.525-27.467-12.992-.887-4.184-1.478-8.467-1.673-12.798-.297-4.578.195-9.155-.148-13.732-.985-12.553-2.61-16.785-14.618-17.376v-15.602a24 24 0 0 1 2.608-.443c6.596-.345 9.4-2.364 10.828-8.86.69-3.641 1.084-7.333 1.23-11.074.494-7.136.297-14.42 1.525-21.507C67.997 68.163 74.3 63.24 84.785 62.65c2.952-.149 5.955 0 9.35 0v13.98c-1.427.1-2.658.294-3.937.294-8.515-.297-8.96 2.607-9.6 9.695m16.39 32.386h-.196c-4.923-.245-9.155 3.593-9.403 8.515-.246 4.972 3.592 9.206 8.515 9.45h.59c4.875.296 9.056-3.447 9.352-8.319v-.491c.1-4.971-3.886-9.055-8.857-9.155m30.862 0c-4.774-.148-8.763 3.593-8.909 8.318 0 .297 0 .543.051.837 0 5.365 3.641 8.812 9.155 8.812 5.414 0 8.812-3.544 8.812-9.106-.051-5.366-3.646-8.91-9.109-8.86m31.602 0c-5.02-.1-9.206 3.89-9.352 8.91a9.03 9.03 0 0 0 9.055 9.054h.1c4.528.788 9.106-3.592 9.402-8.858.243-4.874-4.186-9.106-9.205-9.106m43.363.737c-5.711-.245-8.567-2.164-9.992-7.581a55 55 0 0 1-1.624-10.582c-.395-6.596-.346-13.241-.789-19.837-1.033-15.651-12.352-21.114-28.794-18.41V76.92c2.607 0 4.626 0 6.645.049 3.495.048 6.153 1.379 6.496 5.268.345 3.543.345 7.136.69 10.73.692 7.139 1.083 14.372 2.314 21.41 1.085 5.809 5.07 10.14 10.04 13.684-8.71 5.857-11.27 14.223-11.714 23.626-.245 6.448-.394 12.944-.736 19.443-.297 5.905-2.362 7.824-8.318 7.972-1.674.05-3.298.198-5.169.297v13.93c3.495 0 6.694.196 9.892 0 9.942-.592 15.947-5.415 17.918-15.063a126 126 0 0 0 1.476-16.045c.343-4.923.297-9.894.788-14.766.737-7.63 4.232-10.78 11.862-11.27.739-.1 1.427-.246 2.118-.492v-15.604c-1.282-.149-2.17-.295-3.103-.346"})]}),DJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 123",...e,children:[y.jsx("path",{d:"M207.785 45.398c15.276 0 18.696 8.908 18.696 19.188v10.239H199.86v2.457c.102 5.693 2.15 7.945 9.399 7.945a50 50 0 0 0 14.58-2.252l1.863 9.01a51.2 51.2 0 0 1-17.528 3.03c-14.97 0-20.17-6.942-20.17-18.43V63.993c0-10.075 4.504-18.594 19.78-18.594m100.38-.02c14.97 0 19.392 5.283 19.392 17.222l-.04 31.432h-9.789l-.88-3.235a26.06 26.06 0 0 1-14.191 4.218c-8.703 0-12.43-5.98-12.43-14.19 0-9.686 4.218-13.413 13.904-13.413h11.447v-4.997c0-5.283-1.474-7.146-9.113-7.146-4.443.049-8.866.544-13.208 1.474l-1.474-9.112a62.4 62.4 0 0 1 16.382-2.253m79.35 0c16.341 0 20.744 9.01 20.744 18.798v12.041c.02 9.788-4.403 18.798-20.744 18.798-16.382 0-20.743-9.01-20.743-18.798v-12.04c0-9.789 4.402-18.799 20.743-18.799M198.017 28.832v10.874h-18.225v54.326h-12.286l-.041-54.326H149.26V28.832zm157.205-3.911c3.46-.012 6.905.45 10.239 1.372l-1.25 9.194a35 35 0 0 0-6.86-.778c-4.688 0-5.385 2.048-5.385 5.673v5.979h12.143l-.675 9.501h-11.447v38.17h-11.939v-38.17h-7.638v-9.501h7.638v-6.655c0-9.89 4.608-14.785 15.174-14.785M482.04 50.477a46.8 46.8 0 0 1 19.187-5.099c7.925 0 10.772 5.57 10.772 14.089v34.565h-11.939V60.757c0-2.54-1.085-3.81-3.809-3.81a31.6 31.6 0 0 0-12.43 4.096v32.99H471.8V60.756c0-2.54-1.085-3.81-3.808-3.81-4.376.52-8.601 1.913-12.43 4.096v32.99h-11.939V46.36h9.113l1.167 4.095a47.7 47.7 0 0 1 19.126-5.078 9.05 9.05 0 0 1 9.01 5.099m-224.863-5.099 1.229 10.976a94 94 0 0 0-12.676 6.942v30.716h-11.938V46.361h10.075l.778 5.283a53.5 53.5 0 0 1 12.532-6.266m29.201 0 1.188 10.976a94 94 0 0 0-12.635 6.942v30.716h-11.938V46.361h10.075l.778 5.283a53.5 53.5 0 0 1 12.532-6.266m151.43 0 1.188 10.976a94 94 0 0 0-12.634 6.942v30.716h-11.938V46.361h10.074l.779 5.283a53.4 53.4 0 0 1 12.532-6.266m-122.23 30.634h-8.804c-3.912 0-4.997 1.086-4.997 4.69s1.085 4.791 4.792 4.791a18.8 18.8 0 0 0 9.01-2.457zm71.938-20.457c-6.368 0-8.805 2.847-8.805 8.191v12.82c0 5.385 2.457 8.19 8.805 8.19s8.805-2.846 8.805-8.19V63.786c0-5.385-2.436-8.232-8.805-8.232m-179.628-.389c-5.877 0-7.925 3.133-7.925 7.638v2.417h15.174v-2.417c0-4.505-1.372-7.638-7.249-7.638"}),y.jsx("path",{fill:"#4040B2",d:"M74.538 79.821 108.12 60.45V21.645L74.538 41.057z"}),y.jsx("path",{fill:"#5C4EE5",d:"m37.269 21.645 33.583 19.412v38.764L37.269 60.43M0 38.784l33.583 19.392V19.392L0 0m37.269 103.473 33.583 19.392V84.08L37.269 64.688"})]});const MJe={"tech:docker":yJe,"tech:elasticsearch":vJe,"tech:electron":bJe,"tech:git":xJe,"tech:github":wJe,"tech:go":kJe,"tech:grafana":_Je,"tech:java":SJe,"tech:kubernetes":EJe,"tech:nginx":CJe,"tech:postgresql":$Je,"tech:prometheus":zJe,"tech:react":RJe,"tech:redis":TJe,"tech:spark":jJe,"tech:swagger":AJe,"tech:terraform":DJe};function NJe(e){const r=MJe[e.node.icon??""];return r?y.jsx(r,e):null}function PJe(e,r,n){let o=a=>e(a,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function Jre(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return PJe(e,r,n);throw Error("Wrong number of arguments")}function BJe(...e){return Jre(IJe,e)}function IJe(e,r){let n={};for(let[o,a]of Object.entries(e))n[o]=r(a,o,e);return n}function ene(...e){return Jre(R0,e)}function R0(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(r))return!1;if(Array.isArray(e))return OJe(e,r);if(e instanceof Map)return LJe(e,r);if(e instanceof Set)return FJe(e,r);if(e instanceof Date)return e.getTime()===r.getTime();if(e instanceof RegExp)return e.toString()===r.toString();if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let[n,o]of Object.entries(e))if(!(n in r)||!R0(o,r[n]))return!1;return!0}function OJe(e,r){if(e.length!==r.length)return!1;for(let[n,o]of e.entries())if(!R0(o,r[n]))return!1;return!0}function LJe(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e.entries())if(!r.has(n)||!R0(o,r.get(n)))return!1;return!0}function FJe(e,r){if(e.size!==r.size)return!1;let n=[...r];for(let o of e){let a=!1;for(let[i,l]of n.entries())if(R0(o,l)){a=!0,n.splice(i,1);break}if(!a)return!1}return!0}let gl=[],Fd=0;const m4=4;let g4=0;const tne=e=>{let r=[],n={get(){return n.lc||n.listen(()=>{})(),n.value},lc:0,listen(o){return n.lc=r.push(o),()=>{for(let i=Fd+m4;i(e.events=e.events||{},e.events[n+v4]||(e.events[n+v4]=o(a=>{e.events[n].reduceRight((i,l)=>(l(i),i),{shared:{},...a})})),e.events[n]=e.events[n]||[],e.events[n].push(r),()=>{let a=e.events[n],i=a.indexOf(r);a.splice(i,1),a.length||(delete e.events[n],e.events[n+v4](),delete e.events[n+v4])}),HJe=1e3,UJe=(e,r)=>qJe(e,n=>{let o=r(n);o&&e.events[y4].push(o)},VJe,n=>{let o=e.listen;e.listen=(...i)=>(!e.lc&&!e.active&&(e.active=!0,n()),o(...i));let a=e.off;return e.events[y4]=[],e.off=()=>{a(),setTimeout(()=>{if(e.active&&!e.lc){e.active=!1;for(let i of e.events[y4])i();e.events[y4]=[]}},HJe)},()=>{e.listen=o,e.off=a}}),WJe=(e,r,n)=>{Array.isArray(e)||(e=[e]);let o,a,i=()=>{if(a===g4)return;a=g4;let d=e.map(u=>u.get());if(!o||d.some((u,p)=>u!==o[p])){o=d;let u=r(...d);u&&u.then&&u.t?u.then(p=>{o===d&&l.set(p)}):(l.set(u),a=g4)}},l=tne(void 0),s=l.get;l.get=()=>(i(),s());let c=i;return UJe(l,()=>{let d=e.map(u=>u.listen(c));return i(),()=>{for(let u of d)u()}}),l};const rne=(e,r)=>WJe(e,r);function GJe(e,r,n){let o=new Set(r).add(void 0);return e.listen((a,i,l)=>{o.has(l)&&n(a,i,l)})}let CR=(e,r)=>n=>{e.current!==n&&(e.current=n,r())};function nne(e,{keys:r,deps:n=[e,r]}={}){let o=S.useRef();o.current=e.get();let a=S.useCallback(l=>(CR(o,l)(e.value),r?.length>0?GJe(e,r,CR(o,l)):e.listen(CR(o,l))),n),i=()=>o.current;return S.useSyncExternalStore(a,i,i)}const YJe=e=>{const r=rne(e,s=>Fu.create(s));function n(s){const c=e.get();if(ene(c,s))return;const d={...s,views:BJe(s.views,u=>{const p=c.views[u.id];return ene(p,u)?p:u})};e.set(d)}const o=rne(e,s=>Object.values(s.views));function a(){return nne(r)}function i(){return nne(o)}function l(s){const[c,d]=S.useState(e.value?.views[s]??null);return S.useEffect(()=>e.subscribe(u=>{d(u.views[s]??null)}),[s]),c}return{updateModel:n,$likec4model:r,useLikeC4Model:a,useLikeC4Views:i,useLikeC4View:l}},XJe=tne({_stage:"layouted",projectId:"architecture",project:{id:"architecture",title:"architecture"},specification:{tags:{internal:{color:"tomato"}},elements:{actor:{style:{shape:"person",color:"green"}},person:{style:{shape:"person",color:"green"}},component:{style:{}},container:{style:{opacity:20}},internalComponent:{style:{color:"muted",opacity:15}},schema:{style:{}},step:{style:{}},system:{style:{}},workflow:{style:{}},tool:{style:{}},process:{style:{}},repository:{style:{shape:"storage"}}},relationships:{},deployments:{cloud:{style:{}},environment:{style:{}},computeressource:{style:{}},paas:{style:{}},kubernetes:{style:{}},cluster:{style:{}},namespace:{style:{}}},customColors:{magenta:{elements:{fill:"#b100ff",stroke:"#9e00e4",hiContrast:"#ffffff",loContrast:"#fff2ff"},relationships:{line:"#c137fe",label:"#d064ff",labelBg:"#7a00b3"}}}},elements:{edfbuilder_workflow:{style:{},title:"EDFbuilder",kind:"workflow",id:"edfbuilder_workflow"},argocdworkflow:{style:{},title:"EDP ArgoCD Setup Workflow",kind:"workflow",id:"argocdworkflow"},edpworkflow:{style:{},title:"EDP Infrastructure Setup Workflow",kind:"workflow",id:"edpworkflow"},applicationspecification:{style:{},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},title:"application-specification",kind:"component",id:"applicationspecification"},forgejoRunner:{style:{},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},title:"Forgejo Runner",kind:"component",id:"forgejoRunner"},forgejoRunnerWorker:{style:{},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},title:"Forgejo Runner Worker",kind:"component",id:"forgejoRunnerWorker"},promtail:{style:{},description:{txt:"Log shipper agent for Loki"},title:"Promtail",kind:"component",id:"promtail"},edfbuilder:{style:{shape:"rectangle",icon:"tech:go"},technology:"Golang",description:{txt:"EDP Foundry Builder"},title:"edfbuilder",kind:"component",id:"edfbuilder"},edgeConnect:{style:{},description:{txt:"Provides an API to run applications on the edge"},title:"Edge Connect",kind:"component",id:"edgeConnect"},elasticsearch:{style:{opacity:20,icon:"tech:elasticsearch"},technology:"Elasticsearch",description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of +`.trim()}const Qre=S.forwardRef(({children:e,theme:r=Bre,injectFontCss:n=!0,styleNonce:o,colorScheme:a,keepAspectRatio:i=!1,...l},s)=>{const c=WQe(a),d=DG(),u=fJe(d,i),p=S.useRef(null),f=UQe(n,o),g=S.useCallback(()=>p.current??void 0,[p]),v=it(()=>{if(ri(o)){if(typeof o=="string")return o;if(typeof o=="function")return o()}return""});let w=ri(o)?v():void 0;return y.jsxs(y.Fragment,{children:[y.jsx("style",{type:"text/css",nonce:w,dangerouslySetInnerHTML:{__html:u}}),y.jsx(hJe,{ssr:!1,...l,styleSheets:f,"data-likec4-instance":d,children:y.jsx("div",{ref:$r(p,s),"data-mantine-color-scheme":c,className:"likec4-shadow-root",children:y.jsx(z9,{...a&&{forceColorScheme:a},defaultColorScheme:c,getRootElement:g,...!!w&&{getStyleNonce:v},cssVariablesSelector:".likec4-shadow-root",theme:r,children:y.jsx(wz,{children:e})})})})]})});Qre.displayName="ShadowRoot";const mJe=fe({cursor:"pointer","--mantine-cursor-pointer":"pointer","& :where(.likec4-diagram, .likec4-compound-node, .likec4-element-node)":{cursor:"pointer"}});function gJe({viewId:e,className:r,pannable:n=!1,zoomable:o=!1,keepAspectRatio:a=!0,colorScheme:i,injectFontCss:l=!0,controls:s=!1,background:c="transparent",browser:d=!0,showNavigationButtons:u=!1,enableNotations:p,enableFocusMode:f=!1,enableDynamicViewWalkthrough:g=!1,enableElementDetails:v=!1,enableRelationshipDetails:w=!1,enableRelationshipBrowser:x=w,reduceGraphics:k="auto",mantineTheme:C,styleNonce:_,style:$,reactFlowProps:R,renderNodes:T,children:A,...z}){const j=S.useRef(null),I=gNe(),[P,L]=S.useState("manual"),[H,M]=S.useState(null),V=it(Q=>{Q&&Q!==H&&L("manual"),M(Q)}),B=it(()=>{V(e)});if(!I)return y.jsx(kz,{children:"LikeC4Model not found. Make sure you provided LikeC4ModelProvider."});const F=I.findView(e)?.$layouted;if(!F)return y.jsx(XQe,{viewId:e});if(F._stage!=="layouted")return y.jsxs(kz,{children:['LikeC4 View "$',e,'" is not layouted. Make sure you have LikeC4ModelProvider with layouted model.']});const q=H?I.findView(H):null,G=P==="manual"?q?.$layouted:q?.$view,U=!!p&&(F.notation?.nodes?.length??0)>0,Y=(G?.notation?.nodes?.length??0)>0,Z=d!==!1,O=Pq(d)?{}:d,W=kee(F,z.dynamicViewVariant),K=j.current?{root:j.current}:void 0;return y.jsx(Qre,{ref:j,injectFontCss:l,theme:C,colorScheme:i,styleNonce:_,keepAspectRatio:a?W:!1,className:Ge("likec4-view",r),style:$,children:y.jsxs(wz,{children:[y.jsx(Lre,{view:F,pannable:n,zoomable:o,background:c,fitView:!0,fitViewPadding:y2.default,enableNotations:U,enableDynamicViewWalkthrough:g,showNavigationButtons:u,enableCompareWithLatest:!1,enableFocusMode:f,enableRelationshipDetails:w,enableElementDetails:v,enableRelationshipBrowser:x,enableElementTags:!1,controls:s,reduceGraphics:k,className:Ge("likec4-static-view",Z&&mJe),enableSearch:!1,...Z&&{onCanvasClick:B,onNodeClick:B},reactFlowProps:R,renderNodes:T,children:A,...z}),y.jsx(Cn,{...K,children:G&&y.jsxs(p0,{openDelay:0,onClose:()=>V(null),children:[y.jsx(Lre,{view:G,pannable:!0,zoomable:!0,background:"dots",onNavigateTo:V,showNavigationButtons:!0,enableDynamicViewWalkthrough:!0,enableFocusMode:!0,enableRelationshipBrowser:!0,enableElementDetails:!0,enableRelationshipDetails:!0,enableSearch:!0,enableElementTags:!0,enableCompareWithLatest:!0,controls:!0,fitView:!0,...z,fitViewPadding:y2.withControls,...O,enableNotations:Y&&(O.enableNotations??!0),renderNodes:T,onLayoutTypeChange:L}),y.jsx(hr,{pos:"absolute",top:"4",right:"4",zIndex:"999",children:y.jsx(lr,{variant:"default",color:"gray",onClick:Q=>{Q.stopPropagation(),V(null)},children:y.jsx(fp,{})})})]})})]})})}var yJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 131",...e,children:y.jsx("path",{fill:"#2396ED",d:"m140.598 25.715 3.892 2.818c6.77 5.46 10.662 11.625 11.508 18.67 7.277-1.409 16.584-.352 20.646 2.466l3.723 2.29-.677 1.41c-1.185 2.641-1.523 3.346-1.692 3.698-6.6 13.21-19.631 13.386-25.723 13.21-15.4 38.573-48.23 59.885-92.57 59.885-20.476 0-36.045-6.517-46.538-19.375C-.709 93.88-.709 71.862.475 64.817l.339-1.41h122.353c6.43 0 11.339-1.76 13.708-3.17-2.539-3.875-3.385-8.278-3.554-10.744-.508-7.045 1.185-14.443 4.57-19.727zm106.014 8.179q2.048 0 3.468 1.373t1.42 3.467v43.563q0 10.89-7.634 18.43-7.726 7.633-18.43 7.633-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633 9.262 0 16.336 5.724V38.734q0-2.094 1.373-3.467t3.467-1.373m36.49 22.34q10.705 0 18.43 7.632 3.818 3.818 5.702 8.424 1.885 4.608 1.932 10.007 0 10.89-7.633 18.43-7.725 7.633-18.43 7.633-10.798 0-18.43-7.633-7.634-7.633-7.634-18.43t7.633-18.43q7.633-7.634 18.43-7.633m57.574 0q9.82 0 16.988 6.33 1.675 1.488 1.675 3.676 0 2.095-1.373 3.49-1.373 1.397-3.467 1.397a4.93 4.93 0 0 1-3.165-1.117q-2.373-2.002-4.98-3.025t-5.678-1.024q-3.397 0-6.376 1.28a16.7 16.7 0 0 0-5.213 3.49 16.2 16.2 0 0 0-3.514 5.19q-1.28 2.977-1.28 6.376 0 3.397 1.28 6.376a16.2 16.2 0 0 0 3.514 5.19 16.7 16.7 0 0 0 5.213 3.49q2.979 1.28 6.376 1.28 3.072 0 5.678-1 2.607-1.002 4.933-3.003 1.304-.977 3.072-1.024 2.094 0 3.467 1.373t1.373 3.468q0 2.048-1.535 3.583-7.214 6.33-16.988 6.33-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633m29.044-22.34q2.001 0 3.42 1.42 1.42 1.418 1.42 3.467v36.302l27.832-18.105q1.163-.744 2.606-.744 1.024 0 1.908.372.885.372 1.536 1.047t1.047 1.56.396 1.86q0 2.607-1.862 3.864l-19.5 12.66 20.012 22.525q1.35 1.489 1.35 3.398 0 .977-.396 1.861a5.4 5.4 0 0 1-1.047 1.56q-.651.675-1.536 1.046a4.9 4.9 0 0 1-1.908.373q-1.955 0-3.258-1.257l-21.502-24.155-5.678 3.724v16.801q0 2.001-1.42 3.444t-3.42 1.443q-2.048 0-3.468-1.443t-1.42-3.444V38.781q0-2.048 1.42-3.468t3.468-1.42m71.489 22.34q10.704 0 18.43 7.632 3.816 3.77 5.725 8.401 1.908 4.63 1.908 10.03 0 2.094-1.42 3.467t-3.467 1.373h-36.86a15.9 15.9 0 0 0 2.327 4.677 16.3 16.3 0 0 0 3.606 3.63 16.7 16.7 0 0 0 4.562 2.351q2.49.838 5.189.838 3.072 0 5.631-.931 2.56-.93 4.748-2.793a5.1 5.1 0 0 1 3.21-1.21q2.095 0 3.468 1.373t1.373 3.468q0 2.047-1.396 3.49-7.214 6.33-17.034 6.33-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633m57.48 0q2.048 0 4.398.279 2.35.28 4.329 1 1.978.721 3.28 1.978 1.305 1.257 1.304 3.258 0 1.025-.396 1.909a5.4 5.4 0 0 1-1.047 1.559q-.651.675-1.536 1.047a4.9 4.9 0 0 1-1.908.372q-.885 0-2.048-.512-2.932-1.163-6.376-1.163-3.397 0-6.376 1.28-2.978 1.28-5.19 3.49-2.21 2.211-3.49 5.19-1.28 2.977-1.28 6.376v21.223q0 2.001-1.42 3.42t-3.42 1.42q-2.048 0-3.467-1.42t-1.42-3.42V61.074q0-2.002 1.42-3.42 1.42-1.42 3.467-1.42 2.001 0 3.42 1.42 1.42 1.418 1.42 3.42v.93a26.7 26.7 0 0 1 7.586-4.281q4.095-1.49 8.75-1.49M225.436 65.96q-3.444 0-6.423 1.303t-5.166 3.514-3.467 5.19-1.28 6.329 1.28 6.33 3.467 5.189 5.166 3.514q2.979 1.302 6.423 1.303 3.397 0 6.376-1.303a16.6 16.6 0 0 0 5.19-3.538 16.8 16.8 0 0 0 3.49-5.189q1.28-2.955 1.28-6.306t-1.28-6.307a16.8 16.8 0 0 0-3.49-5.189 16.6 16.6 0 0 0-5.19-3.537q-2.978-1.303-6.376-1.303m57.667 0q-3.444 0-6.423 1.303t-5.166 3.514-3.468 5.19-1.28 6.329 1.28 6.33q1.281 2.978 3.468 5.189t5.166 3.514 6.423 1.303q3.397 0 6.376-1.303a16.6 16.6 0 0 0 5.19-3.538 16.8 16.8 0 0 0 3.49-5.189q1.28-2.955 1.28-6.306t-1.28-6.307a16.8 16.8 0 0 0-3.49-5.189 16.6 16.6 0 0 0-5.19-3.537q-2.979-1.303-6.376-1.303m158.106 0q-2.653 0-5.166.837a17 17 0 0 0-4.608 2.35 16.1 16.1 0 0 0-3.63 3.631 15.1 15.1 0 0 0-2.28 4.677h31.368a15.6 15.6 0 0 0-2.35-4.677 16.8 16.8 0 0 0-3.63-3.63 16.7 16.7 0 0 0-4.561-2.35 16 16 0 0 0-5.143-.838M32.629 42.27v17.614H14.014V42.272zm22 0v17.614H36.014V42.272zm22 0v17.614H58.013V42.272zm22 0v17.614H80.013V42.272zm22 0v17.614h-18.616V42.272zm-22-21.135v17.613H80.013V21.136zm-22 0v17.613H58.013V21.136zm-22 0v17.613H36.014V21.136zM98.629 0v17.613H80.013V0z"})}),vJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 288",...e,children:[y.jsx("path",{fill:"#343741",d:"M0 143.82c0 12.44 1.744 24.441 4.71 35.956h175.067c19.856 0 35.955-16.1 35.955-35.956 0-19.865-16.1-35.955-35.955-35.955H4.71C1.744 119.371 0 131.38 0 143.82"}),y.jsx("path",{fill:"#FEC514",d:"M242.013 68.863c5.025-4.629 9.7-9.6 13.987-14.93C229.636 21.079 189.213 0 143.82 0 87 0 38.101 33.052 14.775 80.9h196.559c11.38 0 22.319-4.324 30.678-12.037"}),y.jsx("path",{fill:"#00BFB3",d:"M211.334 206.742H14.774c23.336 47.839 72.226 80.9 129.045 80.9 45.393 0 85.816-21.088 112.18-53.933a136.6 136.6 0 0 0-13.987-14.94c-8.36-7.721-19.299-12.027-30.678-12.027"})]}),bJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 278",...e,children:y.jsx("path",{fill:"#47848F",d:"M90.317 59.645c-36.264-6.605-64.936.308-76.364 20.101-8.527 14.77-6.09 34.353 5.912 55.285a3.719 3.719 0 1 0 6.452-3.699c-10.811-18.856-12.915-35.757-5.923-47.867 9.493-16.442 35.068-22.608 68.59-16.503a3.719 3.719 0 1 0 1.333-7.317m53.63-33.684c-2.959 5.723-8.932 9.635-15.819 9.635-9.83 0-17.798-7.969-17.798-17.798C110.33 7.968 118.3 0 128.128 0c9.83 0 17.798 7.968 17.798 17.798q0 .386-.016.767c29.461 15.237 49.933 67.197 49.933 127.226 0 24.69-3.452 48.382-9.879 68.92a3.719 3.719 0 1 1-7.097-2.221c6.196-19.802 9.539-42.747 9.539-66.699 0-56.524-18.789-105.163-44.458-119.83M16.469 193.319a18 18 0 0 1 1.33-.05c9.83 0 17.798 7.97 17.798 17.799s-7.969 17.797-17.798 17.797C7.968 228.865 0 220.897 0 211.068c0-6.692 3.693-12.52 9.151-15.56-2.68-33.265 32.283-77.855 85.12-108.36 21.946-12.671 44.798-21.665 66.267-26.265a3.719 3.719 0 0 1 1.558 7.273c-20.69 4.433-42.817 13.141-64.107 25.433-49.759 28.728-82.66 70.134-81.52 99.73m206.26 26.546a17.7 17.7 0 0 1-2.324-8.797c0-9.83 7.969-17.798 17.798-17.798 9.83 0 17.798 7.968 17.798 17.798s-7.968 17.797-17.798 17.797a17.7 17.7 0 0 1-10.38-3.338c-28.392 16.703-82.625 8.184-133.66-21.282-21.726-12.543-40.776-27.657-55.439-43.77a3.719 3.719 0 0 1 5.5-5.006c14.134 15.532 32.581 30.167 53.657 42.335 48.165 27.808 98.886 36.084 124.847 22.061m-1.166-63.914a3.719 3.719 0 0 1-5.676-4.805c21.946-25.926 29.34-51.086 19.867-67.492-6.876-11.91-22.159-18.52-43.362-18.796a3.719 3.719 0 1 1 .097-7.437c23.575.307 41.315 7.98 49.706 22.514 11.404 19.752 3.113 47.965-20.632 76.016M72.564 221.49a3.719 3.719 0 0 1 7.001-2.507c11.476 32.045 29.591 51.082 48.563 51.082 13.645 0 26.91-9.774 37.71-27.74a3.719 3.719 0 0 1 6.375 3.832c-12.018 19.99-27.428 31.345-44.085 31.345-22.839 0-43.15-21.344-55.564-56.011m175.999-10.423c0-5.722-4.639-10.361-10.36-10.361-5.723 0-10.362 4.639-10.362 10.36 0 5.723 4.64 10.361 10.361 10.361s10.36-4.638 10.36-10.36m-230.765 10.36c5.722 0 10.36-4.638 10.36-10.36s-4.638-10.361-10.36-10.361-10.36 4.639-10.36 10.36c0 5.723 4.638 10.361 10.36 10.361m110.33-193.27c5.722 0 10.36-4.638 10.36-10.36s-4.638-10.36-10.36-10.36-10.36 4.638-10.36 10.36 4.638 10.36 10.36 10.36m2.718 130.22c-6.951 1.502-13.8-2.916-15.305-9.868-1.499-6.952 2.916-13.8 9.868-15.305 6.951-1.502 13.8 2.915 15.305 9.867 1.502 6.952-2.916 13.8-9.868 15.305"})}),xJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 108",...e,children:[y.jsx("path",{fill:"#2F2707",d:"M152.984 37.214c-5.597 0-9.765 2.748-9.765 9.362 0 4.983 2.747 8.443 9.463 8.443 5.693 0 9.56-3.355 9.56-8.65 0-6-3.46-9.155-9.258-9.155m-11.19 46.701c-1.325 1.625-2.645 3.353-2.645 5.39 0 4.067 5.186 5.291 12.31 5.291 5.9 0 13.938-.414 13.938-5.9 0-3.261-3.867-3.462-8.753-3.768zm30.113-46.394c1.828 2.34 3.764 5.597 3.764 10.276 0 11.292-8.851 17.904-21.667 17.904-3.259 0-6.209-.406-8.038-.914l-3.359 5.39 9.969.61c17.602 1.122 27.975 1.632 27.975 15.157 0 11.702-10.272 18.311-27.975 18.311-18.413 0-25.433-4.68-25.433-12.716 0-4.578 2.035-7.015 5.596-10.378-3.358-1.419-4.476-3.961-4.476-6.71 0-2.24 1.118-4.273 2.952-6.208 1.83-1.93 3.864-3.865 6.306-6.103-4.984-2.442-8.75-7.732-8.75-15.262 0-11.697 7.733-19.731 23.295-19.731 4.376 0 7.022.402 9.362 1.017h19.84v8.644zM199.166 19.034c-5.8 0-9.157-3.36-9.157-9.161 0-5.793 3.356-8.95 9.157-8.95 5.9 0 9.258 3.157 9.258 8.95 0 5.801-3.357 9.161-9.258 9.161M186.04 80.171v-8.033l5.19-.71c1.425-.205 1.627-.509 1.627-2.038V39.48c0-1.116-.304-1.832-1.325-2.134l-5.492-1.935 1.118-8.238h21.061V69.39c0 1.63.098 1.833 1.629 2.039l5.188.71v8.032zM255.267 76.227c-4.376 2.135-10.785 4.068-16.586 4.068-12.106 0-16.682-4.878-16.682-16.38V37.264c0-.61 0-1.017-.817-1.017h-7.12V27.19c8.955-1.02 12.513-5.496 13.632-16.585h9.666v14.45c0 .71 0 1.017.815 1.017h14.343v10.173H237.36v24.313c0 6.002 1.426 8.34 6.917 8.34 2.852 0 5.799-.71 8.24-1.626z"}),y.jsx("path",{fill:"#DE4C36",d:"M104.529 49.53 58.013 3.017a6.86 6.86 0 0 0-9.703 0l-9.659 9.66 12.253 12.252a8.15 8.15 0 0 1 8.383 1.953 8.16 8.16 0 0 1 1.936 8.434L73.03 47.125c2.857-.984 6.154-.347 8.435 1.938a8.16 8.16 0 0 1 0 11.545 8.164 8.164 0 0 1-13.324-8.88L57.129 40.716l-.001 28.98a8.3 8.3 0 0 1 2.159 1.544 8.164 8.164 0 0 1 0 11.547c-3.19 3.19-8.36 3.19-11.545 0a8.164 8.164 0 0 1 2.672-13.328v-29.25a8.1 8.1 0 0 1-2.672-1.782c-2.416-2.413-2.997-5.958-1.759-8.925l-12.078-12.08L2.011 49.314a6.863 6.863 0 0 0 0 9.706l46.516 46.514a6.86 6.86 0 0 0 9.703 0l46.299-46.297a6.866 6.866 0 0 0 0-9.707"})]}),wJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 139",...e,children:y.jsx("path",{fill:"#11110F",d:"M98.696 59.312h-43.06c-1.111 0-2.013.903-2.013 2.014v21.053c0 1.111.902 2.015 2.012 2.015h16.799v26.157s-3.772 1.286-14.2 1.286c-12.303 0-29.49-4.496-29.49-42.288 0-37.8 17.897-42.773 34.698-42.773 14.543 0 20.809 2.56 24.795 3.794 1.253.384 2.412-.863 2.412-1.975l4.803-20.342c0-.52-.176-1.146-.769-1.571C93.064 5.527 83.187 0 58.233 0 29.488 0 0 12.23 0 71.023c0 58.795 33.76 67.556 62.21 67.556 23.555 0 37.844-10.066 37.844-10.066.59-.325.653-1.148.653-1.526V61.326c0-1.11-.9-2.014-2.01-2.014m221.8-51.953c0-1.12-.888-2.024-1.999-2.024h-24.246a2.016 2.016 0 0 0-2.008 2.024l.006 46.856h-37.792V7.36c0-1.12-.892-2.024-2.001-2.024H228.21a2.014 2.014 0 0 0-2.003 2.024v126.872c0 1.12.9 2.03 2.003 2.03h24.245c1.109 0 2-.91 2-2.03V79.964h37.793l-.066 54.267c0 1.12.9 2.03 2.008 2.03h24.304c1.11 0 1.998-.91 2-2.03zM144.37 24.322c0-8.73-7-15.786-15.635-15.786-8.627 0-15.632 7.055-15.632 15.786 0 8.72 7.005 15.795 15.632 15.795 8.635 0 15.635-7.075 15.635-15.795m-1.924 83.212V48.97c0-1.112-.897-2.021-2.006-2.021h-24.169c-1.109 0-2.1 1.144-2.1 2.256v83.905c0 2.466 1.536 3.199 3.525 3.199h21.775c2.39 0 2.975-1.173 2.975-3.239zM413.162 46.95h-24.06c-1.104 0-2.002.909-2.002 2.028v62.21s-6.112 4.472-14.788 4.472-10.977-3.937-10.977-12.431v-54.25c0-1.12-.897-2.03-2.001-2.03h-24.419c-1.102 0-2.005.91-2.005 2.03v58.358c0 25.23 14.063 31.403 33.408 31.403 15.87 0 28.665-8.767 28.665-8.767s.61 4.62.885 5.168c.276.547.994 1.098 1.77 1.098l15.535-.068c1.102 0 2.005-.911 2.005-2.025l-.008-85.168c0-1.119-.9-2.028-2.008-2.028m55.435 68.758c-8.345-.254-14.006-4.041-14.006-4.041V71.488s5.585-3.423 12.436-4.035c8.664-.776 17.013 1.841 17.013 22.51 0 21.795-3.768 26.096-15.443 25.744m9.49-71.483c-13.665 0-22.96 6.097-22.96 6.097V7.359a2.01 2.01 0 0 0-2-2.024h-24.315a2.013 2.013 0 0 0-2.004 2.024v126.872c0 1.12.898 2.03 2.007 2.03h16.87c.76 0 1.335-.39 1.76-1.077.419-.682 1.024-5.85 1.024-5.85s9.942 9.422 28.763 9.422c22.096 0 34.768-11.208 34.768-50.315s-20.238-44.217-33.913-44.217M212.229 46.73h-18.187l-.028-24.027c0-.909-.468-1.364-1.52-1.364H167.71c-.964 0-1.481.424-1.481 1.35v24.83s-12.42 2.998-13.26 3.24a2.01 2.01 0 0 0-1.452 1.934v15.603c0 1.122.896 2.027 2.005 2.027h12.707v37.536c0 27.88 19.556 30.619 32.753 30.619 6.03 0 13.243-1.937 14.434-2.376.72-.265 1.138-1.01 1.138-1.82l.02-17.164c0-1.119-.945-2.025-2.01-2.025-1.06 0-3.77.431-6.562.431-8.933 0-11.96-4.154-11.96-9.53l-.001-35.67h18.188a2.014 2.014 0 0 0 2.006-2.028V48.753c0-1.12-.897-2.022-2.006-2.022"})}),kJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 192",...e,children:y.jsx("path",{fill:"#00ACD7",d:"m292.533 13.295 1.124.75c13.212 8.725 22.685 20.691 28.917 35.15 1.496 2.243.499 3.49-2.493 4.237l-5.063 1.296c-11.447 2.949-20.53 5.429-31.827 8.378l-6.443 1.678c-2.32.574-2.96.333-5.428-2.477l-.348-.399c-3.519-3.988-6.155-6.652-10.817-9.03l-.899-.443c-15.705-7.727-30.911-5.484-45.12 3.74-16.952 10.968-25.677 27.172-25.428 47.364.25 19.942 13.96 36.395 33.654 39.137 16.951 2.244 31.16-3.739 42.378-16.452 2.244-2.743 4.238-5.734 6.73-9.224H223.36c-5.235 0-6.481-3.24-4.736-7.478l.864-2.035c3.204-7.454 8.173-18.168 11.4-24.294l.704-1.319c.862-1.494 2.612-3.513 5.977-3.513h80.224c3.603-11.415 9.449-22.201 17.246-32.407 18.198-23.931 40.135-36.396 69.8-41.63 25.427-4.488 49.359-1.995 71.046 12.713 19.694 13.461 31.909 31.66 35.15 55.59 4.237 33.654-5.485 61.075-28.668 84.508-16.453 16.702-36.645 27.172-59.829 31.908-6.73 1.247-13.461 1.496-19.942 2.244-22.685-.499-43.376-6.98-60.826-21.937-12.273-10.61-20.727-23.648-24.928-38.828a105 105 0 0 1-10.47 16.89c-17.949 23.683-41.381 38.39-71.046 42.38-24.43 3.24-47.115-1.497-67.058-16.454-18.447-13.96-28.917-32.407-31.66-55.34-3.24-27.173 4.737-51.603 21.19-73.041 17.7-23.184 41.132-37.891 69.8-43.126 22.999-4.16 45.037-1.595 64.936 11.464M411.12 49.017l-.798.178c-23.183 5.235-38.14 19.942-43.624 43.375-4.488 19.444 4.985 39.138 22.934 47.115 13.71 5.983 27.421 5.235 40.633-1.496 19.694-10.22 30.413-26.175 31.66-47.613-.25-3.24-.25-5.734-.749-8.227-4.436-24.401-26.664-38.324-50.056-33.332M116.416 94.564c.997 0 1.496.748 1.496 1.745l-.499 5.983c0 .997-.997 1.745-1.745 1.745l-54.344-.249c-.997 0-1.246-.748-.748-1.496l3.49-6.232c.499-.748 1.496-1.496 2.493-1.496zM121.9 71.63c.997 0 1.496.748 1.247 1.496l-1.995 5.983c-.249.997-1.246 1.495-2.243 1.495l-117.912.25c-.997 0-1.246-.499-.748-1.247l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247zm12.963-22.934c.997 0 1.246.748.748 1.496l-4.238 6.481c-.499.748-1.745 1.496-2.493 1.496l-90.24-.25c-.998 0-1.247-.498-.749-1.246l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247z"})}),_Je=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 279",...e,children:[y.jsx("defs",{children:y.jsxs("linearGradient",{id:"Grafana_svg__a",x1:"49.995%",x2:"49.995%",y1:"122.45%",y2:"31.139%",children:[y.jsx("stop",{offset:"0%",stopColor:"#FFF100"}),y.jsx("stop",{offset:"100%",stopColor:"#F05A28"})]})}),y.jsx("path",{fill:"url(#Grafana_svg__a)",d:"M255.59 122.775c-.46-4.675-1.226-10.04-2.759-16.017a98 98 0 0 0-7.204-19.16 106.7 106.7 0 0 0-13.412-20.54c-2.222-2.681-4.675-5.287-7.28-7.816 3.908-15.558-4.752-29.046-4.752-29.046-14.945-.92-24.448 4.675-27.973 7.204-.613-.23-1.15-.537-1.763-.767-2.529-.996-5.135-1.992-7.894-2.835a130 130 0 0 0-8.277-2.3c-2.835-.69-5.67-1.226-8.583-1.686-.537-.076-.996-.153-1.533-.23C157.646 8.738 138.946 0 138.946 0c-20.922 13.258-24.831 31.805-24.831 31.805s-.077.383-.23 1.073c-1.15.307-2.299.69-3.449.996-1.609.46-3.218 1.073-4.751 1.686a123 123 0 0 0-4.752 1.916 117 117 0 0 0-9.35 4.599c-2.989 1.686-5.9 3.525-8.737 5.441l-.766-.307c-28.97-11.036-54.643 2.223-54.643 2.223-2.376 30.809 11.572 50.198 14.331 53.724-.69 1.916-1.303 3.832-1.916 5.748-2.146 6.974-3.755 14.101-4.751 21.535-.154 1.073-.307 2.146-.384 3.219C7.894 146.916 0 173.97 0 173.97c22.302 25.674 48.359 27.283 48.359 27.283l.077-.076c3.295 5.9 7.127 11.495 11.419 16.783a112 112 0 0 0 5.671 6.362c-8.124 23.298 1.15 42.61 1.15 42.61 24.83.92 41.155-10.882 44.603-13.564a85 85 0 0 0 7.511 2.222 109.7 109.7 0 0 0 23.298 3.449c1.916.076 3.909.153 5.825.076h2.759l1.226-.076v.076c11.726 16.708 32.265 19.084 32.265 19.084 14.638-15.405 15.48-30.733 15.48-34.028v-1.38c3.066-2.145 5.979-4.445 8.738-6.974 5.824-5.288 10.959-11.342 15.25-17.857l1.15-1.839c16.554.92 28.28-10.27 28.28-10.27-2.759-17.243-12.569-25.673-14.638-27.283 0 0-.077-.076-.23-.153s-.153-.153-.153-.153c-.077-.077-.23-.154-.383-.23.076-1.073.153-2.07.23-3.142.153-1.84.153-3.756.153-5.595v-2.913l-.077-1.149-.076-1.533c0-.536-.077-.996-.154-1.456-.076-.46-.076-.996-.153-1.456l-.153-1.456-.23-1.456c-.307-1.916-.613-3.756-1.073-5.672-1.763-7.433-4.675-14.484-8.43-20.845a70.4 70.4 0 0 0-14.025-16.707c-5.365-4.752-11.42-8.584-17.704-11.42-6.36-2.835-12.952-4.675-19.543-5.518-3.295-.46-6.59-.613-9.886-.536h-2.453l-1.226.077c-.46 0-.92.076-1.303.076a52 52 0 0 0-4.981.69c-6.591 1.226-12.799 3.602-18.24 6.897s-10.193 7.358-14.025 11.956a54.7 54.7 0 0 0-8.89 15.021 52.9 52.9 0 0 0-3.525 16.094c-.077 1.303-.077 2.683-.077 3.986v.996l.077 1.073c.076.613.076 1.303.153 1.916.23 2.682.766 5.288 1.456 7.74 1.456 4.982 3.755 9.503 6.59 13.335s6.285 6.975 9.887 9.504c3.602 2.452 7.51 4.215 11.343 5.364 3.832 1.15 7.664 1.61 11.266 1.61h1.993c.23 0 .46 0 .689-.077.383 0 .766-.077 1.15-.077.076 0 .23 0 .306-.076l.383-.077c.23 0 .46-.076.69-.076.46-.077.843-.154 1.303-.23s.843-.154 1.226-.307c.843-.153 1.61-.46 2.376-.69 1.533-.536 3.066-1.15 4.368-1.839 1.38-.69 2.606-1.533 3.832-2.3.307-.23.69-.459.997-.766 1.226-.996 1.456-2.835.46-4.061-.844-1.073-2.376-1.38-3.603-.69l-.92.46a25 25 0 0 1-3.295 1.38c-1.15.382-2.375.689-3.602.919-.613.076-1.226.153-1.916.23-.306 0-.613.076-.996.076h-1.84c-.383 0-.766 0-1.149-.076h-.46c-.153 0-.383 0-.536-.077-.383-.077-.69-.077-1.073-.153-2.836-.383-5.671-1.226-8.354-2.453a29.3 29.3 0 0 1-7.74-5.058c-2.376-2.146-4.445-4.675-6.055-7.587s-2.759-6.131-3.295-9.503c-.23-1.686-.383-3.449-.307-5.135 0-.46.077-.92.077-1.38v-.613c0-.23.077-.46.077-.69.076-.919.23-1.839.383-2.758 1.303-7.358 4.981-14.562 10.653-20.003 1.456-1.38 2.988-2.606 4.598-3.755a31.7 31.7 0 0 1 5.211-2.99 36 36 0 0 1 5.672-2.068c1.915-.537 3.908-.844 5.977-1.073.997-.077 1.993-.154 3.066-.154h2.376l.843.077c2.222.153 4.368.46 6.514.996 4.292.92 8.507 2.53 12.415 4.675 7.818 4.369 14.485 11.113 18.547 19.237 2.07 4.061 3.525 8.43 4.215 12.951.153 1.15.307 2.3.383 3.45l.077.842.077.843v3.296c0 .536-.077 1.456-.077 1.992-.077 1.227-.23 2.53-.383 3.756s-.383 2.452-.613 3.678a50 50 0 0 1-.843 3.602 64 64 0 0 1-2.3 7.128 62.4 62.4 0 0 1-7.204 13.105c-5.9 8.124-13.948 14.715-23.144 18.93-4.599 2.069-9.427 3.602-14.408 4.368-2.453.46-4.982.69-7.511.766h-3.832a36 36 0 0 1-4.062-.23c-5.365-.383-10.653-1.379-15.864-2.835-5.135-1.456-10.116-3.525-14.868-5.978-9.427-5.058-17.933-11.956-24.524-20.31a79 79 0 0 1-8.584-13.334 79 79 0 0 1-5.671-14.638c-1.38-5.058-2.223-10.193-2.606-15.405l-.077-.996v-6.821c.077-2.529.307-5.211.614-7.817.306-2.606.766-5.288 1.302-7.894.537-2.605 1.15-5.211 1.916-7.817a103 103 0 0 1 5.442-14.791c4.368-9.35 10.04-17.704 16.86-24.371 1.686-1.686 3.449-3.22 5.288-4.752a78 78 0 0 1 5.748-4.138c1.916-1.303 3.985-2.453 6.055-3.526a40 40 0 0 1 3.142-1.533l3.219-1.379c2.146-.92 4.368-1.686 6.667-2.376.537-.153 1.15-.306 1.686-.536.537-.154 1.15-.307 1.686-.46 1.15-.307 2.3-.613 3.45-.843.536-.153 1.149-.23 1.762-.383.613-.154 1.15-.23 1.763-.384.613-.076 1.15-.23 1.762-.306l.843-.153.92-.154c.613-.076 1.15-.153 1.763-.23.69-.076 1.302-.153 1.992-.23.537-.076 1.456-.153 1.993-.23.383-.076.843-.076 1.226-.153l.843-.076.383-.077h.46c.69-.077 1.303-.077 1.993-.153l.996-.077h.767c.536 0 1.149-.076 1.685-.076a99 99 0 0 1 6.745 0c4.445.153 8.813.69 13.028 1.456 8.507 1.61 16.478 4.291 23.758 7.893 7.28 3.526 13.719 7.894 19.39 12.646.383.306.69.613 1.073.92.306.306.69.613.996.92.69.612 1.303 1.225 1.993 1.838.69.614 1.303 1.227 1.916 1.84a44 44 0 0 1 1.839 1.916c2.376 2.529 4.598 5.058 6.59 7.664a99 99 0 0 1 9.734 15.25l.46.92.46.92c.306.613.613 1.226.843 1.84.306.613.536 1.149.843 1.762.23.613.536 1.15.766 1.763.92 2.299 1.84 4.521 2.53 6.59 1.149 3.373 1.992 6.362 2.682 8.967a2.043 2.043 0 0 0 2.299 1.61c1.15-.077 1.992-.996 1.992-2.146.077-2.759 0-6.054-.383-9.81"})]}),SJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 346",...e,children:[y.jsx("path",{fill:"#5382A1",d:"M82.554 267.473s-13.198 7.675 9.393 10.272c27.369 3.122 41.356 2.675 71.517-3.034 0 0 7.93 4.972 19.003 9.279-67.611 28.977-153.019-1.679-99.913-16.517M74.292 229.659s-14.803 10.958 7.805 13.296c29.236 3.016 52.324 3.263 92.276-4.43 0 0 5.526 5.602 14.215 8.666-81.747 23.904-172.798 1.885-114.296-17.532"}),y.jsx("path",{fill:"#E76F00",d:"M143.942 165.515c16.66 19.18-4.377 36.44-4.377 36.44s42.301-21.837 22.874-49.183c-18.144-25.5-32.059-38.172 43.268-81.858 0 0-118.238 29.53-61.765 94.6"}),y.jsx("path",{fill:"#5382A1",d:"M233.364 295.442s9.767 8.047-10.757 14.273c-39.026 11.823-162.432 15.393-196.714.471-12.323-5.36 10.787-12.8 18.056-14.362 7.581-1.644 11.914-1.337 11.914-1.337-13.705-9.655-88.583 18.957-38.034 27.15 137.853 22.356 251.292-10.066 215.535-26.195M88.9 190.48s-62.771 14.91-22.228 20.323c17.118 2.292 51.243 1.774 83.03-.89 25.978-2.19 52.063-6.85 52.063-6.85s-9.16 3.923-15.787 8.448c-63.744 16.765-186.886 8.966-151.435-8.183 29.981-14.492 54.358-12.848 54.358-12.848M201.506 253.422c64.8-33.672 34.839-66.03 13.927-61.67-5.126 1.066-7.411 1.99-7.411 1.99s1.903-2.98 5.537-4.27c41.37-14.545 73.187 42.897-13.355 65.647 0 .001 1.003-.895 1.302-1.697"}),y.jsx("path",{fill:"#E76F00",d:"M162.439.371s35.887 35.9-34.037 91.101c-56.071 44.282-12.786 69.53-.023 98.377-32.73-29.53-56.75-55.526-40.635-79.72C111.395 74.612 176.918 57.393 162.439.37"}),y.jsx("path",{fill:"#5382A1",d:"M95.268 344.665c62.199 3.982 157.712-2.209 159.974-31.64 0 0-4.348 11.158-51.404 20.018-53.088 9.99-118.564 8.824-157.399 2.421.001 0 7.95 6.58 48.83 9.201"})]}),EJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 249",...e,children:[y.jsx("path",{fill:"#326DE6",d:"M82.085 244.934c-5.946 0-11.561-2.642-15.36-7.432L8.92 165.657c-3.799-4.79-5.285-10.9-3.799-16.847l20.645-89.682c1.321-5.946 5.285-10.736 10.736-13.378l83.571-39.97c2.643-1.32 5.616-1.981 8.589-1.981s5.945.66 8.588 1.982l83.572 39.804c5.45 2.642 9.414 7.432 10.735 13.378l20.645 89.682c1.322 5.946 0 12.057-3.798 16.847l-57.807 71.845c-3.799 4.624-9.414 7.432-15.36 7.432z"}),y.jsx("path",{fill:"#FFF",d:"M128.495 7.928c2.313 0 4.625.495 6.772 1.486l83.572 39.804c4.294 2.147 7.597 6.111 8.588 10.736l20.645 89.682c1.156 4.79 0 9.745-3.138 13.543l-57.806 71.846c-2.973 3.798-7.598 5.945-12.387 5.945H82.085c-4.79 0-9.414-2.147-12.387-5.945l-57.806-71.846c-2.973-3.798-4.13-8.753-3.138-13.543l20.645-89.682c1.156-4.79 4.294-8.754 8.588-10.736L121.56 9.25c2.147-.826 4.624-1.321 6.936-1.321m0-7.763c-3.468 0-6.936.826-10.24 2.312l-83.571 39.97c-6.607 3.138-11.231 8.918-12.883 16.02L1.156 148.15c-1.651 7.102 0 14.369 4.625 20.15l57.806 71.845c4.46 5.615 11.231 8.753 18.333 8.753h92.655c7.102 0 13.874-3.138 18.333-8.753l57.807-71.846c4.624-5.615 6.276-13.047 4.624-20.15l-20.645-89.682c-1.651-7.102-6.276-12.882-12.882-16.02L138.57 2.476C135.432.991 131.964.165 128.495.165"}),y.jsx("path",{fill:"#FFF",d:"M212.232 142.534q-.248 0 0 0h-.165c-.165 0-.33 0-.33-.165-.33 0-.66-.165-.991-.165-1.156-.165-2.147-.33-3.138-.33-.496 0-.991 0-1.652-.166h-.165c-3.468-.33-6.276-.66-8.919-1.486-1.156-.496-1.486-1.156-1.817-1.817 0-.165-.165-.165-.165-.33l-2.147-.66a65.3 65.3 0 0 0-1.156-23.289 68 68 0 0 0-9.249-21.636l1.652-1.486v-.33c0-.826.165-1.652.825-2.478 1.982-1.817 4.46-3.303 7.433-5.12.495-.33.99-.495 1.486-.826.991-.495 1.817-.99 2.808-1.651.165-.165.495-.33.826-.66.165-.166.33-.166.33-.331 2.312-1.982 2.808-5.285 1.156-7.433-.826-1.156-2.312-1.816-3.799-1.816-1.32 0-2.477.495-3.633 1.321l-.33.33c-.33.165-.496.496-.826.661-.826.826-1.487 1.486-2.147 2.312-.33.33-.66.826-1.156 1.156-2.313 2.478-4.46 4.46-6.607 5.946q-.742.495-1.486.496c-.33 0-.661 0-.991-.166h-.33l-1.983 1.322c-2.147-2.312-4.459-4.294-6.771-6.276a65.96 65.96 0 0 0-34.519-13.709l-.165-2.147-.33-.33c-.496-.496-1.156-.991-1.322-2.147-.165-2.643.166-5.616.496-8.919v-.165c0-.496.165-1.156.33-1.652.165-.99.33-1.982.496-3.138v-1.486c0-2.973-2.313-5.45-5.12-5.45-1.322 0-2.643.66-3.634 1.651-.99.991-1.486 2.312-1.486 3.799v1.321c0 1.156.165 2.147.495 3.138.165.496.165.991.33 1.652v.165c.33 3.303.826 6.276.496 8.919-.165 1.156-.826 1.651-1.321 2.147l-.33.33-.166 2.147c-2.973.33-5.946.66-8.919 1.321-12.717 2.808-23.948 9.25-32.701 18.498l-1.652-1.156h-.33c-.33 0-.661.165-.991.165q-.743 0-1.487-.495c-2.147-1.486-4.294-3.634-6.606-6.111-.33-.33-.66-.826-1.156-1.156-.661-.826-1.322-1.487-2.148-2.312-.165-.166-.495-.33-.825-.661-.165-.165-.33-.165-.33-.33a5.77 5.77 0 0 0-3.634-1.322c-1.487 0-2.973.661-3.799 1.817-1.652 2.147-1.156 5.45 1.156 7.432.165 0 .165.166.33.166.33.165.496.495.826.66.991.66 1.817 1.156 2.808 1.652.496.165.991.495 1.487.826 2.972 1.816 5.45 3.303 7.432 5.12.826.825.826 1.651.826 2.477v.33l1.651 1.487c-.33.495-.66.826-.826 1.321-8.258 13.048-11.396 28.408-9.249 43.603l-2.147.66c0 .166-.165.166-.165.33-.33.661-.826 1.322-1.817 1.817-2.477.826-5.45 1.157-8.918 1.487h-.166c-.495 0-1.156 0-1.651.165-.991 0-1.982.165-3.138.33-.33 0-.66.166-.991.166-.165 0-.33 0-.496.165-2.973.66-4.79 3.468-4.294 6.11.496 2.313 2.643 3.8 5.285 3.8.496 0 .826 0 1.322-.166.165 0 .33 0 .33-.165.33 0 .66-.165.99-.165 1.157-.33 1.983-.66 2.974-1.156.495-.165.99-.496 1.486-.66h.165c3.138-1.157 5.946-2.148 8.589-2.478h.33c.991 0 1.652.495 2.147.826.165 0 .165.165.33.165l2.313-.33c3.964 12.221 11.561 23.122 21.636 31.05 2.312 1.816 4.624 3.303 7.102 4.79l-.991 2.146c0 .166.165.166.165.33.33.661.66 1.487.33 2.643-.99 2.478-2.477 4.955-4.294 7.763v.165c-.33.496-.66.826-.99 1.321-.661.826-1.157 1.652-1.818 2.643-.165.165-.33.495-.495.826 0 .165-.165.33-.165.33-1.321 2.808-.33 5.946 2.147 7.102q.99.496 1.982.496c1.982 0 3.964-1.322 4.955-3.139 0-.165.165-.33.165-.33.165-.33.33-.66.495-.826.496-1.156.661-1.982.991-2.973l.496-1.486c1.156-3.303 1.982-5.946 3.468-8.258.66-.991 1.487-1.156 2.147-1.487.165 0 .165 0 .33-.165l1.157-2.147c7.267 2.808 15.195 4.294 23.122 4.294 4.79 0 9.745-.495 14.37-1.651a73 73 0 0 0 8.588-2.478l.99 1.817c.166 0 .166 0 .331.165.826.165 1.486.496 2.147 1.487 1.321 2.312 2.312 5.12 3.468 8.258v.165l.496 1.486c.33.991.495 1.982.99 2.973.166.33.331.496.496.826 0 .165.166.33.166.33.99 1.982 2.972 3.139 4.954 3.139q.992 0 1.982-.496c1.156-.66 2.147-1.652 2.478-2.973.33-1.321.33-2.808-.33-4.129 0-.165-.166-.165-.166-.33-.165-.33-.33-.66-.495-.826-.496-.991-1.156-1.817-1.817-2.643-.33-.495-.66-.825-.99-1.32v-.166c-1.818-2.808-3.47-5.285-4.295-7.763-.33-1.156 0-1.816.165-2.642 0-.165.165-.165.165-.33l-.826-1.982c8.754-5.12 16.186-12.388 21.802-21.306 2.973-4.625 5.285-9.745 6.936-14.865l1.982.33c.166 0 .166-.165.33-.165.661-.33 1.157-.825 2.148-.825h.33c2.643.33 5.45 1.32 8.589 2.477h.165c.495.165.99.495 1.486.66.991.496 1.817.826 2.973 1.157.33 0 .66.165.991.165.165 0 .33 0 .495.165.496.165.826.165 1.322.165 2.477 0 4.624-1.651 5.285-3.798 0-1.982-1.817-4.625-4.79-5.45m-76.47-8.093-7.267 3.469-7.267-3.469-1.816-7.762 4.954-6.276h8.093l4.955 6.276zm43.108-17.176a52.1 52.1 0 0 1 1.156 16.68l-25.27-7.266c-2.312-.66-3.633-2.973-3.138-5.285.165-.661.496-1.322.991-1.817l19.985-18.003c2.807 4.625 4.954 9.91 6.276 15.69m-14.204-25.6-21.636 15.36c-1.817 1.156-4.295.825-5.781-.991-.495-.496-.66-1.157-.826-1.817l-1.486-26.922a50.13 50.13 0 0 1 29.729 14.37M116.769 78.12c1.817-.33 3.468-.66 5.285-.99l-1.486 26.425c-.165 2.312-1.982 4.294-4.46 4.294-.66 0-1.486-.165-1.982-.495L92.16 91.665c6.772-6.772 15.195-11.397 24.609-13.544m-32.537 23.453 19.654 17.507c1.817 1.487 1.982 4.294.496 6.111-.496.66-1.156 1.156-1.982 1.322l-25.6 7.432c-.991-11.231 1.486-22.627 7.432-32.372m-4.46 44.759 26.262-4.46c2.147-.165 4.129 1.322 4.624 3.469.165.99.165 1.817-.165 2.643l-10.075 24.278c-9.249-5.946-16.681-15.03-20.645-25.93m60.285 32.867c-3.799.826-7.598 1.321-11.562 1.321-5.78 0-11.396-.99-16.68-2.642l13.047-23.618c1.321-1.487 3.468-2.147 5.285-1.156a7 7 0 0 1 1.982 1.816l12.717 22.958c-1.486.495-3.138.826-4.79 1.321m32.206-22.957c-4.129 6.606-9.58 11.891-15.855 16.02l-10.405-24.94c-.496-1.981.33-4.128 2.312-5.12.66-.33 1.486-.495 2.312-.495l26.426 4.46c-.991 3.633-2.643 6.937-4.79 10.075"})]}),CJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 291",...e,children:[y.jsx("path",{fill:"#009639",d:"M2.054 218.187c1.32 2.347 3.227 4.108 5.575 5.428l112.962 65.137c4.695 2.787 10.416 2.787 14.964 0l112.963-65.137c4.695-2.64 7.482-7.629 7.482-13.057V80.284c0-5.428-2.787-10.416-7.482-13.056L135.555 2.09c-4.694-2.788-10.416-2.788-14.964 0L7.63 67.228C2.787 69.868 0 74.856 0 80.284v130.42c0 2.642.587 5.136 2.054 7.483"}),y.jsx("path",{fill:"#FFF",d:"M91.837 195.154a14.463 14.463 0 0 1-14.524 14.524 14.463 14.463 0 0 1-14.523-14.524V95.542c0-7.776 6.895-14.084 16.43-14.084 6.896 0 14.965 2.787 19.806 8.802l4.4 5.282 60.737 72.618V95.835a14.463 14.463 0 0 1 14.524-14.524 14.463 14.463 0 0 1 14.523 14.524v99.613c0 7.775-6.895 14.083-16.43 14.083-6.896 0-14.965-2.787-19.806-8.802l-65.137-77.754z"})]}),$Je=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 264",...e,children:[y.jsx("path",{d:"M255.008 158.086c-1.535-4.649-5.556-7.887-10.756-8.664-2.452-.366-5.26-.21-8.583.475-5.792 1.195-10.089 1.65-13.225 1.738 11.837-19.985 21.462-42.775 27.003-64.228 8.96-34.689 4.172-50.492-1.423-57.64C233.217 10.847 211.614.683 185.552.372c-13.903-.17-26.108 2.575-32.475 4.549-5.928-1.046-12.302-1.63-18.99-1.738-12.537-.2-23.614 2.533-33.079 8.15-5.24-1.772-13.65-4.27-23.362-5.864-22.842-3.75-41.252-.828-54.718 8.685C6.622 25.672-.937 45.684.461 73.634c.444 8.874 5.408 35.874 13.224 61.48 4.492 14.718 9.282 26.94 14.237 36.33 7.027 13.315 14.546 21.156 22.987 23.972 4.731 1.576 13.327 2.68 22.368-4.85 1.146 1.388 2.675 2.767 4.704 4.048 2.577 1.625 5.728 2.953 8.875 3.74 11.341 2.835 21.964 2.126 31.027-1.848.056 1.612.099 3.152.135 4.482.06 2.157.12 4.272.199 6.25.537 13.374 1.447 23.773 4.143 31.049.148.4.347 1.01.557 1.657 1.345 4.118 3.594 11.012 9.316 16.411 5.925 5.593 13.092 7.308 19.656 7.308 3.292 0 6.433-.432 9.188-1.022 9.82-2.105 20.973-5.311 29.041-16.799 7.628-10.86 11.336-27.217 12.007-52.99q.13-1.094.244-2.088l.16-1.362 1.797.158.463.031c10.002.456 22.232-1.665 29.743-5.154 5.935-2.754 24.954-12.795 20.476-26.351"}),y.jsx("path",{fill:"#336791",d:"M237.906 160.722c-29.74 6.135-31.785-3.934-31.785-3.934 31.4-46.593 44.527-105.736 33.2-120.211-30.904-39.485-84.399-20.811-85.292-20.327l-.287.052c-5.876-1.22-12.451-1.946-19.842-2.067-13.456-.22-23.664 3.528-31.41 9.402 0 0-95.43-39.314-90.991 49.444.944 18.882 27.064 142.873 58.218 105.422 11.387-13.695 22.39-25.274 22.39-25.274 5.464 3.63 12.006 5.482 18.864 4.817l.533-.452c-.166 1.7-.09 3.363.213 5.332-8.026 8.967-5.667 10.541-21.711 13.844-16.235 3.346-6.698 9.302-.471 10.86 7.549 1.887 25.013 4.561 36.813-11.958l-.47 1.885c3.144 2.519 5.352 16.383 4.982 28.952-.37 12.568-.617 21.197 1.86 27.937 2.479 6.74 4.948 21.905 26.04 17.386 17.623-3.777 26.756-13.564 28.027-29.89.901-11.606 2.942-9.89 3.07-20.267l1.637-4.912c1.887-15.733.3-20.809 11.157-18.448l2.64.232c7.99.363 18.45-1.286 24.589-4.139 13.218-6.134 21.058-16.377 8.024-13.686z"}),y.jsx("path",{fill:"#FFF",d:"M108.076 81.525c-2.68-.373-5.107-.028-6.335.902-.69.523-.904 1.129-.962 1.546-.154 1.105.62 2.327 1.096 2.957 1.346 1.784 3.312 3.01 5.258 3.28q.423.059.842.058c3.245 0 6.196-2.527 6.456-4.392.325-2.336-3.066-3.893-6.355-4.35M196.86 81.599c-.256-1.831-3.514-2.353-6.606-1.923-3.088.43-6.082 1.824-5.832 3.659.2 1.427 2.777 3.863 5.827 3.863q.387 0 .78-.054c2.036-.282 3.53-1.575 4.24-2.32 1.08-1.136 1.706-2.402 1.591-3.225"}),y.jsx("path",{fill:"#FFF",d:"M247.802 160.025c-1.134-3.429-4.784-4.532-10.848-3.28-18.005 3.716-24.453 1.142-26.57-.417 13.995-21.32 25.508-47.092 31.719-71.137 2.942-11.39 4.567-21.968 4.7-30.59.147-9.463-1.465-16.417-4.789-20.665-13.402-17.125-33.072-26.311-56.882-26.563-16.369-.184-30.199 4.005-32.88 5.183-5.646-1.404-11.801-2.266-18.502-2.376-12.288-.199-22.91 2.743-31.704 8.74-3.82-1.422-13.692-4.811-25.765-6.756-20.872-3.36-37.458-.814-49.294 7.571-14.123 10.006-20.643 27.892-19.38 53.16.425 8.501 5.269 34.653 12.913 59.698 10.062 32.964 21 51.625 32.508 55.464 1.347.449 2.9.763 4.613.763 4.198 0 9.345-1.892 14.7-8.33a530 530 0 0 1 20.261-22.926c4.524 2.428 9.494 3.784 14.577 3.92q.016.2.035.398a118 118 0 0 0-2.57 3.175c-3.522 4.471-4.255 5.402-15.592 7.736-3.225.666-11.79 2.431-11.916 8.435-.136 6.56 10.125 9.315 11.294 9.607 4.074 1.02 7.999 1.523 11.742 1.523 9.103 0 17.114-2.992 23.516-8.781-.197 23.386.778 46.43 3.586 53.451 2.3 5.748 7.918 19.795 25.664 19.794 2.604 0 5.47-.303 8.623-.979 18.521-3.97 26.564-12.156 29.675-30.203 1.665-9.645 4.522-32.676 5.866-45.03 2.836.885 6.487 1.29 10.434 1.289 8.232 0 17.731-1.749 23.688-4.514 6.692-3.108 18.768-10.734 16.578-17.36m-44.106-83.48c-.061 3.647-.563 6.958-1.095 10.414-.573 3.717-1.165 7.56-1.314 12.225-.147 4.54.42 9.26.968 13.825 1.108 9.22 2.245 18.712-2.156 28.078a37 37 0 0 1-1.95-4.009c-.547-1.326-1.735-3.456-3.38-6.404-6.399-11.476-21.384-38.35-13.713-49.316 2.285-3.264 8.084-6.62 22.64-4.813m-17.644-61.787c21.334.471 38.21 8.452 50.158 23.72 9.164 11.711-.927 64.998-30.14 110.969a171 171 0 0 0-.886-1.117l-.37-.462c7.549-12.467 6.073-24.802 4.759-35.738-.54-4.488-1.05-8.727-.92-12.709.134-4.22.692-7.84 1.232-11.34.663-4.313 1.338-8.776 1.152-14.037.139-.552.195-1.204.122-1.978-.475-5.045-6.235-20.144-17.975-33.81-6.422-7.475-15.787-15.84-28.574-21.482 5.5-1.14 13.021-2.203 21.442-2.016M66.674 175.778c-5.9 7.094-9.974 5.734-11.314 5.288-8.73-2.912-18.86-21.364-27.791-50.624-7.728-25.318-12.244-50.777-12.602-57.916-1.128-22.578 4.345-38.313 16.268-46.769 19.404-13.76 51.306-5.524 64.125-1.347-.184.182-.376.352-.558.537-21.036 21.244-20.537 57.54-20.485 59.759-.002.856.07 2.068.168 3.735.362 6.105 1.036 17.467-.764 30.334-1.672 11.957 2.014 23.66 10.111 32.109a36 36 0 0 0 2.617 2.468c-3.604 3.86-11.437 12.396-19.775 22.426m22.479-29.993c-6.526-6.81-9.49-16.282-8.133-25.99 1.9-13.592 1.199-25.43.822-31.79-.053-.89-.1-1.67-.127-2.285 3.073-2.725 17.314-10.355 27.47-8.028 4.634 1.061 7.458 4.217 8.632 9.645 6.076 28.103.804 39.816-3.432 49.229-.873 1.939-1.698 3.772-2.402 5.668l-.546 1.466c-1.382 3.706-2.668 7.152-3.465 10.424-6.938-.02-13.687-2.984-18.819-8.34m1.065 37.9c-2.026-.506-3.848-1.385-4.917-2.114.893-.42 2.482-.992 5.238-1.56 13.337-2.745 15.397-4.683 19.895-10.394 1.031-1.31 2.2-2.794 3.819-4.602l.002-.002c2.411-2.7 3.514-2.242 5.514-1.412 1.621.67 3.2 2.702 3.84 4.938.303 1.056.643 3.06-.47 4.62-9.396 13.156-23.088 12.987-32.921 10.526m69.799 64.952c-16.316 3.496-22.093-4.829-25.9-14.346-2.457-6.144-3.665-33.85-2.808-64.447.011-.407-.047-.8-.159-1.17a15.4 15.4 0 0 0-.456-2.162c-1.274-4.452-4.379-8.176-8.104-9.72-1.48-.613-4.196-1.738-7.46-.903.696-2.868 1.903-6.107 3.212-9.614l.549-1.475c.618-1.663 1.394-3.386 2.214-5.21 4.433-9.848 10.504-23.337 3.915-53.81-2.468-11.414-10.71-16.988-23.204-15.693-7.49.775-14.343 3.797-17.761 5.53-.735.372-1.407.732-2.035 1.082.954-11.5 4.558-32.992 18.04-46.59 8.489-8.56 19.794-12.788 33.568-12.56 27.14.444 44.544 14.372 54.366 25.979 8.464 10.001 13.047 20.076 14.876 25.51-13.755-1.399-23.11 1.316-27.852 8.096-10.317 14.748 5.644 43.372 13.315 57.129 1.407 2.521 2.621 4.7 3.003 5.626 2.498 6.054 5.732 10.096 8.093 13.046.724.904 1.426 1.781 1.96 2.547-4.166 1.201-11.649 3.976-10.967 17.847-.55 6.96-4.461 39.546-6.448 51.059-2.623 15.21-8.22 20.875-23.957 24.25m68.104-77.936c-4.26 1.977-11.389 3.46-18.161 3.779-7.48.35-11.288-.838-12.184-1.569-.42-8.644 2.797-9.547 6.202-10.503.535-.15 1.057-.297 1.561-.473q.469.383 1.032.756c6.012 3.968 16.735 4.396 31.874 1.271l.166-.033c-2.042 1.909-5.536 4.471-10.49 6.772"})]}),RJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 257",...e,children:y.jsx("path",{fill:"#DA4E31",d:"M128.001.667C57.311.667 0 57.971 0 128.664c0 70.69 57.311 127.998 128.001 127.998S256 199.354 256 128.664C256 57.97 198.689.667 128.001.667m0 239.56c-20.112 0-36.419-13.435-36.419-30.004h72.838c0 16.566-16.306 30.004-36.419 30.004m60.153-39.94H67.842V178.47h120.314v21.816zm-.432-33.045H68.185c-.398-.458-.804-.91-1.188-1.375-12.315-14.954-15.216-22.76-18.032-30.716-.048-.262 14.933 3.06 25.556 5.45 0 0 5.466 1.265 13.458 2.722-7.673-8.994-12.23-20.428-12.23-32.116 0-25.658 19.68-48.079 12.58-66.201 6.91.562 14.3 14.583 14.8 36.505 7.346-10.152 10.42-28.69 10.42-40.056 0-11.769 7.755-25.44 15.512-25.907-6.915 11.396 1.79 21.165 9.53 45.4 2.902 9.103 2.532 24.423 4.772 34.138.744-20.178 4.213-49.62 17.014-59.784-5.647 12.8.836 28.818 5.27 36.518 7.154 12.424 11.49 21.836 11.49 39.638 0 11.936-4.407 23.173-11.84 31.958 8.452-1.586 14.289-3.016 14.289-3.016l27.45-5.355c.002-.002-3.987 16.401-19.314 32.197"})}),zJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 228",...e,children:y.jsx("path",{fill:"#00D8FF",d:"M210.483 73.824a172 172 0 0 0-8.24-2.597c.465-1.9.893-3.777 1.273-5.621 6.238-30.281 2.16-54.676-11.769-62.708-13.355-7.7-35.196.329-57.254 19.526a171 171 0 0 0-6.375 5.848 156 156 0 0 0-4.241-3.917C100.759 3.829 77.587-4.822 63.673 3.233 50.33 10.957 46.379 33.89 51.995 62.588a171 171 0 0 0 1.892 8.48c-3.28.932-6.445 1.924-9.474 2.98C17.309 83.498 0 98.307 0 113.668c0 15.865 18.582 31.778 46.812 41.427a146 146 0 0 0 6.921 2.165 168 168 0 0 0-2.01 9.138c-5.354 28.2-1.173 50.591 12.134 58.266 13.744 7.926 36.812-.22 59.273-19.855a146 146 0 0 0 5.342-4.923 168 168 0 0 0 6.92 6.314c21.758 18.722 43.246 26.282 56.54 18.586 13.731-7.949 18.194-32.003 12.4-61.268a145 145 0 0 0-1.535-6.842c1.62-.48 3.21-.974 4.76-1.488 29.348-9.723 48.443-25.443 48.443-41.52 0-15.417-17.868-30.326-45.517-39.844m-6.365 70.984c-1.4.463-2.836.91-4.3 1.345-3.24-10.257-7.612-21.163-12.963-32.432 5.106-11 9.31-21.767 12.459-31.957 2.619.758 5.16 1.557 7.61 2.4 23.69 8.156 38.14 20.213 38.14 29.504 0 9.896-15.606 22.743-40.946 31.14m-10.514 20.834c2.562 12.94 2.927 24.64 1.23 33.787-1.524 8.219-4.59 13.698-8.382 15.893-8.067 4.67-25.32-1.4-43.927-17.412a157 157 0 0 1-6.437-5.87c7.214-7.889 14.423-17.06 21.459-27.246 12.376-1.098 24.068-2.894 34.671-5.345q.785 3.162 1.386 6.193M87.276 214.515c-7.882 2.783-14.16 2.863-17.955.675-8.075-4.657-11.432-22.636-6.853-46.752a157 157 0 0 1 1.869-8.499c10.486 2.32 22.093 3.988 34.498 4.994 7.084 9.967 14.501 19.128 21.976 27.15a135 135 0 0 1-4.877 4.492c-9.933 8.682-19.886 14.842-28.658 17.94M50.35 144.747c-12.483-4.267-22.792-9.812-29.858-15.863-6.35-5.437-9.555-10.836-9.555-15.216 0-9.322 13.897-21.212 37.076-29.293 2.813-.98 5.757-1.905 8.812-2.773 3.204 10.42 7.406 21.315 12.477 32.332-5.137 11.18-9.399 22.249-12.634 32.792a135 135 0 0 1-6.318-1.979m12.378-84.26c-4.811-24.587-1.616-43.134 6.425-47.789 8.564-4.958 27.502 2.111 47.463 19.835a144 144 0 0 1 3.841 3.545c-7.438 7.987-14.787 17.08-21.808 26.988-12.04 1.116-23.565 2.908-34.161 5.309a160 160 0 0 1-1.76-7.887m110.427 27.268a348 348 0 0 0-7.785-12.803c8.168 1.033 15.994 2.404 23.343 4.08-2.206 7.072-4.956 14.465-8.193 22.045a381 381 0 0 0-7.365-13.322m-45.032-43.861c5.044 5.465 10.096 11.566 15.065 18.186a322 322 0 0 0-30.257-.006c4.974-6.559 10.069-12.652 15.192-18.18M82.802 87.83a323 323 0 0 0-7.227 13.238c-3.184-7.553-5.909-14.98-8.134-22.152 7.304-1.634 15.093-2.97 23.209-3.984a322 322 0 0 0-7.848 12.897m8.081 65.352c-8.385-.936-16.291-2.203-23.593-3.793 2.26-7.3 5.045-14.885 8.298-22.6a321 321 0 0 0 7.257 13.246c2.594 4.48 5.28 8.868 8.038 13.147m37.542 31.03c-5.184-5.592-10.354-11.779-15.403-18.433 4.902.192 9.899.29 14.978.29 5.218 0 10.376-.117 15.453-.343-4.985 6.774-10.018 12.97-15.028 18.486m52.198-57.817c3.422 7.8 6.306 15.345 8.596 22.52-7.422 1.694-15.436 3.058-23.88 4.071a382 382 0 0 0 7.859-13.026 347 347 0 0 0 7.425-13.565m-16.898 8.101a359 359 0 0 1-12.281 19.815 329 329 0 0 1-23.444.823c-7.967 0-15.716-.248-23.178-.732a310 310 0 0 1-12.513-19.846h.001a307 307 0 0 1-10.923-20.627 310 310 0 0 1 10.89-20.637l-.001.001a307 307 0 0 1 12.413-19.761c7.613-.576 15.42-.876 23.31-.876H128c7.926 0 15.743.303 23.354.883a329 329 0 0 1 12.335 19.695 359 359 0 0 1 11.036 20.54 330 330 0 0 1-11 20.722m22.56-122.124c8.572 4.944 11.906 24.881 6.52 51.026q-.518 2.504-1.15 5.09c-10.622-2.452-22.155-4.275-34.23-5.408-7.034-10.017-14.323-19.124-21.64-27.008a161 161 0 0 1 5.888-5.4c18.9-16.447 36.564-22.941 44.612-18.3M128 90.808c12.625 0 22.86 10.235 22.86 22.86s-10.235 22.86-22.86 22.86-22.86-10.235-22.86-22.86 10.235-22.86 22.86-22.86"})}),TJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 220",...e,children:[y.jsx("path",{fill:"#912626",d:"M245.97 168.943c-13.662 7.121-84.434 36.22-99.501 44.075s-23.437 7.78-35.34 2.09c-11.902-5.69-87.216-36.112-100.783-42.597C3.566 169.271 0 166.535 0 163.951v-25.876s98.05-21.345 113.879-27.024c15.828-5.679 21.32-5.884 34.79-.95 13.472 4.936 94.018 19.468 107.331 24.344l-.006 25.51c.002 2.558-3.07 5.364-10.024 8.988"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 143.22c-13.661 7.118-84.431 36.218-99.498 44.072-15.066 7.857-23.436 7.78-35.338 2.09-11.903-5.686-87.214-36.113-100.78-42.594-13.566-6.485-13.85-10.948-.524-16.166 13.326-5.22 88.224-34.605 104.055-40.284 15.828-5.677 21.319-5.884 34.789-.948 13.471 4.934 83.819 32.935 97.13 37.81 13.316 4.881 13.827 8.9.166 16.02"}),y.jsx("path",{fill:"#912626",d:"M245.97 127.074c-13.662 7.122-84.434 36.22-99.501 44.078-15.067 7.853-23.437 7.777-35.34 2.087-11.903-5.687-87.216-36.112-100.783-42.597C3.566 127.402 0 124.67 0 122.085V96.206s98.05-21.344 113.879-27.023c15.828-5.679 21.32-5.885 34.79-.95C162.142 73.168 242.688 87.697 256 92.574l-.006 25.513c.002 2.557-3.07 5.363-10.024 8.987"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 101.351c-13.661 7.12-84.431 36.218-99.498 44.075-15.066 7.854-23.436 7.777-35.338 2.087-11.903-5.686-87.214-36.112-100.78-42.594-13.566-6.483-13.85-10.947-.524-16.167C23.151 83.535 98.05 54.148 113.88 48.47c15.828-5.678 21.319-5.884 34.789-.949 13.471 4.934 83.819 32.933 97.13 37.81 13.316 4.88 13.827 8.9.166 16.02"}),y.jsx("path",{fill:"#912626",d:"M245.97 83.653c-13.662 7.12-84.434 36.22-99.501 44.078-15.067 7.854-23.437 7.777-35.34 2.087-11.903-5.687-87.216-36.113-100.783-42.595C3.566 83.98 0 81.247 0 78.665v-25.88s98.05-21.343 113.879-27.021c15.828-5.68 21.32-5.884 34.79-.95C162.142 29.749 242.688 44.278 256 49.155l-.006 25.512c.002 2.555-3.07 5.361-10.024 8.986"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 57.93c-13.661 7.12-84.431 36.22-99.498 44.074-15.066 7.854-23.436 7.777-35.338 2.09C99.227 98.404 23.915 67.98 10.35 61.497S-3.5 50.55 9.825 45.331C23.151 40.113 98.05 10.73 113.88 5.05c15.828-5.679 21.319-5.883 34.789-.948s83.819 32.934 97.13 37.811c13.316 4.876 13.827 8.897.166 16.017"}),y.jsx("path",{fill:"#FFF",d:"m159.283 32.757-22.01 2.285-4.927 11.856-7.958-13.23-25.415-2.284 18.964-6.839-5.69-10.498 17.755 6.944 16.738-5.48-4.524 10.855zM131.032 90.275 89.955 73.238l58.86-9.035zM74.082 39.347c17.375 0 31.46 5.46 31.46 12.194 0 6.736-14.085 12.195-31.46 12.195s-31.46-5.46-31.46-12.195c0-6.734 14.085-12.194 31.46-12.194"}),y.jsx("path",{fill:"#621B1C",d:"m185.295 35.998 34.836 13.766-34.806 13.753z"}),y.jsx("path",{fill:"#9A2928",d:"m146.755 51.243 38.54-15.245.03 27.519-3.779 1.478z"})]}),jJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 258",...e,children:y.jsxs("g",{fill:"#FFA64D",children:[y.jsx("path",{d:"M13.222 183.045C30.007 165.978 244.278 4.782 247.936 8.44c2.813 2.813-156.507 219.616-173.387 236.589s-44.26 16.785-61.14-.282c-16.972-17.066-16.972-44.73-.187-61.702",opacity:.5}),y.jsx("path",{d:"M22.693 175.45c20.63-12.098 230.119-95.18 232.65-90.68 1.97 3.47-168.79 154.538-189.514 166.541-20.63 12.003-46.98 4.783-58.89-16.222-11.909-20.818-4.876-47.543 15.754-59.64",opacity:.3}),y.jsx("path",{d:"M82.051 235.276C94.054 214.46 176.387 3.47 171.98.938 168.51-1.032 18.661 171.042 6.658 191.859c-11.91 20.818-4.689 47.356 16.129 59.265C43.51 263.127 70.048 256 82.05 235.276",opacity:.3}),y.jsx("path",{d:"M32.727 171.042c23.068-6.283 216.521-30.195 217.928-25.225 1.031 3.845-172.73 103.431-195.798 109.714s-46.699-7.595-52.794-30.945 7.69-47.261 30.664-53.544",opacity:.2}),y.jsx("path",{d:"M32.727 171.042c23.068-6.283 179.387 29.07 180.7 33.946 1.032 3.844-135.595 44.167-158.664 50.45-23.068 6.282-46.699-7.596-52.794-30.946-6.001-23.255 7.783-47.167 30.758-53.45",opacity:.1}),y.jsx("path",{d:"M86.459 225.055c6.282-23.256-28.882-180.7-33.852-182.013C48.762 42.01 8.815 179.575 2.626 202.83c-6.19 23.255 7.595 47.074 30.757 53.075 23.068 6.19 46.887-7.595 53.076-30.851",opacity:.1}),y.jsx("path",{d:"M86.459 225.055C92.74 201.799 116.372 6.939 111.496 5.626 107.651 4.595 8.908 179.576 2.626 202.925-3.564 226.18 10.22 249.999 33.383 256c23.068 6.189 46.887-7.69 53.076-30.945",opacity:.2})]})}),AJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 256",...e,children:[y.jsx("path",{fill:"#85EA2D",d:"M127.999 249.895c-67.215 0-121.9-54.68-121.9-121.896S60.785 6.102 128 6.102c67.214 0 121.899 54.685 121.899 121.9 0 67.214-54.685 121.893-121.9 121.893"}),y.jsx("path",{fill:"#173647",d:"M127.999 12.202c63.954 0 115.797 51.842 115.797 115.797 0 63.952-51.843 115.797-115.797 115.797-63.952 0-115.797-51.845-115.797-115.797S64.047 12.202 127.999 12.202m0-12.202C57.419 0 0 57.42 0 127.999s57.42 127.998 127.999 127.998S256 198.577 256 128C256 57.419 198.578 0 127.999 0"}),y.jsx("path",{fill:"#173647",d:"M80.598 86.619c-.394 4.38.146 8.909-.146 13.338-.345 4.431-.887 8.811-1.773 13.192-1.23 6.25-5.12 10.976-10.482 14.914 10.436 6.793 11.616 17.324 12.304 28.006.345 5.76.197 11.567.788 17.276.443 4.429 2.165 5.562 6.745 5.708 1.87.048 3.786 0 5.956 0v13.683c-13.535 2.313-24.708-1.525-27.467-12.992-.887-4.184-1.478-8.467-1.673-12.798-.297-4.578.195-9.155-.148-13.732-.985-12.553-2.61-16.785-14.618-17.376v-15.602a24 24 0 0 1 2.608-.443c6.596-.345 9.4-2.364 10.828-8.86.69-3.641 1.084-7.333 1.23-11.074.494-7.136.297-14.42 1.525-21.507C67.997 68.163 74.3 63.24 84.785 62.65c2.952-.149 5.955 0 9.35 0v13.98c-1.427.1-2.658.294-3.937.294-8.515-.297-8.96 2.607-9.6 9.695m16.39 32.386h-.196c-4.923-.245-9.155 3.593-9.403 8.515-.246 4.972 3.592 9.206 8.515 9.45h.59c4.875.296 9.056-3.447 9.352-8.319v-.491c.1-4.971-3.886-9.055-8.857-9.155m30.862 0c-4.774-.148-8.763 3.593-8.909 8.318 0 .297 0 .543.051.837 0 5.365 3.641 8.812 9.155 8.812 5.414 0 8.812-3.544 8.812-9.106-.051-5.366-3.646-8.91-9.109-8.86m31.602 0c-5.02-.1-9.206 3.89-9.352 8.91a9.03 9.03 0 0 0 9.055 9.054h.1c4.528.788 9.106-3.592 9.402-8.858.243-4.874-4.186-9.106-9.205-9.106m43.363.737c-5.711-.245-8.567-2.164-9.992-7.581a55 55 0 0 1-1.624-10.582c-.395-6.596-.346-13.241-.789-19.837-1.033-15.651-12.352-21.114-28.794-18.41V76.92c2.607 0 4.626 0 6.645.049 3.495.048 6.153 1.379 6.496 5.268.345 3.543.345 7.136.69 10.73.692 7.139 1.083 14.372 2.314 21.41 1.085 5.809 5.07 10.14 10.04 13.684-8.71 5.857-11.27 14.223-11.714 23.626-.245 6.448-.394 12.944-.736 19.443-.297 5.905-2.362 7.824-8.318 7.972-1.674.05-3.298.198-5.169.297v13.93c3.495 0 6.694.196 9.892 0 9.942-.592 15.947-5.415 17.918-15.063a126 126 0 0 0 1.476-16.045c.343-4.923.297-9.894.788-14.766.737-7.63 4.232-10.78 11.862-11.27.739-.1 1.427-.246 2.118-.492v-15.604c-1.282-.149-2.17-.295-3.103-.346"})]}),DJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 123",...e,children:[y.jsx("path",{d:"M207.785 45.398c15.276 0 18.696 8.908 18.696 19.188v10.239H199.86v2.457c.102 5.693 2.15 7.945 9.399 7.945a50 50 0 0 0 14.58-2.252l1.863 9.01a51.2 51.2 0 0 1-17.528 3.03c-14.97 0-20.17-6.942-20.17-18.43V63.993c0-10.075 4.504-18.594 19.78-18.594m100.38-.02c14.97 0 19.392 5.283 19.392 17.222l-.04 31.432h-9.789l-.88-3.235a26.06 26.06 0 0 1-14.191 4.218c-8.703 0-12.43-5.98-12.43-14.19 0-9.686 4.218-13.413 13.904-13.413h11.447v-4.997c0-5.283-1.474-7.146-9.113-7.146-4.443.049-8.866.544-13.208 1.474l-1.474-9.112a62.4 62.4 0 0 1 16.382-2.253m79.35 0c16.341 0 20.744 9.01 20.744 18.798v12.041c.02 9.788-4.403 18.798-20.744 18.798-16.382 0-20.743-9.01-20.743-18.798v-12.04c0-9.789 4.402-18.799 20.743-18.799M198.017 28.832v10.874h-18.225v54.326h-12.286l-.041-54.326H149.26V28.832zm157.205-3.911c3.46-.012 6.905.45 10.239 1.372l-1.25 9.194a35 35 0 0 0-6.86-.778c-4.688 0-5.385 2.048-5.385 5.673v5.979h12.143l-.675 9.501h-11.447v38.17h-11.939v-38.17h-7.638v-9.501h7.638v-6.655c0-9.89 4.608-14.785 15.174-14.785M482.04 50.477a46.8 46.8 0 0 1 19.187-5.099c7.925 0 10.772 5.57 10.772 14.089v34.565h-11.939V60.757c0-2.54-1.085-3.81-3.809-3.81a31.6 31.6 0 0 0-12.43 4.096v32.99H471.8V60.756c0-2.54-1.085-3.81-3.808-3.81-4.376.52-8.601 1.913-12.43 4.096v32.99h-11.939V46.36h9.113l1.167 4.095a47.7 47.7 0 0 1 19.126-5.078 9.05 9.05 0 0 1 9.01 5.099m-224.863-5.099 1.229 10.976a94 94 0 0 0-12.676 6.942v30.716h-11.938V46.361h10.075l.778 5.283a53.5 53.5 0 0 1 12.532-6.266m29.201 0 1.188 10.976a94 94 0 0 0-12.635 6.942v30.716h-11.938V46.361h10.075l.778 5.283a53.5 53.5 0 0 1 12.532-6.266m151.43 0 1.188 10.976a94 94 0 0 0-12.634 6.942v30.716h-11.938V46.361h10.074l.779 5.283a53.4 53.4 0 0 1 12.532-6.266m-122.23 30.634h-8.804c-3.912 0-4.997 1.086-4.997 4.69s1.085 4.791 4.792 4.791a18.8 18.8 0 0 0 9.01-2.457zm71.938-20.457c-6.368 0-8.805 2.847-8.805 8.191v12.82c0 5.385 2.457 8.19 8.805 8.19s8.805-2.846 8.805-8.19V63.786c0-5.385-2.436-8.232-8.805-8.232m-179.628-.389c-5.877 0-7.925 3.133-7.925 7.638v2.417h15.174v-2.417c0-4.505-1.372-7.638-7.249-7.638"}),y.jsx("path",{fill:"#4040B2",d:"M74.538 79.821 108.12 60.45V21.645L74.538 41.057z"}),y.jsx("path",{fill:"#5C4EE5",d:"m37.269 21.645 33.583 19.412v38.764L37.269 60.43M0 38.784l33.583 19.392V19.392L0 0m37.269 103.473 33.583 19.392V84.08L37.269 64.688"})]});const MJe={"tech:docker":yJe,"tech:elasticsearch":vJe,"tech:electron":bJe,"tech:git":xJe,"tech:github":wJe,"tech:go":kJe,"tech:grafana":_Je,"tech:java":SJe,"tech:kubernetes":EJe,"tech:nginx":CJe,"tech:postgresql":$Je,"tech:prometheus":RJe,"tech:react":zJe,"tech:redis":TJe,"tech:spark":jJe,"tech:swagger":AJe,"tech:terraform":DJe};function NJe(e){const r=MJe[e.node.icon??""];return r?y.jsx(r,e):null}function PJe(e,r,n){let o=a=>e(a,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function Jre(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return PJe(e,r,n);throw Error("Wrong number of arguments")}function BJe(...e){return Jre(IJe,e)}function IJe(e,r){let n={};for(let[o,a]of Object.entries(e))n[o]=r(a,o,e);return n}function ene(...e){return Jre(z0,e)}function z0(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(r))return!1;if(Array.isArray(e))return OJe(e,r);if(e instanceof Map)return LJe(e,r);if(e instanceof Set)return FJe(e,r);if(e instanceof Date)return e.getTime()===r.getTime();if(e instanceof RegExp)return e.toString()===r.toString();if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let[n,o]of Object.entries(e))if(!(n in r)||!z0(o,r[n]))return!1;return!0}function OJe(e,r){if(e.length!==r.length)return!1;for(let[n,o]of e.entries())if(!z0(o,r[n]))return!1;return!0}function LJe(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e.entries())if(!r.has(n)||!z0(o,r.get(n)))return!1;return!0}function FJe(e,r){if(e.size!==r.size)return!1;let n=[...r];for(let o of e){let a=!1;for(let[i,l]of n.entries())if(z0(o,l)){a=!0,n.splice(i,1);break}if(!a)return!1}return!0}let gl=[],Fd=0;const m4=4;let g4=0;const tne=e=>{let r=[],n={get(){return n.lc||n.listen(()=>{})(),n.value},lc:0,listen(o){return n.lc=r.push(o),()=>{for(let i=Fd+m4;i(e.events=e.events||{},e.events[n+v4]||(e.events[n+v4]=o(a=>{e.events[n].reduceRight((i,l)=>(l(i),i),{shared:{},...a})})),e.events[n]=e.events[n]||[],e.events[n].push(r),()=>{let a=e.events[n],i=a.indexOf(r);a.splice(i,1),a.length||(delete e.events[n],e.events[n+v4](),delete e.events[n+v4])}),HJe=1e3,UJe=(e,r)=>qJe(e,n=>{let o=r(n);o&&e.events[y4].push(o)},VJe,n=>{let o=e.listen;e.listen=(...i)=>(!e.lc&&!e.active&&(e.active=!0,n()),o(...i));let a=e.off;return e.events[y4]=[],e.off=()=>{a(),setTimeout(()=>{if(e.active&&!e.lc){e.active=!1;for(let i of e.events[y4])i();e.events[y4]=[]}},HJe)},()=>{e.listen=o,e.off=a}}),WJe=(e,r,n)=>{Array.isArray(e)||(e=[e]);let o,a,i=()=>{if(a===g4)return;a=g4;let d=e.map(u=>u.get());if(!o||d.some((u,p)=>u!==o[p])){o=d;let u=r(...d);u&&u.then&&u.t?u.then(p=>{o===d&&l.set(p)}):(l.set(u),a=g4)}},l=tne(void 0),s=l.get;l.get=()=>(i(),s());let c=i;return UJe(l,()=>{let d=e.map(u=>u.listen(c));return i(),()=>{for(let u of d)u()}}),l};const rne=(e,r)=>WJe(e,r);function GJe(e,r,n){let o=new Set(r).add(void 0);return e.listen((a,i,l)=>{o.has(l)&&n(a,i,l)})}let Cz=(e,r)=>n=>{e.current!==n&&(e.current=n,r())};function nne(e,{keys:r,deps:n=[e,r]}={}){let o=S.useRef();o.current=e.get();let a=S.useCallback(l=>(Cz(o,l)(e.value),r?.length>0?GJe(e,r,Cz(o,l)):e.listen(Cz(o,l))),n),i=()=>o.current;return S.useSyncExternalStore(a,i,i)}const YJe=e=>{const r=rne(e,s=>Fu.create(s));function n(s){const c=e.get();if(ene(c,s))return;const d={...s,views:BJe(s.views,u=>{const p=c.views[u.id];return ene(p,u)?p:u})};e.set(d)}const o=rne(e,s=>Object.values(s.views));function a(){return nne(r)}function i(){return nne(o)}function l(s){const[c,d]=S.useState(e.value?.views[s]??null);return S.useEffect(()=>e.subscribe(u=>{d(u.views[s]??null)}),[s]),c}return{updateModel:n,$likec4model:r,useLikeC4Model:a,useLikeC4Views:i,useLikeC4View:l}},XJe=tne({_stage:"layouted",projectId:"architecture",project:{id:"architecture",title:"architecture"},specification:{tags:{internal:{color:"tomato"}},elements:{actor:{style:{shape:"person",color:"green"}},person:{style:{shape:"person",color:"green"}},component:{style:{}},container:{style:{opacity:20}},internalComponent:{style:{color:"muted",opacity:15}},schema:{style:{}},step:{style:{}},system:{style:{}},workflow:{style:{}},tool:{style:{}},process:{style:{}},repository:{style:{shape:"storage"}}},relationships:{},deployments:{cloud:{style:{}},environment:{style:{}},computeressource:{style:{}},paas:{style:{}},kubernetes:{style:{}},cluster:{style:{}},namespace:{style:{}}},customColors:{magenta:{elements:{fill:"#b100ff",stroke:"#9e00e4",hiContrast:"#ffffff",loContrast:"#fff2ff"},relationships:{line:"#c137fe",label:"#d064ff",labelBg:"#7a00b3"}}}},elements:{edfbuilder_workflow:{style:{},title:"EDFbuilder",kind:"workflow",id:"edfbuilder_workflow"},argocdworkflow:{style:{},title:"EDP ArgoCD Setup Workflow",kind:"workflow",id:"argocdworkflow"},edpworkflow:{style:{},title:"EDP Infrastructure Setup Workflow",kind:"workflow",id:"edpworkflow"},applicationspecification:{style:{},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},title:"application-specification",kind:"component",id:"applicationspecification"},forgejoRunner:{style:{},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},title:"Forgejo Runner",kind:"component",id:"forgejoRunner"},forgejoRunnerWorker:{style:{},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},title:"Forgejo Runner Worker",kind:"component",id:"forgejoRunnerWorker"},promtail:{style:{},description:{txt:"Log shipper agent for Loki"},title:"Promtail",kind:"component",id:"promtail"},edfbuilder:{style:{shape:"rectangle",icon:"tech:go"},technology:"Golang",description:{txt:"EDP Foundry Builder"},title:"edfbuilder",kind:"component",id:"edfbuilder"},edgeConnect:{style:{},description:{txt:"Provides an API and control plane to run applications on the edge"},title:"EdgeConnect Cloud",kind:"system",id:"edgeConnect"},edgeCli:{style:{},description:{txt:"Command-line client for interactive usage"},title:"EdgeConnect CLI",kind:"component",id:"edgeCli"},edgeSdk:{style:{},description:{txt:"SDK for programmatic integration"},title:"EdgeConnect SDK",kind:"component",id:"edgeSdk"},edgeTerraformProvider:{style:{},description:{txt:"Terraform provider enabling declarative provisioning"},title:"Terraform Edge provider",kind:"component",id:"edgeTerraformProvider"},elasticsearch:{style:{opacity:20,icon:"tech:elasticsearch"},technology:"Elasticsearch",description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of addressing a growing number of use cases. It centrally stores your data so you can discover the expected and uncover the unexpected.`},title:"Elasticsearch",kind:"container",id:"elasticsearch"},objectstorage:{style:{opacity:20},technology:"S3 Object Storage",description:{txt:"s3 Object Storage"},title:"s3 Object Storage",kind:"container",id:"objectstorage"},postgres:{style:{opacity:20,icon:"tech:postgresql"},technology:"PostgreSQL",description:{txt:`PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, -and correctness.`},title:"PostgreSQL",kind:"container",id:"postgres"},redis:{style:{opacity:20,icon:"tech:redis"},technology:"Redis",description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},title:"Redis",kind:"container",id:"redis"},developer:{style:{shape:"person",color:"green"},description:{txt:"The regular user of the platform"},title:"Developer",kind:"actor",id:"developer"},platformdeveloper:{style:{shape:"person",color:"gray"},description:{txt:"The EDP engineer"},title:"Platform Developer",kind:"actor",id:"platformdeveloper"},otherProductLifecycleRoles:{style:{shape:"person",color:"green"},description:{txt:"Coworking roles in the outer loop"},title:"Reviewer, Tester, Auditors, Operators",kind:"actor",id:"otherProductLifecycleRoles"},customers:{style:{shape:"person",color:"amber"},description:{txt:"Consumers of your Application"},title:"End Customers",kind:"actor",id:"customers"},cloud:{style:{},technology:"IaaS/PaaS",description:{txt:"Cloud environments"},title:"Cloud",kind:"system",id:"cloud"},enterprise:{style:{},description:{txt:"The customers' enterprise systems"},title:"Customers' Enterprise Systems",kind:"system",id:"enterprise"},documentation:{style:{icon:"tech:electron"},technology:"Static Site Generator",description:{txt:"Documentation system for EDP LikeC4 platform."},title:"Documentation",kind:"system",id:"documentation"},edf:{style:{icon:"tech:kubernetes"},technology:"Kubernetes",description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},title:"EDF",kind:"system",id:"edf"},edp:{style:{icon:"tech:kubernetes"},technology:"Kubernetes",description:{txt:"EDP Edge Development Platform"},title:"EDP",kind:"system",id:"edp"},localbox:{style:{},technology:"Linux/Windows/Mac",description:{txt:"A local development system"},title:"localbox",kind:"system",id:"localbox"},"edfbuilder_workflow.runEDP":{style:{opacity:25},title:"Run edpbuilder script",kind:"step",id:"edfbuilder_workflow.runEDP"},"edfbuilder_workflow.applyEDFBuilder":{style:{opacity:15},title:"Applies EDFbuilder resource (and triggers creation)",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder"},"applicationspecification.application_gitrepo":{style:{icon:"tech:git"},technology:"Git",description:{txt:"Git Application Repository"},title:"Git App Repo",kind:"component",id:"applicationspecification.application_gitrepo"},"applicationspecification.applicationspec_gitrepo":{style:{icon:"tech:git"},technology:"Git",description:{txt:"Git Application Specification Repository"},title:"Git AppSpec Repo",kind:"component",id:"applicationspecification.applicationspec_gitrepo"},"edp.api":{style:{opacity:20,icon:"tech:swagger"},description:{txt:"API for the EDP platform"},title:"API",kind:"container",id:"edp.api"},"edp.argoCD":{style:{opacity:20},description:{txt:"GitOps Service"},title:"ArgoCD",kind:"container",id:"edp.argoCD"},"edp.ui":{style:{opacity:20},description:{txt:"Developer Portal"},title:"Backstage",kind:"container",id:"edp.ui"},"edp.crossplane":{style:{opacity:20},tags:["internal"],description:{txt:"Declarative management of ressources"},title:"Crossplane",kind:"container",id:"edp.crossplane"},"edp.externalSecrets":{style:{opacity:20},tags:["internal"],description:{txt:"Provider to access externally stored Kubernetes secrets"},title:"external-secrets",kind:"container",id:"edp.externalSecrets"},"edp.forgejo":{style:{opacity:20,icon:"tech:go"},technology:"Golang",description:{txt:`Fully managed DevOps Platform +and correctness.`},title:"PostgreSQL",kind:"container",id:"postgres"},redis:{style:{opacity:20,icon:"tech:redis"},technology:"Redis",description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},title:"Redis",kind:"container",id:"redis"},developer:{style:{shape:"person",color:"green"},description:{txt:"The regular user of the platform"},title:"Developer",kind:"actor",id:"developer"},platformdeveloper:{style:{shape:"person",color:"gray"},description:{txt:"The EDP engineer"},title:"Platform Developer",kind:"actor",id:"platformdeveloper"},otherProductLifecycleRoles:{style:{shape:"person",color:"green"},description:{txt:"Coworking roles in the outer loop"},title:"Reviewer, Tester, Auditors, Operators",kind:"actor",id:"otherProductLifecycleRoles"},customers:{style:{shape:"person",color:"amber"},description:{txt:"Consumers of your Application"},title:"End Customers",kind:"actor",id:"customers"},cloud:{style:{},technology:"IaaS/PaaS",description:{txt:"Cloud environments"},title:"Cloud",kind:"system",id:"cloud"},enterprise:{style:{},description:{txt:"The customers' enterprise systems"},title:"Customers' Enterprise Systems",kind:"system",id:"enterprise"},documentation:{style:{icon:"tech:electron"},technology:"Static Site Generator",description:{txt:"Documentation system for EDP LikeC4 platform."},title:"Documentation",kind:"system",id:"documentation"},edf:{style:{icon:"tech:kubernetes"},technology:"Kubernetes",description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},title:"EDF",kind:"system",id:"edf"},edp:{style:{icon:"tech:kubernetes"},technology:"Kubernetes",description:{txt:"EDP Edge Development Platform"},title:"EDP",kind:"system",id:"edp"},localbox:{style:{},technology:"Linux/Windows/Mac",description:{txt:"A local development system"},title:"localbox",kind:"system",id:"localbox"},"edfbuilder_workflow.runEDP":{style:{opacity:25},title:"Run edpbuilder script",kind:"step",id:"edfbuilder_workflow.runEDP"},"edfbuilder_workflow.applyEDFBuilder":{style:{opacity:15},title:"Applies EDFbuilder resource (and triggers creation)",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder"},"applicationspecification.application_gitrepo":{style:{icon:"tech:git"},technology:"Git",description:{txt:"Git Application Repository"},title:"Git App Repo",kind:"component",id:"applicationspecification.application_gitrepo"},"applicationspecification.applicationspec_gitrepo":{style:{icon:"tech:git"},technology:"Git",description:{txt:"Git Application Specification Repository"},title:"Git AppSpec Repo",kind:"component",id:"applicationspecification.applicationspec_gitrepo"},"edp.api":{style:{opacity:20,icon:"tech:swagger"},description:{txt:"API for the EDP platform"},title:"API",kind:"container",id:"edp.api"},"edp.argoCD":{style:{opacity:20},description:{txt:"GitOps Service"},title:"ArgoCD",kind:"container",id:"edp.argoCD"},"edp.ui":{style:{opacity:20},description:{txt:"Developer Portal"},title:"Backstage",kind:"container",id:"edp.ui"},"edp.crossplane":{style:{opacity:20},tags:["internal"],description:{txt:"Declarative management of ressources"},title:"Crossplane",kind:"container",id:"edp.crossplane"},"edgeConnect.api":{style:{opacity:20},description:{txt:"Single entry point for provisioning and lifecycle management"},title:"Edge Cloud API",kind:"container",id:"edgeConnect.api"},"edgeConnect.resources":{style:{opacity:20},description:{txt:"Managed resources such as App, AppInstance, etc."},title:"Edge Resources",kind:"container",id:"edgeConnect.resources"},"edgeConnect.controllers":{style:{opacity:20},description:{txt:"Reconciles desired state and drives deployments"},title:"Controllers / Scheduler",kind:"container",id:"edgeConnect.controllers"},"edgeConnect.runtime":{style:{opacity:20},description:{txt:"Runtime where applications actually run"},title:"Edge Clusters",kind:"container",id:"edgeConnect.runtime"},"edp.externalSecrets":{style:{opacity:20},tags:["internal"],description:{txt:"Provider to access externally stored Kubernetes secrets"},title:"external-secrets",kind:"container",id:"edp.externalSecrets"},"edp.forgejo":{style:{opacity:20,icon:"tech:go"},technology:"Golang",description:{txt:`Fully managed DevOps Platform offering capabilities like code version controling collaboration and ticketing -and security scanning`},title:"Forgejo",kind:"container",id:"edp.forgejo"},"edp.forgejoActions":{style:{icon:"tech:go"},technology:"Golang",description:{txt:"Continuous Integration like Github Actions"},title:"Forgejo Actions",kind:"component",id:"edp.forgejoActions"},"edp.imageregistry":{style:{icon:"tech:go"},technology:"Golang",description:{txt:"Container Image Registry"},title:"Forgejo OCI Image Registry",kind:"component",id:"edp.imageregistry"},"edp.forgejogit":{style:{icon:"tech:git"},title:"ForgejoGit",kind:"component",id:"edp.forgejogit"},"edp.garm":{style:{opacity:20,icon:"tech:docker"},title:"Garm Image",kind:"container",id:"edp.garm"},"edp.grafana":{style:{opacity:20,icon:"tech:grafana"},description:{txt:"Data visualization and monitoring"},title:"Grafana",kind:"container",id:"edp.grafana"},"edp.ingressNginx":{style:{opacity:20},tags:["internal"],description:{txt:"Ingress Controller for incoming http(s) traffic"},title:"Ingress",kind:"container",id:"edp.ingressNginx"},"edp.keycloak":{style:{opacity:20},description:{txt:"Single Sign On for all EDP products"},title:"Keycloak",kind:"container",id:"edp.keycloak"},"edp.kyverno":{style:{opacity:20},tags:["internal"],description:{txt:"Policy-as-Code"},title:"Kyverno",kind:"container",id:"edp.kyverno"},"edp.loki":{style:{opacity:20},description:{txt:"Log aggregation system"},title:"Loki",kind:"container",id:"edp.loki"},"edp.mailhog":{style:{opacity:20},description:{txt:"Web and API based SMTP testing"},title:"Mailhog",kind:"container",id:"edp.mailhog"},"edp.minio":{style:{opacity:20},description:{txt:"S3 compatible blob storage"},title:"Minio",kind:"container",id:"edp.minio"},"edp.monitoring":{style:{opacity:20},description:{txt:"Observability system to monitor deployed components"},title:"Monitoring",kind:"container",id:"edp.monitoring"},"edp.openbao":{style:{opacity:20},description:{txt:"Secure secret storage"},title:"OpenBao",kind:"container",id:"edp.openbao"},"edp.prometheus":{style:{opacity:20,icon:"tech:prometheus"},description:{txt:"Monitoring and alerting toolkit"},title:"Prometheus",kind:"container",id:"edp.prometheus"},"edp.spark":{style:{opacity:20},tags:["internal"],description:{txt:"Allows running Spark applications on K8s"},title:"Spark",kind:"container",id:"edp.spark"},"edp.velero":{style:{opacity:20},tags:["internal"],description:{txt:"Backup Kubernetes resources"},title:"Velero",kind:"container",id:"edp.velero"},"cloud.application":{style:{color:"primary"},technology:"DSL",description:{txt:"An application description"},title:"application",kind:"schema",id:"cloud.application"},"edp.application":{style:{color:"primary"},technology:"DSL",description:{txt:"An application description"},title:"application",kind:"schema",id:"edp.application"},"edp.testApp":{style:{opacity:20},description:{txt:"Testapp to validate deployments"},title:"Fibonacci",kind:"container",id:"edp.testApp"},"localbox.application":{style:{color:"primary"},technology:"DSL",description:{txt:"An application description"},title:"application",kind:"schema",id:"localbox.application"},"localbox.git":{style:{icon:"tech:git"},technology:"Git",description:{txt:"local git"},title:"git",kind:"component",id:"localbox.git"},"edfbuilder_workflow.runEDP.createCrossplaneNS":{style:{},title:"Create Crossplane namespace",kind:"step",id:"edfbuilder_workflow.runEDP.createCrossplaneNS"},"edfbuilder_workflow.runEDP.installCrossplaneHelm":{style:{},title:"Install Crossplane Helm Chart",kind:"step",id:"edfbuilder_workflow.runEDP.installCrossplaneHelm"},"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders":{style:{},title:"Install Crossplane Functions and Providers",kind:"step",id:"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders"},"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders":{style:{},title:"Wait for Crossplane Functions and Providers to become available",kind:"step",id:"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders"},"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount":{style:{},title:"Apply cluster-admin role to crossplane shell provider service account",kind:"step",id:"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount"},"edfbuilder_workflow.runEDP.createArgoCdNS":{style:{},title:"Create ArgoCD namespace",kind:"step",id:"edfbuilder_workflow.runEDP.createArgoCdNS"},"edfbuilder_workflow.runEDP.createGiteaNS":{style:{},title:"Create Gitea namespace",kind:"step",id:"edfbuilder_workflow.runEDP.createGiteaNS"},"edfbuilder_workflow.runEDP.createArgoCdTlsCert":{style:{},title:"Create TLS Cert for Argo",kind:"step",id:"edfbuilder_workflow.runEDP.createArgoCdTlsCert"},"edfbuilder_workflow.runEDP.createGiteaTlsCert":{style:{},title:"Create TLS Cert for Forgejo",kind:"step",id:"edfbuilder_workflow.runEDP.createGiteaTlsCert"},"edfbuilder_workflow.runEDP.createEDFBuilderDefinition":{style:{},title:"Create EDFbuilder crossplane definition (defines API)",kind:"step",id:"edfbuilder_workflow.runEDP.createEDFBuilderDefinition"},"edfbuilder_workflow.runEDP.createEDFBuilderComposition":{style:{},title:"Create EDFbuilder crossplane composition (defines what happens when EDFbuilder is applied)",kind:"step",id:"edfbuilder_workflow.runEDP.createEDFBuilderComposition"},"edfbuilder_workflow.applyEDFBuilder.setEnvVars":{style:{},title:"Set required environment variables",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.setEnvVars"},"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf":{style:{},title:"Make kube.conf write/readbale",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf"},"edfbuilder_workflow.applyEDFBuilder.setWorkDir":{style:{},title:"Set workdir to /tmp/rundir",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.setWorkDir"},"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo":{style:{},title:"Clone steps repo and checkout desired branch",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo"},"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues":{style:{},title:"Hydrate Stacks with values",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues"},"edfbuilder_workflow.applyEDFBuilder.createNamespaces":{style:{},title:"Create all required namespaces",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createNamespaces"},"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass":{style:{},title:"Create Admin Password for Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass"},"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass":{style:{},title:"Create Grafana Admin Password",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass"},"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD":{style:{},title:"Apply ServiceMonitor CRDs for Prometheus",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD"},"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart":{style:{},title:"Git clone ingress-nginx helm chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart"},"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx":{style:{},title:"Install ingress-nginx from cloned chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx"},"edfbuilder_workflow.applyEDFBuilder.waitForIngress":{style:{},title:"Wait till ingress-nginx is ready",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.waitForIngress"},"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm":{style:{},title:"Git clone ArgoCD Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm"},"edfbuilder_workflow.applyEDFBuilder.installArgoCD":{style:{},title:"Install ArgoCD Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installArgoCD"},"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress":{style:{},title:"Install ingress for ArgoCD",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress"},"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart":{style:{},title:"Git clone Forgejo Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart"},"edfbuilder_workflow.applyEDFBuilder.installForgejo":{style:{},title:"Install Forgejo Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installForgejo"},"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress":{style:{},title:"Install ingress for Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress"},"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD":{style:{},title:"Wait till ArgoCD is available",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD"},"edfbuilder_workflow.applyEDFBuilder.waitForForgejo":{style:{},title:"Wait till Forgejo is available",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.waitForForgejo"},"edfbuilder_workflow.applyEDFBuilder.createForgejoUser":{style:{},title:"Create technical user for Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createForgejoUser"},"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo":{style:{},title:"Create repository for EDP state in Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo"},"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner":{style:{},title:"Install Forgejo Runner deployment",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner"},"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner":{style:{},title:"Create registration token secret for runner",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner"},"edfbuilder_workflow.applyEDFBuilder.configGitIdentity":{style:{},title:"Configure Git identity",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configGitIdentity"},"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider":{style:{},title:"Configure Crossplane ArgoCD provider",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider"},"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider":{style:{},title:"Configure Crossplane Kind provider",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider"},"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo":{style:{},title:"Git push hydrated stacks to Forgejo isntance",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo"},"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry":{style:{},title:"Configure Docker Registry for Argo Workflows",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry"},"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser":{style:{},title:"Create packages user and token in Forgejo (unused?)",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser"},"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks":{style:{},title:"Apply all selected ArgoCD stacks",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks"},"edfbuilder_workflow.applyEDFBuilder.cleanup":{style:{},title:"Cleanup work folder and unset all env vars",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cleanup"},"edp.argoCD.argocdServer":{style:{},title:"ArgoCD Server",kind:"component",id:"edp.argoCD.argocdServer"},"edp.argoCD.argocdAppController":{style:{},title:"ApplicationController",kind:"component",id:"edp.argoCD.argocdAppController"},"edp.argoCD.argocdAppSetController":{style:{},title:"ApplicationSeetController",kind:"component",id:"edp.argoCD.argocdAppSetController"},"edp.argoCD.argocdRedis":{style:{icon:"tech:redis"},technology:"Redis",title:"Redis",kind:"component",id:"edp.argoCD.argocdRedis"},"edp.argoCD.argocdRepoServer":{style:{},title:"Repo Server",kind:"component",id:"edp.argoCD.argocdRepoServer"},"edp.ui.backstage":{style:{icon:"tech:react",shape:"browser"},title:"Backstage",kind:"component",id:"edp.ui.backstage"},"edp.ui.database":{style:{shape:"storage",icon:"tech:postgresql"},technology:"Postgresql",title:"Database",kind:"component",id:"edp.ui.database"},"edp.crossplane.crossplane":{style:{},title:"Crossplane",kind:"component",id:"edp.crossplane.crossplane"},"edp.crossplane.crossplaneFunction":{style:{},title:"Function Patch and Transform",kind:"component",id:"edp.crossplane.crossplaneFunction"},"edp.crossplane.crossplaneRbacManager":{style:{},title:"RBAC Manager",kind:"component",id:"edp.crossplane.crossplaneRbacManager"},"edp.crossplane.providerArgoCD":{style:{},title:"ArgoCD Provider",kind:"component",id:"edp.crossplane.providerArgoCD"},"edp.crossplane.providerKind":{style:{},title:"Kind Provider",kind:"component",id:"edp.crossplane.providerKind"},"edp.crossplane.providerShell":{style:{},title:"Shell Provider",kind:"component",id:"edp.crossplane.providerShell"},"edp.externalSecrets.externalSecrets":{style:{},title:"external-secrets controller",kind:"component",id:"edp.externalSecrets.externalSecrets"},"edp.externalSecrets.certController":{style:{},title:"cert-controller",kind:"component",id:"edp.externalSecrets.certController"},"edp.externalSecrets.webhook":{style:{},title:"webhook",kind:"component",id:"edp.externalSecrets.webhook"},"edp.forgejo.forgejocollaboration":{style:{icon:"tech:github"},title:"Collaboration",kind:"component",id:"edp.forgejo.forgejocollaboration"},"edp.forgejo.forgejoproject":{style:{icon:"tech:github"},title:"Project Mgmt",kind:"component",id:"edp.forgejo.forgejoproject"},"edp.garm.garm":{style:{icon:"tech:go"},description:{txt:"Provisions runners for Forgejo"},title:"Garm",kind:"component",id:"edp.garm.garm"},"edp.garm.providerEdgeConnect":{style:{icon:"tech:go"},description:{txt:"Acts as abstraction layer for EdgeConnect"},title:"Garm Provider for EdgeConnect",kind:"component",id:"edp.garm.providerEdgeConnect"},"edp.garm.providerKubernetes":{style:{icon:"tech:go"},description:{txt:"Acts as abstraction layer for Kubernetes"},title:"Garm Provider for Kubernetes",kind:"component",id:"edp.garm.providerKubernetes"},"edp.ingressNginx.ingressNginx":{style:{icon:"tech:nginx"},technology:"Nginx",title:"ingress-nginx",kind:"component",id:"edp.ingressNginx.ingressNginx"},"edp.keycloak.keycloak":{style:{icon:"tech:java"},technology:"Java",title:"Keycloak",kind:"component",id:"edp.keycloak.keycloak"},"edp.keycloak.keycloakDB":{style:{shape:"storage",icon:"tech:postgresql"},technology:"Postgresql",title:"Database",kind:"component",id:"edp.keycloak.keycloakDB"},"edp.mailhog.mailhog":{style:{icon:"tech:go"},technology:"Golang",title:"Mailhog",kind:"component",id:"edp.mailhog.mailhog"},"edp.minio.minio":{style:{shape:"storage"},technology:"Minio",title:"S3 Blob Storage",kind:"component",id:"edp.minio.minio"},"edp.monitoring.alloy":{style:{icon:"tech:grafana",multiple:!0},description:{txt:"Open Telemetry Collector"},title:"Alloy",kind:"component",id:"edp.monitoring.alloy"},"edp.monitoring.loki":{style:{opacity:20,icon:"tech:grafana"},description:{txt:"Log aggregation system"},title:"Loki",kind:"container",id:"edp.monitoring.loki"},"edp.openbao.openbao":{style:{shape:"storage"},technology:"Openbao",title:"Openbao",kind:"component",id:"edp.openbao.openbao"},"edp.openbao.agentInjector":{style:{},title:"Agent Injector",kind:"component",id:"edp.openbao.agentInjector"},"edp.spark.sparkoperator":{style:{icon:"tech:spark"},technology:"Spark",title:"Spark Operator",kind:"component",id:"edp.spark.sparkoperator"},"edp.velero.velero":{style:{},title:"Velero",kind:"component",id:"edp.velero.velero"},"edp.testApp.fibonacci":{style:{icon:"tech:go"},technology:"Golang",title:"Fibonacci",kind:"component",id:"edp.testApp.fibonacci"},"edp.monitoring.loki.queryFrontend":{style:{},title:"Query Frontend",kind:"component",id:"edp.monitoring.loki.queryFrontend"},"edp.monitoring.loki.distributor":{style:{},title:"Distributor",kind:"component",id:"edp.monitoring.loki.distributor"},"edp.monitoring.loki.gateway":{style:{},title:"Gateway",kind:"component",id:"edp.monitoring.loki.gateway"},"edp.monitoring.loki.ingestor":{style:{},title:"Ingestor",kind:"component",id:"edp.monitoring.loki.ingestor"},"edp.monitoring.loki.querier":{style:{},title:"Querier",kind:"component",id:"edp.monitoring.loki.querier"}},relations:{zgprrj:{title:"",source:{model:"edfbuilder_workflow.runEDP.createCrossplaneNS"},target:{model:"edfbuilder_workflow.runEDP.installCrossplaneHelm"},id:"zgprrj"},hkqe1q:{title:"",source:{model:"edfbuilder_workflow.runEDP.installCrossplaneHelm"},target:{model:"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders"},id:"hkqe1q"},"7hhs3w":{title:"",source:{model:"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders"},target:{model:"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders"},id:"7hhs3w"},xjeqlb:{title:"",source:{model:"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders"},target:{model:"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount"},id:"xjeqlb"},"1nhvr49":{title:"",source:{model:"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount"},target:{model:"edfbuilder_workflow.runEDP.createArgoCdNS"},id:"1nhvr49"},i203to:{title:"",source:{model:"edfbuilder_workflow.runEDP.createArgoCdNS"},target:{model:"edfbuilder_workflow.runEDP.createGiteaNS"},id:"i203to"},"1b9cczp":{title:"",source:{model:"edfbuilder_workflow.runEDP.createGiteaNS"},target:{model:"edfbuilder_workflow.runEDP.createArgoCdTlsCert"},id:"1b9cczp"},i514he:{title:"",source:{model:"edfbuilder_workflow.runEDP.createArgoCdTlsCert"},target:{model:"edfbuilder_workflow.runEDP.createGiteaTlsCert"},id:"i514he"},"13ashxq":{title:"",source:{model:"edfbuilder_workflow.runEDP.createGiteaTlsCert"},target:{model:"edfbuilder_workflow.runEDP.createEDFBuilderDefinition"},id:"13ashxq"},"14kigg4":{title:"",source:{model:"edfbuilder_workflow.runEDP.createEDFBuilderDefinition"},target:{model:"edfbuilder_workflow.runEDP.createEDFBuilderComposition"},id:"14kigg4"},"1y9fees":{title:"",source:{model:"edfbuilder_workflow.runEDP.createEDFBuilderComposition"},target:{model:"edfbuilder_workflow.applyEDFBuilder"},id:"1y9fees"},"1pfgmn3":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.setEnvVars"},target:{model:"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf"},id:"1pfgmn3"},"11gwuq3":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf"},target:{model:"edfbuilder_workflow.applyEDFBuilder.setWorkDir"},id:"11gwuq3"},"1ddvozk":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.setWorkDir"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo"},id:"1ddvozk"},c4bphp:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues"},id:"c4bphp"},"22u12c":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createNamespaces"},id:"22u12c"},"1veymj5":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createNamespaces"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass"},id:"1veymj5"},"1bx48yr":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass"},id:"1bx48yr"},pbq0ly:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass"},target:{model:"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD"},id:"pbq0ly"},"1tj029j":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart"},id:"1tj029j"},ukdpc6:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart"},target:{model:"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx"},id:"ukdpc6"},tm63b8:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx"},target:{model:"edfbuilder_workflow.applyEDFBuilder.waitForIngress"},id:"tm63b8"},mnqt5q:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.waitForIngress"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm"},id:"mnqt5q"},c3zfur:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCD"},id:"c3zfur"},"157ptzn":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCD"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress"},id:"157ptzn"},"8kcuka":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart"},id:"8kcuka"},"5sub2k":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejo"},id:"5sub2k"},z8qrfi:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress"},id:"z8qrfi"},"1dqe9ri":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress"},target:{model:"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD"},id:"1dqe9ri"},"12iu5vk":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD"},target:{model:"edfbuilder_workflow.applyEDFBuilder.waitForForgejo"},id:"12iu5vk"},"1xhuuis":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.waitForForgejo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoUser"},id:"1xhuuis"},vhezff:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoUser"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo"},id:"vhezff"},"1dow3tq":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner"},id:"1dow3tq"},"1k46mx8":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner"},target:{model:"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner"},id:"1k46mx8"},f5bybq:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configGitIdentity"},id:"f5bybq"},"8g1uqn":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configGitIdentity"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider"},id:"8g1uqn"},"9c504z":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider"},id:"9c504z"},"19gp6kf":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider"},target:{model:"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo"},id:"19gp6kf"},h55zvp:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry"},id:"h55zvp"},"1b7dj03":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser"},id:"1b7dj03"},"1bk65oi":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks"},id:"1bk65oi"},rsncrl:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cleanup"},id:"rsncrl"},"18dtot7":{title:"register",source:{model:"forgejoRunner"},target:{model:"edp.forgejoActions"},id:"18dtot7"},"1oxlsu0":{title:"boots one",source:{model:"edfbuilder"},target:{model:"edf"},id:"1oxlsu0"},s1l7g7:{title:"runs",source:{model:"platformdeveloper"},target:{model:"edfbuilder"},id:"s1l7g7"},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",source:{model:"developer"},target:{model:"localbox"},id:"5hkplj"},"1pp73vj":{title:"outer loop",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:"review / operate",source:{model:"otherProductLifecycleRoles"},target:{model:"edp"},id:"lb4xas"},"1g2ebwc":{title:"uses your app",source:{model:"customers"},target:{model:"cloud"},id:"1g2ebwc"},nc44l9:{title:"app specific dependencies",source:{model:"enterprise"},target:{model:"cloud"},id:"nc44l9"},xw0pne:{title:"provides documentation for",source:{model:"documentation"},target:{model:"edp"},id:"xw0pne"},"3sz3k3":{title:"creates and maintains documentation",source:{model:"platformdeveloper"},target:{model:"documentation"},id:"3sz3k3"},wsm3kf:{title:"builds many",source:{model:"edf"},target:{model:"edp"},id:"wsm3kf"},v8v12:{title:"develops EDP and EDF",source:{model:"platformdeveloper"},target:{model:"edf"},id:"v8v12"},"615gvx":{title:"integrates",source:{model:"edp"},target:{model:"enterprise"},id:"615gvx"},gerdx4:{title:"deploy & observe",source:{model:"edp"},target:{model:"cloud"},id:"gerdx4"},wvo8i:{title:"",source:{model:"edp"},target:{model:"localbox"},id:"wvo8i"},"1mp9fps":{title:"sync",source:{model:"localbox"},target:{model:"edp"},id:"1mp9fps"},"1abvxlh":{title:"company integration",source:{model:"localbox"},target:{model:"enterprise"},id:"1abvxlh"}},globals:{predicates:{},dynamicPredicates:{},styles:{text_large:[{targets:[{wildcard:!0}],style:{size:"xl"}}]}},views:{provider:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/edge/provider.c4",description:null,title:"Terraform Edge provider",id:"provider",autoLayout:{direction:"TB"},hash:"9f510e70e35a21871bc85c1a535584598e768d47",bounds:{x:0,y:0,width:1059,height:1265},nodes:[{id:"edgeProvider",parent:null,level:0,children:[],inEdges:[],outEdges:["u9omtf","r4j4sg","1xqlhup"],deploymentRef:"edgeProvider",title:"Terraform Edge provider",kind:"paas",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Unlocks the terraform ecosystem"},tags:[],style:{opacity:15,size:"md"},x:242,y:0,width:343,height:180,labelBBox:{x:46,y:63,width:282,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1xqlhup"],outEdges:["14pfq5a","lw6otg"],deploymentRef:"edgeSdk",title:"Edge Cloud SDK",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:go",description:{txt:"Wrapper around API"},tags:[],style:{opacity:15,size:"md"},x:86,y:347,width:320,height:180,labelBBox:{x:68,y:53,width:214,height:67}},{id:"edgeProviderHost",parent:null,level:0,children:["edgeProviderHost.terralist","edgeProviderHost.edp"],inEdges:["14pfq5a","u9omtf","r4j4sg"],outEdges:[],deploymentRef:"edgeProviderHost",title:"OTC",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:478,y:276,width:466,height:648,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edgeCloud",parent:null,level:0,children:["edgeCloud.edgeApi","edgeCloud.edgeResources"],inEdges:["lw6otg"],outEdges:[],deploymentRef:"edgeCloud",title:"Edge cloud",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8,y:623,width:420,height:634,labelBBox:{x:6,y:0,width:77,height:15}},{id:"edgeProviderHost.terralist",parent:"edgeProviderHost",level:1,children:[],inEdges:["r4j4sg"],outEdges:["c8rye7"],deploymentRef:"edgeProviderHost.terralist",title:"Terralist",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Terraform provider private hosting"},tags:[],style:{opacity:15,size:"md"},x:536,y:347,width:350,height:180,labelBBox:{x:46,y:53,width:288,height:67}},{id:"edgeCloud.edgeApi",parent:"edgeCloud",level:1,children:[],inEdges:["lw6otg"],outEdges:["1toht4t"],deploymentRef:"edgeCloud.edgeApi",title:"Edge Cloud API",kind:"paas",technology:"Edge Cloud (managed)",links:[{url:"https://swagger.edge.platform.mg3.mdb.osc.live",title:"Documentation"}],color:"primary",shape:"rectangle",icon:"tech:swagger",tags:[],style:{opacity:15,size:"md"},x:58,y:694,width:320,height:180,labelBBox:{x:73,y:64,width:204,height:46}},{id:"edgeProviderHost.edp",parent:"edgeProviderHost",level:1,children:[],inEdges:["c8rye7","14pfq5a","u9omtf"],outEdges:[],deploymentRef:"edgeProviderHost.edp",title:"Forgejo for all EDP-tenants",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:git",tags:[],style:{opacity:15,size:"md"},description:{txt:"edp.buildth.ing"},technology:"Golang",navigateTo:"forgejo",x:528,y:694,width:365,height:180,labelBBox:{x:46,y:53,width:304,height:67}},{id:"edgeCloud.edgeResources",parent:"edgeCloud",level:1,children:[],inEdges:["1toht4t"],outEdges:[],deploymentRef:"edgeCloud.edgeResources",title:"Edge Cloud Resources",kind:"paas",technology:"Edge Cloud (managed)",color:"primary",shape:"rectangle",description:{txt:"App, AppInstance, etc."},tags:[],style:{opacity:15,size:"md"},x:58,y:1027,width:320,height:180,labelBBox:{x:55,y:53,width:210,height:67}}],edges:[{id:"1toht4t",source:"edgeCloud.edgeApi",target:"edgeCloud.edgeResources",label:"creates/destroys",points:[[218,874],[218,918],[218,971],[218,1016]],labelBBox:{x:219,y:939,width:107,height:18},parent:"edgeCloud",relations:["rr0lcz"],color:"gray",line:"dashed",head:"normal"},{id:"c8rye7",source:"edgeProviderHost.terralist",target:"edgeProviderHost.edp",label:"authenticates via",points:[[711,527],[711,575],[711,634],[711,684]],labelBBox:{x:712,y:592,width:109,height:18},parent:"edgeProviderHost",relations:["1q6ftvm"],color:"gray",line:"dashed",head:"normal"},{id:"14pfq5a",source:"edgeSdk",target:"edgeProviderHost.edp",label:"hosted on",points:[[366,527],[432,576],[515,638],[583,688]],labelBBox:{x:480,y:592,width:66,height:18},parent:null,relations:["1sm6ifh"],color:"gray",line:"dashed",head:"normal"},{id:"lw6otg",source:"edgeSdk",target:"edgeCloud.edgeApi",label:"calls",points:[[239,527],[235,575],[230,634],[226,684]],labelBBox:{x:234,y:592,width:32,height:18},parent:null,relations:["vfhcba"],color:"gray",line:"dashed",head:"normal"},{id:"u9omtf",source:"edgeProvider",target:"edgeProviderHost.edp",label:"hosted on",points:[[585,100],[709,116],[869,160],[951,276],[1016,367],[992,423],[951,527],[927,588],[880,644],[834,687]],labelBBox:{x:992,y:425,width:66,height:18},parent:null,relations:["12ssq9"],color:"gray",line:"dashed",head:"normal"},{id:"r4j4sg",source:"edgeProvider",target:"edgeProviderHost.terralist",label:"published to",points:[[490,180],[532,229],[585,289],[628,339]],labelBBox:{x:564,y:245,width:80,height:18},parent:null,relations:["1mpjz5d"],color:"gray",line:"dashed",head:"normal"},{id:"1xqlhup",source:"edgeProvider",target:"edgeSdk",label:"built using",points:[[371,180],[347,228],[318,288],[294,338]],labelBBox:{x:336,y:245,width:67,height:18},parent:null,relations:["1wlvsb5"],color:"gray",line:"dashed",head:"normal"}]},index:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/kind/kind.c4",description:null,title:"Local Kind Deployment",id:"index",autoLayout:{direction:"TB"},hash:"09f216bdb503c31a28c16dff8a1c12da0a0c4cf1",bounds:{x:0,y:0,width:19320,height:1791},nodes:[{id:"otc-faas",parent:null,level:0,children:[],inEdges:[],outEdges:[],deploymentRef:"otc-faas",title:"OTC prototype FaaS",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:"OTC environments for Prototype FaaS."},tags:[],style:{opacity:15,size:"md"},x:0,y:150,width:320,height:180,labelBBox:{x:28,y:54,width:264,height:67}},{id:"edge",parent:null,level:0,children:[],inEdges:[],outEdges:[],deploymentRef:"edge",title:"Edge Cloud",kind:"cloud",technology:"Edge",color:"primary",shape:"rectangle",description:{txt:"Edge environments for distributed workloads."},tags:[],style:{opacity:15,size:"md"},x:450,y:150,width:340,height:180,labelBBox:{x:18,y:54,width:304,height:67}},{id:"edgeProvider",parent:null,level:0,children:[],inEdges:[],outEdges:["1xqlhup","u9omtf","r4j4sg"],deploymentRef:"edgeProvider",title:"Terraform Edge provider",kind:"paas",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Unlocks the terraform ecosystem"},tags:[],style:{opacity:15,size:"md"},x:920,y:150,width:343,height:180,labelBBox:{x:46,y:63,width:282,height:48}},{id:"edgeConnectEnv",parent:null,level:0,children:[],inEdges:["i6v3n"],outEdges:["1ogkmfn"],deploymentRef:"edgeConnectEnv",title:"Edge Connect",kind:"environment",technology:"Edge Connect Platform",color:"primary",shape:"rectangle",modelRef:"forgejoRunner",icon:"tech:docker",description:{txt:"Edge infrastructure for ephemeral runner deployment"},tags:[],style:{opacity:15,size:"md"},x:5425,y:150,width:347,height:180,labelBBox:{x:46,y:45,width:286,height:85}},{id:"otc-edpFoundry",parent:null,level:0,children:["otc-edpFoundry.forgejoRunnerInfrastructure","otc-edpFoundry.cce","otc-edpFoundry.workflowSetupEDPInfrastructure","otc-edpFoundry.workflowSetupArgoCDInfrastructure"],inEdges:["c2grk6","1ean8sr","l1c2z3"],outEdges:["r3wxut","1sng0q0","e3benz","9r557q","rivecr","1lrp92n"],deploymentRef:"otc-edpFoundry",title:"OTC EDP Foundry Central Service clusters",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:`OTC environments for the central EDP Foundry services. This is kubernetes clusters and other infrastructure like nodes and vms, and optionally platform services. All is set up by IaC terraform and edpbuilder. +and security scanning`},title:"Forgejo",kind:"container",id:"edp.forgejo"},"edp.forgejoActions":{style:{icon:"tech:go"},technology:"Golang",description:{txt:"Continuous Integration like Github Actions"},title:"Forgejo Actions",kind:"component",id:"edp.forgejoActions"},"edp.imageregistry":{style:{icon:"tech:go"},technology:"Golang",description:{txt:"Container Image Registry"},title:"Forgejo OCI Image Registry",kind:"component",id:"edp.imageregistry"},"edp.forgejogit":{style:{icon:"tech:git"},title:"ForgejoGit",kind:"component",id:"edp.forgejogit"},"edp.garm":{style:{opacity:20,icon:"tech:docker"},title:"Garm Image",kind:"container",id:"edp.garm"},"edp.grafana":{style:{opacity:20,icon:"tech:grafana"},description:{txt:"Data visualization and monitoring"},title:"Grafana",kind:"container",id:"edp.grafana"},"edp.ingressNginx":{style:{opacity:20},tags:["internal"],description:{txt:"Ingress Controller for incoming http(s) traffic"},title:"Ingress",kind:"container",id:"edp.ingressNginx"},"edp.keycloak":{style:{opacity:20},description:{txt:"Single Sign On for all EDP products"},title:"Keycloak",kind:"container",id:"edp.keycloak"},"edp.kyverno":{style:{opacity:20},tags:["internal"],description:{txt:"Policy-as-Code"},title:"Kyverno",kind:"container",id:"edp.kyverno"},"edp.loki":{style:{opacity:20},description:{txt:"Log aggregation system"},title:"Loki",kind:"container",id:"edp.loki"},"edp.mailhog":{style:{opacity:20},description:{txt:"Web and API based SMTP testing"},title:"Mailhog",kind:"container",id:"edp.mailhog"},"edp.minio":{style:{opacity:20},description:{txt:"S3 compatible blob storage"},title:"Minio",kind:"container",id:"edp.minio"},"edp.monitoring":{style:{opacity:20},description:{txt:"Observability system to monitor deployed components"},title:"Monitoring",kind:"container",id:"edp.monitoring"},"edp.openbao":{style:{opacity:20},description:{txt:"Secure secret storage"},title:"OpenBao",kind:"container",id:"edp.openbao"},"edp.prometheus":{style:{opacity:20,icon:"tech:prometheus"},description:{txt:"Monitoring and alerting toolkit"},title:"Prometheus",kind:"container",id:"edp.prometheus"},"edp.spark":{style:{opacity:20},tags:["internal"],description:{txt:"Allows running Spark applications on K8s"},title:"Spark",kind:"container",id:"edp.spark"},"edp.velero":{style:{opacity:20},tags:["internal"],description:{txt:"Backup Kubernetes resources"},title:"Velero",kind:"container",id:"edp.velero"},"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"},h84u7y:{title:"calls",source:{model:"edgeCli"},target:{model:"edgeConnect.api"},id:"h84u7y"},"1elpzvp":{title:"calls",source:{model:"edgeSdk"},target:{model:"edgeConnect.api"},id:"1elpzvp"},"6h5xnh":{title:"provisions via",source:{model:"edgeTerraformProvider"},target:{model:"edgeConnect.api"},id:"6h5xnh"},wx4vwc:{title:"creates/updates",source:{model:"edgeConnect.api"},target:{model:"edgeConnect.resources"},id:"wx4vwc"},qufboq:{title:"reconciles",source:{model:"edgeConnect.controllers"},target:{model:"edgeConnect.resources"},id:"qufboq"},"1a9x5zg":{title:"deploys",source:{model:"edgeConnect.controllers"},target:{model:"edgeConnect.runtime"},id:"1a9x5zg"},"1pbc22f":{title:"runs workflows",source:{model:"edp.forgejoActions"},target:{model:"forgejoRunner"},id:"1pbc22f"},"1olxwwi":{title:"calls binary",source:{model:"edp.garm.garm"},target:{model:"edp.garm.providerEdgeConnect"},id:"1olxwwi"},iu7wve:{title:"calls binary",source:{model:"edp.garm.garm"},target:{model:"edp.garm.providerKubernetes"},id:"iu7wve"},"13uvtiq":{title:"get metrics and alerts",source:{model:"edp.grafana"},target:{model:"edp.prometheus"},id:"13uvtiq"},"1n1utzc":{title:"get logs",source:{model:"edp.grafana"},target:{model:"edp.loki"},id:"1n1utzc"},"123efwn":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.forgejo"},id:"123efwn"},h3rut2:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.keycloak.keycloak"},id:"h3rut2"},"1p30hav":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.openbao.openbao"},id:"1p30hav"},"1yssos5":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.argoCD.argocdServer"},id:"1yssos5"},v8c8aq:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.ui.backstage"},id:"v8c8aq"},fe65w2:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.minio.minio"},id:"fe65w2"},"1jvab2g":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.monitoring.alloy"},id:"1jvab2g"},fs60l7:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.monitoring.loki.queryFrontend"},id:"fs60l7"},"1i5f8um":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.testApp.fibonacci"},id:"1i5f8um"},ofdedh:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.mailhog.mailhog"},id:"ofdedh"},"18zxrhs":{title:"reads/writes",source:{model:"edp.keycloak.keycloak"},target:{model:"edp.keycloak.keycloakDB"},id:"18zxrhs"},"11ollyi":{title:"pushes logs",source:{model:"edp.monitoring.alloy"},target:{model:"edp.monitoring.loki.distributor"},id:"11ollyi"},"1mazt1x":{title:"store backups",source:{model:"edp.velero.velero"},target:{model:"edp.minio.minio"},id:"1mazt1x"},"5hkplj":{title:"inner loop",source:{model:"developer"},target:{model:"localbox"},id:"5hkplj"},"1pp73vj":{title:"outer loop",source:{model:"developer"},target:{model:"edp"},id:"1pp73vj"},"3rnruw":{title:"uses",source:{model:"developer"},target:{model:"edgeCli"},id:"3rnruw"},"1ks7amr":{title:"uses",source:{model:"developer"},target:{model:"edgeSdk"},id:"1ks7amr"},"1l0aei7":{title:"uses",source:{model:"developer"},target:{model:"edgeTerraformProvider"},id:"1l0aei7"},nb1ag9:{title:"manages project",source:{model:"developer"},target:{model:"edp.ui"},id:"nb1ag9"},"14tsadm":{title:"manages code",source:{model:"developer"},target:{model:"edp.forgejo"},id:"14tsadm"},"129xciy":{title:"authenticates",source:{model:"developer"},target:{model:"edp.keycloak"},id:"129xciy"},"1l7h8as":{title:"manages deployments",source:{model:"developer"},target:{model:"edp.argoCD"},id:"1l7h8as"},dol85h:{title:"monitors",source:{model:"developer"},target:{model:"edp.grafana"},id:"dol85h"},"65iq0s":{title:"create and maintain apps",source:{model:"developer"},target:{model:"edp.ui.backstage"},id:"65iq0s"},u2ppde:{title:"pushes and pull images",source:{model:"developer"},target:{model:"edp.imageregistry"},id:"u2ppde"},"1dgd663":{title:"uses API",source:{model:"developer"},target:{model:"edp.api"},id:"1dgd663"},"1k2mvqc":{title:"uses git",source:{model:"developer"},target:{model:"edp.forgejogit"},id:"1k2mvqc"},"4pplfw":{title:"operates",source:{model:"platformdeveloper"},target:{model:"edgeConnect"},id:"4pplfw"},lb4xas:{title:"review / operate",source:{model:"otherProductLifecycleRoles"},target:{model:"edp"},id:"lb4xas"},"1g2ebwc":{title:"uses your app",source:{model:"customers"},target:{model:"cloud"},id:"1g2ebwc"},nc44l9:{title:"app specific dependencies",source:{model:"enterprise"},target:{model:"cloud"},id:"nc44l9"},xw0pne:{title:"provides documentation for",source:{model:"documentation"},target:{model:"edp"},id:"xw0pne"},"3sz3k3":{title:"creates and maintains documentation",source:{model:"platformdeveloper"},target:{model:"documentation"},id:"3sz3k3"},wsm3kf:{title:"builds many",source:{model:"edf"},target:{model:"edp"},id:"wsm3kf"},v8v12:{title:"develops EDP and EDF",source:{model:"platformdeveloper"},target:{model:"edf"},id:"v8v12"},"615gvx":{title:"integrates",source:{model:"edp"},target:{model:"enterprise"},id:"615gvx"},gerdx4:{title:"deploy & observe",source:{model:"edp"},target:{model:"cloud"},id:"gerdx4"},"1t93kj2":{title:"automates",source:{model:"edp"},target:{model:"edgeTerraformProvider"},id:"1t93kj2"},"96ogr7":{title:"",source:{model:"edp"},target:{model:"localbox"},id:"96ogr7"},"1mp9fps":{title:"sync",source:{model:"localbox"},target:{model:"edp"},id:"1mp9fps"},"1abvxlh":{title:"company integration",source:{model:"localbox"},target:{model:"enterprise"},id:"1abvxlh"}},globals:{predicates:{},dynamicPredicates:{},styles:{text_large:[{targets:[{wildcard:!0}],style:{size:"xl"}}]}},views:{provider:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/edge/provider.c4",description:null,title:"Terraform Edge provider",id:"provider",autoLayout:{direction:"TB"},hash:"9f510e70e35a21871bc85c1a535584598e768d47",bounds:{x:0,y:0,width:1059,height:1265},nodes:[{id:"edgeProvider",parent:null,level:0,children:[],inEdges:[],outEdges:["u9omtf","r4j4sg","1xqlhup"],deploymentRef:"edgeProvider",title:"Terraform Edge provider",kind:"paas",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Unlocks the terraform ecosystem"},tags:[],style:{opacity:15,size:"md"},x:242,y:0,width:343,height:180,labelBBox:{x:46,y:63,width:282,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1xqlhup"],outEdges:["14pfq5a","lw6otg"],deploymentRef:"edgeSdk",title:"Edge Cloud SDK",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:go",description:{txt:"Wrapper around API"},tags:[],style:{opacity:15,size:"md"},x:86,y:347,width:320,height:180,labelBBox:{x:68,y:53,width:214,height:67}},{id:"edgeProviderHost",parent:null,level:0,children:["edgeProviderHost.terralist","edgeProviderHost.edp"],inEdges:["14pfq5a","u9omtf","r4j4sg"],outEdges:[],deploymentRef:"edgeProviderHost",title:"OTC",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:478,y:276,width:466,height:648,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edgeCloud",parent:null,level:0,children:["edgeCloud.edgeApi","edgeCloud.edgeResources"],inEdges:["lw6otg"],outEdges:[],deploymentRef:"edgeCloud",title:"Edge cloud",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8,y:623,width:420,height:634,labelBBox:{x:6,y:0,width:77,height:15}},{id:"edgeProviderHost.terralist",parent:"edgeProviderHost",level:1,children:[],inEdges:["r4j4sg"],outEdges:["c8rye7"],deploymentRef:"edgeProviderHost.terralist",title:"Terralist",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Terraform provider private hosting"},tags:[],style:{opacity:15,size:"md"},x:536,y:347,width:350,height:180,labelBBox:{x:46,y:53,width:288,height:67}},{id:"edgeCloud.edgeApi",parent:"edgeCloud",level:1,children:[],inEdges:["lw6otg"],outEdges:["1toht4t"],deploymentRef:"edgeCloud.edgeApi",title:"Edge Cloud API",kind:"paas",technology:"Edge Cloud (managed)",links:[{url:"https://swagger.edge.platform.mg3.mdb.osc.live",title:"Documentation"}],color:"primary",shape:"rectangle",icon:"tech:swagger",tags:[],style:{opacity:15,size:"md"},x:58,y:694,width:320,height:180,labelBBox:{x:73,y:64,width:204,height:46}},{id:"edgeProviderHost.edp",parent:"edgeProviderHost",level:1,children:[],inEdges:["c8rye7","14pfq5a","u9omtf"],outEdges:[],deploymentRef:"edgeProviderHost.edp",title:"Forgejo for all EDP-tenants",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:git",tags:[],style:{opacity:15,size:"md"},description:{txt:"edp.buildth.ing"},technology:"Golang",navigateTo:"forgejo",x:528,y:694,width:365,height:180,labelBBox:{x:46,y:53,width:304,height:67}},{id:"edgeCloud.edgeResources",parent:"edgeCloud",level:1,children:[],inEdges:["1toht4t"],outEdges:[],deploymentRef:"edgeCloud.edgeResources",title:"Edge Cloud Resources",kind:"paas",technology:"Edge Cloud (managed)",color:"primary",shape:"rectangle",description:{txt:"App, AppInstance, etc."},tags:[],style:{opacity:15,size:"md"},x:58,y:1027,width:320,height:180,labelBBox:{x:55,y:53,width:210,height:67}}],edges:[{id:"1toht4t",source:"edgeCloud.edgeApi",target:"edgeCloud.edgeResources",label:"creates/destroys",points:[[218,874],[218,918],[218,971],[218,1016]],labelBBox:{x:219,y:939,width:107,height:18},parent:"edgeCloud",relations:["rr0lcz"],color:"gray",line:"dashed",head:"normal"},{id:"c8rye7",source:"edgeProviderHost.terralist",target:"edgeProviderHost.edp",label:"authenticates via",points:[[711,527],[711,575],[711,634],[711,684]],labelBBox:{x:712,y:592,width:109,height:18},parent:"edgeProviderHost",relations:["1q6ftvm"],color:"gray",line:"dashed",head:"normal"},{id:"14pfq5a",source:"edgeSdk",target:"edgeProviderHost.edp",label:"hosted on",points:[[366,527],[432,576],[515,638],[583,688]],labelBBox:{x:480,y:592,width:66,height:18},parent:null,relations:["1sm6ifh"],color:"gray",line:"dashed",head:"normal"},{id:"lw6otg",source:"edgeSdk",target:"edgeCloud.edgeApi",label:"calls",points:[[239,527],[235,575],[230,634],[226,684]],labelBBox:{x:234,y:592,width:32,height:18},parent:null,relations:["vfhcba"],color:"gray",line:"dashed",head:"normal"},{id:"u9omtf",source:"edgeProvider",target:"edgeProviderHost.edp",label:"hosted on",points:[[585,100],[709,116],[869,160],[951,276],[1016,367],[992,423],[951,527],[927,588],[880,644],[834,687]],labelBBox:{x:992,y:425,width:66,height:18},parent:null,relations:["12ssq9"],color:"gray",line:"dashed",head:"normal"},{id:"r4j4sg",source:"edgeProvider",target:"edgeProviderHost.terralist",label:"published to",points:[[490,180],[532,229],[585,289],[628,339]],labelBBox:{x:564,y:245,width:80,height:18},parent:null,relations:["1mpjz5d"],color:"gray",line:"dashed",head:"normal"},{id:"1xqlhup",source:"edgeProvider",target:"edgeSdk",label:"built using",points:[[371,180],[347,228],[318,288],[294,338]],labelBBox:{x:336,y:245,width:67,height:18},parent:null,relations:["1wlvsb5"],color:"gray",line:"dashed",head:"normal"}]},index:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/kind/kind.c4",description:null,title:"Local Kind Deployment",id:"index",autoLayout:{direction:"TB"},hash:"09f216bdb503c31a28c16dff8a1c12da0a0c4cf1",bounds:{x:0,y:0,width:19320,height:1791},nodes:[{id:"otc-faas",parent:null,level:0,children:[],inEdges:[],outEdges:[],deploymentRef:"otc-faas",title:"OTC prototype FaaS",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:"OTC environments for Prototype FaaS."},tags:[],style:{opacity:15,size:"md"},x:0,y:150,width:320,height:180,labelBBox:{x:28,y:54,width:264,height:67}},{id:"edge",parent:null,level:0,children:[],inEdges:[],outEdges:[],deploymentRef:"edge",title:"Edge Cloud",kind:"cloud",technology:"Edge",color:"primary",shape:"rectangle",description:{txt:"Edge environments for distributed workloads."},tags:[],style:{opacity:15,size:"md"},x:450,y:150,width:340,height:180,labelBBox:{x:18,y:54,width:304,height:67}},{id:"edgeProvider",parent:null,level:0,children:[],inEdges:[],outEdges:["1xqlhup","u9omtf","r4j4sg"],deploymentRef:"edgeProvider",title:"Terraform Edge provider",kind:"paas",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Unlocks the terraform ecosystem"},tags:[],style:{opacity:15,size:"md"},x:920,y:150,width:343,height:180,labelBBox:{x:46,y:63,width:282,height:48}},{id:"edgeConnectEnv",parent:null,level:0,children:[],inEdges:["i6v3n"],outEdges:["1ogkmfn"],deploymentRef:"edgeConnectEnv",title:"Edge Connect",kind:"environment",technology:"Edge Connect Platform",color:"primary",shape:"rectangle",modelRef:"forgejoRunner",icon:"tech:docker",description:{txt:"Edge infrastructure for ephemeral runner deployment"},tags:[],style:{opacity:15,size:"md"},x:5425,y:150,width:347,height:180,labelBBox:{x:46,y:45,width:286,height:85}},{id:"otc-edpFoundry",parent:null,level:0,children:["otc-edpFoundry.forgejoRunnerInfrastructure","otc-edpFoundry.cce","otc-edpFoundry.workflowSetupEDPInfrastructure","otc-edpFoundry.workflowSetupArgoCDInfrastructure"],inEdges:["c2grk6","1ean8sr","l1c2z3"],outEdges:["r3wxut","1sng0q0","e3benz","9r557q","rivecr","1lrp92n"],deploymentRef:"otc-edpFoundry",title:"OTC EDP Foundry Central Service clusters",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:`OTC environments for the central EDP Foundry services. This is kubernetes clusters and other infrastructure like nodes and vms, and optionally platform services. All is set up by IaC terraform and edpbuilder. A tenant is a folder in Foundry-Config-Forgejo. On merge triggers reconciliation to EDP. Optionally we will have a WebUI/API/CLI`},tags:[],style:{opacity:15,size:"md"},depth:1,x:3577,y:79,width:870,height:995,labelBBox:{x:6,y:0,width:280,height:15}},{id:"otcTenantProd",parent:null,level:0,children:["otcTenantProd.otcTenantEdpBuildthing","otcTenantProd.otcTenantObservability","otcTenantProd.otcTenantCustomerA"],inEdges:[],outEdges:["1ypat9q","1oiku86"],deploymentRef:"otcTenantProd",title:"Prod - builth.ing",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:17522,y:79,width:870,height:648,labelBBox:{x:6,y:0,width:108,height:15}},{id:"local",parent:null,level:0,children:["local.ingressNginx","local.velero","local.crossplane","local.externalSecrets","local.monitoring","local.backstage","local.argocd","local.keycloak","local.openbao","local.fibonacci","local.mailhog","local.minio","local.gitea","local.spark.sparkoperator"],inEdges:["1m1lj8s"],outEdges:["se5brg"],deploymentRef:"local",title:"Local kind-cluster",kind:"environment",technology:"Kind",color:"primary",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"Local kind-cluster environment for EDP, typically run by edpbuilder"},tags:[],style:{opacity:15,size:"md"},depth:2,x:6508,y:8,width:10964,height:1449,labelBBox:{x:6,y:0,width:127,height:15}},{id:"local.ingressNginx",parent:"local",level:1,children:["local.ingressNginx.ingressNginx"],inEdges:[],outEdges:["15juth8","p2br4p","o229dq","2vnvvg","4ix58c","1hr2s5j","1nksp5g","m2japo","4drflo","ihlgsc"],deploymentRef:"local.ingressNginx",title:"ingress-nginx",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.ingressNginx.ingressNginx",tags:[],style:{opacity:15,size:"md"},depth:1,x:10434,y:444,width:384,height:265,labelBBox:{x:6,y:0,width:92,height:15}},{id:"local.velero",parent:"local",level:1,children:["local.velero.velero"],inEdges:[],outEdges:["3znaik"],deploymentRef:"local.velero",title:"velero",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.velero.velero",tags:[],style:{opacity:15,size:"md"},depth:1,x:12058,y:444,width:384,height:265,labelBBox:{x:6,y:0,width:49,height:15}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1xqlhup"],outEdges:["14pfq5a","lw6otg"],deploymentRef:"edgeSdk",title:"Edge Cloud SDK",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:go",description:{txt:"Wrapper around API"},tags:[],style:{opacity:15,size:"md"},x:731,y:497,width:320,height:180,labelBBox:{x:68,y:54,width:214,height:67}},{id:"otc-edpFoundry.forgejoRunnerInfrastructure",parent:"otc-edpFoundry",level:1,children:[],inEdges:["l1c2z3"],outEdges:["109g3jm","1lrp92n"],deploymentRef:"otc-edpFoundry.forgejoRunnerInfrastructure",title:"EDP ForgejoRunner infrastructure",kind:"computeressource",color:"primary",shape:"rectangle",modelRef:"forgejoRunner",description:{txt:"Infrastructure for Forgejo runners like pods, vms, lxds, etc"},tags:[],style:{opacity:15,size:"md"},technology:null,x:4055,y:150,width:342,height:180,labelBBox:{x:18,y:54,width:306,height:66}},{id:"otcTenantProd.otcTenantEdpBuildthing",parent:"otcTenantProd",level:1,children:[],inEdges:[],outEdges:["rj56uy","u7ohgi","1ypat9q","1oiku86"],deploymentRef:"otcTenantProd.otcTenantEdpBuildthing",title:"edp.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Primary Instance"},tags:[],style:{opacity:15,size:"md"},x:18022,y:150,width:320,height:180,labelBBox:{x:85,y:63,width:181,height:48}},{id:"local.crossplane",parent:"local",level:1,children:["local.crossplane.crossplane","local.crossplane.crossplaneFunction","local.crossplane.crossplaneRbacManager","local.crossplane.providerArgoCD","local.crossplane.providerKind","local.crossplane.providerShell"],inEdges:[],outEdges:[],deploymentRef:"local.crossplane",title:"crossplane-system",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:12982,y:79,width:2670,height:301,labelBBox:{x:6,y:0,width:129,height:15}},{id:"local.crossplane.crossplane",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Crossplane",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.crossplane",modelRef:"edp.crossplane.crossplane",x:13032,y:150,width:320,height:180,labelBBox:{x:107,y:74,width:105,height:24}},{id:"local.crossplane.crossplaneFunction",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Function Patch and Transform",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.crossplaneFunction",modelRef:"edp.crossplane.crossplaneFunction",x:13482,y:150,width:320,height:180,labelBBox:{x:24,y:74,width:273,height:24}},{id:"local.crossplane.crossplaneRbacManager",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"RBAC Manager",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.crossplaneRbacManager",modelRef:"edp.crossplane.crossplaneRbacManager",x:13932,y:150,width:320,height:180,labelBBox:{x:88,y:74,width:144,height:24}},{id:"local.crossplane.providerArgoCD",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"ArgoCD Provider",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.providerArgoCD",modelRef:"edp.crossplane.providerArgoCD",x:14382,y:150,width:320,height:180,labelBBox:{x:82,y:74,width:155,height:24}},{id:"local.crossplane.providerKind",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Kind Provider",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.providerKind",modelRef:"edp.crossplane.providerKind",x:14832,y:150,width:320,height:180,labelBBox:{x:98,y:74,width:124,height:24}},{id:"local.crossplane.providerShell",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Shell Provider",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.providerShell",modelRef:"edp.crossplane.providerShell",x:15282,y:150,width:320,height:180,labelBBox:{x:96,y:74,width:129,height:24}},{id:"local.externalSecrets",parent:"local",level:1,children:["local.externalSecrets.certController","local.externalSecrets.externalSecrets","local.externalSecrets.webhook"],inEdges:[],outEdges:[],deploymentRef:"local.externalSecrets",title:"external-secrets",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:15702,y:79,width:1320,height:301,labelBBox:{x:6,y:0,width:119,height:15}},{id:"local.externalSecrets.certController",parent:"local.externalSecrets",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"cert-controller",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.externalSecrets.certController",modelRef:"edp.externalSecrets.certController",x:15752,y:150,width:320,height:180,labelBBox:{x:97,y:74,width:126,height:24}},{id:"local.externalSecrets.externalSecrets",parent:"local.externalSecrets",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"external-secrets controller",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.externalSecrets.externalSecrets",modelRef:"edp.externalSecrets.externalSecrets",x:16202,y:150,width:320,height:180,labelBBox:{x:43,y:74,width:234,height:24}},{id:"local.externalSecrets.webhook",parent:"local.externalSecrets",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"webhook",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.externalSecrets.webhook",modelRef:"edp.externalSecrets.webhook",x:16652,y:150,width:320,height:180,labelBBox:{x:118,y:74,width:84,height:24}},{id:"local.monitoring",parent:"local",level:1,children:["local.monitoring.gateway","local.monitoring.ingestor","local.monitoring.querier","local.monitoring.alloy","local.monitoring.queryFrontend","local.monitoring.distributor"],inEdges:["1hr2s5j","1nksp5g"],outEdges:[],deploymentRef:"local.monitoring",title:"monitoring",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:7028,y:79,width:1320,height:1328,labelBBox:{x:6,y:0,width:75,height:15}},{id:"local.monitoring.gateway",parent:"local.monitoring",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Gateway",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.gateway",modelRef:"edp.monitoring.loki.gateway",x:7078,y:150,width:320,height:180,labelBBox:{x:119,y:74,width:83,height:24}},{id:"local.monitoring.ingestor",parent:"local.monitoring",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Ingestor",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.ingestor",modelRef:"edp.monitoring.loki.ingestor",x:7528,y:150,width:320,height:180,labelBBox:{x:122,y:74,width:76,height:24}},{id:"local.monitoring.querier",parent:"local.monitoring",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Querier",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.querier",modelRef:"edp.monitoring.loki.querier",x:7978,y:150,width:320,height:180,labelBBox:{x:125,y:74,width:71,height:24}},{id:"local.ingressNginx.ingressNginx",parent:"local.ingressNginx",level:2,children:[],inEdges:[],outEdges:["15juth8","p2br4p","o229dq","2vnvvg","4ix58c","1hr2s5j","1nksp5g","m2japo","4drflo","ihlgsc"],kind:"instance",title:"ingress-nginx",technology:"Nginx",tags:[],icon:"tech:nginx",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.ingressNginx.ingressNginx",modelRef:"edp.ingressNginx.ingressNginx",x:10466,y:497,width:320,height:180,labelBBox:{x:85,y:65,width:181,height:45}},{id:"local.velero.velero",parent:"local.velero",level:2,children:[],inEdges:[],outEdges:["3znaik"],kind:"instance",title:"Velero",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.velero.velero",modelRef:"edp.velero.velero",x:12090,y:497,width:320,height:180,labelBBox:{x:129,y:74,width:62,height:24}},{id:"edgeProviderHost",parent:null,level:0,children:["edgeProviderHost.terralist","edgeProviderHost.edp"],inEdges:["u9omtf","r4j4sg","14pfq5a"],outEdges:[],deploymentRef:"edgeProviderHost",title:"OTC",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:1123,y:426,width:466,height:648,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edgeCloud",parent:null,level:0,children:["edgeCloud.edgeApi","edgeCloud.edgeResources"],inEdges:["lw6otg"],outEdges:[],deploymentRef:"edgeCloud",title:"Edge cloud",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:653,y:773,width:420,height:634,labelBBox:{x:6,y:0,width:77,height:15}},{id:"otc-edpFoundry.cce",parent:"otc-edpFoundry",level:1,children:[],inEdges:["109g3jm"],outEdges:["llfvob","fil3na"],deploymentRef:"otc-edpFoundry.cce",title:"OTC CCE",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"OTC Container Cluster Engine"},tags:[],style:{opacity:15,size:"md"},x:4062,y:497,width:327,height:180,labelBBox:{x:46,y:54,width:266,height:67}},{id:"otcTenantProd.otcTenantObservability",parent:"otcTenantProd",level:1,children:[],inEdges:["rj56uy"],outEdges:[],deploymentRef:"otcTenantProd.otcTenantObservability",title:"observability.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Observability Instance"},tags:[],style:{opacity:15,size:"md"},x:17572,y:497,width:320,height:180,labelBBox:{x:46,y:63,width:258,height:48}},{id:"otcTenantProd.otcTenantCustomerA",parent:"otcTenantProd",level:1,children:[],inEdges:["u7ohgi"],outEdges:[],deploymentRef:"otcTenantProd.otcTenantCustomerA",title:"customer-a.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Customer Instance"},tags:[],style:{opacity:15,size:"md"},x:18022,y:497,width:320,height:180,labelBBox:{x:51,y:63,width:248,height:48}},{id:"otcTenantNonProd",parent:null,level:0,children:["otcTenantNonProd.otcTenantDev1","otcTenantNonProd.otcTenantTestX"],inEdges:["1ypat9q","1oiku86"],outEdges:[],deploymentRef:"otcTenantNonProd",title:"Non-Prod - t09.de",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:18442,y:426,width:870,height:301,labelBBox:{x:6,y:0,width:111,height:15}},{id:"local.backstage",parent:"local",level:1,children:["local.backstage.backstage","local.backstage.database"],inEdges:["15juth8"],outEdges:[],deploymentRef:"local.backstage",title:"backstage",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8398,y:773,width:420,height:634,labelBBox:{x:6,y:0,width:74,height:15}},{id:"local.argocd",parent:"local",level:1,children:["local.argocd.argocdAppController","local.argocd.argocdAppSetController","local.argocd.argocdRepoServer","local.argocd.argocdServer","local.argocd.argocdRedis"],inEdges:["p2br4p"],outEdges:[],deploymentRef:"local.argocd",title:"argocd",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8868,y:773,width:1770,height:634,labelBBox:{x:6,y:0,width:53,height:15}},{id:"local.keycloak",parent:"local",level:1,children:["local.keycloak.keycloak","local.keycloak.keycloakDB"],inEdges:["2vnvvg"],outEdges:[],deploymentRef:"local.keycloak",title:"keycloak",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:10688,y:773,width:420,height:634,labelBBox:{x:6,y:0,width:66,height:15}},{id:"local.openbao",parent:"local",level:1,children:["local.openbao.openbao","local.openbao.agentInjector"],inEdges:["m2japo"],outEdges:[],deploymentRef:"local.openbao",title:"openbao",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:6558,y:79,width:420,height:995,labelBBox:{x:6,y:0,width:60,height:15}},{id:"local.fibonacci",parent:"local",level:1,children:["local.fibonacci.fibonacci"],inEdges:["4drflo"],outEdges:[],deploymentRef:"local.fibonacci",title:"fibonacci-app",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.testApp.fibonacci",tags:[],style:{opacity:15,size:"md"},depth:1,x:11158,y:791,width:384,height:265,labelBBox:{x:6,y:0,width:91,height:15}},{id:"local.mailhog",parent:"local",level:1,children:["local.mailhog.mailhog"],inEdges:["ihlgsc"],outEdges:[],deploymentRef:"local.mailhog",title:"mailhog",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.mailhog.mailhog",tags:[],style:{opacity:15,size:"md"},depth:1,x:11608,y:791,width:384,height:265,labelBBox:{x:6,y:0,width:56,height:15}},{id:"local.minio",parent:"local",level:1,children:["local.minio.minio"],inEdges:["3znaik","4ix58c"],outEdges:[],deploymentRef:"local.minio",title:"minio-backup",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.minio.minio",tags:[],style:{opacity:15,size:"md"},depth:1,x:12058,y:791,width:384,height:265,labelBBox:{x:6,y:0,width:86,height:15}},{id:"edgeProviderHost.terralist",parent:"edgeProviderHost",level:1,children:[],inEdges:["r4j4sg"],outEdges:["c8rye7"],deploymentRef:"edgeProviderHost.terralist",title:"Terralist",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Terraform provider private hosting"},tags:[],style:{opacity:15,size:"md"},x:1181,y:497,width:350,height:180,labelBBox:{x:46,y:54,width:288,height:67}},{id:"edgeCloud.edgeApi",parent:"edgeCloud",level:1,children:[],inEdges:["lw6otg"],outEdges:["1toht4t"],deploymentRef:"edgeCloud.edgeApi",title:"Edge Cloud API",kind:"paas",technology:"Edge Cloud (managed)",links:[{url:"https://swagger.edge.platform.mg3.mdb.osc.live",title:"Documentation"}],color:"primary",shape:"rectangle",icon:"tech:swagger",tags:[],style:{opacity:15,size:"md"},x:703,y:844,width:320,height:180,labelBBox:{x:73,y:65,width:204,height:45}},{id:"otc-edpFoundry.workflowSetupEDPInfrastructure",parent:"otc-edpFoundry",level:1,children:[],inEdges:["llfvob","c2grk6"],outEdges:["r3wxut","e3benz","9r557q"],deploymentRef:"otc-edpFoundry.workflowSetupEDPInfrastructure",title:"EDP infrastructure Workflow",kind:"computeressource",color:"primary",shape:"rectangle",description:{txt:"EDP infrastructure Workflow"},tags:[],style:{opacity:15,size:"md"},x:3627,y:844,width:320,height:180,labelBBox:{x:32,y:63,width:255,height:48}},{id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",parent:"otc-edpFoundry",level:1,children:[],inEdges:["fil3na","1ean8sr"],outEdges:["1sng0q0","rivecr"],deploymentRef:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",title:"EDP ArgoCD Workflow",kind:"computeressource",color:"primary",shape:"rectangle",description:{txt:"EDP Setup ArgoCD Workflow"},tags:[],style:{opacity:15,size:"md"},x:4077,y:844,width:320,height:180,labelBBox:{x:55,y:63,width:210,height:48}},{id:"otcTenantNonProd.otcTenantDev1",parent:"otcTenantNonProd",level:1,children:[],inEdges:["1ypat9q"],outEdges:[],deploymentRef:"otcTenantNonProd.otcTenantDev1",title:"dev1.t09.de",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Development Instance"},tags:[],style:{opacity:15,size:"md"},x:18492,y:497,width:320,height:180,labelBBox:{x:69,y:63,width:212,height:48}},{id:"otcTenantNonProd.otcTenantTestX",parent:"otcTenantNonProd",level:1,children:[],inEdges:["1oiku86"],outEdges:[],deploymentRef:"otcTenantNonProd.otcTenantTestX",title:"test-x.t09.de",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Testing Instance"},tags:[],style:{opacity:15,size:"md"},x:18942,y:497,width:320,height:180,labelBBox:{x:89,y:63,width:172,height:48}},{id:"local.backstage.backstage",parent:"local.backstage",level:2,children:[],inEdges:["15juth8"],outEdges:["19kg5y"],kind:"instance",title:"Backstage",tags:[],icon:"tech:react",color:"primary",shape:"browser",style:{opacity:15,size:"md"},deploymentRef:"local.backstage.backstage",modelRef:"edp.ui.backstage",x:8448,y:844,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}},{id:"local.argocd.argocdAppController",parent:"local.argocd",level:2,children:[],inEdges:[],outEdges:["1gfgfhk"],kind:"instance",title:"ApplicationController",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdAppController",modelRef:"edp.argoCD.argocdAppController",x:8918,y:844,width:320,height:180,labelBBox:{x:66,y:74,width:189,height:24}},{id:"local.argocd.argocdAppSetController",parent:"local.argocd",level:2,children:[],inEdges:[],outEdges:["qfu5xm"],kind:"instance",title:"ApplicationSeetController",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdAppSetController",modelRef:"edp.argoCD.argocdAppSetController",x:9368,y:844,width:320,height:180,labelBBox:{x:45,y:74,width:230,height:24}},{id:"local.argocd.argocdRepoServer",parent:"local.argocd",level:2,children:[],inEdges:[],outEdges:["g7xnzs"],kind:"instance",title:"Repo Server",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdRepoServer",modelRef:"edp.argoCD.argocdRepoServer",x:9818,y:844,width:320,height:180,labelBBox:{x:102,y:74,width:116,height:24}},{id:"local.argocd.argocdServer",parent:"local.argocd",level:2,children:[],inEdges:["p2br4p"],outEdges:["fon3rk"],kind:"instance",title:"ArgoCD Server",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdServer",modelRef:"edp.argoCD.argocdServer",x:10268,y:844,width:320,height:180,labelBBox:{x:90,y:74,width:140,height:24}},{id:"local.keycloak.keycloak",parent:"local.keycloak",level:2,children:[],inEdges:["2vnvvg"],outEdges:["4zwy1m"],kind:"instance",title:"Keycloak",technology:"Java",tags:[],icon:"tech:java",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.keycloak.keycloak",modelRef:"edp.keycloak.keycloak",x:10738,y:844,width:320,height:180,labelBBox:{x:104,y:65,width:143,height:45}},{id:"local.monitoring.alloy",parent:"local.monitoring",level:2,children:[],inEdges:["1hr2s5j"],outEdges:["sb2j38"],kind:"instance",title:"Alloy",description:{txt:"Open Telemetry Collector"},tags:[],icon:"tech:grafana",color:"primary",shape:"rectangle",style:{opacity:15,size:"md",multiple:!0},deploymentRef:"local.monitoring.alloy",modelRef:"edp.monitoring.alloy",x:7528,y:844,width:320,height:180,labelBBox:{x:59,y:63,width:233,height:48}},{id:"local.monitoring.queryFrontend",parent:"local.monitoring",level:2,children:[],inEdges:["1nksp5g"],outEdges:[],kind:"instance",title:"Query Frontend",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.queryFrontend",modelRef:"edp.monitoring.loki.queryFrontend",x:7978,y:844,width:320,height:180,labelBBox:{x:88,y:74,width:144,height:24}},{id:"local.openbao.openbao",parent:"local.openbao",level:2,children:[],inEdges:["m2japo"],outEdges:[],kind:"instance",title:"Openbao",technology:"Openbao",tags:[],color:"primary",shape:"storage",style:{opacity:15,size:"md"},deploymentRef:"local.openbao.openbao",modelRef:"edp.openbao.openbao",x:6608,y:844,width:320,height:180,labelBBox:{x:117,y:65,width:86,height:45}},{id:"local.openbao.agentInjector",parent:"local.openbao",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Agent Injector",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.openbao.agentInjector",modelRef:"edp.openbao.agentInjector",x:6608,y:150,width:320,height:180,labelBBox:{x:96,y:74,width:127,height:24}},{id:"local.fibonacci.fibonacci",parent:"local.fibonacci",level:2,children:[],inEdges:["4drflo"],outEdges:[],kind:"instance",title:"Fibonacci",technology:"Golang",tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.fibonacci.fibonacci",modelRef:"edp.testApp.fibonacci",x:11190,y:844,width:320,height:180,labelBBox:{x:101,y:65,width:148,height:45}},{id:"local.mailhog.mailhog",parent:"local.mailhog",level:2,children:[],inEdges:["ihlgsc"],outEdges:[],kind:"instance",title:"Mailhog",technology:"Golang",tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.mailhog.mailhog",modelRef:"edp.mailhog.mailhog",x:11640,y:844,width:320,height:180,labelBBox:{x:109,y:65,width:132,height:45}},{id:"local.minio.minio",parent:"local.minio",level:2,children:[],inEdges:["3znaik","4ix58c"],outEdges:[],kind:"instance",title:"S3 Blob Storage",technology:"Minio",tags:[],color:"primary",shape:"storage",style:{opacity:15,size:"md"},deploymentRef:"local.minio.minio",modelRef:"edp.minio.minio",x:12090,y:844,width:320,height:180,labelBBox:{x:85,y:65,width:150,height:45}},{id:"edgeProviderHost.edp",parent:"edgeProviderHost",level:1,children:[],inEdges:["u9omtf","14pfq5a","c8rye7"],outEdges:[],deploymentRef:"edgeProviderHost.edp",title:"Forgejo for all EDP-tenants",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:git",tags:[],style:{opacity:15,size:"md"},description:{txt:"edp.buildth.ing"},technology:"Golang",navigateTo:"forgejo",x:1173,y:844,width:365,height:180,labelBBox:{x:46,y:54,width:304,height:67}},{id:"edgeCloud.edgeResources",parent:"edgeCloud",level:1,children:[],inEdges:["1toht4t"],outEdges:[],deploymentRef:"edgeCloud.edgeResources",title:"Edge Cloud Resources",kind:"paas",technology:"Edge Cloud (managed)",color:"primary",shape:"rectangle",description:{txt:"App, AppInstance, etc."},tags:[],style:{opacity:15,size:"md"},x:703,y:1177,width:320,height:180,labelBBox:{x:55,y:53,width:210,height:68}},{id:"otc-edp-per-tenant",parent:null,level:0,children:["otc-edp-per-tenant.forgejoRunnerInfrastructure","otc-edp-per-tenant.cce","otc-edp-per-tenant.cloudServices"],inEdges:["r3wxut","1sng0q0","p2umm7","e3benz","126mt75"],outEdges:["b27cdb","1mbuxdd"],deploymentRef:"otc-edp-per-tenant",title:"OTC EDP per tenant cluster",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:`OTC environment for EDP. EDP is the environment a customer gets from us. @@ -259,11 +259,11 @@ It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness.`},technology:"PostgreSQL",tags:[],icon:"tech:postgresql",color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"otc-edp-per-tenant.cloudServices.postgres",modelRef:"postgres",x:1548,y:1706,width:354,height:180,labelBBox:{x:46,y:17,width:292,height:139}},{id:"otc-edp-per-tenant.cloudServices.redis",parent:"otc-edp-per-tenant.cloudServices",level:2,children:[],inEdges:["120qe5o"],outEdges:[],kind:"instance",title:"Redis",description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},technology:"Redis",tags:[],icon:"tech:redis",color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"otc-edp-per-tenant.cloudServices.redis",modelRef:"redis",x:608,y:1706,width:359,height:180,labelBBox:{x:47,y:26,width:297,height:121}},{id:"otc-edp-per-tenant.cloudServices.objectstorage",parent:"otc-edp-per-tenant.cloudServices",level:2,children:[],inEdges:["ealiax"],outEdges:[],kind:"instance",title:"s3 Object Storage",description:{txt:"s3 Object Storage"},technology:"S3 Object Storage",tags:[],color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"otc-edp-per-tenant.cloudServices.objectstorage",modelRef:"objectstorage",x:1098,y:1706,width:320,height:180,labelBBox:{x:78,y:53,width:164,height:67}},{id:"otc-edp-per-tenant.cloudServices.elasticsearch",parent:"otc-edp-per-tenant.cloudServices",level:2,children:[],inEdges:["1trj5u6"],outEdges:[],kind:"instance",title:"Elasticsearch",description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of addressing a growing number of use cases. It centrally stores your data so you can -discover the expected and uncover the unexpected.`},technology:"Elasticsearch",tags:[],icon:"tech:elasticsearch",color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"otc-edp-per-tenant.cloudServices.elasticsearch",modelRef:"elasticsearch",x:108,y:1706,width:370,height:180,labelBBox:{x:46,y:17,width:308,height:139}}],edges:[{id:"17kru01",source:"otc-edpFoundry.cce.internalServices.ingressNginx",target:"otc-edpFoundry.cce.internalServices.argoCD",label:"https",points:[[4054,1100],[3915,1148],[3708,1220],[3529,1287],[3511,1294],[3492,1301],[3474,1309]],labelBBox:{x:3755,y:1199,width:34,height:18},parent:"otc-edpFoundry.cce.internalServices",relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"170pc3l",source:"otc-edpFoundry.cce.internalServices.ingressNginx",target:"otc-edpFoundry.cce.internalServices.forgejo",label:"https",points:[[4214,1134],[4214,1178],[4214,1232],[4214,1277]],labelBBox:{x:4215,y:1199,width:34,height:18},parent:"otc-edpFoundry.cce.internalServices",relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"u5oqat",source:"otc-edpFoundry.cce.internalServices.ingressNginx",target:"otc-edpFoundry.cce.internalServices.openbao",label:"https",points:[[4090,1134],[4027,1180],[3950,1235],[3886,1282]],labelBBox:{x:3999,y:1199,width:34,height:18},parent:"otc-edpFoundry.cce.internalServices",relations:["1p30hav"],color:"gray",line:"dashed",head:"normal"},{id:"qykxlm",source:"otc-edpFoundry.cce.centralObservability.grafana",target:"otc-edpFoundry.cce.centralObservability.prometheus",label:"get metrics and alerts",points:[[3664,401],[3645,446],[3622,499],[3602,545]],labelBBox:{x:3636,y:466,width:138,height:18},parent:"otc-edpFoundry.cce.centralObservability",relations:["13uvtiq"],color:"gray",line:"dashed",head:"normal"},{id:"yv49z5",source:"otc-edpFoundry.cce.centralObservability.grafana",target:"otc-edpFoundry.cce.centralObservability.loki",label:"get logs",points:[[3785,401],[3827,446],[3877,501],[3920,547]],labelBBox:{x:3866,y:466,width:53,height:18},parent:"otc-edpFoundry.cce.centralObservability",relations:["1n1utzc"],color:"gray",line:"dashed",head:"normal"},{id:"84397w",source:"otc-edpFoundry.cce.internalServices.forgejo",target:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner",label:"invokes",points:[[4384,1359],[4590,1333],[4917,1279],[4991,1185],[5006,1165],[5006,601],[4987,554],[4964,499],[4922,448],[4880,408]],labelBBox:{x:5002,y:799,width:51,height:18},parent:"otc-edpFoundry",relations:["dola40"],color:"gray",line:"dashed",head:"normal"},{id:"1hnil62",source:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner",target:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker",label:"runs",points:[[4755,401],[4755,445],[4755,499],[4755,544]],labelBBox:{x:4756,y:466,width:31,height:18},parent:"otc-edpFoundry.workflowSetupEDPInfrastructure",relations:["7kqly3"],color:"gray",line:"dashed",head:"normal"},{id:"ekzztw",source:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker",target:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow",label:"executes",points:[[4755,734],[4755,797],[4755,880],[4755,944]],labelBBox:{x:4756,y:799,width:60,height:18},parent:"otc-edpFoundry.workflowSetupEDPInfrastructure",relations:["12hf1w4"],color:"gray",line:"dashed",head:"normal"},{id:"1oz2va9",source:"otc-edpFoundry.cce.internalServices.forgejo",target:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner",label:"invokes",points:[[4044,1309],[4022,1301],[4e3,1294],[3979,1287],[3850,1249],[3808,1275],[3684,1222],[3176,1006],[2655,594],[2433,408]],labelBBox:{x:2970,y:799,width:51,height:18},parent:"otc-edpFoundry",relations:["1f5y9gc"],color:"gray",line:"dashed",head:"normal"},{id:"1gtxobu",source:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner",target:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker",label:"runs",points:[[2323,401],[2323,445],[2323,499],[2323,544]],labelBBox:{x:2324,y:466,width:31,height:18},parent:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",relations:["hqie0"],color:"gray",line:"dashed",head:"normal"},{id:"b9ntr8",source:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker",target:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow",label:"executes",points:[[2323,734],[2323,797],[2323,880],[2323,944]],labelBBox:{x:2324,y:799,width:60,height:18},parent:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",relations:["1j16hqv"],color:"gray",line:"dashed",head:"normal"},{id:"628xl1",source:"otc-edpFoundry.forgejoRunnerInfrastructure.forgejoRunner",target:"otc-edpFoundry.cce.internalServices.forgejo",label:"registers",points:[[5231,401],[5255,597],[5278,1062],[4995,1222],[4808,1328],[4561,1362],[4395,1373]],labelBBox:{x:5232,y:799,width:58,height:18},parent:"otc-edpFoundry",relations:["1umzqdy"],color:"gray",line:"dashed",head:"normal"},{id:"ejqwjt",source:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow",target:"otc-edp-per-tenant.cce.edp.argoCD",label:null,points:[[2152,1115],[2090,1139],[2018,1165],[1952,1185],[1748,1245],[1688,1225],[1485,1287],[1467,1293],[1448,1299],[1430,1306]],labelBBox:null,parent:null,relations:["jde35l"],color:"gray",line:"dashed",head:"normal"},{id:"1ir70dd",source:"otc-edp-per-tenant.cce.edp.ingressNginx",target:"otc-edp-per-tenant.cce.edp.argoCD",label:"https",points:[[1260,1134],[1260,1178],[1260,1232],[1260,1277]],labelBBox:{x:1261,y:1199,width:34,height:18},parent:"otc-edp-per-tenant.cce.edp",relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"1kr1wg1",source:"otc-edp-per-tenant.cce.edp.ingressNginx",target:"otc-edp-per-tenant.cce.edp.forgejo",label:"https",points:[[1136,1134],[1073,1180],[996,1235],[932,1282]],labelBBox:{x:1045,y:1199,width:34,height:18},parent:"otc-edp-per-tenant.cce.edp",relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"1dcszi5",source:"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner",target:"otc-edp-per-tenant.cce.edp.forgejo",label:"registers",points:[[800,401],[800,598],[800,1070],[800,1277]],labelBBox:{x:801,y:799,width:58,height:18},parent:"otc-edp-per-tenant",relations:["g9oj4f"],color:"gray",line:"dashed",head:"normal"},{id:"8msu1q",source:"otc-edp-per-tenant.cce.edp.forgejo",target:"otc-edp-per-tenant.cloudServices.postgres",label:null,points:[[860,1467],[902,1521],[963,1586],[1035,1617],[1081,1638],[1436,1619],[1483,1634],[1527,1649],[1571,1674],[1610,1700]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["hks76r"],color:"gray",line:"dashed",head:"normal"},{id:"120qe5o",source:"otc-edp-per-tenant.cce.edp.forgejo",target:"otc-edp-per-tenant.cloudServices.redis",label:null,points:[[797,1467],[796,1534],[793,1626],[791,1695]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["1w18ve8"],color:"gray",line:"dashed",head:"normal"},{id:"ealiax",source:"otc-edp-per-tenant.cce.edp.forgejo",target:"otc-edp-per-tenant.cloudServices.objectstorage",label:null,points:[[882,1467],[926,1513],[982,1570],[1035,1617],[1066,1645],[1100,1673],[1132,1699]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["15njmlz"],color:"gray",line:"dashed",head:"normal"},{id:"1trj5u6",source:"otc-edp-per-tenant.cce.edp.forgejo",target:"otc-edp-per-tenant.cloudServices.elasticsearch",label:null,points:[[692,1467],[609,1535],[495,1629],[410,1699]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["1fzhjm9"],color:"gray",line:"dashed",head:"normal"},{id:"1asm38z",source:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow",target:"otc-edp-per-tenant.cloudServices",label:"deploys edp to otc.paas",points:[[4739,1134],[4709,1265],[4634,1506],[4466,1617],[4260,1754],[2590,1785],[1962,1793]],labelBBox:{x:3219,y:1730,width:152,height:18},parent:null,relations:["1pfc6bl"],color:"gray",line:"dashed",head:"normal"},{id:"1or831y",source:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow",target:"otc-edp-per-tenant.cce.edp",label:"deploys edp to otc.cce",points:[[4602,1134],[4559,1155],[4512,1174],[4466,1185],[4366,1208],[2714,1189],[2612,1200],[2377,1223],[2112,1279],[1930,1321]],labelBBox:{x:3117,y:1173,width:143,height:18},parent:null,relations:["uk77s5"],color:"gray",line:"dashed",head:"normal"}]},"otc-faas":{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/otc/otc-faas.c4",description:null,title:"OTC Prototype FaaS",id:"otc-faas",autoLayout:{direction:"TB"},hash:"e2904f0dec8c25765884ff1970493408959739a3",bounds:{x:0,y:0,width:2086,height:802},nodes:[{id:"otc-faas",parent:null,level:0,children:["otc-faas.dev","otc-faas.prod"],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"},depth:3,x:8,y:8,width:2070,height:786,labelBBox:{x:6,y:0,width:131,height:15}},{id:"otc-faas.dev",parent:"otc-faas",level:1,children:["otc-faas.dev.cce","otc-faas.dev.observability","otc-faas.dev.cloudServices"],inEdges:[],outEdges:[],deploymentRef:"otc-faas.dev",title:"tenant Dev",kind:"environment",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:"*.t09.de"},tags:[],style:{opacity:15,size:"md"},depth:2,x:58,y:79,width:972,height:665,labelBBox:{x:6,y:0,width:74,height:15}},{id:"otc-faas.dev.cce",parent:"otc-faas.dev",level:2,children:["otc-faas.dev.cce.edp"],inEdges:[],outEdges:["p747qx"],deploymentRef:"otc-faas.dev.cce",title:"Central Forgejo",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:kubernetes",description:{txt:"*.t09.de"},tags:[],style:{opacity:15,size:"md"},depth:1,navigateTo:"forgejo",x:108,y:150,width:454,height:266,labelBBox:{x:6,y:0,width:113,height:15}},{id:"otc-faas.dev.observability",parent:"otc-faas.dev",level:2,children:[],inEdges:[],outEdges:[],deploymentRef:"otc-faas.dev.observability",title:"Observability",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"*.t09.de"},tags:[],style:{opacity:15,size:"md"},x:660,y:204,width:320,height:180,labelBBox:{x:86,y:53,width:178,height:67}},{id:"otc-faas.prod",parent:"otc-faas",level:1,children:["otc-faas.prod.cce","otc-faas.prod.observability","otc-faas.prod.cloudServices"],inEdges:[],outEdges:[],deploymentRef:"otc-faas.prod",title:"Tenant Prod",kind:"environment",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:"*.buildth.ing"},tags:[],style:{opacity:15,size:"md"},depth:2,x:1080,y:79,width:948,height:665,labelBBox:{x:6,y:0,width:83,height:15}},{id:"otc-faas.prod.cce",parent:"otc-faas.prod",level:2,children:["otc-faas.prod.cce.edp"],inEdges:[],outEdges:["tb8sk9"],deploymentRef:"otc-faas.prod.cce",title:"Central Forgejo",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:kubernetes",description:{txt:"*.buildth.ing"},tags:[],style:{opacity:15,size:"md"},depth:1,navigateTo:"forgejo",x:1130,y:150,width:430,height:266,labelBBox:{x:6,y:0,width:113,height:15}},{id:"otc-faas.dev.cce.edp",parent:"otc-faas.dev.cce",level:3,children:[],inEdges:[],outEdges:["p747qx"],deploymentRef:"otc-faas.dev.cce.edp",title:"Forgejo Dev for platform team",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",description:{txt:"t09.de"},tags:[],style:{opacity:15,size:"md"},technology:"Golang",icon:"tech:go",navigateTo:"forgejo",x:140,y:204,width:389,height:180,labelBBox:{x:46,y:53,width:328,height:67}},{id:"otc-faas.prod.observability",parent:"otc-faas.prod",level:2,children:[],inEdges:[],outEdges:[],deploymentRef:"otc-faas.prod.observability",title:"Observability",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"*.buildth.ing"},tags:[],style:{opacity:15,size:"md"},x:1658,y:204,width:320,height:180,labelBBox:{x:86,y:53,width:178,height:67}},{id:"otc-faas.prod.cce.edp",parent:"otc-faas.prod.cce",level:3,children:[],inEdges:[],outEdges:["tb8sk9"],deploymentRef:"otc-faas.prod.cce.edp",title:"Forgejo for all EDP-tenants",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",tags:[],style:{opacity:15,size:"md"},description:{txt:"buildth.ing"},technology:"Golang",icon:"tech:go",navigateTo:"forgejo",x:1162,y:204,width:365,height:180,labelBBox:{x:46,y:53,width:304,height:67}},{id:"otc-faas.dev.cloudServices",parent:"otc-faas.dev",level:2,children:[],inEdges:["p747qx"],outEdges:[],deploymentRef:"otc-faas.dev.cloudServices",title:"EDP Cloud Services",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",description:{txt:"EDP Cloud Services (Postgres, Redis, etc.)"},tags:[],style:{opacity:15,size:"md"},x:171,y:514,width:328,height:180,labelBBox:{x:18,y:53,width:292,height:67}},{id:"otc-faas.prod.cloudServices",parent:"otc-faas.prod",level:2,children:[],inEdges:["tb8sk9"],outEdges:[],deploymentRef:"otc-faas.prod.cloudServices",title:"EDP Cloud Services",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",description:{txt:"EDP Cloud Services (Postgres, Redis, etc.)"},tags:[],style:{opacity:15,size:"md"},x:1181,y:514,width:328,height:180,labelBBox:{x:18,y:53,width:292,height:67}}],edges:[{id:"p747qx",source:"otc-faas.dev.cce.edp",target:"otc-faas.dev.cloudServices",label:null,points:[[335,383],[335,421],[335,465],[335,504]],labelBBox:null,parent:"otc-faas.dev",relations:["dz2rdn"],color:"gray",line:"dashed",head:"normal"},{id:"tb8sk9",source:"otc-faas.prod.cce.edp",target:"otc-faas.prod.cloudServices",label:null,points:[[1345,383],[1345,421],[1345,465],[1345,504]],labelBBox:null,parent:"otc-faas.prod",relations:["2shw6y"],color:"gray",line:"dashed",head:"normal"}]},otcTenants:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/otc/otc-tenants.c4",description:null,title:"OTC tenants",id:"otcTenants",autoLayout:{direction:"TB"},hash:"add46ec8104dd3bb1ee71380040278f665c245c2",bounds:{x:0,y:0,width:1806,height:664},nodes:[{id:"otcTenantProd",parent:null,level:0,children:["otcTenantProd.otcTenantEdpBuildthing","otcTenantProd.otcTenantObservability","otcTenantProd.otcTenantCustomerA"],inEdges:[],outEdges:["1ypat9q","1oiku86"],deploymentRef:"otcTenantProd",title:"Prod - builth.ing",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8,y:8,width:870,height:648,labelBBox:{x:6,y:0,width:108,height:15}},{id:"otcTenantProd.otcTenantEdpBuildthing",parent:"otcTenantProd",level:1,children:[],inEdges:[],outEdges:["rj56uy","u7ohgi","1ypat9q","1oiku86"],deploymentRef:"otcTenantProd.otcTenantEdpBuildthing",title:"edp.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Primary Instance"},tags:[],style:{opacity:15,size:"md"},x:508,y:79,width:320,height:180,labelBBox:{x:85,y:63,width:181,height:48}},{id:"otcTenantProd.otcTenantObservability",parent:"otcTenantProd",level:1,children:[],inEdges:["rj56uy"],outEdges:[],deploymentRef:"otcTenantProd.otcTenantObservability",title:"observability.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Observability Instance"},tags:[],style:{opacity:15,size:"md"},x:58,y:426,width:320,height:180,labelBBox:{x:46,y:63,width:258,height:48}},{id:"otcTenantProd.otcTenantCustomerA",parent:"otcTenantProd",level:1,children:[],inEdges:["u7ohgi"],outEdges:[],deploymentRef:"otcTenantProd.otcTenantCustomerA",title:"customer-a.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Customer Instance"},tags:[],style:{opacity:15,size:"md"},x:508,y:426,width:320,height:180,labelBBox:{x:51,y:63,width:248,height:48}},{id:"otcTenantNonProd",parent:null,level:0,children:["otcTenantNonProd.otcTenantDev1","otcTenantNonProd.otcTenantTestX"],inEdges:["1ypat9q","1oiku86"],outEdges:[],deploymentRef:"otcTenantNonProd",title:"Non-Prod - t09.de",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:928,y:355,width:870,height:301,labelBBox:{x:6,y:0,width:111,height:15}},{id:"otcTenantNonProd.otcTenantDev1",parent:"otcTenantNonProd",level:1,children:[],inEdges:["1ypat9q"],outEdges:[],deploymentRef:"otcTenantNonProd.otcTenantDev1",title:"dev1.t09.de",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Development Instance"},tags:[],style:{opacity:15,size:"md"},x:978,y:426,width:320,height:180,labelBBox:{x:69,y:63,width:212,height:48}},{id:"otcTenantNonProd.otcTenantTestX",parent:"otcTenantNonProd",level:1,children:[],inEdges:["1oiku86"],outEdges:[],deploymentRef:"otcTenantNonProd.otcTenantTestX",title:"test-x.t09.de",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Testing Instance"},tags:[],style:{opacity:15,size:"md"},x:1428,y:426,width:320,height:180,labelBBox:{x:89,y:63,width:172,height:48}}],edges:[{id:"rj56uy",source:"otcTenantProd.otcTenantEdpBuildthing",target:"otcTenantProd.otcTenantObservability",label:"deploys",points:[[552,259],[488,308],[408,370],[342,420]],labelBBox:{x:457,y:324,width:52,height:18},parent:"otcTenantProd",relations:["1fxu52d"],color:"gray",line:"dashed",head:"normal"},{id:"u7ohgi",source:"otcTenantProd.otcTenantEdpBuildthing",target:"otcTenantProd.otcTenantCustomerA",label:"deploys",points:[[668,259],[668,307],[668,366],[668,416]],labelBBox:{x:669,y:324,width:52,height:18},parent:"otcTenantProd",relations:["6gfo3g"],color:"gray",line:"dashed",head:"normal"},{id:"1ypat9q",source:"otcTenantProd.otcTenantEdpBuildthing",target:"otcTenantNonProd.otcTenantDev1",label:"deploys",points:[[789,259],[856,308],[940,370],[1009,420]],labelBBox:{x:904,y:324,width:52,height:18},parent:null,relations:["s1ie0n"],color:"gray",line:"dashed",head:"normal"},{id:"1oiku86",source:"otcTenantProd.otcTenantEdpBuildthing",target:"otcTenantNonProd.otcTenantTestX",label:"deploys",points:[[828,196],[972,223],[1189,273],[1363,355],[1400,373],[1438,396],[1471,420]],labelBBox:{x:1347,y:324,width:52,height:18},parent:null,relations:["77azfi"],color:"gray",line:"dashed",head:"normal"}]},"components-template-documentation":{_type:"element",tags:null,links:null,viewOf:"documentation",_stage:"layouted",sourcePath:"views/documentation/components-template-documentation.c4",description:{txt:"Documentation System Context View"},title:"Documentation",id:"components-template-documentation",autoLayout:{direction:"TB"},hash:"b411a2274eea9b4e4f881a62211880ca09920b61",bounds:{x:0,y:0,width:431,height:503},nodes:[{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["1kjl8ep"],title:"Technical Writer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"md"},description:{txt:"Could be an engineer, but in this case it's the Technical Writer"},tags:[],kind:"actor",isCustomized:!0,x:32,y:0,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:[],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"md"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",x:0,y:323,width:384,height:180,labelBBox:{x:46,y:44,width:322,height:85}}],edges:[{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[192,180],[192,221],[192,270],[192,313]],labelBBox:{x:193,y:240,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"}]},forgejoGarmInteraction:{_type:"dynamic",tags:null,links:null,_stage:"layouted",sourcePath:"views/dynamic/cicd/forgejo-garm.c4",description:null,title:"Forgejo <-> Garm",id:"forgejoGarmInteraction",variant:"diagram",autoLayout:{direction:"LR"},hash:"a429b3027cc166f4613f1dd67f49e3375d4adf32",sequenceLayout:{actors:[{id:"edp.forgejo",x:32,y:92,width:340,height:180,ports:[{id:"step-01_source",cx:170,cy:370,height:40,type:"source",position:"right"},{id:"step-07_target",cx:170,cy:644,height:24,type:"target",position:"right"},{id:"step-08_source",cx:170,cy:737,height:40,type:"source",position:"right"},{id:"step-10_target",cx:170,cy:852,height:24,type:"target",position:"right"},{id:"step-11_target",cx:170,cy:945,height:24,type:"target",position:"right"},{id:"step-13_target",cx:170,cy:1153,height:24,type:"target",position:"right"},{id:"step-14_source",cx:170,cy:1175,height:40,type:"source",position:"right"},{id:"step-14_target",cx:170,cy:1312,height:24,type:"target",position:"right"},{id:"step-16_source",cx:170,cy:1521,height:40,type:"source",position:"right"}]},{id:"edp.garm.garm",x:436,y:92,width:325,height:180,ports:[{id:"step-01_target",cx:163,cy:370,height:24,type:"target",position:"left"},{id:"step-02_source",cx:163,cy:392,height:40,type:"source",position:"right"},{id:"step-06_target",cx:163,cy:622,height:24,type:"target",position:"right"},{id:"step-07_source",cx:163,cy:644,height:40,type:"source",position:"left"},{id:"step-08_target",cx:163,cy:737,height:24,type:"target",position:"left"},{id:"step-09_source",cx:163,cy:759,height:40,type:"source",position:"right"},{id:"step-16_target",cx:163,cy:1521,height:24,type:"target",position:"left"},{id:"step-17_source",cx:163,cy:1543,height:40,type:"source",position:"right"}]},{id:"edp.garm.providerEdgeConnect",x:821,y:92,width:409,height:180,ports:[{id:"step-02_target",cx:205,cy:392,height:24,type:"target",position:"left"},{id:"step-03_source",cx:205,cy:414,height:40,type:"source",position:"right"},{id:"step-04_source",cx:205,cy:507,height:40,type:"source",position:"right"},{id:"step-17_target",cx:205,cy:1543,height:24,type:"target",position:"left"},{id:"step-18_source",cx:205,cy:1565,height:40,type:"source",position:"right"},{id:"step-19_source",cx:205,cy:1658,height:40,type:"source",position:"right"}]},{id:"edgeConnect",x:1326,y:92,width:320,height:180,ports:[{id:"step-03_target",cx:160,cy:414,height:24,type:"target",position:"left"},{id:"step-04_target",cx:160,cy:507,height:24,type:"target",position:"left"},{id:"step-05_source",cx:160,cy:529,height:40,type:"source",position:"right"},{id:"step-18_target",cx:160,cy:1565,height:24,type:"target",position:"left"},{id:"step-19_target",cx:160,cy:1658,height:24,type:"target",position:"left"}]},{id:"forgejoRunner",x:1706,y:92,width:320,height:180,ports:[{id:"step-05_target",cx:160,cy:529,height:24,type:"target",position:"left"},{id:"step-06_source",cx:160,cy:622,height:40,type:"source",position:"left"},{id:"step-09_target",cx:160,cy:759,height:24,type:"target",position:"left"},{id:"step-10_source",cx:160,cy:852,height:40,type:"source",position:"left"},{id:"step-11_source",cx:160,cy:945,height:40,type:"source",position:"left"},{id:"step-12_source",cx:160,cy:1038,height:40,type:"source",position:"right"},{id:"step-12_target",cx:160,cy:1131,height:24,type:"target",position:"right"},{id:"step-13_source",cx:160,cy:1153,height:40,type:"source",position:"left"},{id:"step-15_source",cx:160,cy:1348,height:40,type:"source",position:"right"},{id:"step-15_target",cx:160,cy:1441,height:24,type:"target",position:"right"}]}],compounds:[{depth:1,x:0,y:0,width:1294,height:1875,id:"edp",origin:"edp"},{depth:0,x:404,y:40,width:858,height:1803,id:"edp.garm",origin:"edp.garm"}],steps:[{id:"step-01",sourceHandle:"step-01_source",targetHandle:"step-01_target",labelBBox:{width:244,height:27}},{id:"step-02",sourceHandle:"step-02_source",targetHandle:"step-02_target",labelBBox:{width:157,height:27}},{id:"step-03",sourceHandle:"step-03_source",targetHandle:"step-03_target",labelBBox:{width:172,height:27}},{id:"step-04",sourceHandle:"step-04_source",targetHandle:"step-04_target",labelBBox:{width:225,height:27}},{id:"step-05",sourceHandle:"step-05_source",targetHandle:"step-05_target",labelBBox:{width:93,height:27}},{id:"step-06",sourceHandle:"step-06_source",targetHandle:"step-06_target",labelBBox:{width:220,height:27}},{id:"step-07",sourceHandle:"step-07_source",targetHandle:"step-07_target",labelBBox:{width:220,height:27}},{id:"step-08",sourceHandle:"step-08_source",targetHandle:"step-08_target",labelBBox:{width:81,height:27}},{id:"step-09",sourceHandle:"step-09_source",targetHandle:"step-09_target",labelBBox:{width:81,height:27}},{id:"step-10",sourceHandle:"step-10_source",targetHandle:"step-10_target",labelBBox:{width:145,height:27}},{id:"step-11",sourceHandle:"step-11_source",targetHandle:"step-11_target",labelBBox:{width:108,height:27}},{id:"step-12",sourceHandle:"step-12_source",targetHandle:"step-12_target",labelBBox:{width:125,height:27}},{id:"step-13",sourceHandle:"step-13_source",targetHandle:"step-13_target",labelBBox:{width:120,height:27}},{id:"step-14",sourceHandle:"step-14_source",targetHandle:"step-14_target",labelBBox:{width:164,height:27}},{id:"step-15",sourceHandle:"step-15_source",targetHandle:"step-15_target",labelBBox:{width:113,height:27}},{id:"step-16",sourceHandle:"step-16_source",targetHandle:"step-16_target",labelBBox:{width:205,height:27}},{id:"step-17",sourceHandle:"step-17_source",targetHandle:"step-17_target",labelBBox:{width:135,height:27}},{id:"step-18",sourceHandle:"step-18_source",targetHandle:"step-18_target",labelBBox:{width:231,height:27}},{id:"step-19",sourceHandle:"step-19_source",targetHandle:"step-19_target",labelBBox:{width:177,height:27}}],parallelAreas:[],bounds:{x:0,y:0,width:2041,height:1875}},bounds:{x:0,y:0,width:2985,height:1512},nodes:[{id:"edp",parent:null,level:0,children:["edp.forgejo","edp.garm"],inEdges:["step-06","step-10","step-11","step-13"],outEdges:["step-03","step-04","step-09","step-18","step-19"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:2,navigateTo:"edp",x:8,y:81,width:1831,height:712,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.forgejo",parent:"edp",level:1,children:[],inEdges:["step-07","step-10","step-11","step-13","step-14"],outEdges:["step-01","step-08","step-14","step-16"],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform +discover the expected and uncover the unexpected.`},technology:"Elasticsearch",tags:[],icon:"tech:elasticsearch",color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"otc-edp-per-tenant.cloudServices.elasticsearch",modelRef:"elasticsearch",x:108,y:1706,width:370,height:180,labelBBox:{x:46,y:17,width:308,height:139}}],edges:[{id:"17kru01",source:"otc-edpFoundry.cce.internalServices.ingressNginx",target:"otc-edpFoundry.cce.internalServices.argoCD",label:"https",points:[[4054,1100],[3915,1148],[3708,1220],[3529,1287],[3511,1294],[3492,1301],[3474,1309]],labelBBox:{x:3755,y:1199,width:34,height:18},parent:"otc-edpFoundry.cce.internalServices",relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"170pc3l",source:"otc-edpFoundry.cce.internalServices.ingressNginx",target:"otc-edpFoundry.cce.internalServices.forgejo",label:"https",points:[[4214,1134],[4214,1178],[4214,1232],[4214,1277]],labelBBox:{x:4215,y:1199,width:34,height:18},parent:"otc-edpFoundry.cce.internalServices",relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"u5oqat",source:"otc-edpFoundry.cce.internalServices.ingressNginx",target:"otc-edpFoundry.cce.internalServices.openbao",label:"https",points:[[4090,1134],[4027,1180],[3950,1235],[3886,1282]],labelBBox:{x:3999,y:1199,width:34,height:18},parent:"otc-edpFoundry.cce.internalServices",relations:["1p30hav"],color:"gray",line:"dashed",head:"normal"},{id:"qykxlm",source:"otc-edpFoundry.cce.centralObservability.grafana",target:"otc-edpFoundry.cce.centralObservability.prometheus",label:"get metrics and alerts",points:[[3664,401],[3645,446],[3622,499],[3602,545]],labelBBox:{x:3636,y:466,width:138,height:18},parent:"otc-edpFoundry.cce.centralObservability",relations:["13uvtiq"],color:"gray",line:"dashed",head:"normal"},{id:"yv49z5",source:"otc-edpFoundry.cce.centralObservability.grafana",target:"otc-edpFoundry.cce.centralObservability.loki",label:"get logs",points:[[3785,401],[3827,446],[3877,501],[3920,547]],labelBBox:{x:3866,y:466,width:53,height:18},parent:"otc-edpFoundry.cce.centralObservability",relations:["1n1utzc"],color:"gray",line:"dashed",head:"normal"},{id:"84397w",source:"otc-edpFoundry.cce.internalServices.forgejo",target:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner",label:"invokes",points:[[4384,1359],[4590,1333],[4917,1279],[4991,1185],[5006,1165],[5006,601],[4987,554],[4964,499],[4922,448],[4880,408]],labelBBox:{x:5002,y:799,width:51,height:18},parent:"otc-edpFoundry",relations:["dola40"],color:"gray",line:"dashed",head:"normal"},{id:"1hnil62",source:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner",target:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker",label:"runs",points:[[4755,401],[4755,445],[4755,499],[4755,544]],labelBBox:{x:4756,y:466,width:31,height:18},parent:"otc-edpFoundry.workflowSetupEDPInfrastructure",relations:["7kqly3"],color:"gray",line:"dashed",head:"normal"},{id:"ekzztw",source:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker",target:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow",label:"executes",points:[[4755,734],[4755,797],[4755,880],[4755,944]],labelBBox:{x:4756,y:799,width:60,height:18},parent:"otc-edpFoundry.workflowSetupEDPInfrastructure",relations:["12hf1w4"],color:"gray",line:"dashed",head:"normal"},{id:"1oz2va9",source:"otc-edpFoundry.cce.internalServices.forgejo",target:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner",label:"invokes",points:[[4044,1309],[4022,1301],[4e3,1294],[3979,1287],[3850,1249],[3808,1275],[3684,1222],[3176,1006],[2655,594],[2433,408]],labelBBox:{x:2970,y:799,width:51,height:18},parent:"otc-edpFoundry",relations:["1f5y9gc"],color:"gray",line:"dashed",head:"normal"},{id:"1gtxobu",source:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner",target:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker",label:"runs",points:[[2323,401],[2323,445],[2323,499],[2323,544]],labelBBox:{x:2324,y:466,width:31,height:18},parent:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",relations:["hqie0"],color:"gray",line:"dashed",head:"normal"},{id:"b9ntr8",source:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker",target:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow",label:"executes",points:[[2323,734],[2323,797],[2323,880],[2323,944]],labelBBox:{x:2324,y:799,width:60,height:18},parent:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",relations:["1j16hqv"],color:"gray",line:"dashed",head:"normal"},{id:"628xl1",source:"otc-edpFoundry.forgejoRunnerInfrastructure.forgejoRunner",target:"otc-edpFoundry.cce.internalServices.forgejo",label:"registers",points:[[5231,401],[5255,597],[5278,1062],[4995,1222],[4808,1328],[4561,1362],[4395,1373]],labelBBox:{x:5232,y:799,width:58,height:18},parent:"otc-edpFoundry",relations:["1umzqdy"],color:"gray",line:"dashed",head:"normal"},{id:"ejqwjt",source:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow",target:"otc-edp-per-tenant.cce.edp.argoCD",label:null,points:[[2152,1115],[2090,1139],[2018,1165],[1952,1185],[1748,1245],[1688,1225],[1485,1287],[1467,1293],[1448,1299],[1430,1306]],labelBBox:null,parent:null,relations:["jde35l"],color:"gray",line:"dashed",head:"normal"},{id:"1ir70dd",source:"otc-edp-per-tenant.cce.edp.ingressNginx",target:"otc-edp-per-tenant.cce.edp.argoCD",label:"https",points:[[1260,1134],[1260,1178],[1260,1232],[1260,1277]],labelBBox:{x:1261,y:1199,width:34,height:18},parent:"otc-edp-per-tenant.cce.edp",relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"1kr1wg1",source:"otc-edp-per-tenant.cce.edp.ingressNginx",target:"otc-edp-per-tenant.cce.edp.forgejo",label:"https",points:[[1136,1134],[1073,1180],[996,1235],[932,1282]],labelBBox:{x:1045,y:1199,width:34,height:18},parent:"otc-edp-per-tenant.cce.edp",relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"1dcszi5",source:"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner",target:"otc-edp-per-tenant.cce.edp.forgejo",label:"registers",points:[[800,401],[800,598],[800,1070],[800,1277]],labelBBox:{x:801,y:799,width:58,height:18},parent:"otc-edp-per-tenant",relations:["g9oj4f"],color:"gray",line:"dashed",head:"normal"},{id:"8msu1q",source:"otc-edp-per-tenant.cce.edp.forgejo",target:"otc-edp-per-tenant.cloudServices.postgres",label:null,points:[[860,1467],[902,1521],[963,1586],[1035,1617],[1081,1638],[1436,1619],[1483,1634],[1527,1649],[1571,1674],[1610,1700]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["hks76r"],color:"gray",line:"dashed",head:"normal"},{id:"120qe5o",source:"otc-edp-per-tenant.cce.edp.forgejo",target:"otc-edp-per-tenant.cloudServices.redis",label:null,points:[[797,1467],[796,1534],[793,1626],[791,1695]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["1w18ve8"],color:"gray",line:"dashed",head:"normal"},{id:"ealiax",source:"otc-edp-per-tenant.cce.edp.forgejo",target:"otc-edp-per-tenant.cloudServices.objectstorage",label:null,points:[[882,1467],[926,1513],[982,1570],[1035,1617],[1066,1645],[1100,1673],[1132,1699]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["15njmlz"],color:"gray",line:"dashed",head:"normal"},{id:"1trj5u6",source:"otc-edp-per-tenant.cce.edp.forgejo",target:"otc-edp-per-tenant.cloudServices.elasticsearch",label:null,points:[[692,1467],[609,1535],[495,1629],[410,1699]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["1fzhjm9"],color:"gray",line:"dashed",head:"normal"},{id:"1asm38z",source:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow",target:"otc-edp-per-tenant.cloudServices",label:"deploys edp to otc.paas",points:[[4739,1134],[4709,1265],[4634,1506],[4466,1617],[4260,1754],[2590,1785],[1962,1793]],labelBBox:{x:3219,y:1730,width:152,height:18},parent:null,relations:["1pfc6bl"],color:"gray",line:"dashed",head:"normal"},{id:"1or831y",source:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow",target:"otc-edp-per-tenant.cce.edp",label:"deploys edp to otc.cce",points:[[4602,1134],[4559,1155],[4512,1174],[4466,1185],[4366,1208],[2714,1189],[2612,1200],[2377,1223],[2112,1279],[1930,1321]],labelBBox:{x:3117,y:1173,width:143,height:18},parent:null,relations:["uk77s5"],color:"gray",line:"dashed",head:"normal"}]},"otc-faas":{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/otc/otc-faas.c4",description:null,title:"OTC Prototype FaaS",id:"otc-faas",autoLayout:{direction:"TB"},hash:"e2904f0dec8c25765884ff1970493408959739a3",bounds:{x:0,y:0,width:2086,height:802},nodes:[{id:"otc-faas",parent:null,level:0,children:["otc-faas.dev","otc-faas.prod"],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"},depth:3,x:8,y:8,width:2070,height:786,labelBBox:{x:6,y:0,width:131,height:15}},{id:"otc-faas.dev",parent:"otc-faas",level:1,children:["otc-faas.dev.cce","otc-faas.dev.observability","otc-faas.dev.cloudServices"],inEdges:[],outEdges:[],deploymentRef:"otc-faas.dev",title:"tenant Dev",kind:"environment",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:"*.t09.de"},tags:[],style:{opacity:15,size:"md"},depth:2,x:58,y:79,width:972,height:665,labelBBox:{x:6,y:0,width:74,height:15}},{id:"otc-faas.dev.cce",parent:"otc-faas.dev",level:2,children:["otc-faas.dev.cce.edp"],inEdges:[],outEdges:["p747qx"],deploymentRef:"otc-faas.dev.cce",title:"Central Forgejo",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:kubernetes",description:{txt:"*.t09.de"},tags:[],style:{opacity:15,size:"md"},depth:1,navigateTo:"forgejo",x:108,y:150,width:454,height:266,labelBBox:{x:6,y:0,width:113,height:15}},{id:"otc-faas.dev.observability",parent:"otc-faas.dev",level:2,children:[],inEdges:[],outEdges:[],deploymentRef:"otc-faas.dev.observability",title:"Observability",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"*.t09.de"},tags:[],style:{opacity:15,size:"md"},x:660,y:204,width:320,height:180,labelBBox:{x:86,y:53,width:178,height:67}},{id:"otc-faas.prod",parent:"otc-faas",level:1,children:["otc-faas.prod.cce","otc-faas.prod.observability","otc-faas.prod.cloudServices"],inEdges:[],outEdges:[],deploymentRef:"otc-faas.prod",title:"Tenant Prod",kind:"environment",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:"*.buildth.ing"},tags:[],style:{opacity:15,size:"md"},depth:2,x:1080,y:79,width:948,height:665,labelBBox:{x:6,y:0,width:83,height:15}},{id:"otc-faas.prod.cce",parent:"otc-faas.prod",level:2,children:["otc-faas.prod.cce.edp"],inEdges:[],outEdges:["tb8sk9"],deploymentRef:"otc-faas.prod.cce",title:"Central Forgejo",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:kubernetes",description:{txt:"*.buildth.ing"},tags:[],style:{opacity:15,size:"md"},depth:1,navigateTo:"forgejo",x:1130,y:150,width:430,height:266,labelBBox:{x:6,y:0,width:113,height:15}},{id:"otc-faas.dev.cce.edp",parent:"otc-faas.dev.cce",level:3,children:[],inEdges:[],outEdges:["p747qx"],deploymentRef:"otc-faas.dev.cce.edp",title:"Forgejo Dev for platform team",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",description:{txt:"t09.de"},tags:[],style:{opacity:15,size:"md"},technology:"Golang",icon:"tech:go",navigateTo:"forgejo",x:140,y:204,width:389,height:180,labelBBox:{x:46,y:53,width:328,height:67}},{id:"otc-faas.prod.observability",parent:"otc-faas.prod",level:2,children:[],inEdges:[],outEdges:[],deploymentRef:"otc-faas.prod.observability",title:"Observability",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"*.buildth.ing"},tags:[],style:{opacity:15,size:"md"},x:1658,y:204,width:320,height:180,labelBBox:{x:86,y:53,width:178,height:67}},{id:"otc-faas.prod.cce.edp",parent:"otc-faas.prod.cce",level:3,children:[],inEdges:[],outEdges:["tb8sk9"],deploymentRef:"otc-faas.prod.cce.edp",title:"Forgejo for all EDP-tenants",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",tags:[],style:{opacity:15,size:"md"},description:{txt:"buildth.ing"},technology:"Golang",icon:"tech:go",navigateTo:"forgejo",x:1162,y:204,width:365,height:180,labelBBox:{x:46,y:53,width:304,height:67}},{id:"otc-faas.dev.cloudServices",parent:"otc-faas.dev",level:2,children:[],inEdges:["p747qx"],outEdges:[],deploymentRef:"otc-faas.dev.cloudServices",title:"EDP Cloud Services",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",description:{txt:"EDP Cloud Services (Postgres, Redis, etc.)"},tags:[],style:{opacity:15,size:"md"},x:171,y:514,width:328,height:180,labelBBox:{x:18,y:53,width:292,height:67}},{id:"otc-faas.prod.cloudServices",parent:"otc-faas.prod",level:2,children:[],inEdges:["tb8sk9"],outEdges:[],deploymentRef:"otc-faas.prod.cloudServices",title:"EDP Cloud Services",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",description:{txt:"EDP Cloud Services (Postgres, Redis, etc.)"},tags:[],style:{opacity:15,size:"md"},x:1181,y:514,width:328,height:180,labelBBox:{x:18,y:53,width:292,height:67}}],edges:[{id:"p747qx",source:"otc-faas.dev.cce.edp",target:"otc-faas.dev.cloudServices",label:null,points:[[335,383],[335,421],[335,465],[335,504]],labelBBox:null,parent:"otc-faas.dev",relations:["dz2rdn"],color:"gray",line:"dashed",head:"normal"},{id:"tb8sk9",source:"otc-faas.prod.cce.edp",target:"otc-faas.prod.cloudServices",label:null,points:[[1345,383],[1345,421],[1345,465],[1345,504]],labelBBox:null,parent:"otc-faas.prod",relations:["2shw6y"],color:"gray",line:"dashed",head:"normal"}]},otcTenants:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/otc/otc-tenants.c4",description:null,title:"OTC tenants",id:"otcTenants",autoLayout:{direction:"TB"},hash:"add46ec8104dd3bb1ee71380040278f665c245c2",bounds:{x:0,y:0,width:1806,height:664},nodes:[{id:"otcTenantProd",parent:null,level:0,children:["otcTenantProd.otcTenantEdpBuildthing","otcTenantProd.otcTenantObservability","otcTenantProd.otcTenantCustomerA"],inEdges:[],outEdges:["1ypat9q","1oiku86"],deploymentRef:"otcTenantProd",title:"Prod - builth.ing",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8,y:8,width:870,height:648,labelBBox:{x:6,y:0,width:108,height:15}},{id:"otcTenantProd.otcTenantEdpBuildthing",parent:"otcTenantProd",level:1,children:[],inEdges:[],outEdges:["rj56uy","u7ohgi","1ypat9q","1oiku86"],deploymentRef:"otcTenantProd.otcTenantEdpBuildthing",title:"edp.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Primary Instance"},tags:[],style:{opacity:15,size:"md"},x:508,y:79,width:320,height:180,labelBBox:{x:85,y:63,width:181,height:48}},{id:"otcTenantProd.otcTenantObservability",parent:"otcTenantProd",level:1,children:[],inEdges:["rj56uy"],outEdges:[],deploymentRef:"otcTenantProd.otcTenantObservability",title:"observability.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Observability Instance"},tags:[],style:{opacity:15,size:"md"},x:58,y:426,width:320,height:180,labelBBox:{x:46,y:63,width:258,height:48}},{id:"otcTenantProd.otcTenantCustomerA",parent:"otcTenantProd",level:1,children:[],inEdges:["u7ohgi"],outEdges:[],deploymentRef:"otcTenantProd.otcTenantCustomerA",title:"customer-a.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Customer Instance"},tags:[],style:{opacity:15,size:"md"},x:508,y:426,width:320,height:180,labelBBox:{x:51,y:63,width:248,height:48}},{id:"otcTenantNonProd",parent:null,level:0,children:["otcTenantNonProd.otcTenantDev1","otcTenantNonProd.otcTenantTestX"],inEdges:["1ypat9q","1oiku86"],outEdges:[],deploymentRef:"otcTenantNonProd",title:"Non-Prod - t09.de",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:928,y:355,width:870,height:301,labelBBox:{x:6,y:0,width:111,height:15}},{id:"otcTenantNonProd.otcTenantDev1",parent:"otcTenantNonProd",level:1,children:[],inEdges:["1ypat9q"],outEdges:[],deploymentRef:"otcTenantNonProd.otcTenantDev1",title:"dev1.t09.de",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Development Instance"},tags:[],style:{opacity:15,size:"md"},x:978,y:426,width:320,height:180,labelBBox:{x:69,y:63,width:212,height:48}},{id:"otcTenantNonProd.otcTenantTestX",parent:"otcTenantNonProd",level:1,children:[],inEdges:["1oiku86"],outEdges:[],deploymentRef:"otcTenantNonProd.otcTenantTestX",title:"test-x.t09.de",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Testing Instance"},tags:[],style:{opacity:15,size:"md"},x:1428,y:426,width:320,height:180,labelBBox:{x:89,y:63,width:172,height:48}}],edges:[{id:"rj56uy",source:"otcTenantProd.otcTenantEdpBuildthing",target:"otcTenantProd.otcTenantObservability",label:"deploys",points:[[552,259],[488,308],[408,370],[342,420]],labelBBox:{x:457,y:324,width:52,height:18},parent:"otcTenantProd",relations:["1fxu52d"],color:"gray",line:"dashed",head:"normal"},{id:"u7ohgi",source:"otcTenantProd.otcTenantEdpBuildthing",target:"otcTenantProd.otcTenantCustomerA",label:"deploys",points:[[668,259],[668,307],[668,366],[668,416]],labelBBox:{x:669,y:324,width:52,height:18},parent:"otcTenantProd",relations:["6gfo3g"],color:"gray",line:"dashed",head:"normal"},{id:"1ypat9q",source:"otcTenantProd.otcTenantEdpBuildthing",target:"otcTenantNonProd.otcTenantDev1",label:"deploys",points:[[789,259],[856,308],[940,370],[1009,420]],labelBBox:{x:904,y:324,width:52,height:18},parent:null,relations:["s1ie0n"],color:"gray",line:"dashed",head:"normal"},{id:"1oiku86",source:"otcTenantProd.otcTenantEdpBuildthing",target:"otcTenantNonProd.otcTenantTestX",label:"deploys",points:[[828,196],[972,223],[1189,273],[1363,355],[1400,373],[1438,396],[1471,420]],labelBBox:{x:1347,y:324,width:52,height:18},parent:null,relations:["77azfi"],color:"gray",line:"dashed",head:"normal"}]},"components-template-documentation":{_type:"element",tags:null,links:null,viewOf:"documentation",_stage:"layouted",sourcePath:"views/documentation/components-template-documentation.c4",description:{txt:"Documentation System Context View"},title:"Documentation",id:"components-template-documentation",autoLayout:{direction:"TB"},hash:"b411a2274eea9b4e4f881a62211880ca09920b61",bounds:{x:0,y:0,width:431,height:503},nodes:[{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["1kjl8ep"],title:"Technical Writer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"md"},description:{txt:"Could be an engineer, but in this case it's the Technical Writer"},tags:[],kind:"actor",isCustomized:!0,x:32,y:0,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:[],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"md"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",x:0,y:323,width:384,height:180,labelBBox:{x:46,y:44,width:322,height:85}}],edges:[{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[192,180],[192,221],[192,270],[192,313]],labelBBox:{x:193,y:240,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"}]},forgejoGarmInteraction:{_type:"dynamic",tags:null,links:null,_stage:"layouted",sourcePath:"views/dynamic/cicd/forgejo-garm.c4",description:null,title:"Forgejo <-> Garm",id:"forgejoGarmInteraction",variant:"diagram",autoLayout:{direction:"LR"},hash:"d3ebbc1ee40326db9ca9240c8d8d71315f8c5651",sequenceLayout:{actors:[{id:"edp.forgejo",x:32,y:92,width:340,height:180,ports:[{id:"step-01_source",cx:170,cy:370,height:40,type:"source",position:"right"},{id:"step-07_target",cx:170,cy:644,height:24,type:"target",position:"right"},{id:"step-08_source",cx:170,cy:737,height:40,type:"source",position:"right"},{id:"step-10_target",cx:170,cy:852,height:24,type:"target",position:"right"},{id:"step-11_target",cx:170,cy:945,height:24,type:"target",position:"right"},{id:"step-13_target",cx:170,cy:1153,height:24,type:"target",position:"right"},{id:"step-14_source",cx:170,cy:1175,height:40,type:"source",position:"right"},{id:"step-14_target",cx:170,cy:1312,height:24,type:"target",position:"right"},{id:"step-16_source",cx:170,cy:1521,height:40,type:"source",position:"right"}]},{id:"edp.garm.garm",x:436,y:92,width:325,height:180,ports:[{id:"step-01_target",cx:163,cy:370,height:24,type:"target",position:"left"},{id:"step-02_source",cx:163,cy:392,height:40,type:"source",position:"right"},{id:"step-06_target",cx:163,cy:622,height:24,type:"target",position:"right"},{id:"step-07_source",cx:163,cy:644,height:40,type:"source",position:"left"},{id:"step-08_target",cx:163,cy:737,height:24,type:"target",position:"left"},{id:"step-09_source",cx:163,cy:759,height:40,type:"source",position:"right"},{id:"step-16_target",cx:163,cy:1521,height:24,type:"target",position:"left"},{id:"step-17_source",cx:163,cy:1543,height:40,type:"source",position:"right"}]},{id:"edp.garm.providerEdgeConnect",x:821,y:92,width:409,height:180,ports:[{id:"step-02_target",cx:205,cy:392,height:24,type:"target",position:"left"},{id:"step-03_source",cx:205,cy:414,height:40,type:"source",position:"right"},{id:"step-04_source",cx:205,cy:507,height:40,type:"source",position:"right"},{id:"step-17_target",cx:205,cy:1543,height:24,type:"target",position:"left"},{id:"step-18_source",cx:205,cy:1565,height:40,type:"source",position:"right"},{id:"step-19_source",cx:205,cy:1658,height:40,type:"source",position:"right"}]},{id:"edgeConnect",x:1326,y:92,width:320,height:180,ports:[{id:"step-03_target",cx:160,cy:414,height:24,type:"target",position:"left"},{id:"step-04_target",cx:160,cy:507,height:24,type:"target",position:"left"},{id:"step-05_source",cx:160,cy:529,height:40,type:"source",position:"right"},{id:"step-18_target",cx:160,cy:1565,height:24,type:"target",position:"left"},{id:"step-19_target",cx:160,cy:1658,height:24,type:"target",position:"left"}]},{id:"forgejoRunner",x:1706,y:92,width:320,height:180,ports:[{id:"step-05_target",cx:160,cy:529,height:24,type:"target",position:"left"},{id:"step-06_source",cx:160,cy:622,height:40,type:"source",position:"left"},{id:"step-09_target",cx:160,cy:759,height:24,type:"target",position:"left"},{id:"step-10_source",cx:160,cy:852,height:40,type:"source",position:"left"},{id:"step-11_source",cx:160,cy:945,height:40,type:"source",position:"left"},{id:"step-12_source",cx:160,cy:1038,height:40,type:"source",position:"right"},{id:"step-12_target",cx:160,cy:1131,height:24,type:"target",position:"right"},{id:"step-13_source",cx:160,cy:1153,height:40,type:"source",position:"left"},{id:"step-15_source",cx:160,cy:1348,height:40,type:"source",position:"right"},{id:"step-15_target",cx:160,cy:1441,height:24,type:"target",position:"right"}]}],compounds:[{depth:1,x:0,y:0,width:1294,height:1875,id:"edp",origin:"edp"},{depth:0,x:404,y:40,width:858,height:1803,id:"edp.garm",origin:"edp.garm"}],steps:[{id:"step-01",sourceHandle:"step-01_source",targetHandle:"step-01_target",labelBBox:{width:244,height:27}},{id:"step-02",sourceHandle:"step-02_source",targetHandle:"step-02_target",labelBBox:{width:157,height:27}},{id:"step-03",sourceHandle:"step-03_source",targetHandle:"step-03_target",labelBBox:{width:172,height:27}},{id:"step-04",sourceHandle:"step-04_source",targetHandle:"step-04_target",labelBBox:{width:225,height:27}},{id:"step-05",sourceHandle:"step-05_source",targetHandle:"step-05_target",labelBBox:{width:93,height:27}},{id:"step-06",sourceHandle:"step-06_source",targetHandle:"step-06_target",labelBBox:{width:220,height:27}},{id:"step-07",sourceHandle:"step-07_source",targetHandle:"step-07_target",labelBBox:{width:220,height:27}},{id:"step-08",sourceHandle:"step-08_source",targetHandle:"step-08_target",labelBBox:{width:81,height:27}},{id:"step-09",sourceHandle:"step-09_source",targetHandle:"step-09_target",labelBBox:{width:81,height:27}},{id:"step-10",sourceHandle:"step-10_source",targetHandle:"step-10_target",labelBBox:{width:145,height:27}},{id:"step-11",sourceHandle:"step-11_source",targetHandle:"step-11_target",labelBBox:{width:108,height:27}},{id:"step-12",sourceHandle:"step-12_source",targetHandle:"step-12_target",labelBBox:{width:125,height:27}},{id:"step-13",sourceHandle:"step-13_source",targetHandle:"step-13_target",labelBBox:{width:120,height:27}},{id:"step-14",sourceHandle:"step-14_source",targetHandle:"step-14_target",labelBBox:{width:164,height:27}},{id:"step-15",sourceHandle:"step-15_source",targetHandle:"step-15_target",labelBBox:{width:113,height:27}},{id:"step-16",sourceHandle:"step-16_source",targetHandle:"step-16_target",labelBBox:{width:205,height:27}},{id:"step-17",sourceHandle:"step-17_source",targetHandle:"step-17_target",labelBBox:{width:135,height:27}},{id:"step-18",sourceHandle:"step-18_source",targetHandle:"step-18_target",labelBBox:{width:231,height:27}},{id:"step-19",sourceHandle:"step-19_source",targetHandle:"step-19_target",labelBBox:{width:177,height:27}}],parallelAreas:[],bounds:{x:0,y:0,width:2041,height:1875}},bounds:{x:0,y:0,width:2985,height:1512},nodes:[{id:"edp",parent:null,level:0,children:["edp.forgejo","edp.garm"],inEdges:["step-06","step-10","step-11","step-13"],outEdges:["step-03","step-04","step-09","step-18","step-19"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:2,navigateTo:"edp",x:8,y:81,width:1831,height:712,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.forgejo",parent:"edp",level:1,children:[],inEdges:["step-07","step-10","step-11","step-13","step-14"],outEdges:["step-01","step-08","step-14","step-16"],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform offering capabilities like code version controling collaboration and ticketing -and security scanning`},tags:[],technology:"Golang",kind:"container",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:"b15c1909d7caa6a80c1a7e432ba68166130b8498",bounds:{x:0,y:0,width:1510,height:1457},nodes:[{id:"otcKubernetes",parent:null,level:0,children:["otcKubernetes.edpCluster"],inEdges:["16jincy","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:996,height:1441,labelBBox:{x:6,y:0,width:106,height:15}},{id:"otcKubernetes.edpCluster",parent:"otcKubernetes",level:1,children:["otcKubernetes.edpCluster.forgejoActions","otcKubernetes.edpCluster.garmService","otcKubernetes.edpCluster.forgejo","otcKubernetes.edpCluster.providerEdgeConnect"],inEdges:["16jincy","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:932,height:1356,labelBBox:{x:6,y:0,width:82,height:15}},{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:590,y:132,width:332,height:180,labelBBox:{x:46,y:54,width:270,height:67}},{id:"edgeConnectEnv",parent:null,level:0,children:["edgeConnectEnv.runnerInfrastructure"],inEdges:["dvpbhz"],outEdges:["16jincy","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:1054,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:["16jincy","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:1086,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:["16jincy","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:1118,y:515,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:47}},{id:"otcKubernetes.edpCluster.garmService",parent:"otcKubernetes.edpCluster",level:2,children:[],inEdges:["16jincy"],outEdges:["su6mp0"],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.garmService",modelRef:"edp.garm.garm",x:90,y:854,width:352,height:180,labelBBox:{x:46,y:63,width:290,height:48}},{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:572,y:854,width:350,height:180,labelBBox:{x:46,y:54,width:288,height:67}},{id:"otcKubernetes.edpCluster.providerEdgeConnect",parent:"otcKubernetes.edpCluster",level:2,children:[],inEdges:["su6mp0"],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:1187,width:409,height:180,labelBBox:{x:46,y:63,width:348,height:48}}],edges:[{id:"su6mp0",source:"otcKubernetes.edpCluster.garmService",target:"otcKubernetes.edpCluster.providerEdgeConnect",label:"calls binary",points:[[274,1034],[278,1078],[282,1131],[286,1177]],labelBBox:{x:282,y:1099,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:[[922,292],[985,323],[1056,362],[1114,408],[1149,436],[1182,473],[1209,507]],labelBBox:{x:1098,y:377,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"16jincy",source:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",target:"otcKubernetes.edpCluster.garmService",label:"retrieves bootstrap information",points:[[1202,695],[1176,719],[1146,743],[1114,759],[869,878],[771,785],[507,854],[489,859],[470,865],[452,871]],labelBBox:{x:1086,y:766,width:193,height:18},parent:null,relations:["1t1b56a"],color:"gray",line:"dashed",head:"normal"},{id:"gly1kq",source:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",target:"otcKubernetes.edpCluster.forgejo",label:"registers with and picks up jobs",points:[[1192,694],[1168,717],[1141,740],[1114,759],[1057,798],[991,834],[931,863]],labelBBox:{x:1097,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:[[1211,515],[1183,480],[1149,441],[1114,408],[1062,359],[994,320],[931,290]],labelBBox:{x:1099,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 +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:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",x:2135,y:169,width:320,height:180,labelBBox:{x:24,y:54,width:273,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:"b15c1909d7caa6a80c1a7e432ba68166130b8498",bounds:{x:0,y:0,width:1510,height:1457},nodes:[{id:"otcKubernetes",parent:null,level:0,children:["otcKubernetes.edpCluster"],inEdges:["16jincy","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:996,height:1441,labelBBox:{x:6,y:0,width:106,height:15}},{id:"otcKubernetes.edpCluster",parent:"otcKubernetes",level:1,children:["otcKubernetes.edpCluster.forgejoActions","otcKubernetes.edpCluster.garmService","otcKubernetes.edpCluster.forgejo","otcKubernetes.edpCluster.providerEdgeConnect"],inEdges:["16jincy","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:932,height:1356,labelBBox:{x:6,y:0,width:82,height:15}},{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:590,y:132,width:332,height:180,labelBBox:{x:46,y:54,width:270,height:67}},{id:"edgeConnectEnv",parent:null,level:0,children:["edgeConnectEnv.runnerInfrastructure"],inEdges:["dvpbhz"],outEdges:["16jincy","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:1054,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:["16jincy","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:1086,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:["16jincy","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:1118,y:515,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:47}},{id:"otcKubernetes.edpCluster.garmService",parent:"otcKubernetes.edpCluster",level:2,children:[],inEdges:["16jincy"],outEdges:["su6mp0"],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.garmService",modelRef:"edp.garm.garm",x:90,y:854,width:352,height:180,labelBBox:{x:46,y:63,width:290,height:48}},{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:572,y:854,width:350,height:180,labelBBox:{x:46,y:54,width:288,height:67}},{id:"otcKubernetes.edpCluster.providerEdgeConnect",parent:"otcKubernetes.edpCluster",level:2,children:[],inEdges:["su6mp0"],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:1187,width:409,height:180,labelBBox:{x:46,y:63,width:348,height:48}}],edges:[{id:"su6mp0",source:"otcKubernetes.edpCluster.garmService",target:"otcKubernetes.edpCluster.providerEdgeConnect",label:"calls binary",points:[[274,1034],[278,1078],[282,1131],[286,1177]],labelBBox:{x:282,y:1099,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:[[922,292],[985,323],[1056,362],[1114,408],[1149,436],[1182,473],[1209,507]],labelBBox:{x:1098,y:377,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"16jincy",source:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",target:"otcKubernetes.edpCluster.garmService",label:"retrieves bootstrap information",points:[[1202,695],[1176,719],[1146,743],[1114,759],[869,878],[771,785],[507,854],[489,859],[470,865],[452,871]],labelBBox:{x:1086,y:766,width:193,height:18},parent:null,relations:["1t1b56a"],color:"gray",line:"dashed",head:"normal"},{id:"gly1kq",source:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",target:"otcKubernetes.edpCluster.forgejo",label:"registers with and picks up jobs",points:[[1192,694],[1168,717],[1141,740],[1114,759],[1057,798],[991,834],[931,863]],labelBBox:{x:1097,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:[[1211,515],[1183,480],[1149,441],[1114,408],[1062,359],[994,320],[931,290]],labelBBox:{x:1099,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 @@ -271,7 +271,7 @@ and security scanning`},tags:[],technology:"Golang",kind:"container",isCustomize offering capabilities like code version controling collaboration and ticketing -and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:1830,y:392,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.imageregistry",parent:"edp",level:1,children:[],inEdges:["1nv0w41"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:2280,y:392,width:373,height:180,labelBBox:{x:47,y:53,width:311,height:67}},{id:"edp.grafana",parent:"edp",level:1,children:[],inEdges:["3nxrq7"],outEdges:["1tfxhhz","1adt45o"],title:"Grafana",modelRef:"edp.grafana",shape:"rectangle",color:"primary",icon:"tech:grafana",style:{opacity:25,size:"md"},description:{txt:"Data visualization and monitoring"},tags:[],kind:"container",x:2763,y:392,width:345,height:180,labelBBox:{x:47,y:63,width:283,height:48}},{id:"edp.keycloak",parent:"edp",level:1,children:[],inEdges:["bfgapq"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:3219,y:392,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.forgejogit",parent:"edp",level:1,children:[],inEdges:["1agven9","f6xyb4"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"md"},tags:[],kind:"component",x:4079,y:715,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}},{id:"edp.loki",parent:"edp",level:1,children:[],inEdges:["1tfxhhz"],outEdges:[],title:"Loki",modelRef:"edp.loki",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Log aggregation system"},tags:[],kind:"container",x:2991,y:715,width:320,height:180,labelBBox:{x:78,y:63,width:164,height:47}},{id:"edp.prometheus",parent:"edp",level:1,children:[],inEdges:["1adt45o"],outEdges:[],title:"Prometheus",modelRef:"edp.prometheus",shape:"rectangle",color:"primary",icon:"tech:prometheus",style:{opacity:25,size:"md"},description:{txt:"Monitoring and alerting toolkit"},tags:[],kind:"container",x:2561,y:715,width:320,height:180,labelBBox:{x:46,y:63,width:258,height:47}},{id:"edp.mailhog",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",navigateTo:"mailhog",x:890,y:69,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:48}},{id:"edp.minio",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Minio",modelRef:"edp.minio",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"S3 compatible blob storage"},tags:[],kind:"container",navigateTo:"minio",x:1320,y:69,width:320,height:180,labelBBox:{x:67,y:63,width:186,height:48}},{id:"edp.monitoring",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:1860,y:69,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"edp.openbao",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:430,y:392,width:320,height:180,labelBBox:{x:85,y:63,width:151,height:48}},{id:"edp.testApp",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",navigateTo:"testapp",x:860,y:392,width:320,height:180,labelBBox:{x:50,y:63,width:220,height:48}},{id:"edp.garm",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Garm Image",modelRef:"edp.garm",shape:"rectangle",color:"primary",icon:"tech:docker",style:{opacity:25,size:"md"},tags:[],kind:"container",x:1400,y:392,width:320,height:180,labelBBox:{x:89,y:74,width:173,height:24}},{id:"edp.application",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"edp.application",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:430,y:715,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}}],edges:[{id:"1cy1y20",source:"forgejoRunner",target:"edp.forgejoActions",label:"register",points:[[241,392],[270,364],[303,334],[335,309],[362,289],[392,270],[421,253]],labelBBox:{x:336,y:309,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"1y3lcyj",source:"developer",target:"edp.api",label:"uses API",points:[[4909,245],[4905,246],[4900,248],[4896,249],[4733,303],[4684,282],[4514,309],[4296,345],[4236,331],[4024,392],[4009,396],[3994,401],[3978,407]],labelBBox:{x:4515,y:309,width:60,height:18},parent:null,relations:["1l9a3pd"],color:"gray",line:"dashed",head:"normal"},{id:"1ttqc1r",source:"developer",target:"edp.argoCD",label:"manages deployments",points:[[4909,244],[4905,246],[4900,248],[4896,249],[4797,287],[4766,276],[4665,309],[4569,340],[4548,354],[4454,392],[4439,398],[4424,404],[4408,411]],labelBBox:{x:4666,y:309,width:145,height:18},parent:null,relations:["1ghp31l"],color:"gray",line:"dashed",head:"normal"},{id:"170qzun",source:"developer",target:"edp.ui",label:"manages project",points:[[4945,249],[4919,268],[4891,289],[4867,309],[4836,333],[4805,360],[4776,385]],labelBBox:{x:4868,y:309,width:108,height:18},parent:null,relations:["yk9zv2","1woleh6"],color:"gray",line:"dashed",head:"normal"},{id:"1bt83vj",source:"developer",target:"edp.forgejo",label:"manages code",points:[[4909,245],[4905,247],[4900,248],[4896,249],[4471,359],[3358,277],[2920,309],[2610,332],[2527,316],[2225,392],[2210,396],[2195,400],[2180,405]],labelBBox:{x:2921,y:309,width:96,height:18},parent:null,relations:["12036hb"],color:"gray",line:"dashed",head:"normal"},{id:"1nv0w41",source:"developer",target:"edp.imageregistry",label:"pushes and pull images",points:[[4909,245],[4905,247],[4900,248],[4896,249],[4562,337],[3689,280],[3345,309],[3060,333],[2985,324],[2708,392],[2693,396],[2678,400],[2663,404]],labelBBox:{x:3346,y:309,width:151,height:18},parent:null,relations:["177bm2y"],color:"gray",line:"dashed",head:"normal"},{id:"1agven9",source:"developer",target:"edp.forgejogit",label:"uses git",points:[[5051,249],[5028,342],[4979,486],[4884,572],[4751,692],[4551,751],[4409,779]],labelBBox:{x:5005,y:470,width:52,height:18},parent:null,relations:["1uzzn9j"],color:"gray",line:"dashed",head:"normal"},{id:"3nxrq7",source:"developer",target:"edp.grafana",label:"monitors",points:[[4909,245],[4905,247],[4900,248],[4896,249],[4675,310],[4096,289],[3868,309],[3554,337],[3470,316],[3164,392],[3149,396],[3133,400],[3118,405]],labelBBox:{x:3869,y:309,width:58,height:18},parent:null,relations:["1xiorre"],color:"gray",line:"dashed",head:"normal"},{id:"bfgapq",source:"developer",target:"edp.keycloak",label:"authenticates",points:[[4909,245],[4905,247],[4900,248],[4896,249],[4613,331],[4529,277],[4236,309],[3950,341],[3872,318],[3594,392],[3579,396],[3564,401],[3549,406]],labelBBox:{x:4237,y:309,width:87,height:18},parent:null,relations:["jpl8ll"],color:"gray",line:"dashed",head:"normal"},{id:"f6xyb4",source:"edp.argoCD",target:"edp.forgejogit",label:"Syncs git repo",points:[[4239,572],[4239,613],[4239,662],[4239,705]],labelBBox:{x:4240,y:632,width:93,height:18},parent:"edp",relations:["6mupa0"],color:"gray",line:"dashed",head:"normal"},{id:"1tfxhhz",source:"edp.grafana",target:"edp.loki",label:"get logs",points:[[2996,572],[3024,614],[3057,663],[3086,706]],labelBBox:{x:3051,y:632,width:53,height:18},parent:"edp",relations:["1n1utzc"],color:"gray",line:"dashed",head:"normal"},{id:"1adt45o",source:"edp.grafana",target:"edp.prometheus",label:"get metrics and alerts",points:[[2876,572],[2848,614],[2815,663],[2786,706]],labelBBox:{x:2836,y:632,width:138,height:18},parent:"edp",relations:["13uvtiq"],color:"gray",line:"dashed",head:"normal"},{id:"stl3mw",source:"edp.forgejoActions",target:"forgejoRunner",label:"runs workflows",points:[[512,249],[481,277],[445,307],[411,332],[385,351],[357,370],[329,387]],labelBBox:{x:440,y:309,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"}]},keycloak:{_type:"element",tags:null,links:null,viewOf:"edp.keycloak",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Keycloak",id:"keycloak",autoLayout:{direction:"TB"},hash:"528a426001df41ee3034ded0cc7ae02a1bd96842",bounds:{x:0,y:0,width:927,height:560},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["119ru5h"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:48,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.keycloak",parent:null,level:0,children:["edp.keycloak.keycloak","edp.keycloak.keycloakDB"],inEdges:["119ru5h"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",depth:1,x:8,y:271,width:911,height:281,labelBBox:{x:6,y:0,width:66,height:15}},{id:"edp.keycloak.keycloak",parent:"edp.keycloak",level:1,children:[],inEdges:["119ru5h"],outEdges:["kn0x70"],title:"Keycloak",modelRef:"edp.keycloak.keycloak",shape:"rectangle",color:"primary",icon:"tech:java",style:{opacity:15,size:"md"},tags:[],technology:"Java",kind:"component",x:48,y:332,width:320,height:180,labelBBox:{x:103,y:64,width:144,height:46}},{id:"edp.keycloak.keycloakDB",parent:"edp.keycloak",level:1,children:[],inEdges:["kn0x70"],outEdges:[],title:"Database",modelRef:"edp.keycloak.keycloakDB",shape:"storage",color:"primary",icon:"tech:postgresql",style:{opacity:15,size:"md"},tags:[],technology:"Postgresql",kind:"component",x:559,y:332,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}}],edges:[{id:"119ru5h",source:"edp.ingressNginx",target:"edp.keycloak.keycloak",label:"https",points:[[208,180],[208,224],[208,277],[208,322]],labelBBox:{x:209,y:240,width:34,height:18},parent:null,relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"kn0x70",source:"edp.keycloak.keycloak",target:"edp.keycloak.keycloakDB",label:"reads/writes",points:[[368,422],[425,422],[490,422],[548,422]],labelBBox:{x:424,y:396,width:79,height:18},parent:"edp.keycloak",relations:["18zxrhs"],color:"gray",line:"dashed",head:"normal"}]},forgejo:{_type:"element",tags:null,links:null,viewOf:"edp.forgejo",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Forgejo",id:"forgejo",autoLayout:{direction:"TB"},hash:"e58fa1188b5809568e6fb20b5adc1584fef396d8",bounds:{x:0,y:0,width:846,height:528},nodes:[{id:"edp.forgejo",parent:null,level:0,children:["edp.forgejo.forgejocollaboration","edp.forgejo.forgejoproject"],inEdges:["1dgzzfb"],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform +and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:1830,y:392,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.imageregistry",parent:"edp",level:1,children:[],inEdges:["1nv0w41"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:2280,y:392,width:373,height:180,labelBBox:{x:47,y:53,width:311,height:67}},{id:"edp.grafana",parent:"edp",level:1,children:[],inEdges:["3nxrq7"],outEdges:["1tfxhhz","1adt45o"],title:"Grafana",modelRef:"edp.grafana",shape:"rectangle",color:"primary",icon:"tech:grafana",style:{opacity:25,size:"md"},description:{txt:"Data visualization and monitoring"},tags:[],kind:"container",x:2763,y:392,width:345,height:180,labelBBox:{x:47,y:63,width:283,height:48}},{id:"edp.keycloak",parent:"edp",level:1,children:[],inEdges:["bfgapq"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:3219,y:392,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.forgejogit",parent:"edp",level:1,children:[],inEdges:["1agven9","f6xyb4"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"md"},tags:[],kind:"component",x:4079,y:715,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}},{id:"edp.loki",parent:"edp",level:1,children:[],inEdges:["1tfxhhz"],outEdges:[],title:"Loki",modelRef:"edp.loki",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Log aggregation system"},tags:[],kind:"container",x:2991,y:715,width:320,height:180,labelBBox:{x:78,y:63,width:164,height:47}},{id:"edp.prometheus",parent:"edp",level:1,children:[],inEdges:["1adt45o"],outEdges:[],title:"Prometheus",modelRef:"edp.prometheus",shape:"rectangle",color:"primary",icon:"tech:prometheus",style:{opacity:25,size:"md"},description:{txt:"Monitoring and alerting toolkit"},tags:[],kind:"container",x:2561,y:715,width:320,height:180,labelBBox:{x:46,y:63,width:258,height:47}},{id:"edp.mailhog",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",navigateTo:"mailhog",x:890,y:69,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:48}},{id:"edp.minio",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Minio",modelRef:"edp.minio",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"S3 compatible blob storage"},tags:[],kind:"container",navigateTo:"minio",x:1320,y:69,width:320,height:180,labelBBox:{x:67,y:63,width:186,height:48}},{id:"edp.monitoring",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:1860,y:69,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"edp.openbao",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:430,y:392,width:320,height:180,labelBBox:{x:85,y:63,width:151,height:48}},{id:"edp.testApp",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",navigateTo:"testapp",x:860,y:392,width:320,height:180,labelBBox:{x:50,y:63,width:220,height:48}},{id:"edp.garm",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Garm Image",modelRef:"edp.garm",shape:"rectangle",color:"primary",icon:"tech:docker",style:{opacity:25,size:"md"},tags:[],kind:"container",x:1400,y:392,width:320,height:180,labelBBox:{x:89,y:74,width:173,height:24}},{id:"edp.application",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"edp.application",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:430,y:715,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}}],edges:[{id:"1cy1y20",source:"forgejoRunner",target:"edp.forgejoActions",label:"register",points:[[241,392],[270,364],[303,334],[335,309],[362,289],[392,270],[421,253]],labelBBox:{x:336,y:309,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"1y3lcyj",source:"developer",target:"edp.api",label:"uses API",points:[[4909,245],[4905,246],[4900,248],[4896,249],[4733,303],[4684,282],[4514,309],[4296,345],[4236,331],[4024,392],[4009,396],[3994,401],[3978,407]],labelBBox:{x:4515,y:309,width:60,height:18},parent:null,relations:["1dgd663"],color:"gray",line:"dashed",head:"normal"},{id:"1ttqc1r",source:"developer",target:"edp.argoCD",label:"manages deployments",points:[[4909,244],[4905,246],[4900,248],[4896,249],[4797,287],[4766,276],[4665,309],[4569,340],[4548,354],[4454,392],[4439,398],[4424,404],[4408,411]],labelBBox:{x:4666,y:309,width:145,height:18},parent:null,relations:["1l7h8as"],color:"gray",line:"dashed",head:"normal"},{id:"170qzun",source:"developer",target:"edp.ui",label:"manages project",points:[[4945,249],[4919,268],[4891,289],[4867,309],[4836,333],[4805,360],[4776,385]],labelBBox:{x:4868,y:309,width:108,height:18},parent:null,relations:["nb1ag9","65iq0s"],color:"gray",line:"dashed",head:"normal"},{id:"1bt83vj",source:"developer",target:"edp.forgejo",label:"manages code",points:[[4909,245],[4905,247],[4900,248],[4896,249],[4471,359],[3358,277],[2920,309],[2610,332],[2527,316],[2225,392],[2210,396],[2195,400],[2180,405]],labelBBox:{x:2921,y:309,width:96,height:18},parent:null,relations:["14tsadm"],color:"gray",line:"dashed",head:"normal"},{id:"1nv0w41",source:"developer",target:"edp.imageregistry",label:"pushes and pull images",points:[[4909,245],[4905,247],[4900,248],[4896,249],[4562,337],[3689,280],[3345,309],[3060,333],[2985,324],[2708,392],[2693,396],[2678,400],[2663,404]],labelBBox:{x:3346,y:309,width:151,height:18},parent:null,relations:["u2ppde"],color:"gray",line:"dashed",head:"normal"},{id:"1agven9",source:"developer",target:"edp.forgejogit",label:"uses git",points:[[5051,249],[5028,342],[4979,486],[4884,572],[4751,692],[4551,751],[4409,779]],labelBBox:{x:5005,y:470,width:52,height:18},parent:null,relations:["1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"3nxrq7",source:"developer",target:"edp.grafana",label:"monitors",points:[[4909,245],[4905,247],[4900,248],[4896,249],[4675,310],[4096,289],[3868,309],[3554,337],[3470,316],[3164,392],[3149,396],[3133,400],[3118,405]],labelBBox:{x:3869,y:309,width:58,height:18},parent:null,relations:["dol85h"],color:"gray",line:"dashed",head:"normal"},{id:"bfgapq",source:"developer",target:"edp.keycloak",label:"authenticates",points:[[4909,245],[4905,247],[4900,248],[4896,249],[4613,331],[4529,277],[4236,309],[3950,341],[3872,318],[3594,392],[3579,396],[3564,401],[3549,406]],labelBBox:{x:4237,y:309,width:87,height:18},parent:null,relations:["129xciy"],color:"gray",line:"dashed",head:"normal"},{id:"f6xyb4",source:"edp.argoCD",target:"edp.forgejogit",label:"Syncs git repo",points:[[4239,572],[4239,613],[4239,662],[4239,705]],labelBBox:{x:4240,y:632,width:93,height:18},parent:"edp",relations:["6mupa0"],color:"gray",line:"dashed",head:"normal"},{id:"1tfxhhz",source:"edp.grafana",target:"edp.loki",label:"get logs",points:[[2996,572],[3024,614],[3057,663],[3086,706]],labelBBox:{x:3051,y:632,width:53,height:18},parent:"edp",relations:["1n1utzc"],color:"gray",line:"dashed",head:"normal"},{id:"1adt45o",source:"edp.grafana",target:"edp.prometheus",label:"get metrics and alerts",points:[[2876,572],[2848,614],[2815,663],[2786,706]],labelBBox:{x:2836,y:632,width:138,height:18},parent:"edp",relations:["13uvtiq"],color:"gray",line:"dashed",head:"normal"},{id:"stl3mw",source:"edp.forgejoActions",target:"forgejoRunner",label:"runs workflows",points:[[512,249],[481,277],[445,307],[411,332],[385,351],[357,370],[329,387]],labelBBox:{x:440,y:309,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"}]},keycloak:{_type:"element",tags:null,links:null,viewOf:"edp.keycloak",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Keycloak",id:"keycloak",autoLayout:{direction:"TB"},hash:"528a426001df41ee3034ded0cc7ae02a1bd96842",bounds:{x:0,y:0,width:927,height:560},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["119ru5h"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:48,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.keycloak",parent:null,level:0,children:["edp.keycloak.keycloak","edp.keycloak.keycloakDB"],inEdges:["119ru5h"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",depth:1,x:8,y:271,width:911,height:281,labelBBox:{x:6,y:0,width:66,height:15}},{id:"edp.keycloak.keycloak",parent:"edp.keycloak",level:1,children:[],inEdges:["119ru5h"],outEdges:["kn0x70"],title:"Keycloak",modelRef:"edp.keycloak.keycloak",shape:"rectangle",color:"primary",icon:"tech:java",style:{opacity:15,size:"md"},tags:[],technology:"Java",kind:"component",x:48,y:332,width:320,height:180,labelBBox:{x:103,y:64,width:144,height:46}},{id:"edp.keycloak.keycloakDB",parent:"edp.keycloak",level:1,children:[],inEdges:["kn0x70"],outEdges:[],title:"Database",modelRef:"edp.keycloak.keycloakDB",shape:"storage",color:"primary",icon:"tech:postgresql",style:{opacity:15,size:"md"},tags:[],technology:"Postgresql",kind:"component",x:559,y:332,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}}],edges:[{id:"119ru5h",source:"edp.ingressNginx",target:"edp.keycloak.keycloak",label:"https",points:[[208,180],[208,224],[208,277],[208,322]],labelBBox:{x:209,y:240,width:34,height:18},parent:null,relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"kn0x70",source:"edp.keycloak.keycloak",target:"edp.keycloak.keycloakDB",label:"reads/writes",points:[[368,422],[425,422],[490,422],[548,422]],labelBBox:{x:424,y:396,width:79,height:18},parent:"edp.keycloak",relations:["18zxrhs"],color:"gray",line:"dashed",head:"normal"}]},forgejo:{_type:"element",tags:null,links:null,viewOf:"edp.forgejo",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Forgejo",id:"forgejo",autoLayout:{direction:"TB"},hash:"e58fa1188b5809568e6fb20b5adc1584fef396d8",bounds:{x:0,y:0,width:846,height:528},nodes:[{id:"edp.forgejo",parent:null,level:0,children:["edp.forgejo.forgejocollaboration","edp.forgejo.forgejoproject"],inEdges:["1dgzzfb"],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform offering capabilities like code version controling collaboration and ticketing @@ -279,30 +279,30 @@ and security scanning`},tags:[],technology:"Golang",kind:"container",depth:1,x:8 offering capabilities like code version controling collaboration and ticketing -and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:860,y:384,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.keycloak",parent:null,level:0,children:[],inEdges:["dh7ut5"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:1310,y:384,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.mailhog",parent:null,level:0,children:[],inEdges:["1bv0wod"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",navigateTo:"mailhog",x:1740,y:384,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:48}},{id:"edp.minio",parent:null,level:0,children:[],inEdges:["68hu20"],outEdges:[],title:"Minio",modelRef:"edp.minio",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"S3 compatible blob storage"},tags:[],kind:"container",navigateTo:"minio",x:2170,y:384,width:320,height:180,labelBBox:{x:67,y:63,width:186,height:48}},{id:"edp.monitoring",parent:null,level:0,children:[],inEdges:["nx2xew"],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:2600,y:384,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"edp.openbao",parent:null,level:0,children:[],inEdges:["momp7g"],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:3030,y:384,width:320,height:180,labelBBox:{x:85,y:63,width:151,height:48}},{id:"edp.testApp",parent:null,level:0,children:[],inEdges:["8cmkj7"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",navigateTo:"testapp",x:3460,y:384,width:320,height:180,labelBBox:{x:50,y:63,width:220,height:48}}],edges:[{id:"1poylyw",source:"edp.ingressNginx.ingressNginx",target:"edp.argoCD",label:"https",points:[[1740,164],[1459,187],[862,248],[375,384],[360,388],[345,393],[329,398]],labelBBox:{x:704,y:301,width:34,height:18},parent:null,relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"llqgvs",source:"edp.ingressNginx.ingressNginx",target:"edp.ui",label:"https",points:[[1740,177],[1525,211],[1131,283],[805,384],[790,389],[775,394],[759,400]],labelBBox:{x:1102,y:301,width:34,height:18},parent:null,relations:["v8c8aq"],color:"gray",line:"dashed",head:"normal"},{id:"75xltk",source:"edp.ingressNginx.ingressNginx",target:"edp.forgejo",label:"https",points:[[1740,208],[1609,254],[1420,322],[1255,384],[1240,390],[1225,395],[1210,401]],labelBBox:{x:1468,y:301,width:34,height:18},parent:null,relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"dh7ut5",source:"edp.ingressNginx.ingressNginx",target:"edp.keycloak",label:"https",points:[[1781,241],[1724,284],[1655,335],[1597,378]],labelBBox:{x:1699,y:301,width:34,height:18},parent:null,relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"1bv0wod",source:"edp.ingressNginx.ingressNginx",target:"edp.mailhog",label:"https",points:[[1900,241],[1900,282],[1900,331],[1900,374]],labelBBox:{x:1901,y:301,width:34,height:18},parent:null,relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"},{id:"68hu20",source:"edp.ingressNginx.ingressNginx",target:"edp.minio",label:"https",points:[[2019,241],[2076,284],[2145,335],[2203,378]],labelBBox:{x:2129,y:301,width:34,height:18},parent:null,relations:["fe65w2"],color:"gray",line:"dashed",head:"normal"},{id:"nx2xew",source:"edp.ingressNginx.ingressNginx",target:"edp.monitoring",label:"https",points:[[2060,207],[2191,253],[2381,321],[2545,384],[2560,390],[2575,396],[2591,402]],labelBBox:{x:2370,y:301,width:34,height:18},parent:null,relations:["1jvab2g","fs60l7"],color:"gray",line:"dashed",head:"normal"},{id:"momp7g",source:"edp.ingressNginx.ingressNginx",target:"edp.openbao",label:"https",points:[[2060,177],[2272,213],[2657,285],[2975,384],[2990,389],[3005,394],[3021,400]],labelBBox:{x:2744,y:301,width:34,height:18},parent:null,relations:["1p30hav"],color:"gray",line:"dashed",head:"normal"},{id:"8cmkj7",source:"edp.ingressNginx.ingressNginx",target:"edp.testApp",label:"https",points:[[2060,164],[2338,188],[2926,250],[3405,384],[3420,388],[3435,393],[3451,399]],labelBBox:{x:3165,y:301,width:34,height:18},parent:null,relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"}]},testapp:{_type:"element",tags:null,links:null,viewOf:"edp.testApp",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Fibonacci",id:"testapp",autoLayout:{direction:"TB"},hash:"d8f40f5cfab10e6e91c79feeef6be3240922c723",bounds:{x:0,y:0,width:400,height:544},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["1tefjx2"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:40,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.testApp",parent:null,level:0,children:["edp.testApp.fibonacci"],inEdges:["1tefjx2"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",depth:1,x:8,y:271,width:384,height:265,labelBBox:{x:6,y:0,width:65,height:15}},{id:"edp.testApp.fibonacci",parent:"edp.testApp",level:1,children:[],inEdges:["1tefjx2"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp.fibonacci",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},tags:[],technology:"Golang",kind:"component",x:40,y:324,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}}],edges:[{id:"1tefjx2",source:"edp.ingressNginx",target:"edp.testApp.fibonacci",label:"https",points:[[200,180],[200,221],[200,271],[200,314]],labelBBox:{x:201,y:240,width:34,height:18},parent:null,relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"}]},mailhog:{_type:"element",tags:null,links:null,viewOf:"edp.mailhog",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Mailhog",id:"mailhog",autoLayout:{direction:"TB"},hash:"b9e703c2ceb2b2a400194d90ac7caa94525ac068",bounds:{x:0,y:0,width:400,height:544},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["axipfp"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:40,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.mailhog",parent:null,level:0,children:["edp.mailhog.mailhog"],inEdges:["axipfp"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",depth:1,x:8,y:271,width:384,height:265,labelBBox:{x:6,y:0,width:56,height:15}},{id:"edp.mailhog.mailhog",parent:"edp.mailhog",level:1,children:[],inEdges:["axipfp"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog.mailhog",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},tags:[],technology:"Golang",kind:"component",x:40,y:324,width:320,height:180,labelBBox:{x:109,y:64,width:132,height:46}}],edges:[{id:"axipfp",source:"edp.ingressNginx",target:"edp.mailhog.mailhog",label:"https",points:[[200,180],[200,221],[200,271],[200,314]],labelBBox:{x:201,y:240,width:34,height:18},parent:null,relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"}]},spark:{_type:"element",tags:null,links:null,viewOf:"edp.spark",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Spark",id:"spark",autoLayout:{direction:"TB"},hash:"1ec41779bad408405a96c4063aa06b24ec2aace8",bounds:{x:0,y:0,width:400,height:281},nodes:[{id:"edp.spark",parent:null,level:0,children:["edp.spark.sparkoperator"],inEdges:[],outEdges:[],title:"Spark",modelRef:"edp.spark",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Allows running Spark applications on K8s"},tags:["internal"],kind:"container",depth:1,x:8,y:8,width:384,height:265,labelBBox:{x:6,y:0,width:43,height:15}},{id:"edp.spark.sparkoperator",parent:"edp.spark",level:1,children:[],inEdges:[],outEdges:[],title:"Spark Operator",modelRef:"edp.spark.sparkoperator",shape:"rectangle",color:"primary",icon:"tech:spark",style:{opacity:15,size:"md"},tags:[],technology:"Spark",kind:"component",x:40,y:61,width:320,height:180,labelBBox:{x:76,y:64,width:198,height:46}}],edges:[]},argoCD:{_type:"element",tags:null,links:null,viewOf:"edp.argoCD",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"ArgoCD",id:"argoCD",autoLayout:{direction:"TB"},hash:"53d798ca0a34dbe3ebf9b43318a151943ecaec33",bounds:{x:0,y:0,width:2058,height:883},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["ce0h9c"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:48,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.argoCD",parent:null,level:0,children:["edp.argoCD.argocdServer","edp.argoCD.argocdAppController","edp.argoCD.argocdAppSetController","edp.argoCD.argocdRepoServer","edp.argoCD.argocdRedis"],inEdges:["ce0h9c"],outEdges:["1e5s57z"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",depth:1,x:8,y:271,width:1690,height:604,labelBBox:{x:6,y:0,width:53,height:15}},{id:"edp.argoCD.argocdServer",parent:"edp.argoCD",level:1,children:[],inEdges:["ce0h9c"],outEdges:["124uc06"],title:"ArgoCD Server",modelRef:"edp.argoCD.argocdServer",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:48,y:332,width:320,height:180,labelBBox:{x:90,y:74,width:140,height:24}},{id:"edp.argoCD.argocdAppController",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["doh0se"],title:"ApplicationController",modelRef:"edp.argoCD.argocdAppController",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:478,y:332,width:320,height:180,labelBBox:{x:66,y:74,width:189,height:24}},{id:"edp.argoCD.argocdAppSetController",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["ekc7mk"],title:"ApplicationSeetController",modelRef:"edp.argoCD.argocdAppSetController",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:908,y:332,width:320,height:180,labelBBox:{x:45,y:74,width:230,height:24}},{id:"edp.argoCD.argocdRepoServer",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["173l3xq","1e5s57z"],title:"Repo Server",modelRef:"edp.argoCD.argocdRepoServer",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:1338,y:332,width:320,height:180,labelBBox:{x:102,y:74,width:116,height:24}},{id:"edp.argoCD.argocdRedis",parent:"edp.argoCD",level:1,children:[],inEdges:["124uc06","doh0se","ekc7mk","173l3xq"],outEdges:[],title:"Redis",modelRef:"edp.argoCD.argocdRedis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:15,size:"md"},tags:[],technology:"Redis",kind:"component",x:693,y:655,width:320,height:180,labelBBox:{x:118,y:64,width:114,height:46}},{id:"edp.forgejogit",parent:null,level:0,children:[],inEdges:["1e5s57z"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:15,size:"md"},tags:[],kind:"component",x:1738,y:655,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}}],edges:[{id:"ce0h9c",source:"edp.ingressNginx",target:"edp.argoCD.argocdServer",label:"https",points:[[208,180],[208,224],[208,277],[208,322]],labelBBox:{x:209,y:240,width:34,height:18},parent:null,relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"124uc06",source:"edp.argoCD.argocdServer",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[368,503],[464,550],[586,611],[684,660]],labelBBox:{x:551,y:572,width:65,height:18},parent:"edp.argoCD",relations:["yfhhi5"],color:"gray",line:"dashed",head:"normal"},{id:"doh0se",source:"edp.argoCD.argocdAppController",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[688,512],[704,539],[722,568],[740,595],[751,612],[764,630],[776,647]],labelBBox:{x:741,y:572,width:65,height:18},parent:"edp.argoCD",relations:["10vkxaf"],color:"gray",line:"dashed",head:"normal"},{id:"ekc7mk",source:"edp.argoCD.argocdAppSetController",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[1008,512],[980,554],[947,603],[918,646]],labelBBox:{x:968,y:572,width:65,height:18},parent:"edp.argoCD",relations:["i8z0mi"],color:"gray",line:"dashed",head:"normal"},{id:"173l3xq",source:"edp.argoCD.argocdRepoServer",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[1338,503],[1242,550],[1120,611],[1022,660]],labelBBox:{x:1196,y:572,width:65,height:18},parent:"edp.argoCD",relations:["iullhy"],color:"gray",line:"dashed",head:"normal"},{id:"1e5s57z",source:"edp.argoCD.argocdRepoServer",target:"edp.forgejogit",label:"Syncs git repo",points:[[1609,512],[1662,554],[1725,605],[1779,649]],labelBBox:{x:1711,y:572,width:93,height:18},parent:null,relations:["6mupa0"],color:"gray",line:"dashed",head:"normal"}]},idp:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp-as-idp.c4",description:null,title:"EDP as IDP",id:"idp",autoLayout:{direction:"TB"},hash:"d1e4c998ee263bce5b2572834b6a9a7b6d6391f5",bounds:{x:0,y:0,width:6408,height:1862},nodes:[{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["1w9cpb2","1y3lcyj","1agven9","1nv0w41","3nxrq7","bfgapq"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:25,size:"xl"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:5888,y:192,width:520,height:290,labelBBox:{x:111,y:108,width:298,height:64}},{id:"@gr1",parent:null,kind:"@group",title:"EDP",color:"primary",shape:"rectangle",children:["@gr2","@gr5","@gr6","@gr7"],inEdges:["1w9cpb2","1y3lcyj","1agven9","1nv0w41","3nxrq7","bfgapq"],outEdges:[],level:0,depth:3,tags:[],style:{border:"dashed",opacity:15},x:8,y:8,width:5840,height:1846,labelBBox:{x:6,y:0,width:27,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Developer Control Plane",color:"primary",shape:"rectangle",children:["@gr3","@gr4"],inEdges:["1w9cpb2","1y3lcyj","1agven9"],outEdges:[],level:0,depth:2,tags:[],style:{border:"dashed",opacity:15},x:48,y:69,width:2580,height:935,labelBBox:{x:6,y:0,width:170,height:15}},{id:"@gr3",parent:"@gr2",kind:"@group",title:"Frontend",color:"primary",shape:"rectangle",children:["edp.ui.backstage","edp.api"],inEdges:["1w9cpb2","1y3lcyj"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:1358,y:572,width:1230,height:392,labelBBox:{x:6,y:0,width:65,height:15}},{id:"@gr4",parent:"@gr2",kind:"@group",title:"Version Control",color:"primary",shape:"rectangle",children:["applicationspecification.application_gitrepo","applicationspecification.applicationspec_gitrepo","edp.forgejogit"],inEdges:["1agven9"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:88,y:130,width:1230,height:834,labelBBox:{x:6,y:0,width:111,height:15}},{id:"@gr5",parent:"@gr1",kind:"@group",title:"Integration & Delivery Plane",color:"primary",shape:"rectangle",children:["forgejoRunner","edp.imageregistry","edp.argoCD"],inEdges:["1nv0w41"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:3308,y:572,width:600,height:1242,labelBBox:{x:6,y:0,width:189,height:15}},{id:"@gr6",parent:"@gr1",kind:"@group",title:"Monitoring Plane",color:"primary",shape:"rectangle",children:["edp.monitoring","edp.grafana"],inEdges:["3nxrq7"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:2668,y:130,width:600,height:834,labelBBox:{x:6,y:0,width:116,height:15}},{id:"@gr7",parent:"@gr1",kind:"@group",title:"Security Plane",color:"primary",shape:"rectangle",children:["edp.keycloak","edp.kyverno","edp.externalSecrets","edp.openbao"],inEdges:["bfgapq"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:3948,y:572,width:1860,height:831,labelBBox:{x:6,y:0,width:100,height:15}},{id:"edp.ui.backstage",parent:"@gr3",level:1,children:[],inEdges:["1w9cpb2"],outEdges:[],title:"Backstage",modelRef:"edp.ui.backstage",shape:"browser",color:"primary",icon:"tech:react",style:{opacity:25,size:"xl"},tags:[],kind:"component",x:1398,y:634,width:520,height:290,labelBBox:{x:179,y:123,width:192,height:32}},{id:"edp.api",parent:"@gr3",level:1,children:[],inEdges:["1y3lcyj"],outEdges:[],title:"API",modelRef:"edp.api",shape:"rectangle",color:"primary",icon:"tech:swagger",style:{opacity:25,size:"xl"},description:{txt:"API for the EDP platform"},tags:[],kind:"container",x:2028,y:634,width:520,height:290,labelBBox:{x:129,y:108,width:292,height:64}},{id:"applicationspecification.application_gitrepo",parent:"@gr4",level:1,children:[],inEdges:[],outEdges:[],title:"Git App Repo",modelRef:"applicationspecification.application_gitrepo",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},description:{txt:"Git Application Repository"},tags:[],technology:"Git",kind:"component",x:128,y:192,width:520,height:290,labelBBox:{x:123,y:96,width:304,height:89}},{id:"applicationspecification.applicationspec_gitrepo",parent:"@gr4",level:1,children:[],inEdges:[],outEdges:[],title:"Git AppSpec Repo",modelRef:"applicationspecification.applicationspec_gitrepo",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},description:{txt:"Git Application Specification Repository"},tags:[],technology:"Git",kind:"component",x:128,y:634,width:520,height:290,labelBBox:{x:114,y:83,width:322,height:114}},{id:"edp.forgejogit",parent:"@gr4",level:1,children:[],inEdges:["1agven9"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},tags:[],kind:"component",x:758,y:634,width:520,height:290,labelBBox:{x:179,y:123,width:192,height:32}},{id:"forgejoRunner",parent:"@gr5",level:1,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:3348,y:1073,width:520,height:290,labelBBox:{x:69,y:71,width:382,height:139}},{id:"edp.imageregistry",parent:"@gr5",level:1,children:[],inEdges:["1nv0w41"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"xl"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:3348,y:634,width:520,height:290,labelBBox:{x:70,y:96,width:410,height:89}},{id:"edp.argoCD",parent:"@gr5",level:1,children:[],inEdges:[],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:3348,y:1484,width:520,height:290,labelBBox:{x:187,y:108,width:145,height:64}},{id:"edp.monitoring",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:2708,y:192,width:520,height:290,labelBBox:{x:66,y:96,width:388,height:88}},{id:"edp.grafana",parent:"@gr6",level:1,children:[],inEdges:["3nxrq7"],outEdges:[],title:"Grafana",modelRef:"edp.grafana",shape:"rectangle",color:"primary",icon:"tech:grafana",style:{opacity:25,size:"xl"},description:{txt:"Data visualization and monitoring"},tags:[],kind:"container",x:2708,y:634,width:520,height:290,labelBBox:{x:89,y:108,width:372,height:64}},{id:"edp.keycloak",parent:"@gr7",level:1,children:[],inEdges:["bfgapq"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:5248,y:634,width:520,height:290,labelBBox:{x:92,y:108,width:337,height:64}},{id:"edp.kyverno",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"Kyverno",modelRef:"edp.kyverno",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Policy-as-Code"},tags:["internal"],kind:"container",x:3988,y:634,width:520,height:290,labelBBox:{x:187,y:108,width:146,height:64}},{id:"edp.externalSecrets",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"external-secrets",modelRef:"edp.externalSecrets",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Provider to access externally stored Kubernetes secrets"},tags:["internal"],kind:"container",navigateTo:"externalSecrets",x:4618,y:634,width:520,height:290,labelBBox:{x:92,y:96,width:337,height:88}},{id:"edp.openbao",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:3988,y:1073,width:520,height:290,labelBBox:{x:155,y:108,width:209,height:64}}],edges:[{id:"1w9cpb2",source:"developer",target:"edp.ui.backstage",label:"create and maintain apps",points:[[5888,380],[5537,435],[4891,529],[4336,564],[4303,567],[2004,563],[1973,572],[1931,585],[1888,605],[1850,629]],labelBBox:{x:4585,y:541,width:161,height:18},parent:null,relations:["1woleh6"],color:"gray",line:"dashed",head:"normal"},{id:"1y3lcyj",source:"developer",target:"edp.api",label:"uses API",points:[[5888,397],[5631,453],[5226,532],[4870,564],[4839,567],[2671,564],[2641,572],[2594,585],[2548,606],[2504,629]],labelBBox:{x:5046,y:541,width:60,height:18},parent:null,relations:["1l9a3pd"],color:"gray",line:"dashed",head:"normal"},{id:"1agven9",source:"developer",target:"edp.forgejogit",label:"uses git",points:[[5888,369],[5436,421],[4473,526],[3656,564],[3624,566],[1362,563],[1331,572],[1289,585],[1247,605],[1209,628]],labelBBox:{x:3997,y:541,width:52,height:18},parent:null,relations:["1uzzn9j"],color:"gray",line:"dashed",head:"normal"},{id:"1nv0w41",source:"developer",target:"edp.imageregistry",label:"pushes and pull images",points:[[5888,438],[5750,487],[5575,540],[5414,564],[5373,571],[3961,560],[3921,572],[3879,585],[3837,605],[3799,628]],labelBBox:{x:5518,y:541,width:151,height:18},parent:null,relations:["177bm2y"],color:"gray",line:"dashed",head:"normal"},{id:"3nxrq7",source:"developer",target:"edp.grafana",label:"monitors",points:[[5888,415],[5694,469],[5420,536],[5175,564],[5123,571],[3331,557],[3281,572],[3239,585],[3197,605],[3159,628]],labelBBox:{x:5310,y:541,width:58,height:18},parent:null,relations:["1xiorre"],color:"gray",line:"dashed",head:"normal"},{id:"bfgapq",source:"developer",target:"edp.keycloak",label:"authenticates",points:[[5939,481],[5871,528],[5795,581],[5726,628]],labelBBox:{x:5848,y:541,width:87,height:18},parent:null,relations:["jpl8ll"],color:"gray",line:"dashed",head:"normal"}]},edporchestrator:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp-as-orchestrator.c4",description:null,title:"EDP as Orchestrator",id:"edporchestrator",autoLayout:{direction:"TB"},hash:"3b527fd6f99efa02fc730d4569c0a0ccc75b4ef3",bounds:{x:0,y:0,width:846,height:1457},nodes:[{id:"@gr1",parent:null,kind:"@group",title:"EDP",color:"primary",shape:"rectangle",children:["@gr2","@gr3","@gr4","@gr5","@gr6"],inEdges:[],outEdges:[],level:0,depth:2,tags:[],style:{border:"dashed",opacity:15},x:8,y:8,width:830,height:1441,labelBBox:{x:6,y:0,width:27,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Developer Control Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:48,y:69,width:320,height:180,labelBBox:{x:49,y:74,width:222,height:24}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Integration & Delivery Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:478,y:69,width:320,height:180,labelBBox:{x:34,y:74,width:252,height:24}},{id:"@gr4",parent:"@gr1",kind:"@group",title:"Monitoring Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:48,y:369,width:320,height:180,labelBBox:{x:83,y:74,width:154,height:24}},{id:"@gr5",parent:"@gr1",kind:"@group",title:"Security Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:478,y:369,width:320,height:180,labelBBox:{x:94,y:74,width:133,height:24}},{id:"@gr6",parent:"@gr1",kind:"@group",title:"Backend",color:"primary",shape:"rectangle",children:["edp.argoCD","edp.crossplane"],inEdges:[],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:198,y:608,width:600,height:801,labelBBox:{x:6,y:0,width:59,height:15}},{id:"edp.argoCD",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Declarative management of platform tools"},tags:[],kind:"container",isCustomized:!0,navigateTo:"argoCD",x:238,y:669,width:520,height:290,labelBBox:{x:64,y:109,width:393,height:63}},{id:"edp.crossplane",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"Crossplane",modelRef:"edp.crossplane",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Declarative management of ressources"},tags:["internal"],kind:"container",navigateTo:"crossplane",x:238,y:1079,width:520,height:290,labelBBox:{x:75,y:109,width:369,height:63}}],edges:[]},"application-transition":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/application-transition.c4",description:null,title:"application-transistion",id:"application-transition",autoLayout:{direction:"LR",nodeSep:140,rankSep:180},hash:"273e521fc8ecb88776ebeada66d26bce21c3c2e5",bounds:{x:0,y:0,width:1297,height:857},nodes:[{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["@gr2","@gr3","developer","otherProductLifecycleRoles"],inEdges:[],outEdges:["17brhnu"],level:0,depth:3,tags:[],style:{border:"none",opacity:20},x:8,y:8,width:853,height:841,labelBBox:{x:6,y:0,width:114,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1uo6k6b"],level:0,depth:2,tags:[],style:{border:"none",opacity:30},x:373,y:459,width:448,height:350,labelBBox:{x:6,y:0,width:122,height:15}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1okgiq5","1wupl5x","1uo6k6b"],outEdges:["17brhnu","6szgsj"],level:0,depth:2,tags:[],style:{border:"none",opacity:30},x:373,y:69,width:448,height:350,labelBBox:{x:6,y:0,width:126,height:15}},{id:"cloud",parent:null,level:0,children:["cloud.application"],inEdges:["17brhnu"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",depth:1,isCustomized:!0,x:905,y:122,width:384,height:265,labelBBox:{x:6,y:0,width:132,height:15}},{id:"cloud.application",parent:"cloud",level:1,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"cloud.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:937,y:175,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:63,y:530,width:180,height:100,labelBBox:{x:51,y:37,width:77,height:20}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:48,y:215,width:209,height:100,labelBBox:{x:6,y:37,width:197,height:20}},{id:"localbox",parent:"@gr2",level:1,children:["localbox.application"],inEdges:["zjg544","6szgsj"],outEdges:["1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",depth:1,x:405,y:512,width:384,height:265,labelBBox:{x:6,y:0,width:66,height:15}},{id:"localbox.application",parent:"localbox",level:2,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"localbox.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:437,y:565,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}},{id:"edp",parent:"@gr3",level:1,children:["edp.application"],inEdges:["1okgiq5","1wupl5x","1uo6k6b"],outEdges:["17brhnu","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"magenta",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"edp",x:405,y:122,width:384,height:265,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.application",parent:"edp",level:2,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"edp.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:437,y:175,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}}],edges:[{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[242,595],[286,602],[341,612],[395,621]],labelBBox:{x:257,y:608,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[224,530],[276,493],[349,441],[416,393]],labelBBox:{x:257,y:458,width:66,height:18},parent:"@gr1",relations:["1pp73vj","yk9zv2","12036hb","jpl8ll","1ghp31l","1xiorre","1woleh6","177bm2y","1l9a3pd","1uzzn9j"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[257,265],[298,265],[347,265],[395,265]],labelBBox:{x:332,y:265,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[597,512],[597,474],[597,436],[597,397]],labelBBox:{x:563,y:449,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[789,265],[824,265],[860,265],[895,265]],labelBBox:{x:848,y:253,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[597,387],[597,425],[597,463],[597,502]],labelBBox:null,parent:"@gr1",relations:["wvo8i"],color:"gray",line:"dashed",head:"normal"}]},landscape:{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/platform-context/developer-landscape.c4",description:null,title:"Developer Landscape View",id:"landscape",autoLayout:{direction:"LR",nodeSep:100,rankSep:100},hash:"2200052af6e85b31e932fe8da7e72109bde5a2c2",bounds:{x:0,y:0,width:3368,height:1756},nodes:[{id:"applicationspecification",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"application-specification",modelRef:"applicationspecification",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},tags:[],kind:"component",x:16,y:280,width:338,height:180,labelBBox:{x:18,y:45,width:303,height:84}},{id:"forgejoRunnerWorker",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner Worker",modelRef:"forgejoRunnerWorker",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},tags:[],kind:"component",x:734,y:280,width:333,height:180,labelBBox:{x:18,y:45,width:297,height:84}},{id:"promtail",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Promtail",modelRef:"promtail",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Log shipper agent for Loki"},tags:[],kind:"component",x:1288,y:280,width:320,height:180,labelBBox:{x:72,y:63,width:177,height:48}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:[],outEdges:[],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:1862,y:280,width:320,height:180,labelBBox:{x:18,y:54,width:283,height:66}},{id:"elasticsearch",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Elasticsearch",modelRef:"elasticsearch",shape:"rectangle",color:"primary",icon:"tech:elasticsearch",style:{opacity:20,size:"md"},description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of +and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:860,y:384,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.keycloak",parent:null,level:0,children:[],inEdges:["dh7ut5"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:1310,y:384,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.mailhog",parent:null,level:0,children:[],inEdges:["1bv0wod"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",navigateTo:"mailhog",x:1740,y:384,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:48}},{id:"edp.minio",parent:null,level:0,children:[],inEdges:["68hu20"],outEdges:[],title:"Minio",modelRef:"edp.minio",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"S3 compatible blob storage"},tags:[],kind:"container",navigateTo:"minio",x:2170,y:384,width:320,height:180,labelBBox:{x:67,y:63,width:186,height:48}},{id:"edp.monitoring",parent:null,level:0,children:[],inEdges:["nx2xew"],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:2600,y:384,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"edp.openbao",parent:null,level:0,children:[],inEdges:["momp7g"],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:3030,y:384,width:320,height:180,labelBBox:{x:85,y:63,width:151,height:48}},{id:"edp.testApp",parent:null,level:0,children:[],inEdges:["8cmkj7"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",navigateTo:"testapp",x:3460,y:384,width:320,height:180,labelBBox:{x:50,y:63,width:220,height:48}}],edges:[{id:"1poylyw",source:"edp.ingressNginx.ingressNginx",target:"edp.argoCD",label:"https",points:[[1740,164],[1459,187],[862,248],[375,384],[360,388],[345,393],[329,398]],labelBBox:{x:704,y:301,width:34,height:18},parent:null,relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"llqgvs",source:"edp.ingressNginx.ingressNginx",target:"edp.ui",label:"https",points:[[1740,177],[1525,211],[1131,283],[805,384],[790,389],[775,394],[759,400]],labelBBox:{x:1102,y:301,width:34,height:18},parent:null,relations:["v8c8aq"],color:"gray",line:"dashed",head:"normal"},{id:"75xltk",source:"edp.ingressNginx.ingressNginx",target:"edp.forgejo",label:"https",points:[[1740,208],[1609,254],[1420,322],[1255,384],[1240,390],[1225,395],[1210,401]],labelBBox:{x:1468,y:301,width:34,height:18},parent:null,relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"dh7ut5",source:"edp.ingressNginx.ingressNginx",target:"edp.keycloak",label:"https",points:[[1781,241],[1724,284],[1655,335],[1597,378]],labelBBox:{x:1699,y:301,width:34,height:18},parent:null,relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"1bv0wod",source:"edp.ingressNginx.ingressNginx",target:"edp.mailhog",label:"https",points:[[1900,241],[1900,282],[1900,331],[1900,374]],labelBBox:{x:1901,y:301,width:34,height:18},parent:null,relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"},{id:"68hu20",source:"edp.ingressNginx.ingressNginx",target:"edp.minio",label:"https",points:[[2019,241],[2076,284],[2145,335],[2203,378]],labelBBox:{x:2129,y:301,width:34,height:18},parent:null,relations:["fe65w2"],color:"gray",line:"dashed",head:"normal"},{id:"nx2xew",source:"edp.ingressNginx.ingressNginx",target:"edp.monitoring",label:"https",points:[[2060,207],[2191,253],[2381,321],[2545,384],[2560,390],[2575,396],[2591,402]],labelBBox:{x:2370,y:301,width:34,height:18},parent:null,relations:["1jvab2g","fs60l7"],color:"gray",line:"dashed",head:"normal"},{id:"momp7g",source:"edp.ingressNginx.ingressNginx",target:"edp.openbao",label:"https",points:[[2060,177],[2272,213],[2657,285],[2975,384],[2990,389],[3005,394],[3021,400]],labelBBox:{x:2744,y:301,width:34,height:18},parent:null,relations:["1p30hav"],color:"gray",line:"dashed",head:"normal"},{id:"8cmkj7",source:"edp.ingressNginx.ingressNginx",target:"edp.testApp",label:"https",points:[[2060,164],[2338,188],[2926,250],[3405,384],[3420,388],[3435,393],[3451,399]],labelBBox:{x:3165,y:301,width:34,height:18},parent:null,relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"}]},testapp:{_type:"element",tags:null,links:null,viewOf:"edp.testApp",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Fibonacci",id:"testapp",autoLayout:{direction:"TB"},hash:"d8f40f5cfab10e6e91c79feeef6be3240922c723",bounds:{x:0,y:0,width:400,height:544},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["1tefjx2"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:40,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.testApp",parent:null,level:0,children:["edp.testApp.fibonacci"],inEdges:["1tefjx2"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",depth:1,x:8,y:271,width:384,height:265,labelBBox:{x:6,y:0,width:65,height:15}},{id:"edp.testApp.fibonacci",parent:"edp.testApp",level:1,children:[],inEdges:["1tefjx2"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp.fibonacci",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},tags:[],technology:"Golang",kind:"component",x:40,y:324,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}}],edges:[{id:"1tefjx2",source:"edp.ingressNginx",target:"edp.testApp.fibonacci",label:"https",points:[[200,180],[200,221],[200,271],[200,314]],labelBBox:{x:201,y:240,width:34,height:18},parent:null,relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"}]},mailhog:{_type:"element",tags:null,links:null,viewOf:"edp.mailhog",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Mailhog",id:"mailhog",autoLayout:{direction:"TB"},hash:"b9e703c2ceb2b2a400194d90ac7caa94525ac068",bounds:{x:0,y:0,width:400,height:544},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["axipfp"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:40,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.mailhog",parent:null,level:0,children:["edp.mailhog.mailhog"],inEdges:["axipfp"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",depth:1,x:8,y:271,width:384,height:265,labelBBox:{x:6,y:0,width:56,height:15}},{id:"edp.mailhog.mailhog",parent:"edp.mailhog",level:1,children:[],inEdges:["axipfp"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog.mailhog",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},tags:[],technology:"Golang",kind:"component",x:40,y:324,width:320,height:180,labelBBox:{x:109,y:64,width:132,height:46}}],edges:[{id:"axipfp",source:"edp.ingressNginx",target:"edp.mailhog.mailhog",label:"https",points:[[200,180],[200,221],[200,271],[200,314]],labelBBox:{x:201,y:240,width:34,height:18},parent:null,relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"}]},spark:{_type:"element",tags:null,links:null,viewOf:"edp.spark",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Spark",id:"spark",autoLayout:{direction:"TB"},hash:"1ec41779bad408405a96c4063aa06b24ec2aace8",bounds:{x:0,y:0,width:400,height:281},nodes:[{id:"edp.spark",parent:null,level:0,children:["edp.spark.sparkoperator"],inEdges:[],outEdges:[],title:"Spark",modelRef:"edp.spark",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Allows running Spark applications on K8s"},tags:["internal"],kind:"container",depth:1,x:8,y:8,width:384,height:265,labelBBox:{x:6,y:0,width:43,height:15}},{id:"edp.spark.sparkoperator",parent:"edp.spark",level:1,children:[],inEdges:[],outEdges:[],title:"Spark Operator",modelRef:"edp.spark.sparkoperator",shape:"rectangle",color:"primary",icon:"tech:spark",style:{opacity:15,size:"md"},tags:[],technology:"Spark",kind:"component",x:40,y:61,width:320,height:180,labelBBox:{x:76,y:64,width:198,height:46}}],edges:[]},argoCD:{_type:"element",tags:null,links:null,viewOf:"edp.argoCD",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"ArgoCD",id:"argoCD",autoLayout:{direction:"TB"},hash:"53d798ca0a34dbe3ebf9b43318a151943ecaec33",bounds:{x:0,y:0,width:2058,height:883},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["ce0h9c"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:48,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.argoCD",parent:null,level:0,children:["edp.argoCD.argocdServer","edp.argoCD.argocdAppController","edp.argoCD.argocdAppSetController","edp.argoCD.argocdRepoServer","edp.argoCD.argocdRedis"],inEdges:["ce0h9c"],outEdges:["1e5s57z"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",depth:1,x:8,y:271,width:1690,height:604,labelBBox:{x:6,y:0,width:53,height:15}},{id:"edp.argoCD.argocdServer",parent:"edp.argoCD",level:1,children:[],inEdges:["ce0h9c"],outEdges:["124uc06"],title:"ArgoCD Server",modelRef:"edp.argoCD.argocdServer",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:48,y:332,width:320,height:180,labelBBox:{x:90,y:74,width:140,height:24}},{id:"edp.argoCD.argocdAppController",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["doh0se"],title:"ApplicationController",modelRef:"edp.argoCD.argocdAppController",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:478,y:332,width:320,height:180,labelBBox:{x:66,y:74,width:189,height:24}},{id:"edp.argoCD.argocdAppSetController",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["ekc7mk"],title:"ApplicationSeetController",modelRef:"edp.argoCD.argocdAppSetController",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:908,y:332,width:320,height:180,labelBBox:{x:45,y:74,width:230,height:24}},{id:"edp.argoCD.argocdRepoServer",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["173l3xq","1e5s57z"],title:"Repo Server",modelRef:"edp.argoCD.argocdRepoServer",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:1338,y:332,width:320,height:180,labelBBox:{x:102,y:74,width:116,height:24}},{id:"edp.argoCD.argocdRedis",parent:"edp.argoCD",level:1,children:[],inEdges:["124uc06","doh0se","ekc7mk","173l3xq"],outEdges:[],title:"Redis",modelRef:"edp.argoCD.argocdRedis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:15,size:"md"},tags:[],technology:"Redis",kind:"component",x:693,y:655,width:320,height:180,labelBBox:{x:118,y:64,width:114,height:46}},{id:"edp.forgejogit",parent:null,level:0,children:[],inEdges:["1e5s57z"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:15,size:"md"},tags:[],kind:"component",x:1738,y:655,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}}],edges:[{id:"ce0h9c",source:"edp.ingressNginx",target:"edp.argoCD.argocdServer",label:"https",points:[[208,180],[208,224],[208,277],[208,322]],labelBBox:{x:209,y:240,width:34,height:18},parent:null,relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"124uc06",source:"edp.argoCD.argocdServer",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[368,503],[464,550],[586,611],[684,660]],labelBBox:{x:551,y:572,width:65,height:18},parent:"edp.argoCD",relations:["yfhhi5"],color:"gray",line:"dashed",head:"normal"},{id:"doh0se",source:"edp.argoCD.argocdAppController",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[688,512],[704,539],[722,568],[740,595],[751,612],[764,630],[776,647]],labelBBox:{x:741,y:572,width:65,height:18},parent:"edp.argoCD",relations:["10vkxaf"],color:"gray",line:"dashed",head:"normal"},{id:"ekc7mk",source:"edp.argoCD.argocdAppSetController",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[1008,512],[980,554],[947,603],[918,646]],labelBBox:{x:968,y:572,width:65,height:18},parent:"edp.argoCD",relations:["i8z0mi"],color:"gray",line:"dashed",head:"normal"},{id:"173l3xq",source:"edp.argoCD.argocdRepoServer",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[1338,503],[1242,550],[1120,611],[1022,660]],labelBBox:{x:1196,y:572,width:65,height:18},parent:"edp.argoCD",relations:["iullhy"],color:"gray",line:"dashed",head:"normal"},{id:"1e5s57z",source:"edp.argoCD.argocdRepoServer",target:"edp.forgejogit",label:"Syncs git repo",points:[[1609,512],[1662,554],[1725,605],[1779,649]],labelBBox:{x:1711,y:572,width:93,height:18},parent:null,relations:["6mupa0"],color:"gray",line:"dashed",head:"normal"}]},idp:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp-as-idp.c4",description:null,title:"EDP as IDP",id:"idp",autoLayout:{direction:"TB"},hash:"d1e4c998ee263bce5b2572834b6a9a7b6d6391f5",bounds:{x:0,y:0,width:6408,height:1862},nodes:[{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["1w9cpb2","1y3lcyj","1agven9","1nv0w41","3nxrq7","bfgapq"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:25,size:"xl"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:5888,y:192,width:520,height:290,labelBBox:{x:111,y:108,width:298,height:64}},{id:"@gr1",parent:null,kind:"@group",title:"EDP",color:"primary",shape:"rectangle",children:["@gr2","@gr5","@gr6","@gr7"],inEdges:["1w9cpb2","1y3lcyj","1agven9","1nv0w41","3nxrq7","bfgapq"],outEdges:[],level:0,depth:3,tags:[],style:{border:"dashed",opacity:15},x:8,y:8,width:5840,height:1846,labelBBox:{x:6,y:0,width:27,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Developer Control Plane",color:"primary",shape:"rectangle",children:["@gr3","@gr4"],inEdges:["1w9cpb2","1y3lcyj","1agven9"],outEdges:[],level:0,depth:2,tags:[],style:{border:"dashed",opacity:15},x:48,y:69,width:2580,height:935,labelBBox:{x:6,y:0,width:170,height:15}},{id:"@gr3",parent:"@gr2",kind:"@group",title:"Frontend",color:"primary",shape:"rectangle",children:["edp.ui.backstage","edp.api"],inEdges:["1w9cpb2","1y3lcyj"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:1358,y:572,width:1230,height:392,labelBBox:{x:6,y:0,width:65,height:15}},{id:"@gr4",parent:"@gr2",kind:"@group",title:"Version Control",color:"primary",shape:"rectangle",children:["applicationspecification.application_gitrepo","applicationspecification.applicationspec_gitrepo","edp.forgejogit"],inEdges:["1agven9"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:88,y:130,width:1230,height:834,labelBBox:{x:6,y:0,width:111,height:15}},{id:"@gr5",parent:"@gr1",kind:"@group",title:"Integration & Delivery Plane",color:"primary",shape:"rectangle",children:["forgejoRunner","edp.imageregistry","edp.argoCD"],inEdges:["1nv0w41"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:3308,y:572,width:600,height:1242,labelBBox:{x:6,y:0,width:189,height:15}},{id:"@gr6",parent:"@gr1",kind:"@group",title:"Monitoring Plane",color:"primary",shape:"rectangle",children:["edp.monitoring","edp.grafana"],inEdges:["3nxrq7"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:2668,y:130,width:600,height:834,labelBBox:{x:6,y:0,width:116,height:15}},{id:"@gr7",parent:"@gr1",kind:"@group",title:"Security Plane",color:"primary",shape:"rectangle",children:["edp.keycloak","edp.kyverno","edp.externalSecrets","edp.openbao"],inEdges:["bfgapq"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:3948,y:572,width:1860,height:831,labelBBox:{x:6,y:0,width:100,height:15}},{id:"edp.ui.backstage",parent:"@gr3",level:1,children:[],inEdges:["1w9cpb2"],outEdges:[],title:"Backstage",modelRef:"edp.ui.backstage",shape:"browser",color:"primary",icon:"tech:react",style:{opacity:25,size:"xl"},tags:[],kind:"component",x:1398,y:634,width:520,height:290,labelBBox:{x:179,y:123,width:192,height:32}},{id:"edp.api",parent:"@gr3",level:1,children:[],inEdges:["1y3lcyj"],outEdges:[],title:"API",modelRef:"edp.api",shape:"rectangle",color:"primary",icon:"tech:swagger",style:{opacity:25,size:"xl"},description:{txt:"API for the EDP platform"},tags:[],kind:"container",x:2028,y:634,width:520,height:290,labelBBox:{x:129,y:108,width:292,height:64}},{id:"applicationspecification.application_gitrepo",parent:"@gr4",level:1,children:[],inEdges:[],outEdges:[],title:"Git App Repo",modelRef:"applicationspecification.application_gitrepo",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},description:{txt:"Git Application Repository"},tags:[],technology:"Git",kind:"component",x:128,y:192,width:520,height:290,labelBBox:{x:123,y:96,width:304,height:89}},{id:"applicationspecification.applicationspec_gitrepo",parent:"@gr4",level:1,children:[],inEdges:[],outEdges:[],title:"Git AppSpec Repo",modelRef:"applicationspecification.applicationspec_gitrepo",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},description:{txt:"Git Application Specification Repository"},tags:[],technology:"Git",kind:"component",x:128,y:634,width:520,height:290,labelBBox:{x:114,y:83,width:322,height:114}},{id:"edp.forgejogit",parent:"@gr4",level:1,children:[],inEdges:["1agven9"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},tags:[],kind:"component",x:758,y:634,width:520,height:290,labelBBox:{x:179,y:123,width:192,height:32}},{id:"forgejoRunner",parent:"@gr5",level:1,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:3348,y:1073,width:520,height:290,labelBBox:{x:69,y:71,width:382,height:139}},{id:"edp.imageregistry",parent:"@gr5",level:1,children:[],inEdges:["1nv0w41"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"xl"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:3348,y:634,width:520,height:290,labelBBox:{x:70,y:96,width:410,height:89}},{id:"edp.argoCD",parent:"@gr5",level:1,children:[],inEdges:[],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:3348,y:1484,width:520,height:290,labelBBox:{x:187,y:108,width:145,height:64}},{id:"edp.monitoring",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:2708,y:192,width:520,height:290,labelBBox:{x:66,y:96,width:388,height:88}},{id:"edp.grafana",parent:"@gr6",level:1,children:[],inEdges:["3nxrq7"],outEdges:[],title:"Grafana",modelRef:"edp.grafana",shape:"rectangle",color:"primary",icon:"tech:grafana",style:{opacity:25,size:"xl"},description:{txt:"Data visualization and monitoring"},tags:[],kind:"container",x:2708,y:634,width:520,height:290,labelBBox:{x:89,y:108,width:372,height:64}},{id:"edp.keycloak",parent:"@gr7",level:1,children:[],inEdges:["bfgapq"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:5248,y:634,width:520,height:290,labelBBox:{x:92,y:108,width:337,height:64}},{id:"edp.kyverno",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"Kyverno",modelRef:"edp.kyverno",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Policy-as-Code"},tags:["internal"],kind:"container",x:3988,y:634,width:520,height:290,labelBBox:{x:187,y:108,width:146,height:64}},{id:"edp.externalSecrets",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"external-secrets",modelRef:"edp.externalSecrets",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Provider to access externally stored Kubernetes secrets"},tags:["internal"],kind:"container",navigateTo:"externalSecrets",x:4618,y:634,width:520,height:290,labelBBox:{x:92,y:96,width:337,height:88}},{id:"edp.openbao",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:3988,y:1073,width:520,height:290,labelBBox:{x:155,y:108,width:209,height:64}}],edges:[{id:"1w9cpb2",source:"developer",target:"edp.ui.backstage",label:"create and maintain apps",points:[[5888,380],[5537,435],[4891,529],[4336,564],[4303,567],[2004,563],[1973,572],[1931,585],[1888,605],[1850,629]],labelBBox:{x:4585,y:541,width:161,height:18},parent:null,relations:["65iq0s"],color:"gray",line:"dashed",head:"normal"},{id:"1y3lcyj",source:"developer",target:"edp.api",label:"uses API",points:[[5888,397],[5631,453],[5226,532],[4870,564],[4839,567],[2671,564],[2641,572],[2594,585],[2548,606],[2504,629]],labelBBox:{x:5046,y:541,width:60,height:18},parent:null,relations:["1dgd663"],color:"gray",line:"dashed",head:"normal"},{id:"1agven9",source:"developer",target:"edp.forgejogit",label:"uses git",points:[[5888,369],[5436,421],[4473,526],[3656,564],[3624,566],[1362,563],[1331,572],[1289,585],[1247,605],[1209,628]],labelBBox:{x:3997,y:541,width:52,height:18},parent:null,relations:["1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1nv0w41",source:"developer",target:"edp.imageregistry",label:"pushes and pull images",points:[[5888,438],[5750,487],[5575,540],[5414,564],[5373,571],[3961,560],[3921,572],[3879,585],[3837,605],[3799,628]],labelBBox:{x:5518,y:541,width:151,height:18},parent:null,relations:["u2ppde"],color:"gray",line:"dashed",head:"normal"},{id:"3nxrq7",source:"developer",target:"edp.grafana",label:"monitors",points:[[5888,415],[5694,469],[5420,536],[5175,564],[5123,571],[3331,557],[3281,572],[3239,585],[3197,605],[3159,628]],labelBBox:{x:5310,y:541,width:58,height:18},parent:null,relations:["dol85h"],color:"gray",line:"dashed",head:"normal"},{id:"bfgapq",source:"developer",target:"edp.keycloak",label:"authenticates",points:[[5939,481],[5871,528],[5795,581],[5726,628]],labelBBox:{x:5848,y:541,width:87,height:18},parent:null,relations:["129xciy"],color:"gray",line:"dashed",head:"normal"}]},edporchestrator:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp-as-orchestrator.c4",description:null,title:"EDP as Orchestrator",id:"edporchestrator",autoLayout:{direction:"TB"},hash:"3b527fd6f99efa02fc730d4569c0a0ccc75b4ef3",bounds:{x:0,y:0,width:846,height:1457},nodes:[{id:"@gr1",parent:null,kind:"@group",title:"EDP",color:"primary",shape:"rectangle",children:["@gr2","@gr3","@gr4","@gr5","@gr6"],inEdges:[],outEdges:[],level:0,depth:2,tags:[],style:{border:"dashed",opacity:15},x:8,y:8,width:830,height:1441,labelBBox:{x:6,y:0,width:27,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Developer Control Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:48,y:69,width:320,height:180,labelBBox:{x:49,y:74,width:222,height:24}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Integration & Delivery Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:478,y:69,width:320,height:180,labelBBox:{x:34,y:74,width:252,height:24}},{id:"@gr4",parent:"@gr1",kind:"@group",title:"Monitoring Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:48,y:369,width:320,height:180,labelBBox:{x:83,y:74,width:154,height:24}},{id:"@gr5",parent:"@gr1",kind:"@group",title:"Security Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:478,y:369,width:320,height:180,labelBBox:{x:94,y:74,width:133,height:24}},{id:"@gr6",parent:"@gr1",kind:"@group",title:"Backend",color:"primary",shape:"rectangle",children:["edp.argoCD","edp.crossplane"],inEdges:[],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:198,y:608,width:600,height:801,labelBBox:{x:6,y:0,width:59,height:15}},{id:"edp.argoCD",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Declarative management of platform tools"},tags:[],kind:"container",isCustomized:!0,navigateTo:"argoCD",x:238,y:669,width:520,height:290,labelBBox:{x:64,y:109,width:393,height:63}},{id:"edp.crossplane",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"Crossplane",modelRef:"edp.crossplane",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Declarative management of ressources"},tags:["internal"],kind:"container",navigateTo:"crossplane",x:238,y:1079,width:520,height:290,labelBBox:{x:75,y:109,width:369,height:63}}],edges:[]},"application-transition":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/application-transition.c4",description:null,title:"application-transistion",id:"application-transition",autoLayout:{direction:"LR",nodeSep:140,rankSep:180},hash:"273e521fc8ecb88776ebeada66d26bce21c3c2e5",bounds:{x:0,y:0,width:1297,height:857},nodes:[{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["@gr2","@gr3","developer","otherProductLifecycleRoles"],inEdges:[],outEdges:["17brhnu"],level:0,depth:3,tags:[],style:{border:"none",opacity:20},x:8,y:8,width:853,height:841,labelBBox:{x:6,y:0,width:114,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1uo6k6b"],level:0,depth:2,tags:[],style:{border:"none",opacity:30},x:373,y:459,width:448,height:350,labelBBox:{x:6,y:0,width:122,height:15}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1okgiq5","1wupl5x","1uo6k6b"],outEdges:["17brhnu","6szgsj"],level:0,depth:2,tags:[],style:{border:"none",opacity:30},x:373,y:69,width:448,height:350,labelBBox:{x:6,y:0,width:126,height:15}},{id:"cloud",parent:null,level:0,children:["cloud.application"],inEdges:["17brhnu"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",depth:1,isCustomized:!0,x:905,y:122,width:384,height:265,labelBBox:{x:6,y:0,width:132,height:15}},{id:"cloud.application",parent:"cloud",level:1,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"cloud.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:937,y:175,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:63,y:530,width:180,height:100,labelBBox:{x:51,y:37,width:77,height:20}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:48,y:215,width:209,height:100,labelBBox:{x:6,y:37,width:197,height:20}},{id:"localbox",parent:"@gr2",level:1,children:["localbox.application"],inEdges:["zjg544","6szgsj"],outEdges:["1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",depth:1,x:405,y:512,width:384,height:265,labelBBox:{x:6,y:0,width:66,height:15}},{id:"localbox.application",parent:"localbox",level:2,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"localbox.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:437,y:565,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}},{id:"edp",parent:"@gr3",level:1,children:["edp.application"],inEdges:["1okgiq5","1wupl5x","1uo6k6b"],outEdges:["17brhnu","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"magenta",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"edp",x:405,y:122,width:384,height:265,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.application",parent:"edp",level:2,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"edp.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:437,y:175,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}}],edges:[{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[242,595],[286,602],[341,612],[395,621]],labelBBox:{x:257,y:608,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[224,530],[276,493],[349,441],[416,393]],labelBBox:{x:257,y:458,width:66,height:18},parent:"@gr1",relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[257,265],[298,265],[347,265],[395,265]],labelBBox:{x:332,y:265,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[597,512],[597,474],[597,436],[597,397]],labelBBox:{x:563,y:449,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[789,265],[824,265],[860,265],[895,265]],labelBBox:{x:848,y:253,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[597,387],[597,425],[597,463],[597,502]],labelBBox:null,parent:"@gr1",relations:["96ogr7"],color:"gray",line:"dashed",head:"normal"}]},"edgeconnect-context":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/edgeconnect-context.c4",description:null,title:"EdgeConnect Context",id:"edgeconnect-context",autoLayout:{direction:"LR",nodeSep:140,rankSep:180},hash:"0da428d75abcb0d77c2e60e7bb97a2c635e491fb",bounds:{x:0,y:0,width:2626,height:1201},nodes:[{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["1okgiq5","1yfrmvt","1yfr9mr","162qbqw"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:0,y:293,width:180,height:100,labelBBox:{x:52,y:37,width:77,height:20}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["vyep7i"],title:"Platform / Cloud Operator",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",isCustomized:!0,x:1087,y:1101,width:198,height:100,labelBBox:{x:6,y:37,width:186,height:20}},{id:"edp",parent:null,level:0,children:[],inEdges:["1okgiq5"],outEdges:["1ivh6bj"],title:"EDP / CI Automation",modelRef:"edp",shape:"rectangle",color:"magenta",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",isCustomized:!0,navigateTo:"edp",x:429,y:623,width:346,height:180,labelBBox:{x:45,y:53,width:285,height:67}},{id:"edgeCli",parent:null,level:0,children:[],inEdges:["1yfrmvt"],outEdges:["1vb6n5w"],title:"EdgeConnect CLI",modelRef:"edgeCli",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Command-line client for interactive usage"},tags:[],kind:"component",x:442,y:0,width:320,height:180,labelBBox:{x:20,y:63,width:280,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1yfr9mr"],outEdges:["1tutg7y"],title:"EdgeConnect SDK",modelRef:"edgeSdk",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"SDK for programmatic integration"},tags:[],kind:"component",x:442,y:943,width:320,height:180,labelBBox:{x:46,y:63,width:227,height:48}},{id:"edgeTerraformProvider",parent:null,level:0,children:[],inEdges:["162qbqw","1ivh6bj"],outEdges:["1vakg11"],title:"Terraform Edge provider",modelRef:"edgeTerraformProvider",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Terraform provider enabling declarative provisioning"},tags:[],kind:"component",x:1026,y:478,width:320,height:180,labelBBox:{x:28,y:54,width:266,height:66}},{id:"edgeConnect",parent:null,level:0,children:["edgeConnect.api","edgeConnect.controllers","edgeConnect.resources","edgeConnect.runtime"],inEdges:["vyep7i","1vb6n5w","1tutg7y","1vakg11"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"magenta",style:{opacity:15,size:"md"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",depth:1,x:1577,y:233,width:1041,height:651,labelBBox:{x:6,y:0,width:132,height:15}},{id:"edgeConnect.api",parent:"edgeConnect",level:1,children:[],inEdges:["1vb6n5w","1tutg7y","1vakg11"],outEdges:["17py4dn"],title:"Edge Cloud API",modelRef:"edgeConnect.api",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single entry point for provisioning and lifecycle management"},tags:[],kind:"container",x:1617,y:614,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edgeConnect.controllers",parent:"edgeConnect",level:1,children:[],inEdges:[],outEdges:["1fx2ku4","16qtg61"],title:"Controllers / Scheduler",modelRef:"edgeConnect.controllers",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Reconciles desired state and drives deployments"},tags:[],kind:"container",x:1617,y:294,width:320,height:180,labelBBox:{x:40,y:54,width:241,height:66}},{id:"edgeConnect.resources",parent:"edgeConnect",level:1,children:[],inEdges:["17py4dn","1fx2ku4"],outEdges:[],title:"Edge Resources",modelRef:"edgeConnect.resources",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Managed resources such as App, AppInstance, etc."},tags:[],kind:"container",x:2223,y:614,width:355,height:180,labelBBox:{x:18,y:54,width:319,height:66}},{id:"edgeConnect.runtime",parent:"edgeConnect",level:1,children:[],inEdges:["16qtg61"],outEdges:[],title:"Edge Clusters",modelRef:"edgeConnect.runtime",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Runtime where applications actually run"},tags:[],kind:"container",x:2241,y:294,width:320,height:180,labelBBox:{x:25,y:63,width:269,height:48}}],edges:[{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[160,393],[239,450],[370,545],[469,617]],labelBBox:{x:271,y:450,width:66,height:18},parent:null,relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1yfrmvt",source:"developer",target:"edgeCli",label:"uses",points:[[180,298],[208,284],[241,268],[270,253],[323,227],[381,198],[433,172]],labelBBox:{x:287,y:198,width:34,height:18},parent:null,relations:["3rnruw"],color:"gray",line:"dashed",head:"normal"},{id:"1yfr9mr",source:"developer",target:"edgeSdk",label:"uses",points:[[117,393],[169,490],[293,711],[428,873],[446,895],[467,916],[488,936]],labelBBox:{x:287,y:641,width:34,height:18},parent:null,relations:["1ks7amr"],color:"gray",line:"dashed",head:"normal"},{id:"162qbqw",source:"developer",target:"edgeTerraformProvider",label:"uses",points:[[180,361],[362,399],[781,485],[1017,533]],labelBBox:{x:585,y:392,width:34,height:18},parent:null,relations:["1l0aei7"],color:"gray",line:"dashed",head:"normal"},{id:"1ivh6bj",source:"edp",target:"edgeTerraformProvider",label:"automates",points:[[775,670],[851,651],[941,629],[1016,610]],labelBBox:{x:866,y:609,width:69,height:18},parent:null,relations:["1t93kj2"],color:"gray",line:"dashed",head:"normal"},{id:"1vb6n5w",source:"edgeCli",target:"edgeConnect.api",label:"calls",points:[[761,147],[915,205],[1152,301],[1346,408],[1454,467],[1568,546],[1651,608]],labelBBox:{x:1170,y:235,width:32,height:18},parent:null,relations:["h84u7y"],color:"gray",line:"dashed",head:"normal"},{id:"1tutg7y",source:"edgeSdk",target:"edgeConnect.api",label:"calls",points:[[762,988],[983,926],[1381,815],[1607,751]],labelBBox:{x:1170,y:802,width:32,height:18},parent:null,relations:["1elpzvp"],color:"gray",line:"dashed",head:"normal"},{id:"1vakg11",source:"edgeTerraformProvider",target:"edgeConnect.api",label:"provisions via",points:[[1346,605],[1427,623],[1525,646],[1607,665]],labelBBox:{x:1437,y:605,width:89,height:18},parent:null,relations:["6h5xnh"],color:"gray",line:"dashed",head:"normal"},{id:"17py4dn",source:"edgeConnect.api",target:"edgeConnect.resources",label:"creates/updates",points:[[1937,713],[1967,715],[1998,716],[2027,717],[2088,718],[2153,717],[2213,715]],labelBBox:{x:2028,y:694,width:104,height:18},parent:"edgeConnect",relations:["wx4vwc"],color:"gray",line:"dashed",head:"normal"},{id:"1fx2ku4",source:"edgeConnect.controllers",target:"edgeConnect.resources",label:"reconciles",points:[[1937,466],[2022,510],[2127,564],[2216,609]],labelBBox:{x:2047,y:492,width:67,height:18},parent:"edgeConnect",relations:["qufboq"],color:"gray",line:"dashed",head:"normal"},{id:"16qtg61",source:"edgeConnect.controllers",target:"edgeConnect.runtime",label:"deploys",points:[[1937,384],[2027,384],[2139,384],[2230,384]],labelBBox:{x:2054,y:361,width:52,height:18},parent:"edgeConnect",relations:["1a9x5zg"],color:"gray",line:"dashed",head:"normal"},{id:"vyep7i",source:"platformdeveloper",target:"edgeConnect",label:"operates",points:[[1270,1101],[1341,1058],[1443,992],[1527,927],[1542,915],[1557,903],[1573,891]],labelBBox:{x:1370,y:998,width:58,height:18},parent:null,relations:["4pplfw"],color:"gray",line:"dashed",head:"normal"}]},landscape:{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/platform-context/developer-landscape.c4",description:null,title:"Developer Landscape View",id:"landscape",autoLayout:{direction:"LR",nodeSep:100,rankSep:100},hash:"20d6a0bbd9bdb30c3c0ac117af4f1e3d74292c19",bounds:{x:0,y:0,width:3342,height:2768},nodes:[{id:"applicationspecification",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"application-specification",modelRef:"applicationspecification",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},tags:[],kind:"component",x:0,y:280,width:338,height:180,labelBBox:{x:18,y:45,width:303,height:84}},{id:"forgejoRunnerWorker",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner Worker",modelRef:"forgejoRunnerWorker",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},tags:[],kind:"component",x:702,y:280,width:333,height:180,labelBBox:{x:19,y:45,width:297,height:84}},{id:"promtail",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Promtail",modelRef:"promtail",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Log shipper agent for Loki"},tags:[],kind:"component",x:1257,y:280,width:320,height:180,labelBBox:{x:71,y:63,width:177,height:48}},{id:"elasticsearch",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Elasticsearch",modelRef:"elasticsearch",shape:"rectangle",color:"primary",icon:"tech:elasticsearch",style:{opacity:20,size:"md"},description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of addressing a growing number of use cases. It centrally stores your data so you can -discover the expected and uncover the unexpected.`},tags:[],technology:"Elasticsearch",kind:"container",x:0,y:0,width:370,height:180,labelBBox:{x:46,y:17,width:308,height:139}},{id:"objectstorage",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"s3 Object Storage",modelRef:"objectstorage",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"s3 Object Storage"},tags:[],technology:"S3 Object Storage",kind:"container",x:741,y:0,width:320,height:180,labelBBox:{x:78,y:53,width:164,height:67}},{id:"postgres",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"PostgreSQL",modelRef:"postgres",shape:"rectangle",color:"primary",icon:"tech:postgresql",style:{opacity:20,size:"md"},description:{txt:`PostgreSQL is a powerful, open source object-relational database system. +discover the expected and uncover the unexpected.`},tags:[],technology:"Elasticsearch",kind:"container",x:1811,y:280,width:370,height:180,labelBBox:{x:46,y:17,width:308,height:139}},{id:"objectstorage",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"s3 Object Storage",modelRef:"objectstorage",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"s3 Object Storage"},tags:[],technology:"S3 Object Storage",kind:"container",x:9,y:0,width:320,height:180,labelBBox:{x:78,y:53,width:164,height:67}},{id:"postgres",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"PostgreSQL",modelRef:"postgres",shape:"rectangle",color:"primary",icon:"tech:postgresql",style:{opacity:20,size:"md"},description:{txt:`PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, -and correctness.`},tags:[],technology:"PostgreSQL",kind:"container",x:1271,y:0,width:354,height:180,labelBBox:{x:46,y:17,width:293,height:139}},{id:"redis",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Redis",modelRef:"redis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:20,size:"md"},description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},tags:[],technology:"Redis",kind:"container",x:1842,y:0,width:359,height:180,labelBBox:{x:46,y:26,width:297,height:121}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["mox1r9","1kjl8ep","x7to90"],title:"Platform Developer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"md"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",x:25,y:1286,width:320,height:180,labelBBox:{x:72,y:63,width:175,height:48}},{id:"customers",parent:null,level:0,children:[],inEdges:[],outEdges:["8fboq4"],title:"End Customers",modelRef:"customers",shape:"person",color:"amber",style:{opacity:15,size:"md"},description:{txt:"Consumers of your Application"},tags:[],kind:"actor",x:2457,y:405,width:320,height:180,labelBBox:{x:56,y:63,width:208,height:48}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["5mpoyf"],outEdges:["1lyfj4n"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:2457,y:1188,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:102}},{id:"edfbuilder",parent:null,level:0,children:[],inEdges:["mox1r9"],outEdges:["lnq8uj"],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",navigateTo:"edpbuilderworkflow",x:741,y:1073,width:320,height:180,labelBBox:{x:74,y:53,width:202,height:67}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:["14bjpe1"],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"md"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",navigateTo:"components-template-documentation",x:709,y:1576,width:384,height:180,labelBBox:{x:46,y:44,width:322,height:85}},{id:"edf",parent:null,level:0,children:[],inEdges:["lnq8uj","x7to90"],outEdges:["109bf6k"],title:"EDF",modelRef:"edf",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},tags:[],technology:"Kubernetes",kind:"system",x:1287,y:1286,width:321,height:180,labelBBox:{x:47,y:35,width:259,height:103}},{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["developer","otherProductLifecycleRoles","@gr2","@gr3"],inEdges:["1lyfj4n","14bjpe1","109bf6k"],outEdges:["1tbee2v","5mpoyf","17brhnu","35ru8e"],level:0,depth:2,tags:[],style:{border:"none",opacity:20},x:1221,y:500,width:1046,height:746,labelBBox:{x:6,y:0,width:114,height:15}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:1288,y:664,width:320,height:180,labelBBox:{x:53,y:63,width:214,height:48}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:1260,y:994,width:375,height:180,labelBBox:{x:19,y:63,width:340,height:48}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:1830,y:561,width:384,height:265,labelBBox:{x:6,y:0,width:122,height:15}},{id:"localbox",parent:"@gr2",level:1,children:[],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",x:1862,y:614,width:320,height:180,labelBBox:{x:64,y:53,width:191,height:67}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1lyfj4n","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","17brhnu","35ru8e","6szgsj"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:1816,y:941,width:411,height:265,labelBBox:{x:6,y:0,width:126,height:15}},{id:"edp",parent:"@gr3",level:1,children:[],inEdges:["1lyfj4n","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","17brhnu","35ru8e","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",navigateTo:"edp",x:1849,y:994,width:346,height:180,labelBBox:{x:45,y:53,width:285,height:67}},{id:"enterprise",parent:null,level:0,children:[],inEdges:["1tbee2v","35ru8e"],outEdges:["iwd51q"],title:"Customers' Enterprise Systems",modelRef:"enterprise",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"The customers' enterprise systems"},tags:[],kind:"system",x:2457,y:685,width:320,height:180,labelBBox:{x:18,y:63,width:283,height:48}},{id:"cloud",parent:null,level:0,children:[],inEdges:["8fboq4","iwd51q","17brhnu"],outEdges:[],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:3048,y:685,width:320,height:180,labelBBox:{x:91,y:53,width:137,height:67}}],edges:[{id:"lnq8uj",source:"edfbuilder",target:"edf",label:"boots one",points:[[1061,1225],[1129,1252],[1209,1283],[1278,1310]],labelBBox:{x:1144,y:1237,width:66,height:18},parent:null,relations:["1oxlsu0"],color:"gray",line:"dashed",head:"normal"},{id:"mox1r9",source:"platformdeveloper",target:"edfbuilder",label:"runs",points:[[345,1324],[370,1316],[396,1307],[420,1300],[523,1269],[639,1235],[731,1210]],labelBBox:{x:524,y:1208,width:31,height:18},parent:null,relations:["s1l7g7"],color:"gray",line:"dashed",head:"normal"},{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[345,1444],[370,1454],[396,1465],[420,1475],[512,1512],[613,1553],[699,1587]],labelBBox:{x:421,y:1452,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"},{id:"x7to90",source:"platformdeveloper",target:"edf",label:"develops EDP and EDF",points:[[345,1376],[583,1376],[1032,1376],[1277,1376]],labelBBox:{x:825,y:1353,width:152,height:18},parent:null,relations:["v8v12"],color:"gray",line:"dashed",head:"normal"},{id:"8fboq4",source:"customers",target:"cloud",label:"uses your app",points:[[2777,571],[2858,609],[2956,656],[3039,695]],labelBBox:{x:2867,y:578,width:92,height:18},parent:null,relations:["1g2ebwc"],color:"gray",line:"dashed",head:"normal"},{id:"iwd51q",source:"enterprise",target:"cloud",label:"app specific dependencies",points:[[2777,775],[2858,775],[2956,775],[3038,775]],labelBBox:{x:2828,y:752,width:169,height:18},parent:null,relations:["nc44l9"],color:"gray",line:"dashed",head:"normal"},{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[1608,740],[1684,733],[1774,726],[1851,719]],labelBBox:{x:1706,y:701,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1tbee2v",source:"localbox",target:"enterprise",label:"company integration",points:[[2181,723],[2263,733],[2363,745],[2447,755]],labelBBox:{x:2276,y:711,width:130,height:18},parent:null,relations:["1abvxlh"],color:"gray",line:"dashed",head:"normal"},{id:"1lyfj4n",source:"forgejoRunner",target:"edp",label:"register",points:[[2457,1280],[2399,1276],[2333,1268],[2275,1248],[2229,1232],[2183,1206],[2143,1179]],labelBBox:{x:2316,y:1225,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"14bjpe1",source:"documentation",target:"edp",label:"provides documentation for",points:[[1093,1668],[1248,1661],[1469,1633],[1636,1539],[1785,1455],[1902,1289],[1966,1183]],labelBBox:{x:1362,y:1516,width:173,height:18},parent:null,relations:["xw0pne"],color:"gray",line:"dashed",head:"normal"},{id:"109bf6k",source:"edf",target:"edp",label:"builds many",points:[[1609,1355],[1669,1343],[1736,1324],[1792,1294],[1845,1265],[1896,1222],[1936,1181]],labelBBox:{x:1700,y:1271,width:79,height:18},parent:null,relations:["wsm3kf"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[1605,844],[1683,889],[1777,943],[1856,989]],labelBBox:{x:1706,y:876,width:66,height:18},parent:"@gr1",relations:["1pp73vj","yk9zv2","12036hb","jpl8ll","1ghp31l","1xiorre","1woleh6","177bm2y","1l9a3pd","1uzzn9j"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[1636,1084],[1701,1084],[1774,1084],[1838,1084]],labelBBox:{x:1687,y:1061,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[2022,794],[2022,851],[2022,925],[2022,984]],labelBBox:{x:1991,y:882,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"5mpoyf",source:"edp",target:"forgejoRunner",label:"runs workflows",points:[[2195,1136],[2261,1157],[2338,1181],[2407,1204],[2420,1208],[2434,1213],[2447,1218]],labelBBox:{x:2293,y:1140,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[2195,1059],[2349,1035],[2580,994],[2777,938],[2865,913],[2960,878],[3039,846]],labelBBox:{x:2561,y:915,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"35ru8e",source:"edp",target:"enterprise",label:"integrates",points:[[2171,994],[2205,974],[2241,954],[2275,936],[2330,907],[2392,877],[2448,851]],labelBBox:{x:2308,y:848,width:65,height:18},parent:null,relations:["615gvx"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[2022,994],[2022,931],[2022,867],[2022,804]],labelBBox:null,parent:"@gr1",relations:["wvo8i"],color:"gray",line:"dashed",head:"normal"}]},"developer-landscape-with-foundry":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/platform-context/developer-landscape-with-foundry.c4",description:null,title:"Developer Landscape View (with Foundry)",id:"developer-landscape-with-foundry",autoLayout:{direction:"LR",nodeSep:100,rankSep:100},hash:"cda46e810ddf2dde6325776d78a91ec404b72312",bounds:{x:0,y:0,width:4387,height:2361},nodes:[{id:"applicationspecification",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"application-specification",modelRef:"applicationspecification",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},tags:[],kind:"component",x:0,y:390,width:520,height:290,labelBBox:{x:49,y:84,width:422,height:113}},{id:"forgejoRunnerWorker",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner Worker",modelRef:"forgejoRunnerWorker",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},tags:[],kind:"component",x:859,y:390,width:520,height:290,labelBBox:{x:52,y:84,width:415,height:113}},{id:"promtail",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Promtail",modelRef:"promtail",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Log shipper agent for Loki"},tags:[],kind:"component",x:1557,y:390,width:520,height:290,labelBBox:{x:137,y:109,width:247,height:63}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Edge Connect",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Provides an API to run applications on the edge"},tags:[],kind:"component",x:2294,y:390,width:520,height:290,labelBBox:{x:62,y:96,width:395,height:89}},{id:"elasticsearch",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Elasticsearch",modelRef:"elasticsearch",shape:"rectangle",color:"primary",icon:"tech:elasticsearch",style:{opacity:20,size:"xl"},description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of +and correctness.`},tags:[],technology:"PostgreSQL",kind:"container",x:692,y:0,width:354,height:180,labelBBox:{x:46,y:17,width:293,height:139}},{id:"redis",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Redis",modelRef:"redis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:20,size:"md"},description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},tags:[],technology:"Redis",kind:"container",x:1237,y:0,width:359,height:180,labelBBox:{x:46,y:26,width:298,height:121}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["mox1r9","vyep7i","1kjl8ep","x7to90"],title:"Platform Developer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"md"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",x:9,y:2205,width:320,height:180,labelBBox:{x:73,y:63,width:175,height:48}},{id:"customers",parent:null,level:0,children:[],inEdges:[],outEdges:["8fboq4"],title:"End Customers",modelRef:"customers",shape:"person",color:"amber",style:{opacity:15,size:"md"},description:{txt:"Consumers of your Application"},tags:[],kind:"actor",x:2431,y:2375,width:320,height:180,labelBBox:{x:56,y:63,width:208,height:48}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["5mpoyf"],outEdges:["1lyfj4n"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:2431,y:1872,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:102}},{id:"edfbuilder",parent:null,level:0,children:[],inEdges:["mox1r9"],outEdges:["lnq8uj"],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",navigateTo:"edpbuilderworkflow",x:709,y:2588,width:320,height:180,labelBBox:{x:74,y:53,width:203,height:67}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:["14bjpe1"],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"md"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",navigateTo:"components-template-documentation",x:677,y:2085,width:384,height:180,labelBBox:{x:46,y:44,width:323,height:85}},{id:"edf",parent:null,level:0,children:[],inEdges:["lnq8uj","x7to90"],outEdges:["109bf6k"],title:"EDF",modelRef:"edf",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},tags:[],technology:"Kubernetes",kind:"system",x:1256,y:2428,width:321,height:180,labelBBox:{x:46,y:35,width:260,height:103}},{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["developer","otherProductLifecycleRoles","@gr2","@gr3"],inEdges:["1lyfj4n","14bjpe1","109bf6k"],outEdges:["1yfrmvt","1yfr9mr","162qbqw","1tbee2v","5mpoyf","1ivh6bj","17brhnu","35ru8e"],level:0,depth:2,tags:[],style:{border:"none",opacity:20},x:1189,y:1431,width:1052,height:746,labelBBox:{x:6,y:0,width:114,height:15}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1yfrmvt","1yfr9mr","162qbqw","zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:1257,y:1545,width:320,height:180,labelBBox:{x:53,y:63,width:214,height:48}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:1229,y:1925,width:375,height:180,labelBBox:{x:18,y:63,width:340,height:48}},{id:"edgeCli",parent:null,level:0,children:[],inEdges:["1yfrmvt"],outEdges:["fyb6c2"],title:"EdgeConnect CLI",modelRef:"edgeCli",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Command-line client for interactive usage"},tags:[],kind:"component",x:1836,y:762,width:320,height:180,labelBBox:{x:20,y:63,width:280,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1yfr9mr"],outEdges:["1jfbsco"],title:"EdgeConnect SDK",modelRef:"edgeSdk",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"SDK for programmatic integration"},tags:[],kind:"component",x:1836,y:1042,width:320,height:180,labelBBox:{x:46,y:63,width:227,height:48}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:1804,y:1492,width:384,height:265,labelBBox:{x:5,y:0,width:122,height:15}},{id:"localbox",parent:"@gr2",level:1,children:[],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",x:1836,y:1545,width:320,height:180,labelBBox:{x:64,y:53,width:191,height:67}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1lyfj4n","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","17brhnu","35ru8e","6szgsj"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:1790,y:1872,width:411,height:265,labelBBox:{x:6,y:0,width:126,height:15}},{id:"edp",parent:"@gr3",level:1,children:[],inEdges:["1lyfj4n","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","17brhnu","35ru8e","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",navigateTo:"edp",x:1823,y:1925,width:346,height:180,labelBBox:{x:45,y:53,width:285,height:67}},{id:"edgeTerraformProvider",parent:null,level:0,children:[],inEdges:["162qbqw","1ivh6bj"],outEdges:["e75f7"],title:"Terraform Edge provider",modelRef:"edgeTerraformProvider",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Terraform provider enabling declarative provisioning"},tags:[],kind:"component",x:2431,y:1275,width:320,height:180,labelBBox:{x:27,y:54,width:266,height:66}},{id:"enterprise",parent:null,level:0,children:[],inEdges:["1tbee2v","35ru8e"],outEdges:["iwd51q"],title:"Customers' Enterprise Systems",modelRef:"enterprise",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"The customers' enterprise systems"},tags:[],kind:"system",x:2431,y:1592,width:320,height:180,labelBBox:{x:18,y:63,width:283,height:48}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:["fyb6c2","1jfbsco","e75f7","vyep7i"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",x:3022,y:874,width:320,height:180,labelBBox:{x:23,y:54,width:273,height:66}},{id:"cloud",parent:null,level:0,children:[],inEdges:["8fboq4","iwd51q","17brhnu"],outEdges:[],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:3022,y:2085,width:320,height:180,labelBBox:{x:91,y:53,width:137,height:67}}],edges:[{id:"lnq8uj",source:"edfbuilder",target:"edf",label:"boots one",points:[[1029,2631],[1098,2611],[1177,2588],[1247,2568]],labelBBox:{x:1113,y:2565,width:66,height:18},parent:null,relations:["1oxlsu0"],color:"gray",line:"dashed",head:"normal"},{id:"mox1r9",source:"platformdeveloper",target:"edfbuilder",label:"runs",points:[[259,2385],[296,2420],[342,2458],[389,2487],[486,2546],[605,2594],[700,2627]],labelBBox:{x:492,y:2464,width:31,height:18},parent:null,relations:["s1l7g7"],color:"gray",line:"dashed",head:"normal"},{id:"fyb6c2",source:"edgeCli",target:"edgeConnect",label:"calls",points:[[2155,867],[2378,888],[2783,926],[3012,948]],labelBBox:{x:2575,y:870,width:32,height:18},parent:null,relations:["h84u7y"],color:"gray",line:"dashed",head:"normal"},{id:"1jfbsco",source:"edgeSdk",target:"edgeConnect",label:"calls",points:[[2155,1109],[2378,1078],[2783,1020],[3012,988]],labelBBox:{x:2575,y:1003,width:32,height:18},parent:null,relations:["1elpzvp"],color:"gray",line:"dashed",head:"normal"},{id:"e75f7",source:"edgeTerraformProvider",target:"edgeConnect",label:"provisions via",points:[[2751,1299],[2821,1266],[2904,1223],[2972,1174],[3017,1141],[3061,1099],[3097,1061]],labelBBox:{x:2842,y:1151,width:89,height:18},parent:null,relations:["6h5xnh"],color:"gray",line:"dashed",head:"normal"},{id:"vyep7i",source:"platformdeveloper",target:"edgeConnect",label:"operates",points:[[187,2205],[255,1856],[520,611],[868,611],[868,611],[868,611],[2592,611],[2792,611],[2983,762],[3090,867]],labelBBox:{x:1678,y:588,width:58,height:18},parent:null,relations:["4pplfw"],color:"gray",line:"dashed",head:"normal"},{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[329,2268],[429,2250],[560,2228],[667,2210]],labelBBox:{x:390,y:2194,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"},{id:"x7to90",source:"platformdeveloper",target:"edf",label:"develops EDP and EDF",points:[[329,2323],[564,2366],[1004,2444],[1246,2488]],labelBBox:{x:794,y:2365,width:152,height:18},parent:null,relations:["v8v12"],color:"gray",line:"dashed",head:"normal"},{id:"8fboq4",source:"customers",target:"cloud",label:"uses your app",points:[[2751,2387],[2832,2347],[2930,2298],[3013,2258]],labelBBox:{x:2841,y:2262,width:92,height:18},parent:null,relations:["1g2ebwc"],color:"gray",line:"dashed",head:"normal"},{id:"iwd51q",source:"enterprise",target:"cloud",label:"app specific dependencies",points:[[2699,1772],[2803,1859],[2960,1990],[3066,2079]],labelBBox:{x:2802,y:1847,width:169,height:18},parent:null,relations:["nc44l9"],color:"gray",line:"dashed",head:"normal"},{id:"1yfrmvt",source:"developer",target:"edgeCli",label:"uses",points:[[1450,1545],[1502,1409],[1617,1151],[1790,992],[1807,977],[1825,962],[1844,948]],labelBBox:{x:1691,y:1011,width:34,height:18},parent:null,relations:["3rnruw"],color:"gray",line:"dashed",head:"normal"},{id:"1yfr9mr",source:"developer",target:"edgeSdk",label:"uses",points:[[1457,1545],[1496,1463],[1564,1344],[1655,1269],[1704,1228],[1768,1198],[1826,1177]],labelBBox:{x:1691,y:1183,width:34,height:18},parent:null,relations:["1ks7amr"],color:"gray",line:"dashed",head:"normal"},{id:"162qbqw",source:"developer",target:"edgeTerraformProvider",label:"uses",points:[[1577,1551],[1641,1520],[1718,1487],[1790,1467],[2003,1407],[2257,1382],[2421,1372]],labelBBox:{x:1979,y:1365,width:34,height:18},parent:null,relations:["1l0aei7"],color:"gray",line:"dashed",head:"normal"},{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[1577,1635],[1654,1635],[1747,1635],[1825,1635]],labelBBox:{x:1675,y:1612,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1tbee2v",source:"localbox",target:"enterprise",label:"company integration",points:[[2155,1648],[2237,1654],[2337,1662],[2421,1669]],labelBBox:{x:2250,y:1632,width:130,height:18},parent:null,relations:["1abvxlh"],color:"gray",line:"dashed",head:"normal"},{id:"1lyfj4n",source:"forgejoRunner",target:"edp",label:"register",points:[[2431,1976],[2353,1983],[2259,1992],[2179,1999]],labelBBox:{x:2290,y:1958,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"14bjpe1",source:"documentation",target:"edp",label:"provides documentation for",points:[[1061,2212],[1210,2235],[1422,2254],[1605,2225],[1677,2213],[1695,2205],[1760,2173],[1796,2155],[1833,2133],[1866,2111]],labelBBox:{x:1331,y:2202,width:173,height:18},parent:null,relations:["xw0pne"],color:"gray",line:"dashed",head:"normal"},{id:"109bf6k",source:"edf",target:"edp",label:"builds many",points:[[1578,2446],[1639,2415],[1706,2374],[1760,2327],[1831,2265],[1893,2179],[1936,2113]],labelBBox:{x:1668,y:2304,width:79,height:18},parent:null,relations:["wsm3kf"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[1554,1725],[1643,1783],[1759,1860],[1850,1919]],labelBBox:{x:1675,y:1779,width:66,height:18},parent:"@gr1",relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[1605,2015],[1671,2015],[1746,2015],[1812,2015]],labelBBox:{x:1656,y:1992,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[1996,1725],[1996,1782],[1996,1856],[1996,1915]],labelBBox:{x:1965,y:1813,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"5mpoyf",source:"edp",target:"forgejoRunner",label:"runs workflows",points:[[2169,2037],[2235,2042],[2312,2043],[2381,2032],[2394,2030],[2407,2027],[2421,2024]],labelBBox:{x:2267,y:2009,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"1ivh6bj",source:"edp",target:"edgeTerraformProvider",label:"automates",points:[[2126,1925],[2170,1887],[2216,1838],[2241,1782],[2257,1747],[2230,1641],[2249,1607],[2287,1536],[2356,1482],[2422,1442]],labelBBox:{x:2280,y:1446,width:69,height:18},parent:null,relations:["1t93kj2"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[2169,2066],[2248,2088],[2343,2111],[2431,2125],[2629,2156],[2859,2168],[3012,2172]],labelBBox:{x:2535,y:2102,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"35ru8e",source:"edp",target:"enterprise",label:"integrates",points:[[2157,1925],[2239,1879],[2339,1823],[2422,1776]],labelBBox:{x:2282,y:1778,width:65,height:18},parent:null,relations:["615gvx"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[1996,1925],[1996,1862],[1996,1798],[1996,1735]],labelBBox:null,parent:"@gr1",relations:["96ogr7"],color:"gray",line:"dashed",head:"normal"}]},"developer-landscape-with-foundry":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/platform-context/developer-landscape-with-foundry.c4",description:null,title:"Developer Landscape View (with Foundry)",id:"developer-landscape-with-foundry",autoLayout:{direction:"LR",nodeSep:100,rankSep:100},hash:"55cbf38304a5ef9e4ff481783b6f165252c152a3",bounds:{x:0,y:0,width:4387,height:3565},nodes:[{id:"applicationspecification",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"application-specification",modelRef:"applicationspecification",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},tags:[],kind:"component",x:0,y:390,width:520,height:290,labelBBox:{x:49,y:84,width:422,height:113}},{id:"forgejoRunnerWorker",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner Worker",modelRef:"forgejoRunnerWorker",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},tags:[],kind:"component",x:859,y:390,width:520,height:290,labelBBox:{x:52,y:84,width:415,height:113}},{id:"promtail",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Promtail",modelRef:"promtail",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Log shipper agent for Loki"},tags:[],kind:"component",x:1557,y:390,width:520,height:290,labelBBox:{x:137,y:109,width:247,height:63}},{id:"elasticsearch",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Elasticsearch",modelRef:"elasticsearch",shape:"rectangle",color:"primary",icon:"tech:elasticsearch",style:{opacity:20,size:"xl"},description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of addressing a growing number of use cases. It centrally stores your data so you can -discover the expected and uncover the unexpected.`},tags:[],technology:"Elasticsearch",kind:"container",x:0,y:0,width:520,height:290,labelBBox:{x:72,y:46,width:406,height:189}},{id:"objectstorage",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"s3 Object Storage",modelRef:"objectstorage",shape:"rectangle",color:"primary",style:{opacity:20,size:"xl"},description:{txt:"s3 Object Storage"},tags:[],technology:"S3 Object Storage",kind:"container",x:859,y:0,width:520,height:290,labelBBox:{x:146,y:96,width:228,height:89}},{id:"postgres",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"PostgreSQL",modelRef:"postgres",shape:"rectangle",color:"primary",icon:"tech:postgresql",style:{opacity:20,size:"xl"},description:{txt:`PostgreSQL is a powerful, open source object-relational database system. +discover the expected and uncover the unexpected.`},tags:[],technology:"Elasticsearch",kind:"container",x:2294,y:390,width:520,height:290,labelBBox:{x:72,y:46,width:406,height:189}},{id:"objectstorage",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"s3 Object Storage",modelRef:"objectstorage",shape:"rectangle",color:"primary",style:{opacity:20,size:"xl"},description:{txt:"s3 Object Storage"},tags:[],technology:"S3 Object Storage",kind:"container",x:0,y:0,width:520,height:290,labelBBox:{x:146,y:96,width:228,height:89}},{id:"postgres",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"PostgreSQL",modelRef:"postgres",shape:"rectangle",color:"primary",icon:"tech:postgresql",style:{opacity:20,size:"xl"},description:{txt:`PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, -and correctness.`},tags:[],technology:"PostgreSQL",kind:"container",x:1557,y:0,width:520,height:290,labelBBox:{x:83,y:46,width:384,height:189}},{id:"redis",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Redis",modelRef:"redis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:20,size:"xl"},description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},tags:[],technology:"Redis",kind:"container",x:2294,y:0,width:520,height:290,labelBBox:{x:79,y:58,width:392,height:165}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["mox1r9","1kjl8ep","x7to90"],title:"Platform Developer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"xl"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",x:0,y:1726,width:520,height:290,labelBBox:{x:138,y:109,width:244,height:63}},{id:"customers",parent:null,level:0,children:[],inEdges:[],outEdges:["8fboq4"],title:"End Customers",modelRef:"customers",shape:"person",color:"amber",style:{opacity:15,size:"xl"},description:{txt:"Consumers of your Application"},tags:[],kind:"actor",x:3076,y:460,width:520,height:290,labelBBox:{x:115,y:109,width:290,height:63}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["5mpoyf"],outEdges:["1lyfj4n"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:3076,y:1463,width:520,height:290,labelBBox:{x:69,y:71,width:382,height:139}},{id:"edfbuilder",parent:null,level:0,children:[],inEdges:["mox1r9"],outEdges:["lnq8uj"],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"xl"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",navigateTo:"edpbuilderworkflow",x:859,y:1458,width:520,height:290,labelBBox:{x:145,y:96,width:259,height:89}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:["14bjpe1"],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"xl"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",navigateTo:"components-template-documentation",x:859,y:2071,width:520,height:290,labelBBox:{x:62,y:83,width:426,height:115}},{id:"edf",parent:null,level:0,children:[],inEdges:["lnq8uj","x7to90"],outEdges:["109bf6k"],title:"EDF",modelRef:"edf",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"xl"},description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},tags:[],technology:"Kubernetes",kind:"system",x:1557,y:1726,width:520,height:290,labelBBox:{x:106,y:71,width:339,height:139}},{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["developer","otherProductLifecycleRoles","@gr2","@gr3"],inEdges:["1lyfj4n","14bjpe1","109bf6k"],outEdges:["1tbee2v","5mpoyf","17brhnu","35ru8e"],level:0,depth:2,tags:[],style:{border:"none",opacity:20},x:1506,y:720,width:1380,height:966,labelBBox:{x:6,y:0,width:114,height:15}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xl"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:1557,y:884,width:520,height:290,labelBBox:{x:111,y:109,width:298,height:63}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"xl"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:1546,y:1324,width:542,height:290,labelBBox:{x:34,y:109,width:474,height:63}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:2262,y:781,width:584,height:375,labelBBox:{x:6,y:0,width:122,height:15}},{id:"localbox",parent:"@gr2",level:1,children:[],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",x:2294,y:834,width:520,height:290,labelBBox:{x:127,y:96,width:265,height:89}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1lyfj4n","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","17brhnu","35ru8e","6szgsj"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:2262,y:1271,width:584,height:375,labelBBox:{x:6,y:0,width:126,height:15}},{id:"edp",parent:"@gr3",level:1,children:[],inEdges:["1lyfj4n","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","17brhnu","35ru8e","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"xl"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",navigateTo:"edp",x:2294,y:1324,width:520,height:290,labelBBox:{x:88,y:96,width:374,height:89}},{id:"enterprise",parent:null,level:0,children:[],inEdges:["1tbee2v","35ru8e"],outEdges:["iwd51q"],title:"Customers' Enterprise Systems",modelRef:"enterprise",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"The customers' enterprise systems"},tags:[],kind:"system",x:3076,y:850,width:520,height:290,labelBBox:{x:62,y:109,width:395,height:63}},{id:"cloud",parent:null,level:0,children:[],inEdges:["8fboq4","iwd51q","17brhnu"],outEdges:[],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:3867,y:850,width:520,height:290,labelBBox:{x:165,y:96,width:191,height:89}}],edges:[{id:"lnq8uj",source:"edfbuilder",target:"edf",label:"boots one",points:[[1379,1703],[1434,1724],[1492,1746],[1548,1768]],labelBBox:{x:1430,y:1702,width:66,height:18},parent:null,relations:["1oxlsu0"],color:"gray",line:"dashed",head:"normal"},{id:"mox1r9",source:"platformdeveloper",target:"edfbuilder",label:"runs",points:[[520,1790],[624,1757],[744,1720],[849,1687]],labelBBox:{x:674,y:1682,width:31,height:18},parent:null,relations:["s1l7g7"],color:"gray",line:"dashed",head:"normal"},{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[520,1975],[624,2017],[744,2066],[849,2108]],labelBBox:{x:571,y:1979,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"},{id:"x7to90",source:"platformdeveloper",target:"edf",label:"develops EDP and EDF",points:[[520,1871],[804,1871],[1259,1871],[1547,1871]],labelBBox:{x:1043,y:1848,width:152,height:18},parent:null,relations:["v8v12"],color:"gray",line:"dashed",head:"normal"},{id:"8fboq4",source:"customers",target:"cloud",label:"uses your app",points:[[3596,733],[3680,774],[3773,821],[3858,862]],labelBBox:{x:3686,y:742,width:92,height:18},parent:null,relations:["1g2ebwc"],color:"gray",line:"dashed",head:"normal"},{id:"iwd51q",source:"enterprise",target:"cloud",label:"app specific dependencies",points:[[3596,995],[3680,995],[3772,995],[3857,995]],labelBBox:{x:3647,y:972,width:169,height:18},parent:null,relations:["nc44l9"],color:"gray",line:"dashed",head:"normal"},{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[2077,1011],[2144,1007],[2216,1002],[2284,997]],labelBBox:{x:2158,y:978,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1tbee2v",source:"localbox",target:"enterprise",label:"company integration",points:[[2814,984],[2895,986],[2984,988],[3066,989]],labelBBox:{x:2895,y:963,width:130,height:18},parent:null,relations:["1abvxlh"],color:"gray",line:"dashed",head:"normal"},{id:"1lyfj4n",source:"forgejoRunner",target:"edp",label:"register",points:[[3076,1633],[3016,1634],[2952,1630],[2894,1618],[2871,1613],[2847,1606],[2823,1599]],labelBBox:{x:2935,y:1595,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"14bjpe1",source:"documentation",target:"edp",label:"provides documentation for",points:[[1379,2235],[1584,2238],[1873,2215],[2088,2089],[2273,1981],[2407,1769],[2482,1623]],labelBBox:{x:1731,y:2066,width:173,height:18},parent:null,relations:["xw0pne"],color:"gray",line:"dashed",head:"normal"},{id:"109bf6k",source:"edf",target:"edp",label:"builds many",points:[[2077,1806],[2134,1786],[2192,1763],[2244,1734],[2299,1703],[2353,1662],[2400,1621]],labelBBox:{x:2152,y:1711,width:79,height:18},parent:null,relations:["wsm3kf"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[2060,1174],[2138,1220],[2224,1272],[2302,1319]],labelBBox:{x:2158,y:1199,width:66,height:18},parent:"@gr1",relations:["1pp73vj","yk9zv2","12036hb","jpl8ll","1ghp31l","1xiorre","1woleh6","177bm2y","1l9a3pd","1uzzn9j"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[2088,1469],[2152,1469],[2220,1469],[2284,1469]],labelBBox:{x:2139,y:1446,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[2554,1124],[2554,1184],[2554,1253],[2554,1314]],labelBBox:{x:2523,y:1212,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"5mpoyf",source:"edp",target:"forgejoRunner",label:"runs workflows",points:[[2814,1515],[2895,1530],[2985,1546],[3066,1560]],labelBBox:{x:2912,y:1507,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[2814,1417],[3026,1371],[3334,1298],[3596,1213],[3683,1185],[3775,1149],[3858,1114]],labelBBox:{x:3280,y:1190,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"35ru8e",source:"edp",target:"enterprise",label:"integrates",points:[[2732,1324],[2783,1285],[2839,1245],[2894,1211],[2948,1177],[3009,1145],[3067,1116]],labelBBox:{x:2927,y:1115,width:65,height:18},parent:null,relations:["615gvx"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[2554,1324],[2554,1261],[2554,1197],[2554,1134]],labelBBox:null,parent:"@gr1",relations:["wvo8i"],color:"gray",line:"dashed",head:"normal"}]}},deployments:{elements:{local:{style:{icon:"tech:kubernetes"},kind:"environment",description:{txt:"Local kind-cluster environment for EDP, typically run by edpbuilder"},technology:"Kind",title:"Local kind-cluster",id:"local"},"otc-edp-per-tenant":{style:{},kind:"cloud",description:{txt:`OTC environment for EDP. EDP is the environment a customer gets from us. +and correctness.`},tags:[],technology:"PostgreSQL",kind:"container",x:859,y:0,width:520,height:290,labelBBox:{x:83,y:46,width:384,height:189}},{id:"redis",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Redis",modelRef:"redis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:20,size:"xl"},description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},tags:[],technology:"Redis",kind:"container",x:1557,y:0,width:520,height:290,labelBBox:{x:80,y:58,width:391,height:165}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["mox1r9","vyep7i","1kjl8ep","x7to90"],title:"Platform Developer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"xl"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",x:0,y:2852,width:520,height:290,labelBBox:{x:138,y:109,width:244,height:63}},{id:"customers",parent:null,level:0,children:[],inEdges:[],outEdges:["8fboq4"],title:"End Customers",modelRef:"customers",shape:"person",color:"amber",style:{opacity:15,size:"xl"},description:{txt:"Consumers of your Application"},tags:[],kind:"actor",x:3076,y:3022,width:520,height:290,labelBBox:{x:115,y:109,width:290,height:63}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["5mpoyf"],outEdges:["1lyfj4n"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:3076,y:2409,width:520,height:290,labelBBox:{x:69,y:71,width:382,height:139}},{id:"edfbuilder",parent:null,level:0,children:[],inEdges:["mox1r9"],outEdges:["lnq8uj"],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"xl"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",navigateTo:"edpbuilderworkflow",x:859,y:3275,width:520,height:290,labelBBox:{x:145,y:96,width:259,height:89}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:["14bjpe1"],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"xl"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",navigateTo:"components-template-documentation",x:859,y:2662,width:520,height:290,labelBBox:{x:62,y:83,width:426,height:115}},{id:"edf",parent:null,level:0,children:[],inEdges:["lnq8uj","x7to90"],outEdges:["109bf6k"],title:"EDF",modelRef:"edf",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"xl"},description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},tags:[],technology:"Kubernetes",kind:"system",x:1557,y:3088,width:520,height:290,labelBBox:{x:106,y:71,width:339,height:139}},{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["developer","otherProductLifecycleRoles","@gr2","@gr3"],inEdges:["1lyfj4n","14bjpe1","109bf6k"],outEdges:["1yfrmvt","1yfr9mr","162qbqw","1tbee2v","5mpoyf","1ivh6bj","17brhnu","35ru8e"],level:0,depth:2,tags:[],style:{border:"none",opacity:20},x:1506,y:1871,width:1380,height:966,labelBBox:{x:6,y:0,width:114,height:15}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1yfrmvt","1yfr9mr","162qbqw","zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xl"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:1557,y:1985,width:520,height:290,labelBBox:{x:111,y:109,width:298,height:63}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"xl"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:1546,y:2475,width:542,height:290,labelBBox:{x:34,y:109,width:474,height:63}},{id:"edgeCli",parent:null,level:0,children:[],inEdges:["1yfrmvt"],outEdges:["fyb6c2"],title:"EdgeConnect CLI",modelRef:"edgeCli",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Command-line client for interactive usage"},tags:[],kind:"component",x:2294,y:982,width:520,height:290,labelBBox:{x:65,y:109,width:390,height:63}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1yfr9mr"],outEdges:["1jfbsco"],title:"EdgeConnect SDK",modelRef:"edgeSdk",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"SDK for programmatic integration"},tags:[],kind:"component",x:2294,y:1372,width:520,height:290,labelBBox:{x:102,y:109,width:316,height:63}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:2262,y:1932,width:584,height:375,labelBBox:{x:6,y:0,width:122,height:15}},{id:"localbox",parent:"@gr2",level:1,children:[],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",x:2294,y:1985,width:520,height:290,labelBBox:{x:127,y:96,width:265,height:89}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1lyfj4n","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","17brhnu","35ru8e","6szgsj"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:2262,y:2422,width:584,height:375,labelBBox:{x:6,y:0,width:126,height:15}},{id:"edp",parent:"@gr3",level:1,children:[],inEdges:["1lyfj4n","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","17brhnu","35ru8e","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"xl"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",navigateTo:"edp",x:2294,y:2475,width:520,height:290,labelBBox:{x:88,y:96,width:374,height:89}},{id:"edgeTerraformProvider",parent:null,level:0,children:[],inEdges:["162qbqw","1ivh6bj"],outEdges:["e75f7"],title:"Terraform Edge provider",modelRef:"edgeTerraformProvider",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Terraform provider enabling declarative provisioning"},tags:[],kind:"component",x:3076,y:1629,width:520,height:290,labelBBox:{x:75,y:96,width:371,height:89}},{id:"enterprise",parent:null,level:0,children:[],inEdges:["1tbee2v","35ru8e"],outEdges:["iwd51q"],title:"Customers' Enterprise Systems",modelRef:"enterprise",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"The customers' enterprise systems"},tags:[],kind:"system",x:3076,y:2019,width:520,height:290,labelBBox:{x:62,y:109,width:395,height:63}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:["fyb6c2","1jfbsco","e75f7","vyep7i"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",x:3867,y:1150,width:520,height:290,labelBBox:{x:70,y:96,width:381,height:89}},{id:"cloud",parent:null,level:0,children:[],inEdges:["8fboq4","iwd51q","17brhnu"],outEdges:[],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:3867,y:2677,width:520,height:290,labelBBox:{x:165,y:96,width:191,height:89}}],edges:[{id:"lnq8uj",source:"edfbuilder",target:"edf",label:"boots one",points:[[1379,3351],[1434,3336],[1492,3320],[1548,3305]],labelBBox:{x:1430,y:3298,width:66,height:18},parent:null,relations:["1oxlsu0"],color:"gray",line:"dashed",head:"normal"},{id:"mox1r9",source:"platformdeveloper",target:"edfbuilder",label:"runs",points:[[510,3142],[530,3153],[550,3164],[570,3174],[660,3220],[760,3266],[850,3306]],labelBBox:{x:674,y:3151,width:31,height:18},parent:null,relations:["s1l7g7"],color:"gray",line:"dashed",head:"normal"},{id:"fyb6c2",source:"edgeCli",target:"edgeConnect",label:"calls",points:[[2814,1155],[3102,1185],[3565,1235],[3857,1266]],labelBBox:{x:3320,y:1160,width:32,height:18},parent:null,relations:["h84u7y"],color:"gray",line:"dashed",head:"normal"},{id:"1jfbsco",source:"edgeSdk",target:"edgeConnect",label:"calls",points:[[2814,1480],[3102,1440],[3565,1374],[3857,1333]],labelBBox:{x:3320,y:1347,width:32,height:18},parent:null,relations:["1elpzvp"],color:"gray",line:"dashed",head:"normal"},{id:"e75f7",source:"edgeTerraformProvider",target:"edgeConnect",label:"provisions via",points:[[3596,1643],[3669,1604],[3747,1560],[3817,1516],[3852,1494],[3888,1470],[3923,1446]],labelBBox:{x:3687,y:1493,width:89,height:18},parent:null,relations:["6h5xnh"],color:"gray",line:"dashed",head:"normal"},{id:"vyep7i",source:"platformdeveloper",target:"edgeConnect",label:"operates",points:[[286,2852],[372,2368],[682,831],[1118,831],[1118,831],[1118,831],[3337,831],[3588,831],[3830,1008],[3978,1143]],labelBBox:{x:2162,y:808,width:58,height:18},parent:null,relations:["4pplfw"],color:"gray",line:"dashed",head:"normal"},{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[520,2940],[624,2917],[744,2890],[849,2867]],labelBBox:{x:571,y:2856,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"},{id:"x7to90",source:"platformdeveloper",target:"edf",label:"develops EDP and EDF",points:[[520,3036],[804,3079],[1259,3148],[1547,3192]],labelBBox:{x:1043,y:3068,width:152,height:18},parent:null,relations:["v8v12"],color:"gray",line:"dashed",head:"normal"},{id:"8fboq4",source:"customers",target:"cloud",label:"uses your app",points:[[3596,3054],[3680,3017],[3773,2976],[3858,2939]],labelBBox:{x:3686,y:2940,width:92,height:18},parent:null,relations:["1g2ebwc"],color:"gray",line:"dashed",head:"normal"},{id:"iwd51q",source:"enterprise",target:"cloud",label:"app specific dependencies",points:[[3533,2309],[3554,2326],[3576,2343],[3596,2359],[3720,2460],[3856,2578],[3959,2670]],labelBBox:{x:3647,y:2384,width:169,height:18},parent:null,relations:["nc44l9"],color:"gray",line:"dashed",head:"normal"},{id:"1yfrmvt",source:"developer",target:"edgeCli",label:"uses",points:[[1873,1985],[1943,1813],[2078,1523],[2262,1322],[2276,1307],[2291,1292],[2307,1279]],labelBBox:{x:2174,y:1336,width:34,height:18},parent:null,relations:["3rnruw"],color:"gray",line:"dashed",head:"normal"},{id:"1yfr9mr",source:"developer",target:"edgeSdk",label:"uses",points:[[1903,1985],[1960,1897],[2043,1786],[2138,1709],[2182,1674],[2233,1643],[2285,1618]],labelBBox:{x:2174,y:1617,width:34,height:18},parent:null,relations:["1ks7amr"],color:"gray",line:"dashed",head:"normal"},{id:"162qbqw",source:"developer",target:"edgeTerraformProvider",label:"uses",points:[[2070,1985],[2131,1955],[2197,1927],[2262,1907],[2528,1826],[2846,1794],[3066,1782]],labelBBox:{x:2537,y:1772,width:34,height:18},parent:null,relations:["1l0aei7"],color:"gray",line:"dashed",head:"normal"},{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[2077,2130],[2144,2130],[2216,2130],[2284,2130]],labelBBox:{x:2158,y:2107,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1tbee2v",source:"localbox",target:"enterprise",label:"company integration",points:[[2814,2141],[2895,2145],[2984,2149],[3066,2152]],labelBBox:{x:2895,y:2122,width:130,height:18},parent:null,relations:["1abvxlh"],color:"gray",line:"dashed",head:"normal"},{id:"1lyfj4n",source:"forgejoRunner",target:"edp",label:"register",points:[[3076,2576],[2995,2583],[2906,2590],[2824,2597]],labelBBox:{x:2935,y:2558,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"14bjpe1",source:"documentation",target:"edp",label:"provides documentation for",points:[[1379,2866],[1421,2874],[1465,2881],[1506,2885],[1764,2910],[1833,2926],[2088,2885],[2185,2869],[2281,2821],[2361,2770]],labelBBox:{x:1731,y:2862,width:173,height:18},parent:null,relations:["xw0pne"],color:"gray",line:"dashed",head:"normal"},{id:"109bf6k",source:"edf",target:"edp",label:"builds many",points:[[2077,3102],[2135,3068],[2193,3029],[2244,2987],[2318,2925],[2389,2843],[2444,2773]],labelBBox:{x:2152,y:2964,width:79,height:18},parent:null,relations:["wsm3kf"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[2035,2275],[2127,2336],[2234,2407],[2327,2469]],labelBBox:{x:2158,y:2322,width:66,height:18},parent:"@gr1",relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[2088,2620],[2152,2620],[2220,2620],[2284,2620]],labelBBox:{x:2139,y:2597,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[2554,2275],[2554,2335],[2554,2404],[2554,2465]],labelBBox:{x:2523,y:2363,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"5mpoyf",source:"edp",target:"forgejoRunner",label:"runs workflows",points:[[2814,2646],[2883,2649],[2958,2648],[3026,2639],[3039,2637],[3053,2635],[3066,2632]],labelBBox:{x:2912,y:2616,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"1ivh6bj",source:"edp",target:"edgeTerraformProvider",label:"automates",points:[[2774,2475],[2819,2435],[2860,2386],[2886,2332],[2897,2308],[2882,2120],[2894,2097],[2934,2022],[2999,1960],[3068,1911]],labelBBox:{x:2925,y:1928,width:69,height:18},parent:null,relations:["1t93kj2"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[2814,2708],[2897,2733],[2989,2757],[3076,2772],[3339,2816],[3644,2826],[3857,2827]],labelBBox:{x:3280,y:2749,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"35ru8e",source:"edp",target:"enterprise",label:"integrates",points:[[2803,2475],[2891,2424],[2990,2366],[3078,2314]],labelBBox:{x:2927,y:2328,width:65,height:18},parent:null,relations:["615gvx"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[2554,2475],[2554,2412],[2554,2348],[2554,2285]],labelBBox:null,parent:"@gr1",relations:["96ogr7"],color:"gray",line:"dashed",head:"normal"}]}},deployments:{elements:{local:{style:{icon:"tech:kubernetes"},kind:"environment",description:{txt:"Local kind-cluster environment for EDP, typically run by edpbuilder"},technology:"Kind",title:"Local kind-cluster",id:"local"},"otc-edp-per-tenant":{style:{},kind:"cloud",description:{txt:`OTC environment for EDP. EDP is the environment a customer gets from us. This is kubernetes clusters and other infrastructure like nodes and vms, and platform services. All is set up by IaC-pipelines in the Foundry.`},technology:"OTC",title:"OTC EDP per tenant cluster",id:"otc-edp-per-tenant"},"otc-faas":{style:{},kind:"cloud",description:{txt:"OTC environments for Prototype FaaS."},technology:"OTC",title:"OTC prototype FaaS",id:"otc-faas"},edge:{style:{},kind:"cloud",description:{txt:"Edge environments for distributed workloads."},technology:"Edge",title:"Edge Cloud",id:"edge"},"otc-edpFoundry":{style:{},kind:"cloud",description:{txt:`OTC environments for the central EDP Foundry services. This is kubernetes clusters and other infrastructure like nodes and vms, and optionally platform services. All is set up by IaC terraform and edpbuilder. A tenant is a folder in Foundry-Config-Forgejo. On merge triggers reconciliation to EDP. -Optionally we will have a WebUI/API/CLI`},technology:"OTC",title:"OTC EDP Foundry Central Service clusters",id:"otc-edpFoundry"},edgeProvider:{style:{icon:"tech:terraform"},kind:"paas",description:{txt:"Unlocks the terraform ecosystem"},title:"Terraform Edge provider",id:"edgeProvider"},edgeProviderHost:{style:{},kind:"environment",title:"OTC",id:"edgeProviderHost"},edgeSdk:{style:{icon:"tech:go"},kind:"paas",description:{txt:"Wrapper around API"},technology:"Cloud Services",title:"Edge Cloud SDK",id:"edgeSdk"},edgeCloud:{style:{},kind:"environment",title:"Edge cloud",id:"edgeCloud"},otcTenantProd:{style:{},kind:"environment",title:"Prod - builth.ing",id:"otcTenantProd"},otcTenantNonProd:{style:{},kind:"environment",title:"Non-Prod - t09.de",id:"otcTenantNonProd"},otcKubernetes:{style:{icon:"tech:kubernetes"},kind:"environment",description:{txt:"OTC Container Cluster Engine hosting EDP platform"},technology:"Kubernetes",title:"OTC Kubernetes",id:"otcKubernetes"},edgeConnectEnv:{style:{icon:"tech:docker"},kind:"environment",description:{txt:"Edge infrastructure for ephemeral runner deployment"},technology:"Edge Connect Platform",title:"Edge Connect",id:"edgeConnectEnv"},"local.backstage":{style:{},kind:"namespace",title:"backstage",id:"local.backstage"},"local.argocd":{style:{},kind:"namespace",title:"argocd",id:"local.argocd"},"local.gitea":{style:{},kind:"namespace",title:"gitea",id:"local.gitea"},"local.keycloak":{style:{},kind:"namespace",title:"keycloak",id:"local.keycloak"},"local.crossplane":{style:{},kind:"namespace",title:"crossplane-system",id:"local.crossplane"},"local.externalSecrets":{style:{},kind:"namespace",title:"external-secrets",id:"local.externalSecrets"},"local.velero":{style:{},kind:"namespace",title:"velero",id:"local.velero"},"local.minio":{style:{},kind:"namespace",title:"minio-backup",id:"local.minio"},"local.monitoring":{style:{},kind:"namespace",title:"monitoring",id:"local.monitoring"},"local.ingressNginx":{style:{},kind:"namespace",title:"ingress-nginx",id:"local.ingressNginx"},"local.openbao":{style:{},kind:"namespace",title:"openbao",id:"local.openbao"},"local.fibonacci":{style:{},kind:"namespace",title:"fibonacci-app",id:"local.fibonacci"},"local.mailhog":{style:{},kind:"namespace",title:"mailhog",id:"local.mailhog"},"local.spark":{style:{},kind:"namespace",title:"spark",id:"local.spark"},"otc-edp-per-tenant.cce":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"OTC Container Cluster Engine"},technology:"Kubernetes",title:"OTC CCE",id:"otc-edp-per-tenant.cce"},"otc-edp-per-tenant.cloudServices":{style:{},kind:"paas",description:{txt:"EDP Cloud Services"},technology:"Cloud Services",title:"EDP Cloud Services",id:"otc-edp-per-tenant.cloudServices"},"otc-edp-per-tenant.forgejoRunnerInfrastructure":{style:{},kind:"computeressource",description:{txt:"Infrastructure for Forgejo runners like pods, vms, lxds, etc"},title:"EDP ForgejoRunner infrastructure",id:"otc-edp-per-tenant.forgejoRunnerInfrastructure"},"otc-faas.dev":{style:{},kind:"environment",description:{txt:"*.t09.de"},technology:"OTC",title:"tenant Dev",id:"otc-faas.dev"},"otc-faas.prod":{style:{},kind:"environment",description:{txt:"*.buildth.ing"},technology:"OTC",title:"Tenant Prod",id:"otc-faas.prod"},"edge.edge-dev":{style:{},kind:"environment",description:{txt:"Edge development environment"},technology:"Edge",title:"Edge Dev",id:"edge.edge-dev"},"edge.edge-prod":{style:{},kind:"environment",description:{txt:"Edge production environment"},technology:"Edge",title:"Edge Prod",id:"edge.edge-prod"},"otc-edpFoundry.cce":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"OTC Container Cluster Engine"},technology:"Kubernetes",title:"OTC CCE",id:"otc-edpFoundry.cce"},"otc-edpFoundry.workflowSetupEDPInfrastructure":{style:{},kind:"computeressource",description:{txt:"EDP infrastructure Workflow"},title:"EDP infrastructure Workflow",id:"otc-edpFoundry.workflowSetupEDPInfrastructure"},"otc-edpFoundry.workflowSetupArgoCDInfrastructure":{style:{},kind:"computeressource",description:{txt:"EDP Setup ArgoCD Workflow"},title:"EDP ArgoCD Workflow",id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure"},"otc-edpFoundry.forgejoRunnerInfrastructure":{style:{},kind:"computeressource",description:{txt:"Infrastructure for Forgejo runners like pods, vms, lxds, etc"},title:"EDP ForgejoRunner infrastructure",id:"otc-edpFoundry.forgejoRunnerInfrastructure"},"edgeProviderHost.edp":{style:{icon:"tech:git"},kind:"cluster",title:"Forgejo for all EDP-tenants",id:"edgeProviderHost.edp"},"edgeProviderHost.terralist":{style:{icon:"tech:terraform"},kind:"paas",description:{txt:"Terraform provider private hosting"},technology:"Cloud Services",title:"Terralist",id:"edgeProviderHost.terralist"},"edgeCloud.edgeApi":{style:{icon:"tech:swagger"},kind:"paas",technology:"Edge Cloud (managed)",links:[{url:"https://swagger.edge.platform.mg3.mdb.osc.live",title:"Documentation"}],title:"Edge Cloud API",id:"edgeCloud.edgeApi"},"edgeCloud.edgeResources":{style:{},kind:"paas",description:{txt:"App, AppInstance, etc."},technology:"Edge Cloud (managed)",title:"Edge Cloud Resources",id:"edgeCloud.edgeResources"},"otcTenantProd.otcTenantEdpBuildthing":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Primary Instance"},title:"edp.builth.ing",id:"otcTenantProd.otcTenantEdpBuildthing"},"otcTenantProd.otcTenantObservability":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Observability Instance"},title:"observability.builth.ing",id:"otcTenantProd.otcTenantObservability"},"otcTenantProd.otcTenantCustomerA":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Customer Instance"},title:"customer-a.builth.ing",id:"otcTenantProd.otcTenantCustomerA"},"otcTenantNonProd.otcTenantDev1":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Development Instance"},title:"dev1.t09.de",id:"otcTenantNonProd.otcTenantDev1"},"otcTenantNonProd.otcTenantTestX":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Testing Instance"},title:"test-x.t09.de",id:"otcTenantNonProd.otcTenantTestX"},"otcKubernetes.edpCluster":{style:{},kind:"cluster",description:{txt:"EDP platform cluster"},title:"EDP Cluster",id:"otcKubernetes.edpCluster"},"edgeConnectEnv.runnerInfrastructure":{style:{},kind:"computeressource",description:{txt:"Dynamically provisioned runner instances"},title:"Runner Infrastructure",id:"edgeConnectEnv.runnerInfrastructure"},"local.backstage.backstage":{id:"local.backstage.backstage",element:"edp.ui.backstage",style:{}},"local.backstage.database":{id:"local.backstage.database",element:"edp.ui.database",style:{}},"local.argocd.argocdAppController":{id:"local.argocd.argocdAppController",element:"edp.argoCD.argocdAppController",style:{}},"local.argocd.argocdAppSetController":{id:"local.argocd.argocdAppSetController",element:"edp.argoCD.argocdAppSetController",style:{}},"local.argocd.argocdRedis":{id:"local.argocd.argocdRedis",element:"edp.argoCD.argocdRedis",style:{}},"local.argocd.argocdRepoServer":{id:"local.argocd.argocdRepoServer",element:"edp.argoCD.argocdRepoServer",style:{}},"local.argocd.argocdServer":{id:"local.argocd.argocdServer",element:"edp.argoCD.argocdServer",style:{}},"local.gitea.forgejo":{id:"local.gitea.forgejo",element:"edp.forgejo",style:{}},"local.gitea.forgejoRunner":{id:"local.gitea.forgejoRunner",element:"forgejoRunner",style:{}},"local.keycloak.keycloak":{id:"local.keycloak.keycloak",element:"edp.keycloak.keycloak",style:{}},"local.keycloak.keycloakDB":{id:"local.keycloak.keycloakDB",element:"edp.keycloak.keycloakDB",style:{}},"local.crossplane.crossplane":{id:"local.crossplane.crossplane",element:"edp.crossplane.crossplane",style:{}},"local.crossplane.crossplaneFunction":{id:"local.crossplane.crossplaneFunction",element:"edp.crossplane.crossplaneFunction",style:{}},"local.crossplane.crossplaneRbacManager":{id:"local.crossplane.crossplaneRbacManager",element:"edp.crossplane.crossplaneRbacManager",style:{}},"local.crossplane.providerArgoCD":{id:"local.crossplane.providerArgoCD",element:"edp.crossplane.providerArgoCD",style:{}},"local.crossplane.providerKind":{id:"local.crossplane.providerKind",element:"edp.crossplane.providerKind",style:{}},"local.crossplane.providerShell":{id:"local.crossplane.providerShell",element:"edp.crossplane.providerShell",style:{}},"local.externalSecrets.certController":{id:"local.externalSecrets.certController",element:"edp.externalSecrets.certController",style:{}},"local.externalSecrets.externalSecrets":{id:"local.externalSecrets.externalSecrets",element:"edp.externalSecrets.externalSecrets",style:{}},"local.externalSecrets.webhook":{id:"local.externalSecrets.webhook",element:"edp.externalSecrets.webhook",style:{}},"local.velero.velero":{id:"local.velero.velero",element:"edp.velero.velero",style:{}},"local.minio.minio":{id:"local.minio.minio",element:"edp.minio.minio",style:{}},"local.monitoring.alloy":{id:"local.monitoring.alloy",element:"edp.monitoring.alloy",style:{}},"local.monitoring.distributor":{id:"local.monitoring.distributor",element:"edp.monitoring.loki.distributor",style:{}},"local.monitoring.gateway":{id:"local.monitoring.gateway",element:"edp.monitoring.loki.gateway",style:{}},"local.monitoring.ingestor":{id:"local.monitoring.ingestor",element:"edp.monitoring.loki.ingestor",style:{}},"local.monitoring.querier":{id:"local.monitoring.querier",element:"edp.monitoring.loki.querier",style:{}},"local.monitoring.queryFrontend":{id:"local.monitoring.queryFrontend",element:"edp.monitoring.loki.queryFrontend",style:{}},"local.ingressNginx.ingressNginx":{id:"local.ingressNginx.ingressNginx",element:"edp.ingressNginx.ingressNginx",style:{}},"local.openbao.openbao":{id:"local.openbao.openbao",element:"edp.openbao.openbao",style:{}},"local.openbao.agentInjector":{id:"local.openbao.agentInjector",element:"edp.openbao.agentInjector",style:{}},"local.fibonacci.fibonacci":{id:"local.fibonacci.fibonacci",element:"edp.testApp.fibonacci",style:{}},"local.mailhog.mailhog":{id:"local.mailhog.mailhog",element:"edp.mailhog.mailhog",style:{}},"local.spark.sparkoperator":{id:"local.spark.sparkoperator",element:"edp.spark.sparkoperator",style:{}},"otc-edp-per-tenant.cce.edp":{style:{},kind:"cluster",title:"EDP",id:"otc-edp-per-tenant.cce.edp"},"otc-edp-per-tenant.cloudServices.postgres":{id:"otc-edp-per-tenant.cloudServices.postgres",element:"postgres",style:{}},"otc-edp-per-tenant.cloudServices.redis":{id:"otc-edp-per-tenant.cloudServices.redis",element:"redis",style:{}},"otc-edp-per-tenant.cloudServices.objectstorage":{id:"otc-edp-per-tenant.cloudServices.objectstorage",element:"objectstorage",style:{}},"otc-edp-per-tenant.cloudServices.elasticsearch":{id:"otc-edp-per-tenant.cloudServices.elasticsearch",element:"elasticsearch",style:{}},"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner":{id:"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner",element:"forgejoRunner",style:{}},"otc-faas.dev.cce":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"*.t09.de"},technology:"Kubernetes",title:"Central Forgejo",id:"otc-faas.dev.cce"},"otc-faas.dev.cloudServices":{style:{},kind:"paas",description:{txt:"EDP Cloud Services (Postgres, Redis, etc.)"},technology:"Cloud Services",title:"EDP Cloud Services",id:"otc-faas.dev.cloudServices"},"otc-faas.dev.observability":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"*.t09.de"},technology:"Kubernetes",title:"Observability",id:"otc-faas.dev.observability"},"otc-faas.prod.cce":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"*.buildth.ing"},technology:"Kubernetes",title:"Central Forgejo",id:"otc-faas.prod.cce"},"otc-faas.prod.cloudServices":{style:{},kind:"paas",description:{txt:"EDP Cloud Services (Postgres, Redis, etc.)"},technology:"Cloud Services",title:"EDP Cloud Services",id:"otc-faas.prod.cloudServices"},"otc-faas.prod.observability":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"*.buildth.ing"},technology:"Kubernetes",title:"Observability",id:"otc-faas.prod.observability"},"otc-edpFoundry.cce.internalServices":{style:{},kind:"cluster",title:"EDP Foundry Internal Services",id:"otc-edpFoundry.cce.internalServices"},"otc-edpFoundry.cce.centralObservability":{style:{},kind:"cluster",title:"EDP Foundry Central Observability",id:"otc-edpFoundry.cce.centralObservability"},"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner":{id:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner",element:"forgejoRunner",style:{}},"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker":{id:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker",element:"forgejoRunnerWorker",style:{}},"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow":{id:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow",element:"edpworkflow",style:{}},"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner":{id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner",element:"forgejoRunner",style:{}},"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker":{id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker",element:"forgejoRunnerWorker",style:{}},"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow":{id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow",element:"edpworkflow",style:{}},"otc-edpFoundry.forgejoRunnerInfrastructure.forgejoRunner":{id:"otc-edpFoundry.forgejoRunnerInfrastructure.forgejoRunner",element:"forgejoRunner",style:{}},"edgeProviderHost.edp.forgejo":{id:"edgeProviderHost.edp.forgejo",element:"edp.forgejo",title:"Forgejo for all EDP-tenants",description:{txt:"edp.buildth.ing"},style:{}},"otcKubernetes.edpCluster.forgejo":{id:"otcKubernetes.edpCluster.forgejo",element:"edp.forgejo",description:{txt:"Forgejo - Git platform with Actions"},style:{}},"otcKubernetes.edpCluster.forgejoActions":{id:"otcKubernetes.edpCluster.forgejoActions",element:"edp.forgejoActions",description:{txt:"CI/CD orchestration for Forgejo"},style:{}},"otcKubernetes.edpCluster.garmContainer":{id:"otcKubernetes.edpCluster.garmContainer",element:"edp.garm",description:{txt:"GARM container with runner orchestration"},style:{}},"otcKubernetes.edpCluster.garmService":{id:"otcKubernetes.edpCluster.garmService",element:"edp.garm.garm",description:{txt:"GARM - Runner lifecycle manager"},style:{}},"otcKubernetes.edpCluster.providerEdgeConnect":{id:"otcKubernetes.edpCluster.providerEdgeConnect",element:"edp.garm.providerEdgeConnect",description:{txt:"GARM Provider for Edge Connect"},style:{}},"edgeConnectEnv.runnerInfrastructure.forgejoRunner":{id:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",element:"forgejoRunner",description:{txt:"Ephemeral Forgejo Actions runner"},style:{}},"otc-edp-per-tenant.cce.edp.argoCD":{id:"otc-edp-per-tenant.cce.edp.argoCD",element:"edp.argoCD",style:{}},"otc-edp-per-tenant.cce.edp.forgejoRunner":{id:"otc-edp-per-tenant.cce.edp.forgejoRunner",element:"forgejoRunner",style:{}},"otc-edp-per-tenant.cce.edp.forgejo":{id:"otc-edp-per-tenant.cce.edp.forgejo",element:"edp.forgejo",style:{}},"otc-edp-per-tenant.cce.edp.externalSecrets":{id:"otc-edp-per-tenant.cce.edp.externalSecrets",element:"edp.externalSecrets",style:{}},"otc-edp-per-tenant.cce.edp.ingressNginx":{id:"otc-edp-per-tenant.cce.edp.ingressNginx",element:"edp.ingressNginx",style:{}},"otc-edp-per-tenant.cce.edp.garm":{id:"otc-edp-per-tenant.cce.edp.garm",element:"edp.garm",style:{}},"otc-faas.dev.cce.edp":{style:{},kind:"cluster",description:{txt:"t09.de"},title:"Forgejo Dev for platform team",id:"otc-faas.dev.cce.edp"},"otc-faas.prod.cce.edp":{style:{},kind:"cluster",title:"Forgejo for all EDP-tenants",id:"otc-faas.prod.cce.edp"},"otc-edpFoundry.cce.internalServices.argoCD":{id:"otc-edpFoundry.cce.internalServices.argoCD",element:"edp.argoCD",style:{}},"otc-edpFoundry.cce.internalServices.forgejo":{id:"otc-edpFoundry.cce.internalServices.forgejo",element:"edp.forgejo",style:{}},"otc-edpFoundry.cce.internalServices.externalSecrets":{id:"otc-edpFoundry.cce.internalServices.externalSecrets",element:"edp.externalSecrets",style:{}},"otc-edpFoundry.cce.internalServices.openbao":{id:"otc-edpFoundry.cce.internalServices.openbao",element:"edp.openbao",style:{}},"otc-edpFoundry.cce.internalServices.ingressNginx":{id:"otc-edpFoundry.cce.internalServices.ingressNginx",element:"edp.ingressNginx",style:{}},"otc-edpFoundry.cce.centralObservability.grafana":{id:"otc-edpFoundry.cce.centralObservability.grafana",element:"edp.grafana",style:{}},"otc-edpFoundry.cce.centralObservability.prometheus":{id:"otc-edpFoundry.cce.centralObservability.prometheus",element:"edp.prometheus",style:{}},"otc-edpFoundry.cce.centralObservability.loki":{id:"otc-edpFoundry.cce.centralObservability.loki",element:"edp.loki",style:{}},"otc-faas.dev.cce.edp.forgejo":{id:"otc-faas.dev.cce.edp.forgejo",element:"edp.forgejo",style:{}},"otc-faas.prod.cce.edp.forgejo":{id:"otc-faas.prod.cce.edp.forgejo",element:"edp.forgejo",title:"Forgejo for all EDP-tenants",description:{txt:"buildth.ing"},style:{}}},relations:{g9oj4f:{title:"registers",source:{deployment:"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner"},target:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},id:"g9oj4f"},"1fzhjm9":{source:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},target:{deployment:"otc-edp-per-tenant.cloudServices.elasticsearch"},id:"1fzhjm9"},"15njmlz":{source:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},target:{deployment:"otc-edp-per-tenant.cloudServices.objectstorage"},id:"15njmlz"},hks76r:{source:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},target:{deployment:"otc-edp-per-tenant.cloudServices.postgres"},id:"hks76r"},"1w18ve8":{source:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},target:{deployment:"otc-edp-per-tenant.cloudServices.redis"},id:"1w18ve8"},dz2rdn:{source:{deployment:"otc-faas.dev.cce.edp.forgejo"},target:{deployment:"otc-faas.dev.cloudServices"},id:"dz2rdn"},"2shw6y":{source:{deployment:"otc-faas.prod.cce.edp.forgejo"},target:{deployment:"otc-faas.prod.cloudServices"},id:"2shw6y"},"7kqly3":{title:"runs",source:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner"},target:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker"},id:"7kqly3"},"12hf1w4":{title:"executes",source:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker"},target:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow"},id:"12hf1w4"},uk77s5:{title:"deploys edp to otc.cce",source:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow"},target:{deployment:"otc-edp-per-tenant.cce.edp"},id:"uk77s5"},"1pfc6bl":{title:"deploys edp to otc.paas",source:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow"},target:{deployment:"otc-edp-per-tenant.cloudServices"},id:"1pfc6bl"},hqie0:{title:"runs",source:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner"},target:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker"},id:"hqie0"},"1j16hqv":{title:"executes",source:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker"},target:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow"},id:"1j16hqv"},jde35l:{source:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow"},target:{deployment:"otc-edp-per-tenant.cce.edp.argoCD"},id:"jde35l"},"1umzqdy":{title:"registers",source:{deployment:"otc-edpFoundry.forgejoRunnerInfrastructure.forgejoRunner"},target:{deployment:"otc-edpFoundry.cce.internalServices.forgejo"},id:"1umzqdy"},dola40:{title:"invokes",source:{deployment:"otc-edpFoundry.cce.internalServices.forgejo"},target:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner"},id:"dola40"},"1f5y9gc":{title:"invokes",source:{deployment:"otc-edpFoundry.cce.internalServices.forgejo"},target:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner"},id:"1f5y9gc"},"1wlvsb5":{title:"built using",source:{deployment:"edgeProvider"},target:{deployment:"edgeSdk"},id:"1wlvsb5"},"1mpjz5d":{title:"published to",source:{deployment:"edgeProvider"},target:{deployment:"edgeProviderHost.terralist"},id:"1mpjz5d"},"12ssq9":{title:"hosted on",source:{deployment:"edgeProvider"},target:{deployment:"edgeProviderHost.edp"},id:"12ssq9"},vfhcba:{title:"calls",source:{deployment:"edgeSdk"},target:{deployment:"edgeCloud.edgeApi"},id:"vfhcba"},"1sm6ifh":{title:"hosted on",source:{deployment:"edgeSdk"},target:{deployment:"edgeProviderHost.edp"},id:"1sm6ifh"},"1q6ftvm":{title:"authenticates via",source:{deployment:"edgeProviderHost.terralist"},target:{deployment:"edgeProviderHost.edp"},id:"1q6ftvm"},rr0lcz:{title:"creates/destroys",source:{deployment:"edgeCloud.edgeApi"},target:{deployment:"edgeCloud.edgeResources"},id:"rr0lcz"},"1fxu52d":{title:"deploys",source:{deployment:"otcTenantProd.otcTenantEdpBuildthing"},target:{deployment:"otcTenantProd.otcTenantObservability"},id:"1fxu52d"},"6gfo3g":{title:"deploys",source:{deployment:"otcTenantProd.otcTenantEdpBuildthing"},target:{deployment:"otcTenantProd.otcTenantCustomerA"},id:"6gfo3g"},s1ie0n:{title:"deploys",source:{deployment:"otcTenantProd.otcTenantEdpBuildthing"},target:{deployment:"otcTenantNonProd.otcTenantDev1"},id:"s1ie0n"},"77azfi":{title:"deploys",source:{deployment:"otcTenantProd.otcTenantEdpBuildthing"},target:{deployment:"otcTenantNonProd.otcTenantTestX"},id:"77azfi"},"1k6h7jf":{title:"registers with and picks up jobs",source:{deployment:"edgeConnectEnv.runnerInfrastructure.forgejoRunner"},target:{deployment:"otcKubernetes.edpCluster.forgejo"},id:"1k6h7jf"},"1t1b56a":{title:"retrieves bootstrap information",source:{deployment:"edgeConnectEnv.runnerInfrastructure.forgejoRunner"},target:{deployment:"otcKubernetes.edpCluster.garmService"},id:"1t1b56a"}}},imports:{}}),{useLikeC4Model:ZJe}=YJe(XJe);function KJe({children:e}){const r=ZJe();return y.jsx(YQe,{likec4model:r,children:e})}function QJe(e){return y.jsx(KJe,{children:y.jsx(gJe,{renderIcon:NJe,...e})})}var $R={exports:{}},T0={},zR={exports:{}},RR={};var one;function JJe(){return one||(one=1,(function(e){function r(B,F){var q=B.length;B.push(F);e:for(;0>>1,U=B[G];if(0>>1;Ga(O,q))Wa(K,O)?(B[G]=K,B[W]=q,G=W):(B[G]=O,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,T||(T=!0,L());else{var F=n(d);F!==null&&V(z,F.startTime-B)}}var T=!1,A=-1,R=5,j=-1;function I(){return x?!0:!(e.unstable_now()-jB&&I());){var G=p.callback;if(typeof G=="function"){p.callback=null,f=p.priorityLevel;var U=G(p.expirationTime<=B);if(B=e.unstable_now(),typeof U=="function"){p.callback=U,$(B),F=!0;break t}p===n(c)&&o(c),$(B)}else o(c);p=n(c)}if(p!==null)F=!0;else{var Y=n(d);Y!==null&&V(z,Y.startTime-B),F=!1}}break e}finally{p=null,f=q,g=!1}F=void 0}}finally{F?L():T=!1}}}var L;if(typeof _=="function")L=function(){_(P)};else if(typeof MessageChannel<"u"){var H=new MessageChannel,M=H.port2;H.port1.onmessage=P,L=function(){M.postMessage(null)}}else L=function(){k(P,0)};function V(B,F){A=k(function(){B(e.unstable_now())},F)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(B){B.callback=null},e.unstable_forceFrameRate=function(B){0>B||125G?(B.sortIndex=q,r(d,B),n(c)===null&&B===n(d)&&(w?(C(A),A=-1):w=!0,V(z,q-G))):(B.sortIndex=U,r(c,B),v||g||(v=!0,T||(T=!0,L()))),B},e.unstable_shouldYield=I,e.unstable_wrapCallback=function(B){var F=f;return function(){var q=f;f=F;try{return B.apply(this,arguments)}finally{f=q}}}})(RR)),RR}var ane;function eet(){return ane||(ane=1,zR.exports=JJe()),zR.exports}var ine;function tet(){if(ine)return T0;ine=1;var e=eet(),r=K6(),n=GN();function o(h){var m="https://react.dev/errors/"+h;if(1U||(h.current=G[U],G[U]=null,U--)}function O(h,m){U++,G[U]=h.current,h.current=m}var W=Y(null),K=Y(null),Q=Y(null),ae=Y(null);function te(h,m){switch(O(Q,m),O(K,h),O(W,null),m.nodeType){case 9:case 11:h=(h=m.documentElement)&&(h=h.namespaceURI)?cge(h):0;break;default:if(h=m.tagName,m=m.namespaceURI)m=cge(m),h=dge(m,h);else switch(h){case"svg":h=1;break;case"math":h=2;break;default:h=0}}Z(W),O(W,h)}function re(){Z(W),Z(K),Z(Q)}function ue(h){h.memoizedState!==null&&O(ae,h);var m=W.current,b=dge(m,h.type);m!==b&&(O(K,h),O(W,b))}function _e(h){K.current===h&&(Z(W),Z(K)),ae.current===h&&(Z(ae),pb._currentValue=q)}var ce,pe;function xe(h){if(ce===void 0)try{throw Error()}catch(b){var m=b.stack.trim().match(/\n( *(at )?)/);ce=m&&m[1]||"",pe=-1>>1,U=B[G];if(0>>1;Ga(O,q))Wa(K,O)?(B[G]=K,B[W]=q,G=W):(B[G]=O,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 R(B){if(w=!1,$(B),!v)if(n(c)!==null)v=!0,T||(T=!0,L());else{var F=n(d);F!==null&&V(R,F.startTime-B)}}var T=!1,A=-1,z=5,j=-1;function I(){return x?!0:!(e.unstable_now()-jB&&I());){var G=p.callback;if(typeof G=="function"){p.callback=null,f=p.priorityLevel;var U=G(p.expirationTime<=B);if(B=e.unstable_now(),typeof U=="function"){p.callback=U,$(B),F=!0;break t}p===n(c)&&o(c),$(B)}else o(c);p=n(c)}if(p!==null)F=!0;else{var Y=n(d);Y!==null&&V(R,Y.startTime-B),F=!1}}break e}finally{p=null,f=q,g=!1}F=void 0}}finally{F?L():T=!1}}}var L;if(typeof _=="function")L=function(){_(P)};else if(typeof MessageChannel<"u"){var H=new MessageChannel,M=H.port2;H.port1.onmessage=P,L=function(){M.postMessage(null)}}else L=function(){k(P,0)};function V(B,F){A=k(function(){B(e.unstable_now())},F)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(B){B.callback=null},e.unstable_forceFrameRate=function(B){0>B||125G?(B.sortIndex=q,r(d,B),n(c)===null&&B===n(d)&&(w?(C(A),A=-1):w=!0,V(R,q-G))):(B.sortIndex=U,r(c,B),v||g||(v=!0,T||(T=!0,L()))),B},e.unstable_shouldYield=I,e.unstable_wrapCallback=function(B){var F=f;return function(){var q=f;f=F;try{return B.apply(this,arguments)}finally{f=q}}}})(zz)),zz}var ane;function eet(){return ane||(ane=1,Rz.exports=JJe()),Rz.exports}var ine;function tet(){if(ine)return T0;ine=1;var e=eet(),r=K6(),n=GN();function o(h){var m="https://react.dev/errors/"+h;if(1U||(h.current=G[U],G[U]=null,U--)}function O(h,m){U++,G[U]=h.current,h.current=m}var W=Y(null),K=Y(null),Q=Y(null),ae=Y(null);function te(h,m){switch(O(Q,m),O(K,h),O(W,null),m.nodeType){case 9:case 11:h=(h=m.documentElement)&&(h=h.namespaceURI)?cge(h):0;break;default:if(h=m.tagName,m=m.namespaceURI)m=cge(m),h=dge(m,h);else switch(h){case"svg":h=1;break;case"math":h=2;break;default:h=0}}Z(W),O(W,h)}function re(){Z(W),Z(K),Z(Q)}function ue(h){h.memoizedState!==null&&O(ae,h);var m=W.current,b=dge(m,h.type);m!==b&&(O(K,h),O(W,b))}function _e(h){K.current===h&&(Z(W),Z(K)),ae.current===h&&(Z(ae),pb._currentValue=q)}var ce,pe;function xe(h){if(ce===void 0)try{throw Error()}catch(b){var m=b.stack.trim().match(/\n( *(at )?)/);ce=m&&m[1]||"",pe=-1)":-1D||se[E]!==ge[D]){var Ee=` `+se[E].replace(" at new "," at ");return h.displayName&&Ee.includes("")&&(Ee=Ee.replace("",h.displayName)),Ee}while(1<=E&&0<=D);break}}}finally{je=!1,Error.prepareStackTrace=b}return(b=h?h.displayName||h.name:"")?xe(b):""}function Je(h,m){switch(h.tag){case 26:case 27:case 5:return xe(h.type);case 16:return xe("Lazy");case 13:return h.child!==m&&m!==null?xe("Suspense Fallback"):xe("Suspense");case 19:return xe("SuspenseList");case 0:case 15:return Be(h.type,!1);case 11:return Be(h.type.render,!1);case 1:return Be(h.type,!0);case 31:return xe("Activity");default:return""}}function st(h){try{var m="",b=null;do m+=Je(h,b),b=h,h=h.return;while(h);return m}catch(E){return` Error generating stack: `+E.message+` -`+E.stack}}var Le=Object.prototype.hasOwnProperty,St=e.unstable_scheduleCallback,Ve=e.unstable_cancelCallback,qe=e.unstable_shouldYield,Xe=e.unstable_requestPaint,It=e.unstable_now,Et=e.unstable_getCurrentPriorityLevel,be=e.unstable_ImmediatePriority,ke=e.unstable_UserBlockingPriority,Ye=e.unstable_NormalPriority,yt=e.unstable_LowPriority,xt=e.unstable_IdlePriority,Tr=e.log,er=e.unstable_setDisableYieldValue,qt=null,Ht=null;function Zr(h){if(typeof Tr=="function"&&er(h),Ht&&typeof Ht.setStrictMode=="function")try{Ht.setStrictMode(qt,h)}catch{}}var Gt=Math.clz32?Math.clz32:fn,ln=Math.log,Wn=Math.LN2;function fn(h){return h>>>=0,h===0?32:31-(ln(h)/Wn|0)|0}var oo=256,Yo=262144,jo=4194304;function ua(h){var m=h&42;if(m!==0)return m;switch(h&-h){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return h&261888;case 262144:case 524288:case 1048576:case 2097152:return h&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return h&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return h}}function Dl(h,m,b){var E=h.pendingLanes;if(E===0)return 0;var D=0,N=h.suspendedLanes,X=h.pingedLanes;h=h.warmLanes;var ne=E&134217727;return ne!==0?(E=ne&~N,E!==0?D=ua(E):(X&=ne,X!==0?D=ua(X):b||(b=ne&~h,b!==0&&(D=ua(b))))):(ne=E&~N,ne!==0?D=ua(ne):X!==0?D=ua(X):b||(b=E&~h,b!==0&&(D=ua(b)))),D===0?0:m!==0&&m!==D&&(m&N)===0&&(N=D&-D,b=m&-m,N>=b||N===32&&(b&4194048)!==0)?m:D}function Ao(h,m){return(h.pendingLanes&~(h.suspendedLanes&~h.pingedLanes)&m)===0}function xs(h,m){switch(h){case 1:case 2:case 4:case 8:case 64:return m+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return m+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function ws(){var h=jo;return jo<<=1,(jo&62914560)===0&&(jo=4194304),h}function Rc(h){for(var m=[],b=0;31>b;b++)m.push(h);return m}function Ml(h,m){h.pendingLanes|=m,m!==268435456&&(h.suspendedLanes=0,h.pingedLanes=0,h.warmLanes=0)}function lh(h,m,b,E,D,N){var X=h.pendingLanes;h.pendingLanes=b,h.suspendedLanes=0,h.pingedLanes=0,h.warmLanes=0,h.expiredLanes&=b,h.entangledLanes&=b,h.errorRecoveryDisabledLanes&=b,h.shellSuspendCounter=0;var ne=h.entanglements,se=h.expirationTimes,ge=h.hiddenUpdates;for(b=X&~b;0"u")return null;try{return h.activeElement||h.body}catch{return h.body}}var lu=/[\n"\\]/g;function J(h){return h.replace(lu,function(m){return"\\"+m.charCodeAt(0).toString(16)+" "})}function ee(h,m,b,E,D,N,X,ne){h.name="",X!=null&&typeof X!="function"&&typeof X!="symbol"&&typeof X!="boolean"?h.type=X:h.removeAttribute("type"),m!=null?X==="number"?(m===0&&h.value===""||h.value!=m)&&(h.value=""+Gr(m)):h.value!==""+Gr(m)&&(h.value=""+Gr(m)):X!=="submit"&&X!=="reset"||h.removeAttribute("value"),m!=null?ie(h,X,Gr(m)):b!=null?ie(h,X,Gr(b)):E!=null&&h.removeAttribute("value"),D==null&&N!=null&&(h.defaultChecked=!!N),D!=null&&(h.checked=D&&typeof D!="function"&&typeof D!="symbol"),ne!=null&&typeof ne!="function"&&typeof ne!="symbol"&&typeof ne!="boolean"?h.name=""+Gr(ne):h.removeAttribute("name")}function oe(h,m,b,E,D,N,X,ne){if(N!=null&&typeof N!="function"&&typeof N!="symbol"&&typeof N!="boolean"&&(h.type=N),m!=null||b!=null){if(!(N!=="submit"&&N!=="reset"||m!=null)){Ai(h);return}b=b!=null?""+Gr(b):"",m=m!=null?""+Gr(m):b,ne||m===h.value||(h.value=m),h.defaultValue=m}E=E??D,E=typeof E!="function"&&typeof E!="symbol"&&!!E,h.checked=ne?h.checked:!!E,h.defaultChecked=!!E,X!=null&&typeof X!="function"&&typeof X!="symbol"&&typeof X!="boolean"&&(h.name=X),Ai(h)}function ie(h,m,b){m==="number"&&Di(h.ownerDocument)===h||h.defaultValue===""+b||(h.defaultValue=""+b)}function le(h,m,b,E){if(h=h.options,m){m={};for(var D=0;D"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),OD=!1;if(Mc)try{var Tv={};Object.defineProperty(Tv,"passive",{get:function(){OD=!0}}),window.addEventListener("test",Tv,Tv),window.removeEventListener("test",Tv,Tv)}catch{OD=!1}var cu=null,LD=null,L5=null;function dhe(){if(L5)return L5;var h,m=LD,b=m.length,E,D="value"in cu?cu.value:cu.textContent,N=D.length;for(h=0;h=Dv),ghe=" ",yhe=!1;function vhe(h,m){switch(h){case"keyup":return Zbt.indexOf(m.keyCode)!==-1;case"keydown":return m.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function bhe(h){return h=h.detail,typeof h=="object"&&"data"in h?h.data:null}var xg=!1;function Qbt(h,m){switch(h){case"compositionend":return bhe(m);case"keypress":return m.which!==32?null:(yhe=!0,ghe);case"textInput":return h=m.data,h===ghe&&yhe?null:h;default:return null}}function Jbt(h,m){if(xg)return h==="compositionend"||!UD&&vhe(h,m)?(h=dhe(),L5=LD=cu=null,xg=!1,h):null;switch(h){case"paste":return null;case"keypress":if(!(m.ctrlKey||m.altKey||m.metaKey)||m.ctrlKey&&m.altKey){if(m.char&&1=m)return{node:b,offset:m-h};h=E}e:{for(;b;){if(b.nextSibling){b=b.nextSibling;break e}b=b.parentNode}b=void 0}b=$he(b)}}function Rhe(h,m){return h&&m?h===m?!0:h&&h.nodeType===3?!1:m&&m.nodeType===3?Rhe(h,m.parentNode):"contains"in h?h.contains(m):h.compareDocumentPosition?!!(h.compareDocumentPosition(m)&16):!1:!1}function The(h){h=h!=null&&h.ownerDocument!=null&&h.ownerDocument.defaultView!=null?h.ownerDocument.defaultView:window;for(var m=Di(h.document);m instanceof h.HTMLIFrameElement;){try{var b=typeof m.contentWindow.location.href=="string"}catch{b=!1}if(b)h=m.contentWindow;else break;m=Di(h.document)}return m}function YD(h){var m=h&&h.nodeName&&h.nodeName.toLowerCase();return m&&(m==="input"&&(h.type==="text"||h.type==="search"||h.type==="tel"||h.type==="url"||h.type==="password")||m==="textarea"||h.contentEditable==="true")}var lxt=Mc&&"documentMode"in document&&11>=document.documentMode,wg=null,XD=null,Bv=null,ZD=!1;function jhe(h,m,b){var E=b.window===b?b.document:b.nodeType===9?b:b.ownerDocument;ZD||wg==null||wg!==Di(E)||(E=wg,"selectionStart"in E&&YD(E)?E={start:E.selectionStart,end:E.selectionEnd}:(E=(E.ownerDocument&&E.ownerDocument.defaultView||window).getSelection(),E={anchorNode:E.anchorNode,anchorOffset:E.anchorOffset,focusNode:E.focusNode,focusOffset:E.focusOffset}),Bv&&Pv(Bv,E)||(Bv=E,E=D6(XD,"onSelect"),0>=X,D-=X,zs=1<<32-Gt(m)+D|b<Pt?(Xt=nt,nt=null):Xt=nt.sibling;var ar=ye(he,nt,me[Pt],Ce);if(ar===null){nt===null&&(nt=Xt);break}h&&nt&&ar.alternate===null&&m(he,nt),de=N(ar,de,Pt),or===null?ct=ar:or.sibling=ar,or=ar,nt=Xt}if(Pt===me.length)return b(he,nt),Zt&&Pc(he,Pt),ct;if(nt===null){for(;PtPt?(Xt=nt,nt=null):Xt=nt.sibling;var ju=ye(he,nt,ar.value,Ce);if(ju===null){nt===null&&(nt=Xt);break}h&&nt&&ju.alternate===null&&m(he,nt),de=N(ju,de,Pt),or===null?ct=ju:or.sibling=ju,or=ju,nt=Xt}if(ar.done)return b(he,nt),Zt&&Pc(he,Pt),ct;if(nt===null){for(;!ar.done;Pt++,ar=me.next())ar=ze(he,ar.value,Ce),ar!==null&&(de=N(ar,de,Pt),or===null?ct=ar:or.sibling=ar,or=ar);return Zt&&Pc(he,Pt),ct}for(nt=E(nt);!ar.done;Pt++,ar=me.next())ar=we(nt,he,Pt,ar.value,Ce),ar!==null&&(h&&ar.alternate!==null&&nt.delete(ar.key===null?Pt:ar.key),de=N(ar,de,Pt),or===null?ct=ar:or.sibling=ar,or=ar);return h&&nt.forEach(function($wt){return m(he,$wt)}),Zt&&Pc(he,Pt),ct}function _r(he,de,me,Ce){if(typeof me=="object"&&me!==null&&me.type===w&&me.key===null&&(me=me.props.children),typeof me=="object"&&me!==null){switch(me.$$typeof){case g:e:{for(var ct=me.key;de!==null;){if(de.key===ct){if(ct=me.type,ct===w){if(de.tag===7){b(he,de.sibling),Ce=D(de,me.props.children),Ce.return=he,he=Ce;break e}}else if(de.elementType===ct||typeof ct=="object"&&ct!==null&&ct.$$typeof===R&&wh(ct)===de.type){b(he,de.sibling),Ce=D(de,me.props),qv(Ce,me),Ce.return=he,he=Ce;break e}b(he,de);break}else m(he,de);de=de.sibling}me.type===w?(Ce=gh(me.props.children,he.mode,Ce,me.key),Ce.return=he,he=Ce):(Ce=Z5(me.type,me.key,me.props,null,he.mode,Ce),qv(Ce,me),Ce.return=he,he=Ce)}return X(he);case v:e:{for(ct=me.key;de!==null;){if(de.key===ct)if(de.tag===4&&de.stateNode.containerInfo===me.containerInfo&&de.stateNode.implementation===me.implementation){b(he,de.sibling),Ce=D(de,me.children||[]),Ce.return=he,he=Ce;break e}else{b(he,de);break}else m(he,de);de=de.sibling}Ce=nM(me,he.mode,Ce),Ce.return=he,he=Ce}return X(he);case R:return me=wh(me),_r(he,de,me,Ce)}if(V(me))return et(he,de,me,Ce);if(L(me)){if(ct=L(me),typeof ct!="function")throw Error(o(150));return me=ct.call(me),bt(he,de,me,Ce)}if(typeof me.then=="function")return _r(he,de,n6(me),Ce);if(me.$$typeof===_)return _r(he,de,J5(he,me),Ce);o6(he,me)}return typeof me=="string"&&me!==""||typeof me=="number"||typeof me=="bigint"?(me=""+me,de!==null&&de.tag===6?(b(he,de.sibling),Ce=D(de,me),Ce.return=he,he=Ce):(b(he,de),Ce=rM(me,he.mode,Ce),Ce.return=he,he=Ce),X(he)):b(he,de)}return function(he,de,me,Ce){try{Vv=0;var ct=_r(he,de,me,Ce);return Ag=null,ct}catch(nt){if(nt===jg||nt===t6)throw nt;var or=Ha(29,nt,null,he.mode);return or.lanes=Ce,or.return=he,or}}}var _h=efe(!0),tfe=efe(!1),fu=!1;function mM(h){h.updateQueue={baseState:h.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function gM(h,m){h=h.updateQueue,m.updateQueue===h&&(m.updateQueue={baseState:h.baseState,firstBaseUpdate:h.firstBaseUpdate,lastBaseUpdate:h.lastBaseUpdate,shared:h.shared,callbacks:null})}function mu(h){return{lane:h,tag:0,payload:null,callback:null,next:null}}function gu(h,m,b){var E=h.updateQueue;if(E===null)return null;if(E=E.shared,(cr&2)!==0){var D=E.pending;return D===null?m.next=m:(m.next=D.next,D.next=m),E.pending=m,m=X5(h),Ihe(h,null,b),m}return Y5(h,E,m,b),X5(h)}function Hv(h,m,b){if(m=m.updateQueue,m!==null&&(m=m.shared,(b&4194048)!==0)){var E=m.lanes;E&=h.pendingLanes,b|=E,m.lanes=b,tu(h,b)}}function yM(h,m){var b=h.updateQueue,E=h.alternate;if(E!==null&&(E=E.updateQueue,b===E)){var D=null,N=null;if(b=b.firstBaseUpdate,b!==null){do{var X={lane:b.lane,tag:b.tag,payload:b.payload,callback:null,next:null};N===null?D=N=X:N=N.next=X,b=b.next}while(b!==null);N===null?D=N=m:N=N.next=m}else D=N=m;b={baseState:E.baseState,firstBaseUpdate:D,lastBaseUpdate:N,shared:E.shared,callbacks:E.callbacks},h.updateQueue=b;return}h=b.lastBaseUpdate,h===null?b.firstBaseUpdate=m:h.next=m,b.lastBaseUpdate=m}var vM=!1;function Uv(){if(vM){var h=Tg;if(h!==null)throw h}}function Wv(h,m,b,E){vM=!1;var D=h.updateQueue;fu=!1;var N=D.firstBaseUpdate,X=D.lastBaseUpdate,ne=D.shared.pending;if(ne!==null){D.shared.pending=null;var se=ne,ge=se.next;se.next=null,X===null?N=ge:X.next=ge,X=se;var Ee=h.alternate;Ee!==null&&(Ee=Ee.updateQueue,ne=Ee.lastBaseUpdate,ne!==X&&(ne===null?Ee.firstBaseUpdate=ge:ne.next=ge,Ee.lastBaseUpdate=se))}if(N!==null){var ze=D.baseState;X=0,Ee=ge=se=null,ne=N;do{var ye=ne.lane&-536870913,we=ye!==ne.lane;if(we?(Yt&ye)===ye:(E&ye)===ye){ye!==0&&ye===Rg&&(vM=!0),Ee!==null&&(Ee=Ee.next={lane:0,tag:ne.tag,payload:ne.payload,callback:null,next:null});e:{var et=h,bt=ne;ye=m;var _r=b;switch(bt.tag){case 1:if(et=bt.payload,typeof et=="function"){ze=et.call(_r,ze,ye);break e}ze=et;break e;case 3:et.flags=et.flags&-65537|128;case 0:if(et=bt.payload,ye=typeof et=="function"?et.call(_r,ze,ye):et,ye==null)break e;ze=p({},ze,ye);break e;case 2:fu=!0}}ye=ne.callback,ye!==null&&(h.flags|=64,we&&(h.flags|=8192),we=D.callbacks,we===null?D.callbacks=[ye]:we.push(ye))}else we={lane:ye,tag:ne.tag,payload:ne.payload,callback:ne.callback,next:null},Ee===null?(ge=Ee=we,se=ze):Ee=Ee.next=we,X|=ye;if(ne=ne.next,ne===null){if(ne=D.shared.pending,ne===null)break;we=ne,ne=we.next,we.next=null,D.lastBaseUpdate=we,D.shared.pending=null}}while(!0);Ee===null&&(se=ze),D.baseState=se,D.firstBaseUpdate=ge,D.lastBaseUpdate=Ee,N===null&&(D.shared.lanes=0),wu|=X,h.lanes=X,h.memoizedState=ze}}function rfe(h,m){if(typeof h!="function")throw Error(o(191,h));h.call(m)}function nfe(h,m){var b=h.callbacks;if(b!==null)for(h.callbacks=null,h=0;hN?N:8;var X=B.T,ne={};B.T=ne,BM(h,!1,m,b);try{var se=D(),ge=B.S;if(ge!==null&&ge(ne,se),se!==null&&typeof se=="object"&&typeof se.then=="function"){var Ee=gxt(se,E);Xv(h,m,Ee,Xa(h))}else Xv(h,m,E,Xa(h))}catch(ze){Xv(h,m,{then:function(){},status:"rejected",reason:ze},Xa())}finally{F.p=N,X!==null&&ne.types!==null&&(X.types=ne.types),B.T=X}}function kxt(){}function NM(h,m,b,E){if(h.tag!==5)throw Error(o(476));var D=Nfe(h).queue;Mfe(h,D,m,q,b===null?kxt:function(){return Pfe(h),b(E)})}function Nfe(h){var m=h.memoizedState;if(m!==null)return m;m={memoizedState:q,baseState:q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lc,lastRenderedState:q},next:null};var b={};return m.next={memoizedState:b,baseState:b,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lc,lastRenderedState:b},next:null},h.memoizedState=m,h=h.alternate,h!==null&&(h.memoizedState=m),m}function Pfe(h){var m=Nfe(h);m.next===null&&(m=h.alternate.memoizedState),Xv(h,m.next.queue,{},Xa())}function PM(){return mo(pb)}function Bfe(){return gn().memoizedState}function Ife(){return gn().memoizedState}function _xt(h){for(var m=h.return;m!==null;){switch(m.tag){case 24:case 3:var b=Xa();h=mu(b);var E=gu(m,h,b);E!==null&&(va(E,m,b),Hv(E,m,b)),m={cache:uM()},h.payload=m;return}m=m.return}}function Sxt(h,m,b){var E=Xa();b={lane:E,revertLane:0,gesture:null,action:b,hasEagerState:!1,eagerState:null,next:null},f6(h)?Lfe(m,b):(b=eM(h,m,b,E),b!==null&&(va(b,h,E),Ffe(b,m,E)))}function Ofe(h,m,b){var E=Xa();Xv(h,m,b,E)}function Xv(h,m,b,E){var D={lane:E,revertLane:0,gesture:null,action:b,hasEagerState:!1,eagerState:null,next:null};if(f6(h))Lfe(m,D);else{var N=h.alternate;if(h.lanes===0&&(N===null||N.lanes===0)&&(N=m.lastRenderedReducer,N!==null))try{var X=m.lastRenderedState,ne=N(X,b);if(D.hasEagerState=!0,D.eagerState=ne,qa(ne,X))return Y5(h,m,D,0),Er===null&&G5(),!1}catch{}if(b=eM(h,m,D,E),b!==null)return va(b,h,E),Ffe(b,m,E),!0}return!1}function BM(h,m,b,E){if(E={lane:2,revertLane:mN(),gesture:null,action:E,hasEagerState:!1,eagerState:null,next:null},f6(h)){if(m)throw Error(o(479))}else m=eM(h,b,E,2),m!==null&&va(m,h,2)}function f6(h){var m=h.alternate;return h===Mt||m!==null&&m===Mt}function Lfe(h,m){Mg=l6=!0;var b=h.pending;b===null?m.next=m:(m.next=b.next,b.next=m),h.pending=m}function Ffe(h,m,b){if((b&4194048)!==0){var E=m.lanes;E&=h.pendingLanes,b|=E,m.lanes=b,tu(h,b)}}var Zv={readContext:mo,use:d6,useCallback:sn,useContext:sn,useEffect:sn,useImperativeHandle:sn,useLayoutEffect:sn,useInsertionEffect:sn,useMemo:sn,useReducer:sn,useRef:sn,useState:sn,useDebugValue:sn,useDeferredValue:sn,useTransition:sn,useSyncExternalStore:sn,useId:sn,useHostTransitionStatus:sn,useFormState:sn,useActionState:sn,useOptimistic:sn,useMemoCache:sn,useCacheRefresh:sn};Zv.useEffectEvent=sn;var Vfe={readContext:mo,use:d6,useCallback:function(h,m){return Ko().memoizedState=[h,m===void 0?null:m],h},useContext:mo,useEffect:Efe,useImperativeHandle:function(h,m,b){b=b!=null?b.concat([h]):null,p6(4194308,4,Rfe.bind(null,m,h),b)},useLayoutEffect:function(h,m){return p6(4194308,4,h,m)},useInsertionEffect:function(h,m){p6(4,2,h,m)},useMemo:function(h,m){var b=Ko();m=m===void 0?null:m;var E=h();if(Sh){Zr(!0);try{h()}finally{Zr(!1)}}return b.memoizedState=[E,m],E},useReducer:function(h,m,b){var E=Ko();if(b!==void 0){var D=b(m);if(Sh){Zr(!0);try{b(m)}finally{Zr(!1)}}}else D=m;return E.memoizedState=E.baseState=D,h={pending:null,lanes:0,dispatch:null,lastRenderedReducer:h,lastRenderedState:D},E.queue=h,h=h.dispatch=Sxt.bind(null,Mt,h),[E.memoizedState,h]},useRef:function(h){var m=Ko();return h={current:h},m.memoizedState=h},useState:function(h){h=TM(h);var m=h.queue,b=Ofe.bind(null,Mt,m);return m.dispatch=b,[h.memoizedState,b]},useDebugValue:DM,useDeferredValue:function(h,m){var b=Ko();return MM(b,h,m)},useTransition:function(){var h=TM(!1);return h=Mfe.bind(null,Mt,h.queue,!0,!1),Ko().memoizedState=h,[!1,h]},useSyncExternalStore:function(h,m,b){var E=Mt,D=Ko();if(Zt){if(b===void 0)throw Error(o(407));b=b()}else{if(b=m(),Er===null)throw Error(o(349));(Yt&127)!==0||cfe(E,m,b)}D.memoizedState=b;var N={value:b,getSnapshot:m};return D.queue=N,Efe(ufe.bind(null,E,N,h),[h]),E.flags|=2048,Pg(9,{destroy:void 0},dfe.bind(null,E,N,b,m),null),b},useId:function(){var h=Ko(),m=Er.identifierPrefix;if(Zt){var b=Rs,E=zs;b=(E&~(1<<32-Gt(E)-1)).toString(32)+b,m="_"+m+"R_"+b,b=s6++,0<\/script>",N=N.removeChild(N.firstChild);break;case"select":N=typeof E.is=="string"?X.createElement("select",{is:E.is}):X.createElement("select"),E.multiple?N.multiple=!0:E.size&&(N.size=E.size);break;default:N=typeof E.is=="string"?X.createElement(D,{is:E.is}):X.createElement(D)}}N[Nr]=m,N[Mn]=E;e:for(X=m.child;X!==null;){if(X.tag===5||X.tag===6)N.appendChild(X.stateNode);else if(X.tag!==4&&X.tag!==27&&X.child!==null){X.child.return=X,X=X.child;continue}if(X===m)break e;for(;X.sibling===null;){if(X.return===null||X.return===m)break e;X=X.return}X.sibling.return=X.return,X=X.sibling}m.stateNode=N;e:switch(yo(N,D,E),D){case"button":case"input":case"select":case"textarea":E=!!E.autoFocus;break e;case"img":E=!0;break e;default:E=!1}E&&Vc(m)}}return Br(m),KM(m,m.type,h===null?null:h.memoizedProps,m.pendingProps,b),null;case 6:if(h&&m.stateNode!=null)h.memoizedProps!==E&&Vc(m);else{if(typeof E!="string"&&m.stateNode===null)throw Error(o(166));if(h=Q.current,$g(m)){if(h=m.stateNode,b=m.memoizedProps,E=null,D=fo,D!==null)switch(D.tag){case 27:case 5:E=D.memoizedProps}h[Nr]=m,h=!!(h.nodeValue===b||E!==null&&E.suppressHydrationWarning===!0||lge(h.nodeValue,b)),h||pu(m,!0)}else h=M6(h).createTextNode(E),h[Nr]=m,m.stateNode=h}return Br(m),null;case 31:if(b=m.memoizedState,h===null||h.memoizedState!==null){if(E=$g(m),b!==null){if(h===null){if(!E)throw Error(o(318));if(h=m.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(o(557));h[Nr]=m}else yh(),(m.flags&128)===0&&(m.memoizedState=null),m.flags|=4;Br(m),h=!1}else b=lM(),h!==null&&h.memoizedState!==null&&(h.memoizedState.hydrationErrors=b),h=!0;if(!h)return m.flags&256?(Wa(m),m):(Wa(m),null);if((m.flags&128)!==0)throw Error(o(558))}return Br(m),null;case 13:if(E=m.memoizedState,h===null||h.memoizedState!==null&&h.memoizedState.dehydrated!==null){if(D=$g(m),E!==null&&E.dehydrated!==null){if(h===null){if(!D)throw Error(o(318));if(D=m.memoizedState,D=D!==null?D.dehydrated:null,!D)throw Error(o(317));D[Nr]=m}else yh(),(m.flags&128)===0&&(m.memoizedState=null),m.flags|=4;Br(m),D=!1}else D=lM(),h!==null&&h.memoizedState!==null&&(h.memoizedState.hydrationErrors=D),D=!0;if(!D)return m.flags&256?(Wa(m),m):(Wa(m),null)}return Wa(m),(m.flags&128)!==0?(m.lanes=b,m):(b=E!==null,h=h!==null&&h.memoizedState!==null,b&&(E=m.child,D=null,E.alternate!==null&&E.alternate.memoizedState!==null&&E.alternate.memoizedState.cachePool!==null&&(D=E.alternate.memoizedState.cachePool.pool),N=null,E.memoizedState!==null&&E.memoizedState.cachePool!==null&&(N=E.memoizedState.cachePool.pool),N!==D&&(E.flags|=2048)),b!==h&&b&&(m.child.flags|=8192),b6(m,m.updateQueue),Br(m),null);case 4:return re(),h===null&&bN(m.stateNode.containerInfo),Br(m),null;case 10:return Ic(m.type),Br(m),null;case 19:if(Z(mn),E=m.memoizedState,E===null)return Br(m),null;if(D=(m.flags&128)!==0,N=E.rendering,N===null)if(D)Qv(E,!1);else{if(cn!==0||h!==null&&(h.flags&128)!==0)for(h=m.child;h!==null;){if(N=i6(h),N!==null){for(m.flags|=128,Qv(E,!1),h=N.updateQueue,m.updateQueue=h,b6(m,h),m.subtreeFlags=0,h=b,b=m.child;b!==null;)Ohe(b,h),b=b.sibling;return O(mn,mn.current&1|2),Zt&&Pc(m,E.treeForkCount),m.child}h=h.sibling}E.tail!==null&&It()>S6&&(m.flags|=128,D=!0,Qv(E,!1),m.lanes=4194304)}else{if(!D)if(h=i6(N),h!==null){if(m.flags|=128,D=!0,h=h.updateQueue,m.updateQueue=h,b6(m,h),Qv(E,!0),E.tail===null&&E.tailMode==="hidden"&&!N.alternate&&!Zt)return Br(m),null}else 2*It()-E.renderingStartTime>S6&&b!==536870912&&(m.flags|=128,D=!0,Qv(E,!1),m.lanes=4194304);E.isBackwards?(N.sibling=m.child,m.child=N):(h=E.last,h!==null?h.sibling=N:m.child=N,E.last=N)}return E.tail!==null?(h=E.tail,E.rendering=h,E.tail=h.sibling,E.renderingStartTime=It(),h.sibling=null,b=mn.current,O(mn,D?b&1|2:b&1),Zt&&Pc(m,E.treeForkCount),h):(Br(m),null);case 22:case 23:return Wa(m),xM(),E=m.memoizedState!==null,h!==null?h.memoizedState!==null!==E&&(m.flags|=8192):E&&(m.flags|=8192),E?(b&536870912)!==0&&(m.flags&128)===0&&(Br(m),m.subtreeFlags&6&&(m.flags|=8192)):Br(m),b=m.updateQueue,b!==null&&b6(m,b.retryQueue),b=null,h!==null&&h.memoizedState!==null&&h.memoizedState.cachePool!==null&&(b=h.memoizedState.cachePool.pool),E=null,m.memoizedState!==null&&m.memoizedState.cachePool!==null&&(E=m.memoizedState.cachePool.pool),E!==b&&(m.flags|=2048),h!==null&&Z(xh),null;case 24:return b=null,h!==null&&(b=h.memoizedState.cache),m.memoizedState.cache!==b&&(m.flags|=2048),Ic(Nn),Br(m),null;case 25:return null;case 30:return null}throw Error(o(156,m.tag))}function Rxt(h,m){switch(aM(m),m.tag){case 1:return h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 3:return Ic(Nn),re(),h=m.flags,(h&65536)!==0&&(h&128)===0?(m.flags=h&-65537|128,m):null;case 26:case 27:case 5:return _e(m),null;case 31:if(m.memoizedState!==null){if(Wa(m),m.alternate===null)throw Error(o(340));yh()}return h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 13:if(Wa(m),h=m.memoizedState,h!==null&&h.dehydrated!==null){if(m.alternate===null)throw Error(o(340));yh()}return h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 19:return Z(mn),null;case 4:return re(),null;case 10:return Ic(m.type),null;case 22:case 23:return Wa(m),xM(),h!==null&&Z(xh),h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 24:return Ic(Nn),null;case 25:return null;default:return null}}function pme(h,m){switch(aM(m),m.tag){case 3:Ic(Nn),re();break;case 26:case 27:case 5:_e(m);break;case 4:re();break;case 31:m.memoizedState!==null&&Wa(m);break;case 13:Wa(m);break;case 19:Z(mn);break;case 10:Ic(m.type);break;case 22:case 23:Wa(m),xM(),h!==null&&Z(xh);break;case 24:Ic(Nn)}}function Jv(h,m){try{var b=m.updateQueue,E=b!==null?b.lastEffect:null;if(E!==null){var D=E.next;b=D;do{if((b.tag&h)===h){E=void 0;var N=b.create,X=b.inst;E=N(),X.destroy=E}b=b.next}while(b!==D)}}catch(ne){gr(m,m.return,ne)}}function bu(h,m,b){try{var E=m.updateQueue,D=E!==null?E.lastEffect:null;if(D!==null){var N=D.next;E=N;do{if((E.tag&h)===h){var X=E.inst,ne=X.destroy;if(ne!==void 0){X.destroy=void 0,D=m;var se=b,ge=ne;try{ge()}catch(Ee){gr(D,se,Ee)}}}E=E.next}while(E!==N)}}catch(Ee){gr(m,m.return,Ee)}}function hme(h){var m=h.updateQueue;if(m!==null){var b=h.stateNode;try{nfe(m,b)}catch(E){gr(h,h.return,E)}}}function fme(h,m,b){b.props=Eh(h.type,h.memoizedProps),b.state=h.memoizedState;try{b.componentWillUnmount()}catch(E){gr(h,m,E)}}function eb(h,m){try{var b=h.ref;if(b!==null){switch(h.tag){case 26:case 27:case 5:var E=h.stateNode;break;case 30:E=h.stateNode;break;default:E=h.stateNode}typeof b=="function"?h.refCleanup=b(E):b.current=E}}catch(D){gr(h,m,D)}}function Ts(h,m){var b=h.ref,E=h.refCleanup;if(b!==null)if(typeof E=="function")try{E()}catch(D){gr(h,m,D)}finally{h.refCleanup=null,h=h.alternate,h!=null&&(h.refCleanup=null)}else if(typeof b=="function")try{b(null)}catch(D){gr(h,m,D)}else b.current=null}function mme(h){var m=h.type,b=h.memoizedProps,E=h.stateNode;try{e:switch(m){case"button":case"input":case"select":case"textarea":b.autoFocus&&E.focus();break e;case"img":b.src?E.src=b.src:b.srcSet&&(E.srcset=b.srcSet)}}catch(D){gr(h,h.return,D)}}function QM(h,m,b){try{var E=h.stateNode;Kxt(E,h.type,b,m),E[Mn]=m}catch(D){gr(h,h.return,D)}}function gme(h){return h.tag===5||h.tag===3||h.tag===26||h.tag===27&&Cu(h.type)||h.tag===4}function JM(h){e:for(;;){for(;h.sibling===null;){if(h.return===null||gme(h.return))return null;h=h.return}for(h.sibling.return=h.return,h=h.sibling;h.tag!==5&&h.tag!==6&&h.tag!==18;){if(h.tag===27&&Cu(h.type)||h.flags&2||h.child===null||h.tag===4)continue e;h.child.return=h,h=h.child}if(!(h.flags&2))return h.stateNode}}function eN(h,m,b){var E=h.tag;if(E===5||E===6)h=h.stateNode,m?(b.nodeType===9?b.body:b.nodeName==="HTML"?b.ownerDocument.body:b).insertBefore(h,m):(m=b.nodeType===9?b.body:b.nodeName==="HTML"?b.ownerDocument.body:b,m.appendChild(h),b=b._reactRootContainer,b!=null||m.onclick!==null||(m.onclick=Lt));else if(E!==4&&(E===27&&Cu(h.type)&&(b=h.stateNode,m=null),h=h.child,h!==null))for(eN(h,m,b),h=h.sibling;h!==null;)eN(h,m,b),h=h.sibling}function x6(h,m,b){var E=h.tag;if(E===5||E===6)h=h.stateNode,m?b.insertBefore(h,m):b.appendChild(h);else if(E!==4&&(E===27&&Cu(h.type)&&(b=h.stateNode),h=h.child,h!==null))for(x6(h,m,b),h=h.sibling;h!==null;)x6(h,m,b),h=h.sibling}function yme(h){var m=h.stateNode,b=h.memoizedProps;try{for(var E=h.type,D=m.attributes;D.length;)m.removeAttributeNode(D[0]);yo(m,E,b),m[Nr]=h,m[Mn]=b}catch(N){gr(h,h.return,N)}}var qc=!1,In=!1,tN=!1,vme=typeof WeakSet=="function"?WeakSet:Set,ao=null;function Txt(h,m){if(h=h.containerInfo,kN=F6,h=The(h),YD(h)){if("selectionStart"in h)var b={start:h.selectionStart,end:h.selectionEnd};else e:{b=(b=h.ownerDocument)&&b.defaultView||window;var E=b.getSelection&&b.getSelection();if(E&&E.rangeCount!==0){b=E.anchorNode;var D=E.anchorOffset,N=E.focusNode;E=E.focusOffset;try{b.nodeType,N.nodeType}catch{b=null;break e}var X=0,ne=-1,se=-1,ge=0,Ee=0,ze=h,ye=null;t:for(;;){for(var we;ze!==b||D!==0&&ze.nodeType!==3||(ne=X+D),ze!==N||E!==0&&ze.nodeType!==3||(se=X+E),ze.nodeType===3&&(X+=ze.nodeValue.length),(we=ze.firstChild)!==null;)ye=ze,ze=we;for(;;){if(ze===h)break t;if(ye===b&&++ge===D&&(ne=X),ye===N&&++Ee===E&&(se=X),(we=ze.nextSibling)!==null)break;ze=ye,ye=ze.parentNode}ze=we}b=ne===-1||se===-1?null:{start:ne,end:se}}else b=null}b=b||{start:0,end:0}}else b=null;for(_N={focusedElem:h,selectionRange:b},F6=!1,ao=m;ao!==null;)if(m=ao,h=m.child,(m.subtreeFlags&1028)!==0&&h!==null)h.return=m,ao=h;else for(;ao!==null;){switch(m=ao,N=m.alternate,h=m.flags,m.tag){case 0:if((h&4)!==0&&(h=m.updateQueue,h=h!==null?h.events:null,h!==null))for(b=0;b title"))),yo(N,E,b),N[Nr]=h,Wr(N),E=N;break e;case"link":var X=Sge("link","href",D).get(E+(b.href||""));if(X){for(var ne=0;ne_r&&(X=_r,_r=bt,bt=X);var he=zhe(ne,bt),de=zhe(ne,_r);if(he&&de&&(we.rangeCount!==1||we.anchorNode!==he.node||we.anchorOffset!==he.offset||we.focusNode!==de.node||we.focusOffset!==de.offset)){var me=ze.createRange();me.setStart(he.node,he.offset),we.removeAllRanges(),bt>_r?(we.addRange(me),we.extend(de.node,de.offset)):(me.setEnd(de.node,de.offset),we.addRange(me))}}}}for(ze=[],we=ne;we=we.parentNode;)we.nodeType===1&&ze.push({element:we,left:we.scrollLeft,top:we.scrollTop});for(typeof ne.focus=="function"&&ne.focus(),ne=0;neb?32:b,B.T=null,b=sN,sN=null;var N=_u,X=Yc;if(Gn=0,Fg=_u=null,Yc=0,(cr&6)!==0)throw Error(o(331));var ne=cr;if(cr|=4,Rme(N.current),Cme(N,N.current,X,b),cr=ne,ib(0,!1),Ht&&typeof Ht.onPostCommitFiberRoot=="function")try{Ht.onPostCommitFiberRoot(qt,N)}catch{}return!0}finally{F.p=D,B.T=E,Gme(h,m)}}function Xme(h,m,b){m=Ni(b,m),m=FM(h.stateNode,m,2),h=gu(h,m,2),h!==null&&(Ml(h,2),js(h))}function gr(h,m,b){if(h.tag===3)Xme(h,h,b);else for(;m!==null;){if(m.tag===3){Xme(m,h,b);break}else if(m.tag===1){var E=m.stateNode;if(typeof m.type.getDerivedStateFromError=="function"||typeof E.componentDidCatch=="function"&&(ku===null||!ku.has(E))){h=Ni(b,h),b=Zfe(2),E=gu(m,b,2),E!==null&&(Kfe(b,E,m,h),Ml(E,2),js(E));break}}m=m.return}}function pN(h,m,b){var E=h.pingCache;if(E===null){E=h.pingCache=new Dxt;var D=new Set;E.set(m,D)}else D=E.get(m),D===void 0&&(D=new Set,E.set(m,D));D.has(b)||(oN=!0,D.add(b),h=Ixt.bind(null,h,m,b),m.then(h,h))}function Ixt(h,m,b){var E=h.pingCache;E!==null&&E.delete(m),h.pingedLanes|=h.suspendedLanes&b,h.warmLanes&=~b,Er===h&&(Yt&b)===b&&(cn===4||cn===3&&(Yt&62914560)===Yt&&300>It()-_6?(cr&2)===0&&Vg(h,0):aN|=b,Lg===Yt&&(Lg=0)),js(h)}function Zme(h,m){m===0&&(m=ws()),h=mh(h,m),h!==null&&(Ml(h,m),js(h))}function Oxt(h){var m=h.memoizedState,b=0;m!==null&&(b=m.retryLane),Zme(h,b)}function Lxt(h,m){var b=0;switch(h.tag){case 31:case 13:var E=h.stateNode,D=h.memoizedState;D!==null&&(b=D.retryLane);break;case 19:E=h.stateNode;break;case 22:E=h.stateNode._retryCache;break;default:throw Error(o(314))}E!==null&&E.delete(m),Zme(h,b)}function Fxt(h,m){return St(h,m)}var T6=null,Hg=null,hN=!1,j6=!1,fN=!1,Eu=0;function js(h){h!==Hg&&h.next===null&&(Hg===null?T6=Hg=h:Hg=Hg.next=h),j6=!0,hN||(hN=!0,qxt())}function ib(h,m){if(!fN&&j6){fN=!0;do for(var b=!1,E=T6;E!==null;){if(h!==0){var D=E.pendingLanes;if(D===0)var N=0;else{var X=E.suspendedLanes,ne=E.pingedLanes;N=(1<<31-Gt(42|h)+1)-1,N&=D&~(X&~ne),N=N&201326741?N&201326741|1:N?N|2:0}N!==0&&(b=!0,ege(E,N))}else N=Yt,N=Dl(E,E===Er?N:0,E.cancelPendingCommit!==null||E.timeoutHandle!==-1),(N&3)===0||Ao(E,N)||(b=!0,ege(E,N));E=E.next}while(b);fN=!1}}function Vxt(){Kme()}function Kme(){j6=hN=!1;var h=0;Eu!==0&&Jxt()&&(h=Eu);for(var m=It(),b=null,E=T6;E!==null;){var D=E.next,N=Qme(E,m);N===0?(E.next=null,b===null?T6=D:b.next=D,D===null&&(Hg=b)):(b=E,(h!==0||(N&3)!==0)&&(j6=!0)),E=D}Gn!==0&&Gn!==5||ib(h),Eu!==0&&(Eu=0)}function Qme(h,m){for(var b=h.suspendedLanes,E=h.pingedLanes,D=h.expirationTimes,N=h.pendingLanes&-62914561;0ne)break;var Ee=se.transferSize,ze=se.initiatorType;Ee&&sge(ze)&&(se=se.responseEnd,X+=Ee*(se"u"?null:document;function xge(h,m,b){var E=Ug;if(E&&typeof m=="string"&&m){var D=J(m);D='link[rel="'+h+'"][href="'+D+'"]',typeof b=="string"&&(D+='[crossorigin="'+b+'"]'),bge.has(D)||(bge.add(D),h={rel:h,crossOrigin:b,href:m},E.querySelector(D)===null&&(m=E.createElement("link"),yo(m,"link",h),Wr(m),E.head.appendChild(m)))}}function swt(h){Xc.D(h),xge("dns-prefetch",h,null)}function cwt(h,m){Xc.C(h,m),xge("preconnect",h,m)}function dwt(h,m,b){Xc.L(h,m,b);var E=Ug;if(E&&h&&m){var D='link[rel="preload"][as="'+J(m)+'"]';m==="image"&&b&&b.imageSrcSet?(D+='[imagesrcset="'+J(b.imageSrcSet)+'"]',typeof b.imageSizes=="string"&&(D+='[imagesizes="'+J(b.imageSizes)+'"]')):D+='[href="'+J(h)+'"]';var N=D;switch(m){case"style":N=Wg(h);break;case"script":N=Gg(h)}Fi.has(N)||(h=p({rel:"preload",href:m==="image"&&b&&b.imageSrcSet?void 0:h,as:m},b),Fi.set(N,h),E.querySelector(D)!==null||m==="style"&&E.querySelector(db(N))||m==="script"&&E.querySelector(ub(N))||(m=E.createElement("link"),yo(m,"link",h),Wr(m),E.head.appendChild(m)))}}function uwt(h,m){Xc.m(h,m);var b=Ug;if(b&&h){var E=m&&typeof m.as=="string"?m.as:"script",D='link[rel="modulepreload"][as="'+J(E)+'"][href="'+J(h)+'"]',N=D;switch(E){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":N=Gg(h)}if(!Fi.has(N)&&(h=p({rel:"modulepreload",href:h},m),Fi.set(N,h),b.querySelector(D)===null)){switch(E){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(b.querySelector(ub(N)))return}E=b.createElement("link"),yo(E,"link",h),Wr(E),b.head.appendChild(E)}}}function pwt(h,m,b){Xc.S(h,m,b);var E=Ug;if(E&&h){var D=ho(E).hoistableStyles,N=Wg(h);m=m||"default";var X=D.get(N);if(!X){var ne={loading:0,preload:null};if(X=E.querySelector(db(N)))ne.loading=5;else{h=p({rel:"stylesheet",href:h,"data-precedence":m},b),(b=Fi.get(N))&&TN(h,b);var se=X=E.createElement("link");Wr(se),yo(se,"link",h),se._p=new Promise(function(ge,Ee){se.onload=ge,se.onerror=Ee}),se.addEventListener("load",function(){ne.loading|=1}),se.addEventListener("error",function(){ne.loading|=2}),ne.loading|=4,P6(X,m,E)}X={type:"stylesheet",instance:X,count:1,state:ne},D.set(N,X)}}}function hwt(h,m){Xc.X(h,m);var b=Ug;if(b&&h){var E=ho(b).hoistableScripts,D=Gg(h),N=E.get(D);N||(N=b.querySelector(ub(D)),N||(h=p({src:h,async:!0},m),(m=Fi.get(D))&&jN(h,m),N=b.createElement("script"),Wr(N),yo(N,"link",h),b.head.appendChild(N)),N={type:"script",instance:N,count:1,state:null},E.set(D,N))}}function fwt(h,m){Xc.M(h,m);var b=Ug;if(b&&h){var E=ho(b).hoistableScripts,D=Gg(h),N=E.get(D);N||(N=b.querySelector(ub(D)),N||(h=p({src:h,async:!0,type:"module"},m),(m=Fi.get(D))&&jN(h,m),N=b.createElement("script"),Wr(N),yo(N,"link",h),b.head.appendChild(N)),N={type:"script",instance:N,count:1,state:null},E.set(D,N))}}function wge(h,m,b,E){var D=(D=Q.current)?N6(D):null;if(!D)throw Error(o(446));switch(h){case"meta":case"title":return null;case"style":return typeof b.precedence=="string"&&typeof b.href=="string"?(m=Wg(b.href),b=ho(D).hoistableStyles,E=b.get(m),E||(E={type:"style",instance:null,count:0,state:null},b.set(m,E)),E):{type:"void",instance:null,count:0,state:null};case"link":if(b.rel==="stylesheet"&&typeof b.href=="string"&&typeof b.precedence=="string"){h=Wg(b.href);var N=ho(D).hoistableStyles,X=N.get(h);if(X||(D=D.ownerDocument||D,X={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},N.set(h,X),(N=D.querySelector(db(h)))&&!N._p&&(X.instance=N,X.state.loading=5),Fi.has(h)||(b={rel:"preload",as:"style",href:b.href,crossOrigin:b.crossOrigin,integrity:b.integrity,media:b.media,hrefLang:b.hrefLang,referrerPolicy:b.referrerPolicy},Fi.set(h,b),N||mwt(D,h,b,X.state))),m&&E===null)throw Error(o(528,""));return X}if(m&&E!==null)throw Error(o(529,""));return null;case"script":return m=b.async,b=b.src,typeof b=="string"&&m&&typeof m!="function"&&typeof m!="symbol"?(m=Gg(b),b=ho(D).hoistableScripts,E=b.get(m),E||(E={type:"script",instance:null,count:0,state:null},b.set(m,E)),E):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,h))}}function Wg(h){return'href="'+J(h)+'"'}function db(h){return'link[rel="stylesheet"]['+h+"]"}function kge(h){return p({},h,{"data-precedence":h.precedence,precedence:null})}function mwt(h,m,b,E){h.querySelector('link[rel="preload"][as="style"]['+m+"]")?E.loading=1:(m=h.createElement("link"),E.preload=m,m.addEventListener("load",function(){return E.loading|=1}),m.addEventListener("error",function(){return E.loading|=2}),yo(m,"link",b),Wr(m),h.head.appendChild(m))}function Gg(h){return'[src="'+J(h)+'"]'}function ub(h){return"script[async]"+h}function _ge(h,m,b){if(m.count++,m.instance===null)switch(m.type){case"style":var E=h.querySelector('style[data-href~="'+J(b.href)+'"]');if(E)return m.instance=E,Wr(E),E;var D=p({},b,{"data-href":b.href,"data-precedence":b.precedence,href:null,precedence:null});return E=(h.ownerDocument||h).createElement("style"),Wr(E),yo(E,"style",D),P6(E,b.precedence,h),m.instance=E;case"stylesheet":D=Wg(b.href);var N=h.querySelector(db(D));if(N)return m.state.loading|=4,m.instance=N,Wr(N),N;E=kge(b),(D=Fi.get(D))&&TN(E,D),N=(h.ownerDocument||h).createElement("link"),Wr(N);var X=N;return X._p=new Promise(function(ne,se){X.onload=ne,X.onerror=se}),yo(N,"link",E),m.state.loading|=4,P6(N,b.precedence,h),m.instance=N;case"script":return N=Gg(b.src),(D=h.querySelector(ub(N)))?(m.instance=D,Wr(D),D):(E=b,(D=Fi.get(N))&&(E=p({},b),jN(E,D)),h=h.ownerDocument||h,D=h.createElement("script"),Wr(D),yo(D,"link",E),h.head.appendChild(D),m.instance=D);case"void":return null;default:throw Error(o(443,m.type))}else m.type==="stylesheet"&&(m.state.loading&4)===0&&(E=m.instance,m.state.loading|=4,P6(E,b.precedence,h));return m.instance}function P6(h,m,b){for(var E=b.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),D=E.length?E[E.length-1]:null,N=D,X=0;X title"):null)}function gwt(h,m,b){if(b===1||m.itemProp!=null)return!1;switch(h){case"meta":case"title":return!0;case"style":if(typeof m.precedence!="string"||typeof m.href!="string"||m.href==="")break;return!0;case"link":if(typeof m.rel!="string"||typeof m.href!="string"||m.href===""||m.onLoad||m.onError)break;switch(m.rel){case"stylesheet":return h=m.disabled,typeof m.precedence=="string"&&h==null;default:return!0}case"script":if(m.async&&typeof m.async!="function"&&typeof m.async!="symbol"&&!m.onLoad&&!m.onError&&m.src&&typeof m.src=="string")return!0}return!1}function Cge(h){return!(h.type==="stylesheet"&&(h.state.loading&3)===0)}function ywt(h,m,b,E){if(b.type==="stylesheet"&&(typeof E.media!="string"||matchMedia(E.media).matches!==!1)&&(b.state.loading&4)===0){if(b.instance===null){var D=Wg(E.href),N=m.querySelector(db(D));if(N){m=N._p,m!==null&&typeof m=="object"&&typeof m.then=="function"&&(h.count++,h=I6.bind(h),m.then(h,h)),b.state.loading|=4,b.instance=N,Wr(N);return}N=m.ownerDocument||m,E=kge(E),(D=Fi.get(D))&&TN(E,D),N=N.createElement("link"),Wr(N);var X=N;X._p=new Promise(function(ne,se){X.onload=ne,X.onerror=se}),yo(N,"link",E),b.instance=N}h.stylesheets===null&&(h.stylesheets=new Map),h.stylesheets.set(b,m),(m=b.state.preload)&&(b.state.loading&3)===0&&(h.count++,b=I6.bind(h),m.addEventListener("load",b),m.addEventListener("error",b))}}var AN=0;function vwt(h,m){return h.stylesheets&&h.count===0&&L6(h,h.stylesheets),0AN?50:800)+m);return h.unsuspend=b,function(){h.unsuspend=null,clearTimeout(E),clearTimeout(D)}}:null}function I6(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)L6(this,this.stylesheets);else if(this.unsuspend){var h=this.unsuspend;this.unsuspend=null,h()}}}var O6=null;function L6(h,m){h.stylesheets=null,h.unsuspend!==null&&(h.count++,O6=new Map,m.forEach(bwt,h),O6=null,I6.call(h))}function bwt(h,m){if(!(m.state.loading&4)){var b=O6.get(h);if(b)var E=b.get(null);else{b=new Map,O6.set(h,b);for(var D=h.querySelectorAll("link[data-precedence],style[data-precedence]"),N=0;N"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(r){console.error(r)}}return e(),$R.exports=tet(),$R.exports}var net=ret();const oet={View:"likec4-view"};let TR="/";TR.endsWith("/")||(TR=TR+"/");var ls=function(){return ls=Object.assign||function(e){for(var r,n=1,o=arguments.length;n"u")return ket;var r=_et(e),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:r[0],top:r[1],right:r[2],gap:Math.max(0,o-n+r[2]-r[0])}},Cet=pne(),Mm="data-scroll-locked",$et=function(e,r,n,o){var a=e.left,i=e.top,l=e.right,s=e.gap;return n===void 0&&(n="margin"),` +`+E.stack}}var Le=Object.prototype.hasOwnProperty,St=e.unstable_scheduleCallback,Ve=e.unstable_cancelCallback,qe=e.unstable_shouldYield,Xe=e.unstable_requestPaint,It=e.unstable_now,Et=e.unstable_getCurrentPriorityLevel,be=e.unstable_ImmediatePriority,ke=e.unstable_UserBlockingPriority,Ye=e.unstable_NormalPriority,yt=e.unstable_LowPriority,xt=e.unstable_IdlePriority,Tr=e.log,er=e.unstable_setDisableYieldValue,qt=null,Ht=null;function Zr(h){if(typeof Tr=="function"&&er(h),Ht&&typeof Ht.setStrictMode=="function")try{Ht.setStrictMode(qt,h)}catch{}}var Gt=Math.clz32?Math.clz32:fn,ln=Math.log,Wn=Math.LN2;function fn(h){return h>>>=0,h===0?32:31-(ln(h)/Wn|0)|0}var oo=256,Yo=262144,jo=4194304;function ua(h){var m=h&42;if(m!==0)return m;switch(h&-h){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return h&261888;case 262144:case 524288:case 1048576:case 2097152:return h&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return h&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return h}}function Dl(h,m,b){var E=h.pendingLanes;if(E===0)return 0;var D=0,N=h.suspendedLanes,X=h.pingedLanes;h=h.warmLanes;var ne=E&134217727;return ne!==0?(E=ne&~N,E!==0?D=ua(E):(X&=ne,X!==0?D=ua(X):b||(b=ne&~h,b!==0&&(D=ua(b))))):(ne=E&~N,ne!==0?D=ua(ne):X!==0?D=ua(X):b||(b=E&~h,b!==0&&(D=ua(b)))),D===0?0:m!==0&&m!==D&&(m&N)===0&&(N=D&-D,b=m&-m,N>=b||N===32&&(b&4194048)!==0)?m:D}function Ao(h,m){return(h.pendingLanes&~(h.suspendedLanes&~h.pingedLanes)&m)===0}function xs(h,m){switch(h){case 1:case 2:case 4:case 8:case 64:return m+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return m+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function ws(){var h=jo;return jo<<=1,(jo&62914560)===0&&(jo=4194304),h}function zc(h){for(var m=[],b=0;31>b;b++)m.push(h);return m}function Ml(h,m){h.pendingLanes|=m,m!==268435456&&(h.suspendedLanes=0,h.pingedLanes=0,h.warmLanes=0)}function lh(h,m,b,E,D,N){var X=h.pendingLanes;h.pendingLanes=b,h.suspendedLanes=0,h.pingedLanes=0,h.warmLanes=0,h.expiredLanes&=b,h.entangledLanes&=b,h.errorRecoveryDisabledLanes&=b,h.shellSuspendCounter=0;var ne=h.entanglements,se=h.expirationTimes,ge=h.hiddenUpdates;for(b=X&~b;0"u")return null;try{return h.activeElement||h.body}catch{return h.body}}var lu=/[\n"\\]/g;function J(h){return h.replace(lu,function(m){return"\\"+m.charCodeAt(0).toString(16)+" "})}function ee(h,m,b,E,D,N,X,ne){h.name="",X!=null&&typeof X!="function"&&typeof X!="symbol"&&typeof X!="boolean"?h.type=X:h.removeAttribute("type"),m!=null?X==="number"?(m===0&&h.value===""||h.value!=m)&&(h.value=""+Gr(m)):h.value!==""+Gr(m)&&(h.value=""+Gr(m)):X!=="submit"&&X!=="reset"||h.removeAttribute("value"),m!=null?ie(h,X,Gr(m)):b!=null?ie(h,X,Gr(b)):E!=null&&h.removeAttribute("value"),D==null&&N!=null&&(h.defaultChecked=!!N),D!=null&&(h.checked=D&&typeof D!="function"&&typeof D!="symbol"),ne!=null&&typeof ne!="function"&&typeof ne!="symbol"&&typeof ne!="boolean"?h.name=""+Gr(ne):h.removeAttribute("name")}function oe(h,m,b,E,D,N,X,ne){if(N!=null&&typeof N!="function"&&typeof N!="symbol"&&typeof N!="boolean"&&(h.type=N),m!=null||b!=null){if(!(N!=="submit"&&N!=="reset"||m!=null)){Ai(h);return}b=b!=null?""+Gr(b):"",m=m!=null?""+Gr(m):b,ne||m===h.value||(h.value=m),h.defaultValue=m}E=E??D,E=typeof E!="function"&&typeof E!="symbol"&&!!E,h.checked=ne?h.checked:!!E,h.defaultChecked=!!E,X!=null&&typeof X!="function"&&typeof X!="symbol"&&typeof X!="boolean"&&(h.name=X),Ai(h)}function ie(h,m,b){m==="number"&&Di(h.ownerDocument)===h||h.defaultValue===""+b||(h.defaultValue=""+b)}function le(h,m,b,E){if(h=h.options,m){m={};for(var D=0;D"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),OD=!1;if(Mc)try{var Tv={};Object.defineProperty(Tv,"passive",{get:function(){OD=!0}}),window.addEventListener("test",Tv,Tv),window.removeEventListener("test",Tv,Tv)}catch{OD=!1}var cu=null,LD=null,L5=null;function dhe(){if(L5)return L5;var h,m=LD,b=m.length,E,D="value"in cu?cu.value:cu.textContent,N=D.length;for(h=0;h=Dv),ghe=" ",yhe=!1;function vhe(h,m){switch(h){case"keyup":return Zbt.indexOf(m.keyCode)!==-1;case"keydown":return m.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function bhe(h){return h=h.detail,typeof h=="object"&&"data"in h?h.data:null}var xg=!1;function Qbt(h,m){switch(h){case"compositionend":return bhe(m);case"keypress":return m.which!==32?null:(yhe=!0,ghe);case"textInput":return h=m.data,h===ghe&&yhe?null:h;default:return null}}function Jbt(h,m){if(xg)return h==="compositionend"||!UD&&vhe(h,m)?(h=dhe(),L5=LD=cu=null,xg=!1,h):null;switch(h){case"paste":return null;case"keypress":if(!(m.ctrlKey||m.altKey||m.metaKey)||m.ctrlKey&&m.altKey){if(m.char&&1=m)return{node:b,offset:m-h};h=E}e:{for(;b;){if(b.nextSibling){b=b.nextSibling;break e}b=b.parentNode}b=void 0}b=$he(b)}}function zhe(h,m){return h&&m?h===m?!0:h&&h.nodeType===3?!1:m&&m.nodeType===3?zhe(h,m.parentNode):"contains"in h?h.contains(m):h.compareDocumentPosition?!!(h.compareDocumentPosition(m)&16):!1:!1}function The(h){h=h!=null&&h.ownerDocument!=null&&h.ownerDocument.defaultView!=null?h.ownerDocument.defaultView:window;for(var m=Di(h.document);m instanceof h.HTMLIFrameElement;){try{var b=typeof m.contentWindow.location.href=="string"}catch{b=!1}if(b)h=m.contentWindow;else break;m=Di(h.document)}return m}function YD(h){var m=h&&h.nodeName&&h.nodeName.toLowerCase();return m&&(m==="input"&&(h.type==="text"||h.type==="search"||h.type==="tel"||h.type==="url"||h.type==="password")||m==="textarea"||h.contentEditable==="true")}var lxt=Mc&&"documentMode"in document&&11>=document.documentMode,wg=null,XD=null,Bv=null,ZD=!1;function jhe(h,m,b){var E=b.window===b?b.document:b.nodeType===9?b:b.ownerDocument;ZD||wg==null||wg!==Di(E)||(E=wg,"selectionStart"in E&&YD(E)?E={start:E.selectionStart,end:E.selectionEnd}:(E=(E.ownerDocument&&E.ownerDocument.defaultView||window).getSelection(),E={anchorNode:E.anchorNode,anchorOffset:E.anchorOffset,focusNode:E.focusNode,focusOffset:E.focusOffset}),Bv&&Pv(Bv,E)||(Bv=E,E=D6(XD,"onSelect"),0>=X,D-=X,Rs=1<<32-Gt(m)+D|b<Pt?(Xt=nt,nt=null):Xt=nt.sibling;var ar=ye(he,nt,me[Pt],Ce);if(ar===null){nt===null&&(nt=Xt);break}h&&nt&&ar.alternate===null&&m(he,nt),de=N(ar,de,Pt),or===null?ct=ar:or.sibling=ar,or=ar,nt=Xt}if(Pt===me.length)return b(he,nt),Zt&&Pc(he,Pt),ct;if(nt===null){for(;PtPt?(Xt=nt,nt=null):Xt=nt.sibling;var ju=ye(he,nt,ar.value,Ce);if(ju===null){nt===null&&(nt=Xt);break}h&&nt&&ju.alternate===null&&m(he,nt),de=N(ju,de,Pt),or===null?ct=ju:or.sibling=ju,or=ju,nt=Xt}if(ar.done)return b(he,nt),Zt&&Pc(he,Pt),ct;if(nt===null){for(;!ar.done;Pt++,ar=me.next())ar=Re(he,ar.value,Ce),ar!==null&&(de=N(ar,de,Pt),or===null?ct=ar:or.sibling=ar,or=ar);return Zt&&Pc(he,Pt),ct}for(nt=E(nt);!ar.done;Pt++,ar=me.next())ar=we(nt,he,Pt,ar.value,Ce),ar!==null&&(h&&ar.alternate!==null&&nt.delete(ar.key===null?Pt:ar.key),de=N(ar,de,Pt),or===null?ct=ar:or.sibling=ar,or=ar);return h&&nt.forEach(function($wt){return m(he,$wt)}),Zt&&Pc(he,Pt),ct}function _r(he,de,me,Ce){if(typeof me=="object"&&me!==null&&me.type===w&&me.key===null&&(me=me.props.children),typeof me=="object"&&me!==null){switch(me.$$typeof){case g:e:{for(var ct=me.key;de!==null;){if(de.key===ct){if(ct=me.type,ct===w){if(de.tag===7){b(he,de.sibling),Ce=D(de,me.props.children),Ce.return=he,he=Ce;break e}}else if(de.elementType===ct||typeof ct=="object"&&ct!==null&&ct.$$typeof===z&&wh(ct)===de.type){b(he,de.sibling),Ce=D(de,me.props),qv(Ce,me),Ce.return=he,he=Ce;break e}b(he,de);break}else m(he,de);de=de.sibling}me.type===w?(Ce=gh(me.props.children,he.mode,Ce,me.key),Ce.return=he,he=Ce):(Ce=Z5(me.type,me.key,me.props,null,he.mode,Ce),qv(Ce,me),Ce.return=he,he=Ce)}return X(he);case v:e:{for(ct=me.key;de!==null;){if(de.key===ct)if(de.tag===4&&de.stateNode.containerInfo===me.containerInfo&&de.stateNode.implementation===me.implementation){b(he,de.sibling),Ce=D(de,me.children||[]),Ce.return=he,he=Ce;break e}else{b(he,de);break}else m(he,de);de=de.sibling}Ce=nM(me,he.mode,Ce),Ce.return=he,he=Ce}return X(he);case z:return me=wh(me),_r(he,de,me,Ce)}if(V(me))return et(he,de,me,Ce);if(L(me)){if(ct=L(me),typeof ct!="function")throw Error(o(150));return me=ct.call(me),bt(he,de,me,Ce)}if(typeof me.then=="function")return _r(he,de,n6(me),Ce);if(me.$$typeof===_)return _r(he,de,J5(he,me),Ce);o6(he,me)}return typeof me=="string"&&me!==""||typeof me=="number"||typeof me=="bigint"?(me=""+me,de!==null&&de.tag===6?(b(he,de.sibling),Ce=D(de,me),Ce.return=he,he=Ce):(b(he,de),Ce=rM(me,he.mode,Ce),Ce.return=he,he=Ce),X(he)):b(he,de)}return function(he,de,me,Ce){try{Vv=0;var ct=_r(he,de,me,Ce);return Ag=null,ct}catch(nt){if(nt===jg||nt===t6)throw nt;var or=Ha(29,nt,null,he.mode);return or.lanes=Ce,or.return=he,or}}}var _h=efe(!0),tfe=efe(!1),fu=!1;function mM(h){h.updateQueue={baseState:h.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function gM(h,m){h=h.updateQueue,m.updateQueue===h&&(m.updateQueue={baseState:h.baseState,firstBaseUpdate:h.firstBaseUpdate,lastBaseUpdate:h.lastBaseUpdate,shared:h.shared,callbacks:null})}function mu(h){return{lane:h,tag:0,payload:null,callback:null,next:null}}function gu(h,m,b){var E=h.updateQueue;if(E===null)return null;if(E=E.shared,(cr&2)!==0){var D=E.pending;return D===null?m.next=m:(m.next=D.next,D.next=m),E.pending=m,m=X5(h),Ihe(h,null,b),m}return Y5(h,E,m,b),X5(h)}function Hv(h,m,b){if(m=m.updateQueue,m!==null&&(m=m.shared,(b&4194048)!==0)){var E=m.lanes;E&=h.pendingLanes,b|=E,m.lanes=b,tu(h,b)}}function yM(h,m){var b=h.updateQueue,E=h.alternate;if(E!==null&&(E=E.updateQueue,b===E)){var D=null,N=null;if(b=b.firstBaseUpdate,b!==null){do{var X={lane:b.lane,tag:b.tag,payload:b.payload,callback:null,next:null};N===null?D=N=X:N=N.next=X,b=b.next}while(b!==null);N===null?D=N=m:N=N.next=m}else D=N=m;b={baseState:E.baseState,firstBaseUpdate:D,lastBaseUpdate:N,shared:E.shared,callbacks:E.callbacks},h.updateQueue=b;return}h=b.lastBaseUpdate,h===null?b.firstBaseUpdate=m:h.next=m,b.lastBaseUpdate=m}var vM=!1;function Uv(){if(vM){var h=Tg;if(h!==null)throw h}}function Wv(h,m,b,E){vM=!1;var D=h.updateQueue;fu=!1;var N=D.firstBaseUpdate,X=D.lastBaseUpdate,ne=D.shared.pending;if(ne!==null){D.shared.pending=null;var se=ne,ge=se.next;se.next=null,X===null?N=ge:X.next=ge,X=se;var Ee=h.alternate;Ee!==null&&(Ee=Ee.updateQueue,ne=Ee.lastBaseUpdate,ne!==X&&(ne===null?Ee.firstBaseUpdate=ge:ne.next=ge,Ee.lastBaseUpdate=se))}if(N!==null){var Re=D.baseState;X=0,Ee=ge=se=null,ne=N;do{var ye=ne.lane&-536870913,we=ye!==ne.lane;if(we?(Yt&ye)===ye:(E&ye)===ye){ye!==0&&ye===zg&&(vM=!0),Ee!==null&&(Ee=Ee.next={lane:0,tag:ne.tag,payload:ne.payload,callback:null,next:null});e:{var et=h,bt=ne;ye=m;var _r=b;switch(bt.tag){case 1:if(et=bt.payload,typeof et=="function"){Re=et.call(_r,Re,ye);break e}Re=et;break e;case 3:et.flags=et.flags&-65537|128;case 0:if(et=bt.payload,ye=typeof et=="function"?et.call(_r,Re,ye):et,ye==null)break e;Re=p({},Re,ye);break e;case 2:fu=!0}}ye=ne.callback,ye!==null&&(h.flags|=64,we&&(h.flags|=8192),we=D.callbacks,we===null?D.callbacks=[ye]:we.push(ye))}else we={lane:ye,tag:ne.tag,payload:ne.payload,callback:ne.callback,next:null},Ee===null?(ge=Ee=we,se=Re):Ee=Ee.next=we,X|=ye;if(ne=ne.next,ne===null){if(ne=D.shared.pending,ne===null)break;we=ne,ne=we.next,we.next=null,D.lastBaseUpdate=we,D.shared.pending=null}}while(!0);Ee===null&&(se=Re),D.baseState=se,D.firstBaseUpdate=ge,D.lastBaseUpdate=Ee,N===null&&(D.shared.lanes=0),wu|=X,h.lanes=X,h.memoizedState=Re}}function rfe(h,m){if(typeof h!="function")throw Error(o(191,h));h.call(m)}function nfe(h,m){var b=h.callbacks;if(b!==null)for(h.callbacks=null,h=0;hN?N:8;var X=B.T,ne={};B.T=ne,BM(h,!1,m,b);try{var se=D(),ge=B.S;if(ge!==null&&ge(ne,se),se!==null&&typeof se=="object"&&typeof se.then=="function"){var Ee=gxt(se,E);Xv(h,m,Ee,Xa(h))}else Xv(h,m,E,Xa(h))}catch(Re){Xv(h,m,{then:function(){},status:"rejected",reason:Re},Xa())}finally{F.p=N,X!==null&&ne.types!==null&&(X.types=ne.types),B.T=X}}function kxt(){}function NM(h,m,b,E){if(h.tag!==5)throw Error(o(476));var D=Nfe(h).queue;Mfe(h,D,m,q,b===null?kxt:function(){return Pfe(h),b(E)})}function Nfe(h){var m=h.memoizedState;if(m!==null)return m;m={memoizedState:q,baseState:q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lc,lastRenderedState:q},next:null};var b={};return m.next={memoizedState:b,baseState:b,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lc,lastRenderedState:b},next:null},h.memoizedState=m,h=h.alternate,h!==null&&(h.memoizedState=m),m}function Pfe(h){var m=Nfe(h);m.next===null&&(m=h.alternate.memoizedState),Xv(h,m.next.queue,{},Xa())}function PM(){return mo(pb)}function Bfe(){return gn().memoizedState}function Ife(){return gn().memoizedState}function _xt(h){for(var m=h.return;m!==null;){switch(m.tag){case 24:case 3:var b=Xa();h=mu(b);var E=gu(m,h,b);E!==null&&(va(E,m,b),Hv(E,m,b)),m={cache:uM()},h.payload=m;return}m=m.return}}function Sxt(h,m,b){var E=Xa();b={lane:E,revertLane:0,gesture:null,action:b,hasEagerState:!1,eagerState:null,next:null},f6(h)?Lfe(m,b):(b=eM(h,m,b,E),b!==null&&(va(b,h,E),Ffe(b,m,E)))}function Ofe(h,m,b){var E=Xa();Xv(h,m,b,E)}function Xv(h,m,b,E){var D={lane:E,revertLane:0,gesture:null,action:b,hasEagerState:!1,eagerState:null,next:null};if(f6(h))Lfe(m,D);else{var N=h.alternate;if(h.lanes===0&&(N===null||N.lanes===0)&&(N=m.lastRenderedReducer,N!==null))try{var X=m.lastRenderedState,ne=N(X,b);if(D.hasEagerState=!0,D.eagerState=ne,qa(ne,X))return Y5(h,m,D,0),Er===null&&G5(),!1}catch{}if(b=eM(h,m,D,E),b!==null)return va(b,h,E),Ffe(b,m,E),!0}return!1}function BM(h,m,b,E){if(E={lane:2,revertLane:mN(),gesture:null,action:E,hasEagerState:!1,eagerState:null,next:null},f6(h)){if(m)throw Error(o(479))}else m=eM(h,b,E,2),m!==null&&va(m,h,2)}function f6(h){var m=h.alternate;return h===Mt||m!==null&&m===Mt}function Lfe(h,m){Mg=l6=!0;var b=h.pending;b===null?m.next=m:(m.next=b.next,b.next=m),h.pending=m}function Ffe(h,m,b){if((b&4194048)!==0){var E=m.lanes;E&=h.pendingLanes,b|=E,m.lanes=b,tu(h,b)}}var Zv={readContext:mo,use:d6,useCallback:sn,useContext:sn,useEffect:sn,useImperativeHandle:sn,useLayoutEffect:sn,useInsertionEffect:sn,useMemo:sn,useReducer:sn,useRef:sn,useState:sn,useDebugValue:sn,useDeferredValue:sn,useTransition:sn,useSyncExternalStore:sn,useId:sn,useHostTransitionStatus:sn,useFormState:sn,useActionState:sn,useOptimistic:sn,useMemoCache:sn,useCacheRefresh:sn};Zv.useEffectEvent=sn;var Vfe={readContext:mo,use:d6,useCallback:function(h,m){return Ko().memoizedState=[h,m===void 0?null:m],h},useContext:mo,useEffect:Efe,useImperativeHandle:function(h,m,b){b=b!=null?b.concat([h]):null,p6(4194308,4,zfe.bind(null,m,h),b)},useLayoutEffect:function(h,m){return p6(4194308,4,h,m)},useInsertionEffect:function(h,m){p6(4,2,h,m)},useMemo:function(h,m){var b=Ko();m=m===void 0?null:m;var E=h();if(Sh){Zr(!0);try{h()}finally{Zr(!1)}}return b.memoizedState=[E,m],E},useReducer:function(h,m,b){var E=Ko();if(b!==void 0){var D=b(m);if(Sh){Zr(!0);try{b(m)}finally{Zr(!1)}}}else D=m;return E.memoizedState=E.baseState=D,h={pending:null,lanes:0,dispatch:null,lastRenderedReducer:h,lastRenderedState:D},E.queue=h,h=h.dispatch=Sxt.bind(null,Mt,h),[E.memoizedState,h]},useRef:function(h){var m=Ko();return h={current:h},m.memoizedState=h},useState:function(h){h=TM(h);var m=h.queue,b=Ofe.bind(null,Mt,m);return m.dispatch=b,[h.memoizedState,b]},useDebugValue:DM,useDeferredValue:function(h,m){var b=Ko();return MM(b,h,m)},useTransition:function(){var h=TM(!1);return h=Mfe.bind(null,Mt,h.queue,!0,!1),Ko().memoizedState=h,[!1,h]},useSyncExternalStore:function(h,m,b){var E=Mt,D=Ko();if(Zt){if(b===void 0)throw Error(o(407));b=b()}else{if(b=m(),Er===null)throw Error(o(349));(Yt&127)!==0||cfe(E,m,b)}D.memoizedState=b;var N={value:b,getSnapshot:m};return D.queue=N,Efe(ufe.bind(null,E,N,h),[h]),E.flags|=2048,Pg(9,{destroy:void 0},dfe.bind(null,E,N,b,m),null),b},useId:function(){var h=Ko(),m=Er.identifierPrefix;if(Zt){var b=zs,E=Rs;b=(E&~(1<<32-Gt(E)-1)).toString(32)+b,m="_"+m+"R_"+b,b=s6++,0<\/script>",N=N.removeChild(N.firstChild);break;case"select":N=typeof E.is=="string"?X.createElement("select",{is:E.is}):X.createElement("select"),E.multiple?N.multiple=!0:E.size&&(N.size=E.size);break;default:N=typeof E.is=="string"?X.createElement(D,{is:E.is}):X.createElement(D)}}N[Nr]=m,N[Mn]=E;e:for(X=m.child;X!==null;){if(X.tag===5||X.tag===6)N.appendChild(X.stateNode);else if(X.tag!==4&&X.tag!==27&&X.child!==null){X.child.return=X,X=X.child;continue}if(X===m)break e;for(;X.sibling===null;){if(X.return===null||X.return===m)break e;X=X.return}X.sibling.return=X.return,X=X.sibling}m.stateNode=N;e:switch(yo(N,D,E),D){case"button":case"input":case"select":case"textarea":E=!!E.autoFocus;break e;case"img":E=!0;break e;default:E=!1}E&&Vc(m)}}return Br(m),KM(m,m.type,h===null?null:h.memoizedProps,m.pendingProps,b),null;case 6:if(h&&m.stateNode!=null)h.memoizedProps!==E&&Vc(m);else{if(typeof E!="string"&&m.stateNode===null)throw Error(o(166));if(h=Q.current,$g(m)){if(h=m.stateNode,b=m.memoizedProps,E=null,D=fo,D!==null)switch(D.tag){case 27:case 5:E=D.memoizedProps}h[Nr]=m,h=!!(h.nodeValue===b||E!==null&&E.suppressHydrationWarning===!0||lge(h.nodeValue,b)),h||pu(m,!0)}else h=M6(h).createTextNode(E),h[Nr]=m,m.stateNode=h}return Br(m),null;case 31:if(b=m.memoizedState,h===null||h.memoizedState!==null){if(E=$g(m),b!==null){if(h===null){if(!E)throw Error(o(318));if(h=m.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(o(557));h[Nr]=m}else yh(),(m.flags&128)===0&&(m.memoizedState=null),m.flags|=4;Br(m),h=!1}else b=lM(),h!==null&&h.memoizedState!==null&&(h.memoizedState.hydrationErrors=b),h=!0;if(!h)return m.flags&256?(Wa(m),m):(Wa(m),null);if((m.flags&128)!==0)throw Error(o(558))}return Br(m),null;case 13:if(E=m.memoizedState,h===null||h.memoizedState!==null&&h.memoizedState.dehydrated!==null){if(D=$g(m),E!==null&&E.dehydrated!==null){if(h===null){if(!D)throw Error(o(318));if(D=m.memoizedState,D=D!==null?D.dehydrated:null,!D)throw Error(o(317));D[Nr]=m}else yh(),(m.flags&128)===0&&(m.memoizedState=null),m.flags|=4;Br(m),D=!1}else D=lM(),h!==null&&h.memoizedState!==null&&(h.memoizedState.hydrationErrors=D),D=!0;if(!D)return m.flags&256?(Wa(m),m):(Wa(m),null)}return Wa(m),(m.flags&128)!==0?(m.lanes=b,m):(b=E!==null,h=h!==null&&h.memoizedState!==null,b&&(E=m.child,D=null,E.alternate!==null&&E.alternate.memoizedState!==null&&E.alternate.memoizedState.cachePool!==null&&(D=E.alternate.memoizedState.cachePool.pool),N=null,E.memoizedState!==null&&E.memoizedState.cachePool!==null&&(N=E.memoizedState.cachePool.pool),N!==D&&(E.flags|=2048)),b!==h&&b&&(m.child.flags|=8192),b6(m,m.updateQueue),Br(m),null);case 4:return re(),h===null&&bN(m.stateNode.containerInfo),Br(m),null;case 10:return Ic(m.type),Br(m),null;case 19:if(Z(mn),E=m.memoizedState,E===null)return Br(m),null;if(D=(m.flags&128)!==0,N=E.rendering,N===null)if(D)Qv(E,!1);else{if(cn!==0||h!==null&&(h.flags&128)!==0)for(h=m.child;h!==null;){if(N=i6(h),N!==null){for(m.flags|=128,Qv(E,!1),h=N.updateQueue,m.updateQueue=h,b6(m,h),m.subtreeFlags=0,h=b,b=m.child;b!==null;)Ohe(b,h),b=b.sibling;return O(mn,mn.current&1|2),Zt&&Pc(m,E.treeForkCount),m.child}h=h.sibling}E.tail!==null&&It()>S6&&(m.flags|=128,D=!0,Qv(E,!1),m.lanes=4194304)}else{if(!D)if(h=i6(N),h!==null){if(m.flags|=128,D=!0,h=h.updateQueue,m.updateQueue=h,b6(m,h),Qv(E,!0),E.tail===null&&E.tailMode==="hidden"&&!N.alternate&&!Zt)return Br(m),null}else 2*It()-E.renderingStartTime>S6&&b!==536870912&&(m.flags|=128,D=!0,Qv(E,!1),m.lanes=4194304);E.isBackwards?(N.sibling=m.child,m.child=N):(h=E.last,h!==null?h.sibling=N:m.child=N,E.last=N)}return E.tail!==null?(h=E.tail,E.rendering=h,E.tail=h.sibling,E.renderingStartTime=It(),h.sibling=null,b=mn.current,O(mn,D?b&1|2:b&1),Zt&&Pc(m,E.treeForkCount),h):(Br(m),null);case 22:case 23:return Wa(m),xM(),E=m.memoizedState!==null,h!==null?h.memoizedState!==null!==E&&(m.flags|=8192):E&&(m.flags|=8192),E?(b&536870912)!==0&&(m.flags&128)===0&&(Br(m),m.subtreeFlags&6&&(m.flags|=8192)):Br(m),b=m.updateQueue,b!==null&&b6(m,b.retryQueue),b=null,h!==null&&h.memoizedState!==null&&h.memoizedState.cachePool!==null&&(b=h.memoizedState.cachePool.pool),E=null,m.memoizedState!==null&&m.memoizedState.cachePool!==null&&(E=m.memoizedState.cachePool.pool),E!==b&&(m.flags|=2048),h!==null&&Z(xh),null;case 24:return b=null,h!==null&&(b=h.memoizedState.cache),m.memoizedState.cache!==b&&(m.flags|=2048),Ic(Nn),Br(m),null;case 25:return null;case 30:return null}throw Error(o(156,m.tag))}function zxt(h,m){switch(aM(m),m.tag){case 1:return h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 3:return Ic(Nn),re(),h=m.flags,(h&65536)!==0&&(h&128)===0?(m.flags=h&-65537|128,m):null;case 26:case 27:case 5:return _e(m),null;case 31:if(m.memoizedState!==null){if(Wa(m),m.alternate===null)throw Error(o(340));yh()}return h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 13:if(Wa(m),h=m.memoizedState,h!==null&&h.dehydrated!==null){if(m.alternate===null)throw Error(o(340));yh()}return h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 19:return Z(mn),null;case 4:return re(),null;case 10:return Ic(m.type),null;case 22:case 23:return Wa(m),xM(),h!==null&&Z(xh),h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 24:return Ic(Nn),null;case 25:return null;default:return null}}function pme(h,m){switch(aM(m),m.tag){case 3:Ic(Nn),re();break;case 26:case 27:case 5:_e(m);break;case 4:re();break;case 31:m.memoizedState!==null&&Wa(m);break;case 13:Wa(m);break;case 19:Z(mn);break;case 10:Ic(m.type);break;case 22:case 23:Wa(m),xM(),h!==null&&Z(xh);break;case 24:Ic(Nn)}}function Jv(h,m){try{var b=m.updateQueue,E=b!==null?b.lastEffect:null;if(E!==null){var D=E.next;b=D;do{if((b.tag&h)===h){E=void 0;var N=b.create,X=b.inst;E=N(),X.destroy=E}b=b.next}while(b!==D)}}catch(ne){gr(m,m.return,ne)}}function bu(h,m,b){try{var E=m.updateQueue,D=E!==null?E.lastEffect:null;if(D!==null){var N=D.next;E=N;do{if((E.tag&h)===h){var X=E.inst,ne=X.destroy;if(ne!==void 0){X.destroy=void 0,D=m;var se=b,ge=ne;try{ge()}catch(Ee){gr(D,se,Ee)}}}E=E.next}while(E!==N)}}catch(Ee){gr(m,m.return,Ee)}}function hme(h){var m=h.updateQueue;if(m!==null){var b=h.stateNode;try{nfe(m,b)}catch(E){gr(h,h.return,E)}}}function fme(h,m,b){b.props=Eh(h.type,h.memoizedProps),b.state=h.memoizedState;try{b.componentWillUnmount()}catch(E){gr(h,m,E)}}function eb(h,m){try{var b=h.ref;if(b!==null){switch(h.tag){case 26:case 27:case 5:var E=h.stateNode;break;case 30:E=h.stateNode;break;default:E=h.stateNode}typeof b=="function"?h.refCleanup=b(E):b.current=E}}catch(D){gr(h,m,D)}}function Ts(h,m){var b=h.ref,E=h.refCleanup;if(b!==null)if(typeof E=="function")try{E()}catch(D){gr(h,m,D)}finally{h.refCleanup=null,h=h.alternate,h!=null&&(h.refCleanup=null)}else if(typeof b=="function")try{b(null)}catch(D){gr(h,m,D)}else b.current=null}function mme(h){var m=h.type,b=h.memoizedProps,E=h.stateNode;try{e:switch(m){case"button":case"input":case"select":case"textarea":b.autoFocus&&E.focus();break e;case"img":b.src?E.src=b.src:b.srcSet&&(E.srcset=b.srcSet)}}catch(D){gr(h,h.return,D)}}function QM(h,m,b){try{var E=h.stateNode;Kxt(E,h.type,b,m),E[Mn]=m}catch(D){gr(h,h.return,D)}}function gme(h){return h.tag===5||h.tag===3||h.tag===26||h.tag===27&&Cu(h.type)||h.tag===4}function JM(h){e:for(;;){for(;h.sibling===null;){if(h.return===null||gme(h.return))return null;h=h.return}for(h.sibling.return=h.return,h=h.sibling;h.tag!==5&&h.tag!==6&&h.tag!==18;){if(h.tag===27&&Cu(h.type)||h.flags&2||h.child===null||h.tag===4)continue e;h.child.return=h,h=h.child}if(!(h.flags&2))return h.stateNode}}function eN(h,m,b){var E=h.tag;if(E===5||E===6)h=h.stateNode,m?(b.nodeType===9?b.body:b.nodeName==="HTML"?b.ownerDocument.body:b).insertBefore(h,m):(m=b.nodeType===9?b.body:b.nodeName==="HTML"?b.ownerDocument.body:b,m.appendChild(h),b=b._reactRootContainer,b!=null||m.onclick!==null||(m.onclick=Lt));else if(E!==4&&(E===27&&Cu(h.type)&&(b=h.stateNode,m=null),h=h.child,h!==null))for(eN(h,m,b),h=h.sibling;h!==null;)eN(h,m,b),h=h.sibling}function x6(h,m,b){var E=h.tag;if(E===5||E===6)h=h.stateNode,m?b.insertBefore(h,m):b.appendChild(h);else if(E!==4&&(E===27&&Cu(h.type)&&(b=h.stateNode),h=h.child,h!==null))for(x6(h,m,b),h=h.sibling;h!==null;)x6(h,m,b),h=h.sibling}function yme(h){var m=h.stateNode,b=h.memoizedProps;try{for(var E=h.type,D=m.attributes;D.length;)m.removeAttributeNode(D[0]);yo(m,E,b),m[Nr]=h,m[Mn]=b}catch(N){gr(h,h.return,N)}}var qc=!1,In=!1,tN=!1,vme=typeof WeakSet=="function"?WeakSet:Set,ao=null;function Txt(h,m){if(h=h.containerInfo,kN=F6,h=The(h),YD(h)){if("selectionStart"in h)var b={start:h.selectionStart,end:h.selectionEnd};else e:{b=(b=h.ownerDocument)&&b.defaultView||window;var E=b.getSelection&&b.getSelection();if(E&&E.rangeCount!==0){b=E.anchorNode;var D=E.anchorOffset,N=E.focusNode;E=E.focusOffset;try{b.nodeType,N.nodeType}catch{b=null;break e}var X=0,ne=-1,se=-1,ge=0,Ee=0,Re=h,ye=null;t:for(;;){for(var we;Re!==b||D!==0&&Re.nodeType!==3||(ne=X+D),Re!==N||E!==0&&Re.nodeType!==3||(se=X+E),Re.nodeType===3&&(X+=Re.nodeValue.length),(we=Re.firstChild)!==null;)ye=Re,Re=we;for(;;){if(Re===h)break t;if(ye===b&&++ge===D&&(ne=X),ye===N&&++Ee===E&&(se=X),(we=Re.nextSibling)!==null)break;Re=ye,ye=Re.parentNode}Re=we}b=ne===-1||se===-1?null:{start:ne,end:se}}else b=null}b=b||{start:0,end:0}}else b=null;for(_N={focusedElem:h,selectionRange:b},F6=!1,ao=m;ao!==null;)if(m=ao,h=m.child,(m.subtreeFlags&1028)!==0&&h!==null)h.return=m,ao=h;else for(;ao!==null;){switch(m=ao,N=m.alternate,h=m.flags,m.tag){case 0:if((h&4)!==0&&(h=m.updateQueue,h=h!==null?h.events:null,h!==null))for(b=0;b title"))),yo(N,E,b),N[Nr]=h,Wr(N),E=N;break e;case"link":var X=Sge("link","href",D).get(E+(b.href||""));if(X){for(var ne=0;ne_r&&(X=_r,_r=bt,bt=X);var he=Rhe(ne,bt),de=Rhe(ne,_r);if(he&&de&&(we.rangeCount!==1||we.anchorNode!==he.node||we.anchorOffset!==he.offset||we.focusNode!==de.node||we.focusOffset!==de.offset)){var me=Re.createRange();me.setStart(he.node,he.offset),we.removeAllRanges(),bt>_r?(we.addRange(me),we.extend(de.node,de.offset)):(me.setEnd(de.node,de.offset),we.addRange(me))}}}}for(Re=[],we=ne;we=we.parentNode;)we.nodeType===1&&Re.push({element:we,left:we.scrollLeft,top:we.scrollTop});for(typeof ne.focus=="function"&&ne.focus(),ne=0;neb?32:b,B.T=null,b=sN,sN=null;var N=_u,X=Yc;if(Gn=0,Fg=_u=null,Yc=0,(cr&6)!==0)throw Error(o(331));var ne=cr;if(cr|=4,zme(N.current),Cme(N,N.current,X,b),cr=ne,ib(0,!1),Ht&&typeof Ht.onPostCommitFiberRoot=="function")try{Ht.onPostCommitFiberRoot(qt,N)}catch{}return!0}finally{F.p=D,B.T=E,Gme(h,m)}}function Xme(h,m,b){m=Ni(b,m),m=FM(h.stateNode,m,2),h=gu(h,m,2),h!==null&&(Ml(h,2),js(h))}function gr(h,m,b){if(h.tag===3)Xme(h,h,b);else for(;m!==null;){if(m.tag===3){Xme(m,h,b);break}else if(m.tag===1){var E=m.stateNode;if(typeof m.type.getDerivedStateFromError=="function"||typeof E.componentDidCatch=="function"&&(ku===null||!ku.has(E))){h=Ni(b,h),b=Zfe(2),E=gu(m,b,2),E!==null&&(Kfe(b,E,m,h),Ml(E,2),js(E));break}}m=m.return}}function pN(h,m,b){var E=h.pingCache;if(E===null){E=h.pingCache=new Dxt;var D=new Set;E.set(m,D)}else D=E.get(m),D===void 0&&(D=new Set,E.set(m,D));D.has(b)||(oN=!0,D.add(b),h=Ixt.bind(null,h,m,b),m.then(h,h))}function Ixt(h,m,b){var E=h.pingCache;E!==null&&E.delete(m),h.pingedLanes|=h.suspendedLanes&b,h.warmLanes&=~b,Er===h&&(Yt&b)===b&&(cn===4||cn===3&&(Yt&62914560)===Yt&&300>It()-_6?(cr&2)===0&&Vg(h,0):aN|=b,Lg===Yt&&(Lg=0)),js(h)}function Zme(h,m){m===0&&(m=ws()),h=mh(h,m),h!==null&&(Ml(h,m),js(h))}function Oxt(h){var m=h.memoizedState,b=0;m!==null&&(b=m.retryLane),Zme(h,b)}function Lxt(h,m){var b=0;switch(h.tag){case 31:case 13:var E=h.stateNode,D=h.memoizedState;D!==null&&(b=D.retryLane);break;case 19:E=h.stateNode;break;case 22:E=h.stateNode._retryCache;break;default:throw Error(o(314))}E!==null&&E.delete(m),Zme(h,b)}function Fxt(h,m){return St(h,m)}var T6=null,Hg=null,hN=!1,j6=!1,fN=!1,Eu=0;function js(h){h!==Hg&&h.next===null&&(Hg===null?T6=Hg=h:Hg=Hg.next=h),j6=!0,hN||(hN=!0,qxt())}function ib(h,m){if(!fN&&j6){fN=!0;do for(var b=!1,E=T6;E!==null;){if(h!==0){var D=E.pendingLanes;if(D===0)var N=0;else{var X=E.suspendedLanes,ne=E.pingedLanes;N=(1<<31-Gt(42|h)+1)-1,N&=D&~(X&~ne),N=N&201326741?N&201326741|1:N?N|2:0}N!==0&&(b=!0,ege(E,N))}else N=Yt,N=Dl(E,E===Er?N:0,E.cancelPendingCommit!==null||E.timeoutHandle!==-1),(N&3)===0||Ao(E,N)||(b=!0,ege(E,N));E=E.next}while(b);fN=!1}}function Vxt(){Kme()}function Kme(){j6=hN=!1;var h=0;Eu!==0&&Jxt()&&(h=Eu);for(var m=It(),b=null,E=T6;E!==null;){var D=E.next,N=Qme(E,m);N===0?(E.next=null,b===null?T6=D:b.next=D,D===null&&(Hg=b)):(b=E,(h!==0||(N&3)!==0)&&(j6=!0)),E=D}Gn!==0&&Gn!==5||ib(h),Eu!==0&&(Eu=0)}function Qme(h,m){for(var b=h.suspendedLanes,E=h.pingedLanes,D=h.expirationTimes,N=h.pendingLanes&-62914561;0ne)break;var Ee=se.transferSize,Re=se.initiatorType;Ee&&sge(Re)&&(se=se.responseEnd,X+=Ee*(se"u"?null:document;function xge(h,m,b){var E=Ug;if(E&&typeof m=="string"&&m){var D=J(m);D='link[rel="'+h+'"][href="'+D+'"]',typeof b=="string"&&(D+='[crossorigin="'+b+'"]'),bge.has(D)||(bge.add(D),h={rel:h,crossOrigin:b,href:m},E.querySelector(D)===null&&(m=E.createElement("link"),yo(m,"link",h),Wr(m),E.head.appendChild(m)))}}function swt(h){Xc.D(h),xge("dns-prefetch",h,null)}function cwt(h,m){Xc.C(h,m),xge("preconnect",h,m)}function dwt(h,m,b){Xc.L(h,m,b);var E=Ug;if(E&&h&&m){var D='link[rel="preload"][as="'+J(m)+'"]';m==="image"&&b&&b.imageSrcSet?(D+='[imagesrcset="'+J(b.imageSrcSet)+'"]',typeof b.imageSizes=="string"&&(D+='[imagesizes="'+J(b.imageSizes)+'"]')):D+='[href="'+J(h)+'"]';var N=D;switch(m){case"style":N=Wg(h);break;case"script":N=Gg(h)}Fi.has(N)||(h=p({rel:"preload",href:m==="image"&&b&&b.imageSrcSet?void 0:h,as:m},b),Fi.set(N,h),E.querySelector(D)!==null||m==="style"&&E.querySelector(db(N))||m==="script"&&E.querySelector(ub(N))||(m=E.createElement("link"),yo(m,"link",h),Wr(m),E.head.appendChild(m)))}}function uwt(h,m){Xc.m(h,m);var b=Ug;if(b&&h){var E=m&&typeof m.as=="string"?m.as:"script",D='link[rel="modulepreload"][as="'+J(E)+'"][href="'+J(h)+'"]',N=D;switch(E){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":N=Gg(h)}if(!Fi.has(N)&&(h=p({rel:"modulepreload",href:h},m),Fi.set(N,h),b.querySelector(D)===null)){switch(E){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(b.querySelector(ub(N)))return}E=b.createElement("link"),yo(E,"link",h),Wr(E),b.head.appendChild(E)}}}function pwt(h,m,b){Xc.S(h,m,b);var E=Ug;if(E&&h){var D=ho(E).hoistableStyles,N=Wg(h);m=m||"default";var X=D.get(N);if(!X){var ne={loading:0,preload:null};if(X=E.querySelector(db(N)))ne.loading=5;else{h=p({rel:"stylesheet",href:h,"data-precedence":m},b),(b=Fi.get(N))&&TN(h,b);var se=X=E.createElement("link");Wr(se),yo(se,"link",h),se._p=new Promise(function(ge,Ee){se.onload=ge,se.onerror=Ee}),se.addEventListener("load",function(){ne.loading|=1}),se.addEventListener("error",function(){ne.loading|=2}),ne.loading|=4,P6(X,m,E)}X={type:"stylesheet",instance:X,count:1,state:ne},D.set(N,X)}}}function hwt(h,m){Xc.X(h,m);var b=Ug;if(b&&h){var E=ho(b).hoistableScripts,D=Gg(h),N=E.get(D);N||(N=b.querySelector(ub(D)),N||(h=p({src:h,async:!0},m),(m=Fi.get(D))&&jN(h,m),N=b.createElement("script"),Wr(N),yo(N,"link",h),b.head.appendChild(N)),N={type:"script",instance:N,count:1,state:null},E.set(D,N))}}function fwt(h,m){Xc.M(h,m);var b=Ug;if(b&&h){var E=ho(b).hoistableScripts,D=Gg(h),N=E.get(D);N||(N=b.querySelector(ub(D)),N||(h=p({src:h,async:!0,type:"module"},m),(m=Fi.get(D))&&jN(h,m),N=b.createElement("script"),Wr(N),yo(N,"link",h),b.head.appendChild(N)),N={type:"script",instance:N,count:1,state:null},E.set(D,N))}}function wge(h,m,b,E){var D=(D=Q.current)?N6(D):null;if(!D)throw Error(o(446));switch(h){case"meta":case"title":return null;case"style":return typeof b.precedence=="string"&&typeof b.href=="string"?(m=Wg(b.href),b=ho(D).hoistableStyles,E=b.get(m),E||(E={type:"style",instance:null,count:0,state:null},b.set(m,E)),E):{type:"void",instance:null,count:0,state:null};case"link":if(b.rel==="stylesheet"&&typeof b.href=="string"&&typeof b.precedence=="string"){h=Wg(b.href);var N=ho(D).hoistableStyles,X=N.get(h);if(X||(D=D.ownerDocument||D,X={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},N.set(h,X),(N=D.querySelector(db(h)))&&!N._p&&(X.instance=N,X.state.loading=5),Fi.has(h)||(b={rel:"preload",as:"style",href:b.href,crossOrigin:b.crossOrigin,integrity:b.integrity,media:b.media,hrefLang:b.hrefLang,referrerPolicy:b.referrerPolicy},Fi.set(h,b),N||mwt(D,h,b,X.state))),m&&E===null)throw Error(o(528,""));return X}if(m&&E!==null)throw Error(o(529,""));return null;case"script":return m=b.async,b=b.src,typeof b=="string"&&m&&typeof m!="function"&&typeof m!="symbol"?(m=Gg(b),b=ho(D).hoistableScripts,E=b.get(m),E||(E={type:"script",instance:null,count:0,state:null},b.set(m,E)),E):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,h))}}function Wg(h){return'href="'+J(h)+'"'}function db(h){return'link[rel="stylesheet"]['+h+"]"}function kge(h){return p({},h,{"data-precedence":h.precedence,precedence:null})}function mwt(h,m,b,E){h.querySelector('link[rel="preload"][as="style"]['+m+"]")?E.loading=1:(m=h.createElement("link"),E.preload=m,m.addEventListener("load",function(){return E.loading|=1}),m.addEventListener("error",function(){return E.loading|=2}),yo(m,"link",b),Wr(m),h.head.appendChild(m))}function Gg(h){return'[src="'+J(h)+'"]'}function ub(h){return"script[async]"+h}function _ge(h,m,b){if(m.count++,m.instance===null)switch(m.type){case"style":var E=h.querySelector('style[data-href~="'+J(b.href)+'"]');if(E)return m.instance=E,Wr(E),E;var D=p({},b,{"data-href":b.href,"data-precedence":b.precedence,href:null,precedence:null});return E=(h.ownerDocument||h).createElement("style"),Wr(E),yo(E,"style",D),P6(E,b.precedence,h),m.instance=E;case"stylesheet":D=Wg(b.href);var N=h.querySelector(db(D));if(N)return m.state.loading|=4,m.instance=N,Wr(N),N;E=kge(b),(D=Fi.get(D))&&TN(E,D),N=(h.ownerDocument||h).createElement("link"),Wr(N);var X=N;return X._p=new Promise(function(ne,se){X.onload=ne,X.onerror=se}),yo(N,"link",E),m.state.loading|=4,P6(N,b.precedence,h),m.instance=N;case"script":return N=Gg(b.src),(D=h.querySelector(ub(N)))?(m.instance=D,Wr(D),D):(E=b,(D=Fi.get(N))&&(E=p({},b),jN(E,D)),h=h.ownerDocument||h,D=h.createElement("script"),Wr(D),yo(D,"link",E),h.head.appendChild(D),m.instance=D);case"void":return null;default:throw Error(o(443,m.type))}else m.type==="stylesheet"&&(m.state.loading&4)===0&&(E=m.instance,m.state.loading|=4,P6(E,b.precedence,h));return m.instance}function P6(h,m,b){for(var E=b.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),D=E.length?E[E.length-1]:null,N=D,X=0;X title"):null)}function gwt(h,m,b){if(b===1||m.itemProp!=null)return!1;switch(h){case"meta":case"title":return!0;case"style":if(typeof m.precedence!="string"||typeof m.href!="string"||m.href==="")break;return!0;case"link":if(typeof m.rel!="string"||typeof m.href!="string"||m.href===""||m.onLoad||m.onError)break;switch(m.rel){case"stylesheet":return h=m.disabled,typeof m.precedence=="string"&&h==null;default:return!0}case"script":if(m.async&&typeof m.async!="function"&&typeof m.async!="symbol"&&!m.onLoad&&!m.onError&&m.src&&typeof m.src=="string")return!0}return!1}function Cge(h){return!(h.type==="stylesheet"&&(h.state.loading&3)===0)}function ywt(h,m,b,E){if(b.type==="stylesheet"&&(typeof E.media!="string"||matchMedia(E.media).matches!==!1)&&(b.state.loading&4)===0){if(b.instance===null){var D=Wg(E.href),N=m.querySelector(db(D));if(N){m=N._p,m!==null&&typeof m=="object"&&typeof m.then=="function"&&(h.count++,h=I6.bind(h),m.then(h,h)),b.state.loading|=4,b.instance=N,Wr(N);return}N=m.ownerDocument||m,E=kge(E),(D=Fi.get(D))&&TN(E,D),N=N.createElement("link"),Wr(N);var X=N;X._p=new Promise(function(ne,se){X.onload=ne,X.onerror=se}),yo(N,"link",E),b.instance=N}h.stylesheets===null&&(h.stylesheets=new Map),h.stylesheets.set(b,m),(m=b.state.preload)&&(b.state.loading&3)===0&&(h.count++,b=I6.bind(h),m.addEventListener("load",b),m.addEventListener("error",b))}}var AN=0;function vwt(h,m){return h.stylesheets&&h.count===0&&L6(h,h.stylesheets),0AN?50:800)+m);return h.unsuspend=b,function(){h.unsuspend=null,clearTimeout(E),clearTimeout(D)}}:null}function I6(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)L6(this,this.stylesheets);else if(this.unsuspend){var h=this.unsuspend;this.unsuspend=null,h()}}}var O6=null;function L6(h,m){h.stylesheets=null,h.unsuspend!==null&&(h.count++,O6=new Map,m.forEach(bwt,h),O6=null,I6.call(h))}function bwt(h,m){if(!(m.state.loading&4)){var b=O6.get(h);if(b)var E=b.get(null);else{b=new Map,O6.set(h,b);for(var D=h.querySelectorAll("link[data-precedence],style[data-precedence]"),N=0;N"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(r){console.error(r)}}return e(),$z.exports=tet(),$z.exports}var net=ret();const oet={View:"likec4-view"};let Tz="/";Tz.endsWith("/")||(Tz=Tz+"/");var ls=function(){return ls=Object.assign||function(e){for(var r,n=1,o=arguments.length;n"u")return ket;var r=_et(e),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:r[0],top:r[1],right:r[2],gap:Math.max(0,o-n+r[2]-r[0])}},Cet=pne(),Mm="data-scroll-locked",$et=function(e,r,n,o){var a=e.left,i=e.top,l=e.right,s=e.gap;return n===void 0&&(n="margin"),` .`.concat(iet,` { overflow: hidden `).concat(o,`; padding-right: `).concat(s,"px ").concat(o,`; @@ -339,18 +339,18 @@ Error generating stack: `+E.message+` body[`).concat(Mm,`] { `).concat(set,": ").concat(s,`px; } -`)},hne=function(){var e=parseInt(document.body.getAttribute(Mm)||"0",10);return isFinite(e)?e:0},zet=function(){S.useEffect(function(){return document.body.setAttribute(Mm,(hne()+1).toString()),function(){var e=hne()-1;e<=0?document.body.removeAttribute(Mm):document.body.setAttribute(Mm,e.toString())}},[])},Ret=function(e){var r=e.noRelative,n=e.noImportant,o=e.gapMode,a=o===void 0?"margin":o;zet();var i=S.useMemo(function(){return Eet(a)},[a]);return S.createElement(Cet,{styles:$et(i,!r,a,n?"":"!important")})},MR=!1;if(typeof window<"u")try{var k4=Object.defineProperty({},"passive",{get:function(){return MR=!0,!0}});window.addEventListener("test",k4,k4),window.removeEventListener("test",k4,k4)}catch{MR=!1}var Nm=MR?{passive:!1}:!1,Tet=function(e){return e.tagName==="TEXTAREA"},fne=function(e,r){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[r]!=="hidden"&&!(n.overflowY===n.overflowX&&!Tet(e)&&n[r]==="visible")},jet=function(e){return fne(e,"overflowY")},Aet=function(e){return fne(e,"overflowX")},mne=function(e,r){var n=r.ownerDocument,o=r;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var a=gne(e,o);if(a){var i=yne(e,o),l=i[1],s=i[2];if(l>s)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},Det=function(e){var r=e.scrollTop,n=e.scrollHeight,o=e.clientHeight;return[r,n,o]},Met=function(e){var r=e.scrollLeft,n=e.scrollWidth,o=e.clientWidth;return[r,n,o]},gne=function(e,r){return e==="v"?jet(r):Aet(r)},yne=function(e,r){return e==="v"?Det(r):Met(r)},Net=function(e,r){return e==="h"&&r==="rtl"?-1:1},Pet=function(e,r,n,o,a){var i=Net(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=yne(e,s),v=g[0],w=g[1],x=g[2],k=w-x-i*v;(v||k)&&gne(e,s)&&(p+=k,f+=v);var C=s.parentNode;s=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!c&&s!==document.body||c&&(r.contains(s)||r===s));return(u&&Math.abs(p)<1||!u&&Math.abs(f)<1)&&(d=!0),d},_4=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},vne=function(e){return[e.deltaX,e.deltaY]},bne=function(e){return e&&"current"in e?e.current:e},Bet=function(e,r){return e[0]===r[0]&&e[1]===r[1]},Iet=function(e){return` +`)},hne=function(){var e=parseInt(document.body.getAttribute(Mm)||"0",10);return isFinite(e)?e:0},Ret=function(){S.useEffect(function(){return document.body.setAttribute(Mm,(hne()+1).toString()),function(){var e=hne()-1;e<=0?document.body.removeAttribute(Mm):document.body.setAttribute(Mm,e.toString())}},[])},zet=function(e){var r=e.noRelative,n=e.noImportant,o=e.gapMode,a=o===void 0?"margin":o;Ret();var i=S.useMemo(function(){return Eet(a)},[a]);return S.createElement(Cet,{styles:$et(i,!r,a,n?"":"!important")})},Mz=!1;if(typeof window<"u")try{var k4=Object.defineProperty({},"passive",{get:function(){return Mz=!0,!0}});window.addEventListener("test",k4,k4),window.removeEventListener("test",k4,k4)}catch{Mz=!1}var Nm=Mz?{passive:!1}:!1,Tet=function(e){return e.tagName==="TEXTAREA"},fne=function(e,r){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[r]!=="hidden"&&!(n.overflowY===n.overflowX&&!Tet(e)&&n[r]==="visible")},jet=function(e){return fne(e,"overflowY")},Aet=function(e){return fne(e,"overflowX")},mne=function(e,r){var n=r.ownerDocument,o=r;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var a=gne(e,o);if(a){var i=yne(e,o),l=i[1],s=i[2];if(l>s)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},Det=function(e){var r=e.scrollTop,n=e.scrollHeight,o=e.clientHeight;return[r,n,o]},Met=function(e){var r=e.scrollLeft,n=e.scrollWidth,o=e.clientWidth;return[r,n,o]},gne=function(e,r){return e==="v"?jet(r):Aet(r)},yne=function(e,r){return e==="v"?Det(r):Met(r)},Net=function(e,r){return e==="h"&&r==="rtl"?-1:1},Pet=function(e,r,n,o,a){var i=Net(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=yne(e,s),v=g[0],w=g[1],x=g[2],k=w-x-i*v;(v||k)&&gne(e,s)&&(p+=k,f+=v);var C=s.parentNode;s=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!c&&s!==document.body||c&&(r.contains(s)||r===s));return(u&&Math.abs(p)<1||!u&&Math.abs(f)<1)&&(d=!0),d},_4=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},vne=function(e){return[e.deltaX,e.deltaY]},bne=function(e){return e&&"current"in e?e.current:e},Bet=function(e,r){return e[0]===r[0]&&e[1]===r[1]},Iet=function(e){return` .block-interactivity-`.concat(e,` {pointer-events: none;} .allow-interactivity-`).concat(e,` {pointer-events: all;} -`)},Oet=0,Pm=[];function Let(e){var r=S.useRef([]),n=S.useRef([0,0]),o=S.useRef(),a=S.useState(Oet++)[0],i=S.useState(pne)[0],l=S.useRef(e);S.useEffect(function(){l.current=e},[e]),S.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(a));var w=aet([e.lockRef.current],(e.shards||[]).map(bne)).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=_4(w),C=n.current,_="deltaX"in w?w.deltaX:C[0]-k[0],$="deltaY"in w?w.deltaY:C[1]-k[1],z,T=w.target,A=Math.abs(_)>Math.abs($)?"h":"v";if("touches"in w&&A==="h"&&T.type==="range")return!1;var R=mne(A,T);if(!R)return!0;if(R?z=A:(z=A==="v"?"h":"v",R=mne(A,T)),!R)return!1;if(!o.current&&"changedTouches"in w&&(_||$)&&(o.current=z),!z)return!0;var j=o.current||z;return Pet(j,x,w,j==="h"?_:$)},[]),c=S.useCallback(function(w){var x=w;if(!(!Pm.length||Pm[Pm.length-1]!==i)){var k="deltaY"in x?vne(x):_4(x),C=r.current.filter(function(z){return z.name===x.type&&(z.target===x.target||x.target===z.shadowParent)&&Bet(z.delta,k)})[0];if(C&&C.should){x.cancelable&&x.preventDefault();return}if(!C){var _=(l.current.shards||[]).map(bne).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:Fet(k)};r.current.push(_),setTimeout(function(){r.current=r.current.filter(function($){return $!==_})},1)},[]),u=S.useCallback(function(w){n.current=_4(w),o.current=void 0},[]),p=S.useCallback(function(w){d(w.type,vne(w),w.target,s(w,e.lockRef.current))},[]),f=S.useCallback(function(w){d(w.type,_4(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return Pm.push(i),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:f}),document.addEventListener("wheel",c,Nm),document.addEventListener("touchmove",c,Nm),document.addEventListener("touchstart",u,Nm),function(){Pm=Pm.filter(function(w){return w!==i}),document.removeEventListener("wheel",c,Nm),document.removeEventListener("touchmove",c,Nm),document.removeEventListener("touchstart",u,Nm)}},[]);var g=e.removeScrollBar,v=e.inert;return S.createElement(S.Fragment,null,v?S.createElement(i,{styles:Iet(a)}):null,g?S.createElement(Ret,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Fet(e){for(var r=null;e!==null;)e instanceof ShadowRoot&&(r=e.host,e=e.host),e=e.parentNode;return r}const Vet=met(une,Let);var xne=S.forwardRef(function(e,r){return S.createElement(w4,ls({},e,{ref:r,sideCar:Vet}))});xne.classNames=w4.classNames;function zo(e){return Object.keys(e)}function qet(e){return e.replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`)}function Het(e){return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:e.match(/^calc\((.*?)\)$/)?.[1].split("*")[0].trim()}function S4(e){const r=Het(e);return typeof r=="number"?r:typeof r=="string"?r.includes("calc")||r.includes("var")?r:r.includes("px")?Number(r.replace("px","")):r.includes("rem")?Number(r.replace("rem",""))*16:r.includes("em")?Number(r.replace("em",""))*16:Number(r):NaN}function wne(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function kne(e,{shouldScale:r=!1}={}){function n(o){if(o===0||o==="0")return`0${e}`;if(typeof o=="number"){const a=`${o/16}${e}`;return r?wne(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?wne(i):i}}return o}return n}const Pe=kne("rem",{shouldScale:!0});kne("em");function Vd(e){return Object.keys(e).reduce((r,n)=>(e[n]!==void 0&&(r[n]=e[n]),r),{})}function _ne(e){if(typeof e=="number")return!0;if(typeof e=="string"){if(e.startsWith("calc(")||e.startsWith("var(")||e.includes(" ")&&e.trim()!=="")return!0;const r=/^[+-]?[0-9]+(\.[0-9]+)?(px|em|rem|ex|ch|lh|rlh|vw|vh|vmin|vmax|vb|vi|svw|svh|lvw|lvh|dvw|dvh|cm|mm|in|pt|pc|q|cqw|cqh|cqi|cqb|cqmin|cqmax|%)?$/;return e.trim().split(/\s+/).every(n=>r.test(n))}return!1}function E4(e){return Array.isArray(e)||e===null?!1:typeof e=="object"?e.type!==S.Fragment:!1}function Da(e){const r=S.createContext(null);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>{const n=S.useContext(r);if(n===null)throw new Error(e);return n}]}function Bm(e=null){const r=S.createContext(e);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>S.useContext(r)]}function Sne(e,r){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(r);return`${e}-${n}`}}function j0(e,r){let n=e;for(;(n=n.parentElement)&&!n.matches(r););return n}function Uet(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].disabled)return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].disabled)return o}return e}function Wet(e,r,n){for(let o=e+1;o{n?.(s);const c=Array.from(j0(s.currentTarget,e)?.querySelectorAll(r)||[]).filter(v=>Get(s.currentTarget,v,e)),d=c.findIndex(v=>s.currentTarget===v),u=Wet(d,c,o),p=Uet(d,c,o),f=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 Yet={app:100,modal:200,popover:300,overlay:400,max:9999};function yl(e){return Yet[e]}const Xet=()=>{};function Zet(e,r={active:!0}){return typeof e!="function"||!r.active?r.onKeyDown||Xet:n=>{n.key==="Escape"&&(e(n),r.onTrigger?.())}}function Qt(e,r="size",n=!0){if(e!==void 0)return _ne(e)?n?Pe(e):e:`var(--${r}-${e})`}function ro(e){return Qt(e,"mantine-spacing")}function hn(e){return e===void 0?"var(--mantine-radius-default)":Qt(e,"mantine-radius")}function Ro(e){return Qt(e,"mantine-font-size")}function Ket(e){return Qt(e,"mantine-line-height",!1)}function PR(e){if(e)return Qt(e,"mantine-shadow",!1)}function Tn(e,r){return n=>{e?.(n),r?.(n)}}function Qet(e,r){return e in r?S4(r[e]):S4(e)}function BR(e,r){const n=e.map(o=>({value:o,px:Qet(o,r)}));return n.sort((o,a)=>o.px-a.px),n}function vl(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function Im(e,r,n){return r===void 0&&n===void 0?e:r!==void 0&&n===void 0?Math.max(e,r):Math.min(r===void 0&&n!==void 0?e:Math.max(e,r),n)}function IR(e="mantine-"){return`${e}${Math.random().toString(36).slice(2,11)}`}function Jet(e,r){if(e===r||Number.isNaN(e)&&Number.isNaN(r))return!0;if(!(e instanceof Object)||!(r instanceof Object))return!1;const n=Object.keys(e),{length:o}=n;if(o!==Object.keys(r).length)return!1;for(let a=0;a{r.current=e}),S.useMemo(()=>((...n)=>r.current?.(...n)),[])}function C4(e,r){const{delay:n,flushOnUnmount:o,leading:a}=typeof r=="number"?{delay:r,flushOnUnmount:!1,leading:!1}:r,i=Np(e),l=S.useRef(0),s=S.useMemo(()=>{const c=Object.assign((...d)=>{window.clearTimeout(l.current);const u=c._isFirstCall;c._isFirstCall=!1;function p(){window.clearTimeout(l.current),l.current=0,c._isFirstCall=!0}if(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 ett=["mousedown","touchstart"];function Ene(e,r,n){const o=S.useRef(null),a=r||ett;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 ttt(e,r){try{return e.addEventListener("change",r),()=>e.removeEventListener("change",r)}catch{return e.addListener(r),()=>e.removeListener(r)}}function rtt(e,r){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function ntt(e,r,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[o,a]=S.useState(n?r:rtt(e));return S.useEffect(()=>{try{const i=window.matchMedia(e);return a(i.matches),ttt(i,l=>a(l.matches))}catch{return}},[e]),o||!1}const $4=typeof document<"u"?S.useLayoutEffect:S.useEffect;function Om(e,r){const n=S.useRef(!1);S.useEffect(()=>()=>{n.current=!1},[]),S.useEffect(()=>{if(n.current)return e();n.current=!0},r)}function Cne({opened:e,shouldReturnFocus:r=!0}){const n=S.useRef(null),o=()=>{n.current&&"focus"in n.current&&typeof n.current.focus=="function"&&n.current?.focus({preventScroll:!0})};return Om(()=>{let 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 ott=/input|select|textarea|button|object/,$ne="a, input, select, textarea, button, object, [tabindex]";function att(e){return e.style.display==="none"}function itt(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(att(r))return!1;r=r.parentNode}return!0}function zne(e){let r=e.getAttribute("tabindex");return r===null&&(r=void 0),parseInt(r,10)}function OR(e){const r=e.nodeName.toLowerCase(),n=!Number.isNaN(zne(e));return(ott.test(r)&&!e.disabled||e instanceof HTMLAnchorElement&&e.href||n)&&itt(e)}function Rne(e){const r=zne(e);return(Number.isNaN(r)||r>=0)&&OR(e)}function ltt(e){return Array.from(e.querySelectorAll($ne)).filter(Rne)}function stt(e,r){const n=ltt(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 ctt(e=!0){const r=S.useRef(null),n=a=>{let i=a.querySelector("[data-autofocus]");if(!i){const l=Array.from(a.querySelectorAll($ne));i=l.find(Rne)||l.find(OR)||null,!i&&OR(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&&stt(r.current,i)};return document.addEventListener("keydown",a),()=>document.removeEventListener("keydown",a)},[e]),o}const dtt=Kr.useId||(()=>{});function utt(){const e=dtt();return e?`mantine-${e.replace(/:/g,"")}`:""}function bl(e){const r=utt(),[n,o]=S.useState(r);return $4(()=>{o(IR())},[]),typeof e=="string"?e:typeof window>"u"?r:n}function ptt(e,r,n){S.useEffect(()=>(window.addEventListener(e,r,n),()=>window.removeEventListener(e,r,n)),[e,r])}function LR(e,r){if(typeof e=="function")return e(r);typeof e=="object"&&e!==null&&"current"in e&&(e.current=r)}function Tne(...e){const r=new Map;return n=>{if(e.forEach(o=>{const a=LR(o,n);a&&r.set(o,a)}),r.size>0)return()=>{e.forEach(o=>{const a=r.get(o);a&&typeof a=="function"?a():LR(o,null)}),r.clear()}}}function on(...e){return S.useCallback(Tne(...e),e)}function htt(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 T=Im((_-z.left)/z.width,0,1);e({x:n==="ltr"?T:1-T,y:Im(($-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 qd({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 FR(e,r){return ntt("(prefers-reduced-motion: reduce)",e,r)}function ftt(e,r){if(!e||!r)return!1;if(e===r)return!0;if(e.length!==r.length)return!1;for(let n=0;n{o(s=>s||(r.onOpen?.(),!0))},[r.onOpen]),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 vtt(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 btt(e){const r=S.useRef(void 0);return S.useEffect(()=>{r.current=e},[e]),r.current}function xtt(e,r,n){const o=S.useRef(null),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 wtt(){const[e,r]=S.useState(!1);return S.useEffect(()=>r(!0),[]),e}function ktt(){return typeof process<"u"&&process.env?"production":"development"}function jne(e){const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const a=e(...n);return r.set(o,a),a}}function Ane(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 T4({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||_tt);return Stt(a)}function j4({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 Ett=S.createContext(null);function Pp(){const e=S.useContext(Ett);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function Ctt(){return Pp().classNamesPrefix}function $tt(){return Pp().getStyleNonce}function ztt(){return Pp().withStaticClasses}function Rtt(){return Pp().headless}function Ttt(){return Pp().stylesTransform?.sx}function jtt(){return Pp().stylesTransform?.styles}function A4(){return Pp().env||"default"}function Att(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function Dtt(e){let r=e.replace("#","");if(r.length===3){const l=r.split("");r=[l[0],l[0],l[1],l[1],l[2],l[2]].join("")}if(r.length===8){const l=parseInt(r.slice(6,8),16)/255;return{r:parseInt(r.slice(0,2),16),g:parseInt(r.slice(2,4),16),b:parseInt(r.slice(4,6),16),a:l}}const n=parseInt(r,16),o=n>>16&255,a=n>>8&255,i=n&255;return{r:o,g:a,b:i,a:1}}function Mtt(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 Ntt(e){const r=/^hsla?\(\s*(\d+)\s*,\s*(\d+%)\s*,\s*(\d+%)\s*(,\s*(0?\.\d+|\d+(\.\d+)?))?\s*\)$/i,n=e.match(r);if(!n)return{r:0,g:0,b:0,a:1};const o=parseInt(n[1],10),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 Mne(e){return Att(e)?Dtt(e):e.startsWith("rgb")?Mtt(e):e.startsWith("hsl")?Ntt(e):{r:0,g:0,b:0,a:1}}function A0(e,r){return typeof e.primaryShade=="number"?e.primaryShade:r==="dark"?e.primaryShade.dark:e.primaryShade.light}function VR(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function Ptt(e){const r=e.match(/oklch\((.*?)%\s/);return r?parseFloat(r[1]):null}function Btt(e){if(e.startsWith("oklch("))return(Ptt(e)||0)/100;const{r,g:n,b:o}=Mne(e),a=r/255,i=n/255,l=o/255,s=VR(a),c=VR(i),d=VR(l);return .2126*s+.7152*c+.0722*d}function D0(e,r=.179){return e.startsWith("var(")?!1:Btt(e)>r}function Bp({color:e,theme:r,colorScheme:n}){if(typeof e!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof e}`);if(e==="bright")return{color:e,value:n==="dark"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:D0(n==="dark"?r.white:r.black,r.luminanceThreshold),variable:"--mantine-color-bright"};if(e==="dimmed")return{color:e,value:n==="dark"?r.colors.dark[2]:r.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:D0(n==="dark"?r.colors.dark[2]:r.colors.gray[6],r.luminanceThreshold),variable:"--mantine-color-dimmed"};if(e==="white"||e==="black")return{color:e,value:e==="white"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:D0(e==="white"?r.white:r.black,r.luminanceThreshold),variable:`--mantine-color-${e}`};const[o,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][A0(r,n||"light")];return{color:o,value:s,shade:i,isThemeColor:l,isLight:D0(s,r.luminanceThreshold),variable:a?`--mantine-color-${o}-${i}`:`--mantine-color-${o}-filled`}}return{color:e,value:e,isThemeColor:l,isLight:D0(e,r.luminanceThreshold),shade:i,variable:void 0}}function Uo(e,r){const n=Bp({color:e||r.primaryColor,theme:r});return n.variable?`var(${n.variable})`:e}function Itt(e,r){const n={from:e?.from||r.defaultGradient.from,to:e?.to||r.defaultGradient.to,deg:e?.deg??r.defaultGradient.deg??0},o=Uo(n.from,r),a=Uo(n.to,r);return`linear-gradient(${n.deg}deg, ${o} 0%, ${a} 100%)`}function Nne(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}=Mne(e);return`rgba(${n}, ${o}, ${a}, ${r})`}const Lm=Nne,Ott={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},Pne="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",Ltt={scale:1,fontSmoothing:!0,white:"#fff",black:"#000",colors:Ott,primaryShade:{light:6,dark:8},primaryColor:"blue",autoContrast:!1,luminanceThreshold:.3,fontFamily:Pne,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",cursorType:"default",defaultRadius:"sm",headings:{fontFamily:Pne,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:Pe(34),lineHeight:"1.3"},h2:{fontSize:Pe(26),lineHeight:"1.35"},h3:{fontSize:Pe(22),lineHeight:"1.4"},h4:{fontSize:Pe(18),lineHeight:"1.45"},h5:{fontSize:Pe(16),lineHeight:"1.5"},h6:{fontSize:Pe(14),lineHeight:"1.5"}}},fontSizes:{xs:Pe(12),sm:Pe(14),md:Pe(16),lg:Pe(18),xl:Pe(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:Pe(2),sm:Pe(4),md:Pe(8),lg:Pe(16),xl:Pe(32)},spacing:{xs:Pe(10),sm:Pe(12),md:Pe(16),lg:Pe(20),xl:Pe(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), 0 ${Pe(1)} ${Pe(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Pe(10)} ${Pe(15)} ${Pe(-5)}, rgba(0, 0, 0, 0.04) 0 ${Pe(7)} ${Pe(7)} ${Pe(-5)}`,md:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Pe(20)} ${Pe(25)} ${Pe(-5)}, rgba(0, 0, 0, 0.04) 0 ${Pe(10)} ${Pe(10)} ${Pe(-5)}`,lg:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Pe(28)} ${Pe(23)} ${Pe(-7)}, rgba(0, 0, 0, 0.04) 0 ${Pe(12)} ${Pe(12)} ${Pe(-7)}`,xl:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Pe(36)} ${Pe(28)} ${Pe(-7)}, rgba(0, 0, 0, 0.04) 0 ${Pe(17)} ${Pe(17)} ${Pe(-7)}`}},Ftt=S.createContext(null);function uo(){const e=S.useContext(Ftt);if(!e)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return e}function qR({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n:r.autoContrast)&&Bp({color:e||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function Bne(e,r){return qR({color:e.colors[e.primaryColor][A0(e,r)],theme:e,autoContrast:null})}function D4({theme:e,color:r,colorScheme:n,name:o=r,withColorValues:a=!0}){if(!e.colors[r])return{};if(n==="light"){const s=A0(e,"light"),c={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-filled)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${s===9?8:s+1})`,[`--mantine-color-${o}-light`]:Lm(e.colors[r][s],.1),[`--mantine-color-${o}-light-hover`]:Lm(e.colors[r][s],.12),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline-hover`]:Lm(e.colors[r][s],.05)};return 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=A0(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`]:Lm(e.colors[r][Math.max(0,i-2)],.15),[`--mantine-color-${o}-light-hover`]:Lm(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`]:Lm(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 Vtt(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function Fm(e,r,n){zo(r).forEach(o=>Object.assign(e,{[`--mantine-${n}-${o}`]:r[o]}))}(e=>{const r=A0(e,"light"),n=e.defaultRadius in e.radius?e.radius[e.defaultRadius]:Pe(e.defaultRadius),o={variables:{"--mantine-z-index-app":"100","--mantine-z-index-modal":"200","--mantine-z-index-popover":"300","--mantine-z-index-overlay":"400","--mantine-z-index-max":"9999","--mantine-scale":e.scale.toString(),"--mantine-cursor-type":e.cursorType,"--mantine-webkit-font-smoothing":e.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":e.fontSmoothing?"grayscale":"unset","--mantine-color-white":e.white,"--mantine-color-black":e.black,"--mantine-line-height":e.lineHeights.md,"--mantine-font-family":e.fontFamily,"--mantine-font-family-monospace":e.fontFamilyMonospace,"--mantine-font-family-headings":e.headings.fontFamily,"--mantine-heading-font-weight":e.headings.fontWeight,"--mantine-heading-text-wrap":e.headings.textWrap,"--mantine-radius-default":n,"--mantine-primary-color-filled":`var(--mantine-color-${e.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${e.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${e.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${e.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${e.primaryColor}-light-color)`},light:{"--mantine-color-scheme":"light","--mantine-primary-color-contrast":Bne(e,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":e.black,"--mantine-color-body":e.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-${r})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)","--mantine-color-disabled":"var(--mantine-color-gray-2)","--mantine-color-disabled-color":"var(--mantine-color-gray-5)","--mantine-color-disabled-border":"var(--mantine-color-gray-3)"},dark:{"--mantine-color-scheme":"dark","--mantine-primary-color-contrast":Bne(e,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)","--mantine-color-disabled":"var(--mantine-color-dark-6)","--mantine-color-disabled-color":"var(--mantine-color-dark-3)","--mantine-color-disabled-border":"var(--mantine-color-dark-4)"}};Fm(o.variables,e.breakpoints,"breakpoint"),Fm(o.variables,e.spacing,"spacing"),Fm(o.variables,e.fontSizes,"font-size"),Fm(o.variables,e.lineHeights,"line-height"),Fm(o.variables,e.shadows,"shadow"),Fm(o.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((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(Vtt(l)){Object.assign(o.light,D4({theme:e,name:l.name,color:l.light,colorScheme:"light",withColorValues:!0})),Object.assign(o.dark,D4({theme:e,name:l.name,color:l.dark,colorScheme:"dark",withColorValues:!0}));return}l.forEach((s,c)=>{o.variables[`--mantine-color-${i}-${c}`]=s}),Object.assign(o.light,D4({theme:e,color:i,colorScheme:"light",withColorValues:!1})),Object.assign(o.dark,D4({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})(Ltt);function HR({classNames:e,styles:r,props:n,stylesCtx:o}){const a=uo();return{resolvedClassNames:T4({theme:a,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:j4({theme:a,styles:r,props:n,stylesCtx:o||void 0})}}const qtt={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function Htt({theme:e,options:r,unstyled:n}){return no(r?.focusable&&!n&&(e.focusClassName||qtt[e.focusRing]),r?.active&&!n&&e.activeClassName)}function Utt({selector:e,stylesCtx:r,options:n,props:o,theme:a}){return T4({theme:a,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function Ine({selector:e,stylesCtx:r,theme:n,classNames:o,props:a}){return T4({theme:n,classNames:o,props:a,stylesCtx:r})[e]}function Wtt({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function Gtt({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function Ytt({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(a=>`${r}-${a}-${n}`)}function Xtt({themeName:e,theme:r,selector:n,props:o,stylesCtx:a}){return e.map(i=>T4({theme:r,classNames:r.components[i]?.classNames,props:o,stylesCtx:a})?.[n])}function Ztt({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function Ktt({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(Htt({theme:e,options:r,unstyled:s||g}),Xtt({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),Ztt({options:r,classes:l,selector:o,unstyled:s}),Ine({selector:o,stylesCtx:p,theme:e,classNames:i,props:u}),Ine({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),Utt({selector:o,stylesCtx:p,options:r,props:u,theme:e}),Wtt({rootSelector:d,selector:o,className:c}),Gtt({selector:o,classes:l,unstyled:s||g}),f&&!g&&Ytt({themeName:n,classNamesPrefix:a,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function Qtt({theme:e,themeName:r,props:n,stylesCtx:o,selector:a}){return r.map(i=>j4({theme:e,styles:e.components[i]?.styles,props:n,stylesCtx:o})[a]).reduce((i,l)=>({...i,...l}),{})}function UR({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...UR({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function Jtt(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...Vd(n[o])}}),r),{})}function ert({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:a,selector:i,themeName:l,headless:s}){return Jtt([s?{}:r?.(n,o,a),...l.map(c=>n.components?.[c]?.vars?.(n,o,a)),e?.(n,o,a)])?.[i]}function trt({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&&Qtt({theme:e,themeName:r,props:a,stylesCtx:i,selector:n}),...!f&&j4({theme:e,styles:s,props:a,stylesCtx:i})[n],...!f&&j4({theme:e,styles:o?.styles,props:o?.props||a,stylesCtx:i})[n],...ert({theme:e,props:a,stylesCtx:i,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?UR({style:c,theme:e}):null,...UR({style:o?.style,theme:e})}}function rrt({props:e,stylesCtx:r,themeName:n}){const o=uo(),a=jtt()?.();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=Ctt(),w=ztt(),x=Rtt(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=rrt({props:n,stylesCtx:o,themeName:k});return($,z)=>({className:Ktt({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:trt({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 nrt(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,...Vd(n)}}function WR(e){return zo(e).reduce((r,n)=>e[n]!==void 0?`${r}${qet(n)}:${e[n]};`:r,"").trim()}function ort({selector:e,styles:r,media:n,container:o}){const a=r?WR(r):"",i=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${WR(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${WR(s.styles)}}}`):[];return`${a?`${e}{${a}}`:""}${i.join("")}${l.join("")}`.trim()}function Vm(e){const r=$tt();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:ort(e)}})}function GR(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:T,opacity:A,ff:R,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:O,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:Vd({m:r,mx:n,my:o,mt: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:T,opacity:A,ff:R,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:O,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const art={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 YR(e,r){const n=Bp({color:e,theme:r});return n.color==="dimmed"?"var(--mantine-color-dimmed)":n.color==="bright"?"var(--mantine-color-bright)":n.variable?`var(${n.variable})`:n.color}function irt(e,r){const n=Bp({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:YR(e,r)}function lrt(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+=` ${YR(a.join(" "),r)}`),i.trim()}return e}const One={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function srt(e){return typeof e=="string"&&e in One?One[e]:e}const crt=["h1","h2","h3","h4","h5","h6"];function drt(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&crt.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?Pe(e):e}function urt(e){return e}const prt=["h1","h2","h3","h4","h5","h6"];function hrt(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&prt.includes(e)?`var(--mantine-${e}-line-height)`:e}function frt(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?Pe(e):e}function mrt(e){return typeof e=="number"?Pe(e):e}function grt(e,r){if(typeof e=="number")return Pe(e);if(typeof e=="string"){const n=e.replace("-","");if(!(n in r.spacing))return Pe(e);const o=`--mantine-spacing-${n}`;return e.startsWith("-")?`calc(var(${o}) * -1)`:`var(${o})`}return e}const XR={color:YR,textColor:irt,fontSize:drt,spacing:grt,radius:frt,identity:urt,size:mrt,lineHeight:hrt,fontFamily:srt,border:lrt};function Lne(e){return e.replace("(min-width: ","").replace("em)","")}function yrt({media:e,...r}){const n=Object.keys(e).sort((o,a)=>Number(Lne(o))-Number(Lne(a))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function vrt(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function brt(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function xrt(e){return typeof e=="object"&&e!==null?zo(e).filter(r=>r!=="base"):[]}function wrt(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function Fne({styleProps:e,data:r,theme:n}){return yrt(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=brt(e[a]);if(!vrt(e[a]))return l.forEach(d=>{o.inlineStyles[d]=XR[i.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=xrt(e[a]);return l.forEach(d=>{s!=null&&(o.styles[d]=XR[i.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:XR[i.type](wrt(e[a],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function M0(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function ZR(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...ZR(o,r)}),{}):typeof e=="function"?e(r):e??{}}function Vne(e){return e.startsWith("data-")?e:`data-${e}`}function krt(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[Vne(n)]=e[n]),r},{})}function qne(e){return e?typeof e=="string"?{[Vne(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...qne(n)}),{}):krt(e):null}function KR(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...KR(o,r)}),{}):typeof e=="function"?e(r):e??{}}function _rt({theme:e,style:r,vars:n,styleProps:o}){const a=KR(r,e),i=KR(n,e);return{...a,...i,...o}}const Hne=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}=GR(g),_=Ttt()?.()?.(k.sx),$=M0(),z=Fne({styleProps:k,theme:w,data:art}),T={ref:v,style:_rt({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":_ne(l)?void 0:l||void 0,size:f,...qne(i),...C};return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(Vm,{selector:`.${$}`,styles:z.styles,media:z.media}),typeof p=="function"?p(T):y.jsx(x,{...T})]})});Hne.displayName="@mantine/core/Box";const Ae=Hne;function Une(e){return e}function We(e){const r=S.forwardRef(e);return r.extend=Une,r.withProps=n=>{const o=S.forwardRef((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=Une,r}const Srt=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function gc(){return S.useContext(Srt)}function Ert(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function QR(e){return e?.current?e.current.scrollHeight:"auto"}const M4=typeof window<"u"&&window.requestAnimationFrame,Wne=0,Crt=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function $rt({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:a=!1}){const i=S.useRef(null),l=Crt(a),[s,c]=S.useState(o?{}:l),d=v=>{Vi.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||Ert(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}Om(()=>{typeof M4=="function"&&M4(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),M4(()=>{const v=QR(i);u({...p(v),height:v})})}:()=>{const v=QR(i);u({...p(v),willChange:"height",height:v}),M4(()=>u({height:Wne,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==i.current||v.propertyName!=="height"))if(o){const w=QR(i);w===s.height?d({}):u({height:w}),n()}else s.height===Wne&&(d(l),n())};function g({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:Tne(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 zrt={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},Gne=We((e,r)=>{const{children:n,in:o,transitionDuration:a,transitionTimingFunction:i,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=Re("Collapse",zrt,e),p=uo(),f=FR(),g=p.respectReducedMotion&&f?0:a,v=$rt({opened:o,transitionDuration:g,transitionTimingFunction:i,onTransitionEnd:s,keepMounted:d});return g===0?o?y.jsx(Ae,{...u,children:n}):null:y.jsx(Ae,{...v({style:{opacity:o||!c?1:0,transition:c?`opacity ${g}ms ${i}`:"none",...ZR(l,p)},ref:r,...u}),children:n})});Gne.displayName="@mantine/core/Collapse";function N4(){return typeof window<"u"}function qm(e){return Yne(e)?(e.nodeName||"").toLowerCase():"#document"}function sa(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function ss(e){var r;return(r=(Yne(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function Yne(e){return N4()?e instanceof Node||e instanceof sa(e).Node:!1}function Mr(e){return N4()?e instanceof Element||e instanceof sa(e).Element:!1}function Ma(e){return N4()?e instanceof HTMLElement||e instanceof sa(e).HTMLElement:!1}function JR(e){return!N4()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof sa(e).ShadowRoot}const Rrt=new Set(["inline","contents"]);function N0(e){const{overflow:r,overflowX:n,overflowY:o,display:a}=_i(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!Rrt.has(a)}const Trt=new Set(["table","td","th"]);function jrt(e){return Trt.has(qm(e))}const Art=[":popover-open",":modal"];function P4(e){return Art.some(r=>{try{return e.matches(r)}catch{return!1}})}const Drt=["transform","translate","scale","rotate","perspective"],Mrt=["transform","translate","scale","rotate","perspective","filter"],Nrt=["paint","layout","strict","content"];function eT(e){const r=B4(),n=Mr(e)?_i(e):e;return Drt.some(o=>n[o]?n[o]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!r&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!r&&(n.filter?n.filter!=="none":!1)||Mrt.some(o=>(n.willChange||"").includes(o))||Nrt.some(o=>(n.contain||"").includes(o))}function Prt(e){let r=vc(e);for(;Ma(r)&&!yc(r);){if(eT(r))return r;if(P4(r))return null;r=vc(r)}return null}function B4(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const Brt=new Set(["html","body","#document"]);function yc(e){return Brt.has(qm(e))}function _i(e){return sa(e).getComputedStyle(e)}function I4(e){return Mr(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function vc(e){if(qm(e)==="html")return e;const r=e.assignedSlot||e.parentNode||JR(e)&&e.host||ss(e);return JR(r)?r.host:r}function Xne(e){const r=vc(e);return yc(r)?e.ownerDocument?e.ownerDocument.body:e.body:Ma(r)&&N0(r)?r:Xne(r)}function bc(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const a=Xne(e),i=a===((o=e.ownerDocument)==null?void 0:o.body),l=sa(a);if(i){const s=tT(l);return r.concat(l,l.visualViewport||[],N0(a)?a:[],s&&n?bc(s):[])}return r.concat(a,bc(a,[],n))}function tT(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const Irt=["top","right","bottom","left"],xl=Math.min,To=Math.max,O4=Math.round,L4=Math.floor,cs=e=>({x:e,y:e}),Ort={left:"right",right:"left",bottom:"top",top:"bottom"},Lrt={start:"end",end:"start"};function rT(e,r,n){return To(e,xl(r,n))}function ds(e,r){return typeof e=="function"?e(r):e}function wl(e){return e.split("-")[0]}function Hm(e){return e.split("-")[1]}function nT(e){return e==="x"?"y":"x"}function oT(e){return e==="y"?"height":"width"}const Frt=new Set(["top","bottom"]);function kl(e){return Frt.has(wl(e))?"y":"x"}function aT(e){return nT(kl(e))}function Vrt(e,r,n){n===void 0&&(n=!1);const o=Hm(e),a=aT(e),i=oT(a);let l=a==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[i]>r.floating[i]&&(l=F4(l)),[l,F4(l)]}function qrt(e){const r=F4(e);return[iT(e),r,iT(r)]}function iT(e){return e.replace(/start|end/g,r=>Lrt[r])}const Zne=["left","right"],Kne=["right","left"],Hrt=["top","bottom"],Urt=["bottom","top"];function Wrt(e,r,n){switch(e){case"top":case"bottom":return n?r?Kne:Zne:r?Zne:Kne;case"left":case"right":return r?Hrt:Urt;default:return[]}}function Grt(e,r,n,o){const a=Hm(e);let i=Wrt(wl(e),n==="start",o);return a&&(i=i.map(l=>l+"-"+a),r&&(i=i.concat(i.map(iT)))),i}function F4(e){return e.replace(/left|right|bottom|top/g,r=>Ort[r])}function Yrt(e){return{top:0,right:0,bottom:0,left:0,...e}}function lT(e){return typeof e!="number"?Yrt(e):{top:e,right:e,bottom:e,left:e}}function Um(e){const{x:r,y:n,width:o,height:a}=e;return{width:o,height:a,top:n,left:r,right:r+o,bottom:n+a,x:r,y:n}}function Xrt(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function Zrt(){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 Krt(){return/apple/i.test(navigator.vendor)}function Qrt(){return Xrt().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function Jrt(){return Zrt().includes("jsdom/")}const Qne="data-floating-ui-focusable",ent="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function Jne(e){let r=e.activeElement;for(;((n=r)==null||(n=n.shadowRoot)==null?void 0:n.activeElement)!=null;){var n;r=r.shadowRoot.activeElement}return r}function P0(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&JR(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function Wm(e){return"composedPath"in e?e.composedPath()[0]:e.target}function sT(e,r){if(r==null)return!1;if("composedPath"in e)return e.composedPath().includes(r);const n=e;return n.target!=null&&r.contains(n.target)}function tnt(e){return e.matches("html,body")}function Ip(e){return e?.ownerDocument||document}function rnt(e){return Ma(e)&&e.matches(ent)}function nnt(e){if(!e||Jrt())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function ont(e){return e?e.hasAttribute(Qne)?e:e.querySelector("["+Qne+"]")||e:null}function V4(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var a;return o.parentId===r&&(!n||((a=o.context)==null?void 0:a.open))}).flatMap(o=>[o,...V4(e,o.id,n)])}function ant(e){return"nativeEvent"in e}function cT(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var int=typeof document<"u",lnt=function(){},us=int?S.useLayoutEffect:lnt;const snt={...gb};function q4(e){const r=S.useRef(e);return us(()=>{r.current=e}),r}const cnt=snt.useInsertionEffect,dnt=cnt||(e=>e());function ps(e){const r=S.useRef(()=>{});return dnt(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),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}=eoe(d,o,c),f=o,g={},v=0;for(let w=0;w({name:"arrow",options:e,async fn(r){const{x:n,y:o,placement:a,rects:i,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=ds(e,r)||{};if(d==null)return{};const p=lT(u),f={x:n,y:o},g=aT(a),v=oT(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],T=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=T?T[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(T)))&&(A=s.floating[_]||i.floating[v]);const R=$/2-z/2,j=A/2-w[v]/2-1,I=xl(p[k],j),P=xl(p[C],j),L=I,H=A-w[v]-P,M=A/2-w[v]/2+R,V=rT(L,M,H),B=!c.arrow&&Hm(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!==kl(V))||I.every(F=>kl(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:M,overflows:I},reset:{placement:V}};let B=(L=I.filter(F=>F.overflows[0]<=0).sort((F,q)=>F.overflows[1]-q.overflows[1])[0])==null?void 0:L.placement;if(!B)switch(g){case"bestFit":{var H;const F=(H=I.filter(q=>{if(T){const G=kl(q.placement);return G===C||G==="y"}return!0}).map(q=>[q.placement,q.overflows.filter(G=>G>0).reduce((G,U)=>G+U,0)]).sort((q,G)=>q[1]-G[1])[0])==null?void 0:H[0];F&&(B=F);break}case"initialPlacement":B=s;break}if(a!==B)return{reset:{placement:B}}}return{}}}};function toe(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function roe(e){return Irt.some(r=>e[r]>=0)}const fnt=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...a}=ds(e,r);switch(o){case"referenceHidden":{const i=await B0(r,{...a,elementContext:"reference"}),l=toe(i,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:roe(l)}}}case"escaped":{const i=await B0(r,{...a,altBoundary:!0}),l=toe(i,n.floating);return{data:{escapedOffsets:l,escaped:roe(l)}}}default:return{}}}}};function noe(e){const r=xl(...e.map(i=>i.left)),n=xl(...e.map(i=>i.top)),o=To(...e.map(i=>i.right)),a=To(...e.map(i=>i.bottom));return{x:r,y:n,width:o-r,height:a-n}}function mnt(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=>Um(noe(a)))}const gnt=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}=ds(e,r),u=Array.from(await(i.getClientRects==null?void 0:i.getClientRects(o.reference))||[]),p=mnt(u),f=Um(noe(u)),g=lT(s);function v(){if(p.length===2&&p[0].left>p[1].right&&c!=null&&d!=null)return p.find(x=>c>x.left-g.left&&cx.top-g.top&&d=2){if(kl(n)==="y"){const I=p[0],P=p[p.length-1],L=wl(n)==="top",H=I.top,M=P.bottom,V=L?I.left:P.left,B=L?I.right:P.right,F=B-V,q=M-H;return{top:H,bottom:M,left:V,right:B,width:F,height:q,x:V,y:H}}const x=wl(n)==="left",k=To(...p.map(I=>I.right)),C=xl(...p.map(I=>I.left)),_=p.filter(I=>x?I.left===C:I.right===k),$=_[0].top,z=_[_.length-1].bottom,T=C,A=k,R=A-T,j=z-$;return{top:$,bottom:z,left:T,right:A,width:R,height:j,x:T,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}}:{}}}},ooe=new Set(["left","top"]);async function ynt(e,r){const{placement:n,platform:o,elements:a}=e,i=await(o.isRTL==null?void 0:o.isRTL(a.floating)),l=wl(n),s=Hm(n),c=kl(n)==="y",d=ooe.has(l)?-1:1,u=i&&c?-1:1,p=ds(r,e);let{mainAxis:f,crossAxis:g,alignmentAxis:v}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return s&&typeof v=="number"&&(g=s==="end"?v*-1:v),c?{x:g*u,y:f*d}:{x:f*d,y:g*u}}const vnt=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:a,y:i,placement:l,middlewareData:s}=r,c=await ynt(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:a+c.x,y:i+c.y,data:{...c,placement:l}}}}},bnt=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:a}=r,{mainAxis:i=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=ds(e,r),d={x:n,y:o},u=await B0(r,c),p=kl(wl(a)),f=nT(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=rT(C,g,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=rT(C,v,_)}const w=s.fn({...r,[f]:g,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:i,[p]:l}}}}}},xnt=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}=ds(e,r),u={x:n,y:o},p=kl(a),f=nT(p);let g=u[f],v=u[p];const w=ds(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=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",$=ooe.has(wl(a)),z=i.reference[p]-i.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),T=i.reference[p]+i.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vT&&(v=T)}return{[f]:g,[p]:v}}}},wnt=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:a,rects:i,platform:l,elements:s}=r,{apply:c=()=>{},...d}=ds(e,r),u=await B0(r,d),p=wl(a),f=Hm(a),g=kl(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,$=xl(w-u[x],C),z=xl(v-u[k],_),T=!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),T&&!f){const I=To(u.left,0),P=To(u.right,0),L=To(u.top,0),H=To(u.bottom,0);g?R=v-2*(I!==0||P!==0?I+P:To(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:To(u.top,u.bottom))}await c({...r,availableWidth:R,availableHeight:A});const j=await l.getDimensions(s.floating);return v!==j.width||w!==j.height?{reset:{rects:!0}}:{}}}};function aoe(e){const r=_i(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const a=Ma(e),i=a?e.offsetWidth:n,l=a?e.offsetHeight:o,s=O4(n)!==i||O4(o)!==l;return s&&(n=i,o=l),{width:n,height:o,$:s}}function dT(e){return Mr(e)?e:e.contextElement}function Gm(e){const r=dT(e);if(!Ma(r))return cs(1);const n=r.getBoundingClientRect(),{width:o,height:a,$:i}=aoe(r);let l=(i?O4(n.width):n.width)/o,s=(i?O4(n.height):n.height)/a;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const knt=cs(0);function ioe(e){const r=sa(e);return!B4()||!r.visualViewport?knt:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function _nt(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==sa(e)?!1:r}function Op(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const a=e.getBoundingClientRect(),i=dT(e);let l=cs(1);r&&(o?Mr(o)&&(l=Gm(o)):l=Gm(e));const s=_nt(i,n,o)?ioe(i):cs(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=sa(i),g=o&&Mr(o)?sa(o):o;let v=f,w=tT(v);for(;w&&o&&g!==v;){const x=Gm(w),k=w.getBoundingClientRect(),C=_i(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=sa(w),w=tT(v)}}return Um({width:u,height:p,x:c,y:d})}function H4(e,r){const n=I4(e).scrollLeft;return r?r.left+n:Op(ss(e)).left+n}function loe(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-H4(e,n),a=n.top+r.scrollTop;return{x:o,y:a}}function Snt(e){let{elements:r,rect:n,offsetParent:o,strategy:a}=e;const i=a==="fixed",l=ss(o),s=r?P4(r.floating):!1;if(o===l||s&&i)return n;let c={scrollLeft:0,scrollTop:0},d=cs(1);const u=cs(0),p=Ma(o);if((p||!p&&!i)&&((qm(o)!=="body"||N0(l))&&(c=I4(o)),Ma(o))){const g=Op(o);d=Gm(o),u.x=g.x+o.clientLeft,u.y=g.y+o.clientTop}const f=l&&!p&&!i?loe(l,c):cs(0);return{width:n.width*d.x,height:n.height*d.y,x:n.x*d.x-c.scrollLeft*d.x+u.x+f.x,y:n.y*d.y-c.scrollTop*d.y+u.y+f.y}}function Ent(e){return Array.from(e.getClientRects())}function Cnt(e){const r=ss(e),n=I4(e),o=e.ownerDocument.body,a=To(r.scrollWidth,r.clientWidth,o.scrollWidth,o.clientWidth),i=To(r.scrollHeight,r.clientHeight,o.scrollHeight,o.clientHeight);let l=-n.scrollLeft+H4(e);const s=-n.scrollTop;return _i(o).direction==="rtl"&&(l+=To(r.clientWidth,o.clientWidth)-a),{width:a,height:i,x:l,y:s}}const soe=25;function $nt(e,r){const n=sa(e),o=ss(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=B4();(!u||u&&r==="fixed")&&(s=a.offsetLeft,c=a.offsetTop)}const d=H4(o);if(d<=0){const u=o.ownerDocument,p=u.body,f=getComputedStyle(p),g=u.compatMode==="CSS1Compat"&&parseFloat(f.marginLeft)+parseFloat(f.marginRight)||0,v=Math.abs(o.clientWidth-p.clientWidth-g);v<=soe&&(i-=v)}else d<=soe&&(i+=d);return{width:i,height:l,x:s,y:c}}const znt=new Set(["absolute","fixed"]);function Rnt(e,r){const n=Op(e,!0,r==="fixed"),o=n.top+e.clientTop,a=n.left+e.clientLeft,i=Ma(e)?Gm(e):cs(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 coe(e,r,n){let o;if(r==="viewport")o=$nt(e,n);else if(r==="document")o=Cnt(ss(e));else if(Mr(r))o=Rnt(r,n);else{const a=ioe(e);o={x:r.x-a.x,y:r.y-a.y,width:r.width,height:r.height}}return Um(o)}function doe(e,r){const n=vc(e);return n===r||!Mr(n)||yc(n)?!1:_i(n).position==="fixed"||doe(n,r)}function Tnt(e,r){const n=r.get(e);if(n)return n;let o=bc(e,[],!1).filter(s=>Mr(s)&&qm(s)!=="body"),a=null;const i=_i(e).position==="fixed";let l=i?vc(e):e;for(;Mr(l)&&!yc(l);){const s=_i(l),c=eT(l);!c&&s.position==="fixed"&&(a=null),(i?!c&&!a:!c&&s.position==="static"&&a&&znt.has(a.position)||N0(l)&&!c&&doe(e,l))?o=o.filter(d=>d!==l):a=s,l=vc(l)}return r.set(e,o),o}function jnt(e){let{element:r,boundary:n,rootBoundary:o,strategy:a}=e;const i=[...n==="clippingAncestors"?P4(r)?[]:Tnt(r,this._c):[].concat(n),o],l=i[0],s=i.reduce((c,d)=>{const u=coe(r,d,a);return c.top=To(u.top,c.top),c.right=xl(u.right,c.right),c.bottom=xl(u.bottom,c.bottom),c.left=To(u.left,c.left),c},coe(r,l,a));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Ant(e){const{width:r,height:n}=aoe(e);return{width:r,height:n}}function Dnt(e,r,n){const o=Ma(r),a=ss(r),i=n==="fixed",l=Op(e,!0,i,r);let s={scrollLeft:0,scrollTop:0};const c=cs(0);function d(){c.x=H4(a)}if(o||!o&&!i)if((qm(r)!=="body"||N0(a))&&(s=I4(r)),o){const g=Op(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?loe(a,s):cs(0),p=l.left+s.scrollLeft-c.x-u.x,f=l.top+s.scrollTop-c.y-u.y;return{x:p,y:f,width:l.width,height:l.height}}function uT(e){return _i(e).position==="static"}function uoe(e,r){if(!Ma(e)||_i(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return ss(e)===n&&(n=n.ownerDocument.body),n}function poe(e,r){const n=sa(e);if(P4(e))return n;if(!Ma(e)){let a=vc(e);for(;a&&!yc(a);){if(Mr(a)&&!uT(a))return a;a=vc(a)}return n}let o=uoe(e,r);for(;o&&jrt(o)&&uT(o);)o=uoe(o,r);return o&&yc(o)&&uT(o)&&!eT(o)?n:o||Prt(e)||n}const Mnt=async function(e){const r=this.getOffsetParent||poe,n=this.getDimensions,o=await n(e.floating);return{reference:Dnt(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Nnt(e){return _i(e).direction==="rtl"}const Pnt={convertOffsetParentRelativeRectToViewportRelativeRect:Snt,getDocumentElement:ss,getClippingRect:jnt,getOffsetParent:poe,getElementRects:Mnt,getClientRects:Ent,getDimensions:Ant,getScale:Gm,isElement:Mr,isRTL:Nnt};function hoe(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function Bnt(e,r){let n=null,o;const a=ss(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=L4(p),w=L4(a.clientWidth-(u+f)),x=L4(a.clientHeight-(p+g)),k=L4(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:To(0,xl(1,c))||1};let _=!0;function $(z){const T=z[0].intersectionRatio;if(T!==c){if(!_)return l();T?l(!1,T):o=setTimeout(()=>{l(!1,1e-7)},1e3)}T===1&&!hoe(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:a.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),i}function pT(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=dT(e),u=a||i?[...d?bc(d):[],...bc(r)]:[];u.forEach(k=>{a&&k.addEventListener("scroll",n,{passive:!0}),i&&k.addEventListener("resize",n)});const p=d&&s?Bnt(d,n):null;let f=-1,g=null;l&&(g=new ResizeObserver(k=>{let[C]=k;C&&C.target===d&&g&&(g.unobserve(r),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var _;(_=g)==null||_.observe(r)})),n()}),d&&!c&&g.observe(d),g.observe(r));let v,w=c?Op(e):null;c&&x();function x(){const k=Op(e);w&&!hoe(w,k)&&n(),w=k,v=requestAnimationFrame(x)}return n(),()=>{var k;u.forEach(C=>{a&&C.removeEventListener("scroll",n),i&&C.removeEventListener("resize",n)}),p?.(),(k=g)==null||k.disconnect(),g=null,c&&cancelAnimationFrame(v)}}const Int=vnt,Ont=bnt,Lnt=hnt,Fnt=wnt,Vnt=fnt,foe=pnt,qnt=gnt,Hnt=xnt,Unt=(e,r,n)=>{const o=new Map,a={platform:Pnt,...n},i={...a.platform,_c:o};return unt(e,r,{...a,platform:i})};var Wnt=typeof document<"u",Gnt=function(){},U4=Wnt?S.useLayoutEffect:Gnt;function W4(e,r){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(typeof e=="function"&&e.toString()===r.toString())return!0;let n,o,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(!W4(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)&&!W4(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}function moe(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function goe(e,r){const n=moe(e);return Math.round(r*n)/n}function hT(e){const r=S.useRef(e);return U4(()=>{r.current=e}),r}function Ynt(e){e===void 0&&(e={});const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform: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);W4(f,o)||g(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==T.current&&(T.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=i||v,z=l||x,T=S.useRef(null),A=S.useRef(null),R=S.useRef(u),j=c!=null,I=hT(c),P=hT(a),L=hT(d),H=S.useCallback(()=>{if(!T.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};P.current&&(q.platform=P.current),Unt(T.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};M.current&&!W4(R.current,U)&&(R.current=U,Vi.flushSync(()=>{p(U)}))})},[f,r,n,P,L]);U4(()=>{d===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const M=S.useRef(!1);U4(()=>(M.current=!0,()=>{M.current=!1}),[]),U4(()=>{if($&&(T.current=$),z&&(A.current=z),$&&z){if(I.current)return I.current($,z,H);H()}},[$,z,H,I,j]);const V=S.useMemo(()=>({reference:T,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=goe(B.floating,u.x),U=goe(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...moe(B.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:G,top:U}},[n,s,B.floating,u.x,u.y]);return S.useMemo(()=>({...u,update:H,refs:V,elements:B,floatingStyles:F}),[u,H,V,B,F])}const Xnt=e=>{function r(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:o,padding:a}=typeof e=="function"?e(n):e;return o&&r(o)?o.current!=null?foe({element:o.current,padding:a}).fn(n):{}:o?foe({element:o,padding:a}).fn(n):{}}}},yoe=(e,r)=>({...Int(e),options:[e,r]}),fT=(e,r)=>({...Ont(e),options:[e,r]}),voe=(e,r)=>({...Hnt(e),options:[e,r]}),G4=(e,r)=>({...Lnt(e),options:[e,r]}),Znt=(e,r)=>({...Fnt(e),options:[e,r]}),Knt=(e,r)=>({...Vnt(e),options:[e,r]}),I0=(e,r)=>({...qnt(e),options:[e,r]}),boe=(e,r)=>({...Xnt(e),options:[e,r]});function xoe(e){const r=S.useRef(void 0),n=S.useCallback(o=>{const 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 Qnt="data-floating-ui-focusable",woe="active",koe="selected",Jnt={...gb};let _oe=!1,eot=0;const Soe=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+eot++;function tot(){const[e,r]=S.useState(()=>_oe?Soe():void 0);return us(()=>{e==null&&r(Soe())},[]),S.useEffect(()=>{_oe=!0},[]),e}const rot=Jnt.useId,Eoe=rot||tot;function not(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(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 oot=S.createContext(null),aot=S.createContext(null),mT=()=>{var e;return((e=S.useContext(oot))==null?void 0:e.id)||null},gT=()=>S.useContext(aot);function yT(e){return"data-floating-ui-"+e}function Si(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const Coe=yT("safe-polygon");function Y4(e,r,n){if(n&&!cT(n))return 0;if(typeof e=="number")return e;if(typeof e=="function"){const o=e();return typeof o=="number"?o:o?.[r]}return e?.[r]}function vT(e){return typeof e=="function"?e():e}function iot(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=gT(),v=mT(),w=q4(d),x=q4(c),k=q4(n),C=q4(p),_=S.useRef(),$=S.useRef(-1),z=S.useRef(),T=S.useRef(-1),A=S.useRef(!0),R=S.useRef(!1),j=S.useRef(()=>{}),I=S.useRef(!1),P=ps(()=>{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||(Si($),Si(T),A.current=!0,I.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=Ip(l.floating).documentElement;return q.addEventListener("mouseleave",F),()=>{q.removeEventListener("mouseleave",F)}},[l.floating,n,o,s,w,P]);const L=S.useCallback(function(F,q,G){q===void 0&&(q=!0),G===void 0&&(G="hover");const U=Y4(x.current,"close",_.current);U&&!z.current?(Si($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(Si($),o(!1,F,G))},[x,o]),H=ps(()=>{j.current(),z.current=void 0}),M=ps(()=>{if(R.current){const F=Ip(l.floating).body;F.style.pointerEvents="",F.removeAttribute(Coe),R.current=!1}}),V=ps(()=>a.current.openEvent?["click","mousedown"].includes(a.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(Z){if(Si($),A.current=!1,u&&!cT(_.current)||vT(C.current)>0&&!Y4(x.current,"open"))return;const O=Y4(x.current,"open",_.current);O?$.current=window.setTimeout(()=>{k.current||o(!0,Z,"hover")},O):n||o(!0,Z,"hover")}function q(Z){if(V()){M();return}j.current();const O=Ip(l.floating);if(Si(T),I.current=!1,w.current&&a.current.floatingContext){n||Si($),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;O.addEventListener("mousemove",W),j.current=()=>{O.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!P0(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(){Si($)}function Y(Z){V()||L(Z,!1)}if(Mr(l.domReference)){const Z=l.domReference,O=l.floating;return n&&Z.addEventListener("mouseleave",G),f&&Z.addEventListener("mousemove",F,{once:!0}),Z.addEventListener("mouseenter",F),Z.addEventListener("mouseleave",q),O&&(O.addEventListener("mouseleave",G),O.addEventListener("mouseenter",U),O.addEventListener("mouseleave",Y)),()=>{n&&Z.removeEventListener("mouseleave",G),f&&Z.removeEventListener("mousemove",F),Z.removeEventListener("mouseenter",F),Z.removeEventListener("mouseleave",q),O&&(O.removeEventListener("mouseleave",G),O.removeEventListener("mouseenter",U),O.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,M,o,n,k,g,x,w,a,V,C]),us(()=>{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=Ip(l.floating).body;U.setAttribute(Coe,"");const Y=l.domReference,Z=g==null||(q=g.nodesRef.current.find(O=>O.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]),us(()=>{n||(_.current=void 0,I.current=!1,H(),M())},[n,H,M]),S.useEffect(()=>()=>{H(),Si($),Si(T),M()},[s,l.domReference,H,M]);const B=S.useMemo(()=>{function F(q){_.current=q.pointerType}return{onPointerDown:F,onPointerEnter:F,onMouseMove(q){const{nativeEvent:G}=q;function U(){!A.current&&!k.current&&o(!0,G,"hover")}u&&!cT(_.current)||n||vT(C.current)===0||I.current&&q.movementX**2+q.movementY**2<2||(Si(T),_.current==="touch"?U():(I.current=!0,T.current=window.setTimeout(U,vT(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const bT=()=>{},$oe=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:bT,setState:bT,isInstantPhase:!1}),lot=()=>S.useContext($oe);function zoe(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 us(()=>{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($oe.Provider,{value:S.useMemo(()=>({...a,setState:i,setCurrentId:s}),[a,s]),children:r})}function sot(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:a}=e,{id:i,enabled:l=!0}=r,s=i??a,c=lot(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:g}=c;return us(()=>{l&&d&&(f({delay:{open:1,close:Y4(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),us(()=>{function v(){o(!1),f({delay:p,currentId:null})}if(l&&d&&!n&&d===s){if(g){const w=window.setTimeout(v,g);return()=>{clearTimeout(w)}}v()}},[l,n,f,d,s,o,p,g]),us(()=>{l&&(u===bT||!n||u(s))},[l,n,u,s]),c}const cot={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},dot={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},Roe=e=>{var r,n;return{escapeKey:typeof e=="boolean"?e:(r=e?.escapeKey)!=null?r:!1,outsidePress:typeof e=="boolean"?e:(n=e?.outsidePress)!=null?n:!0}};function uot(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements: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=gT(),x=ps(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=Roe(g),{escapeKey:z,outsidePress:T}=Roe(v),A=S.useRef(!1),R=ps(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?V4(w.nodesRef.current,B):[];if(!_&&(M.stopPropagation(),F.length>0)){let q=!0;if(F.forEach(G=>{var U;if((U=G.context)!=null&&U.open&&!G.context.dataRef.current.__escapeKeyBubbles){q=!1;return}}),!q)return}o(!1,ant(M)?M.nativeEvent:M,"escape-key")}),j=ps(M=>{var V;const B=()=>{var F;R(M),(F=Wm(M))==null||F.removeEventListener("keydown",B)};(V=Wm(M))==null||V.addEventListener("keydown",B)}),I=ps(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=Wm(M),G="["+yT("inert")+"]",U=Ip(a.floating).querySelectorAll(G);let Y=Mr(q)?q:null;for(;Y&&!yc(Y);){const K=vc(Y);if(yc(K)||!Mr(K))break;Y=K}if(U.length&&Mr(q)&&!tnt(q)&&!P0(q,a.floating)&&Array.from(U).every(K=>!P0(Y,K)))return;if(Ma(q)&&H){const K=yc(q),Q=_i(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,O=w&&V4(w.nodesRef.current,Z).some(K=>{var Q;return sT(M,(Q=K.context)==null?void 0:Q.elements.floating)});if(sT(M,a.floating)||sT(M,a.domReference)||O)return;const W=w?V4(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=ps(M=>{var V;const B=()=>{var F;I(M),(F=Wm(M))==null||F.removeEventListener(d,B)};(V=Wm(M))==null||V.addEventListener(d,B)});S.useEffect(()=>{if(!n||!l)return;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},B4()?5:0)}const q=Ip(a.floating);s&&(q.addEventListener("keydown",z?j:R,z),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,T?P:I,T);let G=[];return f&&(Mr(a.domReference)&&(G=bc(a.domReference)),Mr(a.floating)&&(G=G.concat(bc(a.floating))),!Mr(a.reference)&&a.reference&&a.reference.contextElement&&(G=G.concat(bc(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?j:R,z),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,T?P:I,T),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(M)}},[i,a,s,k,d,n,o,f,l,_,$,R,z,j,I,T,P]),S.useEffect(()=>{i.current.insideReactTree=!1},[i,k,d]);const L=S.useMemo(()=>({onKeyDown:R,...u&&{[cot[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},[dot[d]]:()=>{i.current.insideReactTree=!0}}),[R,d,i]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function pot(e){const{open:r=!1,onOpenChange:n,elements:o}=e,a=Eoe(),i=S.useRef({}),[l]=S.useState(()=>not()),s=mT()!=null,[c,d]=S.useState(o.reference),u=ps((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 xT(e){e===void 0&&(e={});const{nodeId:r}=e,n=pot({...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=gT();us(()=>{d&&(u.current=d)},[d]);const f=Ynt({...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 us(()=>{o.dataRef.current.floatingContext=k;const C=p?.nodesRef.current.find(_=>_.id===r);C&&(C.context=k)}),S.useMemo(()=>({...f,context:k,refs:w,elements:x}),[f,w,x,k])}function wT(){return Qrt()&&Krt()}function hot(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=sa(l.domReference);function v(){!n&&Ma(l.domReference)&&l.domReference===Jne(Ip(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return g.addEventListener("blur",v),wT()&&(g.addEventListener("keydown",w,!0),g.addEventListener("pointerdown",x,!0)),()=>{g.removeEventListener("blur",v),wT()&&(g.removeEventListener("keydown",w,!0),g.removeEventListener("pointerdown",x,!0))}},[l.domReference,n,s]),S.useEffect(()=>{if(!s)return;function g(v){let{reason:w}=v;(w==="reference-press"||w==="escape-key")&&(d.current=!0)}return a.on("openchange",g),()=>{a.off("openchange",g)}},[a,s]),S.useEffect(()=>()=>{Si(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(g){if(d.current)return;const v=Wm(g.nativeEvent);if(c&&Mr(v)){if(wT()&&!g.relatedTarget){if(!p.current&&!rnt(v))return}else if(!nnt(v))return}o(!0,g.nativeEvent,"focus")},onBlur(g){d.current=!1;const v=g.relatedTarget,w=g.nativeEvent,x=Mr(v)&&v.hasAttribute(yT("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=Jne(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||P0((k=i.current.floatingContext)==null?void 0:k.refs.floating.current,C)||P0(l.domReference,C)||x||o(!1,w,"focus")})}}),[i,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function kT(e,r,n){const o=new Map,a=n==="item";let i=e;if(a&&e){const{[woe]:l,[koe]:s,...c}=e;i=c}return{...n==="floating"&&{tabIndex:-1,[Qnt]:""},...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&&[woe,koe].includes(d)))if(d.indexOf("on")===0){if(o.has(d)||o.set(d,[]),typeof u=="function"){var p;(p=o.get(d))==null||p.push(u),l[d]=function(){for(var f,g=arguments.length,v=new Array(g),w=0;wx(...v)).find(x=>x!==void 0)}}}else l[d]=u}),l),{})}}function fot(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),a=S.useCallback(s=>kT(s,e,"reference"),r),i=S.useCallback(s=>kT(s,e,"floating"),n),l=S.useCallback(s=>kT(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:a,getFloatingProps:i,getItemProps:l}),[a,i,l])}const mot=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function got(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=Eoe(),u=((n=i.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=ont(i.floating))==null?void 0:k.id)||l},[i.floating,l]),f=(o=mot.get(c))!=null?o:c,g=mT()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]: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[yot,Ei]=Da("ScrollArea.Root component was not found in tree");function Ym(e,r){const n=Np(r);$4(()=>{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 vot=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=Ei(),[i,l]=S.useState(0),[s,c]=S.useState(0),d=!!(i&&s);return Ym(a.scrollbarX,()=>{const u=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(u),c(u)}),Ym(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}),bot=S.forwardRef((e,r)=>{const n=Ei(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(vot,{...e,ref:r}):null}),xot={scrollHideDelay:1e3,type:"hover"},Toe=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:a,getStyles:i,...l}=Re("ScrollAreaRoot",xot,e),[s,c]=S.useState(null),[d,u]=S.useState(null),[p,f]=S.useState(null),[g,v]=S.useState(null),[w,x]=S.useState(null),[k,C]=S.useState(0),[_,$]=S.useState(0),[z,T]=S.useState(!1),[A,R]=S.useState(!1),j=on(r,I=>c(I));return y.jsx(yot,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:g,onScrollbarXChange:v,scrollbarXEnabled:z,onScrollbarXEnabledChange:T,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:R,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:i},children:y.jsx(Ae,{...l,ref:j,__vars:{"--sa-corner-width":a!=="xy"?"0px":`${k}px`,"--sa-corner-height":a!=="xy"?"0px":`${_}px`}})})});Toe.displayName="@mantine/core/ScrollAreaRoot";function joe(e,r){const n=e/r;return Number.isNaN(n)?0:n}function X4(e){const r=joe(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function Aoe(e,r){return n=>{if(e[0]===e[1]||r[0]===r[1])return r[0];const o=(r[1]-r[0])/(e[1]-e[0]);return r[0]+o*(n-e[0])}}function wot(e,[r,n]){return Math.min(n,Math.max(r,e))}function Doe(e,r,n="ltr"){const o=X4(r),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=wot(e,c);return Aoe([0,l],[0,s])(d)}function kot(e,r,n,o="ltr"){const a=X4(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 Aoe([c,d],p)(e)}function Moe(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[_ot,Noe]=Da("ScrollAreaScrollbar was not found in tree"),Poe=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=Ei(),[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,$=Np(d),z=Np(s),T=C4(u,10),A=R=>{if(x.current){const j=R.clientX-x.current.left,I=R.clientY-x.current.top;c({x:j,y:I})}};return S.useEffect(()=>{const R=j=>{const I=j.target;g?.contains(I)&&$(j,_)};return document.addEventListener("wheel",R,{passive:!1}),()=>document.removeEventListener("wheel",R,{passive:!1})},[C,g,_,$]),S.useEffect(z,[n,z]),Ym(g,T),Ym(f.content,T),y.jsx(_ot,{value:{scrollbar:g,hasThumb:o,onThumbChange:Np(a),onThumbPointerUp:Np(i),onThumbPositionChange:z,onThumbPointerDown:Np(l)},children:y.jsx("div",{...p,ref:w,"data-mantine-scrollbar":!0,style:{position:"absolute",...p.style},onPointerDown:Lp(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:Lp(e.onPointerMove,A),onPointerUp:Lp(e.onPointerUp,R=>{const j=R.target;j.hasPointerCapture(R.pointerId)&&(R.preventDefault(),j.releasePointerCapture(R.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),Boe=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=Ei(),[s,c]=S.useState(),d=S.useRef(null),u=on(r,d,l.onScrollbarXChange);return S.useEffect(()=>{d.current&&c(getComputedStyle(d.current))},[d]),y.jsx(Poe,{"data-orientation":"horizontal",...i,ref:u,sizes:n,style:{...a,"--sa-thumb-width":`${X4(n)}px`},onThumbPointerDown:p=>e.onThumbPointerDown(p.x),onDragScroll:p=>e.onDragScroll(p.x),onWheelScroll:(p,f)=>{if(l.viewport){const g=l.viewport.scrollLeft+p.deltaX;e.onWheelScroll(g),Moe(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:d.current.clientWidth,paddingStart:Gd(s.paddingLeft),paddingEnd:Gd(s.paddingRight)}})}})});Boe.displayName="@mantine/core/ScrollAreaScrollbarX";const Ioe=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=Ei(),[s,c]=S.useState(),d=S.useRef(null),u=on(r,d,l.onScrollbarYChange);return S.useEffect(()=>{d.current&&c(window.getComputedStyle(d.current))},[]),y.jsx(Poe,{...i,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${X4(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),Moe(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:d.current.clientHeight,paddingStart:Gd(s.paddingTop),paddingEnd:Gd(s.paddingBottom)}})}})});Ioe.displayName="@mantine/core/ScrollAreaScrollbarY";const Z4=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:a}=gc(),i=Ei(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=joe(c.viewport,c.content),p={...o,sizes:c,onSizesChange:d,hasThumb:u>0&&u<1,onThumbChange:g=>{l.current=g},onThumbPointerUp:()=>{s.current=0},onThumbPointerDown:g=>{s.current=g}},f=(g,v)=>kot(g,s.current,c,v);return n==="horizontal"?y.jsx(Boe,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollLeft,v=Doe(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(Ioe,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollTop,v=Doe(g,c);c.scrollbar.size===0?l.current.style.setProperty("--thumb-opacity","0"):l.current.style.setProperty("--thumb-opacity","1"),l.current.style.transform=`translate3d(0, ${v}px, 0)`}},onWheelScroll:g=>{i.viewport&&(i.viewport.scrollTop=g)},onDragScroll:g=>{i.viewport&&(i.viewport.scrollTop=f(g))}}):null});Z4.displayName="@mantine/core/ScrollAreaScrollbarVisible";const _T=S.forwardRef((e,r)=>{const n=Ei(),{forceMount:o,...a}=e,[i,l]=S.useState(!1),s=e.orientation==="horizontal",c=C4(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,a=Ei(),[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(_T,{"data-state":i?"visible":"hidden",...o,ref:r}):null});Ooe.displayName="@mantine/core/ScrollAreaScrollbarHover";const Sot=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=Ei(),i=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=C4(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),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(Z4,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:Lp(e.onPointerEnter,()=>s("interacting")),onPointerLeave:Lp(e.onPointerLeave,()=>s("idle"))}):null}),ST=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=Ei(),{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(Ooe,{...o,ref:r,forceMount:n}):a.type==="scroll"?y.jsx(Sot,{...o,ref:r,forceMount:n}):a.type==="auto"?y.jsx(_T,{...o,ref:r,forceMount:n}):a.type==="always"?y.jsx(Z4,{...o,ref:r}):null});ST.displayName="@mantine/core/ScrollAreaScrollbar";function Eot(e,r=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},o=0;return(function 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 Loe=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=Ei(),i=Noe(),{onThumbPositionChange:l}=i,s=on(r,u=>i.onThumbChange(u)),c=S.useRef(void 0),d=C4(()=>{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=Eot(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:Lp(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:Lp(e.onPointerUp,i.onThumbPointerUp)})});Loe.displayName="@mantine/core/ScrollAreaThumb";const ET=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=Noe();return n||a.hasThumb?y.jsx(Loe,{ref:r,...o}):null});ET.displayName="@mantine/core/ScrollAreaThumb";const Foe=S.forwardRef(({children:e,style:r,...n},o)=>{const a=Ei(),i=on(o,a.onViewportChange);return y.jsx(Ae,{...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})})});Foe.displayName="@mantine/core/ScrollAreaViewport";var CT={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const Voe={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},Cot=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":Pe(r),"--scrollarea-over-scroll-behavior":n}}),Fp=We((e,r)=>{const n=Re("ScrollArea",Voe,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,...T}=n,[A,R]=S.useState(!1),[j,I]=S.useState(!1),[P,L]=S.useState(!1),H=dt({name:"ScrollArea",props:n,classes:CT,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:d,varsResolver:Cot}),M=S.useRef(null),V=xoe([g,M]);return S.useEffect(()=>{if(!M.current||x!=="present")return;const B=M.current,F=new ResizeObserver(()=>{const{scrollHeight:q,clientHeight:G,scrollWidth:U,clientWidth:Y}=B;I(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[M,x]),y.jsxs(Toe,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...T,children:[y.jsx(Foe,{...f,...H("viewport",{style:f?.style}),ref:V,"data-offset-scrollbars":x===!0?"xy":x||void 0,"data-scrollbars":k||void 0,"data-horizontal-hidden":x==="present"&&!P?"true":void 0,"data-vertical-hidden":x==="present"&&!j?"true":void 0,onScroll:B=>{f?.onScroll?.(B),v?.({x:B.currentTarget.scrollLeft,y:B.currentTarget.scrollTop});const{scrollTop:F,scrollHeight:q,clientHeight:G}=B.currentTarget;F-(q-G)>=-.6&&C?.(),F===0&&_?.()},children:w}),(k==="xy"||k==="x")&&y.jsx(ST,{...H("scrollbar"),orientation:"horizontal","data-hidden":u==="never"||x==="present"&&!P?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(ET,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(ST,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!j?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(ET,{...H("thumb")})}),y.jsx(bot,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});Fp.displayName="@mantine/core/ScrollArea";const $T=We((e,r)=>{const{children:n,classNames:o,styles: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",Voe,e),T=S.useRef(null),A=xoe([u,T]),[R,j]=S.useState(!1),I=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const P=T.current;if(!P)return;const L=()=>{const M=P.scrollHeight>P.clientHeight;M!==R&&(I.current?$?.(M):(I.current=!0,M&&$?.(!0)),j(M))};L();const H=new ResizeObserver(L);return H.observe(P),()=>H.disconnect()},[$,R]),y.jsx(Ae,{...z,ref:r,style:[{display:"flex",overflow:"hidden"},x],children:y.jsx(Ae,{style:{display:"flex",flexDirection:"column",flex:1,overflow:"hidden",...w==="y"&&{minWidth:0},...w==="x"&&{minHeight:0},...w==="xy"&&{minWidth:0,minHeight:0},...w===!1&&{minWidth:0,minHeight:0}},children:y.jsx(Fp,{classNames:o,styles: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})})})});Fp.classes=CT,$T.displayName="@mantine/core/ScrollAreaAutosize",$T.classes=CT,Fp.Autosize=$T;var qoe={root:"m_87cf2631"};const $ot={__staticSelector:"UnstyledButton"},hs=Un((e,r)=>{const n=Re("UnstyledButton",$ot,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:qoe,className:o,style:d,classNames:s,styles:c,unstyled:l,attributes:u});return y.jsx(Ae,{...f("root",{focusable:!0}),component:a,ref:r,type:a==="button"?"button":void 0,...p})});hs.classes=qoe,hs.displayName="@mantine/core/UnstyledButton";var Hoe={root:"m_515a97f8"};const zT=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:Hoe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:d});return y.jsx(Ae,{component:"span",ref:r,...p("root"),...u})});zT.classes=Hoe,zT.displayName="@mantine/core/VisuallyHidden";var Uoe={root:"m_1b7284a3"};const zot=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:hn(r),"--paper-shadow":PR(n)}}),K4=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:Uoe,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:zot});return y.jsx(Ae,{ref:r,mod:[{"data-with-border":c},g],...x("root"),variant:f,...w})});K4.classes=Uoe,K4.displayName="@mantine/core/Paper";function Woe(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function Goe(e,r,n,o,a){return e==="center"||o==="center"?{left:r}:e==="end"?{[a==="ltr"?"right":"left"]:n}:e==="start"?{[a==="ltr"?"left":"right"]:n}:{}}const Rot={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function Tot({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",[Rot[c]]:o},p=-r/2;return c==="left"?{...u,...Woe(d,l,n,a),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...Woe(d,l,n,a),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...Goe(d,i,n,a,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...Goe(d,i,n,a,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const Q4=S.forwardRef(({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,visible:i,arrowX:l,arrowY:s,style:c,...d},u)=>{const{dir:p}=gc();return i?y.jsx("div",{...d,ref:u,style:{...c,...Tot({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,dir:p,arrowX:l,arrowY:s})}}):null});Q4.displayName="@mantine/core/FloatingArrow";function Yoe(e,r){if(e==="rtl"&&(r.includes("right")||r.includes("left"))){const[n,o]=r.split("-"),a=n==="right"?"left":"right";return o===void 0?a:`${a}-${o}`}return r}var Xoe={root:"m_9814e45f"};const jot={zIndex:yl("modal")},Aot=(e,{gradient:r,color:n,backgroundOpacity:o,blur:a,radius:i,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&Nne(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()}}),Xm=Un((e,r)=>{const n=Re("Overlay",jot,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:Xoe,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:Aot});return y.jsx(Ae,{ref:r,...z("root"),mod:[{center:u,fixed:d},C],...$,children:p})});Xm.classes=Xoe,Xm.displayName="@mantine/core/Overlay";function RT(e){const r=document.createElement("div");return r.setAttribute("data-portal","true"),typeof e.className=="string"&&r.classList.add(...e.className.split(" ").filter(Boolean)),typeof e.style=="object"&&Object.assign(r.style,e.style),typeof e.id=="string"&&r.setAttribute("id",e.id),r}function Dot({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||RT(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const a=RT(n);return a.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(a),a}return RT(n)}const Mot={reuseTargetNode:!0},Zoe=We((e,r)=>{const{children:n,target:o,reuseTargetNode:a,...i}=Re("Portal",Mot,e),[l,s]=S.useState(!1),c=S.useRef(null);return $4(()=>(s(!0),c.current=Dot({target:o,reuseTargetNode:a,...i}),LR(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:Vi.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});Zoe.displayName="@mantine/core/Portal";const Vp=We(({withinPortal:e=!0,children:r,...n},o)=>A4()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(Zoe,{ref:o,...n,children:r}));Vp.displayName="@mantine/core/OptionalPortal";const O0=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),J4={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(30px)"},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-30px)"},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(30px)"},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-30px)"},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(-20px) skew(-10deg, -5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(20px) skew(-10deg, -5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(-5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...O0("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...O0("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...O0("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...O0("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...O0("top"),common:{transformOrigin:"top right"}}},Koe={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function Not({transition:e,state:r,duration:n,timingFunction:o}){const a={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in J4?{transitionProperty:J4[e].transitionProperty,...a,...J4[e].common,...J4[e][Koe[r]]}:{}:{transitionProperty:e.transitionProperty,...a,...e.common,...e[Koe[r]]}}function Pot({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:a,onExit:i,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=uo(),p=FR(),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,j=A?l:s,I=f?0:A?e:r;v(I),I===0?(typeof R=="function"&&R(),typeof j=="function"&&j(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{YN.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof R=="function"&&R(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof j=="function"&&j(),x(A?"entered":"exited")},I)})})},T=A=>{if($(),typeof(A?c:d)!="number"){z(A);return}C.current=window.setTimeout(()=>{z(A)},A?c:d)};return Om(()=>{T(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:g,transitionStatus:w,transitionTimingFunction:n||"ease"}}function _l({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:a,children:i,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const g=A4(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=Pot({mounted: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(Not({transition:r,duration:v,state:w,timingFunction:x}))})}_l.displayName="@mantine/core/Transition";const[Bot,Qoe]=Da("Popover component was not found in the tree");function ek({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const a=ctt(r),i=on(a,o),l=Wd(e);return l?S.cloneElement(l,{[n]:i}):e}function Joe(e){return y.jsx(zT,{tabIndex:-1,"data-autofocus":!0,...e})}ek.displayName="@mantine/core/FocusTrap",Joe.displayName="@mantine/core/FocusTrapInitialFocus",ek.InitialFocus=Joe;var eae={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const TT=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=Qoe(),g=Cne({opened:f.opened,shouldReturnFocus:f.returnFocus}),v=f.withRoles?{"aria-labelledby":f.getTargetId(),id:f.getDropdownId(),role:"dialog",tabIndex:-1}:{},w=on(r,f.floating);return f.disabled?null:y.jsx(Vp,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(_l,{mounted:f.opened,...f.transitionProps,transition:f.transitionProps?.transition||"fade",duration:f.transitionProps?.duration??150,keepMounted:f.keepMounted,exitDuration:typeof f.transitionProps?.exitDuration=="number"?f.transitionProps.exitDuration:f.transitionProps?.duration,children:x=>y.jsx(ek,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Ae,{...v,...p,variant:c,onKeyDownCapture:Zet(()=>{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(Q4,{ref:f.arrowRef,arrowX:f.arrowX,arrowY:f.arrowY,visible:f.withArrow,position:f.placement,arrowSize:f.arrowSize,arrowRadius:f.arrowRadius,arrowOffset:f.arrowOffset,arrowPosition:f.arrowPosition,...f.getStyles("arrow",{props:n,classNames:d,styles:u})})]})})})})});TT.classes=eae,TT.displayName="@mantine/core/PopoverDropdown";const Iot={refProp:"ref",popupType:"dialog"},tae=We((e,r)=>{const{children:n,refProp:o,popupType:a,...i}=Re("PopoverTarget",Iot,e),l=Wd(n);if(!l)throw new Error("Popover.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=i,c=Qoe(),d=on(c.reference,z4(l),r),u=c.withRoles?{"aria-haspopup":a,"aria-expanded":c.opened,"aria-controls":c.getDropdownId(),id:c.getTargetId()}:{},p=l.props;return S.cloneElement(l,{...s,...u,...c.targetProps,className:no(c.targetProps.className,s.className,p.className),[o]:d,...c.controlled?null:{onClick:()=>{c.onToggle(),p.onClick?.()}}})});tae.displayName="@mantine/core/PopoverTarget";function Oot(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function Lot(e,r,n){const o=Oot(e.middlewares),a=[yoe(e.offset),Knt()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&a.push(fT(typeof o.shift=="boolean"?{limiter:voe(),padding:5}:{limiter:voe(),padding:5,...o.shift})),o.flip&&a.push(typeof o.flip=="boolean"?G4():G4(o.flip)),o.inline&&a.push(typeof o.inline=="boolean"?I0():I0(o.inline)),a.push(boe({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&a.push(Znt({...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 Fot(e){const r=A4(),[n,o]=qd({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=xT({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:Lot(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:pT});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return pT(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),Om(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),Om(()=>{n!==a.current&&(n?e.onOpen?.():e.onClose?.()),a.current=n},[n,e.onClose,e.onOpen]),$4(()=>{let c=-1;return n&&(c=window.setTimeout(()=>e.setDropdownVisible(!0),4)),()=>{window.clearTimeout(c)}},[n,e.position]),{floating:s,controlled:typeof e.opened=="boolean",opened:n,onClose:i,onToggle:l}}const Vot={position:"bottom",offset:8,positionDependencies:[],transitionProps:{transition:"fade",duration:150},middlewares:{flip:!0,shift:!0,inline:!1},arrowSize:7,arrowOffset:5,arrowRadius:0,arrowPosition:"side",closeOnClickOutside:!0,withinPortal:!0,closeOnEscape:!0,trapFocus:!1,withRoles:!0,returnFocus:!1,withOverlay:!1,hideDetached:!0,clickOutsideEvents:["mousedown","touchstart"],zIndex:yl("popover"),__staticSelector:"Popover",width:"max-content"},qot=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:hn(r),"--popover-shadow":PR(n)}});function po(e){const r=Re("Popover",Vot,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:T,portalProps:A,closeOnEscape:R,clickOutsideEvents:j,trapFocus:I,onClose:P,onDismiss:L,onOpen:H,onChange:M,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:Z,returnFocus:O,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:eae,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:qot}),{resolvedStyles:je}=HR({classNames:_,styles:$,props:r}),[Be,Je]=S.useState(s??G??!1),st=S.useRef(o),Le=S.useRef(null),[St,Ve]=S.useState(null),[qe,Xe]=S.useState(null),{dir:It}=gc(),Et=A4(),be=bl(q),ke=Fot({middlewares:f,width:p,position:Yoe(It,o),offset:typeof 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});Ene(()=>{z&&(ke.onClose(),L?.())},j,[St,qe]);const Ye=S.useCallback(er=>{Ve(er),ke.floating.refs.setReference(er)},[ke.floating.refs.setReference]),yt=S.useCallback(er=>{Xe(er),ke.floating.refs.setFloating(er)},[ke.floating.refs.setFloating]),xt=S.useCallback(()=>{c?.onExited?.(),d?.(),Je(!1),ce||(st.current=o)},[c?.onExited,d,ce,o]),Tr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(Bot,{value:{returnFocus:O,disabled: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:Tr},width:p,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:I,withinPortal:T,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape: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:je,floatingStrategy:ae,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(_l,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(Vp,{withinPortal:T,children:y.jsx(Xm,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}po.Target=tae,po.Dropdown=TT,po.displayName="@mantine/core/Popover",po.extend=e=>e;var Sl={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const rae=S.forwardRef(({className:e,...r},n)=>y.jsxs(Ae,{component:"span",className:no(Sl.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:Sl.bar}),y.jsx("span",{className:Sl.bar}),y.jsx("span",{className:Sl.bar})]}));rae.displayName="@mantine/core/Bars";const nae=S.forwardRef(({className:e,...r},n)=>y.jsxs(Ae,{component:"span",className:no(Sl.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:Sl.dot}),y.jsx("span",{className:Sl.dot}),y.jsx("span",{className:Sl.dot})]}));nae.displayName="@mantine/core/Dots";const oae=S.forwardRef(({className:e,...r},n)=>y.jsx(Ae,{component:"span",className:no(Sl.ovalLoader,e),...r,ref:n}));oae.displayName="@mantine/core/Oval";const aae={bars:rae,oval:oae,dots:nae},Hot={loaders:aae,type:"oval"},Uot=(e,{size:r,color:n})=>({root:{"--loader-size":Qt(r,"loader-size"),"--loader-color":n?Uo(n,e):void 0}}),qp=We((e,r)=>{const n=Re("Loader",Hot,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:Sl,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:Uot});return v?y.jsx(Ae,{...k("root"),ref:r,...x,children:v}):y.jsx(Ae,{...k("root"),ref:r,component:f[i],variant:g,size:o,...x})});qp.defaultLoaders=aae,qp.classes=Sl,qp.displayName="@mantine/core/Loader";var Zm={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const iae={orientation:"horizontal"},Wot=(e,{borderWidth:r})=>({group:{"--ai-border-width":Pe(r)}}),jT=We((e,r)=>{const n=Re("ActionIconGroup",iae,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",iae,e),w=dt({name:"ActionIconGroup",props:n,classes:Zm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:Wot,rootSelector:"group"});return y.jsx(Ae,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});jT.classes=Zm,jT.displayName="@mantine/core/ActionIconGroup";const Got=(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}}},AT=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:Zm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:Got,rootSelector:"groupSection"});return y.jsx(Ae,{...w("groupSection"),ref:r,variant:d,...v})});AT.classes=Zm,AT.displayName="@mantine/core/ActionIconGroupSection";const Yot=(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}}},tk=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:T,...A}=n,R=dt({name:["ActionIcon",v],props:n,className:o,style:c,classes:Zm,classNames:l,styles:s,unstyled:a,attributes:T,vars:x,varsResolver:Yot});return y.jsxs(hs,{...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(_l,{mounted:d,transition:"slide-down",duration:150,children:j=>y.jsx(Ae,{component:"span",...R("loader",{style:j}),"aria-hidden":!0,children:y.jsx(qp,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Ae,{component:"span",mod:{loading:d},...R("icon"),children:k})]})});tk.classes=Zm,tk.displayName="@mantine/core/ActionIcon",tk.Group=jT,tk.GroupSection=AT;const lae=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"})}));lae.displayName="@mantine/core/CloseIcon";var sae={root:"m_86a44da5","root--subtle":"m_220c80f2"};const Xot={variant:"subtle"},Zot=(e,{size:r,radius:n,iconSize:o})=>({root:{"--cb-size":Qt(r,"cb-size"),"--cb-radius":n===void 0?void 0:hn(n),"--cb-icon-size":Pe(o)}}),Hp=Un((e,r)=>{const n=Re("CloseButton",Xot,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:sae,classNames:c,styles:u,unstyled:p,attributes:k,vars:i,varsResolver:Zot});return y.jsxs(hs,{ref:r,..._,unstyled:p,variant:v,disabled:g,mod:[{disabled:g||f},x],...$("root",{variant:v,active:!g&&!f}),children:[w||y.jsx(lae,{}),a]})});Hp.classes=sae,Hp.displayName="@mantine/core/CloseButton";function Kot(e){return S.Children.toArray(e).filter(Boolean)}var cae={root:"m_4081bf90"};const Qot={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},Jot=(e,{grow:r,preventGrowOverflow:n,gap:o,align: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}}),dae=We((e,r)=>{const n=Re("Group",Qot,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=Kot(c),T=z.length,A=ro(d??"md"),R={childWidth:`calc(${100/T}% - (${A} - ${A} / ${T}))`},j=dt({name:"Group",props:n,stylesCtx:R,className:a,style:i,classes:cae,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:Jot});return y.jsx(Ae,{...j("root"),ref:r,variant:x,mod:[{grow:g},C],size:k,...$,children:z})});dae.classes=cae,dae.displayName="@mantine/core/Group";const[eat,xc]=Da("ModalBase component was not found in tree");function tat({opened:e,transitionDuration:r}){const[n,o]=S.useState(e),a=S.useRef(-1),i=FR()?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 rat({id:e,transitionProps:r,opened:n,trapFocus:o,closeOnEscape:a,onClose:i,returnFocus:l}){const s=bl(e),[c,d]=S.useState(!1),[u,p]=S.useState(!1),f=typeof r?.duration=="number"?r?.duration:200,g=tat({opened:n,transitionDuration:f});return ptt("keydown",v=>{v.key==="Escape"&&a&&!v.isComposing&&n&&v.target?.getAttribute("data-mantine-stop-propagation")!=="true"&&i()},{capture:!0}),Cne({opened:n,shouldReturnFocus:o&&l}),{_id:s,titleMounted:c,bodyMounted:u,shouldLockScroll:g,setTitleMounted:d,setBodyMounted:p}}const DT=S.forwardRef(({keepMounted:e,opened:r,onClose:n,id:o,transitionProps: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},T)=>{const{_id:A,titleMounted:R,bodyMounted:j,shouldLockScroll:I,setTitleMounted:P,setBodyMounted:L}=rat({id:o,transitionProps:a,opened:r,trapFocus:s,closeOnEscape:c,onClose:n,returnFocus:d}),{key:H,...M}=$||{};return y.jsx(Vp,{...f,withinPortal:p,children:y.jsx(eat,{value:{opened:r,onClose:n,closeOnClickOutside:u,onExitTransitionEnd:i,onEnterTransitionEnd:l,transitionProps:{...a,keepMounted:e},getTitleId:()=>`${A}-title`,getBodyId:()=>`${A}-body`,titleMounted:R,bodyMounted:j,setTitleMounted:P,setBodyMounted:L,trapFocus:s,closeOnEscape:c,zIndex:w,unstyled:_},children:y.jsx(xne,{enabled:I&&g,...M,children:y.jsx(Ae,{ref:T,...z,__vars:{...C,"--mb-z-index":(w||yl("modal")).toString(),"--mb-shadow":PR(x),"--mb-padding":ro(k)},children:v})},H)})})});DT.displayName="@mantine/core/ModalBase";function nat(){const e=xc();return S.useEffect(()=>(e.setBodyMounted(!0),()=>e.setBodyMounted(!1)),[]),e.getBodyId()}var Km={title:"m_615af6c9",header:"m_b5489c3c",inner:"m_60c222c7",content:"m_fd1ab0aa",close:"m_606cb269",body:"m_5df29311"};const MT=S.forwardRef(({className:e,...r},n)=>{const o=nat(),a=xc();return y.jsx(Ae,{ref:n,...r,id:o,className:no({[Km.body]:!a.unstyled},e)})});MT.displayName="@mantine/core/ModalBaseBody";const uae=S.forwardRef(({className:e,onClick:r,...n},o)=>{const a=xc();return y.jsx(Hp,{ref:o,...n,onClick:i=>{a.onClose(),r?.(i)},className:no({[Km.close]:!a.unstyled},e),unstyled:a.unstyled})});uae.displayName="@mantine/core/ModalBaseCloseButton";const NT=S.forwardRef(({transitionProps:e,className:r,innerProps:n,onKeyDown:o,style:a,...i},l)=>{const s=xc();return y.jsx(_l,{mounted:s.opened,transition:"pop",...s.transitionProps,onExited:()=>{s.onExitTransitionEnd?.(),s.transitionProps?.onExited?.()},onEntered:()=>{s.onEnterTransitionEnd?.(),s.transitionProps?.onEntered?.()},...e,children:c=>y.jsx("div",{...n,className:no({[Km.inner]:!s.unstyled},n.className),children:y.jsx(ek,{active:s.opened&&s.trapFocus,innerRef:l,children:y.jsx(K4,{...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({[Km.content]:!s.unstyled},r),unstyled:s.unstyled,children:i.children})})})})});NT.displayName="@mantine/core/ModalBaseContent";const pae=S.forwardRef(({className:e,...r},n)=>{const o=xc();return y.jsx(Ae,{component:"header",ref:n,className:no({[Km.header]:!o.unstyled},e),...r})});pae.displayName="@mantine/core/ModalBaseHeader";const oat={duration:200,timingFunction:"ease",transition:"fade"};function aat(e){const r=xc();return{...oat,...r.transitionProps,...e}}const PT=S.forwardRef(({onClick:e,transitionProps:r,style:n,visible:o,...a},i)=>{const l=xc(),s=aat(r);return y.jsx(_l,{mounted:o!==void 0?o:l.opened,...s,transition:"fade",children:c=>y.jsx(Xm,{ref:i,fixed:!0,style:[n,c],zIndex:l.zIndex,unstyled:l.unstyled,onClick:d=>{e?.(d),l.closeOnClickOutside&&l.onClose()},...a})})});PT.displayName="@mantine/core/ModalBaseOverlay";function iat(){const e=xc();return S.useEffect(()=>(e.setTitleMounted(!0),()=>e.setTitleMounted(!1)),[]),e.getTitleId()}const hae=S.forwardRef(({className:e,...r},n)=>{const o=iat(),a=xc();return y.jsx(Ae,{component:"h2",ref:n,className:no({[Km.title]:!a.unstyled},e),...r,id:o})});hae.displayName="@mantine/core/ModalBaseTitle";function fae({children:e}){return y.jsx(y.Fragment,{children:e})}const[lat,sat]=Bm({size:"sm"}),mae=We((e,r)=>{const n=Re("InputClearButton",null,e),{size:o,variant:a,vars:i,classNames:l,styles:s,...c}=n,d=sat(),{resolvedClassNames:u,resolvedStyles:p}=HR({classNames:l,styles:s,props:n});return y.jsx(Hp,{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})});mae.displayName="@mantine/core/InputClearButton";const cat={xs:7,sm:8,md:10,lg:12,xl:15};function dat({__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:cat[a]},children:[i,n||o]}):n===null?null:n||i||o}const[uat,rk]=Bm({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var Ci={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 pat=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`}}),nk=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=rk(),x=dt({name:["InputWrapper",u],props:n,classes:Ci,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:pat}),k=p&&w?.getStyles||x;return y.jsx(Ae,{component:"p",ref:r,variant:g,size:d,...k("description",w?.getStyles?{className:a,style:i}:void 0),...v})});nk.classes=Ci,nk.displayName="@mantine/core/InputDescription";const hat=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`}}),ok=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:Ci,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:hat}),x=rk(),k=f&&x?.getStyles||w;return y.jsx(Ae,{component:"p",ref:r,variant:g,size:d,...k("error",x?.getStyles?{className:a,style:i}:void 0),...v})});ok.classes=Ci,ok.displayName="@mantine/core/InputError";const gae={labelElement:"label"},fat=(e,{size:r})=>({label:{"--input-label-size":Ro(r),"--input-asterisk-color":void 0}}),ak=We((e,r)=>{const n=Re("InputLabel",gae,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",gae,n),$=dt({name:["InputWrapper",w],props:n,classes:Ci,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:fat}),z=rk(),T=z?.getStyles||$;return y.jsxs(Ae,{...T("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",{...T("required"),"aria-hidden":!0,children:" *"})]})});ak.classes=Ci,ak.displayName="@mantine/core/InputLabel";const BT=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:Ci,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,rootSelector:"placeholder"});return y.jsx(Ae,{...w("placeholder"),mod:[{error:!!p},f],component:"span",variant:u,ref:r,...v})});BT.classes=Ci,BT.displayName="@mantine/core/InputPlaceholder";function mat(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 gat={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},yat=(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)})`}}),IT=We((e,r)=>{const n=Re("InputWrapper",gat,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:T,id:A,required:R,__stylesApiProps:j,mod:I,attributes:P,...L}=n,H=dt({name:["InputWrapper",p],props:j||n,classes:Ci,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:yat}),M={size:d,variant:u,__staticSelector:p},V=bl(A),B=typeof T=="boolean"?T:R,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,Z=`${U?F:""} ${Y?q:""}`,O=Z.trim().length>0?Z.trim():void 0,W=k?.id||`${V}-label`,K=v&&y.jsx(ak,{labelElement:$,id:W,htmlFor:G,required:B,...M,...k,children:v},"label"),Q=Y&&y.jsx(nk,{...C,...M,size:C?.size||M.size,id:C?.id||q,children:x},"description"),ae=y.jsx(S.Fragment,{children:f(z)},"input"),te=U&&S.createElement(ok,{..._,...M,size:_?.size||M.size,key:"error",id:_?.id||F},w),re=g.map(ue=>{switch(ue){case"label":return K;case"input":return ae;case"description":return Q;case"error":return te;default:return null}});return y.jsx(uat,{value:{getStyles:H,describedBy:O,inputId:G,labelId:W,...mat(g,{hasDescription:Y,hasError:U})},children:y.jsx(Ae,{ref:r,variant:u,size:d,mod:[{error:!!w},I],...H("root"),...L,children:re})})});IT.classes=Ci,IT.displayName="@mantine/core/InputWrapper";const vat={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},bat=(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}}),ca=Un((e,r)=>{const n=Re("Input",vat,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:T,variant:A,vars:R,pointer:j,multiline:I,radius:P,id:L,withAria:H,withErrorStyles:M,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:Z,rest:O}=GR(Y),W=rk(),K={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=dt({name:["Input",d],props:u||n,classes:Ci,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:K,rootSelector:"wrapper",vars:R,varsResolver:bat}),ae=H?{required:c,disabled:v,"aria-invalid":!!g,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=dat({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(lat,{value:{size:p||"sm"},children:y.jsxs(Ae,{...Q("wrapper"),...Z,...f,mod:[{error:!!g&&M,pointer:j,disabled:v,multiline:I,"data-with-right-section":!!te,"data-with-left-section":!!w},V],variant:A,size:p,children:[w&&y.jsx("div",{...x,"data-position":"left",...Q("section",{className:x?.className,style:x?.style}),children:w}),y.jsx(Ae,{component:"input",...O,...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=Ci,ca.Wrapper=IT,ca.Label=ak,ca.Error=ok,ca.Description=nk,ca.Placeholder=BT,ca.ClearButton=mae,ca.displayName="@mantine/core/Input";function xat(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:T,withAsterisk:A,variant:R,vars:j,mod:I,attributes:P,...L}=o,{styleProps:H,rest:M}=GR(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:T,withAsterisk:A,variant:R,id:C,mod:I,attributes:P,...k};return{...M,classNames:c,styles:d,unstyled:p,wrapperProps:{...V,...H},inputProps:{required:s,classNames:c,styles:d,unstyled:p,size:_,__staticSelector:f,__stylesApiProps:g||o,error:l,variant:R,id:C,attributes:P}}}const wat={__staticSelector:"InputBase",withAria:!0,size:"sm"},ik=Un((e,r)=>{const{inputProps:n,wrapperProps:o,...a}=xat("InputBase",wat,e);return y.jsx(ca.Wrapper,{...o,children:y.jsx(ca,{...n,...a,ref:r})})});ik.classes={...ca.classes,...ca.Wrapper.classes},ik.displayName="@mantine/core/InputBase";const kat={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 yae={root:"m_8bffd616"};const vae=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:yae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=uo(),$=M0(),z=Fne({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w},theme:_,data:kat});return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(Vm,{selector:`.${$}`,styles:z.styles,media:z.media}),y.jsx(Ae,{ref:r,...C("root",{className:$,style:Vd(z.inlineStyles)}),...k})]})});vae.classes=yae,vae.displayName="@mantine/core/Flex";function _at(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 Sat({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=Gd(w.borderTopWidth)+Gd(x.borderTopWidth),C=Gd(w.borderLeftWidth)+Gd(x.borderLeftWidth),_={top:g.top-v.top-k,left:g.left-v.left-C,width:g.width,height:g.height};n.current.style.transform=`translateY(${_.top}px) translateX(${_.left}px)`,n.current.style.width=`${_.width}px`,n.current.style.height=`${_.height}px`},u=()=>{window.clearTimeout(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=>{_at(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",g),()=>{r.removeEventListener("transitionend",g)}}},[r]),vtt(()=>{ktt()!=="test"&&l(!0)},20,{autoInvoke:!0}),xtt(g=>{g.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:i,hidden:s}}var bae={root:"m_96b553a6"};const Eat=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),OT=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:bae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Eat}),k=S.useRef(null),{initialized:C,hidden:_}=Sat({target:d,parent:u,ref:k,displayAfterTransitionEnd:g}),$=on(r,k);return!d||!u?null:y.jsx(Ae,{ref:$,mod:[{initialized:C,hidden:_},f],...x("root"),...w})});OT.displayName="@mantine/core/FloatingIndicator",OT.classes=bae;function Cat({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 LT({style:e,size:r=16,...n}){return y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...e,width:Pe(r),height:Pe(r),display:"block"},...n,children:y.jsx("path",{d:"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}LT.displayName="@mantine/core/AccordionChevron";var xae={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 $at=(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}}},wae=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,...T}=n,A=dt({name:"Alert",classes:xae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:$at}),R=bl(g),j=p&&`${R}-title`||void 0,I=`${R}-body`;return y.jsx(Ae,{id:R,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...T,"aria-describedby":f?I:void 0,"aria-labelledby":p?j:void 0,children:y.jsxs("div",{...A("wrapper"),children:[v&&y.jsx("div",{...A("icon"),children:v}),y.jsxs("div",{...A("body"),children:[p&&y.jsx("div",{...A("title"),"data-with-close-button":w||void 0,children:y.jsx("span",{id:j,...A("label"),children:p})}),f&&y.jsx("div",{id:I,...A("message"),"data-variant":C,children:f})]}),w&&y.jsx(Hp,{...A("closeButton"),onClick:x,variant:"transparent",size:16,iconSize:16,"aria-label":k,unstyled:s})]})})});wae.classes=xae,wae.displayName="@mantine/core/Alert";var kae={root:"m_b6d8b162"};function zat(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const Rat={inherit:!1},Tat=(e,{variant:r,lineClamp:n,gradient:o,size:a,color:i})=>({root:{"--text-fz":Ro(a),"--text-lh":Ket(a),"--text-gradient":r==="gradient"?Itt(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":i?Uo(i,e):void 0}}),L0=Un((e,r)=>{const n=Re("Text",Rat,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:kae,className:p,style:f,classNames:g,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:Tat});return y.jsx(Ae,{...z("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":zat(a),"data-line-clamp":typeof o=="number","data-inline":i,"data-inherit":l},k],size:C,...$})});L0.classes=kae,L0.displayName="@mantine/core/Text";var _ae={root:"m_849cf0da"};const jat={underline:"hover"},Sae=Un((e,r)=>{const{underline:n,className:o,unstyled:a,mod:i,...l}=Re("Anchor",jat,e);return y.jsx(L0,{component:"a",ref:r,className:no({[_ae.root]:!a},o),...l,mod:[{underline:n},i],__staticSelector:"Anchor",unstyled:a})});Sae.classes=_ae,Sae.displayName="@mantine/core/Anchor";function Eae(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=>Eae(r))}:e}function Aat(e){return e?e.map(r=>Eae(r)):[]}function Cae(e){return e.reduce((r,n)=>"group"in n?{...r,...Cae(n.items)}:(r[n.value]=n,r),{})}var Wo={dropdown:"m_88b62a41",search:"m_985517d8",options:"m_b2821a6e",option:"m_92253aa5",empty:"m_2530cd1d",header:"m_858f94bd",footer:"m_82b967cb",group:"m_254f3e4f",groupLabel:"m_2bb2e9e5",chevron:"m_2943220b",optionsDropdownOption:"m_390b5f4",optionsDropdownCheckIcon:"m_8ee53fc2",optionsDropdownCheckPlaceholder:"m_a530ee0a"};const Dat={error:null},Mat=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":Qt(r,"combobox-chevron-size"),"--combobox-chevron-color":n?Uo(n,e):void 0}}),FT=We((e,r)=>{const n=Re("ComboboxChevron",Dat,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:Wo,props:n,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:Mat,rootSelector:"chevron"});return y.jsx(Ae,{component:"svg",...f,...g("chevron"),size:o,viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",mod:["combobox-chevron",{error: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"})})});FT.classes=Wo,FT.displayName="@mantine/core/ComboboxChevron";const[Nat,$i]=Da("Combobox component was not found in tree"),$ae=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)}}));$ae.displayName="@mantine/core/ComboboxClearButton";const VT=We((e,r)=>{const{classNames:n,styles:o,className:a,style:i,hidden:l,...s}=Re("ComboboxDropdown",null,e),c=$i();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})})});VT.classes=Wo,VT.displayName="@mantine/core/ComboboxDropdown";const Pat={refProp:"ref"},zae=We((e,r)=>{const{children:n,refProp:o}=Re("ComboboxDropdownTarget",Pat,e);if($i(),!E4(n))throw new Error("Combobox.DropdownTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return y.jsx(po.Target,{ref:r,refProp:o,children:n})});zae.displayName="@mantine/core/ComboboxDropdownTarget";const qT=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("ComboboxEmpty",null,e),c=$i();return y.jsx(Ae,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:i,style:a}),...s})});qT.classes=Wo,qT.displayName="@mantine/core/ComboboxEmpty";function HT({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:a,autoComplete:i}){const l=$i(),[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 Bat={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},Rae=We((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Re("ComboboxEventsTarget",Bat,e),u=Wd(n);if(!u)throw new Error("Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=$i(),f=HT({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c});return S.cloneElement(u,{...f,...d,[o]:on(r,p.store.targetRef,z4(u))})});Rae.displayName="@mantine/core/ComboboxEventsTarget";const UT=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("ComboboxFooter",null,e),c=$i();return y.jsx(Ae,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});UT.classes=Wo,UT.displayName="@mantine/core/ComboboxFooter";const WT=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=$i(),f=bl(d);return y.jsxs(Ae,{ref:r,role:"group","aria-labelledby":c?f:void 0,...p.getStyles("group",{className:o,classNames:n,style:a,styles:i}),...u,children:[c&&y.jsx("div",{id:f,...p.getStyles("groupLabel",{classNames:n,styles:i}),children:c}),s]})});WT.classes=Wo,WT.displayName="@mantine/core/ComboboxGroup";const GT=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("ComboboxHeader",null,e),c=$i();return y.jsx(Ae,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});GT.classes=Wo,GT.displayName="@mantine/core/ComboboxHeader";function Tae({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}Tae.displayName="@mantine/core/ComboboxHiddenInput";const YT=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=$i(),C=S.useId(),_=d||C;return y.jsx(Ae,{...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?.($)}})});YT.classes=Wo,YT.displayName="@mantine/core/ComboboxOption";const XT=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=$i(),f=bl(s);return S.useEffect(()=>{p.store.setListId(f)},[f]),y.jsx(Ae,{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)}})});XT.classes=Wo,XT.displayName="@mantine/core/ComboboxOptions";const Iat={withAriaAttributes:!0,withKeyboardNavigation:!0},ZT=We((e,r)=>{const n=Re("ComboboxSearch",Iat,e),{classNames:o,styles:a,unstyled:i,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=$i(),g=f.getStyles("search"),v=HT({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(ca,{ref:on(r,f.store.searchRef),classNames:[{input:g.className},o],styles:[{input:g.style},a],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});ZT.classes=Wo,ZT.displayName="@mantine/core/ComboboxSearch";const Oat={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},jae=We((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Re("ComboboxTarget",Oat,e),u=Wd(n);if(!u)throw new Error("Combobox.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=$i(),f=HT({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c}),g=S.cloneElement(u,{...f,...d});return y.jsx(po.Target,{ref:on(r,p.store.targetRef),children:g})});jae.displayName="@mantine/core/ComboboxTarget";function Lat(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 Fat(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=Ud(f.current),F=R4(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=Ud(f.current),q=R4(`#${d.current}`,F),G=q?Hd("[data-combobox-option]",q):null;if(!G)return null;const U=B>=G.length?0:B<0?G.length-1:B;return u.current=U,G?.[U]&&!G[U].hasAttribute("data-combobox-disabled")?(_(),G[U].setAttribute("data-combobox-selected","true"),G[U].setAttribute("aria-selected","true"),G[U].scrollIntoView({block:"nearest",behavior:l}),G[U].id):null},[l,_]),z=S.useCallback(()=>{const B=Ud(f.current),F=R4(`#${d.current} [data-combobox-active]`,B);if(F){const q=Hd(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),T=S.useCallback(()=>{const B=Ud(f.current),F=Hd(`#${d.current} [data-combobox-option]`,B);return $(Fat(u.current,F,i))},[$,i]),A=S.useCallback(()=>{const B=Ud(f.current),F=Hd(`#${d.current} [data-combobox-option]`,B);return $(Lat(u.current,F,i))},[$,i]),R=S.useCallback(()=>{const B=Ud(f.current),F=Hd(`#${d.current} [data-combobox-option]`,B);return $(Vat(F))},[$]),j=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=Ud(f.current),G=Hd(`#${d.current} [data-combobox-option]`,q),U=G.findIndex(Y=>Y.hasAttribute(`data-combobox-${B}`));u.current=U,F?.scrollIntoView&&G[U]?.scrollIntoView({block:"nearest",behavior:l})},0)},[]),I=S.useCallback(()=>{u.current=-1,_()},[_]),P=S.useCallback(()=>{const B=Ud(f.current);Hd(`#${d.current} [data-combobox-option]`,B)?.[u.current]?.click()},[]),L=S.useCallback(B=>{d.current=B},[]),H=S.useCallback(()=>{g.current=window.setTimeout(()=>p.current?.focus(),0)},[]),M=S.useCallback(()=>{v.current=window.setTimeout(()=>f.current?.focus(),0)},[]),V=S.useCallback(()=>u.current,[]);return S.useEffect(()=>()=>{window.clearTimeout(g.current),window.clearTimeout(v.current),window.clearTimeout(w.current)},[]),{dropdownOpened:s,openDropdown:x,closeDropdown:k,toggleDropdown:C,selectedOptionIndex:u.current,getSelectedOptionIndex:V,selectOption:$,selectFirstOption:R,selectActiveOption:z,selectNextOption:T,selectPreviousOption:A,resetSelectedOption:I,updateSelectedOptionIndex:j,listId:d.current,setListId:L,clickSelectedOption:P,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:M}}const qat={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},Hat=(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",qat,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=Aae(),C=l||k,_=dt({name:g||"Combobox",classes:Wo,props:r,classNames:n,styles:o,unstyled:a,attributes:w,vars:s,varsResolver:Hat}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(Nat,{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 Uat=e=>e;xr.extend=Uat,xr.classes=Wo,xr.displayName="@mantine/core/Combobox",xr.Target=jae,xr.Dropdown=VT,xr.Options=XT,xr.Option=YT,xr.Search=ZT,xr.Empty=qT,xr.Chevron=FT,xr.Footer=UT,xr.Header=GT,xr.EventsTarget=Rae,xr.DropdownTarget=zae,xr.Group=WT,xr.ClearButton=$ae,xr.HiddenInput=Tae;function Wat({size:e,style:r,...n}){const o=e!==void 0?{width:Pe(e),height:Pe(e),...r}:r;return y.jsx("svg",{viewBox:"0 0 10 7",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:o,"aria-hidden":!0,...n,children:y.jsx("path",{d:"M4 4.586L1.707 2.293A1 1 0 1 0 .293 3.707l3 3a.997.997 0 0 0 1.414 0l5-5A1 1 0 1 0 8.293.293L4 4.586z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}function F0(e){return"group"in e}function Dae({options:e,search:r,limit:n}){const o=r.trim().toLowerCase(),a=[];for(let i=0;i0)return!1;return!0}function Mae(e,r=new Set){if(Array.isArray(e))for(const n of e)if(F0(n))Mae(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 Yat(e,r){return Array.isArray(e)?e.includes(r):e===r}function Nae({data:e,withCheckIcon:r,withAlignedLabels:n,value:o,checkIconPosition:a,unstyled:i,renderOption:l}){if(!F0(e)){const c=Yat(o,e.value),d=r&&(c?y.jsx(Wat,{className:Wo.optionsDropdownCheckIcon}):n?y.jsx("div",{className:Wo.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({[Wo.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(Nae,{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 Xat({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}){Mae(e);const _=typeof a=="string"?(o||Dae)({options:e,search:c?a:"",limit:i??1/0}):e,$=Gat(_),z=_.map(T=>y.jsx(Nae,{data:T,withCheckIcon:d,withAlignedLabels:u,value:p,checkIconPosition:f,unstyled:v,renderOption:x},F0(T)?T.group:T.value));return y.jsx(xr.Dropdown,{hidden:r||n&&$,"data-composed":!0,children:y.jsxs(xr.Options,{labelledBy:w,"aria-label":C,children:[s?y.jsx(Fp.Autosize,{mah:l??220,type:"scroll",scrollbarSize:"var(--combobox-padding)",offsetScrollbars:"y",...k,children:z}):z,$&&g&&y.jsx(xr.Empty,{children:g})]})})}var Pae={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const Zat=(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"?Uo(n,e):void 0}}},Bae=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,T=dt({name:"Badge",props:n,classes:Pae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:Zat});return y.jsxs(Ae,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!g,"with-left-section":!!f},_],...T("root",{variant:w}),ref:r,...z,children:[f&&y.jsx("span",{...T("section"),"data-position":"left",children:f}),y.jsx("span",{...T("label"),children:v}),g&&y.jsx("span",{...T("section"),"data-position":"right",children:g})]})});Bae.classes=Pae,Bae.displayName="@mantine/core/Badge";var Iae={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const Kat={separator:"/"},Qat=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":ro(r)}}),Oae=We((e,r)=>{const n=Re("Breadcrumbs",Kat,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:Iae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:Qat}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=E4(k)?S.cloneElement(k,{...v("breadcrumb",{className:k.props?.className}),key:C}):S.createElement("div",{...v("breadcrumb"),key:C},k);return x.push($),C!==_.length-1&&x.push(S.createElement(Ae,{...v("separator"),key:`separator-${C}`},u)),x},[]);return y.jsx(Ae,{ref:r,...v("root"),...g,children:w})});Oae.classes=Iae,Oae.displayName="@mantine/core/Breadcrumbs";var Lae={root:"m_fea6bf1a",burger:"m_d4fb9cad"};const Jat=(e,{color:r,size:n,lineSize:o,transitionDuration:a,transitionTimingFunction:i})=>({root:{"--burger-color":r?Uo(r,e):void 0,"--burger-size":Qt(n,"burger-size"),"--burger-line-size":o?Pe(o):void 0,"--burger-transition-duration":a===void 0?void 0:`${a}ms`,"--burger-transition-timing-function":i}}),Fae=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:Lae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Jat});return y.jsxs(hs,{...x("root"),ref:r,...w,children:[y.jsx(Ae,{mod:["reduce-motion",{opened:d}],...x("burger")}),u]})});Fae.classes=Lae,Fae.displayName="@mantine/core/Burger";var Qm={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const Vae={orientation:"horizontal"},eit=(e,{borderWidth:r})=>({group:{"--button-border-width":Pe(r)}}),KT=We((e,r)=>{const n=Re("ButtonGroup",Vae,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",Vae,e),w=dt({name:"ButtonGroup",props:n,classes:Qm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:eit,rootSelector:"group"});return y.jsx(Ae,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});KT.classes=Qm,KT.displayName="@mantine/core/ButtonGroup";const tit=(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}}},QT=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:Qm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:tit,rootSelector:"groupSection"});return y.jsx(Ae,{...w("groupSection"),ref:r,variant:d,...v})});QT.classes=Qm,QT.displayName="@mantine/core/ButtonGroupSection";const rit={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${Pe(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},nit=(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}}},lk=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:T,attributes:A,...R}=n,j=dt({name:"Button",props:n,classes:Qm,className:i,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:a,varsResolver:nit}),I=!!d,P=!!u;return y.jsxs(hs,{ref:r,...j("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":I,"with-right-section":P},T],...R,children:[typeof v=="boolean"&&y.jsx(_l,{mounted:v,transition:rit,duration:150,children:L=>y.jsx(Ae,{component:"span",...j("loader",{style:L}),"aria-hidden":!0,children:y.jsx(qp,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...j("inner"),children:[d&&y.jsx(Ae,{component:"span",...j("section"),mod:{position:"left"},children:d}),y.jsx(Ae,{component:"span",mod:{loading:v},...j("label"),children:c}),u&&y.jsx(Ae,{component:"span",...j("section"),mod:{position:"right"},children:u})]})]})});lk.classes=Qm,lk.displayName="@mantine/core/Button",lk.Group=KT,lk.GroupSection=QT;const[oit,ait]=Da("Card component was not found in tree");var JT={root:"m_e615b15f",section:"m_599a2148"};const sk=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=ait();return y.jsx(Ae,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:a,style:i,styles:l,classNames:o}),...p})});sk.classes=JT,sk.displayName="@mantine/core/CardSection";const iit=(e,{padding:r})=>({root:{"--card-padding":ro(r)}}),ej=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:JT,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:iit}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===sk?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(oit,{value:{getStyles:g},children:y.jsx(K4,{ref:r,unstyled:s,...g("root"),...f,children:w})})});ej.classes=JT,ej.displayName="@mantine/core/Card",ej.Section=sk;var qae={root:"m_b183c0a2"};const lit=(e,{color:r})=>({root:{"--code-bg":r?Uo(r,e):void 0}}),Hae=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:qae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:lit});return y.jsx(Ae,{component:u?"pre":"code",variant:p,ref:r,mod:[{block:u},f],...w("root"),...v,dir:"ltr"})});Hae.classes=qae,Hae.displayName="@mantine/core/Code";var Uae={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const Wae={withShadow:!0},sit=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:hn(r),"--cs-size":Pe(n)}}),Gae=Un((e,r)=>{const n=Re("ColorSwatch",Wae,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",Wae,n),k=dt({name:"ColorSwatch",props:n,classes:Uae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:sit});return y.jsxs(Ae,{ref:r,variant:v,size:u,...k("root",{focusable:!0}),...x,children:[y.jsx("span",{...k("alphaOverlay")}),f&&y.jsx("span",{...k("shadowOverlay")}),y.jsx("span",{...k("colorOverlay",{style:{backgroundColor:d}})}),y.jsx("span",{...k("childrenOverlay"),children:g})]})});Gae.classes=Uae,Gae.displayName="@mantine/core/ColorSwatch";var Yae={root:"m_7485cace"};const cit=(e,{size:r,fluid:n})=>({root:{"--container-size":n?void 0:Qt(r,"container-size")}}),Xae=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:Yae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:cit});return y.jsx(Ae,{ref:r,mod:[{fluid:d,strategy:f||"block"},u],...v("root"),...g})});Xae.classes=Yae,Xae.displayName="@mantine/core/Container";var Zae={root:"m_3eebeb36",label:"m_9e365f20"};const dit={orientation:"horizontal"},uit=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?Uo(r,e):void 0,"--divider-border-style":n,"--divider-size":Qt(o,"divider-size")}}),Kae=We((e,r)=>{const n=Re("Divider",dit,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:Zae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:uit});return y.jsx(Ae,{ref:r,mod:[{orientation:u,"with-label":!!p},g],...x("root"),...w,role:"separator",children:p&&y.jsx(Ae,{component:"span",mod:{position:f},...x("label"),children:p})})});Kae.classes=Zae,Kae.displayName="@mantine/core/Divider";const[pit,Jm]=Da("Drawer component was not found in tree");var wc={root:"m_f11b401e",header:"m_5a7c2c9",content:"m_b8a05bbd",inner:"m_31cd769a"};const ck=We((e,r)=>{const n=Re("DrawerBody",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(MT,{ref:r,...d.getStyles("body",{classNames:o,style:i,styles:l,className:a}),...c})});ck.classes=wc,ck.displayName="@mantine/core/DrawerBody";const dk=We((e,r)=>{const n=Re("DrawerCloseButton",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(uae,{ref:r,...d.getStyles("close",{classNames:o,style:i,styles:l,className:a}),...c})});dk.classes=wc,dk.displayName="@mantine/core/DrawerCloseButton";const uk=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=Jm(),g=f.scrollAreaComponent||fae;return y.jsx(NT,{...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})})});uk.classes=wc,uk.displayName="@mantine/core/DrawerContent";const pk=We((e,r)=>{const n=Re("DrawerHeader",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(pae,{ref:r,...d.getStyles("header",{classNames:o,style:i,styles:l,className:a}),...c})});pk.classes=wc,pk.displayName="@mantine/core/DrawerHeader";const hk=We((e,r)=>{const n=Re("DrawerOverlay",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(PT,{ref:r,...d.getStyles("overlay",{classNames:o,style:i,styles:l,className:a}),...c})});hk.classes=wc,hk.displayName="@mantine/core/DrawerOverlay";function hit(e){switch(e){case"top":return"flex-start";case"bottom":return"flex-end";default:return}}function fit(e){if(e==="top"||e==="bottom")return"0 0 calc(100% - var(--drawer-offset, 0rem) * 2)"}const mit={top:"slide-down",bottom:"slide-up",left:"slide-right",right:"slide-left"},git={top:"slide-down",bottom:"slide-up",right:"slide-right",left:"slide-left"},yit={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:yl("modal"),position:"left"},vit=(e,{position:r,size:n,offset:o})=>({root:{"--drawer-size":Qt(n,"drawer-size"),"--drawer-flex":fit(r),"--drawer-height":r==="left"||r==="right"?void 0:"var(--drawer-size)","--drawer-align":hit(r),"--drawer-justify":r==="right"?"flex-end":void 0,"--drawer-offset":Pe(o)}}),fk=We((e,r)=>{const n=Re("DrawerRoot",yit,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}=gc(),x=dt({name:"Drawer",classes:wc,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:vit}),k=(w==="rtl"?git:mit)[u];return y.jsx(pit,{value:{scrollAreaComponent:d,getStyles:x,radius:f},children:y.jsx(DT,{ref:r,...x("root"),transitionProps:{transition:k,...p},"data-offset-scrollbars":d===Fp.Autosize||void 0,unstyled:s,...v})})});fk.classes=wc,fk.displayName="@mantine/core/DrawerRoot";const[bit,xit]=Bm();function Qae({children:e}){const[r,n]=S.useState([]),[o,a]=S.useState(yl("modal"));return y.jsx(bit,{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})}Qae.displayName="@mantine/core/DrawerStack";const mk=We((e,r)=>{const n=Re("DrawerTitle",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(hae,{ref:r,...d.getStyles("title",{classNames:o,style:i,styles:l,className:a}),...c})});mk.classes=wc,mk.displayName="@mantine/core/DrawerTitle";const wit={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:yl("modal"),withOverlay:!0,withCloseButton:!0},fs=We((e,r)=>{const{title:n,withOverlay:o,overlayProps:a,withCloseButton:i,closeButtonProps:l,children:s,opened:c,stackId:d,zIndex:u,...p}=Re("Drawer",wit,e),f=xit(),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||yl("modal")):f.removeModal(d))},[c,d,u]),y.jsxs(fk,{ref:r,opened:c,zIndex:f&&d?f.getZIndex(d):u,...p,...v,children:[o&&y.jsx(hk,{visible:w,transitionProps:f&&d?{duration:0}:void 0,...a}),y.jsxs(uk,{__hidden:f&&d&&c?d!==f.currentId:!1,children:[g&&y.jsxs(pk,{children:[n&&y.jsx(mk,{children:n}),i&&y.jsx(dk,{...l})]}),y.jsx(ck,{children:s})]})]})});fs.classes=wc,fs.displayName="@mantine/core/Drawer",fs.Root=fk,fs.Overlay=hk,fs.Content=uk,fs.Body=ck,fs.Header=pk,fs.Title=mk,fs.CloseButton=dk,fs.Stack=Qae;const[Jae,eie]=Da("Grid component was not found in tree"),tj=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,tie=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":tj(e,r),rie=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},nie=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function kit({span:e,order:r,offset:n,selector:o}){const a=uo(),i=eie(),l=i.breakpoints||a.breakpoints,s=vl(e)===void 0?12:vl(e),c=Vd({"--col-order":vl(r)?.toString(),"--col-flex-grow":rie(s,i.grow),"--col-flex-basis":tj(s,i.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":tie(s,i.columns,i.grow),"--col-offset":nie(vl(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"]=rie(e[f],i.grow),p[f]["--col-flex-basis"]=tj(e[f],i.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=tie(e[f],i.columns,i.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=nie(n[f],i.columns)),p),{}),u=BR(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(Vm,{styles:c,media:i.type==="container"?void 0:u,container:i.type==="container"?u:void 0,selector:o})}var rj={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const _it={span:12},nj=We((e,r)=>{const n=Re("GridCol",_it,e),{classNames:o,className:a,style:i,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=eie(),g=M0();return y.jsxs(y.Fragment,{children:[y.jsx(kit,{selector:`.${g}`,span:c,order:d,offset:u}),y.jsx(Ae,{ref:r,...f.getStyles("col",{className:no(a,g),style:i,classNames:o,styles:l}),...p})]})});nj.classes=rj,nj.displayName="@mantine/core/GridCol";function oie({gutter:e,selector:r,breakpoints:n,type:o}){const a=uo(),i=n||a.breakpoints,l=Vd({"--grid-gutter":ro(vl(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=BR(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(Vm,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const Sit={gutter:"md",grow:!1,columns:12},Eit=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),oj=We((e,r)=>{const n=Re("Grid",Sit,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:rj,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:Eit}),$=M0();return x==="container"&&w?y.jsxs(Jae,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(oie,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Ae,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(Jae,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(oie,{selector:`.${$}`,...n}),y.jsx(Ae,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});oj.classes=rj,oj.displayName="@mantine/core/Grid",oj.Col=nj;function aie({color:e,theme:r,defaultShade:n}){const o=Bp({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var iie={root:"m_bcb3f3c2"};const Cit={color:"yellow"},$it=(e,{color:r})=>({root:{"--mark-bg-dark":aie({color:r,theme:e,defaultShade:5}),"--mark-bg-light":aie({color:r,theme:e,defaultShade:2})}}),aj=We((e,r)=>{const n=Re("Mark",Cit,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:iie,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:$it});return y.jsx(Ae,{component:"mark",ref:r,variant:u,...g("root"),...f})});aj.classes=iie,aj.displayName="@mantine/core/Mark";function lie(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function zit(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(lie):lie(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 sie=Un((e,r)=>{const{unstyled:n,children:o,highlight:a,highlightStyles:i,color:l,...s}=Re("Highlight",null,e),c=zit(o,a);return y.jsx(L0,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(aj,{unstyled:n,color:l,style:i,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});sie.classes=L0.classes,sie.displayName="@mantine/core/Highlight";const[h3t,cie]=Da("HoverCard component was not found in the tree"),die=S.createContext(!1),Rit=die.Provider,uie=()=>S.useContext(die);function Tit(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...a}=Re("HoverCardDropdown",null,e),i=cie();if(uie()&&i.getFloatingProps&&i.floating){const c=i.getFloatingProps();return y.jsx(po.Dropdown,{ref:i.floating,...c,onMouseEnter:Tn(n,c.onMouseEnter),onMouseLeave:Tn(o,c.onMouseLeave),...a,children:r})}const l=Tn(n,i.openDropdown),s=Tn(o,i.closeDropdown);return y.jsx(po.Dropdown,{onMouseEnter:l,onMouseLeave:s,...a,children:r})}Tit.displayName="@mantine/core/HoverCardDropdown";const jit={openDelay:0,closeDelay:0};function pie(e){const{openDelay:r,closeDelay:n,children:o}=Re("HoverCardGroup",jit,e);return y.jsx(Rit,{value:!0,children:y.jsx(zoe,{delay:{open:r,close:n},children:o})})}pie.displayName="@mantine/core/HoverCardGroup",pie.extend=e=>e;const Ait={refProp:"ref"},Dit=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:a,...i}=Re("HoverCardTarget",Ait,e),l=Wd(n);if(!l)throw new Error("HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=cie();if(uie()&&s.getReferenceProps&&s.reference){const p=s.getReferenceProps();return y.jsx(po.Target,{refProp:o,ref:r,...i,children:S.cloneElement(l,a?{[a]:{...p,ref:s.reference}}:{...p,ref:s.reference})})}const c=Tn(l.props.onMouseEnter,s.openDropdown),d=Tn(l.props.onMouseLeave,s.closeDropdown),u={onMouseEnter:c,onMouseLeave:d};return y.jsx(po.Target,{refProp:o,ref:r,...i,children:S.cloneElement(l,a?{[a]:u}:u)})});Dit.displayName="@mantine/core/HoverCardTarget";var hie={root:"m_6e45937b",loader:"m_e8eb006c",overlay:"m_df587f17"};const fie={transitionProps:{transition:"fade",duration:0},overlayProps:{backgroundOpacity:.75},zIndex:yl("overlay")},Mit=(e,{zIndex:r})=>({root:{"--lo-z-index":r?.toString()}}),mie=We((e,r)=>{const n=Re("LoadingOverlay",fie,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:hie,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Mit}),C={...fie.overlayProps,...p};return y.jsx(_l,{transition:"fade",...d,mounted:!!f,children:_=>y.jsxs(Ae,{...k("root",{style:_}),ref:r,...w,children:[y.jsx(qp,{...k("loader"),unstyled:s,...u}),y.jsx(Xm,{...C,...k("overlay"),darkHidden:!0,unstyled:s,color:p?.color||x.white}),y.jsx(Xm,{...C,...k("overlay"),lightHidden:!0,unstyled:s,color:p?.color||x.colors.dark[5]})]})})});mie.classes=hie,mie.displayName="@mantine/core/LoadingOverlay";const[f3t,Yd]=Da("Menu component was not found in the tree");var eg={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const gie=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("MenuDivider",null,e),c=Yd();return y.jsx(Ae,{ref:r,...c.getStyles("divider",{className:o,style:a,styles:i,classNames:n}),...s})});gie.classes=eg,gie.displayName="@mantine/core/MenuDivider";const yie=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=Yd(),v=Tn(d,k=>{(k.key==="ArrowUp"||k.key==="ArrowDown")&&(k.preventDefault(),f.current?.querySelectorAll("[data-menu-item]:not(:disabled)")[0]?.focus())}),w=Tn(s,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.openDropdown()),x=Tn(c,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.closeDropdown());return y.jsxs(po.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:on(r,f),...g.getStyles("dropdown",{className:o,style: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]})});yie.classes=eg,yie.displayName="@mantine/core/MenuDropdown";const[Nit,gk]=Bm(),vie=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=Yd(),x=gk(),k=uo(),{dir:C}=gc(),_=S.useRef(null),$=v,z=Tn($.onClick,()=>{g||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),T=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?Bp({color:s,theme:k}):null,R=Tn($.onKeyDown,j=>{j.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(hs,{onMouseDown:j=>j.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style: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:NR({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)`:T?.color,"--menu-item-hover":T?.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})]})});vie.classes=eg,vie.displayName="@mantine/core/MenuItem";const bie=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("MenuLabel",null,e),c=Yd();return y.jsx(Ae,{ref:r,...c.getStyles("label",{className:o,style:a,styles:i,classNames:n}),...s})});bie.classes=eg,bie.displayName="@mantine/core/MenuLabel";const ij=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=Yd(),v=gk(),w=Tn(s,v?.open),x=Tn(c,v?.close);return y.jsx(po.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:on(r,f),...g.getStyles("dropdown",{className:o,style:a,styles:i,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});ij.classes=eg,ij.displayName="@mantine/core/MenuSubDropdown";const lj=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=Yd(),x=gk(),k=uo(),{dir:C}=gc(),_=S.useRef(null),$=v,z=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,T=s?Bp({color:s,theme:k}):null,A=Tn($.onKeyDown,P=>{P.key==="ArrowRight"&&(x?.open(),x?.focusFirstItem()),P.key==="ArrowLeft"&&x?.parentContext&&(x.parentContext.close(),x.parentContext.focusParentItem())}),R=Tn($.onClick,()=>{!f&&g&&w.closeDropdownImmediately()}),j=Tn($.onMouseEnter,x?.open),I=Tn($.onMouseLeave,x?.close);return y.jsxs(hs,{onMouseDown:P=>P.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style: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:j,onMouseLeave:I,onClick:R,onKeyDown:NR({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:A}),__vars:{"--menu-item-color":T?.isThemeColor&&T?.shade===void 0?`var(--mantine-color-${T.color}-6)`: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(LT,{...w.getStyles("chevron"),size:14})})]})});lj.classes=eg,lj.displayName="@mantine/core/MenuSubItem";function xie({children:e,refProp:r}){if(!E4(e))throw new Error("Menu.Sub.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return Yd(),y.jsx(po.Target,{refProp:r,popupType:"menu",children:e})}xie.displayName="@mantine/core/MenuSubTarget";const Pit={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function V0(e){const{children:r,closeDelay:n,openDelay:o,...a}=Re("MenuSub",Pit,e),i=bl(),[l,{open:s,close:c}]=ytt(!1),d=gk(),{openDropdown:u,closeDropdown:p}=Cat({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(Nit,{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})})}V0.extend=e=>e,V0.displayName="@mantine/core/MenuSub",V0.Target=xie,V0.Dropdown=ij,V0.Item=lj;const Bit={refProp:"ref"},Iit=S.forwardRef((e,r)=>{const{children:n,refProp:o,...a}=Re("MenuTarget",Bit,e),i=Wd(n);if(!i)throw new Error("Menu.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const l=Yd(),s=i.props,c=Tn(s.onClick,()=>{l.trigger==="click"?l.toggleDropdown():l.trigger==="click-hover"&&(l.setOpenedViaClick(!0),l.opened||l.openDropdown())}),d=Tn(s.onMouseEnter,()=>(l.trigger==="hover"||l.trigger==="click-hover")&&l.openDropdown()),u=Tn(s.onMouseLeave,()=>{(l.trigger==="hover"||l.trigger==="click-hover"&&!l.openedViaClick)&&l.closeDropdown()});return y.jsx(po.Target,{refProp:o,popupType:"menu",ref:r,...a,children:S.cloneElement(i,{onClick:c,onMouseEnter:d,onMouseLeave:u,"data-expanded":l.opened?!0:void 0})})});Iit.displayName="@mantine/core/MenuTarget";const[Oit,sj]=Da("Modal component was not found in tree");var q0={root:"m_9df02822",content:"m_54c44539",inner:"m_1f958f16",header:"m_d0e2b9cd"};const wie=We((e,r)=>{const n=Re("ModalBody",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=sj();return y.jsx(MT,{ref:r,...d.getStyles("body",{classNames:o,style:i,styles:l,className:a}),...c})});wie.classes=q0,wie.displayName="@mantine/core/ModalBody";const kie=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=sj(),f=p.scrollAreaComponent||fae;return y.jsx(NT,{...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})})});kie.classes=q0,kie.displayName="@mantine/core/ModalContent";const _ie=We((e,r)=>{const n=Re("ModalOverlay",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=sj();return y.jsx(PT,{ref:r,...d.getStyles("overlay",{classNames:o,style:i,styles:l,className:a}),...c})});_ie.classes=q0,_ie.displayName="@mantine/core/ModalOverlay";const Lit={__staticSelector:"Modal",closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:yl("modal"),transitionProps:{duration:200,transition:"fade-down"},yOffset:"5dvh"},Fit=(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)}}),Sie=We((e,r)=>{const n=Re("ModalRoot",Lit,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:q0,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c,varsResolver:Fit});return y.jsx(Oit,{value:{yOffset:d,scrollAreaComponent:u,getStyles:C,fullScreen:f},children:y.jsx(DT,{ref:r,...C("root"),"data-full-screen":f||void 0,"data-centered":g||void 0,"data-offset-scrollbars":u===Fp.Autosize||void 0,unstyled:s,...k})})});Sie.classes=q0,Sie.displayName="@mantine/core/ModalRoot";const[m3t,Eie]=Bm(),[Vit,qit]=Bm();var yk={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const Hit=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?Qt(r):Qt(n,"pg-gap")}}),cj=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=Eie()?.size||d||void 0,v=dt({name:"PillGroup",classes:yk,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:Hit,stylesCtx:{size:g},rootSelector:"group"});return y.jsx(Vit,{value:{size:g,disabled:u},children:y.jsx(Ae,{ref:r,size:g,...v("group"),...f})})});cj.classes=yk,cj.displayName="@mantine/core/PillGroup";const Uit={variant:"default"},Wit=(e,{radius:r},{size:n})=>({root:{"--pill-fz":Qt(n,"pill-fz"),"--pill-height":Qt(n,"pill-height"),"--pill-radius":r===void 0?void 0:hn(r)}}),dj=We((e,r)=>{const n=Re("Pill",Uit,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,$=qit(),z=Eie(),T=w||$?.size||void 0,A=z?.variant==="filled"?"contrast":d||"default",R=dt({name:"Pill",classes:yk,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:Wit,stylesCtx:{size:T}});return y.jsxs(Ae,{component:"span",ref:r,variant:A,size:T,...R("root",{variant:A}),mod:[{"with-remove":p&&!x,disabled:x||$?.disabled},k],..._,children:[y.jsx("span",{...R("label"),children:u}),p&&y.jsx(Hp,{variant:"transparent",radius:v,tabIndex:-1,"aria-hidden":!0,unstyled:s,...g,...R("remove",{className:g?.className,style:g?.style}),onMouseDown:j=>{j.preventDefault(),j.stopPropagation(),g?.onMouseDown?.(j)},onClick:j=>{j.stopPropagation(),f?.(),g?.onClick?.(j)}})]})});dj.classes=yk,dj.displayName="@mantine/core/Pill",dj.Group=cj;var Cie={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const Git=(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)}}},$ie=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:T,mod:A,attributes:R,onClick:j,onKeyDown:I,...P}=n,L=dt({name:"NavLink",props:n,classes:Cie,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:Git}),[H,M]=qd({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{j?.(F),V&&(F.preventDefault(),M(!H))};return y.jsxs(y.Fragment,{children:[y.jsxs(hs,{...L("root"),component:"a",ref:r,onClick:B,onKeyDown:F=>{I?.(F),F.nativeEvent.code==="Space"&&V&&(F.preventDefault(),M(!H))},unstyled:s,mod:[{disabled:v,active:g,expanded:H},A],...P,children:[w&&y.jsx(Ae,{component:"span",...L("section"),mod:{position:"left"},children:w}),y.jsxs(Ae,{...L("body"),mod:{"no-wrap":$},children:[y.jsx(Ae,{component:"span",...L("label"),children:k}),y.jsx(Ae,{component:"span",mod:{active:g},...L("description"),children:C})]}),(V||x!==void 0)&&y.jsx(Ae,{...L("section"),component:"span",mod:{rotate:H&&!_,position:"right"},children:V?x!==void 0?x:y.jsx(LT,{...L("chevron")}):x})]}),V&&y.jsx(Gne,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});$ie.classes=Cie,$ie.displayName="@mantine/core/NavLink";var zie={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const Yit={withCloseButton:!0},Xit=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:hn(r),"--notification-color":n?Uo(n,e):void 0}}),Rie=We((e,r)=>{const n=Re("Notification",Yit,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:T,attributes:A,...R}=n,j=dt({name:"Notification",classes:zie,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:Xit});return y.jsxs(Ae,{...j("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:T||"alert",...R,children:[u&&!l&&y.jsx("div",{...j("icon"),children:u}),l&&y.jsx(qp,{size:28,color:a,...z,...j("loader")}),y.jsxs("div",{...j("body"),children:[d&&y.jsx("div",{...j("title"),children:d}),y.jsx(Ae,{...j("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(Hp,{iconSize:16,color:"gray",...g,unstyled:k,onClick:f,...j("closeButton")})]})});Rie.classes=zie,Rie.displayName="@mantine/core/Notification";const Zit={duration:100,transition:"fade"};function Tie(e,r){return{...Zit,...r,...e}}function Kit({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}=xT({placement:r,middleware:[fT({crossAxis:!0,padding:5,rootBoundary:"document"})]}),f=p.includes("right")?e:r.includes("left")?e*-1:0,g=p.includes("bottom")?e:r.includes("top")?e*-1:0,v=S.useCallback(({clientX:w,clientY:x})=>{d.setPositionReference({getBoundingClientRect(){return{width:0,height:0,x:w,y:x,left:w+f,top:x+g,right:w,bottom:x}}})},[c.reference]);return S.useEffect(()=>{if(d.floating.current){const w=i.current;w.addEventListener("mousemove",v);const x=bc(d.floating.current);return x.forEach(k=>{k.addEventListener("scroll",u)}),()=>{w.removeEventListener("mousemove",v),x.forEach(k=>{k.removeEventListener("scroll",u)})}}},[c.reference,d.floating.current,u,v,o]),{handleMouseMove:v,x:l,y:s,opened:o,setOpened:a,boundaryRef:i,floating:d.setFloating}}var vk={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const Qit={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:yl("popover")},Jit=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:hn(r),"--tooltip-bg":n?Uo(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),uj=We((e,r)=>{const n=Re("TooltipFloating",Qit,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:T,attributes:A,...R}=n,j=uo(),I=dt({name:"TooltipFloating",props:n,classes:vk,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:z,varsResolver:Jit}),{handleMouseMove:P,x:L,y:H,opened:M,boundaryRef:V,floating:B,setOpened:F}=Kit({offset:v,position:w,defaultOpened:_}),q=Wd(o);if(!q)throw new Error("[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const G=on(V,z4(q),r),U=q.props,Y=O=>{U.onMouseEnter?.(O),P(O),F(!0)},Z=O=>{U.onMouseLeave?.(O),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(Vp,{...T,withinPortal:i,children:y.jsx(Ae,{...R,...I("tooltip",{style:{...ZR(l,j),zIndex:k,display:!C&&M?"block":"none",top:(H&&Math.round(H))??"",left:(L&&Math.round(L))??""}}),variant:$,ref:B,mod:{multiline:x},children:g})}),S.cloneElement(q,{...U,[a]:G,onMouseEnter:Y,onMouseLeave:Z})]})});uj.classes=vk,uj.displayName="@mantine/core/TooltipFloating";const jie=S.createContext(!1),elt=jie.Provider,tlt=()=>S.useContext(jie),rlt={openDelay:0,closeDelay:0};function pj(e){const{openDelay:r,closeDelay:n,children:o}=Re("TooltipGroup",rlt,e);return y.jsx(elt,{value:!0,children:y.jsx(zoe,{delay:{open:r,close:n},children:o})})}pj.displayName="@mantine/core/TooltipGroup",pj.extend=e=>e;function nlt(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function olt(e){const r=nlt(e.middlewares),n=[yoe(e.offset)];return r.shift&&n.push(fT(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?G4():G4(r.flip)),n.push(boe({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?I0():I0(r.inline)):e.inline&&n.push(I0()),n}function alt(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=tlt(),i=bl(),l=S.useCallback($=>{n($),$&&x(i)},[i]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:g}={}}}=xT({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:olt(e),whileElementsMounted:pT}),{delay:v,currentId:w,setCurrentId:x}=sot(d,{id:i}),{getReferenceProps:k,getFloatingProps:C}=fot([iot(d,{enabled:e.events?.hover,delay:a?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),hot(d,{enabled:e.events?.focus,visibleOnly:!0}),got(d,{role:"tooltip"}),uot(d,{enabled:typeof e.opened>"u"})]);Om(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==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 Aie={position:"top",refProp:"ref",withinPortal:!0,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:"side",offset:5,transitionProps:{duration:100,transition:"fade"},events:{hover:!0,focus:!1,touch:!1},zIndex:yl("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},ilt=(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}}},bk=We((e,r)=>{const n=Re("Tooltip",Aie,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:T,arrowRadius:A,arrowPosition:R,offset:j,transitionProps:I,multiline:P,events:L,zIndex:H,disabled:M,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:Z,portalProps:O,mod:W,floatingStrategy:K,middlewares:Q,autoContrast:ae,attributes:te,target:re,...ue}=Re("Tooltip",Aie,n),{dir:_e}=gc(),ce=S.useRef(null),pe=alt({position:Yoe(_e,a),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:T,offset:typeof j=="number"?j+($?z/2:0):j,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:vk,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:Z,varsResolver:ilt}),je=Wd(o);if(!re&&!je)return null;if(re){const Le=Tie(I,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(Vp,{...O,withinPortal:f,children:y.jsx(_l,{...Le,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Ae,{...ue,"data-fixed":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(Q4,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:T,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})})})}const Be=je.props,Je=on(pe.reference,z4(je),r),st=Tie(I,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(Vp,{...O,withinPortal:f,children:y.jsx(_l,{...st,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Ae,{...ue,"data-fixed":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(Q4,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:T,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})}),S.cloneElement(je,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,...Be,className:no(_,Be.className),[i]:Je}))]})});bk.classes=vk,bk.displayName="@mantine/core/Tooltip",bk.Floating=uj,bk.Group=pj;var Die={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const llt={withItemsBorders:!0},slt=(e,{radius:r,color:n,transitionDuration:o,size:a,transitionTimingFunction:i})=>({root:{"--sc-radius":r===void 0?void 0:hn(r),"--sc-color":n?Uo(n,e):void 0,"--sc-shadow":n?void 0:"var(--mantine-shadow-xs)","--sc-transition-duration":o===void 0?void 0:`${o}ms`,"--sc-transition-timing-function":i,"--sc-padding":Qt(a,"sc-padding"),"--sc-font-size":Ro(a)}}),Mie=We((e,r)=>{const n=Re("SegmentedControl",llt,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:T,variant:A,autoContrast:R,withItemsBorders:j,mod:I,attributes:P,...L}=n,H=dt({name:"SegmentedControl",props:n,classes:Die,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:slt}),M=uo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=wtt(),[F,q]=S.useState(IR()),[G,U]=S.useState(null),[Y,Z]=S.useState({}),O=(re,ue)=>{Y[ue]=re,Z(Y)},[W,K]=qd({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=bl(v),ae=V.map(re=>S.createElement(Ae,{...H("control"),mod:{active:W===re.value,orientation:C},key:re.value},S.createElement("input",{...H("input"),disabled:w||re.disabled,type:"radio",name:Q,value:re.value,id:`${Q}-${re.value}`,checked:W===re.value,onChange:()=>!x&&K(re.value),"data-focus-ring":M.focusRing,key:`${re.value}-input`}),S.createElement(Ae,{component:"label",...H("label"),mod:{active:W===re.value&&!(w||re.disabled),disabled:w||re.disabled,"read-only":x},htmlFor:`${Q}-${re.value}`,ref:ue=>O(ue,re.value),__vars:{"--sc-label-color":$!==void 0?qR({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 gtt(()=>{q(IR())},[d.length]),d.length===0?null:y.jsxs(Ae,{...H("root"),variant:A,size:g,ref:te,mod:[{"full-width":k,orientation:C,initialized:B,"with-items-borders":j},I],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(OT,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ae]})});Mie.classes=Die,Mie.displayName="@mantine/core/SegmentedControl";const clt={withCheckIcon:!0,allowDeselect:!0,checkIconPosition:"left"},Nie=We((e,r)=>{const n=Re("Select",clt,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:T,filter:A,limit:R,withScrollArea:j,maxDropdownHeight:I,size:P,searchable:L,rightSection:H,checkIconPosition:M,withCheckIcon:V,withAlignedLabels:B,nothingFoundMessage:F,name:q,form:G,searchValue:U,defaultSearchValue:Y,onSearchChange:Z,allowDeselect:O,error:W,rightSectionPointerEvents:K,id:Q,clearable:ae,clearButtonProps:te,hiddenInputProps:re,renderOption:ue,onClear:_e,autoComplete:ce,scrollAreaProps:pe,__defaultRightSection:xe,__clearSection:je,__clearable:Be,chevronColor:Je,autoSelectOnBlur:st,attributes:Le,...St}=n,Ve=S.useMemo(()=>Aat(w),[w]),qe=S.useRef({}),Xe=S.useMemo(()=>Cae(Ve),[Ve]),It=bl(Q),[Et,be,ke]=qd({value:x,defaultValue:k,finalValue:null,onChange:v}),Ye=typeof Et=="string"?Et in Xe?Xe[Et]:qe.current[Et]:void 0,yt=btt(Ye),[xt,Tr,er]=qd({value:U,defaultValue:Y,finalValue:Ye?Ye.label:"",onChange:Z}),qt=Aae({opened:s,defaultOpened:c,onDropdownOpen:()=>{u?.(),qt.updateSelectedOptionIndex("active",{scrollIntoView:!0})},onDropdownClose:()=>{d?.(),setTimeout(qt.resetSelectedOption,0)}}),Ht=fn=>{Tr(fn),qt.resetSelectedOption()},{resolvedClassNames:Zr,resolvedStyles:Gt}=HR({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&&!T&&!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=O&&Xe[fn].value===Et?null:Xe[fn],Yo=oo?oo.value:null;Yo!==Et&&be(Yo,oo),!ke&&Ht(typeof Yo=="string"&&oo?.label||""),qt.closeDropdown()},...$,children:[y.jsx(xr.Target,{targetType:L?"input":"button",autoComplete:ce,children:y.jsx(ik,{id:It,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:T,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(Xat,{data:Ve,hidden:z||T,filter:A,search:xt,limit:R,hiddenWhenEmpty:!F,withScrollArea:j,maxDropdownHeight:I,filterOptions:!!L&&Ye?.label!==xt,value:Et,checkIconPosition:M,withCheckIcon:V,withAlignedLabels:B,nothingFoundMessage:F,unstyled:i,labelId:St.label?`${It}-label`:void 0,"aria-label":St.label?void 0:St["aria-label"],renderOption:ue,scrollAreaProps:pe})]}),y.jsx(xr.HiddenInput,{value:Et,name:q,form:G,disabled:T,...re})]})});Nie.classes={...ik.classes,...xr.classes},Nie.displayName="@mantine/core/Select";function dlt({spacing:e,verticalSpacing:r,cols:n,selector:o}){const a=uo(),i=r===void 0?e:r,l=Vd({"--sg-spacing-x":ro(vl(e)),"--sg-spacing-y":ro(vl(i)),"--sg-cols":vl(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=BR(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(Vm,{styles:l,media:c,selector:o})}function hj(e){return typeof e=="object"&&e!==null?zo(e):[]}function ult(e){return e.sort((r,n)=>S4(r)-S4(n))}function plt({spacing:e,verticalSpacing:r,cols:n}){const o=Array.from(new Set([...hj(e),...hj(r),...hj(n)]));return ult(o)}function hlt({spacing:e,verticalSpacing:r,cols:n,selector:o}){const a=r===void 0?e:r,i=Vd({"--sg-spacing-x":ro(vl(e)),"--sg-spacing-y":ro(vl(a)),"--sg-cols":vl(n)?.toString()}),l=plt({spacing:e,verticalSpacing:r,cols:n}),s=l.reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--sg-spacing-x"]=ro(e[u])),typeof 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(Vm,{styles:i,container:c,selector:o})}var Pie={container:"m_925c2d2c",root:"m_2415a157"};const flt={cols:1,spacing:"md",type:"media"},Bie=We((e,r)=>{const n=Re("SimpleGrid",flt,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:Pie,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c}),x=M0();return f==="container"?y.jsxs(y.Fragment,{children:[y.jsx(hlt,{...n,selector:`.${x}`}),y.jsx("div",{...w("container"),children:y.jsx(Ae,{ref:r,...w("root",{className:x}),...v})})]}):y.jsxs(y.Fragment,{children:[y.jsx(dlt,{...n,selector:`.${x}`}),y.jsx(Ae,{ref:r,...w("root",{className:x}),...v})]})});Bie.classes=Pie,Bie.displayName="@mantine/core/SimpleGrid";const[mlt,xk]=Da("SliderProvider was not found in tree"),Iie=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:a,radius:i,...l},s)=>{const{getStyles:c}=xk();return y.jsx(Ae,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});Iie.displayName="@mantine/core/SliderRoot";const Oie=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}=xk(),[_,$]=S.useState(!1),z=d||i||_||g&&v;return y.jsxs(Ae,{tabIndex:0,role:"slider","aria-label":u,"aria-valuemax":e,"aria-valuemin":r,"aria-valuenow":n,ref:k,__vars:{"--slider-thumb-offset":`${o}%`},...C("thumb",{focusable:!0}),mod:{dragging:i,disabled:x},onFocus:T=>{$(!0),typeof p=="function"&&p(T)},onBlur:T=>{$(!1),typeof f=="function"&&f(T)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:T=>T.stopPropagation(),children:[w,y.jsx(_l,{mounted:a!=null&&!!z,transition:"fade",duration:0,...c,children:T=>y.jsx("div",{...C("label",{style:T}),children:a})})]})});Oie.displayName="@mantine/core/SliderThumb";function Lie({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function glt({mark:e,offset:r,value:n,inverted:o=!1}){return o?typeof r=="number"&&e.value<=r||e.value>=n:typeof r=="number"?e.value>=r&&e.value<=n:e.value<=n}function Fie({marks:e,min:r,max:n,disabled:o,value:a,offset:i,inverted:l}){const{getStyles:s}=xk();if(!e)return null;const c=e.map((d,u)=>S.createElement(Ae,{...s("markWrapper"),__vars:{"--mark-offset":`${Lie({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Ae,{...s("mark"),mod:{filled:glt({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})}Fie.displayName="@mantine/core/SliderMarks";function Vie({filled:e,children:r,offset:n,disabled:o,marksOffset:a,inverted:i,containerProps:l,...s}){const{getStyles:c}=xk();return y.jsx(Ae,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Ae,{...c("track"),mod:{inverted:i,disabled:o},children:[y.jsx(Ae,{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(Fie,{...s,offset:a,disabled:o,inverted:i})]})})}Vie.displayName="@mantine/core/SliderTrack";function ylt({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 wk(e,r){return parseFloat(e.toFixed(r))}function vlt(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function fj(e,r){const n=[...r].sort((o,a)=>o.value-a.value).find(o=>o.value>e);return n?n.value:e}function mj(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 Hie(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var Uie={root:"m_dd36362e",label:"m_c9357328",thumb:"m_c9a9a60a",trackContainer:"m_a8645c2",track:"m_c9ade57f",bar:"m_38aeed47",markWrapper:"m_b7b0423a",mark:"m_dd33bc19",markLabel:"m_68c77a5b"};const blt={radius:"xl",min:0,max:100,step:1,marks:[],label:e=>e,labelTransitionProps:{transition:"fade",duration:0},thumbLabel:"",showLabelOnHover:!0,scale:e=>e,size:"md"},xlt=(e,{size:r,color:n,thumbSize:o,radius:a})=>({root:{"--slider-size":Qt(r,"slider-size"),"--slider-color":n?Uo(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)"}}),Wie=We((e,r)=>{const n=Re("Slider",blt,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:T,disabled:A,unstyled:R,scale:j,inverted:I,className:P,style:L,vars:H,hiddenInputProps:M,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=dt({name:"Slider",props:n,classes:Uie,classNames:o,className:P,styles:a,style:L,attributes:F,vars:H,varsResolver:xlt,unstyled:R}),{dir:U}=gc(),[Y,Z]=S.useState(!1),[O,W]=qd({value:typeof i=="number"?Im(i,d,u):i,defaultValue:typeof v=="number"?Im(v,d,u):v,finalValue:Im(0,d,u),onChange:l}),K=S.useRef(O),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=Lie({value:O,min:re,max:ue}),ce=j(O),pe=typeof k=="function"?k(ce):k,xe=g??vlt(f),je=S.useCallback(({x:Ve})=>{if(!A){const qe=ylt({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=Im(qe,d,u);W(V&&x?.length?Ane(Xe,x.map(It=>It.value)):Xe),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?Ane(K.current,x.map(qe=>qe.value)):K.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=htt(je,{onScrubEnd:Be},U),Le=S.useCallback(Ve=>{!A&&Q.current&&Q.current(Ve)},[A]),St=Ve=>{if(!A)switch(Ve.key){case"ArrowUp":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=fj(O,x);W(Xe),Le(Xe);break}const qe=wk(Math.min(Math.max(O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?mj(O,x):fj(O,x);W(Xe),Le(Xe);break}const qe=wk(Math.min(Math.max(U==="rtl"?O-f:O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=mj(O,x);W(Xe),Le(Xe);break}const qe=wk(Math.min(Math.max(O-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?fj(O,x):mj(O,x);W(Xe),Le(Xe);break}const qe=wk(Math.min(Math.max(U==="rtl"?O+f:O-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(qie(x)),Le(qie(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(Hie(x)),Le(Hie(x));break}W(u),Le(u);break}}};return y.jsx(mlt,{value:{getStyles:G},children:y.jsxs(Iie,{...q,ref:on(r,ae),onKeyDownCapture:St,onMouseDownCapture:()=>ae.current?.focus(),size:c,disabled:A,children:[y.jsx(Vie,{inverted:I,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(Oie,{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:T})}),y.jsx("input",{type:"hidden",name:w,value:ce,...M})]})})});Wie.classes=Uie,Wie.displayName="@mantine/core/Slider";const wlt=We((e,r)=>{const{w:n,h:o,miw:a,mih:i,...l}=Re("Space",null,e);return y.jsx(Ae,{ref:r,...l,w:n,miw:a??n,h:o,mih:i??o})});wlt.displayName="@mantine/core/Space";var Gie={root:"m_6d731127"};const klt={gap:"md",align:"stretch",justify:"flex-start"},_lt=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":ro(r),"--stack-align":n,"--stack-justify":o}}),Yie=We((e,r)=>{const n=Re("Stack",klt,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:Gie,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:_lt});return y.jsx(Ae,{ref:r,...w("root"),variant:f,...v})});Yie.classes=Gie,Yie.displayName="@mantine/core/Stack";const[Slt,gj]=Da("Tabs component was not found in the tree");var H0={root:"m_89d60db1","list--default":"m_576c9d4",list:"m_89d33d6d",tab:"m_4ec4dce6",panel:"m_b0c91715",tabSection:"m_fc420b1f",tabLabel:"m_42bbd1ae","tab--default":"m_539e827b","list--outline":"m_6772fbd5","tab--outline":"m_b59ab47c","tab--pills":"m_c3381914"};const yj=We((e,r)=>{const n=Re("TabsList",null,e),{children:o,className:a,grow:i,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=gj();return y.jsx(Ae,{...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})});yj.classes=H0,yj.displayName="@mantine/core/TabsList";const vj=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=gj(),g=f.value===i,v=f.keepMounted||u||g?o:null;return y.jsx(Ae,{...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})});vj.classes=H0,vj.displayName="@mantine/core/TabsPanel";const bj=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:$}=gc(),z=gj(),T=s===z.value,A=j=>{z.onChange(z.allowTabDeactivation&&s===z.value?null:s),c?.(j)},R={classNames:g,styles:v,props:n};return y.jsxs(hs,{...z.getStyles("tab",{className:o,style:f,variant:z.variant,...R}),disabled:u,unstyled:z.unstyled,variant:z.variant,mod:[{active:T,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":T,tabIndex:k!==void 0?k:T||z.value===null?0:-1,"aria-controls":z.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?Uo(p,_):void 0},onKeyDown:NR({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})]})});bj.classes=H0,bj.displayName="@mantine/core/TabsTab";const Xie="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",Elt={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},Clt=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":hn(r),"--tabs-color":Uo(n,e),"--tabs-text-color":nrt(o,e)?qR({color:n,theme:e,autoContrast:o}):void 0}}),U0=We((e,r)=>{const n=Re("Tabs",Elt,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:T,vars:A,autoContrast:R,mod:j,attributes:I,...P}=n,L=bl(d),[H,M]=qd({value:a,defaultValue:o,finalValue:null,onChange:i}),V=dt({name:"Tabs",props:n,classes:H0,className:z,style:T,classNames:C,styles:_,unstyled:$,attributes:I,vars:A,varsResolver:Clt});return y.jsx(Slt,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:Sne(`${L}-tab`,Xie),getPanelId:Sne(`${L}-panel`,Xie),onChange:M,allowTabDeactivation:p,variant:f,color:g,radius:v,inverted:w,keepMounted:k,unstyled:$,getStyles:V},children:y.jsx(Ae,{ref:r,id:L,variant:f,mod:[{orientation:l,inverted:l==="horizontal"&&w,placement:l==="vertical"&&x},j],...V("root"),...P,children:s})})});U0.classes=H0,U0.displayName="@mantine/core/Tabs",U0.Tab=bj,U0.Panel=vj,U0.List=yj;var Zie={root:"m_7341320d"};const $lt=(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}}},Kie=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:Zie,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:$lt});return y.jsx(Ae,{ref:r,...f("root"),...p})});Kie.classes=Zie,Kie.displayName="@mantine/core/ThemeIcon";const zlt=["h1","h2","h3","h4","h5","h6"],Rlt=["xs","sm","md","lg","xl"];function Tlt(e,r){const n=r!==void 0?r:`h${e}`;return zlt.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:Rlt.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 Qie={root:"m_8a5d1357"};const jlt={order:1},Alt=(e,{order:r,size:n,lineClamp:o,textWrap:a})=>{const i=Tlt(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}}},Jie=We((e,r)=>{const n=Re("Title",jlt,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:Qie,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:Alt});return[1,2,3,4,5,6].includes(c)?y.jsx(Ae,{...k("root"),component:`h${c}`,variant:p,ref:r,mod:[{order:c,"data-line-clamp":typeof f=="number"},v],size:u,...x}):null});Jie.classes=Qie,Jie.displayName="@mantine/core/Title";function ele(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 xj({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(xj,{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&&j0(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=j0(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const z=Array.from($.querySelectorAll("[role=treeitem]")),T=z.indexOf(_.currentTarget);if(T===-1)return;const A=_.nativeEvent.code==="ArrowDown"?T+1:T-1;if(z[A]?.focus(),_.shiftKey){const R=z[A];R&&o.setSelectedState(ele(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(ele(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(Ae,{component:"ul",role:"group",...r("subtree"),"data-level":s,children:v})]})}xj.displayName="@mantine/core/TreeNode";function kk(e,r,n=[]){const o=[];for(const a of e)if(Array.isArray(a.children)&&a.children.length>0){const i=kk(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 tle(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=tle(e,n.children);if(o)return o}}return null}function _k(e,r,n=[]){const o=tle(e,r);return o?!Array.isArray(o.children)||o.children.length===0?[o.value]:(o.children.forEach(a=>{Array.isArray(a.children)&&a.children.length>0?_k(a.value,r,n):n.push(a.value)}),n):n}function rle(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...rle(n.children)):r.push(n.value),r),[])}function Dlt(e,r,n){return n.length===0?!1:n.includes(e)?!0:kk(r,n).result.some(o=>o.value===e&&o.checked)}const Mlt=jne(Dlt);function Nlt(e,r,n){return n.length===0?!1:kk(r,n).result.some(o=>o.value===e&&o.indeterminate)}const Plt=jne(Nlt);function nle(e,r,n,o={}){return r.forEach(a=>{o[a.value]=a.value in e?e[a.value]:a.value===n,Array.isArray(a.children)&&nle(e,a.children,n,o)}),o}function Blt(e,r){const n=[];return e.forEach(o=>n.push(..._k(o,r))),Array.from(new Set(n))}function Ilt({initialSelectedState:e=[],initialCheckedState:r=[],initialExpandedState:n={},multiple:o=!1,onNodeCollapse: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=>nle(F,B,u)),g(F=>Blt(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?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]),T=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!0}),F})},[]),A=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!1}),F})},[]),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])),[]),j=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),I=S.useCallback(B=>{v===B&&w(null),p(F=>F.filter(q=>q!==B))},[]),P=S.useCallback(()=>{p([]),w(null)},[]),L=S.useCallback(B=>{const F=_k(B,l);g(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=_k(B,l);g(q=>q.filter(G=>!F.includes(G)))},[l]),M=S.useCallback(()=>{g(()=>rle(l))},[l]),V=S.useCallback(()=>{g([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:z,expandAllNodes:T,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:M,uncheckAllNodes:V,setCheckedState:g,toggleSelected:R,select:j,deselect:I,clearSelected:P,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>kk(l,f).result,isNodeChecked:B=>Mlt(B,l,f),isNodeIndeterminate:B=>Plt(B,l,f)}}var ole={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function ale(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...ale(n.children)),r),[])}const Olt={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},Llt=(e,{levelOffset:r})=>({root:{"--level-offset":ro(r)}}),ile=We((e,r)=>{const n=Re("Tree",Olt,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=Ilt(),T=p||z,A=dt({name:"Tree",classes:ole,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:Llt}),R=Ene(()=>v&&T.clearSelected()),j=on(r,R),I=S.useMemo(()=>ale(d),[d]);S.useEffect(()=>{T.initialize(d)},[d]);const P=d.map((L,H)=>y.jsx(xj,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:g,controller:T,renderNode:f,flatValues:I,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Ae,{component:"ul",ref:j,...A("root"),...$,role:"tree","aria-multiselectable":T.multiple,"data-tree-root":!0,children:P})});ile.displayName="@mantine/core/Tree",ile.classes=ole;var Flt="Invariant failed";function Sk(e,r){if(!e)throw new Error(Flt)}function Vlt(e){return typeof e=="function"}function lle(e,r){return Vlt(e)?e(r):e}function qlt(e,r){return r.reduce((n,o)=>(n[o]=e[o],n),{})}function sle(e,r){if(e===r)return e;const n=r,o=dle(e)&&dle(n);if(o||Ek(e)&&Ek(n)){const 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!(!cle(n)||!n.hasOwnProperty("isPrototypeOf"))}function cle(e){return Object.prototype.toString.call(e)==="[object Object]"}function dle(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function ule(e,r){let n=Object.keys(e);return r&&(n=n.filter(o=>e[o]!==void 0)),n}function wj(e,r,n){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(Ek(e)&&Ek(r)){const o=n?.ignoreUndefined??!0,a=ule(e,o),i=ule(r,o);return!n?.partial&&a.length!==i.length?!1:i.every(l=>wj(e[l],r[l],n))}return Array.isArray(e)&&Array.isArray(r)?e.length!==r.length?!1:!e.some((o,a)=>!wj(o,r[a],n)):!1}function Hlt(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 Ck(e,r){return e?.endsWith("/")&&e!=="/"&&e!==`${r}/`?e.slice(0,-1):e}function Ult(e,r,n){return Ck(e,n)===Ck(r,n)}function $k(e){return!!e?.isNotFound}const ple="tsr-scroll-restoration-v1_3";let hle=!1;try{hle=typeof window<"u"&&typeof window.sessionStorage=="object"}catch{}hle&&JSON.parse(window.sessionStorage.getItem(ple)||"null");const fle=e=>e.state.key||e.href;function Wlt(e,r,n,o,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 mle="__root__";function Glt(e){return!!e?.isRedirect}function Ylt(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 Xlt="Error preloading route! ☝️";function gle(e){const r=e.errorComponent??kj;return y.jsx(Zlt,{getResetKey:e.getResetKey,onCatch:e.onCatch,children:({error:n,reset:o})=>n?S.createElement(r,{error:n,reset:o}):e.children})}class Zlt extends S.Component{constructor(){super(...arguments),this.state={error:null}}static getDerivedStateFromProps(r){return{resetKey:r.getResetKey()}}static getDerivedStateFromError(r){return{error:r}}reset(){this.setState({error:null})}componentDidUpdate(r,n){n.error&&n.resetKey!==this.state.resetKey&&this.reset()}componentDidCatch(r,n){this.props.onCatch&&this.props.onCatch(r,n)}render(){return this.props.children({error:this.state.resetKey!==this.props.getResetKey()?null:this.state.error,reset:()=>{this.reset()}})}}function kj({error:e}){const[r,n]=S.useState(!1);return y.jsxs("div",{style:{padding:".5rem",maxWidth:"100%"},children:[y.jsxs("div",{style:{display:"flex",alignItems:"center",gap:".5rem"},children:[y.jsx("strong",{style:{fontSize:"1rem"},children:"Something went wrong!"}),y.jsx("button",{style:{appearance:"none",fontSize:".6em",border:"1px solid currentColor",padding:".1rem .2rem",fontWeight:"bold",borderRadius:".25rem"},onClick:()=>n(o=>!o),children:r?"Hide Error":"Show Error"})]}),y.jsx("div",{style:{height:".25rem"}}),r?y.jsx("div",{children:y.jsx("pre",{style:{fontSize:".7em",border:"1px solid red",borderRadius:".25rem",padding:".3rem",color:"red",overflow:"auto"},children:e.message?y.jsx("code",{children:e.message}):null})}):null]})}function Klt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var yle={exports:{}},_j={},vle={exports:{}},Sj={},ble;function Qlt(){if(ble)return Sj;ble=1;var e=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 Sj.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,Sj}var xle;function wle(){return xle||(xle=1,vle.exports=Qlt()),vle.exports}var kle;function Jlt(){if(kle)return _j;kle=1;var e=Kr,r=wle();function n(d,u){return d===u&&(d!==0||1/d===1/u)||d!==d&&u!==u}var o=typeof Object.is=="function"?Object.is:n,a=r.useSyncExternalStore,i=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return _j.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(T){if(!C){if(C=!0,_=T,T=f(T),g!==void 0&&w.hasValue){var A=w.value;if(g(A,T))return $=A}return $=T}if(A=$,o(_,T))return A;var R=f(T);return g!==void 0&&g(A,R)?(_=T,A):(_=T,$=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},_j}var _le;function est(){return _le||(_le=1,yle.exports=Jlt()),yle.exports}var Sle=est();const tst=Klt(Sle);function rst(e,r=n=>n){return Sle.useSyncExternalStoreWithSelector(e.subscribe,()=>e.state,()=>e.state,r,nst)}function nst(e,r){if(Object.is(e,r))return!0;if(typeof e!="object"||e===null||typeof r!="object"||r===null)return!1;if(e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(const[o,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"?Ej:window.__TSR_ROUTER_CONTEXT__?window.__TSR_ROUTER_CONTEXT__:(window.__TSR_ROUTER_CONTEXT__=Ej,Ej)}function Up(e){const r=S.useContext(ost());return e?.warn,r}function El(e){const r=Up({warn:e?.router===void 0}),n=e?.router||r,o=S.useRef(void 0);return rst(n.__store,a=>{if(e?.select){if(e.structuralSharing??n.options.defaultStructuralSharing){const i=sle(o.current,e.select(a));return o.current=i,i}return e.select(a)}return a})}const Ele=S.createContext(void 0);S.createContext(void 0);function ast(e){const r=El({select:n=>`not-found-${n.location.pathname}-${n.status}`});return y.jsx(gle,{getResetKey:()=>r,onCatch:(n,o)=>{var a;if($k(n))(a=e.onCatch)==null||a.call(e,n,o);else throw n},errorComponent:({error:n})=>{var o;if($k(n))return(o=e.fallback)==null?void 0:o.call(e,n);throw n},children:e.children})}function ist(){return y.jsx("p",{children:"Not Found"})}function Cj(e){return y.jsx(y.Fragment,{children:e.children})}function Cle(e,r,n){return r.options.notFoundComponent?y.jsx(r.options.notFoundComponent,{data:n}):e.options.defaultNotFoundComponent?y.jsx(e.options.defaultNotFoundComponent,{data:n}):y.jsx(ist,{})}var $j,$le;function lst(){if($le)return $j;$le=1;const e={},r=e.hasOwnProperty,n=(R,j)=>{for(const I in R)r.call(R,I)&&j(I,R[I])},o=(R,j)=>(j&&n(j,(I,P)=>{R[I]=P}),R),a=(R,j)=>{const I=R.length;let P=-1;for(;++P"\\u"+("0000"+R).slice(-4),l=(R,j)=>{let I=R.toString(16);return j?I:I.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,T=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^ !#-&\(-\[\]-_a-~]/g,A=(R,j)=>{const I=()=>{F=B,++j.indentLevel,B=j.indent.repeat(j.indentLevel)},P={escapeEverything:!1,minimal:!1,isScriptContext:!1,quotes:"single",wrap:!1,es6:!1,json:!1,compact:!0,lowercaseHex:!1,numbers:"decimal",indent:" ",indentLevel:0,__inline1__:!1,__inline2__:!1},L=j&&j.json;L&&(P.quotes="double",P.wrap=!0),j=o(P,j),j.quotes!="single"&&j.quotes!="double"&&j.quotes!="backtick"&&(j.quotes="single");const H=j.quotes=="double"?'"':j.quotes=="backtick"?"`":"'",M=j.compact,V=j.lowercaseHex;let B=j.indent.repeat(j.indentLevel),F="";const q=j.__inline1__,G=j.__inline2__,U=M?"":` -`;let Y,Z=!0;const O=j.numbers=="binary",W=j.numbers=="octal",K=j.numbers=="decimal",Q=j.numbers=="hexadecimal";if(L&&R&&v(R.toJSON)&&(R=R.toJSON()),!p(R)){if(w(R))return R.size==0?"new Map()":(M||(j.__inline1__=!0,j.__inline2__=!1),"new Map("+A(Array.from(R),j)+")");if(x(R))return R.size==0?"new Set()":"new Set("+A(Array.from(R),j)+")";if(d(R))return R.length==0?"Buffer.from([])":"Buffer.from("+A(Array.from(R),j)+")";if(c(R))return Y=[],j.wrap=!0,q&&(j.__inline1__=!1,j.__inline2__=!0),G||I(),a(R,te=>{Z=!1,G&&(j.__inline2__=!1),Y.push((M||G?"":B)+A(te,j))}),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 O?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=[],j.wrap=!0,I(),n(R,(te,re)=>{Z=!1,Y.push((M?"":B)+A(te,j)+":"+(M?"":" ")+A(re,j))}),Z?"{}":"{"+U+Y.join(","+U)+U+(M?"":F)+"}"):L?JSON.stringify(R)||"null":String(R)}const ae=j.escapeEverything?z:T;return Y=R.replace(ae,(te,re,ue,_e,ce,pe)=>{if(re){if(j.minimal)return re;const je=re.charCodeAt(0),Be=re.charCodeAt(1);if(j.es6){const Je=(je-55296)*1024+Be-56320+65536;return"\\u{"+l(Je,V)+"}"}return i(l(je,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||j.escapeEverything?"\\"+_e:_e;if(C.test(te))return k[te];if(j.minimal&&!$.test(te))return te;const xe=l(te.charCodeAt(0),V);return L||xe.length>2?i(xe):"\\x"+("00"+xe).slice(-2)}),H=="`"&&(Y=Y.replace(/\$\{/g,"\\${")),j.isScriptContext&&(Y=Y.replace(/<\/(script|style)/gi,"<\\/$1").replace(/