@likec4/diagram 1.27.2 → 1.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle/index.js +715 -616
- package/dist/base/primitives/customEdge.d.ts +1 -1
- package/dist/base/primitives/edge/EdgeActionButton.d.ts +1 -2
- package/dist/base/primitives/edge/EdgeLabelContainer.js +3 -2
- package/dist/base/primitives/edge/EdgePath.d.ts +1 -1
- package/dist/base/primitives/element/ElementActionButtons.d.ts +1 -1
- package/dist/base/primitives/element/ElementActionButtons.js +11 -7
- package/dist/base/primitives/element/ElementDetailsButton.js +5 -1
- package/dist/bundle/styles.css.js +2 -2
- package/dist/hooks/useDiagram.d.ts +2 -2
- package/dist/hooks/useDiagram.js +9 -20
- package/dist/hooks/useXYFlow.d.ts +2 -2
- package/dist/likec4diagram/DiagramXYFlow.js +6 -6
- package/dist/likec4diagram/custom/edges/RelationshipEdge.d.ts +2 -2
- package/dist/likec4diagram/custom/edges/RelationshipEdge.js +11 -1
- package/dist/likec4diagram/custom/index.d.ts +2 -1
- package/dist/likec4diagram/ui/notation/NotationPanel.js +0 -1
- package/dist/overlays/Overlays.js +2 -2
- package/dist/overlays/element-details/actor.d.ts +303 -303
- package/dist/overlays/overlay/Overlay.css.d.ts +2 -25
- package/dist/overlays/overlay/Overlay.css.js +3 -43
- package/dist/overlays/overlay/Overlay.d.ts +1 -1
- package/dist/overlays/overlay/Overlay.js +97 -90
- package/dist/overlays/overlaysActor.js +4 -1
- package/dist/overlays/relationship-details/RelationshipDetails.d.ts +1 -1
- package/dist/overlays/relationship-details/actor.d.ts +16 -7
- package/dist/overlays/relationship-details/actor.js +1 -6
- package/dist/overlays/relationship-details/custom/edgeTypes.d.ts +1 -1
- package/dist/overlays/relationship-details/custom/nodeTypes.js +1 -1
- package/dist/overlays/relationship-details/hooks.d.ts +2 -3
- package/dist/overlays/relationship-details/hooks.js +2 -5
- package/dist/overlays/relationship-details/layout-to-xyflow.js +0 -4
- package/dist/overlays/relationships-browser/RelationshipsBrowser.d.ts +1 -1
- package/dist/overlays/relationships-browser/actor.d.ts +2 -3
- package/dist/overlays/relationships-browser/custom/edgeTypes.d.ts +1 -1
- package/dist/overlays/relationships-browser/custom/nodeTypes.js +1 -1
- package/dist/overlays/relationships-browser/hooks.d.ts +2 -3
- package/dist/overlays/relationships-browser/hooks.js +5 -8
- package/dist/overlays/relationships-browser/layout.d.ts +1 -1
- package/dist/overlays/relationships-browser/layout.js +2 -6
- package/dist/state/diagram-machine.d.ts +2 -2
- package/dist/state/hotkeyActor.js +12 -3
- package/dist/styles.css.js +1 -1
- package/dist/utils/index.d.ts +0 -1
- package/package.json +10 -10
- package/src/base/primitives/compound/CompoundNodeContainer.css.ts +0 -3
- package/src/base/primitives/edge/EdgeActionButton.tsx +1 -2
- package/src/base/primitives/edge/EdgeLabelContainer.tsx +7 -5
- package/src/base/primitives/element/ElementActionButtons.tsx +11 -9
- package/src/base/primitives/element/ElementDetailsButton.tsx +4 -0
- package/src/base/primitives/element/ElementNodeContainer.css.ts +0 -18
- package/src/bundle/styles.css.ts +7 -2
- package/src/components/SearchControl.css.ts +4 -8
- package/src/hooks/useDiagram.ts +9 -20
- package/src/likec4diagram/DiagramXYFlow.tsx +6 -6
- package/src/likec4diagram/custom/edges/RelationshipEdge.tsx +7 -1
- package/src/likec4diagram/custom/edges/edges.css.ts +0 -2
- package/src/likec4diagram/ui/notation/NotationPanel.css.ts +0 -4
- package/src/likec4diagram/ui/notation/NotationPanel.tsx +0 -1
- package/src/likec4diagram/ui/search/ViewsColumn.css.ts +0 -4
- package/src/overlays/Overlays.tsx +3 -3
- package/src/overlays/overlay/Overlay.css.ts +3 -43
- package/src/overlays/overlay/Overlay.tsx +108 -101
- package/src/overlays/overlaysActor.ts +5 -1
- package/src/overlays/relationship-details/actor.ts +1 -6
- package/src/overlays/relationship-details/custom/nodeTypes.tsx +1 -1
- package/src/overlays/relationship-details/hooks.ts +2 -5
- package/src/overlays/relationship-details/layout-to-xyflow.ts +2 -25
- package/src/overlays/relationships-browser/custom/nodeTypes.tsx +1 -1
- package/src/overlays/relationships-browser/hooks.ts +5 -8
- package/src/overlays/relationships-browser/layout.ts +3 -20
- package/src/state/hotkeyActor.ts +13 -3
- package/src/utils/index.ts +0 -1
- package/dist/utils/types.d.ts +0 -8
- package/src/utils/types.ts +0 -6
package/bundle/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment as Fragment$1 } from "react/jsx-runtime";
|
|
2
2
|
import * as React from "react";
|
|
3
|
-
import React__default, { useState, Fragment, createContext, useContext, useRef, useEffect, useMemo, useCallback, useLayoutEffect, useId as useId$2, forwardRef, cloneElement, Children, createElement, useInsertionEffect as useInsertionEffect$1, isValidElement, Component, memo as memo$3, useSyncExternalStore, createRef,
|
|
3
|
+
import React__default, { useState, Fragment, createContext, useContext, useRef, useEffect, useMemo, useCallback, useLayoutEffect, useId as useId$2, forwardRef, cloneElement, Children, createElement, useInsertionEffect as useInsertionEffect$1, isValidElement, Component, memo as memo$3, useSyncExternalStore, createRef, useDeferredValue } from "react";
|
|
4
4
|
import * as ReactDOM from "react-dom";
|
|
5
5
|
import ReactDOM__default, { createPortal } from "react-dom";
|
|
6
6
|
import { invariant as invariant$1, hasAtLeast, nonexhaustive, isStepEdgeId, extractStep, DefaultShapeSize, DefaultTextSize, DefaultPaddingSize, compareNatural, DiagramNode, nameFromFqn, nonNullable, defaultTheme, ElementShapes, toArray as toArray$1, ifind, DefaultMap, ancestorsFqn, isScopedElementView, isDeploymentView, Queue, ElementKind, delay as delay$1, isAncestor, sortParentsFirst, ifilter, whereOperatorAsPredicate, getBBoxCenter, getParallelStepsPrefix } from "@likec4/core";
|
|
@@ -1021,7 +1021,7 @@ function useHovered() {
|
|
|
1021
1021
|
const [hovered, setHovered] = useState(-1);
|
|
1022
1022
|
return [hovered, { setHovered, resetHovered: () => setHovered(-1) }];
|
|
1023
1023
|
}
|
|
1024
|
-
function clamp$
|
|
1024
|
+
function clamp$5(value, min2, max2) {
|
|
1025
1025
|
return min2 === void 0 && max2 === void 0 ? value : min2 !== void 0 && max2 === void 0 ? Math.max(value, min2) : Math.min(min2 === void 0 && max2 !== void 0 ? value : Math.max(value, min2), max2);
|
|
1026
1026
|
}
|
|
1027
1027
|
function randomId(prefix = "mantine-") {
|
|
@@ -1362,8 +1362,8 @@ function useMergedRef(...refs) {
|
|
|
1362
1362
|
}
|
|
1363
1363
|
function clampUseMovePosition(position) {
|
|
1364
1364
|
return {
|
|
1365
|
-
x: clamp$
|
|
1366
|
-
y: clamp$
|
|
1365
|
+
x: clamp$5(position.x, 0, 1),
|
|
1366
|
+
y: clamp$5(position.y, 0, 1)
|
|
1367
1367
|
};
|
|
1368
1368
|
}
|
|
1369
1369
|
function useMove(onChange, handlers, dir = "ltr") {
|
|
@@ -1377,10 +1377,10 @@ function useMove(onChange, handlers, dir = "ltr") {
|
|
|
1377
1377
|
node2.style.userSelect = "none";
|
|
1378
1378
|
const rect = node2.getBoundingClientRect();
|
|
1379
1379
|
if (rect.width && rect.height) {
|
|
1380
|
-
const _x = clamp$
|
|
1380
|
+
const _x = clamp$5((x2 - rect.left) / rect.width, 0, 1);
|
|
1381
1381
|
onChange({
|
|
1382
1382
|
x: dir === "ltr" ? _x : 1 - _x,
|
|
1383
|
-
y: clamp$
|
|
1383
|
+
y: clamp$5((y2 - rect.top) / rect.height, 0, 1)
|
|
1384
1384
|
});
|
|
1385
1385
|
}
|
|
1386
1386
|
}
|
|
@@ -3688,7 +3688,7 @@ const min$1 = Math.min, max$1 = Math.max, round = Math.round, floor = Math.floor
|
|
|
3688
3688
|
start: "end",
|
|
3689
3689
|
end: "start"
|
|
3690
3690
|
};
|
|
3691
|
-
function clamp$
|
|
3691
|
+
function clamp$4(start2, value, end) {
|
|
3692
3692
|
return max$1(start2, min$1(value, end));
|
|
3693
3693
|
}
|
|
3694
3694
|
function evaluate(value, param) {
|
|
@@ -3959,7 +3959,7 @@ const arrow$3 = (options) => ({
|
|
|
3959
3959
|
}, axis = getAlignmentAxis(placement), length = getAxisLength(axis), arrowDimensions = await platform2.getDimensions(element), isYAxis = axis === "y", minProp = isYAxis ? "top" : "left", maxProp = isYAxis ? "bottom" : "right", clientProp = isYAxis ? "clientHeight" : "clientWidth", endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length], startDiff = coords[axis] - rects.reference[axis], arrowOffsetParent = await (platform2.getOffsetParent == null ? void 0 : platform2.getOffsetParent(element));
|
|
3960
3960
|
let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;
|
|
3961
3961
|
(!clientSize || !await (platform2.isElement == null ? void 0 : platform2.isElement(arrowOffsetParent))) && (clientSize = elements.floating[clientProp] || rects.floating[length]);
|
|
3962
|
-
const centerToReference = endDiff / 2 - startDiff / 2, largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1, minPadding = min$1(paddingObject[minProp], largestPossiblePadding), maxPadding = min$1(paddingObject[maxProp], largestPossiblePadding), min$1$1 = minPadding, max2 = clientSize - arrowDimensions[length] - maxPadding, center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference, offset2 = clamp$
|
|
3962
|
+
const centerToReference = endDiff / 2 - startDiff / 2, largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1, minPadding = min$1(paddingObject[minProp], largestPossiblePadding), maxPadding = min$1(paddingObject[maxProp], largestPossiblePadding), min$1$1 = minPadding, max2 = clientSize - arrowDimensions[length] - maxPadding, center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference, offset2 = clamp$4(min$1$1, center, max2), shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset2 && rects.reference[length] / 2 - (center < min$1$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0, alignmentOffset = shouldAddOffset ? center < min$1$1 ? center - min$1$1 : center - max2 : 0;
|
|
3963
3963
|
return {
|
|
3964
3964
|
[axis]: coords[axis] + alignmentOffset,
|
|
3965
3965
|
data: {
|
|
@@ -4213,11 +4213,11 @@ const offset$3 = function(options) {
|
|
|
4213
4213
|
let mainAxisCoord = coords[mainAxis], crossAxisCoord = coords[crossAxis];
|
|
4214
4214
|
if (checkMainAxis) {
|
|
4215
4215
|
const minSide = mainAxis === "y" ? "top" : "left", maxSide = mainAxis === "y" ? "bottom" : "right", min2 = mainAxisCoord + overflow[minSide], max2 = mainAxisCoord - overflow[maxSide];
|
|
4216
|
-
mainAxisCoord = clamp$
|
|
4216
|
+
mainAxisCoord = clamp$4(min2, mainAxisCoord, max2);
|
|
4217
4217
|
}
|
|
4218
4218
|
if (checkCrossAxis) {
|
|
4219
4219
|
const minSide = crossAxis === "y" ? "top" : "left", maxSide = crossAxis === "y" ? "bottom" : "right", min2 = crossAxisCoord + overflow[minSide], max2 = crossAxisCoord - overflow[maxSide];
|
|
4220
|
-
crossAxisCoord = clamp$
|
|
4220
|
+
crossAxisCoord = clamp$4(min2, crossAxisCoord, max2);
|
|
4221
4221
|
}
|
|
4222
4222
|
const limitedCoords = limiter.fn({
|
|
4223
4223
|
...state,
|
|
@@ -5776,11 +5776,11 @@ function linearScale(input2, output) {
|
|
|
5776
5776
|
return output[0] + ratio * (value - input2[0]);
|
|
5777
5777
|
};
|
|
5778
5778
|
}
|
|
5779
|
-
function clamp$
|
|
5779
|
+
function clamp$3(value, [min2, max2]) {
|
|
5780
5780
|
return Math.min(max2, Math.max(min2, value));
|
|
5781
5781
|
}
|
|
5782
5782
|
function getThumbOffsetFromScroll(scrollPos, sizes2, dir = "ltr") {
|
|
5783
|
-
const thumbSizePx = getThumbSize(sizes2), scrollbarPadding = sizes2.scrollbar.paddingStart + sizes2.scrollbar.paddingEnd, scrollbar = sizes2.scrollbar.size - scrollbarPadding, maxScrollPos = sizes2.content - sizes2.viewport, maxThumbPos = scrollbar - thumbSizePx, scrollClampRange = dir === "ltr" ? [0, maxScrollPos] : [maxScrollPos * -1, 0], scrollWithoutMomentum = clamp$
|
|
5783
|
+
const thumbSizePx = getThumbSize(sizes2), scrollbarPadding = sizes2.scrollbar.paddingStart + sizes2.scrollbar.paddingEnd, scrollbar = sizes2.scrollbar.size - scrollbarPadding, maxScrollPos = sizes2.content - sizes2.viewport, maxThumbPos = scrollbar - thumbSizePx, scrollClampRange = dir === "ltr" ? [0, maxScrollPos] : [maxScrollPos * -1, 0], scrollWithoutMomentum = clamp$3(scrollPos, scrollClampRange);
|
|
5784
5784
|
return linearScale([0, maxScrollPos], [0, maxThumbPos])(scrollWithoutMomentum);
|
|
5785
5785
|
}
|
|
5786
5786
|
function getScrollPositionFromPointer(pointerPos, pointerOffset, sizes2, dir = "ltr") {
|
|
@@ -11142,9 +11142,9 @@ const defaultProps$a = {
|
|
|
11142
11142
|
varsResolver: varsResolver$6,
|
|
11143
11143
|
unstyled
|
|
11144
11144
|
}), { dir } = useDirection(), [hovered, setHovered] = useState(!1), [_value, setValue] = useUncontrolled({
|
|
11145
|
-
value: typeof value == "number" ? clamp$
|
|
11146
|
-
defaultValue: typeof defaultValue == "number" ? clamp$
|
|
11147
|
-
finalValue: clamp$
|
|
11145
|
+
value: typeof value == "number" ? clamp$5(value, min2, max2) : value,
|
|
11146
|
+
defaultValue: typeof defaultValue == "number" ? clamp$5(defaultValue, min2, max2) : defaultValue,
|
|
11147
|
+
finalValue: clamp$5(0, min2, max2),
|
|
11148
11148
|
onChange
|
|
11149
11149
|
}), valueRef = useRef(_value), root2 = useRef(null), thumb = useRef(null), position = getPosition({ value: _value, min: min2, max: max2 }), scaledValue = scale2(_value), _label = typeof label2 == "function" ? label2(scaledValue) : label2, precision = _precision ?? getPrecision(step), handleChange = useCallback(
|
|
11150
11150
|
({ x: x2 }) => {
|
|
@@ -12875,7 +12875,7 @@ function usePreviousDistinct(value, predicate = isStrictEqual) {
|
|
|
12875
12875
|
predicate(currentRef.current, value) || (setPreviousState(currentRef.current), currentRef.current = value);
|
|
12876
12876
|
}, [value]), previousState;
|
|
12877
12877
|
}
|
|
12878
|
-
const inlinedStyles = `@layer reset,base,mantine,xyflow,tokens,recipes,utilities;@layer mantine{*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}.likec4-shadow-root{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){.likec4-shadow-root{-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)}.likec4-shadow-root{color-scheme:var(--mantine-color-scheme);--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-color-scheme: light dark;--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-radius-default: calc(.25rem * 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-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-color-dark-0: #c9c9c9;--mantine-color-dark-1: #b8b8b8;--mantine-color-dark-2: #828282;--mantine-color-dark-3: #696969;--mantine-color-dark-4: #424242;--mantine-color-dark-5: #3b3b3b;--mantine-color-dark-6: #2e2e2e;--mantine-color-dark-7: #242424;--mantine-color-dark-8: #1f1f1f;--mantine-color-dark-9: #141414;--mantine-color-gray-0: #f8f9fa;--mantine-color-gray-1: #f1f3f5;--mantine-color-gray-2: #e9ecef;--mantine-color-gray-3: #dee2e6;--mantine-color-gray-4: #ced4da;--mantine-color-gray-5: #adb5bd;--mantine-color-gray-6: #868e96;--mantine-color-gray-7: #495057;--mantine-color-gray-8: #343a40;--mantine-color-gray-9: #212529;--mantine-color-red-0: #fff5f5;--mantine-color-red-1: #ffe3e3;--mantine-color-red-2: #ffc9c9;--mantine-color-red-3: #ffa8a8;--mantine-color-red-4: #ff8787;--mantine-color-red-5: #ff6b6b;--mantine-color-red-6: #fa5252;--mantine-color-red-7: #f03e3e;--mantine-color-red-8: #e03131;--mantine-color-red-9: #c92a2a;--mantine-color-pink-0: #fff0f6;--mantine-color-pink-1: #ffdeeb;--mantine-color-pink-2: #fcc2d7;--mantine-color-pink-3: #faa2c1;--mantine-color-pink-4: #f783ac;--mantine-color-pink-5: #f06595;--mantine-color-pink-6: #e64980;--mantine-color-pink-7: #d6336c;--mantine-color-pink-8: #c2255c;--mantine-color-pink-9: #a61e4d;--mantine-color-grape-0: #f8f0fc;--mantine-color-grape-1: #f3d9fa;--mantine-color-grape-2: #eebefa;--mantine-color-grape-3: #e599f7;--mantine-color-grape-4: #da77f2;--mantine-color-grape-5: #cc5de8;--mantine-color-grape-6: #be4bdb;--mantine-color-grape-7: #ae3ec9;--mantine-color-grape-8: #9c36b5;--mantine-color-grape-9: #862e9c;--mantine-color-violet-0: #f3f0ff;--mantine-color-violet-1: #e5dbff;--mantine-color-violet-2: #d0bfff;--mantine-color-violet-3: #b197fc;--mantine-color-violet-4: #9775fa;--mantine-color-violet-5: #845ef7;--mantine-color-violet-6: #7950f2;--mantine-color-violet-7: #7048e8;--mantine-color-violet-8: #6741d9;--mantine-color-violet-9: #5f3dc4;--mantine-color-indigo-0: #edf2ff;--mantine-color-indigo-1: #dbe4ff;--mantine-color-indigo-2: #bac8ff;--mantine-color-indigo-3: #91a7ff;--mantine-color-indigo-4: #748ffc;--mantine-color-indigo-5: #5c7cfa;--mantine-color-indigo-6: #4c6ef5;--mantine-color-indigo-7: #4263eb;--mantine-color-indigo-8: #3b5bdb;--mantine-color-indigo-9: #364fc7;--mantine-color-blue-0: #e7f5ff;--mantine-color-blue-1: #d0ebff;--mantine-color-blue-2: #a5d8ff;--mantine-color-blue-3: #74c0fc;--mantine-color-blue-4: #4dabf7;--mantine-color-blue-5: #339af0;--mantine-color-blue-6: #228be6;--mantine-color-blue-7: #1c7ed6;--mantine-color-blue-8: #1971c2;--mantine-color-blue-9: #1864ab;--mantine-color-cyan-0: #e3fafc;--mantine-color-cyan-1: #c5f6fa;--mantine-color-cyan-2: #99e9f2;--mantine-color-cyan-3: #66d9e8;--mantine-color-cyan-4: #3bc9db;--mantine-color-cyan-5: #22b8cf;--mantine-color-cyan-6: #15aabf;--mantine-color-cyan-7: #1098ad;--mantine-color-cyan-8: #0c8599;--mantine-color-cyan-9: #0b7285;--mantine-color-teal-0: #e6fcf5;--mantine-color-teal-1: #c3fae8;--mantine-color-teal-2: #96f2d7;--mantine-color-teal-3: #63e6be;--mantine-color-teal-4: #38d9a9;--mantine-color-teal-5: #20c997;--mantine-color-teal-6: #12b886;--mantine-color-teal-7: #0ca678;--mantine-color-teal-8: #099268;--mantine-color-teal-9: #087f5b;--mantine-color-green-0: #ebfbee;--mantine-color-green-1: #d3f9d8;--mantine-color-green-2: #b2f2bb;--mantine-color-green-3: #8ce99a;--mantine-color-green-4: #69db7c;--mantine-color-green-5: #51cf66;--mantine-color-green-6: #40c057;--mantine-color-green-7: #37b24d;--mantine-color-green-8: #2f9e44;--mantine-color-green-9: #2b8a3e;--mantine-color-lime-0: #f4fce3;--mantine-color-lime-1: #e9fac8;--mantine-color-lime-2: #d8f5a2;--mantine-color-lime-3: #c0eb75;--mantine-color-lime-4: #a9e34b;--mantine-color-lime-5: #94d82d;--mantine-color-lime-6: #82c91e;--mantine-color-lime-7: #74b816;--mantine-color-lime-8: #66a80f;--mantine-color-lime-9: #5c940d;--mantine-color-yellow-0: #fff9db;--mantine-color-yellow-1: #fff3bf;--mantine-color-yellow-2: #ffec99;--mantine-color-yellow-3: #ffe066;--mantine-color-yellow-4: #ffd43b;--mantine-color-yellow-5: #fcc419;--mantine-color-yellow-6: #fab005;--mantine-color-yellow-7: #f59f00;--mantine-color-yellow-8: #f08c00;--mantine-color-yellow-9: #e67700;--mantine-color-orange-0: #fff4e6;--mantine-color-orange-1: #ffe8cc;--mantine-color-orange-2: #ffd8a8;--mantine-color-orange-3: #ffc078;--mantine-color-orange-4: #ffa94d;--mantine-color-orange-5: #ff922b;--mantine-color-orange-6: #fd7e14;--mantine-color-orange-7: #f76707;--mantine-color-orange-8: #e8590c;--mantine-color-orange-9: #d9480f;--mantine-h1-font-size: calc(2.125rem * var(--mantine-scale));--mantine-h1-line-height: 1.3;--mantine-h1-font-weight: 700;--mantine-h2-font-size: calc(1.625rem * var(--mantine-scale));--mantine-h2-line-height: 1.35;--mantine-h2-font-weight: 700;--mantine-h3-font-size: calc(1.375rem * var(--mantine-scale));--mantine-h3-line-height: 1.4;--mantine-h3-font-weight: 700;--mantine-h4-font-size: calc(1.125rem * var(--mantine-scale));--mantine-h4-line-height: 1.45;--mantine-h4-font-weight: 700;--mantine-h5-font-size: calc(1rem * var(--mantine-scale));--mantine-h5-line-height: 1.5;--mantine-h5-font-weight: 700;--mantine-h6-font-size: calc(.875rem * var(--mantine-scale));--mantine-h6-line-height: 1.5;--mantine-h6-font-weight: 700}:root[data-mantine-color-scheme=dark]{--mantine-color-scheme: dark;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-white);--mantine-color-text: var(--mantine-color-dark-0);--mantine-color-body: var(--mantine-color-dark-7);--mantine-color-error: var(--mantine-color-red-8);--mantine-color-placeholder: var(--mantine-color-dark-3);--mantine-color-anchor: var(--mantine-color-blue-4);--mantine-color-default: var(--mantine-color-dark-6);--mantine-color-default-hover: var(--mantine-color-dark-5);--mantine-color-default-color: var(--mantine-color-white);--mantine-color-default-border: var(--mantine-color-dark-4);--mantine-color-dimmed: var(--mantine-color-dark-2);--mantine-color-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-7);--mantine-color-dark-light: rgba(36, 36, 36, .15);--mantine-color-dark-light-hover: rgba(36, 36, 36, .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(36, 36, 36, .05);--mantine-color-gray-text: var(--mantine-color-gray-4);--mantine-color-gray-filled: var(--mantine-color-gray-8);--mantine-color-gray-filled-hover: var(--mantine-color-gray-9);--mantine-color-gray-light: rgba(134, 142, 150, .15);--mantine-color-gray-light-hover: rgba(134, 142, 150, .2);--mantine-color-gray-light-color: var(--mantine-color-gray-3);--mantine-color-gray-outline: var(--mantine-color-gray-4);--mantine-color-gray-outline-hover: rgba(206, 212, 218, .05);--mantine-color-red-text: var(--mantine-color-red-4);--mantine-color-red-filled: var(--mantine-color-red-8);--mantine-color-red-filled-hover: var(--mantine-color-red-9);--mantine-color-red-light: rgba(250, 82, 82, .15);--mantine-color-red-light-hover: rgba(250, 82, 82, .2);--mantine-color-red-light-color: var(--mantine-color-red-3);--mantine-color-red-outline: var(--mantine-color-red-4);--mantine-color-red-outline-hover: rgba(255, 135, 135, .05);--mantine-color-pink-text: var(--mantine-color-pink-4);--mantine-color-pink-filled: var(--mantine-color-pink-8);--mantine-color-pink-filled-hover: var(--mantine-color-pink-9);--mantine-color-pink-light: rgba(230, 73, 128, .15);--mantine-color-pink-light-hover: rgba(230, 73, 128, .2);--mantine-color-pink-light-color: var(--mantine-color-pink-3);--mantine-color-pink-outline: var(--mantine-color-pink-4);--mantine-color-pink-outline-hover: rgba(247, 131, 172, .05);--mantine-color-grape-text: var(--mantine-color-grape-4);--mantine-color-grape-filled: var(--mantine-color-grape-8);--mantine-color-grape-filled-hover: var(--mantine-color-grape-9);--mantine-color-grape-light: rgba(190, 75, 219, .15);--mantine-color-grape-light-hover: rgba(190, 75, 219, .2);--mantine-color-grape-light-color: var(--mantine-color-grape-3);--mantine-color-grape-outline: var(--mantine-color-grape-4);--mantine-color-grape-outline-hover: rgba(218, 119, 242, .05);--mantine-color-violet-text: var(--mantine-color-violet-4);--mantine-color-violet-filled: var(--mantine-color-violet-8);--mantine-color-violet-filled-hover: var(--mantine-color-violet-9);--mantine-color-violet-light: rgba(121, 80, 242, .15);--mantine-color-violet-light-hover: rgba(121, 80, 242, .2);--mantine-color-violet-light-color: var(--mantine-color-violet-3);--mantine-color-violet-outline: var(--mantine-color-violet-4);--mantine-color-violet-outline-hover: rgba(151, 117, 250, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-4);--mantine-color-indigo-filled: var(--mantine-color-indigo-8);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-9);--mantine-color-indigo-light: rgba(76, 110, 245, .15);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .2);--mantine-color-indigo-light-color: var(--mantine-color-indigo-3);--mantine-color-indigo-outline: var(--mantine-color-indigo-4);--mantine-color-indigo-outline-hover: rgba(116, 143, 252, .05);--mantine-color-blue-text: var(--mantine-color-blue-4);--mantine-color-blue-filled: var(--mantine-color-blue-8);--mantine-color-blue-filled-hover: var(--mantine-color-blue-9);--mantine-color-blue-light: rgba(34, 139, 230, .15);--mantine-color-blue-light-hover: rgba(34, 139, 230, .2);--mantine-color-blue-light-color: var(--mantine-color-blue-3);--mantine-color-blue-outline: var(--mantine-color-blue-4);--mantine-color-blue-outline-hover: rgba(77, 171, 247, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-4);--mantine-color-cyan-filled: var(--mantine-color-cyan-8);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-9);--mantine-color-cyan-light: rgba(21, 170, 191, .15);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .2);--mantine-color-cyan-light-color: var(--mantine-color-cyan-3);--mantine-color-cyan-outline: var(--mantine-color-cyan-4);--mantine-color-cyan-outline-hover: rgba(59, 201, 219, .05);--mantine-color-teal-text: var(--mantine-color-teal-4);--mantine-color-teal-filled: var(--mantine-color-teal-8);--mantine-color-teal-filled-hover: var(--mantine-color-teal-9);--mantine-color-teal-light: rgba(18, 184, 134, .15);--mantine-color-teal-light-hover: rgba(18, 184, 134, .2);--mantine-color-teal-light-color: var(--mantine-color-teal-3);--mantine-color-teal-outline: var(--mantine-color-teal-4);--mantine-color-teal-outline-hover: rgba(56, 217, 169, .05);--mantine-color-green-text: var(--mantine-color-green-4);--mantine-color-green-filled: var(--mantine-color-green-8);--mantine-color-green-filled-hover: var(--mantine-color-green-9);--mantine-color-green-light: rgba(64, 192, 87, .15);--mantine-color-green-light-hover: rgba(64, 192, 87, .2);--mantine-color-green-light-color: var(--mantine-color-green-3);--mantine-color-green-outline: var(--mantine-color-green-4);--mantine-color-green-outline-hover: rgba(105, 219, 124, .05);--mantine-color-lime-text: var(--mantine-color-lime-4);--mantine-color-lime-filled: var(--mantine-color-lime-8);--mantine-color-lime-filled-hover: var(--mantine-color-lime-9);--mantine-color-lime-light: rgba(130, 201, 30, .15);--mantine-color-lime-light-hover: rgba(130, 201, 30, .2);--mantine-color-lime-light-color: var(--mantine-color-lime-3);--mantine-color-lime-outline: var(--mantine-color-lime-4);--mantine-color-lime-outline-hover: rgba(169, 227, 75, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-4);--mantine-color-yellow-filled: var(--mantine-color-yellow-8);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-9);--mantine-color-yellow-light: rgba(250, 176, 5, .15);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .2);--mantine-color-yellow-light-color: var(--mantine-color-yellow-3);--mantine-color-yellow-outline: var(--mantine-color-yellow-4);--mantine-color-yellow-outline-hover: rgba(255, 212, 59, .05);--mantine-color-orange-text: var(--mantine-color-orange-4);--mantine-color-orange-filled: var(--mantine-color-orange-8);--mantine-color-orange-filled-hover: var(--mantine-color-orange-9);--mantine-color-orange-light: rgba(253, 126, 20, .15);--mantine-color-orange-light-hover: rgba(253, 126, 20, .2);--mantine-color-orange-light-color: var(--mantine-color-orange-3);--mantine-color-orange-outline: var(--mantine-color-orange-4);--mantine-color-orange-outline-hover: rgba(255, 169, 77, .05)}:root[data-mantine-color-scheme=light]{--mantine-color-scheme: light;--mantine-color-bright: var(--mantine-color-black);--mantine-color-text: var(--mantine-color-black);--mantine-color-body: var(--mantine-color-white);--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-error: var(--mantine-color-red-6);--mantine-color-placeholder: var(--mantine-color-gray-5);--mantine-color-anchor: var(--mantine-primary-color-filled);--mantine-color-default: var(--mantine-color-white);--mantine-color-default-hover: var(--mantine-color-gray-0);--mantine-color-default-color: var(--mantine-color-gray-9);--mantine-color-default-border: var(--mantine-color-gray-4);--mantine-color-dimmed: var(--mantine-color-gray-6);--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(56, 56, 56, .1);--mantine-color-dark-light-hover: rgba(56, 56, 56, .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(56, 56, 56, .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_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_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)}:where([data-mantine-color-scheme=light]) .m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--mantine-color-dark-4)}.m_9814e45f{inset:0;position:absolute;background:var(--overlay-bg, rgba(0, 0, 0, .6));backdrop-filter:var(--overlay-filter);-webkit-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}:where([data-mantine-color-scheme=light]) .m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){background-color:var(--mantine-color-gray-1);color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) .m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){background-color:var(--mantine-color-dark-6);color:var(--mantine-color-dark-3)}.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}.m_fd1ab0aa:has([data-mantine-scrollbar][data-state=visible]) .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-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);--input-padding-y: var(--input-padding-y-sm)}.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)}[data-mantine-color-scheme=light] .m_6c018570{--input-disabled-bg: var(--mantine-color-gray-1);--input-disabled-color: var(--mantine-color-gray-6)}[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{--input-disabled-bg: var(--mantine-color-dark-6);--input-disabled-color: var(--mantine-color-dark-2)}[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-sm)));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, var(--mantine-font-size-sm)) - 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_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_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;word-break: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{word-break: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}.m_4ba585b8:where([data-chevron-position=left]){flex-direction:row;padding-inline-start:0}:where([data-mantine-color-scheme=light]) .m_4ba585b8{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_4ba585b8{color:var(--mantine-color-dark-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;top:0;right:0;bottom:0;left:calc(50% - 1.5px);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)}.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,left,right;background-color:var(--mantine-color-body)}:where([data-layout=alt]) .m_3b16f56b,:where([data-layout=alt]) .m_3840c879{inset-inline-start:var(--app-shell-navbar-offset, 0rem);inset-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;word-break: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_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{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)}:where([data-mantine-color-scheme=light]) fieldset:disabled .m_8ee546b8,:where([data-mantine-color-scheme=light]) .m_8ee546b8:where([data-disabled]){color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_8ee546b8,:where([data-mantine-color-scheme=dark]) .m_8ee546b8:where([data-disabled]){color:var(--mantine-color-dark-3)}.m_328f68c0,.m_8e8a99cc{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}.m_26775b0a{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_26775b0a :where(*){cursor:inherit}.m_26775b0a:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_5e5256ee{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled);--checkbox-icon-color: var(--mantine-color-white);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}:where([data-mantine-color-scheme=light]) .m_5e5256ee[data-disabled]{background-color:var(--mantine-color-gray-2);border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_5e5256ee[data-disabled]{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-6)}[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-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);--checkbox-icon-color: var(--mantine-color-white)}.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}:where([data-mantine-color-scheme=light]) .m_26063560:disabled{background-color:var(--mantine-color-gray-2);border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26063560:disabled{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .m_26063560:disabled+.m_bf295423{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_26063560:disabled+.m_bf295423{color:var(--mantine-color-dark-3)}.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-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}:where([data-mantine-color-scheme=light]) .m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){color:var(--mantine-color-gray-5);background:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){color:var(--mantine-color-dark-3);background:var(--mantine-color-dark-6)}.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(.625rem * 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(.46875rem * 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}:where([data-mantine-color-scheme=light]) .m_be049a53:where([data-disabled]){background-color:var(--mantine-color-gray-2);color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) .m_be049a53:where([data-disabled]){background-color:var(--mantine-color-dark-6);color:var(--mantine-color-dark-3)}: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-1));color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-dark-5));color:var(--mantine-color-white)}.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_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_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);max-width:var(--container-size);padding-inline:var(--mantine-spacing-md);margin-inline:auto}.m_7485cace:where([data-fluid]){max-width:100%}.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;flex:0;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);--kbd-padding-xs: calc(.125rem * var(--mantine-scale)) calc(.25rem * var(--mantine-scale));--kbd-padding-sm: calc(.1875rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));--kbd-padding-md: calc(.25rem * var(--mantine-scale)) calc(.4375rem * var(--mantine-scale));--kbd-padding-lg: calc(.3125rem * var(--mantine-scale)) calc(.5625rem * var(--mantine-scale));--kbd-padding-xl: calc(.5rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--kbd-padding: var(--kbd-padding-sm);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));unicode-bidi:embed}: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-style-position:inside;font-size:var(--list-fz);line-height:var(--list-lh);margin:0;padding:0}.m_abbac491:where([data-with-padding]){padding-inline-start:var(--mantine-spacing-md)}.m_abb6bec2{white-space:nowrap;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-dimmed);opacity:.6;cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_99ac2aa1:where([data-hovered]):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([data-hovered]):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-dark-4))}.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_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-gray-3)}: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-gray-3)}.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]){padding-inline-start:var(--mantine-spacing-xs)}.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}:where([data-mantine-color-scheme=light]) .m_80b4b171:where(:disabled){color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:where(:disabled){color:var(--mantine-color-dark-3)}.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}}.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_2242eb65{background-color:var(--progress-section-color);height:100%;width:var(--progress-section-width);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_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_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}:where([data-mantine-color-scheme=light]) .m_717d7ff6[data-disabled]{background-color:var(--mantine-color-gray-2);border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_717d7ff6[data-disabled]{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-dark-3)}.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}:where([data-mantine-color-scheme=light]) .m_8a3dbb89:disabled{background-color:var(--mantine-color-gray-1);border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=light]) .m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89:disabled{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-4)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-dark-7)}.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(.1875rem * var(--mantine-scale)) calc(.375rem * var(--mantine-scale));--sc-padding-sm: calc(.3125rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--sc-padding-md: calc(.4375rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--sc-padding-lg: calc(.5625rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--sc-padding-xl: calc(.75rem * 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}:where([data-mantine-color-scheme=light]) fieldset:disabled .m_1738fcb2,:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-disabled]){color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_1738fcb2,:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-disabled]){color:var(--mantine-color-dark-3)}: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){:where([data-mantine-color-scheme=light]) fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-gray-5)!important}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-dark-3)!important}}@media (hover: none){:where([data-mantine-color-scheme=light]) fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-gray-5)!important}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-dark-3)!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);-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);--slider-track-disabled-bg: var(--mantine-color-gray-4)}[data-mantine-color-scheme=dark] .m_dd36362e{--slider-track-bg: var(--mantine-color-dark-4);--slider-track-disabled-bg: var(--mantine-color-dark-3)}.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)}:where([data-mantine-color-scheme=light]) fieldset:disabled .m_38aeed47:where(:not([data-inverted])),:where([data-mantine-color-scheme=light]) .m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_38aeed47:where(:not([data-inverted])),:where([data-mantine-color-scheme=dark]) .m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-dark-3)}.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)}:where([data-mantine-color-scheme=light]) .m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-dark-3)}.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)}.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{--separator-offset: calc(var(--stepper-icon-size) / 2 - calc(.0625rem * var(--mantine-scale)));transition:background-color .15s ease;flex:1}:where([data-mantine-color-scheme=light]) .m_2a371ac9{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_2a371ac9{background-color:var(--mantine-color-dark-2)}.m_2a371ac9:where([data-active]){background-color:var(--stepper-color)}.m_2a371ac9:where([data-orientation=horizontal]){height:calc(.125rem * var(--mantine-scale));margin-inline:var(--mantine-spacing-md)}.m_2a371ac9:where([data-orientation=vertical]){width:calc(.125rem * var(--mantine-scale));margin-top:calc(var(--mantine-spacing-xs) / 2);margin-bottom:calc(var(--mantine-spacing-xs) - calc(.125rem * var(--mantine-scale)))}.m_2a371ac9:where([data-orientation=vertical]):where([data-icon-position=left]){margin-inline-start:var(--separator-offset)}.m_2a371ac9:where([data-orientation=vertical]):where([data-icon-position=right]){margin-inline-end:var(--separator-offset)}.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) .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:calc(.125rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_6496b3f3{border-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_6496b3f3{border-color:var(--mantine-color-dark-5)}.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:calc(.125rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_1959ad01{background-color:var(--mantine-color-gray-1);border-color:var(--mantine-color-gray-1);color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1959ad01{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-5);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(.0625rem * var(--mantine-scale));--switch-track-label-padding-sm: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-md: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-lg: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-xl: calc(.1875rem * 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);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);border:1px solid var(--switch-bd);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-bd: 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-bd: var(--switch-disabled-color);--switch-cursor: not-allowed}[data-mantine-color-scheme=light] .m_9307d992{--switch-bg: var(--mantine-color-gray-2);--switch-bd: var(--mantine-color-gray-3);--switch-text-color: var(--mantine-color-gray-6);--switch-disabled-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_9307d992{--switch-bg: var(--mantine-color-dark-6);--switch-bd: var(--mantine-color-dark-4);--switch-text-color: var(--mantine-color-dark-1);--switch-disabled-color: var(--mantine-color-dark-4)}.m_9307d992[data-error]{--switch-bd: var(--mantine-color-error)}.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);border:1px solid var(--switch-thumb-bd);inset-inline-start:var(--switch-thumb-start, var(--switch-track-label-padding));transition:inset-inline-start .15s ease}.m_93039a1d>*{margin:auto}.m_926b4011:checked+*>.m_93039a1d{--switch-thumb-start: calc(100% - var(--switch-thumb-size) - var(--switch-track-label-padding));--switch-thumb-bd: var(--mantine-color-white)}.m_926b4011:disabled+*>.m_93039a1d,.m_926b4011[data-disabled]+*>.m_93039a1d{--switch-thumb-bd: var(--switch-thumb-bg-disabled);--switch-thumb-bg: var(--switch-thumb-bg-disabled)}[data-mantine-color-scheme=light] .m_93039a1d{--switch-thumb-bd: var(--mantine-color-gray-3);--switch-thumb-bg-disabled: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_93039a1d{--switch-thumb-bd: var(--mantine-color-white);--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(: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;background-color:var(--mantine-color-body)}.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)}.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)}.m_89d60db1{display:var(--tabs-display);flex-direction:var(--tabs-flex-direction);--tab-justify: flex-start;--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)}[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[data-orientation=horizontal]{--tab-justify: center}.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);--tab-grow: unset}.m_89d33d6d[data-grow]{--tab-grow: 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;flex-grow:var(--tab-grow);justify-content:var(--tab-justify)}.m_4ec4dce6:disabled,.m_4ec4dce6[data-disabled]{opacity:.5;cursor:not-allowed}.m_4ec4dce6:focus{z-index:1}.m_fc420b1f{display:flex;align-items:center;justify-content:center;margin-left:var(--tab-section-margin-left, 0);margin-right:var(--tab-section-margin-right, 0)}.m_fc420b1f[data-position=left]:not(:only-child){--tab-section-margin-right: var(--mantine-spacing-xs)}[dir=rtl] .m_fc420b1f[data-position=left]:not(:only-child){--tab-section-margin-right: 0rem;--tab-section-margin-left: var(--mantine-spacing-xs)}.m_fc420b1f[data-position=right]:not(:only-child){--tab-section-margin-left: var(--mantine-spacing-xs)}[dir=rtl] .m_fc420b1f[data-position=right]:not(:only-child){--tab-section-margin-left: 0rem;--tab-section-margin-right: var(--mantine-spacing-xs)}.m_576c9d4{position:relative}.m_576c9d4: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_539e827b{border-radius:var(--tab-radius);border-width:var(--tab-border-width);border-style:solid;border-color:transparent;background-color:var(--tab-bg);--tab-bg: transparent}.m_539e827b:where([data-active]){border-color:var(--tabs-color)}@media (hover: hover){.m_539e827b:hover{--tab-bg: var(--tab-hover-color)}.m_539e827b:hover:where(:not([data-active])){border-color:var(--tab-border-color)}}@media (hover: none){.m_539e827b:active{--tab-bg: 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{--tab-bg: transparent}}@media (hover: none){.m_539e827b:disabled:active,.m_539e827b[data-disabled]:active{--tab-bg: 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_d6493fad :first-child{margin-top:0}.m_d6493fad :last-child{margin-bottom:0}.m_d6493fad :where(h1,h2,h3,h4,h5,h6){margin-bottom:var(--mantine-spacing-xs);text-wrap:var(--mantine-heading-text-wrap)}.m_d6493fad :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_d6493fad :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_d6493fad :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_d6493fad :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_d6493fad :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_d6493fad :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_d6493fad :where(img){max-width:100%;margin-bottom:var(--mantine-spacing-xs)}.m_d6493fad :where(p){margin-top:0;margin-bottom:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(mark){background-color:var(--mantine-color-yellow-2);color:inherit}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.m_d6493fad :where(a){color:var(--mantine-color-anchor);text-decoration:none}@media (hover: hover){.m_d6493fad :where(a):hover{text-decoration:underline}}@media (hover: none){.m_d6493fad :where(a):active{text-decoration:underline}}.m_d6493fad :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_d6493fad :where(hr){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(hr){border-color:var(--mantine-color-dark-3)}.m_d6493fad :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_d6493fad :where(pre){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(pre){background-color:var(--mantine-color-dark-8)}.m_d6493fad :where(pre) :where(code){background-color:transparent;padding:0;border-radius:0;color:inherit;border:0}.m_d6493fad :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_d6493fad :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_d6493fad :where(kbd){border-color:var(--mantine-color-dark-3);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-5)}.m_d6493fad :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_d6493fad :where(code){background-color:var(--mantine-color-gray-0);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(code){background-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_d6493fad :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_d6493fad :where(table){width:100%;border-collapse:collapse;caption-side:bottom;margin-bottom:var(--mantine-spacing-md)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(table){--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(table){--table-border-color: var(--mantine-color-dark-4)}.m_d6493fad :where(table) :where(caption){margin-top:var(--mantine-spacing-xs);font-size:var(--mantine-font-size-sm);color:var(--mantine-color-dimmed)}.m_d6493fad :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_d6493fad :where(table) :where(thead th){border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d6493fad :where(table) :where(tfoot th){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d6493fad :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_d6493fad :where(table) :where(tr:last-of-type td){border-bottom:0}.m_d6493fad :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_d6493fad :where(blockquote){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :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: rgb(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: rgb(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, var(--xy-background-color-props, 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__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__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(-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(-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__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:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));transform: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{.likec4-shadow-root{--made-with-panda: "🐼"}:where(:host,:root){--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"'}.likec4-shadow-root{display:contents;--mantine-font-family: var(--likec4-app-font-default);--mantine-font-family-headings: var(--likec4-app-font-default)}.likec4-root{overflow:hidden;position:relative;width:100%;height:100%;padding:var(--spacing-0);margin:var(--spacing-0);box-sizing:border-box;border:0px solid transparent}.likec4-root .react-flow:is(.not-initialized){opacity:0}:where(.likec4-root .mantine-ActionIcon-icon) .tabler-icon{width:75%;height:75%}.likec4-root :where(.react-flow__node,.react-flow__edge,.likec4-edge-label-container):has([data-likec4-dimmed]){opacity:.25}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge,.likec4-edge-label-container):has([data-likec4-dimmed]){filter:var(--blur, ) var(--brightness, ) var(--contrast, ) var(--grayscale, ) var(--hue-rotate, ) var(--invert, ) var(--saturate, ) var(--sepia, ) var(--drop-shadow, );--grayscale: grayscale(.85);--blur: blur(3px)}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge,.likec4-edge-label-container):has([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out);--transition-duration: .8s;transition-duration:.8s;transition-delay:.2s}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges,.react-flow__edgelabel-renderer)>svg{mix-blend-mode:plus-lighter}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges,.react-flow__edgelabel-renderer)>svg{mix-blend-mode:screen}: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)}*,: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}@property --likec4-palette{syntax: "*"; inherits: false; initial-value: "likec4.primary";}@property --likec4-text-size{syntax: "<length-percentage>"; inherits: false; initial-value: 1rem;}@property --likec4-spacing{syntax: "<length-percentage>"; inherits: false; initial-value: 1rem;}}@layer tokens{:where(:root,:host){--radii-xs: var(--mantine-radius-xs);--radii-sm: var(--mantine-radius-sm);--radii-md: var(--mantine-radius-md);--radii-lg: var(--mantine-radius-lg);--radii-xl: var(--mantine-radius-xl);--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: .75rem;--font-sizes-likec4-sm: .875rem;--font-sizes-likec4-md: 1.19rem;--font-sizes-likec4-lg: 1.5rem;--font-sizes-likec4-xl: 2rem;--shadows-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);--shadows-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));--shadows-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));--shadows-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));--shadows-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));--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;--borders-none: none;--borders-transparent: 0px solid transparent;--borders-default: 1px solid var(--colors-mantine-colors-default-border);--spacing-0: 0px;--spacing-2: 2px;--spacing-4: 4px;--spacing-8: 8px;--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));--spacing-likec4-xs: 8px;--spacing-likec4-sm: 10px;--spacing-likec4-md: 16px;--spacing-likec4-lg: 24px;--spacing-likec4-xl: 32px;--spacing-micro: 4px;--spacing-2xs: 8px;--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;--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;--breakpoints-xs: 36em;--breakpoints-sm: 48em;--breakpoints-md: 62em;--breakpoints-lg: 75em;--breakpoints-xl: 88em;--sizes-breakpoint-xs: 36em;--sizes-breakpoint-sm: 48em;--sizes-breakpoint-md: 62em;--sizes-breakpoint-lg: 75em;--sizes-breakpoint-xl: 88em;--font-sizes-likec4-text-size: var(--font-sizes-likec4-md);--colors-likec4-background: var(--colors-mantine-colors-body);--colors-likec4-background-pattern: var(--colors-mantine-colors-dark\\[5\\]);--colors-likec4-amber-element-fill: #A35829;--colors-likec4-amber-element-stroke: #7E451D;--colors-likec4-amber-element-hi-contrast: #FFE0C2;--colors-likec4-amber-element-lo-contrast: #f9b27c;--colors-likec4-amber-relation-stroke: #b45309;--colors-likec4-amber-relation-label: #FFE0C2;--colors-likec4-amber-relation-label-bg: #78350f;--colors-likec4-blue-element-fill: #3b82f6;--colors-likec4-blue-element-stroke: #2563eb;--colors-likec4-blue-element-hi-contrast: #eff6ff;--colors-likec4-blue-element-lo-contrast: #bfdbfe;--colors-likec4-blue-relation-stroke: #3b82f6;--colors-likec4-blue-relation-label: #60a5fa;--colors-likec4-blue-relation-label-bg: #172554;--colors-likec4-gray-element-fill: #737373;--colors-likec4-gray-element-stroke: #525252;--colors-likec4-gray-element-hi-contrast: #fafafa;--colors-likec4-gray-element-lo-contrast: #d4d4d4;--colors-likec4-gray-relation-stroke: #6E6E6E;--colors-likec4-gray-relation-label: #C6C6C6;--colors-likec4-gray-relation-label-bg: #18191b;--colors-likec4-slate-element-fill: #64748b;--colors-likec4-slate-element-stroke: #475569;--colors-likec4-slate-element-hi-contrast: #f8fafc;--colors-likec4-slate-element-lo-contrast: #cbd5e1;--colors-likec4-slate-relation-stroke: #64748b;--colors-likec4-slate-relation-label: #cbd5e1;--colors-likec4-slate-relation-label-bg: #0f172a;--colors-likec4-green-element-fill: #428a4f;--colors-likec4-green-element-stroke: #2d5d39;--colors-likec4-green-element-hi-contrast: #f8fafc;--colors-likec4-green-element-lo-contrast: #c2f0c2;--colors-likec4-green-relation-stroke: #15803d;--colors-likec4-green-relation-label: #22c55e;--colors-likec4-green-relation-label-bg: #052e16;--colors-likec4-indigo-element-fill: #6366f1;--colors-likec4-indigo-element-stroke: #4f46e5;--colors-likec4-indigo-element-hi-contrast: #eef2ff;--colors-likec4-indigo-element-lo-contrast: #c7d2fe;--colors-likec4-indigo-relation-stroke: #6366f1;--colors-likec4-indigo-relation-label: #818cf8;--colors-likec4-indigo-relation-label-bg: #1e1b4b;--colors-likec4-muted-element-fill: #64748b;--colors-likec4-muted-element-stroke: #475569;--colors-likec4-muted-element-hi-contrast: #f8fafc;--colors-likec4-muted-element-lo-contrast: #cbd5e1;--colors-likec4-muted-relation-stroke: #64748b;--colors-likec4-muted-relation-label: #cbd5e1;--colors-likec4-muted-relation-label-bg: #0f172a;--colors-likec4-primary-element-fill: #3b82f6;--colors-likec4-primary-element-stroke: #2563eb;--colors-likec4-primary-element-hi-contrast: #eff6ff;--colors-likec4-primary-element-lo-contrast: #bfdbfe;--colors-likec4-primary-relation-stroke: #3b82f6;--colors-likec4-primary-relation-label: #60a5fa;--colors-likec4-primary-relation-label-bg: #172554;--colors-likec4-red-element-fill: #AC4D39;--colors-likec4-red-element-stroke: #853A2D;--colors-likec4-red-element-hi-contrast: #FBD3CB;--colors-likec4-red-element-lo-contrast: #f5b2a3;--colors-likec4-red-relation-stroke: #AC4D39;--colors-likec4-red-relation-label: #f5b2a3;--colors-likec4-red-relation-label-bg: #b91c1c;--colors-likec4-secondary-element-fill: #0284c7;--colors-likec4-secondary-element-stroke: #0369a1;--colors-likec4-secondary-element-hi-contrast: #f0f9ff;--colors-likec4-secondary-element-lo-contrast: #B6ECF7;--colors-likec4-secondary-relation-stroke: #0ea5e9;--colors-likec4-secondary-relation-label: #38bdf8;--colors-likec4-secondary-relation-label-bg: #082f49;--colors-likec4-sky-element-fill: #0284c7;--colors-likec4-sky-element-stroke: #0369a1;--colors-likec4-sky-element-hi-contrast: #f0f9ff;--colors-likec4-sky-element-lo-contrast: #B6ECF7;--colors-likec4-sky-relation-stroke: #0ea5e9;--colors-likec4-sky-relation-label: #38bdf8;--colors-likec4-sky-relation-label-bg: #082f49;--colors-likec4-compound1-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound1-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound1-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound1-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound1-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound1-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound1-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound1-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound1-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound1-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound1-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound1-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound1-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound1-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound1-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound1-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound1-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound1-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound1-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound1-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound1-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound1-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-compound2-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound2-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound2-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound2-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound2-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound2-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound2-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound2-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound2-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound2-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound2-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound2-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound2-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound2-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound2-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound2-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound2-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound2-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound2-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound2-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound2-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound2-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-compound3-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound3-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound3-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound3-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound3-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound3-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound3-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound3-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound3-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound3-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound3-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound3-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound3-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound3-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound3-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound3-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound3-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound3-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound3-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound3-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound3-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound3-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-compound4-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound4-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound4-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound4-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound4-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound4-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound4-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound4-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound4-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound4-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound4-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound4-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound4-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound4-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound4-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound4-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound4-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound4-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound4-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound4-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound4-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound4-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-compound5-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound5-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound5-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound5-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound5-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound5-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound5-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound5-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound5-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound5-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound5-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound5-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound5-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound5-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound5-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound5-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound5-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound5-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound5-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound5-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound5-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound5-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-palette: var(--likec4-palette,"likec4.primary");--colors-likec4-palette-fill: var(--colors-likec4-primary-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-primary-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-relation-stroke: var(--colors-likec4-gray-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-gray-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-gray-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-gray-relation-label-bg)}[data-mantine-color-scheme=light]{--colors-likec4-background-pattern: var(--colors-mantine-colors-gray\\[4\\]);--colors-likec4-amber-relation-stroke-selected: #994708;--colors-likec4-blue-relation-stroke-selected: #326fd1;--colors-likec4-gray-relation-stroke-selected: #5e5e5e;--colors-likec4-slate-relation-stroke-selected: #556376;--colors-likec4-green-relation-stroke-selected: #126d34;--colors-likec4-indigo-relation-stroke-selected: #5457cd;--colors-likec4-muted-relation-stroke-selected: #556376;--colors-likec4-primary-relation-stroke-selected: #326fd1;--colors-likec4-red-relation-stroke-selected: #924130;--colors-likec4-secondary-relation-stroke-selected: #0c8cc6;--colors-likec4-sky-relation-stroke-selected: #0c8cc6;--colors-likec4-compound1-amber-fill: #794524;--colors-likec4-compound1-amber-stroke: #5e361a;--colors-likec4-compound1-blue-fill: #145ed7;--colors-likec4-compound1-blue-stroke: #194bb8;--colors-likec4-compound1-gray-fill: #595959;--colors-likec4-compound1-gray-stroke: #3f3f3f;--colors-likec4-compound1-slate-fill: #4e5a6a;--colors-likec4-compound1-slate-stroke: #384250;--colors-likec4-compound1-green-fill: #35683e;--colors-likec4-compound1-green-stroke: #24462d;--colors-likec4-compound1-indigo-fill: #2529e1;--colors-likec4-compound1-indigo-stroke: #2d24c2;--colors-likec4-compound1-muted-fill: #4e5a6a;--colors-likec4-compound1-muted-stroke: #384250;--colors-likec4-compound1-primary-fill: #145ed7;--colors-likec4-compound1-primary-stroke: #194bb8;--colors-likec4-compound1-red-fill: #803e30;--colors-likec4-compound1-red-stroke: #632f26;--colors-likec4-compound1-secondary-fill: #086392;--colors-likec4-compound1-secondary-stroke: #084f76;--colors-likec4-compound1-sky-fill: #086392;--colors-likec4-compound1-sky-stroke: #084f76;--colors-likec4-compound2-amber-fill: #724325;--colors-likec4-compound2-amber-stroke: #58341b;--colors-likec4-compound2-blue-fill: #195cc8;--colors-likec4-compound2-blue-stroke: #1d4aac;--colors-likec4-compound2-gray-fill: #555555;--colors-likec4-compound2-gray-stroke: #3d3d3d;--colors-likec4-compound2-slate-fill: #4c5665;--colors-likec4-compound2-slate-stroke: #363f4c;--colors-likec4-compound2-green-fill: #35623d;--colors-likec4-compound2-green-stroke: #24422c;--colors-likec4-compound2-indigo-fill: #2428d7;--colors-likec4-compound2-indigo-stroke: #3028b5;--colors-likec4-compound2-muted-fill: #4c5665;--colors-likec4-compound2-muted-stroke: #363f4c;--colors-likec4-compound2-primary-fill: #195cc8;--colors-likec4-compound2-primary-stroke: #1d4aac;--colors-likec4-compound2-red-fill: #793d31;--colors-likec4-compound2-red-stroke: #5e2e26;--colors-likec4-compound2-secondary-fill: #0c5e88;--colors-likec4-compound2-secondary-stroke: #0b4b6e;--colors-likec4-compound2-sky-fill: #0c5e88;--colors-likec4-compound2-sky-stroke: #0b4b6e;--colors-likec4-compound3-amber-fill: #6b4126;--colors-likec4-compound3-amber-stroke: #52321c;--colors-likec4-compound3-blue-fill: #1e59ba;--colors-likec4-compound3-blue-stroke: #2149a0;--colors-likec4-compound3-gray-fill: #525252;--colors-likec4-compound3-gray-stroke: #3a3a3a;--colors-likec4-compound3-slate-fill: #4a5360;--colors-likec4-compound3-slate-stroke: #353d48;--colors-likec4-compound3-green-fill: #345d3c;--colors-likec4-compound3-green-stroke: #243e2a;--colors-likec4-compound3-indigo-fill: #292cc8;--colors-likec4-compound3-indigo-stroke: #322ba9;--colors-likec4-compound3-muted-fill: #4a5360;--colors-likec4-compound3-muted-stroke: #353d48;--colors-likec4-compound3-primary-fill: #1e59ba;--colors-likec4-compound3-primary-stroke: #2149a0;--colors-likec4-compound3-red-fill: #723c31;--colors-likec4-compound3-red-stroke: #582e27;--colors-likec4-compound3-secondary-fill: #10597f;--colors-likec4-compound3-secondary-stroke: #0e4767;--colors-likec4-compound3-sky-fill: #10597f;--colors-likec4-compound3-sky-stroke: #0e4767;--colors-likec4-compound4-amber-fill: #643e27;--colors-likec4-compound4-amber-stroke: #4d301d;--colors-likec4-compound4-blue-fill: #2357ad;--colors-likec4-compound4-blue-stroke: #244795;--colors-likec4-compound4-gray-fill: #4e4e4e;--colors-likec4-compound4-gray-stroke: #383838;--colors-likec4-compound4-slate-fill: #48505b;--colors-likec4-compound4-slate-stroke: #333a44;--colors-likec4-compound4-green-fill: #33573a;--colors-likec4-compound4-green-stroke: #233b29;--colors-likec4-compound4-indigo-fill: #2d30ba;--colors-likec4-compound4-indigo-stroke: #342e9e;--colors-likec4-compound4-muted-fill: #48505b;--colors-likec4-compound4-muted-stroke: #333a44;--colors-likec4-compound4-primary-fill: #2357ad;--colors-likec4-compound4-primary-stroke: #244795;--colors-likec4-compound4-red-fill: #6a3b31;--colors-likec4-compound4-red-stroke: #522d27;--colors-likec4-compound4-secondary-fill: #135475;--colors-likec4-compound4-secondary-stroke: #11435f;--colors-likec4-compound4-sky-fill: #135475;--colors-likec4-compound4-sky-stroke: #11435f;--colors-likec4-compound5-amber-fill: #5d3c28;--colors-likec4-compound5-amber-stroke: #472f1d;--colors-likec4-compound5-blue-fill: #2755a0;--colors-likec4-compound5-blue-stroke: #27468a;--colors-likec4-compound5-gray-fill: #4b4b4b;--colors-likec4-compound5-gray-stroke: #353535;--colors-likec4-compound5-slate-fill: #454c56;--colors-likec4-compound5-slate-stroke: #323841;--colors-likec4-compound5-green-fill: #335238;--colors-likec4-compound5-green-stroke: #223728;--colors-likec4-compound5-indigo-fill: #3133ac;--colors-likec4-compound5-indigo-stroke: #363092;--colors-likec4-compound5-muted-fill: #454c56;--colors-likec4-compound5-muted-stroke: #323841;--colors-likec4-compound5-primary-fill: #2755a0;--colors-likec4-compound5-primary-stroke: #27468a;--colors-likec4-compound5-red-fill: #633a31;--colors-likec4-compound5-red-stroke: #4d2c27;--colors-likec4-compound5-secondary-fill: #164f6c;--colors-likec4-compound5-secondary-stroke: #133f58;--colors-likec4-compound5-sky-fill: #164f6c;--colors-likec4-compound5-sky-stroke: #133f58;--colors-likec4-mix-color: black }[data-mantine-color-scheme=dark]{--colors-likec4-amber-relation-stroke-selected: #cb8753;--colors-likec4-blue-relation-stroke-selected: #76a8f9;--colors-likec4-gray-relation-stroke-selected: #9a9a9a;--colors-likec4-slate-relation-stroke-selected: #939eae;--colors-likec4-green-relation-stroke-selected: #5ba677;--colors-likec4-indigo-relation-stroke-selected: #9294f5;--colors-likec4-muted-relation-stroke-selected: #939eae;--colors-likec4-primary-relation-stroke-selected: #76a8f9;--colors-likec4-red-relation-stroke-selected: #c58274;--colors-likec4-secondary-relation-stroke-selected: #56c0f0;--colors-likec4-sky-relation-stroke-selected: #56c0f0;--colors-likec4-compound1-amber-fill: #704225;--colors-likec4-compound1-amber-stroke: #56331b;--colors-likec4-compound1-blue-fill: #1a5bc5;--colors-likec4-compound1-blue-stroke: #1e49a9;--colors-likec4-compound1-gray-fill: #545454;--colors-likec4-compound1-gray-stroke: #3c3c3c;--colors-likec4-compound1-slate-fill: #4b5563;--colors-likec4-compound1-slate-stroke: #363e4b;--colors-likec4-compound1-green-fill: #34613c;--colors-likec4-compound1-green-stroke: #24412b;--colors-likec4-compound1-indigo-fill: #2529d3;--colors-likec4-compound1-indigo-stroke: #3028b2;--colors-likec4-compound1-muted-fill: #4b5563;--colors-likec4-compound1-muted-stroke: #363e4b;--colors-likec4-compound1-primary-fill: #1a5bc5;--colors-likec4-compound1-primary-stroke: #1e49a9;--colors-likec4-compound1-red-fill: #773d30;--colors-likec4-compound1-red-stroke: #5c2e26;--colors-likec4-compound1-secondary-fill: #0d5d86;--colors-likec4-compound1-secondary-stroke: #0b4a6c;--colors-likec4-compound1-sky-fill: #0d5d86;--colors-likec4-compound1-sky-stroke: #0b4a6c;--colors-likec4-compound2-amber-fill: #663e25;--colors-likec4-compound2-amber-stroke: #4e301b;--colors-likec4-compound2-blue-fill: #1e56b1;--colors-likec4-compound2-blue-stroke: #204698;--colors-likec4-compound2-gray-fill: #4e4e4e;--colors-likec4-compound2-gray-stroke: #383838;--colors-likec4-compound2-slate-fill: #474f5c;--colors-likec4-compound2-slate-stroke: #333a45;--colors-likec4-compound2-green-fill: #325839;--colors-likec4-compound2-green-stroke: #223c29;--colors-likec4-compound2-indigo-fill: #282bbf;--colors-likec4-compound2-indigo-stroke: #312aa1;--colors-likec4-compound2-muted-fill: #474f5c;--colors-likec4-compound2-muted-stroke: #333a45;--colors-likec4-compound2-primary-fill: #1e56b1;--colors-likec4-compound2-primary-stroke: #204698;--colors-likec4-compound2-red-fill: #6c3a2f;--colors-likec4-compound2-red-stroke: #542c25;--colors-likec4-compound2-secondary-fill: #105579;--colors-likec4-compound2-secondary-stroke: #0e4462;--colors-likec4-compound2-sky-fill: #105579;--colors-likec4-compound2-sky-stroke: #0e4462;--colors-likec4-compound3-amber-fill: #5c3a25;--colors-likec4-compound3-amber-stroke: #472d1b;--colors-likec4-compound3-blue-fill: #21519f;--colors-likec4-compound3-blue-stroke: #224289;--colors-likec4-compound3-gray-fill: #484848;--colors-likec4-compound3-gray-stroke: #343434;--colors-likec4-compound3-slate-fill: #424a54;--colors-likec4-compound3-slate-stroke: #30363f;--colors-likec4-compound3-green-fill: #305136;--colors-likec4-compound3-green-stroke: #213626;--colors-likec4-compound3-indigo-fill: #2b2dac;--colors-likec4-compound3-indigo-stroke: #312b91;--colors-likec4-compound3-muted-fill: #424a54;--colors-likec4-compound3-muted-stroke: #30363f;--colors-likec4-compound3-primary-fill: #21519f;--colors-likec4-compound3-primary-stroke: #224289;--colors-likec4-compound3-red-fill: #62372e;--colors-likec4-compound3-red-stroke: #4c2a24;--colors-likec4-compound3-secondary-fill: #134e6c;--colors-likec4-compound3-secondary-stroke: #103e57;--colors-likec4-compound3-sky-fill: #134e6c;--colors-likec4-compound3-sky-stroke: #103e57;--colors-likec4-compound4-amber-fill: #533624;--colors-likec4-compound4-amber-stroke: #402a1a;--colors-likec4-compound4-blue-fill: #234c8e;--colors-likec4-compound4-blue-stroke: #243f7a;--colors-likec4-compound4-gray-fill: #434343;--colors-likec4-compound4-gray-stroke: #303030;--colors-likec4-compound4-slate-fill: #3e444d;--colors-likec4-compound4-slate-stroke: #2d323a;--colors-likec4-compound4-green-fill: #2d4932;--colors-likec4-compound4-green-stroke: #1f3123;--colors-likec4-compound4-indigo-fill: #2c2f99;--colors-likec4-compound4-indigo-stroke: #302c82;--colors-likec4-compound4-muted-fill: #3e444d;--colors-likec4-compound4-muted-stroke: #2d323a;--colors-likec4-compound4-primary-fill: #234c8e;--colors-likec4-compound4-primary-stroke: #243f7a;--colors-likec4-compound4-red-fill: #58342c;--colors-likec4-compound4-red-stroke: #442823;--colors-likec4-compound4-secondary-fill: #154660;--colors-likec4-compound4-secondary-stroke: #11384e;--colors-likec4-compound4-sky-fill: #154660;--colors-likec4-compound4-sky-stroke: #11384e;--colors-likec4-compound5-amber-fill: #493223;--colors-likec4-compound5-amber-stroke: #38261a;--colors-likec4-compound5-blue-fill: #25467d;--colors-likec4-compound5-blue-stroke: #243b6c;--colors-likec4-compound5-gray-fill: #3d3d3d;--colors-likec4-compound5-gray-stroke: #2b2b2b;--colors-likec4-compound5-slate-fill: #393e46;--colors-likec4-compound5-slate-stroke: #292e34;--colors-likec4-compound5-green-fill: #2b422f;--colors-likec4-compound5-green-stroke: #1d2c21;--colors-likec4-compound5-indigo-fill: #2d2f87;--colors-likec4-compound5-indigo-stroke: #2f2b73;--colors-likec4-compound5-muted-fill: #393e46;--colors-likec4-compound5-muted-stroke: #292e34;--colors-likec4-compound5-primary-fill: #25467d;--colors-likec4-compound5-primary-stroke: #243b6c;--colors-likec4-compound5-red-fill: #4f312a;--colors-likec4-compound5-red-stroke: #3d2521;--colors-likec4-compound5-secondary-fill: #163f55;--colors-likec4-compound5-secondary-stroke: #123345;--colors-likec4-compound5-sky-fill: #163f55;--colors-likec4-compound5-sky-stroke: #123345;--colors-likec4-mix-color: white }@keyframes indicatorStrokeOpacity{0%{stroke-opacity:.8}to{stroke-opacity:.4}}@keyframes xyedgeAnimated{0%{stroke-dashoffset:46}to{stroke-dashoffset:10}}}@layer recipes{@layer _base{.action-btn{pointer-events:all;cursor:pointer;color:var(--actionbtn-color);opacity:.75;--actionbtn-color: var(--colors-likec4-palette-lo-contrast);--actionbtn-color-hovered: var(--colors-likec4-palette-lo-contrast);--actionbtn-color-hovered-btn: var(--colors-likec4-palette-hi-contrast);--actionbtn-bg-idle: color-mix(in srgb , var(--colors-likec4-palette-fill), transparent 99%);--actionbtn-bg-hovered: color-mix(in srgb , var(--colors-likec4-palette-fill) 65%, var(--colors-likec4-palette-stroke));--actionbtn-bg-hovered-btn: color-mix(in srgb , var(--colors-likec4-palette-fill) 50%, var(--colors-likec4-palette-stroke));--ai-bg: var(--actionbtn-bg-idle);background:var(--ai-bg)}:where([data-likec4-hovered=true]) .action-btn{opacity:1;color:var(--actionbtn-color-hovered);--ai-bg: var(--actionbtn-bg-hovered)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .action-btn{display:none}:where([data-likec4-zoom-small]) .action-btn{display:none}.action-btn:is(:hover,[data-hover]){opacity:1;color:var(--actionbtn-color-hovered-btn);--ai-bg: var(--actionbtn-bg-hovered-btn)}}.action-btn--size_md{--ai-size: var(--ai-size-md)}.action-btn--radius_md{--ai-radius: var(--mantine-radius-md)}.action-btn--variant_filled{box-shadow:1px 1px 3px 0 transparent}:where([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:none}.action-btn--variant_transparent{--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}:where([data-likec4-hovered=true]) .whenHovered\\:action-btn--size_md{--ai-size: var(--ai-size-md)}.hover\\:action-btn--size_md:is(:hover,[data-hover]){--ai-size: var(--ai-size-md)}:where([data-likec4-hovered=true]) .whenHovered\\:action-btn--radius_md{--ai-radius: var(--mantine-radius-md)}.hover\\:action-btn--radius_md:is(:hover,[data-hover]){--ai-radius: var(--mantine-radius-md)}:where([data-likec4-hovered=true]) .whenHovered\\:action-btn--variant_transparent{--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}.hover\\:action-btn--variant_transparent:is(:hover,[data-hover]){--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}:where([data-likec4-hovered=true]) .whenHovered\\:action-btn--variant_filled{box-shadow:1px 1px 3px 0 transparent}:where([data-likec4-hovered=true]) :where([data-likec4-hovered=true]) .whenHovered\\:action-btn--variant_filled{box-shadow:1px 1px 3px #0003}.likec4-root:is([data-likec4-reduced-graphics]) :where([data-likec4-hovered=true]) .whenHovered\\:action-btn--variant_filled{box-shadow:none}.hover\\:action-btn--variant_filled:is(:hover,[data-hover]){box-shadow:1px 1px 3px 0 transparent}:where([data-likec4-hovered=true]) .hover\\:action-btn--variant_filled:is(:hover,[data-hover]){box-shadow:1px 1px 3px #0003}.likec4-root:is([data-likec4-reduced-graphics]) .hover\\:action-btn--variant_filled:is(:hover,[data-hover]){box-shadow:none}}@layer utilities{@layer compositions{.animationStyle_indicator{animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorStrokeOpacity}.textStyle_likec4\\.node\\.primary{text-wrap:balance;font-weight:500;font-size:var(--likec4-text-size);line-height:1.15}.textStyle_likec4\\.node\\.primary,.textStyle_likec4\\.node\\.secondary{white-space:preserve-breaks;font-family:var(--likec4-element-font, var(--fonts-likec4))}.textStyle_likec4\\.node\\.secondary{text-wrap:pretty;font-weight:400;font-size:calc(var(--likec4-text-size) * .74);line-height:1.2}:where([data-likec4-hovered=true]) .whenHovered\\:animationStyle_xyedgeAnimated{animation-duration:.8s;animation-iteration-count:infinite;animation-timing-function:linear;animation-fill-mode:both;animation-name:xyedgeAnimated}:where(.react-flow__edge.selected,[data-edge-active=true],[data-edge-animated=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-edge-active\\=\\'true\\'\\]\\,_\\[data-edge-animated\\=\\'true\\'\\]\\)_\\&\\]\\:animationStyle_xyedgeAnimated{animation-duration:.8s;animation-iteration-count:infinite;animation-timing-function:linear;animation-fill-mode:both;animation-name:xyedgeAnimated}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:animationStyle_indicator{animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorStrokeOpacity}}.bg_dots{background:dots}.bg_transparent{background:var(--colors-transparent)}.gap_20{gap:20px}.bg_transparent\\!{background:var(--colors-transparent)!important}.--xy-background-color_transparent\\!{--xy-background-color: transparent !important}.--xy-background-color_\\{colors\\.mantine\\.colors\\.body\\}{--xy-background-color: var(--colors-mantine-colors-body)}.pos_absolute{position:absolute}.stk_2{stroke:2px}.stk_1\\.8{stroke:1.8px}.pos_relative{position:relative}.w_100\\%{width:100%}.h_100\\%{height:100%}.p_0{padding:var(--spacing-0)}.m_0{margin:var(--spacing-0)}.bd_transparent{border:var(--borders-transparent)}.pointer-events_none{pointer-events:none}.bdr_var\\(--_border-radius\\,_4px\\){border-radius:var(--_border-radius, 4px)}.transition-fast_all_250ms_\\{easings\\.inOut\\}{transition:all .25s var(--easings-in-out)}.cursor_default{cursor:default}.ov_visible{overflow:visible}.vis_hidden{visibility:hidden}.stk_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_60\\%\\,_\\{colors\\.likec4\\.palette\\.hiContrast\\}\\)\\]{stroke:color-mix(in srgb,var(--colors-likec4-palette-stroke) 60%,var(--colors-likec4-palette-hi-contrast))}.stk-w_4{stroke-width:4}.fill_\\[none\\]{fill:none}.d_flex{display:flex}.gap_6px{gap:6px}.w_auto{width:auto}.min-h_30px{min-height:30px}.flex_1{flex:1 1 0%}.tt_uppercase{text-transform:uppercase}.ls_0\\.2px{letter-spacing:.2px}.c_likec4\\.palette\\.loContrast{color:var(--colors-likec4-palette-lo-contrast)}.flex_0_0_20px{flex:0 0 20px}.h_20px{height:20px}.w_20px{width:20px}.mix-bm_hard-light{mix-blend-mode:hard-light}.trunc_end{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.likec4-relation-color_gray{--likec4-palette: "likec4.gray";--colors-likec4-relation-stroke: var(--colors-likec4-gray-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-gray-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-gray-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-gray-relation-label-bg)}.us_all{-webkit-user-select:all;user-select:all}.ta_left{text-align:left}.white-space-collapse_preserve-breaks{white-space-collapse:preserve-breaks}.tw_pretty{text-wrap:pretty}.--text-fz_\\{fontSizes\\.sm\\}{--text-fz: var(--font-sizes-sm)}.pointer-events_all{pointer-events:all}.cursor_pointer{cursor:pointer}.h_auto{height:auto}.bg_\\[var\\(--xy-edge-label-background-color\\)\\]{background:var(--xy-edge-label-background-color)}.c_\\[var\\(--xy-edge-label-color\\)\\]{color:var(--xy-edge-label-color)}.bd_0px_solid_transparent{border:0px solid transparent}.bdr_4px{border-radius:4px}.trf_var\\(--edge-translate\\){transform:var(--edge-translate)}.transition-fast_fast{transition:all var(--durations-fast) var(--easings-in-out)}.p_3px_5px_5px_5px{padding:3px 5px 5px}.w_max-content{width:max-content}.max-w_100\\%{max-width:100%}.gap_4px{gap:4px}.p_0px{padding:0}.flex_0_0_auto{flex:0 0 auto}.p_5px_5px{padding:5px}.ta_center{text-align:center}.min-w_22px{min-width:22px}.bg_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.relation\\.label\\.bg\\}\\,_\\{colors\\.likec4\\.mixColor\\}_10\\%\\)\\]{background:color-mix(in srgb,var(--colors-likec4-relation-label-bg),var(--colors-likec4-mix-color) 10%)}.d_contents{display:contents}.p_2px_5px_4px_0px{padding:2px 5px 4px 0}.p_2px_6px_4px_0px{padding:2px 6px 4px 0}.op_0\\.75{opacity:.75}.lc_5{overflow:hidden;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical}.--xy-edge-stroke_\\{colors\\.likec4\\.relation\\.stroke\\}{--xy-edge-stroke: var(--colors-likec4-relation-stroke)}.--xy-edge-stroke-selected_\\{colors\\.likec4\\.relation\\.stroke\\.selected\\}{--xy-edge-stroke-selected: var(--colors-likec4-relation-stroke-selected)}.--xy-edge-label-color_\\{colors\\.likec4\\.relation\\.label\\}{--xy-edge-label-color: var(--colors-likec4-relation-label)}.--xy-edge-stroke-width_3{--xy-edge-stroke-width: 3}.stk-w_calc\\(var\\(--xy-edge-stroke-width\\)_\\+_2\\){stroke-width:calc(var(--xy-edge-stroke-width) + 2)}.stk-op_0\\.08{stroke-opacity:.08}.fill_\\[var\\(--xy-edge-stroke\\)\\]{fill:var(--xy-edge-stroke)}.stk_\\[var\\(--xy-edge-stroke\\)\\]{stroke:var(--xy-edge-stroke)}.stk-do_10{stroke-dashoffset:10}.--ai-bg_var\\(--xy-edge-label-background-color\\){--ai-bg: var(--xy-edge-label-background-color)}.--ai-hover_color-mix\\(in_srgb_\\,_var\\(--xy-edge-label-background-color\\)\\,_\\{colors\\.likec4\\.mixColor\\}_10\\%\\){--ai-hover: color-mix(in srgb , var(--xy-edge-label-background-color), var(--colors-likec4-mix-color) 10%)}.--ai-size_var\\(--ai-size-sm\\){--ai-size: var(--ai-size-sm)}.--ai-radius_var\\(--mantine-radius-sm\\){--ai-radius: var(--mantine-radius-sm)}.min-h_28px{min-height:28px}.stk_likec4\\.palette\\.loContrast{stroke:var(--colors-likec4-palette-lo-contrast)}.stk-w_8{stroke-width:8}.stk-op_0\\.8{stroke-opacity:.8}.fill_likec4\\.palette\\.fill{fill:var(--colors-likec4-palette-fill)}.fill_likec4\\.palette\\.stroke{fill:var(--colors-likec4-palette-stroke)}.fill_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_90\\%\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\)\\]{fill:color-mix(in srgb,var(--colors-likec4-palette-stroke) 90%,var(--colors-likec4-palette-fill))}.stk_likec4\\.palette\\.stroke{stroke:var(--colors-likec4-palette-stroke)}.trf-o_50\\%_50\\%{transform-origin:50% 50%}.trf_translate\\(14px\\,_14px\\)_perspective\\(300px\\)_translateZ\\(-8px\\){transform:translate(14px,14px) perspective(300px) translateZ(-8px)}.filter_brightness\\(0\\.65\\)_saturate\\(0\\.8\\){filter:brightness(.65) saturate(.8)}.stk_\\[none\\]{stroke:none}.transition-fast_fill_120ms_linear\\,_filter_130ms_\\{easings\\.inOut\\}{transition:fill .12s linear,filter .13s var(--easings-in-out)}.filter_drop-shadow\\(0_2px_1px_rgba\\(0\\,_0\\,_0\\,_0\\.21\\)\\)_drop-shadow\\(0_1px_1px_color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_40\\%\\,_transparent\\)\\)_drop-shadow\\(0_5px_3px_rgba\\(0\\,_0\\,_0\\,_0\\.1\\)\\){filter:drop-shadow(0 2px 1px rgba(0,0,0,.21)) drop-shadow(0 1px 1px color-mix(in srgb,var(--colors-likec4-palette-stroke) 40%,transparent)) drop-shadow(0 5px 3px rgba(0,0,0,.1))}.c_likec4\\.palette\\.hiContrast{color:var(--colors-likec4-palette-hi-contrast)}.flex_0_1_auto{flex:0 1 auto}.tov_ellipsis{text-overflow:ellipsis}.ov_hidden{overflow:hidden}.tw_balance{text-wrap:balance}.op_0\\.92{opacity:.92}.flex_0_0_var\\(--icon-size\\){flex:0 0 var(--icon-size)}.h_var\\(--icon-size\\){height:var(--icon-size)}.w_var\\(--icon-size\\){width:var(--icon-size)}.h_fit-content{height:fit-content}.w_fit-content{width:fit-content}.m_0_auto{margin:0 auto}.gap_12px{gap:12px}.gap_16px{gap:16px}.gap_8px{gap:8px}.min-w_calc\\(50\\%_\\+_var\\(--icon-size\\)\\){min-width:calc(50% + var(--icon-size))}.lc_2{-webkit-line-clamp:2}.lc_2,.lc_3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.lc_3{-webkit-line-clamp:3}.c_gray{color:gray}.--mantine-cursor-pointer_pointer{--mantine-cursor-pointer: pointer}.gap_micro{gap:var(--spacing-micro)}.bd_1px_dashed_\\{colors\\.mantine\\.colors\\.defaultBorder\\}{border:1px dashed var(--colors-mantine-colors-default-border)}.bdr_sm{border-radius:var(--radii-sm)}.c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}.min-h_22px{min-height:22px}.p_2px_8px_2px_2px{padding:2px 8px 2px 2px}.p_3px_16px_3px_3px{padding:3px 16px 3px 3px}.flex_1_1_100\\%{flex:1 1 100%}.transition-fast_transform_100ms_\\{easings\\.inOut\\}{transition:transform .1s var(--easings-in-out)}.flex_0{flex:0}.c_teal{color:teal}.trunc_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h_30px{height:30px}.bd_1px_solid{border:1px solid}.bg_mantine\\.colors\\.default{background:var(--colors-mantine-colors-default)}.bx-sh_xs{box-shadow:var(--shadows-xs)}.c_mantine\\.colors\\.placeholder{color:var(--colors-mantine-colors-placeholder)}.p_4px_7px{padding:4px 7px}.gap_xs{gap:var(--spacing-xs)}.z_9{z-index:9}.offset_16{offset:16px}.p_xs{padding:var(--spacing-xs)}.mx_auto{margin-inline:auto}.p_4{padding:var(--spacing-4)}.gap_0{gap:var(--spacing-0)}.min-w_250px{min-width:250px}.max-w_min\\(90vw\\,_500px\\){max-width:min(90vw,500px)}.gap_4{gap:var(--spacing-4)}.d_block{display:block}.white-space_nowrap{white-space:nowrap}.p_2px_4px{padding:2px 4px}.bdr_2{border-radius:2px}.bg_likec4\\.palette\\.fill\\/30{--mix-background: color-mix(in srgb, var(--colors-likec4-palette-fill) 30%, transparent);background:var(--mix-background, var(--colors-likec4-palette-fill))}.op_0\\.65{opacity:.65}.pos_bottom-start{position:bottom-start}.gap_10px{gap:10px}.gap_3{gap:3px}.stk_2\\.5{stroke:2.5px}.w_xs{width:xs}.mix-bm_normal{mix-blend-mode:normal}.fill_likec4\\.relation\\.stroke{fill:var(--colors-likec4-relation-stroke)}.stk_likec4\\.relation\\.stroke{stroke:var(--colors-likec4-relation-stroke)}.fill-opacity_0\\.75{fill-opacity:.75}.stk-w_1{stroke-width:1}.cursor_grab{cursor:grab}.pointer-events_auto{pointer-events:auto}.cursor_grabbing{cursor:grabbing}.pos_right-end{position:right-end}.offset_2{offset:2px}.px_3{padding-inline:3px}.h_xs{height:xs}.--thickness_1px{--thickness: 1px}.gap_2{gap:var(--spacing-2)}.gap_6{gap:6px}.c_dark{color:dark}.pos_left-start{position:left-start}.pos_top-start{position:top-start}.offset_4{offset:4px}.px_5{padding-inline:5px}.bx-sh_xl{box-shadow:var(--shadows-xl)}.px_4px{padding-inline:4px}.c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.max-w_220px{max-width:220px}.pos_right-start{position:right-start}.bx-sh_lg{box-shadow:var(--shadows-lg)}.main-axis_10{main-axis:10px}.op_0\\.6{opacity:.6}.op_1{opacity:1}.p_8{padding:var(--spacing-8)}.my_10{margin-block:10px}.stk_1\\.5{stroke:1.5px}.c_pink{color:pink}.c_orange{color:orange}.bg_mantine\\.colors\\.orange\\.light{background:var(--colors-mantine-colors-orange-light)}.pos_top{position:top}.pos_top-end{position:top-end}.bx-sh_md{box-shadow:var(--shadows-md)}.flex_1_1_40\\%{flex:1 1 40%}.p_4px_6px{padding:4px 6px}.z_1{z-index:1}.bg_mantine\\.colors\\.gray\\[2\\]{background:var(--colors-mantine-colors-gray\\[2\\])}.bg_mantine\\.colors\\.gray\\[3\\]{background:var(--colors-mantine-colors-gray\\[3\\])}.bx-sh_inset_1px_1px_3px_0px_\\#00000024{box-shadow:inset 1px 1px 3px #00000024}.w_8{width:8px}.h_8{height:8px}.bd_2px_solid{border:2px solid}.bdr_3{border-radius:3px}.trf_translate\\(-50\\%\\,_-50\\%\\){transform:translate(-50%,-50%)}.min-w_200{min-width:200px}.max-w_calc\\(100vw_-_16px\\){max-width:calc(100vw - 16px)}.p_sm{padding:var(--spacing-sm)}.p_md{padding:var(--spacing-md)}.h_sm{height:sm}.py_2{padding-block:var(--spacing-2)}.op_0\\.7{opacity:.7}.max-h_42{max-height:42px}.gap_sm{gap:var(--spacing-sm)}.d_inline-block{display:inline-block}.--ai-radius_0px{--ai-radius: 0px}.us_none{-webkit-user-select:none;user-select:none}.max-w_calc\\(100vw_-_20px\\){max-width:calc(100vw - 20px)}.p_2xs{padding:var(--spacing-2xs)}.transition-fast_all_100ms_ease-in{transition:all .1s ease-in}.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%))}.tt_lowercase{text-transform:lowercase}.transition-fast_all_150ms_ease-in-out{transition:all .15s ease-in-out}.--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_\\{colors\\.likec4\\.palette\\.fill\\}{--badge-bg: var(--colors-likec4-palette-fill)}.--badge-color_\\{colors\\.likec4\\.palette\\.hiContrast\\}{--badge-color: var(--colors-likec4-palette-hi-contrast)}.bx-sh_none{box-shadow:none}.px_xs{padding-inline:var(--spacing-xs)}.py_sm{padding-block:var(--spacing-sm)}.likec4-palette_primary{--likec4-palette: "likec4.primary";--colors-likec4-palette-fill: var(--colors-likec4-primary-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-primary-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-primary-element-lo-contrast)}.flex_0_0_70px{flex:0 0 70px}.op_0\\.25{opacity:.25}.ring_none{outline:var(--borders-none)}.cq-n_likec4-tree{container-name:likec4-tree}.cq-t_inline-size{container-type:inline-size}.ring_none\\!{outline:var(--borders-none)!important}.p_1px_5px{padding:1px 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\\]))}.--likec4-icon-size_24px{--likec4-icon-size: 24px}.max-w_8xl{max-width:8xl}.px_4{padding-inline:var(--spacing-4)}.stk_3\\.5{stroke:3.5px}.lc_1{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.pos_fixed{position:fixed}.z_900{z-index:900}.inset_0px{inset:0}.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_10px{--backdrop-blur: blur(10px)}.cq-n_likec4-search{container-name:likec4-search}.cq-t_size{container-type:size}.z_901{z-index:901}.max-h_100vh{max-height:100vh}.gap_md{gap:var(--spacing-md)}.inset_0{inset:var(--spacing-0)}.z_902{z-index:902}.max-w_600px{max-width:600px}.min-w_200px{min-width:200px}.trf_translateX\\(-50\\%\\){transform:translate(-50%)}.z_903{z-index:903}.px_sm{padding-inline:var(--spacing-sm)}.py_md{padding-block:var(--spacing-md)}.d_grid{display:grid}.order_6{order:6}.order_2{order:2}.op_0\\.5{opacity:.5}.main-axis_4{main-axis:4px}.cross-axis_50{cross-axis:50px}.gap_8{gap:var(--spacing-8)}.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}.bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.bg_mantine\\.colors\\.body{background:var(--colors-mantine-colors-body)}.p_12px_8px_12px_14px{padding:12px 8px 12px 14px}.min-h_60px{min-height:60px}.flex_0_0_var\\(--likec4-icon-size\\,_24px\\){flex:0 0 var(--likec4-icon-size, 24px)}.h_var\\(--likec4-icon-size\\,_24px\\){height:var(--likec4-icon-size, 24px)}.w_var\\(--likec4-icon-size\\,_24px\\){width:var(--likec4-icon-size, 24px)}.--ti-size_var\\(--likec4-icon-size\\,_24px\\){--ti-size: var(--likec4-icon-size, 24px)}.c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}.bd_2px_dashed{border:2px dashed}.bdr_md{border-radius:var(--radii-md)}.py_xl{padding-block:var(--spacing-xl)}.gap_0\\.4rem{gap:.4rem}.bkdp_blur\\(8px\\){backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.transition-fast_all_175ms_ease-in{transition:all 175ms ease-in}.bg_mantine\\.colors\\.primary\\.filled\\/65{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary-filled) 65%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary-filled))}.px_xl{padding-inline:var(--spacing-xl)}.px_md{padding-inline:var(--spacing-md)}.c_red{color:red}.p_xl{padding:var(--spacing-xl)}.bx-s_border-box{box-sizing:border-box}.w_100vw{width:100vw}.h_100vh{height:100vh}.max-w_100vw{max-width:100vw}.bg_\\[transparent\\]{background:var(--colors-transparent)}.gap_lg{gap:var(--spacing-lg)}.cursor_move{cursor:move}.font-optical-sizing_auto{font-optical-sizing:auto}.flex_0_0_40px{flex:0 0 40px}.h_40px{height:40px}.w_40px{width:40px}.p_10px_8px{padding:10px 8px}.bd_1px_dashed{border:1px dashed}.--view-title-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}{--view-title-color: var(--colors-mantine-colors-dark\\[1\\])}.c_\\[var\\(--view-title-color\\,_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}\\)\\]{color:var(--view-title-color, var(--colors-mantine-colors-gray\\[7\\]))}.bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.p_4px{padding:4px}.p_6px_8px{padding:6px 8px}.gap_\\[20px_16px\\]{gap:20px 16px}.w_14px{width:14px}.h_14px{height:14px}.bd_3\\.5px_solid{border:3.5px solid}.bd-t_none{border-top:var(--borders-none)}.bd-l_none{border-left:var(--borders-none)}.bdr_2px{border-radius:2px}.cursor_se-resize{cursor:se-resize}.stk_1\\.6{stroke:1.6px}.h_36px{height:36px}.ps_16px{padding-inline-start:16px}.pe_10px{padding-inline-end:10px}.stk_1\\.2{stroke:1.2px}.offset_0{offset:0}.py_4{padding-block:var(--spacing-4)}.p_3px_6px{padding:3px 6px}.bg_likec4\\.palette\\.fill\\/75{--mix-background: color-mix(in srgb, var(--colors-likec4-palette-fill) 75%, transparent);background:var(--mix-background, var(--colors-likec4-palette-fill))}.bd_1px_solid_\\{colors\\.mantine\\.colors\\.defaultBorder\\}{border:1px solid var(--colors-mantine-colors-default-border)}.min-w_24{min-width:24px}.bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.c_mantine\\.colors\\.defaultColor{color:var(--colors-mantine-colors-default-color)}.py_xs{padding-block:var(--spacing-xs)}.d_inline-flex{display:inline-flex}.bg_mantine\\.colors\\.defaultBorder\\/50{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-default-border) 50%, transparent);background:var(--mix-background, var(--colors-mantine-colors-default-border))}.bdr_var\\(--_border-radius\\){border-radius:var(--_border-radius)}.--_blur_0px{--_blur: 0px}.--_level_0{--_level: 0}.--_offset_0px{--_offset: 0px}.--_inset_calc\\(\\(1_\\+_var\\(--_level\\)_\\*_0\\.5\\)_\\*_var\\(--_offset\\)\\){--_inset: calc((1 + var(--_level) * .5) * var(--_offset))}.--_opacity_0\\%{--_opacity: 0%}.cq-n_overlay-dialog{container-name:overlay-dialog}.bd_0_solid_transparent{border:0 solid transparent}.--_level_1{--_level: 1}.--_level_2{--_level: 2}.--_level_3{--_level: 3}.pos_top-right{position:top-right}.pos_top-left{position:top-left}.p_6px_2px_0_2px{padding:6px 2px 0}.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}.p_0_4px_5px_4px{padding:0 4px 5px}.gap_10px_12px{gap:10px 12px}.max-h_70vh{max-height:70vh}.py_3{padding-block:3px}.flex_1_0_auto{flex:1 0 auto}.stk-w_5{stroke-width:5}.bd_3px_dashed{border:3px dashed}.likec4-palette_amber{--likec4-palette: "likec4.amber";--colors-likec4-palette-fill: var(--colors-likec4-amber-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-amber-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-amber-element-lo-contrast)}.likec4-palette_blue{--likec4-palette: "likec4.blue";--colors-likec4-palette-fill: var(--colors-likec4-blue-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-blue-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-blue-element-lo-contrast)}.likec4-palette_gray{--likec4-palette: "likec4.gray";--colors-likec4-palette-fill: var(--colors-likec4-gray-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-gray-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-gray-element-lo-contrast)}.likec4-palette_slate{--likec4-palette: "likec4.slate";--colors-likec4-palette-fill: var(--colors-likec4-slate-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-slate-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-slate-element-lo-contrast)}.likec4-palette_green{--likec4-palette: "likec4.green";--colors-likec4-palette-fill: var(--colors-likec4-green-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-green-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-green-element-lo-contrast)}.likec4-palette_indigo{--likec4-palette: "likec4.indigo";--colors-likec4-palette-fill: var(--colors-likec4-indigo-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-indigo-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast)}.likec4-palette_muted{--likec4-palette: "likec4.muted";--colors-likec4-palette-fill: var(--colors-likec4-muted-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-muted-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-muted-element-lo-contrast)}.likec4-palette_red{--likec4-palette: "likec4.red";--colors-likec4-palette-fill: var(--colors-likec4-red-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-red-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-red-element-lo-contrast)}.likec4-palette_secondary{--likec4-palette: "likec4.secondary";--colors-likec4-palette-fill: var(--colors-likec4-secondary-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-secondary-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast)}.likec4-palette_sky{--likec4-palette: "likec4.sky";--colors-likec4-palette-fill: var(--colors-likec4-sky-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-sky-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-sky-element-lo-contrast)}.likec4-palette_amber\\.1{--likec4-palette: "likec4.compound1.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-amber-stroke)}.likec4-palette_amber\\.2{--likec4-palette: "likec4.compound2.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-amber-stroke)}.likec4-palette_amber\\.3{--likec4-palette: "likec4.compound3.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-amber-stroke)}.likec4-palette_amber\\.4{--likec4-palette: "likec4.compound4.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-amber-stroke)}.likec4-palette_amber\\.5{--likec4-palette: "likec4.compound5.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-amber-stroke)}.likec4-palette_blue\\.1{--likec4-palette: "likec4.compound1.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-blue-stroke)}.likec4-palette_blue\\.2{--likec4-palette: "likec4.compound2.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-blue-stroke)}.likec4-palette_blue\\.3{--likec4-palette: "likec4.compound3.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-blue-stroke)}.likec4-palette_blue\\.4{--likec4-palette: "likec4.compound4.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-blue-stroke)}.likec4-palette_blue\\.5{--likec4-palette: "likec4.compound5.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-blue-stroke)}.likec4-palette_gray\\.1{--likec4-palette: "likec4.compound1.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-gray-stroke)}.likec4-palette_gray\\.2{--likec4-palette: "likec4.compound2.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-gray-stroke)}.likec4-palette_gray\\.3{--likec4-palette: "likec4.compound3.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-gray-stroke)}.likec4-palette_gray\\.4{--likec4-palette: "likec4.compound4.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-gray-stroke)}.likec4-palette_gray\\.5{--likec4-palette: "likec4.compound5.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-gray-stroke)}.likec4-palette_slate\\.1{--likec4-palette: "likec4.compound1.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-slate-stroke)}.likec4-palette_slate\\.2{--likec4-palette: "likec4.compound2.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-slate-stroke)}.likec4-palette_slate\\.3{--likec4-palette: "likec4.compound3.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-slate-stroke)}.likec4-palette_slate\\.4{--likec4-palette: "likec4.compound4.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-slate-stroke)}.likec4-palette_slate\\.5{--likec4-palette: "likec4.compound5.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-slate-stroke)}.likec4-palette_green\\.1{--likec4-palette: "likec4.compound1.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-green-stroke)}.likec4-palette_green\\.2{--likec4-palette: "likec4.compound2.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-green-stroke)}.likec4-palette_green\\.3{--likec4-palette: "likec4.compound3.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-green-stroke)}.likec4-palette_green\\.4{--likec4-palette: "likec4.compound4.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-green-stroke)}.likec4-palette_green\\.5{--likec4-palette: "likec4.compound5.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-green-stroke)}.likec4-palette_indigo\\.1{--likec4-palette: "likec4.compound1.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-indigo-stroke)}.likec4-palette_indigo\\.2{--likec4-palette: "likec4.compound2.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-indigo-stroke)}.likec4-palette_indigo\\.3{--likec4-palette: "likec4.compound3.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-indigo-stroke)}.likec4-palette_indigo\\.4{--likec4-palette: "likec4.compound4.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-indigo-stroke)}.likec4-palette_indigo\\.5{--likec4-palette: "likec4.compound5.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-indigo-stroke)}.likec4-palette_muted\\.1{--likec4-palette: "likec4.compound1.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-muted-stroke)}.likec4-palette_muted\\.2{--likec4-palette: "likec4.compound2.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-muted-stroke)}.likec4-palette_muted\\.3{--likec4-palette: "likec4.compound3.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-muted-stroke)}.likec4-palette_muted\\.4{--likec4-palette: "likec4.compound4.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-muted-stroke)}.likec4-palette_muted\\.5{--likec4-palette: "likec4.compound5.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-muted-stroke)}.likec4-palette_primary\\.1{--likec4-palette: "likec4.compound1.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-primary-stroke)}.likec4-palette_primary\\.2{--likec4-palette: "likec4.compound2.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-primary-stroke)}.likec4-palette_primary\\.3{--likec4-palette: "likec4.compound3.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-primary-stroke)}.likec4-palette_primary\\.4{--likec4-palette: "likec4.compound4.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-primary-stroke)}.likec4-palette_primary\\.5{--likec4-palette: "likec4.compound5.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-primary-stroke)}.likec4-palette_red\\.1{--likec4-palette: "likec4.compound1.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-red-stroke)}.likec4-palette_red\\.2{--likec4-palette: "likec4.compound2.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-red-stroke)}.likec4-palette_red\\.3{--likec4-palette: "likec4.compound3.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-red-stroke)}.likec4-palette_red\\.4{--likec4-palette: "likec4.compound4.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-red-stroke)}.likec4-palette_red\\.5{--likec4-palette: "likec4.compound5.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-red-stroke)}.likec4-palette_secondary\\.1{--likec4-palette: "likec4.compound1.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-secondary-stroke)}.likec4-palette_secondary\\.2{--likec4-palette: "likec4.compound2.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-secondary-stroke)}.likec4-palette_secondary\\.3{--likec4-palette: "likec4.compound3.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-secondary-stroke)}.likec4-palette_secondary\\.4{--likec4-palette: "likec4.compound4.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-secondary-stroke)}.likec4-palette_secondary\\.5{--likec4-palette: "likec4.compound5.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-secondary-stroke)}.likec4-palette_sky\\.1{--likec4-palette: "likec4.compound1.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-sky-stroke)}.likec4-palette_sky\\.2{--likec4-palette: "likec4.compound2.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-sky-stroke)}.likec4-palette_sky\\.3{--likec4-palette: "likec4.compound3.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-sky-stroke)}.likec4-palette_sky\\.4{--likec4-palette: "likec4.compound4.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-sky-stroke)}.likec4-palette_sky\\.5{--likec4-palette: "likec4.compound5.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-sky-stroke)}.likec4-relation-color_amber{--likec4-palette: "likec4.amber";--colors-likec4-relation-stroke: var(--colors-likec4-amber-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-amber-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-amber-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-amber-relation-label-bg)}.likec4-relation-color_blue{--likec4-palette: "likec4.blue";--colors-likec4-relation-stroke: var(--colors-likec4-blue-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-blue-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-blue-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-blue-relation-label-bg)}.likec4-relation-color_slate{--likec4-palette: "likec4.slate";--colors-likec4-relation-stroke: var(--colors-likec4-slate-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-slate-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-slate-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-slate-relation-label-bg)}.likec4-relation-color_green{--likec4-palette: "likec4.green";--colors-likec4-relation-stroke: var(--colors-likec4-green-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-green-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-green-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-green-relation-label-bg)}.likec4-relation-color_indigo{--likec4-palette: "likec4.indigo";--colors-likec4-relation-stroke: var(--colors-likec4-indigo-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-indigo-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-indigo-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-indigo-relation-label-bg)}.likec4-relation-color_muted{--likec4-palette: "likec4.muted";--colors-likec4-relation-stroke: var(--colors-likec4-muted-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-muted-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-muted-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-muted-relation-label-bg)}.likec4-relation-color_primary{--likec4-palette: "likec4.primary";--colors-likec4-relation-stroke: var(--colors-likec4-primary-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-primary-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-primary-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-primary-relation-label-bg)}.likec4-relation-color_red{--likec4-palette: "likec4.red";--colors-likec4-relation-stroke: var(--colors-likec4-red-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-red-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-red-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-red-relation-label-bg)}.likec4-relation-color_secondary{--likec4-palette: "likec4.secondary";--colors-likec4-relation-stroke: var(--colors-likec4-secondary-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-secondary-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-secondary-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-secondary-relation-label-bg)}.likec4-relation-color_sky{--likec4-palette: "likec4.sky";--colors-likec4-relation-stroke: var(--colors-likec4-sky-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-sky-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-sky-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-sky-relation-label-bg)}.top_5px{top:5px}.left_4px{left:4px}.top_\\[2px\\]{top:2px}.right_\\[2px\\]{right:2px}.top_0{top:var(--spacing-0)}.left_0{left:var(--spacing-0)}.border-style_dashed{border-style:dashed}.bd-w_\\[var\\(--_border-width\\,_2px\\)\\]{border-width:var(--_border-width, 2px)}.bd-c_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_var\\(--_border-opacity-percent\\,_100\\%\\)\\,_transparent\\)\\]{border-color:color-mix(in srgb,var(--colors-likec4-palette-stroke) var(--_border-opacity-percent, 100%),transparent)}.ai_center{align-items:center}.left_14px{left:14px}.top_4px{top:4px}.right_30px{right:30px}.ff_likec4\\.compound{font-family:var(--fonts-likec4-compound)}.fw_600{font-weight:600}.fs_15px{font-size:15px}.jc_center{justify-content:center}.trs-dur_normal{--transition-duration: var(--durations-normal);transition-duration:var(--durations-normal)}.trs-dly_0\\.2s{transition-delay:.2s}.top_4{top:var(--spacing-4)}.right_4{right:var(--spacing-4)}.lh_1\\.25{line-height:1.25}.ff_likec4\\.relation{font-family:var(--fonts-likec4-relation)}.flex-d_column{flex-direction:column}.flex-d_row{flex-direction:row}.as_stretch{align-self:stretch}.fs_14px{font-size:14px}.lh_1{line-height:var(--line-heights-1)}.bdr-tl_4px{border-top-left-radius:4px}.bdr-bl_4px{border-bottom-left-radius:4px}.fv-num_tabular-nums{font-variant-numeric:tabular-nums}.lh_1\\.185{line-height:1.185}.fs_11px{font-size:11px}.trs-prop_stroke-width\\,_stroke-opacity{--transition-prop: stroke-width, stroke-opacity;transition-property:stroke-width,stroke-opacity}.trs-dur_fast{--transition-duration: var(--durations-fast);transition-duration:var(--durations-fast)}.trs-tmf_inOut{--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}.top_calc\\(100\\%_-_28px\\){top:calc(100% - 28px)}.top_2{top:var(--spacing-2)}.right_2{right:var(--spacing-2)}.trs-dly_0ms{transition-delay:0ms}.fs_calc\\(var\\(--likec4-text-size\\)_\\*_0\\.635\\){font-size:calc(var(--likec4-text-size) * .635)}.lh_1\\.125{line-height:1.125}.as_flex-start{align-self:flex-start}.pt_var\\(--likec4-spacing\\){padding-top:var(--likec4-spacing)}.pb_var\\(--likec4-spacing\\){padding-bottom:var(--likec4-spacing)}.pl_calc\\(var\\(--likec4-spacing\\)_\\+_8px\\){padding-left:calc(var(--likec4-spacing) + 8px)}.pr_calc\\(var\\(--likec4-spacing\\)_\\+_8px\\){padding-right:calc(var(--likec4-spacing) + 8px)}.ai_stretch{align-items:stretch}.flex-wrap_nowrap{flex-wrap:nowrap}.ai_flex-start{align-items:flex-start}.top_1rem{top:1rem}.right_1rem{right:1rem}.jc_stretch{justify-content:stretch}.trs-prop_all{--transition-prop: all;transition-property:all}.pl_sm{padding-left:var(--spacing-sm)}.pr_4px{padding-right:4px}.bd-c_mantine\\.colors\\.defaultBorder{border-color:var(--colors-mantine-colors-default-border)}.fs_sm{font-size:var(--font-sizes-sm)}.fw_500{font-weight:500}.pr_50px{padding-right:50px}.top_1{top:1px}.right_1{right:1px}.mt_2{margin-top:var(--spacing-2)}.ov-y_scroll{overflow-y:scroll}.fs_xxs{font-size:var(--font-sizes-xxs)}.lh_\\[1\\.11\\]{line-height:1.11}.fs_xs{font-size:var(--font-sizes-xs)}.top_5{top:5px}.right_6{right:6px}.border-block-end-width_var\\(--thickness\\){border-block-end-width:var(--thickness)}.jc_flex-start{justify-content:flex-start}.flex-wrap_wrap{flex-wrap:wrap}.mt_sm{margin-top:var(--spacing-sm)}.pb_8{padding-bottom:var(--spacing-8)}.pt_4{padding-top:var(--spacing-4)}.fs_10px{font-size:10px}.pt_6{padding-top:6px}.mb_10{margin-bottom:10px}.pt_100\\%{padding-top:100%}.left_2{left:var(--spacing-2)}.bottom_2{bottom:var(--spacing-2)}.mt_xs{margin-top:var(--spacing-xs)}.left_1rem{left:1rem}.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\\])}.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))}.mb_xs{margin-bottom:var(--spacing-xs)}.mb_sm{margin-bottom:var(--spacing-sm)}.bottom_0{bottom:var(--spacing-0)}.right_0{right:var(--spacing-0)}.bg-c_transparent{background-color:var(--colors-transparent)}.pt_0{padding-top:var(--spacing-0)}.pb_0{padding-bottom:var(--spacing-0)}.ml_2{margin-left:var(--spacing-2)}.mb_8px{margin-bottom:8px}.ai_baseline{align-items:baseline}.mt_8px{margin-top:8px}.lh_1\\.3{line-height:1.3}.lh_1\\.1{line-height:1.1}.bg-c_\\[rgb\\(34_34_34_\\/_0\\.95\\)\\]{background-color:#222222f2}.pt_32px{padding-top:32px}.pl_16px{padding-left:16px}.pr_16px{padding-right:16px}.bg-c_\\[rgb\\(34_34_34_\\/_0\\.7\\)\\]{background-color:#222222b3}.top_2rem{top:2rem}.left_50\\%{left:50%}.pr_xs{padding-right:var(--spacing-xs)}.mr_4{margin-right:var(--spacing-4)}.mr_1{margin-right:1px}.mt_4px{margin-top:4px}.fs_13px{font-size:13px}.lh_1\\.4{line-height:1.4}.bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.fs_16px{font-size:16px}.fs_12px{font-size:12px}.fs_md{font-size:var(--font-sizes-md)}.bottom_0\\.5rem{bottom:.5rem}.bd-c_mantine\\.colors\\.orange\\[6\\]{border-color:var(--colors-mantine-colors-orange\\[6\\])}.pl_lg{padding-left:var(--spacing-lg)}.pr_lg{padding-right:var(--spacing-lg)}.mt_xl{margin-top:var(--spacing-xl)}.bg-c_mantine\\.colors\\.body{background-color:var(--colors-mantine-colors-body)}.bg-i_linear-gradient\\(180deg\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\,_\\{colors\\.likec4\\.palette\\.fill\\}_4px\\,_transparent_4px\\){background-image:linear-gradient(180deg,var(--colors-likec4-palette-fill),var(--colors-likec4-palette-fill) 4px,transparent 4px)}.bd-t-c_likec4\\.palette\\.fill{border-top-color:var(--colors-likec4-palette-fill)}.ff_likec4\\.element{font-family:var(--fonts-likec4-element)}.font-style_normal{font-style:normal}.fs_24px{font-size:24px}.lh_xs{line-height:var(--line-heights-xs)}.flex-g_1{flex-grow:1}.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-items_stretch{justify-items:stretch}.justify-self_end{justify-self:end}.bd-c_mantine\\.colors\\.dark\\[3\\]{border-color:var(--colors-mantine-colors-dark\\[3\\])}.bottom_2px{bottom:2px}.right_2px{right:2px}.pt_xs{padding-top:var(--spacing-xs)}.mt_6{margin-top:6px}.mt_0{margin-top:var(--spacing-0)}.mb_0{margin-bottom:var(--spacing-0)}.lh_1\\.2{line-height:1.2}.fs_xl{font-size:var(--font-sizes-xl)}.ai_flex-end{align-items:flex-end}.mb_4{margin-bottom:var(--spacing-4)}.top_12{top:12px}.right_12{right:12px}.ml_sm{margin-left:var(--spacing-sm)}.pl_4{padding-left:var(--spacing-4)}.pr_4{padding-right:var(--spacing-4)}.grid-cs_1{grid-column-start:1}.grid-ce_4{grid-column-end:4}.bd-b-c_mantine\\.colors\\.defaultBorder{border-bottom-color:var(--colors-mantine-colors-default-border)}.mb_0px{margin-bottom:0}.grid-tc_1fr_30px_1fr{grid-template-columns:1fr 30px 1fr}.justify-items_start{justify-items:start}.bd-w_3px{border-width:3px}[data-mantine-color-scheme=dark] .dark\\:--xy-background-pattern-color_\\{colors\\.mantine\\.colors\\.dark\\[5\\]\\}{--xy-background-pattern-color: var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .light\\:--xy-background-pattern-color_\\{colors\\.mantine\\.colors\\.gray\\[4\\]\\}{--xy-background-pattern-color: var(--colors-mantine-colors-gray\\[4\\])}.\\[\\&_\\.react-flow__pane\\]\\:-webkit-user-select_none .react-flow__pane{-webkit-user-select:none}.\\[\\&_\\.react-flow__attribution\\]\\:d_none .react-flow__attribution{display:none}:where([data-likec4-zoom-small]) .smallZoom\\:d_none{display:none}:where([data-likec4-hovered=true]) .whenHovered\\:op_0\\.75{opacity:.75}.before\\:bdr_var\\(--_border-radius\\,_4px\\):before{border-radius:var(--_border-radius, 4px)}.before\\:pos_absolute:before{position:absolute}.before\\:w_100\\%:before{width:100%}.before\\:h_100\\%:before{height:100%}.before\\:bd_transparent:before{border:var(--borders-transparent)}.before\\:bg_likec4\\.palette\\.fill:before{background:var(--colors-likec4-palette-fill)}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:vis_visible{visibility:visible}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:d_none{display:none}[data-mantine-color-scheme=light] .light\\:stk_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_80\\%\\,_\\{colors\\.likec4\\.palette\\.hiContrast\\}\\)\\]{stroke:color-mix(in srgb,var(--colors-likec4-palette-stroke) 80%,var(--colors-likec4-palette-hi-contrast))}:where(.react-flow__node.draggable) .\\[\\:where\\(\\.react-flow__node\\.draggable\\)_\\&\\]\\:pointer-events_all{pointer-events:all}:where(.react-flow__node.draggable) .\\[\\:where\\(\\.react-flow__node\\.draggable\\)_\\&\\]\\:cursor_grab{cursor:grab}[data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:c_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.loContrast\\}_60\\%\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\)\\]{color:color-mix(in srgb,var(--colors-likec4-palette-lo-contrast) 60%,var(--colors-likec4-palette-fill))}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .reduceGraphicsOnPan\\:mix-bm_normal{mix-blend-mode:normal}.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% img{width: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:100%}.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none svg,.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none img{pointer-events:none}.\\[\\&_svg\\,_\\&_img\\]\\:filter_drop-shadow\\(0_0_3px_rgb\\(0_0_0_\\/_12\\%\\)\\) svg,.\\[\\&_svg\\,_\\&_img\\]\\:filter_drop-shadow\\(0_0_3px_rgb\\(0_0_0_\\/_12\\%\\)\\) img{filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%))}.\\[\\&_img\\]\\:obj-f_contain img{object-fit:contain}.\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)\\]\\:transition-fast_all_190ms_\\{easings\\.inOut\\}:is([data-likec4-hovered=true]){transition:all .19s var(--easings-in-out)}.\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)\\]\\:trf_var\\(--edge-translate\\,_translate\\(0px\\,_0px\\)\\)_scale\\(1\\.12\\):is([data-likec4-hovered=true]){transform:var(--edge-translate, translate(0px, 0px)) scale(1.12)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .reduceGraphicsOnPan\\:d_none{display:none}.empty\\:d_none\\!:is(:empty,[data-empty]){display:none!important}[data-mantine-color-scheme=light] .light\\:--xy-edge-label-color_color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.relation\\.label\\}\\,_rgba\\(255_255_255_\\/_0\\.85\\)_40\\%\\){--xy-edge-label-color: color-mix(in srgb, var(--colors-likec4-relation-label), rgba(255 255 255 / .85) 40%)}[data-mantine-color-scheme=light] .light\\:--xy-edge-label-background-color_\\{colors\\.likec4\\.relation\\.label\\.bg\\/60\\}{--xy-edge-label-background-color: color-mix(in srgb, var(--colors-likec4-relation-label-bg) 60%, transparent)}[data-mantine-color-scheme=dark] .dark\\:--xy-edge-label-background-color_\\{colors\\.likec4\\.relation\\.label\\.bg\\/50\\}{--xy-edge-label-background-color: color-mix(in srgb, var(--colors-likec4-relation-label-bg) 50%, transparent)}.\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\,\\[data-edge-active\\=\\'true\\'\\]\\)\\]\\:--xy-edge-stroke_\\{colors\\.likec4\\.relation\\.stroke\\.selected\\}:is([data-likec4-hovered=true],[data-edge-active=true]){--xy-edge-stroke: var(--colors-likec4-relation-stroke-selected)}.likec4-root:is([data-likec4-reduced-graphics]) .reduceGraphics\\:transition-fast_none{transition:none}:where([data-likec4-hovered=true]) .whenHovered\\:stk-w_calc\\(var\\(--xy-edge-stroke-width\\)_\\+_4\\){stroke-width:calc(var(--xy-edge-stroke-width) + 4)}:where([data-likec4-hovered=true]) .whenHovered\\:stk-op_0\\.2{stroke-opacity:.2}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:stk-w_calc\\(var\\(--xy-edge-stroke-width\\)_\\+_6\\){stroke-width:calc(var(--xy-edge-stroke-width) + 6)}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:stk-op_0\\.25{stroke-opacity:.25}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:transition-fast_stroke_130ms_ease-out\\,stroke-width_130ms_ease-out{transition:stroke .13s ease-out,stroke-width .13s ease-out}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:stk-dsh_none\\!{stroke-dasharray:none!important}:where([data-likec4-hovered=true]) .whenHovered\\:op_1{opacity:1}.\\[\\&_\\.tabler-icon\\]\\:w_80\\% .tabler-icon{width:80%}.\\[\\&_\\.tabler-icon\\]\\:h_80\\% .tabler-icon{height:80%}.\\[\\&_\\.tabler-icon\\]\\:stk-w_2 .tabler-icon{stroke-width:2}.before\\:h_24px:before{height:24px}.before\\:bg_\\[transparent\\]:before{background:var(--colors-transparent)}.before\\:pointer-events_all:before{pointer-events:all}:where(.react-flow__node.selectable:not(.dragging)) .\\[\\:where\\(\\.react-flow__node\\.selectable\\:not\\(\\.dragging\\)\\)_\\&\\]\\:cursor_pointer{cursor:pointer}:where([data-likec4-zoom-small]) .smallZoom\\:vis_hidden{visibility:hidden}[data-mantine-color-scheme=light] .light\\:stk_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.fill\\}_50\\%\\,rgb\\(121\\,_121\\,_121\\)\\)\\]{stroke:color-mix(in srgb,var(--colors-likec4-palette-fill) 50%,rgb(121,121,121))}.shape-svg-multiple .\\[\\.shape-svg-multiple_\\&\\]\\:fill_likec4\\.palette\\.fill{fill:var(--colors-likec4-palette-fill)}:where([data-likec4-shape=queue]) .shapeQueue\\:trf-o_75\\%_25\\%{transform-origin:75% 25%}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:trf-o_50\\%_100\\%{transform-origin:50% 100%}:where([data-likec4-shape=storage]) .shapeStorage\\:trf-o_50\\%_100\\%{transform-origin:50% 100%}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:d_none{display:none}:where([data-likec4-hovered=true]) .whenHovered\\:filter_drop-shadow\\(0_2px_1px_rgba\\(0\\,_0\\,_0\\,_0\\.25\\)\\)_drop-shadow\\(0_8px_3px_rgba\\(0\\,_0\\,_0\\,_0\\.1\\)\\)_drop-shadow\\(0_10px_10px_rgba\\(0\\,_0\\,_0\\,_0\\.05\\)\\){filter:drop-shadow(0 2px 1px rgba(0,0,0,.25)) drop-shadow(0 8px 3px rgba(0,0,0,.1)) drop-shadow(0 10px 10px rgba(0,0,0,.05))}:where([data-likec4-level=true]) .\\[\\:where\\(\\[data-likec4-level\\=\\'true\\'\\]\\)_\\&\\]\\:filter_drop-shadow\\(0_2px_1px_rgba\\(0\\,_0\\,_0\\,_0\\.25\\)\\)_drop-shadow\\(0_8px_3px_rgba\\(0\\,_0\\,_0\\,_0\\.1\\)\\)_drop-shadow\\(0_10px_10px_rgba\\(0\\,_0\\,_0\\,_0\\.05\\)\\){filter:drop-shadow(0 2px 1px rgba(0,0,0,.25)) drop-shadow(0 8px 3px rgba(0,0,0,.1)) drop-shadow(0 10px 10px rgba(0,0,0,.05))}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:filter_none{filter:none}:where([data-likec4-zoom-small]) .smallZoom\\:filter_none{filter:none}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:transition-fast_none{transition:none}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:filter_none{filter:none}:where([data-likec4-shape-size=xs]) .shapeSizeXs\\:d_none{display:none}:where([data-likec4-shape-size=sm]) .shapeSizeSm\\:d_none{display:none}:where([data-likec4-shape-size=xs]) .shapeSizeXs\\:--icon-size_24px{--icon-size: 24px}:where([data-likec4-shape-size=sm]) .shapeSizeSm\\:--icon-size_36px{--icon-size: 36px}:where([data-likec4-shape-size=md]) .shapeSizeMd\\:--icon-size_60px{--icon-size: 60px}:where([data-likec4-shape-size=lg]) .shapeSizeLg\\:--icon-size_82px{--icon-size: 82px}:where([data-likec4-shape-size=lg]) .shapeSizeLg\\:gap_16px{gap:16px}:where([data-likec4-shape-size=xl]) .shapeSizeXl\\:--icon-size_90px{--icon-size: 90px}:where([data-likec4-shape-size=xl]) .shapeSizeXl\\:gap_16px{gap:16px}.\\[\\&_\\:where\\(\\.likec4-diagram\\,_\\.likec4-compound-node\\,_\\.likec4-element-node\\)\\]\\:cursor_pointer :where(.likec4-diagram,.likec4-compound-node,.likec4-element-node){cursor:pointer}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}[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\\])}.\\[\\&_\\.tabler-icon\\]\\:c_mantine\\.colors\\.text .tabler-icon{color:var(--colors-mantine-colors-text)}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:transition-fast_none\\!{transition:none!important}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:bx-sh_none\\!{box-shadow: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\\:c_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}\\,_\\{colors\\.likec4\\.mixColor\\}_60\\%\\)\\]{color:color-mix(in srgb,var(--colors-likec4-palette-stroke),var(--colors-likec4-mix-color) 60%)}[data-mantine-color-scheme=dark] .dark\\:c_likec4\\.palette\\.loContrast{color:var(--colors-likec4-palette-lo-contrast)}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:vis_visible{visibility:visible}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:transition-fast_fill-opacity_150ms_ease-out\\,_stroke_150ms_ease-out\\,_stroke-width_150ms_ease-out{transition:fill-opacity .15s ease-out,stroke .15s ease-out,stroke-width .15s ease-out}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:fill-opacity_1{fill-opacity:1}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:stk-w_5{stroke-width:5}.\\[\\&_\\*\\]\\:cursor_grabbing\\! *,.\\[\\&_\\.react-flow__edge-interaction\\]\\:cursor_grabbing\\! .react-flow__edge-interaction{cursor:grabbing!important}.empty\\:d_none:is(:empty,[data-empty]){display:none}.\\[\\&_\\:where\\(button\\,_\\.action-icon\\,_\\[role\\=\\'dialog\\'\\]\\)\\]\\:pointer-events_all :where(button,.action-icon,[role=dialog]){pointer-events:all}.\\[\\&_\\.action-icon\\]\\:--ai-size_2rem .action-icon{--ai-size: 2rem}.\\[\\&_\\.tabler-icon\\]\\:w_65\\% .tabler-icon{width:65%}.\\[\\&_\\.tabler-icon\\]\\:h_65\\% .tabler-icon{height:65%}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:bx-sh_none{box-shadow:none}[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-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:--ai-radius_\\{radii\\.md\\}{--ai-radius: var(--radii-md)}[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\\]))}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:min-h_100\\% .mantine-ScrollArea-viewport{min-height:100%}.\\[\\&\\[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=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\\:c_mantine\\.colors\\.gray\\[6\\]{color:var(--colors-mantine-colors-gray\\[6\\])}.\\[\\&\\.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}.\\[\\&_\\.tabler-icon\\]\\:w_0\\.85em .tabler-icon{width:.85em}.\\[\\&_\\.tabler-icon\\]\\:h_0\\.85em .tabler-icon{height:.85em}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.primary\\.filled\\/85{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary-filled) 85%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary-filled))}.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))}[data-mantine-color-scheme=dark] .dark\\:mix-bm_hard-light{mix-blend-mode:hard-light}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:w_100\\% :where(svg,img){width:100%}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:h_auto :where(svg,img){height:auto}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:max-h_100\\% :where(svg,img){max-height:100%}.\\[\\&_\\: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%))}[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\\]\\:transition-fast_fast .mantine-ThemeIcon-root{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&_\\.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\\]))}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:--ti-size_22px .mantine-ThemeIcon-root{--ti-size: 22px}.\\[\\&_\\>_\\*\\]\\:transition-fast_all_130ms_\\{easings\\.inOut\\}>*{transition:all .13s var(--easings-in-out)}.\\[\\&\\[data-active\\]\\]\\:transition-fast_none[data-active]{transition:none}.\\[\\&\\[data-active\\]\\]\\:bg_mantine\\.colors\\.white[data-active]{background:var(--colors-mantine-colors-white)}.\\[\\&\\[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)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:w_100\\% .mantine-ScrollArea-root{width:100%}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:h_100\\% .mantine-ScrollArea-root{height:100%}.\\[\\&_\\>_\\*\\]\\:transition-fast_fast>*{transition:all var(--durations-fast) var(--easings-in-out)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\.lightColor{color:var(--colors-mantine-colors-gray-light-color)}.\\[\\&_\\.tabler-icon\\]\\:transition-fast_fast .tabler-icon{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&_\\.tabler-icon\\]\\:w_90\\% .tabler-icon{width:90%}.\\[\\&_\\.tabler-icon\\]\\:op_0\\.65 .tabler-icon{opacity:.65}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.\\[\\&\\[data-missing\\]\\]\\:c_mantine\\.colors\\.orange\\[4\\][data-missing]{color:var(--colors-mantine-colors-orange\\[4\\])}.\\[\\&\\[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\\]))}.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)}.\\[\\&\\[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\\]))}.backdrop\\:cursor_zoom-out::backdrop{cursor:zoom-out}.backdrop\\:bkdp_blur\\(var\\(--_blur\\)\\)::backdrop{backdrop-filter:blur(var(--_blur));-webkit-backdrop-filter:blur(var(--_blur))}.\\[\\&_\\.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\\]\\:c_mantine\\.colors\\.dimmed .mantine-Text-root{color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:bd-b_none:last-child .likec4-edge-label{border-bottom:var(--borders-none)}.\\[\\&_\\>_\\*\\]\\:transition-fast_all_0\\.15s_ease-in>*{transition:all .15s ease-in}.before\\:content_\\"_\\":before{content:" "}.before\\:top_0:before{top:var(--spacing-0)}.before\\:left_0:before{left:var(--spacing-0)}.before\\:bg-cp_padding-box:before{background-clip:padding-box;-webkit-background-clip:padding-box}.before\\:trs-dly_\\.075ms:before{transition-delay:.075ms}.likec4-compound-node:has(.compound-action) .\\[\\.likec4-compound-node\\:has\\(\\.compound-action\\)_\\&\\]\\:pl_22px{padding-left:22px}.\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)\\]\\:trs-dly_100ms:is([data-likec4-hovered=true]){transition-delay:.1s}:where([data-likec4-hovered=true]) .whenHovered\\:trs-tmf_out{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}:where([data-likec4-hovered=true]) .whenHovered\\:anim-dly_450ms{animation-delay:.45s}:where(.react-flow__edge.selected,[data-edge-active=true],[data-edge-animated=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-edge-active\\=\\'true\\'\\]\\,_\\[data-edge-animated\\=\\'true\\'\\]\\)_\\&\\]\\:anim-dly_0ms{animation-delay:0ms}:where([data-edge-dir=back]) .\\[\\:where\\(\\[data-edge-dir\\=\\'back\\'\\]\\)_\\&\\]\\:anim-dir_reverse{animation-direction:reverse}:where([data-likec4-dimmed]) .whenDimmed\\:anim-ps_paused{animation-play-state:paused}:where([data-likec4-zoom-small]) .smallZoom\\:anim-n_none{animation-name:none}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:anim-n_none{animation-name:none}: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_12px{right:12px}.before\\:top_calc\\(100\\%_-_4px\\):before{top:calc(100% - 4px)}:where([data-likec4-shape=queue]) .shapeQueue\\:pl_46px{padding-left:46px}:where([data-likec4-shape=queue]) .shapeQueue\\:pr_16px{padding-right:16px}:where([data-likec4-shape=mobile]) .shapeMobile\\:pl_46px{padding-left:46px}:where([data-likec4-shape=mobile]) .shapeMobile\\:pr_16px{padding-right:16px}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:pt_30px{padding-top:30px}:where([data-likec4-shape=storage]) .shapeStorage\\:pt_30px{padding-top:30px}:where([data-likec4-shape=browser]) .shapeBrowser\\:pt_32px{padding-top:32px}:where([data-likec4-shape=browser]) .shapeBrowser\\:pb_28px{padding-bottom:28px}[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\\])}[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\\])}[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\\]))}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-dly_50ms{transition-delay:50ms}[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\\]))}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:bg-c_mantine\\.colors\\.body{background-color:var(--colors-mantine-colors-body)}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(255_255_255_\\/_0\\.92_\\)\\]{background-color:#ffffffeb}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(255_255_255_\\/_0\\.6\\)\\]{background-color:#fff9}:is(.\\[\\&_\\+_\\&\\]\\:mt_32px)+:is(.\\[\\&_\\+_\\&\\]\\:mt_32px){margin-top:32px}[data-mantine-color-scheme=dark] .dark\\:bd-c_transparent{border-color:var(--colors-transparent)}.backdrop\\:bg-c_\\[rgb\\(36_36_36_\\/_var\\(--_opacity\\,_5\\%\\)\\)\\]::backdrop{background-color:rgb(36 36 36 / var(--_opacity, 5%))}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]{background-color:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .dark\\:bg-i_linear-gradient\\(180deg\\,_color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.fill\\}_15\\%\\,_transparent\\)\\,_transparent_80px\\)\\,_linear-gradient\\(180deg\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\,_\\{colors\\.likec4\\.palette\\.fill\\}_4px\\,_transparent_4px\\){background-image:linear-gradient(180deg,color-mix(in srgb,var(--colors-likec4-palette-fill) 15%,transparent),transparent 80px),linear-gradient(180deg,var(--colors-likec4-palette-fill),var(--colors-likec4-palette-fill) 4px,transparent 4px)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pl_4px:not(:has(.mantine-ScrollArea-root)){padding-left:4px}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pr_4px:not(:has(.mantine-ScrollArea-root)){padding-right:4px}.\\[\\&\\[data-level\\=\\'1\\'\\]\\]\\:mb_sm[data-level="1"]{margin-bottom:var(--spacing-sm)}.\\[\\&\\[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\\])}.before\\:content_\\"scope\\:\\":before{content:"scope:"}.before\\:left_8:before{left:var(--spacing-8)}.before\\:fs_2xs:before{font-size:2xs}.before\\:fw_500:before{font-weight:500}.before\\:lh_1:before{line-height:var(--line-heights-1)}.\\[\\&_\\.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)}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:mb_0:last-child .likec4-edge-label{margin-bottom:var(--spacing-0)}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .whenFocused\\:vis_visible{visibility:visible}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .whenFocused\\:d_none{display:none}.focusWithin\\:bg_mantine\\.colors\\.gray\\[3\\]\\/55:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 55%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}.focusVisible\\:ring_none:is(:focus-visible,[data-focus-visible]){outline:var(--borders-none)}.group:is(:focus-visible,[data-focus-visible]) .groupFocusVisible\\:vis_visible{visibility:visible}.focus\\:ring_none:is(:focus,[data-focus]){outline:var(--borders-none)}.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_\\&\\]\\:ring_none{outline:var(--borders-none)}.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\\: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\\])}.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_\\&\\]\\:bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.hover\\:op_1:is(:hover,[data-hover]){opacity:1}.hover\\:translate-y_1px:is(:hover,[data-hover]){--translate-y: 1px}.hover\\:scale_1\\.15:is(:hover,[data-hover]){scale:1.15}.hover\\:c_mantine\\.colors\\.defaultColor:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}.hover\\:bg_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-default-hover)}.group:is(:hover,[data-hover]) .groupHover\\:trf_translateX\\(1px\\){transform:translate(1px)}.hover\\:bx-sh_sm:is(:hover,[data-hover]){box-shadow:var(--shadows-sm)}.hover\\:fill-opacity_1:is(:hover,[data-hover]){fill-opacity:1}.hover\\:stk_mantine\\.colors\\.primary\\.filledHover:is(:hover,[data-hover]){stroke:var(--colors-mantine-colors-primary-filled-hover)}.hover\\:stk-w_10:is(:hover,[data-hover]){stroke-width:10}.hover\\:transition-fast_stroke_100ms_ease-out\\,_stroke-width_100ms_ease-out:is(:hover,[data-hover]){transition:stroke .1s ease-out,stroke-width .1s ease-out}.hover\\:transition-fast_all_120ms_ease-out:is(:hover,[data-hover]){transition:all .12s ease-out}.hover\\:ring_none:is(:hover,[data-hover]){outline:var(--borders-none)}.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\\: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\\:trf_scale\\(1\\.1\\):is(:hover,[data-hover]){transform:scale(1.1)}.hover\\:bg_mantine\\.colors\\.primary\\.filledHover\\/65:is(:hover,[data-hover]){--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary-filled-hover) 65%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary-filled-hover))}.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_\\>_\\*\\]\\:trf_translateX\\(1\\.6px\\):hover>*{transform:translate(1.6px)}.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)}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:transition-fast_all_0\\.15s_ease-out:is(:hover,[data-selected=true])>*{transition:all .15s ease-out}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:cursor_pointer:is(:hover,[data-selected=true])>*{cursor:pointer}.hover\\:trs-dly_0s:is(:hover,[data-hover]){transition-delay:0s}.hover\\:trs-tmf_out:is(:hover,[data-hover]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.group:is(:hover,[data-hover]) .groupHover\\:trs-tmf_out{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.group:is(:hover,[data-hover]) .groupHover\\:trs-dly_50ms{transition-delay:50ms}.hover\\:bd-c_mantine\\.colors\\.defaultBorder:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-default-border)}.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\\]))}.hover\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.\\[\\&\\:hover_\\>_\\*\\]\\:trs-tmf_out:hover>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.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\\]\\)_\\>_\\*\\]\\: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\\])}.active\\:translate-y_-1px:is(:active,[data-active]){--translate-y: -1px}.active\\:scale_0\\.9:is(:active,[data-active]){scale:.9}.active\\:trf_scale\\(0\\.98\\)_translateY\\(3px\\):is(:active,[data-active]){transform:scale(.98) translateY(3px)}.active\\:trs-dur_100ms:is(:active,[data-active]){--transition-duration: .1s;transition-duration:.1s}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:before\\:transition-fast_all_\\{durations\\.slow\\}_\\{easings\\.inOut\\}:before{transition:all var(--durations-slow) var(--easings-in-out)}.\\[\\&\\:is\\(\\[data-compound-transparent\\]\\)\\]\\:before\\:op_var\\(--_compound-opacity\\,_1\\):is([data-compound-transparent]):before{opacity:var(--_compound-opacity, 1)}.likec4-root:not([data-likec4-reduced-graphics]) .before\\:noReduceGraphics\\:bx-sh_0_4px_10px_0\\.5px_rgba\\(0\\,0\\,0\\,0\\.1\\)_\\,_0_2px_2px_-1px_rgba\\(0\\,0\\,0\\,0\\.4\\):before{box-shadow:0 4px 10px .5px #0000001a,0 2px 2px -1px #0006}:where(.react-flow__node.selected,.react-flow__edge.selected) .before\\:whenSelected\\:bx-sh_none:before{box-shadow:none}:is(.likec4-root[data-likec4-diagram-panning]) .before\\:whenPanning\\:bx-sh_none\\!:before{box-shadow:none!important}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:c_likec4\\.palette\\.stroke{color:var(--colors-likec4-palette-stroke)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .\\[\\&_svg\\,_\\&_img\\]\\:reduceGraphicsOnPan\\:filter_none svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .\\[\\&_svg\\,_\\&_img\\]\\:reduceGraphicsOnPan\\:filter_none img{filter:none}[data-mantine-color-scheme=dark] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:dark\\:--actionbtn-color_color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.loContrast\\}_60\\%\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\){--actionbtn-color: color-mix(in srgb, var(--colors-likec4-palette-lo-contrast) 60%, var(--colors-likec4-palette-fill))}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-color_\\{colors\\.likec4\\.palette\\.stroke\\}{--actionbtn-color: var(--colors-likec4-palette-stroke)}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-color-hovered_\\{colors\\.likec4\\.palette\\.stroke\\}{--actionbtn-color-hovered: var(--colors-likec4-palette-stroke)}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-color-hovered-btn_\\{colors\\.likec4\\.palette\\.hiContrast\\}{--actionbtn-color-hovered-btn: var(--colors-likec4-palette-hi-contrast)}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-bg-hovered_\\{colors\\.likec4\\.palette\\.fill\\/50\\}{--actionbtn-bg-hovered: color-mix(in srgb, var(--colors-likec4-palette-fill) 50%, transparent)}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-bg-hovered-btn_\\{colors\\.likec4\\.palette\\.fill\\}{--actionbtn-bg-hovered-btn: var(--colors-likec4-palette-fill)}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:dark\\:mix-bm_plus-lighter{mix-blend-mode:plus-lighter}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:light\\:mix-bm_screen{mix-blend-mode:screen}[data-mantine-color-scheme=dark] :where([data-likec4-color=gray]) .\\[\\:where\\(\\[data-likec4-color\\=\\"gray\\"\\]\\)_\\&\\]\\:dark\\:bg_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.relation\\.label\\.bg\\}\\,_\\{colors\\.likec4\\.mixColor\\}_15\\%\\)\\]{background:color-mix(in srgb,var(--colors-likec4-relation-label-bg),var(--colors-likec4-mix-color) 15%)}:where(.react-flow__node.selected,.react-flow__edge.selected) .\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\,\\[data-edge-active\\=\\'true\\'\\]\\)\\]\\:whenSelected\\:--xy-edge-stroke-width_4:is([data-likec4-hovered=true],[data-edge-active=true]){--xy-edge-stroke-width: 4}:where([data-likec4-hovered=true]) :where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:whenHovered\\:stk-op_0\\.4{stroke-opacity:.4}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .reduceGraphicsOnPan\\:before\\:d_none:before{display:none}.likec4-root:is([data-likec4-reduced-graphics]) .reduceGraphics\\:\\[\\&_\\.action-icon\\]\\:--ai-radius_0px .action-icon{--ai-radius: 0px}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:min-h_100\\% .mantine-ScrollArea-viewport>div{min-height:100%}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:h_100\\% .mantine-ScrollArea-viewport>div{height:100%}.group:is(:hover,[data-hover]) [data-mantine-color-scheme=light] .light\\:groupHover\\:c_mantine\\.colors\\.primary\\[3\\]{color:var(--colors-mantine-colors-primary\\[3\\])}.group:is(:focus,[data-focus]) [data-mantine-color-scheme=light] .light\\:groupFocus\\:c_mantine\\.colors\\.primary\\[3\\]{color:var(--colors-mantine-colors-primary\\[3\\])}.mantine-Tree-node:focus>.mantine-Tree-label [data-mantine-color-scheme=light] .light\\:\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[3\\]{color:var(--colors-mantine-colors-primary\\[3\\])}.\\[\\&_\\.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=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] .\\[\\&\\[data-missing\\]\\]\\:light\\:c_mantine\\.colors\\.orange\\[8\\][data-missing]{color:var(--colors-mantine-colors-orange\\[8\\])}[data-mantine-color-scheme=light] .light\\:\\[\\&_\\.mantine-SegmentedControl-root\\]\\:bg_mantine\\.colors\\.gray\\[3\\] .mantine-SegmentedControl-root{background:var(--colors-mantine-colors-gray\\[3\\])}.\\[\\&\\:is\\(\\[data-compound-transparent\\]\\)\\]\\:before\\:bd-w_calc\\(var\\(--_border-width\\,_2px\\)_-_1px\\):is([data-compound-transparent]):before{border-width:calc(var(--_border-width, 2px) - 1px)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pl_4px .mantine-ScrollArea-root>div{padding-left:4px}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pr_4px .mantine-ScrollArea-root>div{padding-right:4px}[data-mantine-color-scheme=dark] .backdrop\\:dark\\:bg-c_\\[rgb\\(34_34_34_\\/_var\\(--_opacity\\)\\)\\]::backdrop{background-color:rgb(34 34 34 / var(--_opacity))}[data-mantine-color-scheme=light] .backdrop\\:light\\:bg-c_\\[rgb\\(15_15_15\\/_var\\(--_opacity\\)\\)\\]::backdrop{background-color:rgb(15 15 15/ var(--_opacity))}[data-mantine-color-scheme=dark] .focusWithin\\:dark\\:bg_mantine\\.colors\\.dark\\[4\\]\\/55:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[4\\]) 55%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[4\\]))}[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=light] .light\\:hover\\:bg_mantine\\.colors\\.primary\\.filledHover\\/85:is(:hover,[data-hover]){--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary-filled-hover) 85%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary-filled-hover))}[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\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg_mantine\\.colors\\.dark\\[6\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-dark\\[6\\])}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>:not([data-no-transform]){transform:translate(1px)}.hover\\:\\[\\&_\\>_\\*\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>*{transform:translate(1px)}[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] .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] .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\\]))}[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=light] .light\\:hover\\:bg-c_mantine\\.colors\\.primary\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-primary\\[5\\])}.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\\:\\[\\&_\\>_\\*\\]\\:trs-tmf_out:is(:hover,[data-hover])>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-default-hover)}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:\\[\\&\\[data-likec4-hovered\\=\\'true\\'\\]\\]\\:before\\:trs-dly_\\.2s[data-likec4-hovered=true]:before{transition-delay:.2s}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:\\[\\&\\[data-likec4-hovered\\=\\'true\\'\\]\\]\\:before\\:trs-tmf_in[data-likec4-hovered=true]:before{--transition-easing: var(--easings-in);transition-timing-function:var(--easings-in)}@media screen and (min-width: 36rem){.xs\\:h_100cqh{height:100cqh}.xs\\:max-h_calc\\(100cqh_-_70px\\){max-height:calc(100cqh - 70px)}.\\[\\&_svg\\,_\\&_img\\]\\:xs\\:filter_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_8\\%\\)\\) svg,.\\[\\&_svg\\,_\\&_img\\]\\:xs\\:filter_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_8\\%\\)\\) img{filter:drop-shadow(0 1px 8px rgb(0 0 0 / 8%))}}@media screen and (min-width: 48rem){.sm\\:min-w_250{min-width:250px}.sm\\:max-w_90vw{max-width:90vw}.sm\\:min-w_300{min-width:300px}.sm\\:max-w_65vw{max-width:65vw}.sm\\:inset_\\[var\\(--_inset\\)_var\\(--_offset\\)_var\\(--_offset\\)_var\\(--_inset\\)\\]{inset:var(--_inset) var(--_offset) var(--_offset) var(--_inset)}.sm\\:w_calc\\(100vw_-_var\\(--_offset\\)_-_var\\(--_inset\\)\\){width:calc(100vw - var(--_offset) - var(--_inset))}.sm\\:h_calc\\(100vh_-_var\\(--_offset\\)_-_var\\(--_inset\\)\\){height:calc(100vh - var(--_offset) - var(--_inset))}.sm\\:--_border-radius_6px{--_border-radius: 6px}.sm\\:p_6px{padding:6px}.sm\\:--_offset_1rem{--_offset: 1rem}.sm\\:bdr_calc\\(var\\(--_border-radius\\)_-_2px\\){border-radius:calc(var(--_border-radius) - 2px)}.\\[\\&_svg\\,_\\&_img\\]\\:sm\\:filter_drop-shadow\\(1px_1px_16px_rgb\\(0_0_0_\\/_3\\%\\)\\) svg,.\\[\\&_svg\\,_\\&_img\\]\\:sm\\:filter_drop-shadow\\(1px_1px_16px_rgb\\(0_0_0_\\/_3\\%\\)\\) img{filter:drop-shadow(1px 1px 16px rgb(0 0 0 / 3%))}}@media screen and (min-width: 62rem){.md\\:--text-fz_\\{fontSizes\\.md\\}{--text-fz: var(--font-sizes-md)}.md\\:min-w_350{min-width:350px}.md\\:max-w_70vw{max-width:70vw}.md\\:max-w_40vw{max-width:40vw}.md\\:px_6{padding-inline:6px}.md\\:gap_0\\.6rem{gap:.6rem}.md\\:--_offset_1rem{--_offset: 1rem}.md\\:bd-w_4{border-width:4px}}@media screen and (min-width: 75rem){.lg\\:px_8{padding-inline:var(--spacing-8)}.lg\\:--_offset_2rem{--_offset: 2rem}}@media screen and (min-width: 88rem){.xl\\:--_offset_4rem{--_offset: 4rem}}@media screen and (max-width: 47.9975rem){.smDown\\:--_border-radius_0px{--_border-radius: 0px}.smDown\\:bd_none{border:var(--borders-none)}.smDown\\:inset_0{inset:var(--spacing-0)}.smDown\\:p_0{padding:var(--spacing-0)}.smDown\\:w_100vw{width:100vw}.smDown\\:h_100vh{height:100vh}}@container likec4-tree (max-width: 450px){.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:gap_2{gap:var(--spacing-2)}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:--likec4-icon-size_18px{--likec4-icon-size: 18px}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:d_none{display:none}.\\[\\@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}}}`, fontsCss = '@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}', DefaultTheme = {
|
|
12878
|
+
const inlinedStyles = `@layer reset,base,mantine,xyflow,tokens,recipes,utilities;@layer mantine{*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}.likec4-shadow-root{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){.likec4-shadow-root{-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)}.likec4-shadow-root{color-scheme:var(--mantine-color-scheme);--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-color-scheme: light dark;--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-radius-default: calc(.25rem * 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-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-color-dark-0: #c9c9c9;--mantine-color-dark-1: #b8b8b8;--mantine-color-dark-2: #828282;--mantine-color-dark-3: #696969;--mantine-color-dark-4: #424242;--mantine-color-dark-5: #3b3b3b;--mantine-color-dark-6: #2e2e2e;--mantine-color-dark-7: #242424;--mantine-color-dark-8: #1f1f1f;--mantine-color-dark-9: #141414;--mantine-color-gray-0: #f8f9fa;--mantine-color-gray-1: #f1f3f5;--mantine-color-gray-2: #e9ecef;--mantine-color-gray-3: #dee2e6;--mantine-color-gray-4: #ced4da;--mantine-color-gray-5: #adb5bd;--mantine-color-gray-6: #868e96;--mantine-color-gray-7: #495057;--mantine-color-gray-8: #343a40;--mantine-color-gray-9: #212529;--mantine-color-red-0: #fff5f5;--mantine-color-red-1: #ffe3e3;--mantine-color-red-2: #ffc9c9;--mantine-color-red-3: #ffa8a8;--mantine-color-red-4: #ff8787;--mantine-color-red-5: #ff6b6b;--mantine-color-red-6: #fa5252;--mantine-color-red-7: #f03e3e;--mantine-color-red-8: #e03131;--mantine-color-red-9: #c92a2a;--mantine-color-pink-0: #fff0f6;--mantine-color-pink-1: #ffdeeb;--mantine-color-pink-2: #fcc2d7;--mantine-color-pink-3: #faa2c1;--mantine-color-pink-4: #f783ac;--mantine-color-pink-5: #f06595;--mantine-color-pink-6: #e64980;--mantine-color-pink-7: #d6336c;--mantine-color-pink-8: #c2255c;--mantine-color-pink-9: #a61e4d;--mantine-color-grape-0: #f8f0fc;--mantine-color-grape-1: #f3d9fa;--mantine-color-grape-2: #eebefa;--mantine-color-grape-3: #e599f7;--mantine-color-grape-4: #da77f2;--mantine-color-grape-5: #cc5de8;--mantine-color-grape-6: #be4bdb;--mantine-color-grape-7: #ae3ec9;--mantine-color-grape-8: #9c36b5;--mantine-color-grape-9: #862e9c;--mantine-color-violet-0: #f3f0ff;--mantine-color-violet-1: #e5dbff;--mantine-color-violet-2: #d0bfff;--mantine-color-violet-3: #b197fc;--mantine-color-violet-4: #9775fa;--mantine-color-violet-5: #845ef7;--mantine-color-violet-6: #7950f2;--mantine-color-violet-7: #7048e8;--mantine-color-violet-8: #6741d9;--mantine-color-violet-9: #5f3dc4;--mantine-color-indigo-0: #edf2ff;--mantine-color-indigo-1: #dbe4ff;--mantine-color-indigo-2: #bac8ff;--mantine-color-indigo-3: #91a7ff;--mantine-color-indigo-4: #748ffc;--mantine-color-indigo-5: #5c7cfa;--mantine-color-indigo-6: #4c6ef5;--mantine-color-indigo-7: #4263eb;--mantine-color-indigo-8: #3b5bdb;--mantine-color-indigo-9: #364fc7;--mantine-color-blue-0: #e7f5ff;--mantine-color-blue-1: #d0ebff;--mantine-color-blue-2: #a5d8ff;--mantine-color-blue-3: #74c0fc;--mantine-color-blue-4: #4dabf7;--mantine-color-blue-5: #339af0;--mantine-color-blue-6: #228be6;--mantine-color-blue-7: #1c7ed6;--mantine-color-blue-8: #1971c2;--mantine-color-blue-9: #1864ab;--mantine-color-cyan-0: #e3fafc;--mantine-color-cyan-1: #c5f6fa;--mantine-color-cyan-2: #99e9f2;--mantine-color-cyan-3: #66d9e8;--mantine-color-cyan-4: #3bc9db;--mantine-color-cyan-5: #22b8cf;--mantine-color-cyan-6: #15aabf;--mantine-color-cyan-7: #1098ad;--mantine-color-cyan-8: #0c8599;--mantine-color-cyan-9: #0b7285;--mantine-color-teal-0: #e6fcf5;--mantine-color-teal-1: #c3fae8;--mantine-color-teal-2: #96f2d7;--mantine-color-teal-3: #63e6be;--mantine-color-teal-4: #38d9a9;--mantine-color-teal-5: #20c997;--mantine-color-teal-6: #12b886;--mantine-color-teal-7: #0ca678;--mantine-color-teal-8: #099268;--mantine-color-teal-9: #087f5b;--mantine-color-green-0: #ebfbee;--mantine-color-green-1: #d3f9d8;--mantine-color-green-2: #b2f2bb;--mantine-color-green-3: #8ce99a;--mantine-color-green-4: #69db7c;--mantine-color-green-5: #51cf66;--mantine-color-green-6: #40c057;--mantine-color-green-7: #37b24d;--mantine-color-green-8: #2f9e44;--mantine-color-green-9: #2b8a3e;--mantine-color-lime-0: #f4fce3;--mantine-color-lime-1: #e9fac8;--mantine-color-lime-2: #d8f5a2;--mantine-color-lime-3: #c0eb75;--mantine-color-lime-4: #a9e34b;--mantine-color-lime-5: #94d82d;--mantine-color-lime-6: #82c91e;--mantine-color-lime-7: #74b816;--mantine-color-lime-8: #66a80f;--mantine-color-lime-9: #5c940d;--mantine-color-yellow-0: #fff9db;--mantine-color-yellow-1: #fff3bf;--mantine-color-yellow-2: #ffec99;--mantine-color-yellow-3: #ffe066;--mantine-color-yellow-4: #ffd43b;--mantine-color-yellow-5: #fcc419;--mantine-color-yellow-6: #fab005;--mantine-color-yellow-7: #f59f00;--mantine-color-yellow-8: #f08c00;--mantine-color-yellow-9: #e67700;--mantine-color-orange-0: #fff4e6;--mantine-color-orange-1: #ffe8cc;--mantine-color-orange-2: #ffd8a8;--mantine-color-orange-3: #ffc078;--mantine-color-orange-4: #ffa94d;--mantine-color-orange-5: #ff922b;--mantine-color-orange-6: #fd7e14;--mantine-color-orange-7: #f76707;--mantine-color-orange-8: #e8590c;--mantine-color-orange-9: #d9480f;--mantine-h1-font-size: calc(2.125rem * var(--mantine-scale));--mantine-h1-line-height: 1.3;--mantine-h1-font-weight: 700;--mantine-h2-font-size: calc(1.625rem * var(--mantine-scale));--mantine-h2-line-height: 1.35;--mantine-h2-font-weight: 700;--mantine-h3-font-size: calc(1.375rem * var(--mantine-scale));--mantine-h3-line-height: 1.4;--mantine-h3-font-weight: 700;--mantine-h4-font-size: calc(1.125rem * var(--mantine-scale));--mantine-h4-line-height: 1.45;--mantine-h4-font-weight: 700;--mantine-h5-font-size: calc(1rem * var(--mantine-scale));--mantine-h5-line-height: 1.5;--mantine-h5-font-weight: 700;--mantine-h6-font-size: calc(.875rem * var(--mantine-scale));--mantine-h6-line-height: 1.5;--mantine-h6-font-weight: 700}:root[data-mantine-color-scheme=dark]{--mantine-color-scheme: dark;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-white);--mantine-color-text: var(--mantine-color-dark-0);--mantine-color-body: var(--mantine-color-dark-7);--mantine-color-error: var(--mantine-color-red-8);--mantine-color-placeholder: var(--mantine-color-dark-3);--mantine-color-anchor: var(--mantine-color-blue-4);--mantine-color-default: var(--mantine-color-dark-6);--mantine-color-default-hover: var(--mantine-color-dark-5);--mantine-color-default-color: var(--mantine-color-white);--mantine-color-default-border: var(--mantine-color-dark-4);--mantine-color-dimmed: var(--mantine-color-dark-2);--mantine-color-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-7);--mantine-color-dark-light: rgba(36, 36, 36, .15);--mantine-color-dark-light-hover: rgba(36, 36, 36, .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(36, 36, 36, .05);--mantine-color-gray-text: var(--mantine-color-gray-4);--mantine-color-gray-filled: var(--mantine-color-gray-8);--mantine-color-gray-filled-hover: var(--mantine-color-gray-9);--mantine-color-gray-light: rgba(134, 142, 150, .15);--mantine-color-gray-light-hover: rgba(134, 142, 150, .2);--mantine-color-gray-light-color: var(--mantine-color-gray-3);--mantine-color-gray-outline: var(--mantine-color-gray-4);--mantine-color-gray-outline-hover: rgba(206, 212, 218, .05);--mantine-color-red-text: var(--mantine-color-red-4);--mantine-color-red-filled: var(--mantine-color-red-8);--mantine-color-red-filled-hover: var(--mantine-color-red-9);--mantine-color-red-light: rgba(250, 82, 82, .15);--mantine-color-red-light-hover: rgba(250, 82, 82, .2);--mantine-color-red-light-color: var(--mantine-color-red-3);--mantine-color-red-outline: var(--mantine-color-red-4);--mantine-color-red-outline-hover: rgba(255, 135, 135, .05);--mantine-color-pink-text: var(--mantine-color-pink-4);--mantine-color-pink-filled: var(--mantine-color-pink-8);--mantine-color-pink-filled-hover: var(--mantine-color-pink-9);--mantine-color-pink-light: rgba(230, 73, 128, .15);--mantine-color-pink-light-hover: rgba(230, 73, 128, .2);--mantine-color-pink-light-color: var(--mantine-color-pink-3);--mantine-color-pink-outline: var(--mantine-color-pink-4);--mantine-color-pink-outline-hover: rgba(247, 131, 172, .05);--mantine-color-grape-text: var(--mantine-color-grape-4);--mantine-color-grape-filled: var(--mantine-color-grape-8);--mantine-color-grape-filled-hover: var(--mantine-color-grape-9);--mantine-color-grape-light: rgba(190, 75, 219, .15);--mantine-color-grape-light-hover: rgba(190, 75, 219, .2);--mantine-color-grape-light-color: var(--mantine-color-grape-3);--mantine-color-grape-outline: var(--mantine-color-grape-4);--mantine-color-grape-outline-hover: rgba(218, 119, 242, .05);--mantine-color-violet-text: var(--mantine-color-violet-4);--mantine-color-violet-filled: var(--mantine-color-violet-8);--mantine-color-violet-filled-hover: var(--mantine-color-violet-9);--mantine-color-violet-light: rgba(121, 80, 242, .15);--mantine-color-violet-light-hover: rgba(121, 80, 242, .2);--mantine-color-violet-light-color: var(--mantine-color-violet-3);--mantine-color-violet-outline: var(--mantine-color-violet-4);--mantine-color-violet-outline-hover: rgba(151, 117, 250, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-4);--mantine-color-indigo-filled: var(--mantine-color-indigo-8);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-9);--mantine-color-indigo-light: rgba(76, 110, 245, .15);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .2);--mantine-color-indigo-light-color: var(--mantine-color-indigo-3);--mantine-color-indigo-outline: var(--mantine-color-indigo-4);--mantine-color-indigo-outline-hover: rgba(116, 143, 252, .05);--mantine-color-blue-text: var(--mantine-color-blue-4);--mantine-color-blue-filled: var(--mantine-color-blue-8);--mantine-color-blue-filled-hover: var(--mantine-color-blue-9);--mantine-color-blue-light: rgba(34, 139, 230, .15);--mantine-color-blue-light-hover: rgba(34, 139, 230, .2);--mantine-color-blue-light-color: var(--mantine-color-blue-3);--mantine-color-blue-outline: var(--mantine-color-blue-4);--mantine-color-blue-outline-hover: rgba(77, 171, 247, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-4);--mantine-color-cyan-filled: var(--mantine-color-cyan-8);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-9);--mantine-color-cyan-light: rgba(21, 170, 191, .15);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .2);--mantine-color-cyan-light-color: var(--mantine-color-cyan-3);--mantine-color-cyan-outline: var(--mantine-color-cyan-4);--mantine-color-cyan-outline-hover: rgba(59, 201, 219, .05);--mantine-color-teal-text: var(--mantine-color-teal-4);--mantine-color-teal-filled: var(--mantine-color-teal-8);--mantine-color-teal-filled-hover: var(--mantine-color-teal-9);--mantine-color-teal-light: rgba(18, 184, 134, .15);--mantine-color-teal-light-hover: rgba(18, 184, 134, .2);--mantine-color-teal-light-color: var(--mantine-color-teal-3);--mantine-color-teal-outline: var(--mantine-color-teal-4);--mantine-color-teal-outline-hover: rgba(56, 217, 169, .05);--mantine-color-green-text: var(--mantine-color-green-4);--mantine-color-green-filled: var(--mantine-color-green-8);--mantine-color-green-filled-hover: var(--mantine-color-green-9);--mantine-color-green-light: rgba(64, 192, 87, .15);--mantine-color-green-light-hover: rgba(64, 192, 87, .2);--mantine-color-green-light-color: var(--mantine-color-green-3);--mantine-color-green-outline: var(--mantine-color-green-4);--mantine-color-green-outline-hover: rgba(105, 219, 124, .05);--mantine-color-lime-text: var(--mantine-color-lime-4);--mantine-color-lime-filled: var(--mantine-color-lime-8);--mantine-color-lime-filled-hover: var(--mantine-color-lime-9);--mantine-color-lime-light: rgba(130, 201, 30, .15);--mantine-color-lime-light-hover: rgba(130, 201, 30, .2);--mantine-color-lime-light-color: var(--mantine-color-lime-3);--mantine-color-lime-outline: var(--mantine-color-lime-4);--mantine-color-lime-outline-hover: rgba(169, 227, 75, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-4);--mantine-color-yellow-filled: var(--mantine-color-yellow-8);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-9);--mantine-color-yellow-light: rgba(250, 176, 5, .15);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .2);--mantine-color-yellow-light-color: var(--mantine-color-yellow-3);--mantine-color-yellow-outline: var(--mantine-color-yellow-4);--mantine-color-yellow-outline-hover: rgba(255, 212, 59, .05);--mantine-color-orange-text: var(--mantine-color-orange-4);--mantine-color-orange-filled: var(--mantine-color-orange-8);--mantine-color-orange-filled-hover: var(--mantine-color-orange-9);--mantine-color-orange-light: rgba(253, 126, 20, .15);--mantine-color-orange-light-hover: rgba(253, 126, 20, .2);--mantine-color-orange-light-color: var(--mantine-color-orange-3);--mantine-color-orange-outline: var(--mantine-color-orange-4);--mantine-color-orange-outline-hover: rgba(255, 169, 77, .05)}:root[data-mantine-color-scheme=light]{--mantine-color-scheme: light;--mantine-color-bright: var(--mantine-color-black);--mantine-color-text: var(--mantine-color-black);--mantine-color-body: var(--mantine-color-white);--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-error: var(--mantine-color-red-6);--mantine-color-placeholder: var(--mantine-color-gray-5);--mantine-color-anchor: var(--mantine-primary-color-filled);--mantine-color-default: var(--mantine-color-white);--mantine-color-default-hover: var(--mantine-color-gray-0);--mantine-color-default-color: var(--mantine-color-gray-9);--mantine-color-default-border: var(--mantine-color-gray-4);--mantine-color-dimmed: var(--mantine-color-gray-6);--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(56, 56, 56, .1);--mantine-color-dark-light-hover: rgba(56, 56, 56, .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(56, 56, 56, .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_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_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)}:where([data-mantine-color-scheme=light]) .m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--mantine-color-dark-4)}.m_9814e45f{inset:0;position:absolute;background:var(--overlay-bg, rgba(0, 0, 0, .6));backdrop-filter:var(--overlay-filter);-webkit-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}:where([data-mantine-color-scheme=light]) .m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){background-color:var(--mantine-color-gray-1);color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) .m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){background-color:var(--mantine-color-dark-6);color:var(--mantine-color-dark-3)}.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}.m_fd1ab0aa:has([data-mantine-scrollbar][data-state=visible]) .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-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);--input-padding-y: var(--input-padding-y-sm)}.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)}[data-mantine-color-scheme=light] .m_6c018570{--input-disabled-bg: var(--mantine-color-gray-1);--input-disabled-color: var(--mantine-color-gray-6)}[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{--input-disabled-bg: var(--mantine-color-dark-6);--input-disabled-color: var(--mantine-color-dark-2)}[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-sm)));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, var(--mantine-font-size-sm)) - 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_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_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;word-break: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{word-break: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}.m_4ba585b8:where([data-chevron-position=left]){flex-direction:row;padding-inline-start:0}:where([data-mantine-color-scheme=light]) .m_4ba585b8{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_4ba585b8{color:var(--mantine-color-dark-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;top:0;right:0;bottom:0;left:calc(50% - 1.5px);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)}.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,left,right;background-color:var(--mantine-color-body)}:where([data-layout=alt]) .m_3b16f56b,:where([data-layout=alt]) .m_3840c879{inset-inline-start:var(--app-shell-navbar-offset, 0rem);inset-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;word-break: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_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{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)}:where([data-mantine-color-scheme=light]) fieldset:disabled .m_8ee546b8,:where([data-mantine-color-scheme=light]) .m_8ee546b8:where([data-disabled]){color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_8ee546b8,:where([data-mantine-color-scheme=dark]) .m_8ee546b8:where([data-disabled]){color:var(--mantine-color-dark-3)}.m_328f68c0,.m_8e8a99cc{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}.m_26775b0a{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_26775b0a :where(*){cursor:inherit}.m_26775b0a:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_5e5256ee{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled);--checkbox-icon-color: var(--mantine-color-white);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}:where([data-mantine-color-scheme=light]) .m_5e5256ee[data-disabled]{background-color:var(--mantine-color-gray-2);border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_5e5256ee[data-disabled]{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-6)}[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-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);--checkbox-icon-color: var(--mantine-color-white)}.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}:where([data-mantine-color-scheme=light]) .m_26063560:disabled{background-color:var(--mantine-color-gray-2);border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26063560:disabled{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .m_26063560:disabled+.m_bf295423{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_26063560:disabled+.m_bf295423{color:var(--mantine-color-dark-3)}.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-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}:where([data-mantine-color-scheme=light]) .m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){color:var(--mantine-color-gray-5);background:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){color:var(--mantine-color-dark-3);background:var(--mantine-color-dark-6)}.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(.625rem * 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(.46875rem * 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}:where([data-mantine-color-scheme=light]) .m_be049a53:where([data-disabled]){background-color:var(--mantine-color-gray-2);color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) .m_be049a53:where([data-disabled]){background-color:var(--mantine-color-dark-6);color:var(--mantine-color-dark-3)}: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-1));color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-dark-5));color:var(--mantine-color-white)}.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_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_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);max-width:var(--container-size);padding-inline:var(--mantine-spacing-md);margin-inline:auto}.m_7485cace:where([data-fluid]){max-width:100%}.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;flex:0;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);--kbd-padding-xs: calc(.125rem * var(--mantine-scale)) calc(.25rem * var(--mantine-scale));--kbd-padding-sm: calc(.1875rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));--kbd-padding-md: calc(.25rem * var(--mantine-scale)) calc(.4375rem * var(--mantine-scale));--kbd-padding-lg: calc(.3125rem * var(--mantine-scale)) calc(.5625rem * var(--mantine-scale));--kbd-padding-xl: calc(.5rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--kbd-padding: var(--kbd-padding-sm);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));unicode-bidi:embed}: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-style-position:inside;font-size:var(--list-fz);line-height:var(--list-lh);margin:0;padding:0}.m_abbac491:where([data-with-padding]){padding-inline-start:var(--mantine-spacing-md)}.m_abb6bec2{white-space:nowrap;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-dimmed);opacity:.6;cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_99ac2aa1:where([data-hovered]):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([data-hovered]):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-dark-4))}.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_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-gray-3)}: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-gray-3)}.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]){padding-inline-start:var(--mantine-spacing-xs)}.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}:where([data-mantine-color-scheme=light]) .m_80b4b171:where(:disabled){color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:where(:disabled){color:var(--mantine-color-dark-3)}.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}}.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_2242eb65{background-color:var(--progress-section-color);height:100%;width:var(--progress-section-width);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_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_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}:where([data-mantine-color-scheme=light]) .m_717d7ff6[data-disabled]{background-color:var(--mantine-color-gray-2);border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_717d7ff6[data-disabled]{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-6)}[data-mantine-color-scheme=light] .m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-dark-3)}.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}:where([data-mantine-color-scheme=light]) .m_8a3dbb89:disabled{background-color:var(--mantine-color-gray-1);border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=light]) .m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89:disabled{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-4)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-dark-7)}.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(.1875rem * var(--mantine-scale)) calc(.375rem * var(--mantine-scale));--sc-padding-sm: calc(.3125rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--sc-padding-md: calc(.4375rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--sc-padding-lg: calc(.5625rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--sc-padding-xl: calc(.75rem * 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}:where([data-mantine-color-scheme=light]) fieldset:disabled .m_1738fcb2,:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-disabled]){color:var(--mantine-color-gray-5)}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_1738fcb2,:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-disabled]){color:var(--mantine-color-dark-3)}: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){:where([data-mantine-color-scheme=light]) fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-gray-5)!important}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-dark-3)!important}}@media (hover: none){:where([data-mantine-color-scheme=light]) fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-gray-5)!important}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-dark-3)!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);-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);--slider-track-disabled-bg: var(--mantine-color-gray-4)}[data-mantine-color-scheme=dark] .m_dd36362e{--slider-track-bg: var(--mantine-color-dark-4);--slider-track-disabled-bg: var(--mantine-color-dark-3)}.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)}:where([data-mantine-color-scheme=light]) fieldset:disabled .m_38aeed47:where(:not([data-inverted])),:where([data-mantine-color-scheme=light]) .m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) fieldset:disabled .m_38aeed47:where(:not([data-inverted])),:where([data-mantine-color-scheme=dark]) .m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-dark-3)}.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)}:where([data-mantine-color-scheme=light]) .m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-dark-3)}.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)}.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{--separator-offset: calc(var(--stepper-icon-size) / 2 - calc(.0625rem * var(--mantine-scale)));transition:background-color .15s ease;flex:1}:where([data-mantine-color-scheme=light]) .m_2a371ac9{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_2a371ac9{background-color:var(--mantine-color-dark-2)}.m_2a371ac9:where([data-active]){background-color:var(--stepper-color)}.m_2a371ac9:where([data-orientation=horizontal]){height:calc(.125rem * var(--mantine-scale));margin-inline:var(--mantine-spacing-md)}.m_2a371ac9:where([data-orientation=vertical]){width:calc(.125rem * var(--mantine-scale));margin-top:calc(var(--mantine-spacing-xs) / 2);margin-bottom:calc(var(--mantine-spacing-xs) - calc(.125rem * var(--mantine-scale)))}.m_2a371ac9:where([data-orientation=vertical]):where([data-icon-position=left]){margin-inline-start:var(--separator-offset)}.m_2a371ac9:where([data-orientation=vertical]):where([data-icon-position=right]){margin-inline-end:var(--separator-offset)}.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) .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:calc(.125rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_6496b3f3{border-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_6496b3f3{border-color:var(--mantine-color-dark-5)}.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:calc(.125rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_1959ad01{background-color:var(--mantine-color-gray-1);border-color:var(--mantine-color-gray-1);color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1959ad01{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-5);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(.0625rem * var(--mantine-scale));--switch-track-label-padding-sm: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-md: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-lg: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-xl: calc(.1875rem * 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);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);border:1px solid var(--switch-bd);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-bd: 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-bd: var(--switch-disabled-color);--switch-cursor: not-allowed}[data-mantine-color-scheme=light] .m_9307d992{--switch-bg: var(--mantine-color-gray-2);--switch-bd: var(--mantine-color-gray-3);--switch-text-color: var(--mantine-color-gray-6);--switch-disabled-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_9307d992{--switch-bg: var(--mantine-color-dark-6);--switch-bd: var(--mantine-color-dark-4);--switch-text-color: var(--mantine-color-dark-1);--switch-disabled-color: var(--mantine-color-dark-4)}.m_9307d992[data-error]{--switch-bd: var(--mantine-color-error)}.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);border:1px solid var(--switch-thumb-bd);inset-inline-start:var(--switch-thumb-start, var(--switch-track-label-padding));transition:inset-inline-start .15s ease}.m_93039a1d>*{margin:auto}.m_926b4011:checked+*>.m_93039a1d{--switch-thumb-start: calc(100% - var(--switch-thumb-size) - var(--switch-track-label-padding));--switch-thumb-bd: var(--mantine-color-white)}.m_926b4011:disabled+*>.m_93039a1d,.m_926b4011[data-disabled]+*>.m_93039a1d{--switch-thumb-bd: var(--switch-thumb-bg-disabled);--switch-thumb-bg: var(--switch-thumb-bg-disabled)}[data-mantine-color-scheme=light] .m_93039a1d{--switch-thumb-bd: var(--mantine-color-gray-3);--switch-thumb-bg-disabled: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_93039a1d{--switch-thumb-bd: var(--mantine-color-white);--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(: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;background-color:var(--mantine-color-body)}.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)}.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)}.m_89d60db1{display:var(--tabs-display);flex-direction:var(--tabs-flex-direction);--tab-justify: flex-start;--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)}[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[data-orientation=horizontal]{--tab-justify: center}.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);--tab-grow: unset}.m_89d33d6d[data-grow]{--tab-grow: 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;flex-grow:var(--tab-grow);justify-content:var(--tab-justify)}.m_4ec4dce6:disabled,.m_4ec4dce6[data-disabled]{opacity:.5;cursor:not-allowed}.m_4ec4dce6:focus{z-index:1}.m_fc420b1f{display:flex;align-items:center;justify-content:center;margin-left:var(--tab-section-margin-left, 0);margin-right:var(--tab-section-margin-right, 0)}.m_fc420b1f[data-position=left]:not(:only-child){--tab-section-margin-right: var(--mantine-spacing-xs)}[dir=rtl] .m_fc420b1f[data-position=left]:not(:only-child){--tab-section-margin-right: 0rem;--tab-section-margin-left: var(--mantine-spacing-xs)}.m_fc420b1f[data-position=right]:not(:only-child){--tab-section-margin-left: var(--mantine-spacing-xs)}[dir=rtl] .m_fc420b1f[data-position=right]:not(:only-child){--tab-section-margin-left: 0rem;--tab-section-margin-right: var(--mantine-spacing-xs)}.m_576c9d4{position:relative}.m_576c9d4: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_539e827b{border-radius:var(--tab-radius);border-width:var(--tab-border-width);border-style:solid;border-color:transparent;background-color:var(--tab-bg);--tab-bg: transparent}.m_539e827b:where([data-active]){border-color:var(--tabs-color)}@media (hover: hover){.m_539e827b:hover{--tab-bg: var(--tab-hover-color)}.m_539e827b:hover:where(:not([data-active])){border-color:var(--tab-border-color)}}@media (hover: none){.m_539e827b:active{--tab-bg: 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{--tab-bg: transparent}}@media (hover: none){.m_539e827b:disabled:active,.m_539e827b[data-disabled]:active{--tab-bg: 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_d6493fad :first-child{margin-top:0}.m_d6493fad :last-child{margin-bottom:0}.m_d6493fad :where(h1,h2,h3,h4,h5,h6){margin-bottom:var(--mantine-spacing-xs);text-wrap:var(--mantine-heading-text-wrap)}.m_d6493fad :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_d6493fad :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_d6493fad :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_d6493fad :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_d6493fad :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_d6493fad :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_d6493fad :where(img){max-width:100%;margin-bottom:var(--mantine-spacing-xs)}.m_d6493fad :where(p){margin-top:0;margin-bottom:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(mark){background-color:var(--mantine-color-yellow-2);color:inherit}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.m_d6493fad :where(a){color:var(--mantine-color-anchor);text-decoration:none}@media (hover: hover){.m_d6493fad :where(a):hover{text-decoration:underline}}@media (hover: none){.m_d6493fad :where(a):active{text-decoration:underline}}.m_d6493fad :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_d6493fad :where(hr){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(hr){border-color:var(--mantine-color-dark-3)}.m_d6493fad :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_d6493fad :where(pre){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(pre){background-color:var(--mantine-color-dark-8)}.m_d6493fad :where(pre) :where(code){background-color:transparent;padding:0;border-radius:0;color:inherit;border:0}.m_d6493fad :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_d6493fad :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_d6493fad :where(kbd){border-color:var(--mantine-color-dark-3);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-5)}.m_d6493fad :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_d6493fad :where(code){background-color:var(--mantine-color-gray-0);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(code){background-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_d6493fad :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_d6493fad :where(table){width:100%;border-collapse:collapse;caption-side:bottom;margin-bottom:var(--mantine-spacing-md)}:where([data-mantine-color-scheme=light]) .m_d6493fad :where(table){--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :where(table){--table-border-color: var(--mantine-color-dark-4)}.m_d6493fad :where(table) :where(caption){margin-top:var(--mantine-spacing-xs);font-size:var(--mantine-font-size-sm);color:var(--mantine-color-dimmed)}.m_d6493fad :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_d6493fad :where(table) :where(thead th){border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d6493fad :where(table) :where(tfoot th){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d6493fad :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_d6493fad :where(table) :where(tr:last-of-type td){border-bottom:0}.m_d6493fad :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_d6493fad :where(blockquote){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d6493fad :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, var(--xy-background-color-props, 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__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__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(-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(-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__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:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));transform: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{.likec4-shadow-root{--made-with-panda: "🐼"}:where(:host,:root){--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"'}.likec4-shadow-root{display:contents;--mantine-font-family: var(--likec4-app-font-default);--mantine-font-family-headings: var(--likec4-app-font-default)}.likec4-root{overflow:hidden;position:relative;width:100%;height:100%;padding:var(--spacing-0);margin:var(--spacing-0);box-sizing:border-box;border:0px solid transparent}.likec4-root .react-flow:is(.not-initialized){opacity:0}:where(.likec4-root .mantine-ActionIcon-icon) .tabler-icon{width:75%;height:75%}.likec4-root :where(.react-flow__node,.react-flow__edge,.likec4-edge-label-container):has([data-likec4-dimmed]){opacity:.25}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge,.likec4-edge-label-container):has([data-likec4-dimmed]){filter:var(--blur, ) var(--brightness, ) var(--contrast, ) var(--grayscale, ) var(--hue-rotate, ) var(--invert, ) var(--saturate, ) var(--sepia, ) var(--drop-shadow, );--grayscale: grayscale(.85);--blur: blur(3px)}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge,.likec4-edge-label-container):has([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out);--transition-duration: .8s;transition-duration:.8s;transition-delay:.2s}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges,.react-flow__edgelabel-renderer)>svg{mix-blend-mode:plus-lighter}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges,.react-flow__edgelabel-renderer)>svg{mix-blend-mode:screen}: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)}*,: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}@property --likec4-palette{syntax: "*"; inherits: false; initial-value: "likec4.primary";}@property --likec4-text-size{syntax: "<length-percentage>"; inherits: false; initial-value: 1rem;}@property --likec4-spacing{syntax: "<length-percentage>"; inherits: false; initial-value: 1rem;}}@layer tokens{:where(:root,:host){--radii-xs: var(--mantine-radius-xs);--radii-sm: var(--mantine-radius-sm);--radii-md: var(--mantine-radius-md);--radii-lg: var(--mantine-radius-lg);--radii-xl: var(--mantine-radius-xl);--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: .75rem;--font-sizes-likec4-sm: .875rem;--font-sizes-likec4-md: 1.19rem;--font-sizes-likec4-lg: 1.5rem;--font-sizes-likec4-xl: 2rem;--shadows-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);--shadows-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));--shadows-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));--shadows-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));--shadows-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));--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;--borders-none: none;--borders-transparent: 0px solid transparent;--borders-default: 1px solid var(--colors-mantine-colors-default-border);--spacing-0: 0px;--spacing-2: 2px;--spacing-4: 4px;--spacing-8: 8px;--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));--spacing-likec4-xs: 8px;--spacing-likec4-sm: 10px;--spacing-likec4-md: 16px;--spacing-likec4-lg: 24px;--spacing-likec4-xl: 32px;--spacing-micro: 4px;--spacing-2xs: 8px;--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;--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;--breakpoints-xs: 36em;--breakpoints-sm: 48em;--breakpoints-md: 62em;--breakpoints-lg: 75em;--breakpoints-xl: 88em;--sizes-breakpoint-xs: 36em;--sizes-breakpoint-sm: 48em;--sizes-breakpoint-md: 62em;--sizes-breakpoint-lg: 75em;--sizes-breakpoint-xl: 88em;--font-sizes-likec4-text-size: var(--font-sizes-likec4-md);--colors-likec4-background: var(--colors-mantine-colors-body);--colors-likec4-background-pattern: var(--colors-mantine-colors-dark\\[5\\]);--colors-likec4-amber-element-fill: #A35829;--colors-likec4-amber-element-stroke: #7E451D;--colors-likec4-amber-element-hi-contrast: #FFE0C2;--colors-likec4-amber-element-lo-contrast: #f9b27c;--colors-likec4-amber-relation-stroke: #b45309;--colors-likec4-amber-relation-label: #FFE0C2;--colors-likec4-amber-relation-label-bg: #78350f;--colors-likec4-blue-element-fill: #3b82f6;--colors-likec4-blue-element-stroke: #2563eb;--colors-likec4-blue-element-hi-contrast: #eff6ff;--colors-likec4-blue-element-lo-contrast: #bfdbfe;--colors-likec4-blue-relation-stroke: #3b82f6;--colors-likec4-blue-relation-label: #60a5fa;--colors-likec4-blue-relation-label-bg: #172554;--colors-likec4-gray-element-fill: #737373;--colors-likec4-gray-element-stroke: #525252;--colors-likec4-gray-element-hi-contrast: #fafafa;--colors-likec4-gray-element-lo-contrast: #d4d4d4;--colors-likec4-gray-relation-stroke: #6E6E6E;--colors-likec4-gray-relation-label: #C6C6C6;--colors-likec4-gray-relation-label-bg: #18191b;--colors-likec4-slate-element-fill: #64748b;--colors-likec4-slate-element-stroke: #475569;--colors-likec4-slate-element-hi-contrast: #f8fafc;--colors-likec4-slate-element-lo-contrast: #cbd5e1;--colors-likec4-slate-relation-stroke: #64748b;--colors-likec4-slate-relation-label: #cbd5e1;--colors-likec4-slate-relation-label-bg: #0f172a;--colors-likec4-green-element-fill: #428a4f;--colors-likec4-green-element-stroke: #2d5d39;--colors-likec4-green-element-hi-contrast: #f8fafc;--colors-likec4-green-element-lo-contrast: #c2f0c2;--colors-likec4-green-relation-stroke: #15803d;--colors-likec4-green-relation-label: #22c55e;--colors-likec4-green-relation-label-bg: #052e16;--colors-likec4-indigo-element-fill: #6366f1;--colors-likec4-indigo-element-stroke: #4f46e5;--colors-likec4-indigo-element-hi-contrast: #eef2ff;--colors-likec4-indigo-element-lo-contrast: #c7d2fe;--colors-likec4-indigo-relation-stroke: #6366f1;--colors-likec4-indigo-relation-label: #818cf8;--colors-likec4-indigo-relation-label-bg: #1e1b4b;--colors-likec4-muted-element-fill: #64748b;--colors-likec4-muted-element-stroke: #475569;--colors-likec4-muted-element-hi-contrast: #f8fafc;--colors-likec4-muted-element-lo-contrast: #cbd5e1;--colors-likec4-muted-relation-stroke: #64748b;--colors-likec4-muted-relation-label: #cbd5e1;--colors-likec4-muted-relation-label-bg: #0f172a;--colors-likec4-primary-element-fill: #3b82f6;--colors-likec4-primary-element-stroke: #2563eb;--colors-likec4-primary-element-hi-contrast: #eff6ff;--colors-likec4-primary-element-lo-contrast: #bfdbfe;--colors-likec4-primary-relation-stroke: #3b82f6;--colors-likec4-primary-relation-label: #60a5fa;--colors-likec4-primary-relation-label-bg: #172554;--colors-likec4-red-element-fill: #AC4D39;--colors-likec4-red-element-stroke: #853A2D;--colors-likec4-red-element-hi-contrast: #FBD3CB;--colors-likec4-red-element-lo-contrast: #f5b2a3;--colors-likec4-red-relation-stroke: #AC4D39;--colors-likec4-red-relation-label: #f5b2a3;--colors-likec4-red-relation-label-bg: #b91c1c;--colors-likec4-secondary-element-fill: #0284c7;--colors-likec4-secondary-element-stroke: #0369a1;--colors-likec4-secondary-element-hi-contrast: #f0f9ff;--colors-likec4-secondary-element-lo-contrast: #B6ECF7;--colors-likec4-secondary-relation-stroke: #0ea5e9;--colors-likec4-secondary-relation-label: #38bdf8;--colors-likec4-secondary-relation-label-bg: #082f49;--colors-likec4-sky-element-fill: #0284c7;--colors-likec4-sky-element-stroke: #0369a1;--colors-likec4-sky-element-hi-contrast: #f0f9ff;--colors-likec4-sky-element-lo-contrast: #B6ECF7;--colors-likec4-sky-relation-stroke: #0ea5e9;--colors-likec4-sky-relation-label: #38bdf8;--colors-likec4-sky-relation-label-bg: #082f49;--colors-likec4-compound1-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound1-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound1-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound1-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound1-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound1-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound1-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound1-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound1-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound1-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound1-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound1-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound1-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound1-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound1-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound1-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound1-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound1-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound1-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound1-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound1-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound1-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-compound2-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound2-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound2-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound2-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound2-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound2-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound2-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound2-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound2-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound2-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound2-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound2-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound2-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound2-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound2-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound2-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound2-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound2-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound2-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound2-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound2-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound2-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-compound3-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound3-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound3-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound3-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound3-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound3-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound3-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound3-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound3-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound3-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound3-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound3-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound3-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound3-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound3-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound3-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound3-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound3-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound3-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound3-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound3-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound3-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-compound4-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound4-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound4-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound4-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound4-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound4-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound4-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound4-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound4-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound4-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound4-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound4-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound4-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound4-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound4-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound4-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound4-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound4-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound4-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound4-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound4-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound4-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-compound5-amber-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-compound5-amber-lo-contrast: var(--colors-likec4-amber-element-lo-contrast);--colors-likec4-compound5-blue-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-compound5-blue-lo-contrast: var(--colors-likec4-blue-element-lo-contrast);--colors-likec4-compound5-gray-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-compound5-gray-lo-contrast: var(--colors-likec4-gray-element-lo-contrast);--colors-likec4-compound5-slate-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-compound5-slate-lo-contrast: var(--colors-likec4-slate-element-lo-contrast);--colors-likec4-compound5-green-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-compound5-green-lo-contrast: var(--colors-likec4-green-element-lo-contrast);--colors-likec4-compound5-indigo-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-compound5-indigo-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast);--colors-likec4-compound5-muted-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-compound5-muted-lo-contrast: var(--colors-likec4-muted-element-lo-contrast);--colors-likec4-compound5-primary-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-compound5-primary-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-compound5-red-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-compound5-red-lo-contrast: var(--colors-likec4-red-element-lo-contrast);--colors-likec4-compound5-secondary-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-compound5-secondary-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast);--colors-likec4-compound5-sky-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-compound5-sky-lo-contrast: var(--colors-likec4-sky-element-lo-contrast);--colors-likec4-palette: var(--likec4-palette,"likec4.primary");--colors-likec4-palette-fill: var(--colors-likec4-primary-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-primary-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-primary-element-lo-contrast);--colors-likec4-relation-stroke: var(--colors-likec4-gray-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-gray-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-gray-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-gray-relation-label-bg)}[data-mantine-color-scheme=light]{--colors-likec4-background-pattern: var(--colors-mantine-colors-gray\\[4\\]);--colors-likec4-amber-relation-stroke-selected: #994708;--colors-likec4-blue-relation-stroke-selected: #326fd1;--colors-likec4-gray-relation-stroke-selected: #5e5e5e;--colors-likec4-slate-relation-stroke-selected: #556376;--colors-likec4-green-relation-stroke-selected: #126d34;--colors-likec4-indigo-relation-stroke-selected: #5457cd;--colors-likec4-muted-relation-stroke-selected: #556376;--colors-likec4-primary-relation-stroke-selected: #326fd1;--colors-likec4-red-relation-stroke-selected: #924130;--colors-likec4-secondary-relation-stroke-selected: #0c8cc6;--colors-likec4-sky-relation-stroke-selected: #0c8cc6;--colors-likec4-compound1-amber-fill: #794524;--colors-likec4-compound1-amber-stroke: #5e361a;--colors-likec4-compound1-blue-fill: #145ed7;--colors-likec4-compound1-blue-stroke: #194bb8;--colors-likec4-compound1-gray-fill: #595959;--colors-likec4-compound1-gray-stroke: #3f3f3f;--colors-likec4-compound1-slate-fill: #4e5a6a;--colors-likec4-compound1-slate-stroke: #384250;--colors-likec4-compound1-green-fill: #35683e;--colors-likec4-compound1-green-stroke: #24462d;--colors-likec4-compound1-indigo-fill: #2529e1;--colors-likec4-compound1-indigo-stroke: #2d24c2;--colors-likec4-compound1-muted-fill: #4e5a6a;--colors-likec4-compound1-muted-stroke: #384250;--colors-likec4-compound1-primary-fill: #145ed7;--colors-likec4-compound1-primary-stroke: #194bb8;--colors-likec4-compound1-red-fill: #803e30;--colors-likec4-compound1-red-stroke: #632f26;--colors-likec4-compound1-secondary-fill: #086392;--colors-likec4-compound1-secondary-stroke: #084f76;--colors-likec4-compound1-sky-fill: #086392;--colors-likec4-compound1-sky-stroke: #084f76;--colors-likec4-compound2-amber-fill: #724325;--colors-likec4-compound2-amber-stroke: #58341b;--colors-likec4-compound2-blue-fill: #195cc8;--colors-likec4-compound2-blue-stroke: #1d4aac;--colors-likec4-compound2-gray-fill: #555555;--colors-likec4-compound2-gray-stroke: #3d3d3d;--colors-likec4-compound2-slate-fill: #4c5665;--colors-likec4-compound2-slate-stroke: #363f4c;--colors-likec4-compound2-green-fill: #35623d;--colors-likec4-compound2-green-stroke: #24422c;--colors-likec4-compound2-indigo-fill: #2428d7;--colors-likec4-compound2-indigo-stroke: #3028b5;--colors-likec4-compound2-muted-fill: #4c5665;--colors-likec4-compound2-muted-stroke: #363f4c;--colors-likec4-compound2-primary-fill: #195cc8;--colors-likec4-compound2-primary-stroke: #1d4aac;--colors-likec4-compound2-red-fill: #793d31;--colors-likec4-compound2-red-stroke: #5e2e26;--colors-likec4-compound2-secondary-fill: #0c5e88;--colors-likec4-compound2-secondary-stroke: #0b4b6e;--colors-likec4-compound2-sky-fill: #0c5e88;--colors-likec4-compound2-sky-stroke: #0b4b6e;--colors-likec4-compound3-amber-fill: #6b4126;--colors-likec4-compound3-amber-stroke: #52321c;--colors-likec4-compound3-blue-fill: #1e59ba;--colors-likec4-compound3-blue-stroke: #2149a0;--colors-likec4-compound3-gray-fill: #525252;--colors-likec4-compound3-gray-stroke: #3a3a3a;--colors-likec4-compound3-slate-fill: #4a5360;--colors-likec4-compound3-slate-stroke: #353d48;--colors-likec4-compound3-green-fill: #345d3c;--colors-likec4-compound3-green-stroke: #243e2a;--colors-likec4-compound3-indigo-fill: #292cc8;--colors-likec4-compound3-indigo-stroke: #322ba9;--colors-likec4-compound3-muted-fill: #4a5360;--colors-likec4-compound3-muted-stroke: #353d48;--colors-likec4-compound3-primary-fill: #1e59ba;--colors-likec4-compound3-primary-stroke: #2149a0;--colors-likec4-compound3-red-fill: #723c31;--colors-likec4-compound3-red-stroke: #582e27;--colors-likec4-compound3-secondary-fill: #10597f;--colors-likec4-compound3-secondary-stroke: #0e4767;--colors-likec4-compound3-sky-fill: #10597f;--colors-likec4-compound3-sky-stroke: #0e4767;--colors-likec4-compound4-amber-fill: #643e27;--colors-likec4-compound4-amber-stroke: #4d301d;--colors-likec4-compound4-blue-fill: #2357ad;--colors-likec4-compound4-blue-stroke: #244795;--colors-likec4-compound4-gray-fill: #4e4e4e;--colors-likec4-compound4-gray-stroke: #383838;--colors-likec4-compound4-slate-fill: #48505b;--colors-likec4-compound4-slate-stroke: #333a44;--colors-likec4-compound4-green-fill: #33573a;--colors-likec4-compound4-green-stroke: #233b29;--colors-likec4-compound4-indigo-fill: #2d30ba;--colors-likec4-compound4-indigo-stroke: #342e9e;--colors-likec4-compound4-muted-fill: #48505b;--colors-likec4-compound4-muted-stroke: #333a44;--colors-likec4-compound4-primary-fill: #2357ad;--colors-likec4-compound4-primary-stroke: #244795;--colors-likec4-compound4-red-fill: #6a3b31;--colors-likec4-compound4-red-stroke: #522d27;--colors-likec4-compound4-secondary-fill: #135475;--colors-likec4-compound4-secondary-stroke: #11435f;--colors-likec4-compound4-sky-fill: #135475;--colors-likec4-compound4-sky-stroke: #11435f;--colors-likec4-compound5-amber-fill: #5d3c28;--colors-likec4-compound5-amber-stroke: #472f1d;--colors-likec4-compound5-blue-fill: #2755a0;--colors-likec4-compound5-blue-stroke: #27468a;--colors-likec4-compound5-gray-fill: #4b4b4b;--colors-likec4-compound5-gray-stroke: #353535;--colors-likec4-compound5-slate-fill: #454c56;--colors-likec4-compound5-slate-stroke: #323841;--colors-likec4-compound5-green-fill: #335238;--colors-likec4-compound5-green-stroke: #223728;--colors-likec4-compound5-indigo-fill: #3133ac;--colors-likec4-compound5-indigo-stroke: #363092;--colors-likec4-compound5-muted-fill: #454c56;--colors-likec4-compound5-muted-stroke: #323841;--colors-likec4-compound5-primary-fill: #2755a0;--colors-likec4-compound5-primary-stroke: #27468a;--colors-likec4-compound5-red-fill: #633a31;--colors-likec4-compound5-red-stroke: #4d2c27;--colors-likec4-compound5-secondary-fill: #164f6c;--colors-likec4-compound5-secondary-stroke: #133f58;--colors-likec4-compound5-sky-fill: #164f6c;--colors-likec4-compound5-sky-stroke: #133f58;--colors-likec4-mix-color: black }[data-mantine-color-scheme=dark]{--colors-likec4-amber-relation-stroke-selected: #cb8753;--colors-likec4-blue-relation-stroke-selected: #76a8f9;--colors-likec4-gray-relation-stroke-selected: #9a9a9a;--colors-likec4-slate-relation-stroke-selected: #939eae;--colors-likec4-green-relation-stroke-selected: #5ba677;--colors-likec4-indigo-relation-stroke-selected: #9294f5;--colors-likec4-muted-relation-stroke-selected: #939eae;--colors-likec4-primary-relation-stroke-selected: #76a8f9;--colors-likec4-red-relation-stroke-selected: #c58274;--colors-likec4-secondary-relation-stroke-selected: #56c0f0;--colors-likec4-sky-relation-stroke-selected: #56c0f0;--colors-likec4-compound1-amber-fill: #704225;--colors-likec4-compound1-amber-stroke: #56331b;--colors-likec4-compound1-blue-fill: #1a5bc5;--colors-likec4-compound1-blue-stroke: #1e49a9;--colors-likec4-compound1-gray-fill: #545454;--colors-likec4-compound1-gray-stroke: #3c3c3c;--colors-likec4-compound1-slate-fill: #4b5563;--colors-likec4-compound1-slate-stroke: #363e4b;--colors-likec4-compound1-green-fill: #34613c;--colors-likec4-compound1-green-stroke: #24412b;--colors-likec4-compound1-indigo-fill: #2529d3;--colors-likec4-compound1-indigo-stroke: #3028b2;--colors-likec4-compound1-muted-fill: #4b5563;--colors-likec4-compound1-muted-stroke: #363e4b;--colors-likec4-compound1-primary-fill: #1a5bc5;--colors-likec4-compound1-primary-stroke: #1e49a9;--colors-likec4-compound1-red-fill: #773d30;--colors-likec4-compound1-red-stroke: #5c2e26;--colors-likec4-compound1-secondary-fill: #0d5d86;--colors-likec4-compound1-secondary-stroke: #0b4a6c;--colors-likec4-compound1-sky-fill: #0d5d86;--colors-likec4-compound1-sky-stroke: #0b4a6c;--colors-likec4-compound2-amber-fill: #663e25;--colors-likec4-compound2-amber-stroke: #4e301b;--colors-likec4-compound2-blue-fill: #1e56b1;--colors-likec4-compound2-blue-stroke: #204698;--colors-likec4-compound2-gray-fill: #4e4e4e;--colors-likec4-compound2-gray-stroke: #383838;--colors-likec4-compound2-slate-fill: #474f5c;--colors-likec4-compound2-slate-stroke: #333a45;--colors-likec4-compound2-green-fill: #325839;--colors-likec4-compound2-green-stroke: #223c29;--colors-likec4-compound2-indigo-fill: #282bbf;--colors-likec4-compound2-indigo-stroke: #312aa1;--colors-likec4-compound2-muted-fill: #474f5c;--colors-likec4-compound2-muted-stroke: #333a45;--colors-likec4-compound2-primary-fill: #1e56b1;--colors-likec4-compound2-primary-stroke: #204698;--colors-likec4-compound2-red-fill: #6c3a2f;--colors-likec4-compound2-red-stroke: #542c25;--colors-likec4-compound2-secondary-fill: #105579;--colors-likec4-compound2-secondary-stroke: #0e4462;--colors-likec4-compound2-sky-fill: #105579;--colors-likec4-compound2-sky-stroke: #0e4462;--colors-likec4-compound3-amber-fill: #5c3a25;--colors-likec4-compound3-amber-stroke: #472d1b;--colors-likec4-compound3-blue-fill: #21519f;--colors-likec4-compound3-blue-stroke: #224289;--colors-likec4-compound3-gray-fill: #484848;--colors-likec4-compound3-gray-stroke: #343434;--colors-likec4-compound3-slate-fill: #424a54;--colors-likec4-compound3-slate-stroke: #30363f;--colors-likec4-compound3-green-fill: #305136;--colors-likec4-compound3-green-stroke: #213626;--colors-likec4-compound3-indigo-fill: #2b2dac;--colors-likec4-compound3-indigo-stroke: #312b91;--colors-likec4-compound3-muted-fill: #424a54;--colors-likec4-compound3-muted-stroke: #30363f;--colors-likec4-compound3-primary-fill: #21519f;--colors-likec4-compound3-primary-stroke: #224289;--colors-likec4-compound3-red-fill: #62372e;--colors-likec4-compound3-red-stroke: #4c2a24;--colors-likec4-compound3-secondary-fill: #134e6c;--colors-likec4-compound3-secondary-stroke: #103e57;--colors-likec4-compound3-sky-fill: #134e6c;--colors-likec4-compound3-sky-stroke: #103e57;--colors-likec4-compound4-amber-fill: #533624;--colors-likec4-compound4-amber-stroke: #402a1a;--colors-likec4-compound4-blue-fill: #234c8e;--colors-likec4-compound4-blue-stroke: #243f7a;--colors-likec4-compound4-gray-fill: #434343;--colors-likec4-compound4-gray-stroke: #303030;--colors-likec4-compound4-slate-fill: #3e444d;--colors-likec4-compound4-slate-stroke: #2d323a;--colors-likec4-compound4-green-fill: #2d4932;--colors-likec4-compound4-green-stroke: #1f3123;--colors-likec4-compound4-indigo-fill: #2c2f99;--colors-likec4-compound4-indigo-stroke: #302c82;--colors-likec4-compound4-muted-fill: #3e444d;--colors-likec4-compound4-muted-stroke: #2d323a;--colors-likec4-compound4-primary-fill: #234c8e;--colors-likec4-compound4-primary-stroke: #243f7a;--colors-likec4-compound4-red-fill: #58342c;--colors-likec4-compound4-red-stroke: #442823;--colors-likec4-compound4-secondary-fill: #154660;--colors-likec4-compound4-secondary-stroke: #11384e;--colors-likec4-compound4-sky-fill: #154660;--colors-likec4-compound4-sky-stroke: #11384e;--colors-likec4-compound5-amber-fill: #493223;--colors-likec4-compound5-amber-stroke: #38261a;--colors-likec4-compound5-blue-fill: #25467d;--colors-likec4-compound5-blue-stroke: #243b6c;--colors-likec4-compound5-gray-fill: #3d3d3d;--colors-likec4-compound5-gray-stroke: #2b2b2b;--colors-likec4-compound5-slate-fill: #393e46;--colors-likec4-compound5-slate-stroke: #292e34;--colors-likec4-compound5-green-fill: #2b422f;--colors-likec4-compound5-green-stroke: #1d2c21;--colors-likec4-compound5-indigo-fill: #2d2f87;--colors-likec4-compound5-indigo-stroke: #2f2b73;--colors-likec4-compound5-muted-fill: #393e46;--colors-likec4-compound5-muted-stroke: #292e34;--colors-likec4-compound5-primary-fill: #25467d;--colors-likec4-compound5-primary-stroke: #243b6c;--colors-likec4-compound5-red-fill: #4f312a;--colors-likec4-compound5-red-stroke: #3d2521;--colors-likec4-compound5-secondary-fill: #163f55;--colors-likec4-compound5-secondary-stroke: #123345;--colors-likec4-compound5-sky-fill: #163f55;--colors-likec4-compound5-sky-stroke: #123345;--colors-likec4-mix-color: white }@keyframes indicatorStrokeOpacity{0%{stroke-opacity:.8}to{stroke-opacity:.4}}@keyframes xyedgeAnimated{0%{stroke-dashoffset:46}to{stroke-dashoffset:10}}}@layer recipes{@layer _base{.action-btn{pointer-events:all;cursor:pointer;color:var(--actionbtn-color);opacity:.75;--actionbtn-color: var(--colors-likec4-palette-lo-contrast);--actionbtn-color-hovered: var(--colors-likec4-palette-lo-contrast);--actionbtn-color-hovered-btn: var(--colors-likec4-palette-hi-contrast);--actionbtn-bg-idle: color-mix(in srgb , var(--colors-likec4-palette-fill), transparent 99%);--actionbtn-bg-hovered: color-mix(in srgb , var(--colors-likec4-palette-fill) 65%, var(--colors-likec4-palette-stroke));--actionbtn-bg-hovered-btn: color-mix(in srgb , var(--colors-likec4-palette-fill) 50%, var(--colors-likec4-palette-stroke));--ai-bg: var(--actionbtn-bg-idle);background:var(--ai-bg)}:where([data-likec4-hovered=true]) .action-btn{opacity:1;color:var(--actionbtn-color-hovered);--ai-bg: var(--actionbtn-bg-hovered)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .action-btn{display:none}:where([data-likec4-zoom-small]) .action-btn{display:none}.action-btn *{pointer-events:none}.action-btn:is(:hover,[data-hover]){opacity:1;color:var(--actionbtn-color-hovered-btn);--ai-bg: var(--actionbtn-bg-hovered-btn)}}.action-btn--size_md{--ai-size: var(--ai-size-md)}.action-btn--radius_md{--ai-radius: var(--mantine-radius-md)}.action-btn--variant_filled{box-shadow:1px 1px 3px 0 transparent}:where([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:none}.action-btn--variant_transparent{--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}:where([data-likec4-hovered=true]) .whenHovered\\:action-btn--size_md{--ai-size: var(--ai-size-md)}.hover\\:action-btn--size_md:is(:hover,[data-hover]){--ai-size: var(--ai-size-md)}:where([data-likec4-hovered=true]) .whenHovered\\:action-btn--radius_md{--ai-radius: var(--mantine-radius-md)}.hover\\:action-btn--radius_md:is(:hover,[data-hover]){--ai-radius: var(--mantine-radius-md)}:where([data-likec4-hovered=true]) .whenHovered\\:action-btn--variant_transparent{--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}.hover\\:action-btn--variant_transparent:is(:hover,[data-hover]){--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}:where([data-likec4-hovered=true]) .whenHovered\\:action-btn--variant_filled{box-shadow:1px 1px 3px 0 transparent}:where([data-likec4-hovered=true]) :where([data-likec4-hovered=true]) .whenHovered\\:action-btn--variant_filled{box-shadow:1px 1px 3px #0003}.likec4-root:is([data-likec4-reduced-graphics]) :where([data-likec4-hovered=true]) .whenHovered\\:action-btn--variant_filled{box-shadow:none}.hover\\:action-btn--variant_filled:is(:hover,[data-hover]){box-shadow:1px 1px 3px 0 transparent}:where([data-likec4-hovered=true]) .hover\\:action-btn--variant_filled:is(:hover,[data-hover]){box-shadow:1px 1px 3px #0003}.likec4-root:is([data-likec4-reduced-graphics]) .hover\\:action-btn--variant_filled:is(:hover,[data-hover]){box-shadow:none}}@layer utilities{@layer compositions{.animationStyle_indicator{animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorStrokeOpacity}.textStyle_likec4\\.node\\.primary{text-wrap:balance;font-weight:500;font-size:var(--likec4-text-size);line-height:1.15}.textStyle_likec4\\.node\\.primary,.textStyle_likec4\\.node\\.secondary{white-space:preserve-breaks;font-family:var(--likec4-element-font, var(--fonts-likec4))}.textStyle_likec4\\.node\\.secondary{text-wrap:pretty;font-weight:400;font-size:calc(var(--likec4-text-size) * .74);line-height:1.2}:where([data-likec4-hovered=true]) .whenHovered\\:animationStyle_xyedgeAnimated{animation-duration:.8s;animation-iteration-count:infinite;animation-timing-function:linear;animation-fill-mode:both;animation-name:xyedgeAnimated}:where(.react-flow__edge.selected,[data-edge-active=true],[data-edge-animated=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-edge-active\\=\\'true\\'\\]\\,_\\[data-edge-animated\\=\\'true\\'\\]\\)_\\&\\]\\:animationStyle_xyedgeAnimated{animation-duration:.8s;animation-iteration-count:infinite;animation-timing-function:linear;animation-fill-mode:both;animation-name:xyedgeAnimated}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:animationStyle_indicator{animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorStrokeOpacity}}.bg_dots{background:dots}.bg_transparent{background:var(--colors-transparent)}.gap_20{gap:20px}.bg_transparent\\!{background:var(--colors-transparent)!important}.--xy-background-color_transparent\\!{--xy-background-color: transparent !important}.--xy-background-color_\\{colors\\.mantine\\.colors\\.body\\}{--xy-background-color: var(--colors-mantine-colors-body)}.pos_absolute{position:absolute}.stk_2{stroke:2px}.stk_1\\.8{stroke:1.8px}.pos_relative{position:relative}.w_100\\%{width:100%}.h_100\\%{height:100%}.p_0{padding:var(--spacing-0)}.m_0{margin:var(--spacing-0)}.bd_transparent{border:var(--borders-transparent)}.pointer-events_none{pointer-events:none}.bdr_var\\(--_border-radius\\,_4px\\){border-radius:var(--_border-radius, 4px)}.transition-fast_all_250ms_\\{easings\\.inOut\\}{transition:all .25s var(--easings-in-out)}.cursor_default{cursor:default}.ov_visible{overflow:visible}.vis_hidden{visibility:hidden}.stk_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_60\\%\\,_\\{colors\\.likec4\\.palette\\.hiContrast\\}\\)\\]{stroke:color-mix(in srgb,var(--colors-likec4-palette-stroke) 60%,var(--colors-likec4-palette-hi-contrast))}.stk-w_4{stroke-width:4}.fill_\\[none\\]{fill:none}.d_flex{display:flex}.gap_6px{gap:6px}.w_auto{width:auto}.min-h_30px{min-height:30px}.flex_1{flex:1 1 0%}.tt_uppercase{text-transform:uppercase}.ls_0\\.2px{letter-spacing:.2px}.c_likec4\\.palette\\.loContrast{color:var(--colors-likec4-palette-lo-contrast)}.flex_0_0_20px{flex:0 0 20px}.h_20px{height:20px}.w_20px{width:20px}.mix-bm_hard-light{mix-blend-mode:hard-light}.trunc_end{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.likec4-relation-color_gray{--likec4-palette: "likec4.gray";--colors-likec4-relation-stroke: var(--colors-likec4-gray-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-gray-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-gray-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-gray-relation-label-bg)}.us_all{-webkit-user-select:all;user-select:all}.ta_left{text-align:left}.white-space-collapse_preserve-breaks{white-space-collapse:preserve-breaks}.tw_pretty{text-wrap:pretty}.--text-fz_\\{fontSizes\\.sm\\}{--text-fz: var(--font-sizes-sm)}.pointer-events_all{pointer-events:all}.cursor_pointer{cursor:pointer}.h_auto{height:auto}.bg_\\[var\\(--xy-edge-label-background-color\\)\\]{background:var(--xy-edge-label-background-color)}.c_\\[var\\(--xy-edge-label-color\\)\\]{color:var(--xy-edge-label-color)}.bd_0px_solid_transparent{border:0px solid transparent}.bdr_4px{border-radius:4px}.trf_var\\(--edge-translate\\){transform:var(--edge-translate)}.transition-fast_fast{transition:all var(--durations-fast) var(--easings-in-out)}.p_3px_5px_5px_5px{padding:3px 5px 5px}.w_max-content{width:max-content}.max-w_100\\%{max-width:100%}.gap_4px{gap:4px}.p_0px{padding:0}.flex_0_0_auto{flex:0 0 auto}.p_5px_5px{padding:5px}.ta_center{text-align:center}.min-w_22px{min-width:22px}.bg_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.relation\\.label\\.bg\\}\\,_\\{colors\\.likec4\\.mixColor\\}_10\\%\\)\\]{background:color-mix(in srgb,var(--colors-likec4-relation-label-bg),var(--colors-likec4-mix-color) 10%)}.d_contents{display:contents}.p_2px_5px_4px_0px{padding:2px 5px 4px 0}.p_2px_6px_4px_0px{padding:2px 6px 4px 0}.op_0\\.75{opacity:.75}.lc_5{overflow:hidden;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical}.--xy-edge-stroke_\\{colors\\.likec4\\.relation\\.stroke\\}{--xy-edge-stroke: var(--colors-likec4-relation-stroke)}.--xy-edge-stroke-selected_\\{colors\\.likec4\\.relation\\.stroke\\.selected\\}{--xy-edge-stroke-selected: var(--colors-likec4-relation-stroke-selected)}.--xy-edge-label-color_\\{colors\\.likec4\\.relation\\.label\\}{--xy-edge-label-color: var(--colors-likec4-relation-label)}.--xy-edge-stroke-width_3{--xy-edge-stroke-width: 3}.stk-w_calc\\(var\\(--xy-edge-stroke-width\\)_\\+_2\\){stroke-width:calc(var(--xy-edge-stroke-width) + 2)}.stk-op_0\\.08{stroke-opacity:.08}.fill_\\[var\\(--xy-edge-stroke\\)\\]{fill:var(--xy-edge-stroke)}.stk_\\[var\\(--xy-edge-stroke\\)\\]{stroke:var(--xy-edge-stroke)}.stk-do_10{stroke-dashoffset:10}.--ai-bg_var\\(--xy-edge-label-background-color\\){--ai-bg: var(--xy-edge-label-background-color)}.--ai-hover_color-mix\\(in_srgb_\\,_var\\(--xy-edge-label-background-color\\)\\,_\\{colors\\.likec4\\.mixColor\\}_10\\%\\){--ai-hover: color-mix(in srgb , var(--xy-edge-label-background-color), var(--colors-likec4-mix-color) 10%)}.--ai-size_var\\(--ai-size-sm\\){--ai-size: var(--ai-size-sm)}.--ai-radius_var\\(--mantine-radius-sm\\){--ai-radius: var(--mantine-radius-sm)}.min-h_28px{min-height:28px}.stk_likec4\\.palette\\.loContrast{stroke:var(--colors-likec4-palette-lo-contrast)}.stk-w_8{stroke-width:8}.stk-op_0\\.8{stroke-opacity:.8}.fill_likec4\\.palette\\.fill{fill:var(--colors-likec4-palette-fill)}.fill_likec4\\.palette\\.stroke{fill:var(--colors-likec4-palette-stroke)}.fill_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_90\\%\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\)\\]{fill:color-mix(in srgb,var(--colors-likec4-palette-stroke) 90%,var(--colors-likec4-palette-fill))}.stk_likec4\\.palette\\.stroke{stroke:var(--colors-likec4-palette-stroke)}.trf-o_50\\%_50\\%{transform-origin:50% 50%}.trf_translate\\(14px\\,_14px\\)_perspective\\(300px\\)_translateZ\\(-8px\\){transform:translate(14px,14px) perspective(300px) translateZ(-8px)}.filter_brightness\\(0\\.65\\)_saturate\\(0\\.8\\){filter:brightness(.65) saturate(.8)}.stk_\\[none\\]{stroke:none}.transition-fast_fill_120ms_linear\\,_filter_130ms_\\{easings\\.inOut\\}{transition:fill .12s linear,filter .13s var(--easings-in-out)}.filter_drop-shadow\\(0_2px_1px_rgba\\(0\\,_0\\,_0\\,_0\\.21\\)\\)_drop-shadow\\(0_1px_1px_color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_40\\%\\,_transparent\\)\\)_drop-shadow\\(0_5px_3px_rgba\\(0\\,_0\\,_0\\,_0\\.1\\)\\){filter:drop-shadow(0 2px 1px rgba(0,0,0,.21)) drop-shadow(0 1px 1px color-mix(in srgb,var(--colors-likec4-palette-stroke) 40%,transparent)) drop-shadow(0 5px 3px rgba(0,0,0,.1))}.c_likec4\\.palette\\.hiContrast{color:var(--colors-likec4-palette-hi-contrast)}.flex_0_1_auto{flex:0 1 auto}.tov_ellipsis{text-overflow:ellipsis}.ov_hidden{overflow:hidden}.tw_balance{text-wrap:balance}.op_0\\.92{opacity:.92}.flex_0_0_var\\(--icon-size\\){flex:0 0 var(--icon-size)}.h_var\\(--icon-size\\){height:var(--icon-size)}.w_var\\(--icon-size\\){width:var(--icon-size)}.h_fit-content{height:fit-content}.w_fit-content{width:fit-content}.m_0_auto{margin:0 auto}.gap_12px{gap:12px}.gap_16px{gap:16px}.gap_8px{gap:8px}.min-w_calc\\(50\\%_\\+_var\\(--icon-size\\)\\){min-width:calc(50% + var(--icon-size))}.lc_2{-webkit-line-clamp:2}.lc_2,.lc_3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.lc_3{-webkit-line-clamp:3}.c_gray{color:gray}.--mantine-cursor-pointer_pointer{--mantine-cursor-pointer: pointer}.gap_micro{gap:var(--spacing-micro)}.bd_1px_dashed_\\{colors\\.mantine\\.colors\\.defaultBorder\\}{border:1px dashed var(--colors-mantine-colors-default-border)}.bdr_sm{border-radius:var(--radii-sm)}.c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}.min-h_22px{min-height:22px}.p_2px_8px_2px_2px{padding:2px 8px 2px 2px}.p_3px_16px_3px_3px{padding:3px 16px 3px 3px}.flex_1_1_100\\%{flex:1 1 100%}.transition-fast_transform_100ms_\\{easings\\.inOut\\}{transition:transform .1s var(--easings-in-out)}.flex_0{flex:0}.c_teal{color:teal}.trunc_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h_30px{height:30px}.bd_1px_solid{border:1px solid}.bg_mantine\\.colors\\.default{background:var(--colors-mantine-colors-default)}.bx-sh_xs{box-shadow:var(--shadows-xs)}.c_mantine\\.colors\\.placeholder{color:var(--colors-mantine-colors-placeholder)}.p_4px_7px{padding:4px 7px}.gap_xs{gap:var(--spacing-xs)}.z_9{z-index:9}.offset_16{offset:16px}.p_xs{padding:var(--spacing-xs)}.mx_auto{margin-inline:auto}.p_4{padding:var(--spacing-4)}.gap_0{gap:var(--spacing-0)}.min-w_250px{min-width:250px}.max-w_min\\(90vw\\,_500px\\){max-width:min(90vw,500px)}.gap_4{gap:var(--spacing-4)}.d_block{display:block}.white-space_nowrap{white-space:nowrap}.p_2px_4px{padding:2px 4px}.bdr_2{border-radius:2px}.bg_likec4\\.palette\\.fill\\/30{--mix-background: color-mix(in srgb, var(--colors-likec4-palette-fill) 30%, transparent);background:var(--mix-background, var(--colors-likec4-palette-fill))}.op_0\\.65{opacity:.65}.pos_bottom-start{position:bottom-start}.gap_10px{gap:10px}.gap_3{gap:3px}.stk_2\\.5{stroke:2.5px}.w_xs{width:xs}.mix-bm_normal{mix-blend-mode:normal}.fill_likec4\\.relation\\.stroke{fill:var(--colors-likec4-relation-stroke)}.stk_likec4\\.relation\\.stroke{stroke:var(--colors-likec4-relation-stroke)}.fill-opacity_0\\.75{fill-opacity:.75}.stk-w_1{stroke-width:1}.cursor_grab{cursor:grab}.pointer-events_auto{pointer-events:auto}.cursor_grabbing{cursor:grabbing}.pos_right-end{position:right-end}.offset_2{offset:2px}.px_3{padding-inline:3px}.h_xs{height:xs}.--thickness_1px{--thickness: 1px}.gap_2{gap:var(--spacing-2)}.gap_6{gap:6px}.c_dark{color:dark}.pos_left-start{position:left-start}.pos_top-start{position:top-start}.offset_4{offset:4px}.px_5{padding-inline:5px}.bx-sh_xl{box-shadow:var(--shadows-xl)}.px_4px{padding-inline:4px}.c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.max-w_220px{max-width:220px}.pos_right-start{position:right-start}.bx-sh_lg{box-shadow:var(--shadows-lg)}.main-axis_10{main-axis:10px}.op_0\\.6{opacity:.6}.op_1{opacity:1}.p_8{padding:var(--spacing-8)}.my_10{margin-block:10px}.stk_1\\.5{stroke:1.5px}.c_pink{color:pink}.c_orange{color:orange}.bg_mantine\\.colors\\.orange\\.light{background:var(--colors-mantine-colors-orange-light)}.pos_top{position:top}.pos_top-end{position:top-end}.bx-sh_md{box-shadow:var(--shadows-md)}.flex_1_1_40\\%{flex:1 1 40%}.p_4px_6px{padding:4px 6px}.z_1{z-index:1}.bg_mantine\\.colors\\.gray\\[2\\]{background:var(--colors-mantine-colors-gray\\[2\\])}.bg_mantine\\.colors\\.gray\\[3\\]{background:var(--colors-mantine-colors-gray\\[3\\])}.bx-sh_inset_1px_1px_3px_0px_\\#00000024{box-shadow:inset 1px 1px 3px #00000024}.w_8{width:8px}.h_8{height:8px}.bd_2px_solid{border:2px solid}.bdr_3{border-radius:3px}.trf_translate\\(-50\\%\\,_-50\\%\\){transform:translate(-50%,-50%)}.min-w_200{min-width:200px}.max-w_calc\\(100vw_-_16px\\){max-width:calc(100vw - 16px)}.p_sm{padding:var(--spacing-sm)}.p_md{padding:var(--spacing-md)}.h_sm{height:sm}.py_2{padding-block:var(--spacing-2)}.op_0\\.7{opacity:.7}.max-h_42{max-height:42px}.gap_sm{gap:var(--spacing-sm)}.d_inline-block{display:inline-block}.--ai-radius_0px{--ai-radius: 0px}.us_none{-webkit-user-select:none;user-select:none}.max-w_calc\\(100vw_-_20px\\){max-width:calc(100vw - 20px)}.p_2xs{padding:var(--spacing-2xs)}.transition-fast_all_100ms_ease-in{transition:all .1s ease-in}.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%))}.tt_lowercase{text-transform:lowercase}.transition-fast_all_150ms_ease-in-out{transition:all .15s ease-in-out}.--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_\\{colors\\.likec4\\.palette\\.fill\\}{--badge-bg: var(--colors-likec4-palette-fill)}.--badge-color_\\{colors\\.likec4\\.palette\\.hiContrast\\}{--badge-color: var(--colors-likec4-palette-hi-contrast)}.bx-sh_none{box-shadow:none}.px_xs{padding-inline:var(--spacing-xs)}.py_sm{padding-block:var(--spacing-sm)}.likec4-palette_primary{--likec4-palette: "likec4.primary";--colors-likec4-palette-fill: var(--colors-likec4-primary-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-primary-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-primary-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-primary-element-lo-contrast)}.flex_0_0_70px{flex:0 0 70px}.op_0\\.25{opacity:.25}.ring_none{outline:var(--borders-none)}.cq-n_likec4-tree{container-name:likec4-tree}.cq-t_inline-size{container-type:inline-size}.ring_none\\!{outline:var(--borders-none)!important}.p_1px_5px{padding:1px 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\\]))}.--likec4-icon-size_24px{--likec4-icon-size: 24px}.max-w_8xl{max-width:8xl}.px_4{padding-inline:var(--spacing-4)}.stk_3\\.5{stroke:3.5px}.lc_1{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.pos_fixed{position:fixed}.z_900{z-index:900}.inset_0px{inset:0}.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_10px{--backdrop-blur: blur(10px)}.cq-n_likec4-search{container-name:likec4-search}.cq-t_size{container-type:size}.z_901{z-index:901}.max-h_100vh{max-height:100vh}.gap_md{gap:var(--spacing-md)}.inset_0{inset:var(--spacing-0)}.z_902{z-index:902}.max-w_600px{max-width:600px}.min-w_200px{min-width:200px}.trf_translateX\\(-50\\%\\){transform:translate(-50%)}.z_903{z-index:903}.px_sm{padding-inline:var(--spacing-sm)}.py_md{padding-block:var(--spacing-md)}.d_grid{display:grid}.order_6{order:6}.order_2{order:2}.op_0\\.5{opacity:.5}.main-axis_4{main-axis:4px}.cross-axis_50{cross-axis:50px}.gap_8{gap:var(--spacing-8)}.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}.bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.bg_mantine\\.colors\\.body{background:var(--colors-mantine-colors-body)}.p_12px_8px_12px_14px{padding:12px 8px 12px 14px}.min-h_60px{min-height:60px}.flex_0_0_var\\(--likec4-icon-size\\,_24px\\){flex:0 0 var(--likec4-icon-size, 24px)}.h_var\\(--likec4-icon-size\\,_24px\\){height:var(--likec4-icon-size, 24px)}.w_var\\(--likec4-icon-size\\,_24px\\){width:var(--likec4-icon-size, 24px)}.--ti-size_var\\(--likec4-icon-size\\,_24px\\){--ti-size: var(--likec4-icon-size, 24px)}.c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}.bd_2px_dashed{border:2px dashed}.bdr_md{border-radius:var(--radii-md)}.py_xl{padding-block:var(--spacing-xl)}.gap_0\\.4rem{gap:.4rem}.bkdp_blur\\(8px\\){backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.transition-fast_all_175ms_ease-in{transition:all 175ms ease-in}.bg_mantine\\.colors\\.primary\\.filled\\/65{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary-filled) 65%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary-filled))}.px_xl{padding-inline:var(--spacing-xl)}.px_md{padding-inline:var(--spacing-md)}.c_red{color:red}.p_xl{padding:var(--spacing-xl)}.bx-s_border-box{box-sizing:border-box}.w_100vw{width:100vw}.h_100vh{height:100vh}.max-w_100vw{max-width:100vw}.bg_\\[transparent\\]{background:var(--colors-transparent)}.gap_lg{gap:var(--spacing-lg)}.cursor_move{cursor:move}.font-optical-sizing_auto{font-optical-sizing:auto}.flex_0_0_40px{flex:0 0 40px}.h_40px{height:40px}.w_40px{width:40px}.p_10px_8px{padding:10px 8px}.bd_1px_dashed{border:1px dashed}.--view-title-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}{--view-title-color: var(--colors-mantine-colors-dark\\[1\\])}.c_\\[var\\(--view-title-color\\,_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}\\)\\]{color:var(--view-title-color, var(--colors-mantine-colors-gray\\[7\\]))}.bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.p_4px{padding:4px}.p_6px_8px{padding:6px 8px}.gap_\\[20px_16px\\]{gap:20px 16px}.w_14px{width:14px}.h_14px{height:14px}.bd_3\\.5px_solid{border:3.5px solid}.bd-t_none{border-top:var(--borders-none)}.bd-l_none{border-left:var(--borders-none)}.bdr_2px{border-radius:2px}.cursor_se-resize{cursor:se-resize}.stk_1\\.6{stroke:1.6px}.h_36px{height:36px}.ps_16px{padding-inline-start:16px}.pe_10px{padding-inline-end:10px}.stk_1\\.2{stroke:1.2px}.offset_0{offset:0}.py_4{padding-block:var(--spacing-4)}.p_3px_6px{padding:3px 6px}.bg_likec4\\.palette\\.fill\\/75{--mix-background: color-mix(in srgb, var(--colors-likec4-palette-fill) 75%, transparent);background:var(--mix-background, var(--colors-likec4-palette-fill))}.bd_1px_solid_\\{colors\\.mantine\\.colors\\.defaultBorder\\}{border:1px solid var(--colors-mantine-colors-default-border)}.min-w_24{min-width:24px}.bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.c_mantine\\.colors\\.defaultColor{color:var(--colors-mantine-colors-default-color)}.py_xs{padding-block:var(--spacing-xs)}.d_inline-flex{display:inline-flex}.bg_mantine\\.colors\\.defaultBorder\\/50{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-default-border) 50%, transparent);background:var(--mix-background, var(--colors-mantine-colors-default-border))}.bdr_var\\(--_border-radius\\){border-radius:var(--_border-radius)}.--_blur_0px{--_blur: 0px}.--_level_0{--_level: 0}.--_offset_0px{--_offset: 0px}.--_inset_calc\\(\\(1_\\+_var\\(--_level\\)_\\*_0\\.75\\)_\\*_var\\(--_offset\\)\\){--_inset: calc((1 + var(--_level) * .75) * var(--_offset))}.--_opacity_0\\%{--_opacity: 0%}.cq-n_overlay-dialog{container-name:overlay-dialog}.bd_0_solid_transparent{border:0 solid transparent}.pos_top-right{position:top-right}.pos_top-left{position:top-left}.p_6px_2px_0_2px{padding:6px 2px 0}.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}.p_0_4px_5px_4px{padding:0 4px 5px}.gap_10px_12px{gap:10px 12px}.max-h_70vh{max-height:70vh}.py_3{padding-block:3px}.flex_1_0_auto{flex:1 0 auto}.stk-w_5{stroke-width:5}.bd_3px_dashed{border:3px dashed}.likec4-palette_amber{--likec4-palette: "likec4.amber";--colors-likec4-palette-fill: var(--colors-likec4-amber-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-amber-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-amber-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-amber-element-lo-contrast)}.likec4-palette_blue{--likec4-palette: "likec4.blue";--colors-likec4-palette-fill: var(--colors-likec4-blue-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-blue-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-blue-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-blue-element-lo-contrast)}.likec4-palette_gray{--likec4-palette: "likec4.gray";--colors-likec4-palette-fill: var(--colors-likec4-gray-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-gray-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-gray-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-gray-element-lo-contrast)}.likec4-palette_slate{--likec4-palette: "likec4.slate";--colors-likec4-palette-fill: var(--colors-likec4-slate-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-slate-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-slate-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-slate-element-lo-contrast)}.likec4-palette_green{--likec4-palette: "likec4.green";--colors-likec4-palette-fill: var(--colors-likec4-green-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-green-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-green-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-green-element-lo-contrast)}.likec4-palette_indigo{--likec4-palette: "likec4.indigo";--colors-likec4-palette-fill: var(--colors-likec4-indigo-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-indigo-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-indigo-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-indigo-element-lo-contrast)}.likec4-palette_muted{--likec4-palette: "likec4.muted";--colors-likec4-palette-fill: var(--colors-likec4-muted-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-muted-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-muted-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-muted-element-lo-contrast)}.likec4-palette_red{--likec4-palette: "likec4.red";--colors-likec4-palette-fill: var(--colors-likec4-red-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-red-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-red-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-red-element-lo-contrast)}.likec4-palette_secondary{--likec4-palette: "likec4.secondary";--colors-likec4-palette-fill: var(--colors-likec4-secondary-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-secondary-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-secondary-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-secondary-element-lo-contrast)}.likec4-palette_sky{--likec4-palette: "likec4.sky";--colors-likec4-palette-fill: var(--colors-likec4-sky-element-fill);--colors-likec4-palette-stroke: var(--colors-likec4-sky-element-stroke);--colors-likec4-palette-hi-contrast: var(--colors-likec4-sky-element-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-sky-element-lo-contrast)}.likec4-palette_amber\\.1{--likec4-palette: "likec4.compound1.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-amber-stroke)}.likec4-palette_amber\\.2{--likec4-palette: "likec4.compound2.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-amber-stroke)}.likec4-palette_amber\\.3{--likec4-palette: "likec4.compound3.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-amber-stroke)}.likec4-palette_amber\\.4{--likec4-palette: "likec4.compound4.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-amber-stroke)}.likec4-palette_amber\\.5{--likec4-palette: "likec4.compound5.amber";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-amber-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-amber-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-amber-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-amber-stroke)}.likec4-palette_blue\\.1{--likec4-palette: "likec4.compound1.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-blue-stroke)}.likec4-palette_blue\\.2{--likec4-palette: "likec4.compound2.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-blue-stroke)}.likec4-palette_blue\\.3{--likec4-palette: "likec4.compound3.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-blue-stroke)}.likec4-palette_blue\\.4{--likec4-palette: "likec4.compound4.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-blue-stroke)}.likec4-palette_blue\\.5{--likec4-palette: "likec4.compound5.blue";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-blue-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-blue-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-blue-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-blue-stroke)}.likec4-palette_gray\\.1{--likec4-palette: "likec4.compound1.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-gray-stroke)}.likec4-palette_gray\\.2{--likec4-palette: "likec4.compound2.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-gray-stroke)}.likec4-palette_gray\\.3{--likec4-palette: "likec4.compound3.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-gray-stroke)}.likec4-palette_gray\\.4{--likec4-palette: "likec4.compound4.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-gray-stroke)}.likec4-palette_gray\\.5{--likec4-palette: "likec4.compound5.gray";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-gray-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-gray-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-gray-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-gray-stroke)}.likec4-palette_slate\\.1{--likec4-palette: "likec4.compound1.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-slate-stroke)}.likec4-palette_slate\\.2{--likec4-palette: "likec4.compound2.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-slate-stroke)}.likec4-palette_slate\\.3{--likec4-palette: "likec4.compound3.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-slate-stroke)}.likec4-palette_slate\\.4{--likec4-palette: "likec4.compound4.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-slate-stroke)}.likec4-palette_slate\\.5{--likec4-palette: "likec4.compound5.slate";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-slate-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-slate-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-slate-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-slate-stroke)}.likec4-palette_green\\.1{--likec4-palette: "likec4.compound1.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-green-stroke)}.likec4-palette_green\\.2{--likec4-palette: "likec4.compound2.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-green-stroke)}.likec4-palette_green\\.3{--likec4-palette: "likec4.compound3.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-green-stroke)}.likec4-palette_green\\.4{--likec4-palette: "likec4.compound4.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-green-stroke)}.likec4-palette_green\\.5{--likec4-palette: "likec4.compound5.green";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-green-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-green-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-green-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-green-stroke)}.likec4-palette_indigo\\.1{--likec4-palette: "likec4.compound1.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-indigo-stroke)}.likec4-palette_indigo\\.2{--likec4-palette: "likec4.compound2.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-indigo-stroke)}.likec4-palette_indigo\\.3{--likec4-palette: "likec4.compound3.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-indigo-stroke)}.likec4-palette_indigo\\.4{--likec4-palette: "likec4.compound4.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-indigo-stroke)}.likec4-palette_indigo\\.5{--likec4-palette: "likec4.compound5.indigo";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-indigo-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-indigo-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-indigo-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-indigo-stroke)}.likec4-palette_muted\\.1{--likec4-palette: "likec4.compound1.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-muted-stroke)}.likec4-palette_muted\\.2{--likec4-palette: "likec4.compound2.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-muted-stroke)}.likec4-palette_muted\\.3{--likec4-palette: "likec4.compound3.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-muted-stroke)}.likec4-palette_muted\\.4{--likec4-palette: "likec4.compound4.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-muted-stroke)}.likec4-palette_muted\\.5{--likec4-palette: "likec4.compound5.muted";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-muted-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-muted-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-muted-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-muted-stroke)}.likec4-palette_primary\\.1{--likec4-palette: "likec4.compound1.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-primary-stroke)}.likec4-palette_primary\\.2{--likec4-palette: "likec4.compound2.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-primary-stroke)}.likec4-palette_primary\\.3{--likec4-palette: "likec4.compound3.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-primary-stroke)}.likec4-palette_primary\\.4{--likec4-palette: "likec4.compound4.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-primary-stroke)}.likec4-palette_primary\\.5{--likec4-palette: "likec4.compound5.primary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-primary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-primary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-primary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-primary-stroke)}.likec4-palette_red\\.1{--likec4-palette: "likec4.compound1.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-red-stroke)}.likec4-palette_red\\.2{--likec4-palette: "likec4.compound2.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-red-stroke)}.likec4-palette_red\\.3{--likec4-palette: "likec4.compound3.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-red-stroke)}.likec4-palette_red\\.4{--likec4-palette: "likec4.compound4.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-red-stroke)}.likec4-palette_red\\.5{--likec4-palette: "likec4.compound5.red";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-red-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-red-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-red-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-red-stroke)}.likec4-palette_secondary\\.1{--likec4-palette: "likec4.compound1.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-secondary-stroke)}.likec4-palette_secondary\\.2{--likec4-palette: "likec4.compound2.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-secondary-stroke)}.likec4-palette_secondary\\.3{--likec4-palette: "likec4.compound3.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-secondary-stroke)}.likec4-palette_secondary\\.4{--likec4-palette: "likec4.compound4.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-secondary-stroke)}.likec4-palette_secondary\\.5{--likec4-palette: "likec4.compound5.secondary";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-secondary-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-secondary-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-secondary-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-secondary-stroke)}.likec4-palette_sky\\.1{--likec4-palette: "likec4.compound1.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound1-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound1-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound1-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound1-sky-stroke)}.likec4-palette_sky\\.2{--likec4-palette: "likec4.compound2.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound2-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound2-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound2-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound2-sky-stroke)}.likec4-palette_sky\\.3{--likec4-palette: "likec4.compound3.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound3-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound3-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound3-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound3-sky-stroke)}.likec4-palette_sky\\.4{--likec4-palette: "likec4.compound4.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound4-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound4-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound4-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound4-sky-stroke)}.likec4-palette_sky\\.5{--likec4-palette: "likec4.compound5.sky";--colors-likec4-palette-hi-contrast: var(--colors-likec4-compound5-sky-hi-contrast);--colors-likec4-palette-lo-contrast: var(--colors-likec4-compound5-sky-lo-contrast);--colors-likec4-palette-fill: var(--colors-likec4-compound5-sky-fill);--colors-likec4-palette-stroke: var(--colors-likec4-compound5-sky-stroke)}.likec4-relation-color_amber{--likec4-palette: "likec4.amber";--colors-likec4-relation-stroke: var(--colors-likec4-amber-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-amber-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-amber-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-amber-relation-label-bg)}.likec4-relation-color_blue{--likec4-palette: "likec4.blue";--colors-likec4-relation-stroke: var(--colors-likec4-blue-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-blue-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-blue-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-blue-relation-label-bg)}.likec4-relation-color_slate{--likec4-palette: "likec4.slate";--colors-likec4-relation-stroke: var(--colors-likec4-slate-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-slate-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-slate-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-slate-relation-label-bg)}.likec4-relation-color_green{--likec4-palette: "likec4.green";--colors-likec4-relation-stroke: var(--colors-likec4-green-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-green-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-green-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-green-relation-label-bg)}.likec4-relation-color_indigo{--likec4-palette: "likec4.indigo";--colors-likec4-relation-stroke: var(--colors-likec4-indigo-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-indigo-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-indigo-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-indigo-relation-label-bg)}.likec4-relation-color_muted{--likec4-palette: "likec4.muted";--colors-likec4-relation-stroke: var(--colors-likec4-muted-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-muted-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-muted-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-muted-relation-label-bg)}.likec4-relation-color_primary{--likec4-palette: "likec4.primary";--colors-likec4-relation-stroke: var(--colors-likec4-primary-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-primary-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-primary-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-primary-relation-label-bg)}.likec4-relation-color_red{--likec4-palette: "likec4.red";--colors-likec4-relation-stroke: var(--colors-likec4-red-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-red-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-red-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-red-relation-label-bg)}.likec4-relation-color_secondary{--likec4-palette: "likec4.secondary";--colors-likec4-relation-stroke: var(--colors-likec4-secondary-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-secondary-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-secondary-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-secondary-relation-label-bg)}.likec4-relation-color_sky{--likec4-palette: "likec4.sky";--colors-likec4-relation-stroke: var(--colors-likec4-sky-relation-stroke);--colors-likec4-relation-stroke-selected: var(--colors-likec4-sky-relation-stroke-selected);--colors-likec4-relation-label: var(--colors-likec4-sky-relation-label);--colors-likec4-relation-label-bg: var(--colors-likec4-sky-relation-label-bg)}.top_5px{top:5px}.left_4px{left:4px}.top_\\[2px\\]{top:2px}.right_\\[2px\\]{right:2px}.top_0{top:var(--spacing-0)}.left_0{left:var(--spacing-0)}.border-style_dashed{border-style:dashed}.bd-w_\\[var\\(--_border-width\\,_2px\\)\\]{border-width:var(--_border-width, 2px)}.bd-c_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_var\\(--_border-opacity-percent\\,_100\\%\\)\\,_transparent\\)\\]{border-color:color-mix(in srgb,var(--colors-likec4-palette-stroke) var(--_border-opacity-percent, 100%),transparent)}.ai_center{align-items:center}.left_14px{left:14px}.top_4px{top:4px}.right_30px{right:30px}.ff_likec4\\.compound{font-family:var(--fonts-likec4-compound)}.fw_600{font-weight:600}.fs_15px{font-size:15px}.jc_center{justify-content:center}.trs-dur_normal{--transition-duration: var(--durations-normal);transition-duration:var(--durations-normal)}.trs-dly_0\\.2s{transition-delay:.2s}.top_4{top:var(--spacing-4)}.right_4{right:var(--spacing-4)}.lh_1\\.25{line-height:1.25}.ff_likec4\\.relation{font-family:var(--fonts-likec4-relation)}.flex-d_column{flex-direction:column}.flex-d_row{flex-direction:row}.as_stretch{align-self:stretch}.fs_14px{font-size:14px}.lh_1{line-height:var(--line-heights-1)}.bdr-tl_4px{border-top-left-radius:4px}.bdr-bl_4px{border-bottom-left-radius:4px}.fv-num_tabular-nums{font-variant-numeric:tabular-nums}.lh_1\\.185{line-height:1.185}.fs_11px{font-size:11px}.trs-prop_stroke-width\\,_stroke-opacity{--transition-prop: stroke-width, stroke-opacity;transition-property:stroke-width,stroke-opacity}.trs-dur_fast{--transition-duration: var(--durations-fast);transition-duration:var(--durations-fast)}.trs-tmf_inOut{--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}.top_calc\\(100\\%_-_28px\\){top:calc(100% - 28px)}.top_2{top:var(--spacing-2)}.right_2{right:var(--spacing-2)}.trs-dly_0ms{transition-delay:0ms}.fs_calc\\(var\\(--likec4-text-size\\)_\\*_0\\.635\\){font-size:calc(var(--likec4-text-size) * .635)}.lh_1\\.125{line-height:1.125}.as_flex-start{align-self:flex-start}.pt_var\\(--likec4-spacing\\){padding-top:var(--likec4-spacing)}.pb_var\\(--likec4-spacing\\){padding-bottom:var(--likec4-spacing)}.pl_calc\\(var\\(--likec4-spacing\\)_\\+_8px\\){padding-left:calc(var(--likec4-spacing) + 8px)}.pr_calc\\(var\\(--likec4-spacing\\)_\\+_8px\\){padding-right:calc(var(--likec4-spacing) + 8px)}.ai_stretch{align-items:stretch}.flex-wrap_nowrap{flex-wrap:nowrap}.ai_flex-start{align-items:flex-start}.top_1rem{top:1rem}.right_1rem{right:1rem}.jc_stretch{justify-content:stretch}.trs-prop_all{--transition-prop: all;transition-property:all}.pl_sm{padding-left:var(--spacing-sm)}.pr_4px{padding-right:4px}.bd-c_mantine\\.colors\\.defaultBorder{border-color:var(--colors-mantine-colors-default-border)}.fs_sm{font-size:var(--font-sizes-sm)}.fw_500{font-weight:500}.pr_50px{padding-right:50px}.top_1{top:1px}.right_1{right:1px}.mt_2{margin-top:var(--spacing-2)}.ov-y_scroll{overflow-y:scroll}.fs_xxs{font-size:var(--font-sizes-xxs)}.lh_\\[1\\.11\\]{line-height:1.11}.fs_xs{font-size:var(--font-sizes-xs)}.top_5{top:5px}.right_6{right:6px}.border-block-end-width_var\\(--thickness\\){border-block-end-width:var(--thickness)}.jc_flex-start{justify-content:flex-start}.flex-wrap_wrap{flex-wrap:wrap}.mt_sm{margin-top:var(--spacing-sm)}.pb_8{padding-bottom:var(--spacing-8)}.pt_4{padding-top:var(--spacing-4)}.fs_10px{font-size:10px}.pt_6{padding-top:6px}.mb_10{margin-bottom:10px}.pt_100\\%{padding-top:100%}.left_2{left:var(--spacing-2)}.bottom_2{bottom:var(--spacing-2)}.mt_xs{margin-top:var(--spacing-xs)}.left_1rem{left:1rem}.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\\])}.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))}.mb_xs{margin-bottom:var(--spacing-xs)}.mb_sm{margin-bottom:var(--spacing-sm)}.bottom_0{bottom:var(--spacing-0)}.right_0{right:var(--spacing-0)}.bg-c_transparent{background-color:var(--colors-transparent)}.pt_0{padding-top:var(--spacing-0)}.pb_0{padding-bottom:var(--spacing-0)}.ml_2{margin-left:var(--spacing-2)}.mb_8px{margin-bottom:8px}.ai_baseline{align-items:baseline}.mt_8px{margin-top:8px}.lh_1\\.3{line-height:1.3}.lh_1\\.1{line-height:1.1}.bg-c_\\[rgb\\(34_34_34_\\/_0\\.95\\)\\]{background-color:#222222f2}.pt_32px{padding-top:32px}.pl_16px{padding-left:16px}.pr_16px{padding-right:16px}.bg-c_\\[rgb\\(34_34_34_\\/_0\\.7\\)\\]{background-color:#222222b3}.top_2rem{top:2rem}.left_50\\%{left:50%}.pr_xs{padding-right:var(--spacing-xs)}.mr_4{margin-right:var(--spacing-4)}.mr_1{margin-right:1px}.mt_4px{margin-top:4px}.fs_13px{font-size:13px}.lh_1\\.4{line-height:1.4}.bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.fs_16px{font-size:16px}.fs_12px{font-size:12px}.fs_md{font-size:var(--font-sizes-md)}.bottom_0\\.5rem{bottom:.5rem}.bd-c_mantine\\.colors\\.orange\\[6\\]{border-color:var(--colors-mantine-colors-orange\\[6\\])}.pl_lg{padding-left:var(--spacing-lg)}.pr_lg{padding-right:var(--spacing-lg)}.mt_xl{margin-top:var(--spacing-xl)}.bg-c_mantine\\.colors\\.body{background-color:var(--colors-mantine-colors-body)}.bg-i_linear-gradient\\(180deg\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\,_\\{colors\\.likec4\\.palette\\.fill\\}_4px\\,_transparent_4px\\){background-image:linear-gradient(180deg,var(--colors-likec4-palette-fill),var(--colors-likec4-palette-fill) 4px,transparent 4px)}.bd-t-c_likec4\\.palette\\.fill{border-top-color:var(--colors-likec4-palette-fill)}.ff_likec4\\.element{font-family:var(--fonts-likec4-element)}.font-style_normal{font-style:normal}.fs_24px{font-size:24px}.lh_xs{line-height:var(--line-heights-xs)}.flex-g_1{flex-grow:1}.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-items_stretch{justify-items:stretch}.justify-self_end{justify-self:end}.bd-c_mantine\\.colors\\.dark\\[3\\]{border-color:var(--colors-mantine-colors-dark\\[3\\])}.bottom_2px{bottom:2px}.right_2px{right:2px}.pt_xs{padding-top:var(--spacing-xs)}.mt_6{margin-top:6px}.mt_0{margin-top:var(--spacing-0)}.mb_0{margin-bottom:var(--spacing-0)}.lh_1\\.2{line-height:1.2}.fs_xl{font-size:var(--font-sizes-xl)}.ai_flex-end{align-items:flex-end}.mb_4{margin-bottom:var(--spacing-4)}.top_12{top:12px}.right_12{right:12px}.ml_sm{margin-left:var(--spacing-sm)}.pl_4{padding-left:var(--spacing-4)}.pr_4{padding-right:var(--spacing-4)}.grid-cs_1{grid-column-start:1}.grid-ce_4{grid-column-end:4}.bd-b-c_mantine\\.colors\\.defaultBorder{border-bottom-color:var(--colors-mantine-colors-default-border)}.mb_0px{margin-bottom:0}.grid-tc_1fr_30px_1fr{grid-template-columns:1fr 30px 1fr}.justify-items_start{justify-items:start}.bd-w_3px{border-width:3px}[data-mantine-color-scheme=dark] .dark\\:--xy-background-pattern-color_\\{colors\\.mantine\\.colors\\.dark\\[5\\]\\}{--xy-background-pattern-color: var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .light\\:--xy-background-pattern-color_\\{colors\\.mantine\\.colors\\.gray\\[4\\]\\}{--xy-background-pattern-color: var(--colors-mantine-colors-gray\\[4\\])}.\\[\\&_\\.react-flow__pane\\]\\:-webkit-user-select_none .react-flow__pane{-webkit-user-select:none}.\\[\\&_\\.react-flow__attribution\\]\\:d_none .react-flow__attribution{display:none}:where([data-likec4-zoom-small]) .smallZoom\\:d_none{display:none}:where([data-likec4-hovered=true]) .whenHovered\\:op_0\\.75{opacity:.75}.before\\:bdr_var\\(--_border-radius\\,_4px\\):before{border-radius:var(--_border-radius, 4px)}.before\\:pos_absolute:before{position:absolute}.before\\:w_100\\%:before{width:100%}.before\\:h_100\\%:before{height:100%}.before\\:bd_transparent:before{border:var(--borders-transparent)}.before\\:bg_likec4\\.palette\\.fill:before{background:var(--colors-likec4-palette-fill)}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:vis_visible{visibility:visible}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:d_none{display:none}[data-mantine-color-scheme=light] .light\\:stk_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}_80\\%\\,_\\{colors\\.likec4\\.palette\\.hiContrast\\}\\)\\]{stroke:color-mix(in srgb,var(--colors-likec4-palette-stroke) 80%,var(--colors-likec4-palette-hi-contrast))}:where(.react-flow__node.draggable) .\\[\\:where\\(\\.react-flow__node\\.draggable\\)_\\&\\]\\:pointer-events_all{pointer-events:all}:where(.react-flow__node.draggable) .\\[\\:where\\(\\.react-flow__node\\.draggable\\)_\\&\\]\\:cursor_grab{cursor:grab}[data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:c_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.loContrast\\}_60\\%\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\)\\]{color:color-mix(in srgb,var(--colors-likec4-palette-lo-contrast) 60%,var(--colors-likec4-palette-fill))}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .reduceGraphicsOnPan\\:mix-bm_normal{mix-blend-mode:normal}.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% img{width: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:100%}.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none svg,.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none img{pointer-events:none}.\\[\\&_svg\\,_\\&_img\\]\\:filter_drop-shadow\\(0_0_3px_rgb\\(0_0_0_\\/_12\\%\\)\\) svg,.\\[\\&_svg\\,_\\&_img\\]\\:filter_drop-shadow\\(0_0_3px_rgb\\(0_0_0_\\/_12\\%\\)\\) img{filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%))}.\\[\\&_img\\]\\:obj-f_contain img{object-fit:contain}.\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)\\]\\:transition-fast_all_190ms_\\{easings\\.inOut\\}:is([data-likec4-hovered=true]){transition:all .19s var(--easings-in-out)}.\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)\\]\\:trf_var\\(--edge-translate\\,_translate\\(0px\\,_0px\\)\\)_scale\\(1\\.12\\):is([data-likec4-hovered=true]){transform:var(--edge-translate, translate(0px, 0px)) scale(1.12)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .reduceGraphicsOnPan\\:d_none{display:none}.empty\\:d_none\\!:is(:empty,[data-empty]){display:none!important}[data-mantine-color-scheme=light] .light\\:--xy-edge-label-color_color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.relation\\.label\\}\\,_rgba\\(255_255_255_\\/_0\\.85\\)_40\\%\\){--xy-edge-label-color: color-mix(in srgb, var(--colors-likec4-relation-label), rgba(255 255 255 / .85) 40%)}[data-mantine-color-scheme=light] .light\\:--xy-edge-label-background-color_\\{colors\\.likec4\\.relation\\.label\\.bg\\/60\\}{--xy-edge-label-background-color: color-mix(in srgb, var(--colors-likec4-relation-label-bg) 60%, transparent)}[data-mantine-color-scheme=dark] .dark\\:--xy-edge-label-background-color_\\{colors\\.likec4\\.relation\\.label\\.bg\\/50\\}{--xy-edge-label-background-color: color-mix(in srgb, var(--colors-likec4-relation-label-bg) 50%, transparent)}.\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\,\\[data-edge-active\\=\\'true\\'\\]\\)\\]\\:--xy-edge-stroke_\\{colors\\.likec4\\.relation\\.stroke\\.selected\\}:is([data-likec4-hovered=true],[data-edge-active=true]){--xy-edge-stroke: var(--colors-likec4-relation-stroke-selected)}.likec4-root:is([data-likec4-reduced-graphics]) .reduceGraphics\\:transition-fast_none{transition:none}:where([data-likec4-hovered=true]) .whenHovered\\:stk-w_calc\\(var\\(--xy-edge-stroke-width\\)_\\+_4\\){stroke-width:calc(var(--xy-edge-stroke-width) + 4)}:where([data-likec4-hovered=true]) .whenHovered\\:stk-op_0\\.2{stroke-opacity:.2}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:stk-w_calc\\(var\\(--xy-edge-stroke-width\\)_\\+_6\\){stroke-width:calc(var(--xy-edge-stroke-width) + 6)}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:stk-op_0\\.25{stroke-opacity:.25}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:transition-fast_stroke_130ms_ease-out\\,stroke-width_130ms_ease-out{transition:stroke .13s ease-out,stroke-width .13s ease-out}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:stk-dsh_none\\!{stroke-dasharray:none!important}:where([data-likec4-hovered=true]) .whenHovered\\:op_1{opacity:1}.\\[\\&_\\.tabler-icon\\]\\:w_80\\% .tabler-icon{width:80%}.\\[\\&_\\.tabler-icon\\]\\:h_80\\% .tabler-icon{height:80%}.\\[\\&_\\.tabler-icon\\]\\:stk-w_2 .tabler-icon{stroke-width:2}.before\\:h_24px:before{height:24px}.before\\:bg_\\[transparent\\]:before{background:var(--colors-transparent)}.before\\:pointer-events_all:before{pointer-events:all}:where(.react-flow__node.selectable:not(.dragging)) .\\[\\:where\\(\\.react-flow__node\\.selectable\\:not\\(\\.dragging\\)\\)_\\&\\]\\:cursor_pointer{cursor:pointer}:where([data-likec4-zoom-small]) .smallZoom\\:vis_hidden{visibility:hidden}[data-mantine-color-scheme=light] .light\\:stk_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.fill\\}_50\\%\\,rgb\\(121\\,_121\\,_121\\)\\)\\]{stroke:color-mix(in srgb,var(--colors-likec4-palette-fill) 50%,rgb(121,121,121))}.shape-svg-multiple .\\[\\.shape-svg-multiple_\\&\\]\\:fill_likec4\\.palette\\.fill{fill:var(--colors-likec4-palette-fill)}:where([data-likec4-shape=queue]) .shapeQueue\\:trf-o_75\\%_25\\%{transform-origin:75% 25%}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:trf-o_50\\%_100\\%{transform-origin:50% 100%}:where([data-likec4-shape=storage]) .shapeStorage\\:trf-o_50\\%_100\\%{transform-origin:50% 100%}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:d_none{display:none}:where([data-likec4-hovered=true]) .whenHovered\\:filter_drop-shadow\\(0_2px_1px_rgba\\(0\\,_0\\,_0\\,_0\\.25\\)\\)_drop-shadow\\(0_8px_3px_rgba\\(0\\,_0\\,_0\\,_0\\.1\\)\\)_drop-shadow\\(0_10px_10px_rgba\\(0\\,_0\\,_0\\,_0\\.05\\)\\){filter:drop-shadow(0 2px 1px rgba(0,0,0,.25)) drop-shadow(0 8px 3px rgba(0,0,0,.1)) drop-shadow(0 10px 10px rgba(0,0,0,.05))}:where([data-likec4-level=true]) .\\[\\:where\\(\\[data-likec4-level\\=\\'true\\'\\]\\)_\\&\\]\\:filter_drop-shadow\\(0_2px_1px_rgba\\(0\\,_0\\,_0\\,_0\\.25\\)\\)_drop-shadow\\(0_8px_3px_rgba\\(0\\,_0\\,_0\\,_0\\.1\\)\\)_drop-shadow\\(0_10px_10px_rgba\\(0\\,_0\\,_0\\,_0\\.05\\)\\){filter:drop-shadow(0 2px 1px rgba(0,0,0,.25)) drop-shadow(0 8px 3px rgba(0,0,0,.1)) drop-shadow(0 10px 10px rgba(0,0,0,.05))}:where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:filter_none{filter:none}:where([data-likec4-zoom-small]) .smallZoom\\:filter_none{filter:none}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:transition-fast_none{transition:none}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:filter_none{filter:none}:where([data-likec4-shape-size=xs]) .shapeSizeXs\\:d_none{display:none}:where([data-likec4-shape-size=sm]) .shapeSizeSm\\:d_none{display:none}:where([data-likec4-shape-size=xs]) .shapeSizeXs\\:--icon-size_24px{--icon-size: 24px}:where([data-likec4-shape-size=sm]) .shapeSizeSm\\:--icon-size_36px{--icon-size: 36px}:where([data-likec4-shape-size=md]) .shapeSizeMd\\:--icon-size_60px{--icon-size: 60px}:where([data-likec4-shape-size=lg]) .shapeSizeLg\\:--icon-size_82px{--icon-size: 82px}:where([data-likec4-shape-size=lg]) .shapeSizeLg\\:gap_16px{gap:16px}:where([data-likec4-shape-size=xl]) .shapeSizeXl\\:--icon-size_90px{--icon-size: 90px}:where([data-likec4-shape-size=xl]) .shapeSizeXl\\:gap_16px{gap:16px}.\\[\\&_\\:where\\(\\.likec4-diagram\\,_\\.likec4-compound-node\\,_\\.likec4-element-node\\)\\]\\:cursor_pointer :where(.likec4-diagram,.likec4-compound-node,.likec4-element-node){cursor:pointer}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}[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\\])}.\\[\\&_\\.tabler-icon\\]\\:c_mantine\\.colors\\.text .tabler-icon{color:var(--colors-mantine-colors-text)}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:transition-fast_none\\!{transition:none!important}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:bx-sh_none\\!{box-shadow: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\\:c_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.stroke\\}\\,_\\{colors\\.likec4\\.mixColor\\}_60\\%\\)\\]{color:color-mix(in srgb,var(--colors-likec4-palette-stroke),var(--colors-likec4-mix-color) 60%)}[data-mantine-color-scheme=dark] .dark\\:c_likec4\\.palette\\.loContrast{color:var(--colors-likec4-palette-lo-contrast)}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:vis_visible{visibility:visible}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:transition-fast_fill-opacity_150ms_ease-out\\,_stroke_150ms_ease-out\\,_stroke-width_150ms_ease-out{transition:fill-opacity .15s ease-out,stroke .15s ease-out,stroke-width .15s ease-out}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:fill-opacity_1{fill-opacity:1}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:stk-w_5{stroke-width:5}.\\[\\&_\\*\\]\\:cursor_grabbing\\! *,.\\[\\&_\\.react-flow__edge-interaction\\]\\:cursor_grabbing\\! .react-flow__edge-interaction{cursor:grabbing!important}.empty\\:d_none:is(:empty,[data-empty]){display:none}.\\[\\&_\\:where\\(button\\,_\\.action-icon\\,_\\[role\\=\\'dialog\\'\\]\\)\\]\\:pointer-events_all :where(button,.action-icon,[role=dialog]){pointer-events:all}.\\[\\&_\\.action-icon\\]\\:--ai-size_2rem .action-icon{--ai-size: 2rem}.\\[\\&_\\.tabler-icon\\]\\:w_65\\% .tabler-icon{width:65%}.\\[\\&_\\.tabler-icon\\]\\:h_65\\% .tabler-icon{height:65%}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:bx-sh_none{box-shadow:none}[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-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:--ai-radius_\\{radii\\.md\\}{--ai-radius: var(--radii-md)}[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\\]))}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:min-h_100\\% .mantine-ScrollArea-viewport{min-height:100%}.\\[\\&\\[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=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\\:c_mantine\\.colors\\.gray\\[6\\]{color:var(--colors-mantine-colors-gray\\[6\\])}.\\[\\&\\.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}.\\[\\&_\\.tabler-icon\\]\\:w_0\\.85em .tabler-icon{width:.85em}.\\[\\&_\\.tabler-icon\\]\\:h_0\\.85em .tabler-icon{height:.85em}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.primary\\.filled\\/85{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary-filled) 85%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary-filled))}.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))}[data-mantine-color-scheme=dark] .dark\\:mix-bm_hard-light{mix-blend-mode:hard-light}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:w_100\\% :where(svg,img){width:100%}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:h_auto :where(svg,img){height:auto}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:max-h_100\\% :where(svg,img){max-height:100%}.\\[\\&_\\: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%))}[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\\]\\:transition-fast_fast .mantine-ThemeIcon-root{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&_\\.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\\]))}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:--ti-size_22px .mantine-ThemeIcon-root{--ti-size: 22px}.\\[\\&_\\>_\\*\\]\\:transition-fast_all_130ms_\\{easings\\.inOut\\}>*{transition:all .13s var(--easings-in-out)}.\\[\\&\\[data-active\\]\\]\\:transition-fast_none[data-active]{transition:none}.\\[\\&\\[data-active\\]\\]\\:bg_mantine\\.colors\\.white[data-active]{background:var(--colors-mantine-colors-white)}.\\[\\&\\[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)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:w_100\\% .mantine-ScrollArea-root{width:100%}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:h_100\\% .mantine-ScrollArea-root{height:100%}.\\[\\&_\\>_\\*\\]\\:transition-fast_fast>*{transition:all var(--durations-fast) var(--easings-in-out)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\.lightColor{color:var(--colors-mantine-colors-gray-light-color)}.\\[\\&_\\.tabler-icon\\]\\:transition-fast_fast .tabler-icon{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&_\\.tabler-icon\\]\\:w_90\\% .tabler-icon{width:90%}.\\[\\&_\\.tabler-icon\\]\\:op_0\\.65 .tabler-icon{opacity:.65}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.\\[\\&\\[data-missing\\]\\]\\:c_mantine\\.colors\\.orange\\[4\\][data-missing]{color:var(--colors-mantine-colors-orange\\[4\\])}.\\[\\&\\[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\\]))}.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)}.\\[\\&\\[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\\]))}.backdrop\\:cursor_zoom-out::backdrop{cursor:zoom-out}.backdrop\\:bkdp_blur\\(var\\(--_blur\\)\\)::backdrop{backdrop-filter:blur(var(--_blur));-webkit-backdrop-filter:blur(var(--_blur))}.\\[\\&_\\.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\\]\\:c_mantine\\.colors\\.dimmed .mantine-Text-root{color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:bd-b_none:last-child .likec4-edge-label{border-bottom:var(--borders-none)}.\\[\\&_\\>_\\*\\]\\:transition-fast_all_0\\.15s_ease-in>*{transition:all .15s ease-in}.before\\:content_\\"_\\":before{content:" "}.before\\:top_0:before{top:var(--spacing-0)}.before\\:left_0:before{left:var(--spacing-0)}.before\\:bg-cp_padding-box:before{background-clip:padding-box;-webkit-background-clip:padding-box}.before\\:trs-dly_\\.075ms:before{transition-delay:.075ms}.likec4-compound-node:has(.compound-action) .\\[\\.likec4-compound-node\\:has\\(\\.compound-action\\)_\\&\\]\\:pl_22px{padding-left:22px}.\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)\\]\\:trs-dly_100ms:is([data-likec4-hovered=true]){transition-delay:.1s}:where([data-likec4-hovered=true]) .whenHovered\\:trs-tmf_out{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}:where([data-likec4-hovered=true]) .whenHovered\\:anim-dly_450ms{animation-delay:.45s}:where(.react-flow__edge.selected,[data-edge-active=true],[data-edge-animated=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-edge-active\\=\\'true\\'\\]\\,_\\[data-edge-animated\\=\\'true\\'\\]\\)_\\&\\]\\:anim-dly_0ms{animation-delay:0ms}:where([data-edge-dir=back]) .\\[\\:where\\(\\[data-edge-dir\\=\\'back\\'\\]\\)_\\&\\]\\:anim-dir_reverse{animation-direction:reverse}:where([data-likec4-dimmed]) .whenDimmed\\:anim-ps_paused{animation-play-state:paused}:where([data-likec4-zoom-small]) .smallZoom\\:anim-n_none{animation-name:none}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:anim-n_none{animation-name:none}: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_12px{right:12px}.before\\:top_calc\\(100\\%_-_4px\\):before{top:calc(100% - 4px)}:where([data-likec4-shape=queue]) .shapeQueue\\:pl_46px{padding-left:46px}:where([data-likec4-shape=queue]) .shapeQueue\\:pr_16px{padding-right:16px}:where([data-likec4-shape=mobile]) .shapeMobile\\:pl_46px{padding-left:46px}:where([data-likec4-shape=mobile]) .shapeMobile\\:pr_16px{padding-right:16px}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:pt_30px{padding-top:30px}:where([data-likec4-shape=storage]) .shapeStorage\\:pt_30px{padding-top:30px}:where([data-likec4-shape=browser]) .shapeBrowser\\:pt_32px{padding-top:32px}:where([data-likec4-shape=browser]) .shapeBrowser\\:pb_28px{padding-bottom:28px}[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\\])}[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\\])}[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\\]))}:where(.react-flow__edge.selected,[data-likec4-hovered=true]) .\\[\\:where\\(\\.react-flow__edge\\.selected\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-dly_50ms{transition-delay:50ms}[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\\]))}:is(.likec4-root[data-likec4-diagram-panning]) .whenPanning\\:bg-c_mantine\\.colors\\.body{background-color:var(--colors-mantine-colors-body)}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(255_255_255_\\/_0\\.92_\\)\\]{background-color:#ffffffeb}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(255_255_255_\\/_0\\.6\\)\\]{background-color:#fff9}:is(.\\[\\&_\\+_\\&\\]\\:mt_32px)+:is(.\\[\\&_\\+_\\&\\]\\:mt_32px){margin-top:32px}[data-mantine-color-scheme=dark] .dark\\:bd-c_transparent{border-color:var(--colors-transparent)}.backdrop\\:bg-c_\\[rgb\\(36_36_36_\\/_var\\(--_opacity\\,_5\\%\\)\\)\\]::backdrop{background-color:rgb(36 36 36 / var(--_opacity, 5%))}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]{background-color:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .dark\\:bg-i_linear-gradient\\(180deg\\,_color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.fill\\}_15\\%\\,_transparent\\)\\,_transparent_80px\\)\\,_linear-gradient\\(180deg\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\,_\\{colors\\.likec4\\.palette\\.fill\\}_4px\\,_transparent_4px\\){background-image:linear-gradient(180deg,color-mix(in srgb,var(--colors-likec4-palette-fill) 15%,transparent),transparent 80px),linear-gradient(180deg,var(--colors-likec4-palette-fill),var(--colors-likec4-palette-fill) 4px,transparent 4px)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pl_4px:not(:has(.mantine-ScrollArea-root)){padding-left:4px}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pr_4px:not(:has(.mantine-ScrollArea-root)){padding-right:4px}.\\[\\&\\[data-level\\=\\'1\\'\\]\\]\\:mb_sm[data-level="1"]{margin-bottom:var(--spacing-sm)}.\\[\\&\\[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\\])}.before\\:content_\\"scope\\:\\":before{content:"scope:"}.before\\:left_8:before{left:var(--spacing-8)}.before\\:fs_2xs:before{font-size:2xs}.before\\:fw_500:before{font-weight:500}.before\\:lh_1:before{line-height:var(--line-heights-1)}.\\[\\&_\\.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)}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:mb_0:last-child .likec4-edge-label{margin-bottom:var(--spacing-0)}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .whenFocused\\:vis_visible{visibility:visible}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .whenFocused\\:d_none{display:none}.focusWithin\\:bg_mantine\\.colors\\.gray\\[3\\]\\/55:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 55%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}.focusVisible\\:ring_none:is(:focus-visible,[data-focus-visible]){outline:var(--borders-none)}.group:is(:focus-visible,[data-focus-visible]) .groupFocusVisible\\:vis_visible{visibility:visible}.focus\\:ring_none:is(:focus,[data-focus]){outline:var(--borders-none)}.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_\\&\\]\\:ring_none{outline:var(--borders-none)}.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\\: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\\])}.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_\\&\\]\\:bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.hover\\:op_1:is(:hover,[data-hover]){opacity:1}.hover\\:translate-y_1px:is(:hover,[data-hover]){--translate-y: 1px}.hover\\:scale_1\\.15:is(:hover,[data-hover]){scale:1.15}.hover\\:c_mantine\\.colors\\.defaultColor:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}.hover\\:bg_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-default-hover)}.group:is(:hover,[data-hover]) .groupHover\\:trf_translateX\\(1px\\){transform:translate(1px)}.hover\\:bx-sh_sm:is(:hover,[data-hover]){box-shadow:var(--shadows-sm)}.hover\\:fill-opacity_1:is(:hover,[data-hover]){fill-opacity:1}.hover\\:stk_mantine\\.colors\\.primary\\.filledHover:is(:hover,[data-hover]){stroke:var(--colors-mantine-colors-primary-filled-hover)}.hover\\:stk-w_10:is(:hover,[data-hover]){stroke-width:10}.hover\\:transition-fast_stroke_100ms_ease-out\\,_stroke-width_100ms_ease-out:is(:hover,[data-hover]){transition:stroke .1s ease-out,stroke-width .1s ease-out}.hover\\:transition-fast_all_120ms_ease-out:is(:hover,[data-hover]){transition:all .12s ease-out}.hover\\:ring_none:is(:hover,[data-hover]){outline:var(--borders-none)}.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\\: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\\:trf_scale\\(1\\.1\\):is(:hover,[data-hover]){transform:scale(1.1)}.hover\\:bg_mantine\\.colors\\.primary\\.filledHover\\/65:is(:hover,[data-hover]){--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary-filled-hover) 65%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary-filled-hover))}.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_\\>_\\*\\]\\:trf_translateX\\(1\\.6px\\):hover>*{transform:translate(1.6px)}.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)}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:transition-fast_all_0\\.15s_ease-out:is(:hover,[data-selected=true])>*{transition:all .15s ease-out}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:cursor_pointer:is(:hover,[data-selected=true])>*{cursor:pointer}.hover\\:trs-dly_0s:is(:hover,[data-hover]){transition-delay:0s}.hover\\:trs-tmf_out:is(:hover,[data-hover]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.group:is(:hover,[data-hover]) .groupHover\\:trs-tmf_out{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.group:is(:hover,[data-hover]) .groupHover\\:trs-dly_50ms{transition-delay:50ms}.hover\\:bd-c_mantine\\.colors\\.defaultBorder:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-default-border)}.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\\]))}.hover\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.\\[\\&\\:hover_\\>_\\*\\]\\:trs-tmf_out:hover>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.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\\]\\)_\\>_\\*\\]\\: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\\])}.active\\:translate-y_-1px:is(:active,[data-active]){--translate-y: -1px}.active\\:scale_0\\.9:is(:active,[data-active]){scale:.9}.active\\:trf_scale\\(0\\.98\\)_translateY\\(3px\\):is(:active,[data-active]){transform:scale(.98) translateY(3px)}.active\\:trs-dur_100ms:is(:active,[data-active]){--transition-duration: .1s;transition-duration:.1s}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:before\\:transition-fast_all_\\{durations\\.slow\\}_\\{easings\\.inOut\\}:before{transition:all var(--durations-slow) var(--easings-in-out)}.\\[\\&\\:is\\(\\[data-compound-transparent\\]\\)\\]\\:before\\:op_var\\(--_compound-opacity\\,_1\\):is([data-compound-transparent]):before{opacity:var(--_compound-opacity, 1)}.likec4-root:not([data-likec4-reduced-graphics]) .before\\:noReduceGraphics\\:bx-sh_0_4px_10px_0\\.5px_rgba\\(0\\,0\\,0\\,0\\.1\\)_\\,_0_2px_2px_-1px_rgba\\(0\\,0\\,0\\,0\\.4\\):before{box-shadow:0 4px 10px .5px #0000001a,0 2px 2px -1px #0006}:where(.react-flow__node.selected,.react-flow__edge.selected) .before\\:whenSelected\\:bx-sh_none:before{box-shadow:none}:is(.likec4-root[data-likec4-diagram-panning]) .before\\:whenPanning\\:bx-sh_none\\!:before{box-shadow:none!important}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:c_likec4\\.palette\\.stroke{color:var(--colors-likec4-palette-stroke)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .\\[\\&_svg\\,_\\&_img\\]\\:reduceGraphicsOnPan\\:filter_none svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .\\[\\&_svg\\,_\\&_img\\]\\:reduceGraphicsOnPan\\:filter_none img{filter:none}[data-mantine-color-scheme=dark] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:dark\\:--actionbtn-color_color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.palette\\.loContrast\\}_60\\%\\,_\\{colors\\.likec4\\.palette\\.fill\\}\\){--actionbtn-color: color-mix(in srgb, var(--colors-likec4-palette-lo-contrast) 60%, var(--colors-likec4-palette-fill))}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-color_\\{colors\\.likec4\\.palette\\.stroke\\}{--actionbtn-color: var(--colors-likec4-palette-stroke)}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-color-hovered_\\{colors\\.likec4\\.palette\\.stroke\\}{--actionbtn-color-hovered: var(--colors-likec4-palette-stroke)}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-color-hovered-btn_\\{colors\\.likec4\\.palette\\.hiContrast\\}{--actionbtn-color-hovered-btn: var(--colors-likec4-palette-hi-contrast)}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-bg-hovered_\\{colors\\.likec4\\.palette\\.fill\\/50\\}{--actionbtn-bg-hovered: color-mix(in srgb, var(--colors-likec4-palette-fill) 50%, transparent)}[data-mantine-color-scheme=light] [data-compound-title-inverse] .\\[\\[data-compound-title-inverse\\]_\\&\\]\\:light\\:--actionbtn-bg-hovered-btn_\\{colors\\.likec4\\.palette\\.fill\\}{--actionbtn-bg-hovered-btn: var(--colors-likec4-palette-fill)}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:dark\\:mix-bm_plus-lighter{mix-blend-mode:plus-lighter}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:light\\:mix-bm_screen{mix-blend-mode:screen}[data-mantine-color-scheme=dark] :where([data-likec4-color=gray]) .\\[\\:where\\(\\[data-likec4-color\\=\\"gray\\"\\]\\)_\\&\\]\\:dark\\:bg_\\[color-mix\\(in_srgb\\,_\\{colors\\.likec4\\.relation\\.label\\.bg\\}\\,_\\{colors\\.likec4\\.mixColor\\}_15\\%\\)\\]{background:color-mix(in srgb,var(--colors-likec4-relation-label-bg),var(--colors-likec4-mix-color) 15%)}:where(.react-flow__node.selected,.react-flow__edge.selected) .\\[\\&\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\,\\[data-edge-active\\=\\'true\\'\\]\\)\\]\\:whenSelected\\:--xy-edge-stroke-width_4:is([data-likec4-hovered=true],[data-edge-active=true]){--xy-edge-stroke-width: 4}:where([data-likec4-hovered=true]) :where(.react-flow__node.selected,.react-flow__edge.selected) .whenSelected\\:whenHovered\\:stk-op_0\\.4{stroke-opacity:.4}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning]) .reduceGraphicsOnPan\\:before\\:d_none:before{display:none}.likec4-root:is([data-likec4-reduced-graphics]) .reduceGraphics\\:\\[\\&_\\.action-icon\\]\\:--ai-radius_0px .action-icon{--ai-radius: 0px}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:min-h_100\\% .mantine-ScrollArea-viewport>div{min-height:100%}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:h_100\\% .mantine-ScrollArea-viewport>div{height:100%}.group:is(:hover,[data-hover]) [data-mantine-color-scheme=light] .light\\:groupHover\\:c_mantine\\.colors\\.primary\\[3\\]{color:var(--colors-mantine-colors-primary\\[3\\])}.group:is(:focus,[data-focus]) [data-mantine-color-scheme=light] .light\\:groupFocus\\:c_mantine\\.colors\\.primary\\[3\\]{color:var(--colors-mantine-colors-primary\\[3\\])}.mantine-Tree-node:focus>.mantine-Tree-label [data-mantine-color-scheme=light] .light\\:\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[3\\]{color:var(--colors-mantine-colors-primary\\[3\\])}.\\[\\&_\\.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=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] .\\[\\&\\[data-missing\\]\\]\\:light\\:c_mantine\\.colors\\.orange\\[8\\][data-missing]{color:var(--colors-mantine-colors-orange\\[8\\])}[data-mantine-color-scheme=light] .light\\:\\[\\&_\\.mantine-SegmentedControl-root\\]\\:bg_mantine\\.colors\\.gray\\[3\\] .mantine-SegmentedControl-root{background:var(--colors-mantine-colors-gray\\[3\\])}.\\[\\&\\:is\\(\\[data-compound-transparent\\]\\)\\]\\:before\\:bd-w_calc\\(var\\(--_border-width\\,_2px\\)_-_1px\\):is([data-compound-transparent]):before{border-width:calc(var(--_border-width, 2px) - 1px)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pl_4px .mantine-ScrollArea-root>div{padding-left:4px}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pr_4px .mantine-ScrollArea-root>div{padding-right:4px}[data-mantine-color-scheme=dark] .backdrop\\:dark\\:bg-c_\\[rgb\\(34_34_34_\\/_var\\(--_opacity\\)\\)\\]::backdrop{background-color:rgb(34 34 34 / var(--_opacity))}[data-mantine-color-scheme=light] .backdrop\\:light\\:bg-c_\\[rgb\\(15_15_15\\/_var\\(--_opacity\\)\\)\\]::backdrop{background-color:rgb(15 15 15/ var(--_opacity))}[data-mantine-color-scheme=dark] .focusWithin\\:dark\\:bg_mantine\\.colors\\.dark\\[4\\]\\/55:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[4\\]) 55%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[4\\]))}[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=light] .light\\:hover\\:bg_mantine\\.colors\\.primary\\.filledHover\\/85:is(:hover,[data-hover]){--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary-filled-hover) 85%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary-filled-hover))}[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\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg_mantine\\.colors\\.dark\\[6\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-dark\\[6\\])}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>:not([data-no-transform]){transform:translate(1px)}.hover\\:\\[\\&_\\>_\\*\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>*{transform:translate(1px)}[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] .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] .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\\]))}[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=light] .light\\:hover\\:bg-c_mantine\\.colors\\.primary\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-primary\\[5\\])}.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\\:\\[\\&_\\>_\\*\\]\\:trs-tmf_out:is(:hover,[data-hover])>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-default-hover)}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:\\[\\&\\[data-likec4-hovered\\=\\'true\\'\\]\\]\\:before\\:trs-dly_\\.2s[data-likec4-hovered=true]:before{transition-delay:.2s}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:\\[\\&\\[data-likec4-hovered\\=\\'true\\'\\]\\]\\:before\\:trs-tmf_in[data-likec4-hovered=true]:before{--transition-easing: var(--easings-in);transition-timing-function:var(--easings-in)}@media screen and (min-width: 36rem){.xs\\:h_100cqh{height:100cqh}.xs\\:max-h_calc\\(100cqh_-_70px\\){max-height:calc(100cqh - 70px)}.\\[\\&_svg\\,_\\&_img\\]\\:xs\\:filter_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_8\\%\\)\\) svg,.\\[\\&_svg\\,_\\&_img\\]\\:xs\\:filter_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_8\\%\\)\\) img{filter:drop-shadow(0 1px 8px rgb(0 0 0 / 8%))}}@media screen and (min-width: 48rem){.sm\\:min-w_250{min-width:250px}.sm\\:max-w_90vw{max-width:90vw}.sm\\:min-w_300{min-width:300px}.sm\\:max-w_65vw{max-width:65vw}.sm\\:inset_\\[var\\(--_inset\\)_var\\(--_inset\\)_var\\(--_offset\\)_var\\(--_inset\\)\\]{inset:var(--_inset) var(--_inset) var(--_offset) var(--_inset)}.sm\\:w_calc\\(100vw_-_2_\\*_var\\(--_inset\\)\\){width:calc(100vw - 2 * var(--_inset))}.sm\\:h_calc\\(100vh_-_var\\(--_offset\\)_-_var\\(--_inset\\)\\){height:calc(100vh - var(--_offset) - var(--_inset))}.sm\\:--_border-radius_6px{--_border-radius: 6px}.sm\\:p_6px{padding:6px}.sm\\:--_offset_1rem{--_offset: 1rem}.sm\\:bdr_calc\\(var\\(--_border-radius\\)_-_2px\\){border-radius:calc(var(--_border-radius) - 2px)}.\\[\\&_svg\\,_\\&_img\\]\\:sm\\:filter_drop-shadow\\(1px_1px_16px_rgb\\(0_0_0_\\/_3\\%\\)\\) svg,.\\[\\&_svg\\,_\\&_img\\]\\:sm\\:filter_drop-shadow\\(1px_1px_16px_rgb\\(0_0_0_\\/_3\\%\\)\\) img{filter:drop-shadow(1px 1px 16px rgb(0 0 0 / 3%))}}@media screen and (min-width: 62rem){.md\\:--text-fz_\\{fontSizes\\.md\\}{--text-fz: var(--font-sizes-md)}.md\\:min-w_350{min-width:350px}.md\\:max-w_70vw{max-width:70vw}.md\\:max-w_40vw{max-width:40vw}.md\\:px_6{padding-inline:6px}.md\\:gap_0\\.6rem{gap:.6rem}.md\\:--_offset_1rem{--_offset: 1rem}.md\\:bd-w_4{border-width:4px}}@media screen and (min-width: 75rem){.lg\\:px_8{padding-inline:var(--spacing-8)}.lg\\:--_offset_2rem{--_offset: 2rem}}@media screen and (min-width: 88rem){.xl\\:--_offset_4rem{--_offset: 4rem}}@media screen and (max-width: 47.9975rem){.smDown\\:--_border-radius_0px{--_border-radius: 0px}.smDown\\:bd_none{border:var(--borders-none)}.smDown\\:inset_0{inset:var(--spacing-0)}.smDown\\:p_0{padding:var(--spacing-0)}.smDown\\:w_100vw{width:100vw}.smDown\\:h_100vh{height:100vh}}@container likec4-tree (max-width: 450px){.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:gap_2{gap:var(--spacing-2)}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:--likec4-icon-size_18px{--likec4-icon-size: 18px}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:d_none{display:none}.\\[\\@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}}}`, fontsCss = '@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}', DefaultTheme = {
|
|
12879
12879
|
autoContrast: !0,
|
|
12880
12880
|
primaryColor: "indigo",
|
|
12881
12881
|
cursorType: "pointer",
|
|
@@ -12946,7 +12946,7 @@ function useColorScheme(explicit) {
|
|
|
12946
12946
|
), explicit ?? computed2 ?? preferred;
|
|
12947
12947
|
}
|
|
12948
12948
|
function useShadowRootStyle(keepAspectRatio, view) {
|
|
12949
|
-
const id2 = useId$
|
|
12949
|
+
const id2 = useId$1();
|
|
12950
12950
|
if (keepAspectRatio === !1)
|
|
12951
12951
|
return [
|
|
12952
12952
|
{ "data-likec4-instance": id2 },
|
|
@@ -13542,8 +13542,8 @@ function removeItem(arr, item) {
|
|
|
13542
13542
|
const index2 = arr.indexOf(item);
|
|
13543
13543
|
index2 > -1 && arr.splice(index2, 1);
|
|
13544
13544
|
}
|
|
13545
|
-
|
|
13546
|
-
|
|
13545
|
+
let invariant = () => {
|
|
13546
|
+
};
|
|
13547
13547
|
const MotionGlobalConfig = {
|
|
13548
13548
|
useManualTiming: !1
|
|
13549
13549
|
};
|
|
@@ -13552,7 +13552,7 @@ function memo$1(callback) {
|
|
|
13552
13552
|
let result;
|
|
13553
13553
|
return () => (result === void 0 && (result = callback()), result);
|
|
13554
13554
|
}
|
|
13555
|
-
const progress = /* @__NO_SIDE_EFFECTS__ */ (from, to, value) => {
|
|
13555
|
+
const noop$2 = /* @__NO_SIDE_EFFECTS__ */ (any) => any, progress = /* @__NO_SIDE_EFFECTS__ */ (from, to, value) => {
|
|
13556
13556
|
const toFromDifference = to - from;
|
|
13557
13557
|
return toFromDifference === 0 ? 1 : (value - from) / toFromDifference;
|
|
13558
13558
|
};
|
|
@@ -13586,12 +13586,12 @@ function velocityPerSecond(velocity, frameDuration) {
|
|
|
13586
13586
|
return frameDuration ? velocity * (1e3 / frameDuration) : 0;
|
|
13587
13587
|
}
|
|
13588
13588
|
const supportsScrollTimeline = /* @__PURE__ */ memo$1(() => window.ScrollTimeline !== void 0);
|
|
13589
|
-
class
|
|
13589
|
+
class GroupAnimation {
|
|
13590
13590
|
constructor(animations2) {
|
|
13591
13591
|
this.stop = () => this.runAll("stop"), this.animations = animations2.filter(Boolean);
|
|
13592
13592
|
}
|
|
13593
13593
|
get finished() {
|
|
13594
|
-
return Promise.all(this.animations.map((animation) =>
|
|
13594
|
+
return Promise.all(this.animations.map((animation) => animation.finished));
|
|
13595
13595
|
}
|
|
13596
13596
|
/**
|
|
13597
13597
|
* TODO: Filter out cancelled or stopped animations before returning
|
|
@@ -13656,46 +13656,16 @@ class BaseGroupPlaybackControls {
|
|
|
13656
13656
|
this.runAll("complete");
|
|
13657
13657
|
}
|
|
13658
13658
|
}
|
|
13659
|
-
class
|
|
13660
|
-
then(onResolve,
|
|
13661
|
-
return
|
|
13659
|
+
class GroupAnimationWithThen extends GroupAnimation {
|
|
13660
|
+
then(onResolve, _onReject) {
|
|
13661
|
+
return this.finished.finally(onResolve).then(() => {
|
|
13662
|
+
});
|
|
13662
13663
|
}
|
|
13663
13664
|
}
|
|
13664
|
-
|
|
13665
|
-
return transition ? transition[key2] || transition.default || transition : void 0;
|
|
13666
|
-
}
|
|
13667
|
-
const maxGeneratorDuration = 2e4;
|
|
13668
|
-
function calcGeneratorDuration(generator) {
|
|
13669
|
-
let duration = 0;
|
|
13670
|
-
const timeStep = 50;
|
|
13671
|
-
let state = generator.next(duration);
|
|
13672
|
-
for (; !state.done && duration < maxGeneratorDuration; )
|
|
13673
|
-
duration += timeStep, state = generator.next(duration);
|
|
13674
|
-
return duration >= maxGeneratorDuration ? 1 / 0 : duration;
|
|
13675
|
-
}
|
|
13676
|
-
function createGeneratorEasing(options, scale2 = 100, createGenerator) {
|
|
13677
|
-
const generator = createGenerator({ ...options, keyframes: [0, scale2] }), duration = Math.min(calcGeneratorDuration(generator), maxGeneratorDuration);
|
|
13678
|
-
return {
|
|
13679
|
-
type: "keyframes",
|
|
13680
|
-
ease: (progress2) => generator.next(duration * progress2).value / scale2,
|
|
13681
|
-
duration: /* @__PURE__ */ millisecondsToSeconds(duration)
|
|
13682
|
-
};
|
|
13683
|
-
}
|
|
13684
|
-
function isGenerator(type) {
|
|
13685
|
-
return typeof type == "function";
|
|
13686
|
-
}
|
|
13687
|
-
function attachTimeline(animation, timeline) {
|
|
13688
|
-
animation.timeline = timeline, animation.onfinish = null;
|
|
13689
|
-
}
|
|
13690
|
-
const isBezierDefinition = (easing) => Array.isArray(easing) && typeof easing[0] == "number", supportsFlags = {
|
|
13691
|
-
linearEasing: void 0
|
|
13692
|
-
};
|
|
13665
|
+
const isBezierDefinition = (easing) => Array.isArray(easing) && typeof easing[0] == "number", supportsFlags = {};
|
|
13693
13666
|
function memoSupports(callback, supportsFlag) {
|
|
13694
13667
|
const memoized = /* @__PURE__ */ memo$1(callback);
|
|
13695
|
-
return () =>
|
|
13696
|
-
var _a;
|
|
13697
|
-
return (_a = supportsFlags[supportsFlag]) !== null && _a !== void 0 ? _a : memoized();
|
|
13698
|
-
};
|
|
13668
|
+
return () => supportsFlags[supportsFlag] ?? memoized();
|
|
13699
13669
|
}
|
|
13700
13670
|
const supportsLinearEasing = /* @__PURE__ */ memoSupports(() => {
|
|
13701
13671
|
try {
|
|
@@ -13708,13 +13678,9 @@ const supportsLinearEasing = /* @__PURE__ */ memoSupports(() => {
|
|
|
13708
13678
|
let points = "";
|
|
13709
13679
|
const numPoints = Math.max(Math.round(duration / resolution), 2);
|
|
13710
13680
|
for (let i2 = 0; i2 < numPoints; i2++)
|
|
13711
|
-
points += easing(
|
|
13681
|
+
points += easing(i2 / (numPoints - 1)) + ", ";
|
|
13712
13682
|
return `linear(${points.substring(0, points.length - 2)})`;
|
|
13713
|
-
}
|
|
13714
|
-
function isWaapiSupportedEasing(easing) {
|
|
13715
|
-
return !!(typeof easing == "function" && supportsLinearEasing() || !easing || typeof easing == "string" && (easing in supportedWaapiEasing || supportsLinearEasing()) || isBezierDefinition(easing) || Array.isArray(easing) && easing.every(isWaapiSupportedEasing));
|
|
13716
|
-
}
|
|
13717
|
-
const cubicBezierAsString = ([a2, b2, c2, d2]) => `cubic-bezier(${a2}, ${b2}, ${c2}, ${d2})`, supportedWaapiEasing = {
|
|
13683
|
+
}, cubicBezierAsString = ([a2, b2, c2, d2]) => `cubic-bezier(${a2}, ${b2}, ${c2}, ${d2})`, supportedWaapiEasing = {
|
|
13718
13684
|
linear: "linear",
|
|
13719
13685
|
ease: "ease",
|
|
13720
13686
|
easeIn: "ease-in",
|
|
@@ -13729,6 +13695,51 @@ function mapEasingToNativeEasing(easing, duration) {
|
|
|
13729
13695
|
if (easing)
|
|
13730
13696
|
return typeof easing == "function" && supportsLinearEasing() ? generateLinearEasing(easing, duration) : isBezierDefinition(easing) ? cubicBezierAsString(easing) : Array.isArray(easing) ? easing.map((segmentEasing) => mapEasingToNativeEasing(segmentEasing, duration) || supportedWaapiEasing.easeOut) : supportedWaapiEasing[easing];
|
|
13731
13697
|
}
|
|
13698
|
+
function startWaapiAnimation(element, valueName, keyframes2, { delay: delay2 = 0, duration = 300, repeat = 0, repeatType = "loop", ease: ease2 = "easeInOut", times } = {}, pseudoElement = void 0) {
|
|
13699
|
+
const keyframeOptions = {
|
|
13700
|
+
[valueName]: keyframes2
|
|
13701
|
+
};
|
|
13702
|
+
times && (keyframeOptions.offset = times);
|
|
13703
|
+
const easing = mapEasingToNativeEasing(ease2, duration);
|
|
13704
|
+
return Array.isArray(easing) && (keyframeOptions.easing = easing), element.animate(keyframeOptions, {
|
|
13705
|
+
delay: delay2,
|
|
13706
|
+
duration,
|
|
13707
|
+
easing: Array.isArray(easing) ? "linear" : easing,
|
|
13708
|
+
fill: "both",
|
|
13709
|
+
iterations: repeat + 1,
|
|
13710
|
+
direction: repeatType === "reverse" ? "alternate" : "normal",
|
|
13711
|
+
pseudoElement
|
|
13712
|
+
});
|
|
13713
|
+
}
|
|
13714
|
+
function isGenerator(type) {
|
|
13715
|
+
return typeof type == "function" && "applyToOptions" in type;
|
|
13716
|
+
}
|
|
13717
|
+
function getValueTransition$1(transition, key2) {
|
|
13718
|
+
return transition?.[key2] ?? transition?.default ?? transition;
|
|
13719
|
+
}
|
|
13720
|
+
const maxGeneratorDuration = 2e4;
|
|
13721
|
+
function calcGeneratorDuration(generator) {
|
|
13722
|
+
let duration = 0;
|
|
13723
|
+
const timeStep = 50;
|
|
13724
|
+
let state = generator.next(duration);
|
|
13725
|
+
for (; !state.done && duration < maxGeneratorDuration; )
|
|
13726
|
+
duration += timeStep, state = generator.next(duration);
|
|
13727
|
+
return duration >= maxGeneratorDuration ? 1 / 0 : duration;
|
|
13728
|
+
}
|
|
13729
|
+
function createGeneratorEasing(options, scale2 = 100, createGenerator) {
|
|
13730
|
+
const generator = createGenerator({ ...options, keyframes: [0, scale2] }), duration = Math.min(calcGeneratorDuration(generator), maxGeneratorDuration);
|
|
13731
|
+
return {
|
|
13732
|
+
type: "keyframes",
|
|
13733
|
+
ease: (progress2) => generator.next(duration * progress2).value / scale2,
|
|
13734
|
+
duration: /* @__PURE__ */ millisecondsToSeconds(duration)
|
|
13735
|
+
};
|
|
13736
|
+
}
|
|
13737
|
+
function isWaapiSupportedEasing(easing) {
|
|
13738
|
+
return !!(typeof easing == "function" && supportsLinearEasing() || !easing || typeof easing == "string" && (easing in supportedWaapiEasing || supportsLinearEasing()) || isBezierDefinition(easing) || Array.isArray(easing) && easing.every(isWaapiSupportedEasing));
|
|
13739
|
+
}
|
|
13740
|
+
function attachTimeline(animation, timeline) {
|
|
13741
|
+
animation.timeline = timeline, animation.onfinish = null;
|
|
13742
|
+
}
|
|
13732
13743
|
const stepsOrder = [
|
|
13733
13744
|
"read",
|
|
13734
13745
|
// Read
|
|
@@ -13827,12 +13838,11 @@ function setDragLock(axis) {
|
|
|
13827
13838
|
});
|
|
13828
13839
|
}
|
|
13829
13840
|
function resolveElements(elementOrSelector, scope, selectorCache) {
|
|
13830
|
-
var _a;
|
|
13831
13841
|
if (elementOrSelector instanceof EventTarget)
|
|
13832
13842
|
return [elementOrSelector];
|
|
13833
13843
|
if (typeof elementOrSelector == "string") {
|
|
13834
13844
|
let root2 = document;
|
|
13835
|
-
const elements =
|
|
13845
|
+
const elements = selectorCache?.[elementOrSelector] ?? root2.querySelectorAll(elementOrSelector);
|
|
13836
13846
|
return elements ? Array.from(elements) : [];
|
|
13837
13847
|
}
|
|
13838
13848
|
return Array.from(elementOrSelector);
|
|
@@ -13917,7 +13927,7 @@ function press(targetOrSelector, onPressStart, options = {}) {
|
|
|
13917
13927
|
window.addEventListener("pointerup", onPointerUp, eventOptions), window.addEventListener("pointercancel", onPointerCancel, eventOptions);
|
|
13918
13928
|
};
|
|
13919
13929
|
return targets.forEach((target) => {
|
|
13920
|
-
(options.useGlobalTarget ? window : target).addEventListener("pointerdown", startPress, eventOptions), target instanceof HTMLElement && (target.addEventListener("focus", (event) => enableKeyboardPress(event, eventOptions)), !isElementKeyboardAccessible(target) && target.
|
|
13930
|
+
(options.useGlobalTarget ? window : target).addEventListener("pointerdown", startPress, eventOptions), target instanceof HTMLElement && (target.addEventListener("focus", (event) => enableKeyboardPress(event, eventOptions)), !isElementKeyboardAccessible(target) && !target.hasAttribute("tabindex") && (target.tabIndex = 0));
|
|
13921
13931
|
}), cancelEvents;
|
|
13922
13932
|
}
|
|
13923
13933
|
const MAX_VELOCITY_DELTA = 30, isFloat = (value) => !isNaN(parseFloat(value));
|
|
@@ -13929,7 +13939,7 @@ class MotionValue {
|
|
|
13929
13939
|
* - `transformer`: A function to transform incoming values with.
|
|
13930
13940
|
*/
|
|
13931
13941
|
constructor(init2, options = {}) {
|
|
13932
|
-
this.version = "12.6.
|
|
13942
|
+
this.version = "12.6.3", this.canTrackVelocity = null, this.events = {}, this.updateAndNotify = (v2, render = !0) => {
|
|
13933
13943
|
const currentTime = time.now();
|
|
13934
13944
|
this.updatedAt !== currentTime && this.setPrevFrameValue(), this.prev = this.current, this.setCurrent(v2), this.current !== this.prev && this.events.change && this.events.change.notify(this.current), render && this.events.renderRequest && this.events.renderRequest.notify(this.current);
|
|
13935
13945
|
}, this.hasAnimated = !1, this.setCurrent(init2), this.owner = options.owner;
|
|
@@ -14323,7 +14333,6 @@ function useMotionRef(visualState, visualElement, externalRef) {
|
|
|
14323
14333
|
}
|
|
14324
14334
|
const camelToDash = (str) => str.replace(/([a-z])([A-Z])/gu, "$1-$2").toLowerCase(), optimizedAppearDataId = "framerAppearId", optimizedAppearDataAttribute = "data-" + camelToDash(optimizedAppearDataId), SwitchLayoutGroupContext = createContext({});
|
|
14325
14335
|
function useVisualElement(Component2, visualState, props, createVisualElement, ProjectionNodeConstructor) {
|
|
14326
|
-
var _a, _b;
|
|
14327
14336
|
const { visualElement: parent } = useContext(MotionContext), lazyContext = useContext(LazyContext), presenceContext = useContext(PresenceContext), reducedMotionConfig = useContext(MotionConfigContext).reducedMotion, visualElementRef = useRef(null);
|
|
14328
14337
|
createVisualElement = createVisualElement || lazyContext.renderer, !visualElementRef.current && createVisualElement && (visualElementRef.current = createVisualElement(Component2, {
|
|
14329
14338
|
visualState,
|
|
@@ -14339,13 +14348,12 @@ function useVisualElement(Component2, visualState, props, createVisualElement, P
|
|
|
14339
14348
|
useInsertionEffect$1(() => {
|
|
14340
14349
|
visualElement && isMounted.current && visualElement.update(props, presenceContext);
|
|
14341
14350
|
});
|
|
14342
|
-
const optimisedAppearId = props[optimizedAppearDataAttribute], wantsHandoff = useRef(!!optimisedAppearId && !
|
|
14351
|
+
const optimisedAppearId = props[optimizedAppearDataAttribute], wantsHandoff = useRef(!!optimisedAppearId && !window.MotionHandoffIsComplete?.(optimisedAppearId) && window.MotionHasOptimisedAnimation?.(optimisedAppearId));
|
|
14343
14352
|
return useIsomorphicLayoutEffect$1(() => {
|
|
14344
14353
|
visualElement && (isMounted.current = !0, window.MotionIsMounted = !0, visualElement.updateFeatures(), microtask.render(visualElement.render), wantsHandoff.current && visualElement.animationState && visualElement.animationState.animateChanges());
|
|
14345
14354
|
}), useEffect(() => {
|
|
14346
14355
|
visualElement && (!wantsHandoff.current && visualElement.animationState && visualElement.animationState.animateChanges(), wantsHandoff.current && (queueMicrotask(() => {
|
|
14347
|
-
|
|
14348
|
-
(_a2 = window.MotionHandoffMarkAsComplete) === null || _a2 === void 0 || _a2.call(window, optimisedAppearId);
|
|
14356
|
+
window.MotionHandoffMarkAsComplete?.(optimisedAppearId);
|
|
14349
14357
|
}), wantsHandoff.current = !1));
|
|
14350
14358
|
}), visualElement;
|
|
14351
14359
|
}
|
|
@@ -14374,7 +14382,6 @@ function getClosestProjectingNode(visualElement) {
|
|
|
14374
14382
|
return visualElement.options.allowProjection !== !1 ? visualElement.projection : getClosestProjectingNode(visualElement.parent);
|
|
14375
14383
|
}
|
|
14376
14384
|
function createRendererMotionComponent({ preloadedFeatures, createVisualElement, useRender, useVisualState, Component: Component2 }) {
|
|
14377
|
-
var _a, _b;
|
|
14378
14385
|
function MotionComponent(props, externalRef) {
|
|
14379
14386
|
let MeasureLayout2;
|
|
14380
14387
|
const configAndProps = {
|
|
@@ -14389,7 +14396,7 @@ function createRendererMotionComponent({ preloadedFeatures, createVisualElement,
|
|
|
14389
14396
|
}
|
|
14390
14397
|
return jsxs(MotionContext.Provider, { value: context2, children: [MeasureLayout2 && context2.visualElement ? jsx(MeasureLayout2, { visualElement: context2.visualElement, ...configAndProps }) : null, useRender(Component2, props, useMotionRef(visualState, context2.visualElement, externalRef), visualState, isStatic, context2.visualElement)] });
|
|
14391
14398
|
}
|
|
14392
|
-
MotionComponent.displayName = `motion.${typeof Component2 == "string" ? Component2 : `create(${
|
|
14399
|
+
MotionComponent.displayName = `motion.${typeof Component2 == "string" ? Component2 : `create(${Component2.displayName ?? Component2.name ?? ""})`}`;
|
|
14393
14400
|
const ForwardRefMotionComponent = forwardRef(MotionComponent);
|
|
14394
14401
|
return ForwardRefMotionComponent[motionComponentSymbol] = Component2, ForwardRefMotionComponent;
|
|
14395
14402
|
}
|
|
@@ -14437,13 +14444,13 @@ const transformPropOrder = [
|
|
|
14437
14444
|
function isForcedMotionValue(key2, { layout: layout2, layoutId }) {
|
|
14438
14445
|
return transformProps.has(key2) || key2.startsWith("origin") || (layout2 || layoutId !== void 0) && (!!scaleCorrectors[key2] || key2 === "opacity");
|
|
14439
14446
|
}
|
|
14440
|
-
const isMotionValue = (value) => !!(value && value.getVelocity), getValueAsType = (value, type) => type && typeof value == "number" ? type.transform(value) : value, clamp$
|
|
14447
|
+
const isMotionValue = (value) => !!(value && value.getVelocity), getValueAsType = (value, type) => type && typeof value == "number" ? type.transform(value) : value, clamp$2 = (min2, max2, v2) => v2 > max2 ? max2 : v2 < min2 ? min2 : v2, number = {
|
|
14441
14448
|
test: (v2) => typeof v2 == "number",
|
|
14442
14449
|
parse: parseFloat,
|
|
14443
14450
|
transform: (v2) => v2
|
|
14444
14451
|
}, alpha = {
|
|
14445
14452
|
...number,
|
|
14446
|
-
transform: (v2) => clamp$
|
|
14453
|
+
transform: (v2) => clamp$2(0, 1, v2)
|
|
14447
14454
|
}, scale = {
|
|
14448
14455
|
...number,
|
|
14449
14456
|
default: 1
|
|
@@ -14778,10 +14785,9 @@ function makeLatestValues(props, context2, presenceContext, scrapeMotionValues)
|
|
|
14778
14785
|
return values2;
|
|
14779
14786
|
}
|
|
14780
14787
|
function scrapeMotionValuesFromProps$1(props, prevProps, visualElement) {
|
|
14781
|
-
var _a;
|
|
14782
14788
|
const { style: style2 } = props, newValues = {};
|
|
14783
14789
|
for (const key2 in style2)
|
|
14784
|
-
(isMotionValue(style2[key2]) || prevProps.style && isMotionValue(prevProps.style[key2]) || isForcedMotionValue(key2, props) ||
|
|
14790
|
+
(isMotionValue(style2[key2]) || prevProps.style && isMotionValue(prevProps.style[key2]) || isForcedMotionValue(key2, props) || visualElement?.getValue(key2)?.liveStyle !== void 0) && (newValues[key2] = style2[key2]);
|
|
14785
14791
|
return newValues;
|
|
14786
14792
|
}
|
|
14787
14793
|
const htmlMotionConfig = {
|
|
@@ -14958,7 +14964,7 @@ const singleColorRegex = /^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){
|
|
|
14958
14964
|
[cName]: parseFloat(c2),
|
|
14959
14965
|
alpha: alpha2 !== void 0 ? parseFloat(alpha2) : 1
|
|
14960
14966
|
};
|
|
14961
|
-
}, clampRgbUnit = (v2) => clamp$
|
|
14967
|
+
}, clampRgbUnit = (v2) => clamp$2(0, 255, v2), rgbUnit = {
|
|
14962
14968
|
...number,
|
|
14963
14969
|
transform: (v2) => Math.round(clampRgbUnit(v2))
|
|
14964
14970
|
}, rgba$1 = {
|
|
@@ -14989,8 +14995,7 @@ const hex$1 = {
|
|
|
14989
14995
|
transform: (v2) => typeof v2 == "string" ? v2 : v2.hasOwnProperty("red") ? rgba$1.transform(v2) : hsla$1.transform(v2)
|
|
14990
14996
|
}, colorRegex = /(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;
|
|
14991
14997
|
function test(v2) {
|
|
14992
|
-
|
|
14993
|
-
return isNaN(v2) && typeof v2 == "string" && (((_a = v2.match(floatRegex)) === null || _a === void 0 ? void 0 : _a.length) || 0) + (((_b = v2.match(colorRegex)) === null || _b === void 0 ? void 0 : _b.length) || 0) > 0;
|
|
14998
|
+
return isNaN(v2) && typeof v2 == "string" && (v2.match(floatRegex)?.length || 0) + (v2.match(colorRegex)?.length || 0) > 0;
|
|
14994
14999
|
}
|
|
14995
15000
|
const NUMBER_TOKEN = "number", COLOR_TOKEN = "color", VAR_TOKEN = "var", VAR_FUNCTION_TOKEN = "var(", SPLIT_TOKEN = "${}", complexRegex = /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;
|
|
14996
15001
|
function analyseComplexValue(value) {
|
|
@@ -15172,8 +15177,7 @@ function measureAllKeyframes() {
|
|
|
15172
15177
|
element.render();
|
|
15173
15178
|
const restore = transformsToRestore.get(element);
|
|
15174
15179
|
restore && restore.forEach(([key2, value]) => {
|
|
15175
|
-
|
|
15176
|
-
(_a = element.getValue(key2)) === null || _a === void 0 || _a.set(value);
|
|
15180
|
+
element.getValue(key2)?.set(value);
|
|
15177
15181
|
});
|
|
15178
15182
|
}), resolversToMeasure.forEach((resolver) => resolver.measureEndState()), resolversToMeasure.forEach((resolver) => {
|
|
15179
15183
|
resolver.suspendedScrollY !== void 0 && window.scrollTo(0, resolver.suspendedScrollY);
|
|
@@ -15299,14 +15303,13 @@ class DOMKeyframesResolver extends KeyframeResolver {
|
|
|
15299
15303
|
measureKeyframe !== void 0 && element.getValue(name, measureKeyframe).jump(measureKeyframe, !1);
|
|
15300
15304
|
}
|
|
15301
15305
|
measureEndState() {
|
|
15302
|
-
var _a;
|
|
15303
15306
|
const { element, name, unresolvedKeyframes } = this;
|
|
15304
15307
|
if (!element || !element.current)
|
|
15305
15308
|
return;
|
|
15306
15309
|
const value = element.getValue(name);
|
|
15307
15310
|
value && value.jump(this.measuredOrigin, !1);
|
|
15308
15311
|
const finalKeyframeIndex = unresolvedKeyframes.length - 1, finalKeyframe = unresolvedKeyframes[finalKeyframeIndex];
|
|
15309
|
-
unresolvedKeyframes[finalKeyframeIndex] = positionalValues[name](element.measureViewportBox(), window.getComputedStyle(element.current)), finalKeyframe !== null && this.finalKeyframe === void 0 && (this.finalKeyframe = finalKeyframe),
|
|
15312
|
+
unresolvedKeyframes[finalKeyframeIndex] = positionalValues[name](element.measureViewportBox(), window.getComputedStyle(element.current)), finalKeyframe !== null && this.finalKeyframe === void 0 && (this.finalKeyframe = finalKeyframe), this.removedTransforms?.length && this.removedTransforms.forEach(([unsetTransformName, unsetTransformValue]) => {
|
|
15310
15313
|
element.getValue(unsetTransformName).set(unsetTransformValue);
|
|
15311
15314
|
}), this.resolveNoneKeyframes();
|
|
15312
15315
|
}
|
|
@@ -15480,10 +15483,9 @@ function mixObject(a2, b2) {
|
|
|
15480
15483
|
};
|
|
15481
15484
|
}
|
|
15482
15485
|
function matchOrder(origin, target) {
|
|
15483
|
-
var _a;
|
|
15484
15486
|
const orderedOrigin = [], pointers = { color: 0, var: 0, number: 0 };
|
|
15485
15487
|
for (let i2 = 0; i2 < target.values.length; i2++) {
|
|
15486
|
-
const type = target.types[i2], originIndex = origin.indexes[type][pointers[type]], originValue =
|
|
15488
|
+
const type = target.types[i2], originIndex = origin.indexes[type][pointers[type]], originValue = origin.values[originIndex] ?? 0;
|
|
15487
15489
|
orderedOrigin[i2] = originValue, pointers[type]++;
|
|
15488
15490
|
}
|
|
15489
15491
|
return orderedOrigin;
|
|
@@ -15531,7 +15533,7 @@ const springDefaults = {
|
|
|
15531
15533
|
}, safeMin = 1e-3;
|
|
15532
15534
|
function findSpring({ duration = springDefaults.duration, bounce = springDefaults.bounce, velocity = springDefaults.velocity, mass = springDefaults.mass }) {
|
|
15533
15535
|
let envelope, derivative, dampingRatio = 1 - bounce;
|
|
15534
|
-
dampingRatio = clamp$
|
|
15536
|
+
dampingRatio = clamp$2(springDefaults.minDamping, springDefaults.maxDamping, dampingRatio), duration = clamp$2(springDefaults.minDuration, springDefaults.maxDuration, /* @__PURE__ */ millisecondsToSeconds(duration)), dampingRatio < 1 ? (envelope = (undampedFreq2) => {
|
|
15535
15537
|
const exponentialDecay = undampedFreq2 * dampingRatio, delta = exponentialDecay * duration, a2 = exponentialDecay - velocity, b2 = calcAngularFreq(undampedFreq2, dampingRatio), c2 = Math.exp(-delta);
|
|
15536
15538
|
return safeMin - a2 / b2 * c2;
|
|
15537
15539
|
}, derivative = (undampedFreq2) => {
|
|
@@ -15585,7 +15587,7 @@ function getSpringOptions(options) {
|
|
|
15585
15587
|
};
|
|
15586
15588
|
if (!isSpringType(options, physicsKeys) && isSpringType(options, durationKeys))
|
|
15587
15589
|
if (options.visualDuration) {
|
|
15588
|
-
const visualDuration = options.visualDuration, root2 = 2 * Math.PI / (visualDuration * 1.2), stiffness = root2 * root2, damping = 2 * clamp$
|
|
15590
|
+
const visualDuration = options.visualDuration, root2 = 2 * Math.PI / (visualDuration * 1.2), stiffness = root2 * root2, damping = 2 * clamp$2(0.05, 1, 1 - (options.bounce || 0)) * Math.sqrt(stiffness);
|
|
15589
15591
|
springOptions = {
|
|
15590
15592
|
...springOptions,
|
|
15591
15593
|
mass: springDefaults.mass,
|
|
@@ -15647,10 +15649,16 @@ function spring(optionsOrVisualDuration = springDefaults.visualDuration, bounce
|
|
|
15647
15649
|
toString: () => {
|
|
15648
15650
|
const calculatedDuration = Math.min(calcGeneratorDuration(generator), maxGeneratorDuration), easing = generateLinearEasing((progress2) => generator.next(calculatedDuration * progress2).value, calculatedDuration, 30);
|
|
15649
15651
|
return calculatedDuration + "ms " + easing;
|
|
15652
|
+
},
|
|
15653
|
+
toTransition: () => {
|
|
15650
15654
|
}
|
|
15651
15655
|
};
|
|
15652
15656
|
return generator;
|
|
15653
15657
|
}
|
|
15658
|
+
spring.applyToOptions = (options) => {
|
|
15659
|
+
const generatorOptions = createGeneratorEasing(options, 100, spring);
|
|
15660
|
+
return options.ease = supportsLinearEasing() ? generatorOptions.ease : "easeOut", options.duration = /* @__PURE__ */ secondsToMilliseconds(generatorOptions.duration), options.type = "keyframes", options;
|
|
15661
|
+
};
|
|
15654
15662
|
function inertia({ keyframes: keyframes2, velocity = 0, power = 0.8, timeConstant = 325, bounceDamping = 10, bounceStiffness = 500, modifyTarget, min: min2, max: max2, restDelta = 0.5, restSpeed }) {
|
|
15655
15663
|
const origin = keyframes2[0], state = {
|
|
15656
15664
|
done: !1,
|
|
@@ -15734,7 +15742,7 @@ function interpolate$1(input2, output, { clamp: isClamp = !0, ease: ease2, mixer
|
|
|
15734
15742
|
const progressInRange = /* @__PURE__ */ progress(input2[i2], input2[i2 + 1], v2);
|
|
15735
15743
|
return mixers[i2](progressInRange);
|
|
15736
15744
|
};
|
|
15737
|
-
return isClamp ? (v2) => interpolator(clamp$
|
|
15745
|
+
return isClamp ? (v2) => interpolator(clamp$2(input2[0], input2[inputLength - 1], v2)) : interpolator;
|
|
15738
15746
|
}
|
|
15739
15747
|
function fillOffset(offset2, remaining) {
|
|
15740
15748
|
const min2 = offset2[offset2.length - 1];
|
|
@@ -15844,7 +15852,7 @@ class MainThreadAnimation extends BaseAnimation {
|
|
|
15844
15852
|
if (repeat) {
|
|
15845
15853
|
const progress2 = Math.min(this.currentTime, totalDuration) / resolvedDuration;
|
|
15846
15854
|
let currentIteration = Math.floor(progress2), iterationProgress = progress2 % 1;
|
|
15847
|
-
!iterationProgress && progress2 >= 1 && (iterationProgress = 1), iterationProgress === 1 && currentIteration--, currentIteration = Math.min(currentIteration, repeat + 1), !!(currentIteration % 2) && (repeatType === "reverse" ? (iterationProgress = 1 - iterationProgress, repeatDelay && (iterationProgress -= repeatDelay / resolvedDuration)) : repeatType === "mirror" && (frameGenerator = mirroredGenerator)), elapsed = clamp$
|
|
15855
|
+
!iterationProgress && progress2 >= 1 && (iterationProgress = 1), iterationProgress === 1 && currentIteration--, currentIteration = Math.min(currentIteration, repeat + 1), !!(currentIteration % 2) && (repeatType === "reverse" ? (iterationProgress = 1 - iterationProgress, repeatDelay && (iterationProgress -= repeatDelay / resolvedDuration)) : repeatType === "mirror" && (frameGenerator = mirroredGenerator)), elapsed = clamp$2(0, 1, iterationProgress) * resolvedDuration;
|
|
15848
15856
|
}
|
|
15849
15857
|
const state = isInDelayPhase ? { done: !1, value: keyframes2[0] } : frameGenerator.next(elapsed);
|
|
15850
15858
|
mapPercentToKeyframes && (state.value = mapPercentToKeyframes(state.value));
|
|
@@ -15883,12 +15891,11 @@ class MainThreadAnimation extends BaseAnimation {
|
|
|
15883
15891
|
this.holdTime !== null ? this.startTime = now2 - this.holdTime : this.startTime ? this.state === "finished" && (this.startTime = now2) : this.startTime = startTime ?? this.calcStartTime(), this.state === "finished" && this.updateFinishedPromise(), this.cancelTime = this.startTime, this.holdTime = null, this.state = "running", this.driver.start();
|
|
15884
15892
|
}
|
|
15885
15893
|
pause() {
|
|
15886
|
-
var _a;
|
|
15887
15894
|
if (!this._resolved) {
|
|
15888
15895
|
this.pendingPlayState = "paused";
|
|
15889
15896
|
return;
|
|
15890
15897
|
}
|
|
15891
|
-
this.state = "paused", this.holdTime =
|
|
15898
|
+
this.state = "paused", this.holdTime = this.currentTime ?? 0;
|
|
15892
15899
|
}
|
|
15893
15900
|
complete() {
|
|
15894
15901
|
this.state !== "running" && this.play(), this.pendingPlayState = this.state = "finished", this.holdTime = null;
|
|
@@ -15910,6 +15917,9 @@ class MainThreadAnimation extends BaseAnimation {
|
|
|
15910
15917
|
sample(time2) {
|
|
15911
15918
|
return this.startTime = 0, this.tick(time2, !0);
|
|
15912
15919
|
}
|
|
15920
|
+
get finished() {
|
|
15921
|
+
return this.currentFinishedPromise;
|
|
15922
|
+
}
|
|
15913
15923
|
}
|
|
15914
15924
|
const acceleratedValues = /* @__PURE__ */ new Set([
|
|
15915
15925
|
"opacity",
|
|
@@ -15919,21 +15929,7 @@ const acceleratedValues = /* @__PURE__ */ new Set([
|
|
|
15919
15929
|
// TODO: Can be accelerated but currently disabled until https://issues.chromium.org/issues/41491098 is resolved
|
|
15920
15930
|
// or until we implement support for linear() easing.
|
|
15921
15931
|
// "background-color"
|
|
15922
|
-
]);
|
|
15923
|
-
function startWaapiAnimation(element, valueName, keyframes2, { delay: delay2 = 0, duration = 300, repeat = 0, repeatType = "loop", ease: ease2 = "easeInOut", times } = {}) {
|
|
15924
|
-
const keyframeOptions = { [valueName]: keyframes2 };
|
|
15925
|
-
times && (keyframeOptions.offset = times);
|
|
15926
|
-
const easing = mapEasingToNativeEasing(ease2, duration);
|
|
15927
|
-
return Array.isArray(easing) && (keyframeOptions.easing = easing), element.animate(keyframeOptions, {
|
|
15928
|
-
delay: delay2,
|
|
15929
|
-
duration,
|
|
15930
|
-
easing: Array.isArray(easing) ? "linear" : easing,
|
|
15931
|
-
fill: "both",
|
|
15932
|
-
iterations: repeat + 1,
|
|
15933
|
-
direction: repeatType === "reverse" ? "alternate" : "normal"
|
|
15934
|
-
});
|
|
15935
|
-
}
|
|
15936
|
-
const supportsWaapi = /* @__PURE__ */ memo$1(() => Object.hasOwnProperty.call(Element.prototype, "animate")), sampleDelta = 10, maxDuration = 2e4;
|
|
15932
|
+
]), supportsWaapi = /* @__PURE__ */ memo$1(() => Object.hasOwnProperty.call(Element.prototype, "animate")), sampleDelta = 10, maxDuration = 2e4;
|
|
15937
15933
|
function requiresPregeneratedKeyframes(options) {
|
|
15938
15934
|
return isGenerator(options.type) || options.type === "spring" || !isWaapiSupportedEasing(options.ease);
|
|
15939
15935
|
}
|
|
@@ -16020,6 +16016,9 @@ class AcceleratedAnimation extends BaseAnimation {
|
|
|
16020
16016
|
const { animation } = resolved;
|
|
16021
16017
|
return animation.playbackRate;
|
|
16022
16018
|
}
|
|
16019
|
+
get finished() {
|
|
16020
|
+
return this.resolved.animation.finished;
|
|
16021
|
+
}
|
|
16023
16022
|
set speed(newSpeed) {
|
|
16024
16023
|
const { resolved } = this;
|
|
16025
16024
|
if (!resolved)
|
|
@@ -16169,7 +16168,7 @@ const animateMotionValue = (name, value, target, transition = {}, element, isHan
|
|
|
16169
16168
|
if (finalKeyframe !== void 0)
|
|
16170
16169
|
return frame$1.update(() => {
|
|
16171
16170
|
options.onUpdate(finalKeyframe), options.onComplete();
|
|
16172
|
-
}), new
|
|
16171
|
+
}), new GroupAnimationWithThen([]);
|
|
16173
16172
|
}
|
|
16174
16173
|
return !isHandoff && AcceleratedAnimation.supports(options) ? new AcceleratedAnimation(options) : new MainThreadAnimation(options);
|
|
16175
16174
|
};
|
|
@@ -16178,12 +16177,11 @@ function shouldBlockAnimation({ protectedKeys, needsAnimating }, key2) {
|
|
|
16178
16177
|
return needsAnimating[key2] = !1, shouldBlock;
|
|
16179
16178
|
}
|
|
16180
16179
|
function animateTarget(visualElement, targetAndTransition, { delay: delay2 = 0, transitionOverride, type } = {}) {
|
|
16181
|
-
var _a;
|
|
16182
16180
|
let { transition = visualElement.getDefaultTransition(), transitionEnd, ...target } = targetAndTransition;
|
|
16183
16181
|
transitionOverride && (transition = transitionOverride);
|
|
16184
16182
|
const animations2 = [], animationTypeState = type && visualElement.animationState && visualElement.animationState.getState()[type];
|
|
16185
16183
|
for (const key2 in target) {
|
|
16186
|
-
const value = visualElement.getValue(key2,
|
|
16184
|
+
const value = visualElement.getValue(key2, visualElement.latestValues[key2] ?? null), valueTarget = target[key2];
|
|
16187
16185
|
if (valueTarget === void 0 || animationTypeState && shouldBlockAnimation(animationTypeState, key2))
|
|
16188
16186
|
continue;
|
|
16189
16187
|
const valueTransition = {
|
|
@@ -16209,8 +16207,7 @@ function animateTarget(visualElement, targetAndTransition, { delay: delay2 = 0,
|
|
|
16209
16207
|
}), animations2;
|
|
16210
16208
|
}
|
|
16211
16209
|
function animateVariant(visualElement, variant, options = {}) {
|
|
16212
|
-
|
|
16213
|
-
const resolved = resolveVariant(visualElement, variant, options.type === "exit" ? (_a = visualElement.presenceContext) === null || _a === void 0 ? void 0 : _a.custom : void 0);
|
|
16210
|
+
const resolved = resolveVariant(visualElement, variant, options.type === "exit" ? visualElement.presenceContext?.custom : void 0);
|
|
16214
16211
|
let { transition = visualElement.getDefaultTransition() || {} } = resolved || {};
|
|
16215
16212
|
options.transitionOverride && (transition = options.transitionOverride);
|
|
16216
16213
|
const getAnimation = resolved ? () => Promise.all(animateTarget(visualElement, resolved, options)) : () => Promise.resolve(), getChildAnimations = visualElement.variantChildren && visualElement.variantChildren.size ? (forwardDelay = 0) => {
|
|
@@ -16284,8 +16281,7 @@ function animateList(visualElement) {
|
|
|
16284
16281
|
function createAnimationState(visualElement) {
|
|
16285
16282
|
let animate2 = animateList(visualElement), state = createState(), isInitialRender = !0;
|
|
16286
16283
|
const buildResolvedTypeValues = (type) => (acc, definition) => {
|
|
16287
|
-
|
|
16288
|
-
const resolved = resolveVariant(visualElement, definition, type === "exit" ? (_a = visualElement.presenceContext) === null || _a === void 0 ? void 0 : _a.custom : void 0);
|
|
16284
|
+
const resolved = resolveVariant(visualElement, definition, type === "exit" ? visualElement.presenceContext?.custom : void 0);
|
|
16289
16285
|
if (resolved) {
|
|
16290
16286
|
const { transition, transitionEnd, ...target } = resolved;
|
|
16291
16287
|
acc = { ...acc, ...target, ...transitionEnd };
|
|
@@ -16349,13 +16345,9 @@ function createAnimationState(visualElement) {
|
|
|
16349
16345
|
return isInitialRender && (props.initial === !1 || props.initial === props.animate) && !visualElement.manuallyAnimateOnMount && (shouldAnimate = !1), isInitialRender = !1, shouldAnimate ? animate2(animations2) : Promise.resolve();
|
|
16350
16346
|
}
|
|
16351
16347
|
function setActive(type, isActive) {
|
|
16352
|
-
var _a;
|
|
16353
16348
|
if (state[type].isActive === isActive)
|
|
16354
16349
|
return Promise.resolve();
|
|
16355
|
-
|
|
16356
|
-
var _a2;
|
|
16357
|
-
return (_a2 = child.animationState) === null || _a2 === void 0 ? void 0 : _a2.setActive(type, isActive);
|
|
16358
|
-
}), state[type].isActive = isActive;
|
|
16350
|
+
visualElement.variantChildren?.forEach((child) => child.animationState?.setActive(type, isActive)), state[type].isActive = isActive;
|
|
16359
16351
|
const animations2 = animateChanges(type);
|
|
16360
16352
|
for (const key2 in state)
|
|
16361
16353
|
state[key2].protectedKeys = {};
|
|
@@ -16424,8 +16416,7 @@ class AnimationFeature extends Feature {
|
|
|
16424
16416
|
animate2 !== prevAnimate && this.updateAnimationControlsSubscription();
|
|
16425
16417
|
}
|
|
16426
16418
|
unmount() {
|
|
16427
|
-
|
|
16428
|
-
this.node.animationState.reset(), (_a = this.unmountControls) === null || _a === void 0 || _a.call(this);
|
|
16419
|
+
this.node.animationState.reset(), this.unmountControls?.();
|
|
16429
16420
|
}
|
|
16430
16421
|
}
|
|
16431
16422
|
let id$2 = 0;
|
|
@@ -16703,7 +16694,7 @@ function calcViewportConstraints(layoutBox, constraintsBox) {
|
|
|
16703
16694
|
function calcOrigin(source, target) {
|
|
16704
16695
|
let origin = 0.5;
|
|
16705
16696
|
const sourceLength = calcLength(source), targetLength = calcLength(target);
|
|
16706
|
-
return targetLength > sourceLength ? origin = /* @__PURE__ */ progress(target.min, target.max - sourceLength, source.min) : sourceLength > targetLength && (origin = /* @__PURE__ */ progress(source.min, source.max - targetLength, target.min)), clamp$
|
|
16697
|
+
return targetLength > sourceLength ? origin = /* @__PURE__ */ progress(target.min, target.max - sourceLength, source.min) : sourceLength > targetLength && (origin = /* @__PURE__ */ progress(source.min, source.max - targetLength, target.min)), clamp$2(0, 1, origin);
|
|
16707
16698
|
}
|
|
16708
16699
|
function rebaseAxisConstraints(layout2, constraints) {
|
|
16709
16700
|
const relativeConstraints = {};
|
|
@@ -16764,10 +16755,7 @@ class VisualElementDragControls {
|
|
|
16764
16755
|
return;
|
|
16765
16756
|
}
|
|
16766
16757
|
this.updateAxis("x", info.point, offset2), this.updateAxis("y", info.point, offset2), this.visualElement.render(), onDrag && onDrag(event, info);
|
|
16767
|
-
}, onSessionEnd = (event, info) => this.stop(event, info), resumeAnimation = () => eachAxis((axis) => {
|
|
16768
|
-
var _a;
|
|
16769
|
-
return this.getAnimationState(axis) === "paused" && ((_a = this.getAxisMotionValue(axis).animation) === null || _a === void 0 ? void 0 : _a.play());
|
|
16770
|
-
}), { dragSnapToOrigin } = this.getProps();
|
|
16758
|
+
}, onSessionEnd = (event, info) => this.stop(event, info), resumeAnimation = () => eachAxis((axis) => this.getAnimationState(axis) === "paused" && this.getAxisMotionValue(axis).animation?.play()), { dragSnapToOrigin } = this.getProps();
|
|
16771
16759
|
this.panSession = new PanSession(originEvent, {
|
|
16772
16760
|
onSessionStart,
|
|
16773
16761
|
onStart,
|
|
@@ -16805,8 +16793,7 @@ class VisualElementDragControls {
|
|
|
16805
16793
|
this.constraints && this.constraints[axis] && (next = applyConstraints(next, this.constraints[axis], this.elastic[axis])), axisValue.set(next);
|
|
16806
16794
|
}
|
|
16807
16795
|
resolveConstraints() {
|
|
16808
|
-
|
|
16809
|
-
const { dragConstraints, dragElastic } = this.getProps(), layout2 = this.visualElement.projection && !this.visualElement.projection.layout ? this.visualElement.projection.measure(!1) : (_a = this.visualElement.projection) === null || _a === void 0 ? void 0 : _a.layout, prevConstraints = this.constraints;
|
|
16796
|
+
const { dragConstraints, dragElastic } = this.getProps(), layout2 = this.visualElement.projection && !this.visualElement.projection.layout ? this.visualElement.projection.measure(!1) : this.visualElement.projection?.layout, prevConstraints = this.constraints;
|
|
16810
16797
|
dragConstraints && isRefObject(dragConstraints) ? this.constraints || (this.constraints = this.resolveRefConstraints()) : dragConstraints && layout2 ? this.constraints = calcRelativeConstraints(layout2.layoutBox, dragConstraints) : this.constraints = !1, this.elastic = resolveDragElastic(dragElastic), prevConstraints !== this.constraints && layout2 && this.constraints && !this.hasMutatedConstraints && eachAxis((axis) => {
|
|
16811
16798
|
this.constraints !== !1 && this.getAxisMotionValue(axis) && (this.constraints[axis] = rebaseAxisConstraints(layout2.layoutBox[axis], this.constraints[axis]));
|
|
16812
16799
|
});
|
|
@@ -16855,14 +16842,10 @@ class VisualElementDragControls {
|
|
|
16855
16842
|
eachAxis((axis) => this.getAxisMotionValue(axis).stop());
|
|
16856
16843
|
}
|
|
16857
16844
|
pauseAnimation() {
|
|
16858
|
-
eachAxis((axis) =>
|
|
16859
|
-
var _a;
|
|
16860
|
-
return (_a = this.getAxisMotionValue(axis).animation) === null || _a === void 0 ? void 0 : _a.pause();
|
|
16861
|
-
});
|
|
16845
|
+
eachAxis((axis) => this.getAxisMotionValue(axis).animation?.pause());
|
|
16862
16846
|
}
|
|
16863
16847
|
getAnimationState(axis) {
|
|
16864
|
-
|
|
16865
|
-
return (_a = this.getAxisMotionValue(axis).animation) === null || _a === void 0 ? void 0 : _a.state;
|
|
16848
|
+
return this.getAxisMotionValue(axis).animation?.state;
|
|
16866
16849
|
}
|
|
16867
16850
|
/**
|
|
16868
16851
|
* Drag works differently depending on which props are provided.
|
|
@@ -17393,7 +17376,7 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
17393
17376
|
}
|
|
17394
17377
|
this.isUpdating || this.nodes.forEach(clearIsLayoutDirty), this.isUpdating = !1, this.nodes.forEach(resetTransformStyle), this.nodes.forEach(updateLayout), this.nodes.forEach(notifyLayoutUpdate), this.clearAllSnapshots();
|
|
17395
17378
|
const now2 = time.now();
|
|
17396
|
-
frameData.delta = clamp$
|
|
17379
|
+
frameData.delta = clamp$2(0, 1e3 / 60, now2 - frameData.timestamp), frameData.timestamp = now2, frameData.isProcessing = !0, frameSteps.update.process(frameData), frameSteps.preRender.process(frameData), frameSteps.render.process(frameData), frameData.isProcessing = !1;
|
|
17397
17380
|
}
|
|
17398
17381
|
didUpdate() {
|
|
17399
17382
|
this.updateScheduled || (this.updateScheduled = !0, microtask.read(this.scheduleUpdate));
|
|
@@ -17457,21 +17440,19 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
17457
17440
|
};
|
|
17458
17441
|
}
|
|
17459
17442
|
measurePageBox() {
|
|
17460
|
-
var _a;
|
|
17461
17443
|
const { visualElement } = this.options;
|
|
17462
17444
|
if (!visualElement)
|
|
17463
17445
|
return createBox();
|
|
17464
17446
|
const box = visualElement.measureViewportBox();
|
|
17465
|
-
if (!(
|
|
17447
|
+
if (!(this.scroll?.wasRoot || this.path.some(checkNodeWasScrollRoot))) {
|
|
17466
17448
|
const { scroll } = this.root;
|
|
17467
17449
|
scroll && (translateAxis(box.x, scroll.offset.x), translateAxis(box.y, scroll.offset.y));
|
|
17468
17450
|
}
|
|
17469
17451
|
return box;
|
|
17470
17452
|
}
|
|
17471
17453
|
removeElementScroll(box) {
|
|
17472
|
-
var _a;
|
|
17473
17454
|
const boxWithoutScroll = createBox();
|
|
17474
|
-
if (copyBoxInto(boxWithoutScroll, box),
|
|
17455
|
+
if (copyBoxInto(boxWithoutScroll, box), this.scroll?.wasRoot)
|
|
17475
17456
|
return boxWithoutScroll;
|
|
17476
17457
|
for (let i2 = 0; i2 < this.path.length; i2++) {
|
|
17477
17458
|
const node2 = this.path[i2], { scroll, options } = node2;
|
|
@@ -17521,11 +17502,10 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
17521
17502
|
this.relativeParent && this.relativeParent.resolvedRelativeTargetAt !== frameData.timestamp && this.relativeParent.resolveTargetDelta(!0);
|
|
17522
17503
|
}
|
|
17523
17504
|
resolveTargetDelta(forceRecalculation = !1) {
|
|
17524
|
-
var _a;
|
|
17525
17505
|
const lead = this.getLead();
|
|
17526
17506
|
this.isProjectionDirty || (this.isProjectionDirty = lead.isProjectionDirty), this.isTransformDirty || (this.isTransformDirty = lead.isTransformDirty), this.isSharedProjectionDirty || (this.isSharedProjectionDirty = lead.isSharedProjectionDirty);
|
|
17527
17507
|
const isShared = !!this.resumingFrom || this !== lead;
|
|
17528
|
-
if (!(forceRecalculation || isShared && this.isSharedProjectionDirty || this.isProjectionDirty ||
|
|
17508
|
+
if (!(forceRecalculation || isShared && this.isSharedProjectionDirty || this.isProjectionDirty || this.parent?.isProjectionDirty || this.attemptToResolveRelativeTarget || this.root.updateBlockedByResize))
|
|
17529
17509
|
return;
|
|
17530
17510
|
const { layout: layout2, layoutId } = this.options;
|
|
17531
17511
|
if (!(!this.layout || !(layout2 || layoutId))) {
|
|
@@ -17548,10 +17528,9 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
17548
17528
|
return !!((this.relativeTarget || this.targetDelta || this.options.layoutRoot) && this.layout);
|
|
17549
17529
|
}
|
|
17550
17530
|
calcProjection() {
|
|
17551
|
-
var _a;
|
|
17552
17531
|
const lead = this.getLead(), isShared = !!this.resumingFrom || this !== lead;
|
|
17553
17532
|
let canSkip = !0;
|
|
17554
|
-
if ((this.isProjectionDirty ||
|
|
17533
|
+
if ((this.isProjectionDirty || this.parent?.isProjectionDirty) && (canSkip = !1), isShared && (this.isSharedProjectionDirty || this.isTransformDirty) && (canSkip = !1), this.resolvedRelativeTargetAt === frameData.timestamp && (canSkip = !1), canSkip)
|
|
17555
17534
|
return;
|
|
17556
17535
|
const { layout: layout2, layoutId } = this.options;
|
|
17557
17536
|
if (this.isTreeAnimating = !!(this.parent && this.parent.isTreeAnimating || this.currentAnimation || this.pendingAnimation), this.isTreeAnimating || (this.targetDelta = this.relativeTarget = void 0), !this.layout || !(layout2 || layoutId))
|
|
@@ -17573,8 +17552,7 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
17573
17552
|
this.isVisible = !0;
|
|
17574
17553
|
}
|
|
17575
17554
|
scheduleRender(notifyAll = !0) {
|
|
17576
|
-
|
|
17577
|
-
if ((_a = this.options.visualElement) === null || _a === void 0 || _a.scheduleRender(), notifyAll) {
|
|
17555
|
+
if (this.options.visualElement?.scheduleRender(), notifyAll) {
|
|
17578
17556
|
const stack = this.getStack();
|
|
17579
17557
|
stack && stack.scheduleRender();
|
|
17580
17558
|
}
|
|
@@ -17644,14 +17622,12 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
17644
17622
|
return stack ? stack.lead === this : !0;
|
|
17645
17623
|
}
|
|
17646
17624
|
getLead() {
|
|
17647
|
-
var _a;
|
|
17648
17625
|
const { layoutId } = this.options;
|
|
17649
|
-
return layoutId ?
|
|
17626
|
+
return layoutId ? this.getStack()?.lead || this : this;
|
|
17650
17627
|
}
|
|
17651
17628
|
getPrevLead() {
|
|
17652
|
-
var _a;
|
|
17653
17629
|
const { layoutId } = this.options;
|
|
17654
|
-
return layoutId ?
|
|
17630
|
+
return layoutId ? this.getStack()?.prevLead : void 0;
|
|
17655
17631
|
}
|
|
17656
17632
|
getStack() {
|
|
17657
17633
|
const { layoutId } = this.options;
|
|
@@ -17684,7 +17660,6 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
17684
17660
|
visualElement.scheduleRender();
|
|
17685
17661
|
}
|
|
17686
17662
|
getProjectionStyles(styleProp) {
|
|
17687
|
-
var _a, _b;
|
|
17688
17663
|
if (!this.instance || this.isSVG)
|
|
17689
17664
|
return;
|
|
17690
17665
|
if (!this.isVisible)
|
|
@@ -17702,7 +17677,7 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
17702
17677
|
const valuesToRender = lead.animationValues || lead.latestValues;
|
|
17703
17678
|
this.applyTransformsToTarget(), styles.transform = buildProjectionTransform(this.projectionDeltaWithTransform, this.treeScale, valuesToRender), transformTemplate && (styles.transform = transformTemplate(valuesToRender, styles.transform));
|
|
17704
17679
|
const { x: x2, y: y2 } = this.projectionDelta;
|
|
17705
|
-
styles.transformOrigin = `${x2.origin * 100}% ${y2.origin * 100}% 0`, lead.animationValues ? styles.opacity = lead === this ?
|
|
17680
|
+
styles.transformOrigin = `${x2.origin * 100}% ${y2.origin * 100}% 0`, lead.animationValues ? styles.opacity = lead === this ? valuesToRender.opacity ?? this.latestValues.opacity ?? 1 : this.preserveOpacity ? this.latestValues.opacity : valuesToRender.opacityExit : styles.opacity = lead === this ? valuesToRender.opacity !== void 0 ? valuesToRender.opacity : "" : valuesToRender.opacityExit !== void 0 ? valuesToRender.opacityExit : 0;
|
|
17706
17681
|
for (const key2 in scaleCorrectors) {
|
|
17707
17682
|
if (valuesToRender[key2] === void 0)
|
|
17708
17683
|
continue;
|
|
@@ -17721,10 +17696,7 @@ function createProjectionNode({ attachResizeListener, defaultParent, measureScro
|
|
|
17721
17696
|
}
|
|
17722
17697
|
// Only run on root
|
|
17723
17698
|
resetTree() {
|
|
17724
|
-
this.root.nodes.forEach((node2) =>
|
|
17725
|
-
var _a;
|
|
17726
|
-
return (_a = node2.currentAnimation) === null || _a === void 0 ? void 0 : _a.stop();
|
|
17727
|
-
}), this.root.nodes.forEach(clearMeasurements), this.root.sharedNodes.clear();
|
|
17699
|
+
this.root.nodes.forEach((node2) => node2.currentAnimation?.stop()), this.root.nodes.forEach(clearMeasurements), this.root.sharedNodes.clear();
|
|
17728
17700
|
}
|
|
17729
17701
|
};
|
|
17730
17702
|
}
|
|
@@ -17732,8 +17704,7 @@ function updateLayout(node2) {
|
|
|
17732
17704
|
node2.updateLayout();
|
|
17733
17705
|
}
|
|
17734
17706
|
function notifyLayoutUpdate(node2) {
|
|
17735
|
-
|
|
17736
|
-
const snapshot = ((_a = node2.resumeFrom) === null || _a === void 0 ? void 0 : _a.snapshot) || node2.snapshot;
|
|
17707
|
+
const snapshot = node2.resumeFrom?.snapshot || node2.snapshot;
|
|
17737
17708
|
if (node2.isLead() && node2.layout && snapshot && node2.hasListeners("didUpdate")) {
|
|
17738
17709
|
const { layoutBox: layout2, measuredBox: measuredLayout } = node2.layout, { animationType } = node2.options, isShared = snapshot.source !== node2.layout.source;
|
|
17739
17710
|
animationType === "size" ? eachAxis((axis) => {
|
|
@@ -17835,8 +17806,7 @@ function shouldAnimatePositionOnly(animationType, snapshot, layout2) {
|
|
|
17835
17806
|
return animationType === "position" || animationType === "preserve-aspect" && !isNear(aspectRatio(snapshot), aspectRatio(layout2), 0.2);
|
|
17836
17807
|
}
|
|
17837
17808
|
function checkNodeWasScrollRoot(node2) {
|
|
17838
|
-
|
|
17839
|
-
return node2 !== node2.root && ((_a = node2.scroll) === null || _a === void 0 ? void 0 : _a.wasRoot);
|
|
17809
|
+
return node2 !== node2.root && node2.scroll?.wasRoot;
|
|
17840
17810
|
}
|
|
17841
17811
|
const DocumentProjectionNode = createProjectionNode({
|
|
17842
17812
|
attachResizeListener: (ref, notify2) => addDomEvent(ref, "resize", notify2),
|
|
@@ -18199,8 +18169,7 @@ class VisualElement {
|
|
|
18199
18169
|
* directly from the instance (which might have performance implications).
|
|
18200
18170
|
*/
|
|
18201
18171
|
readValue(key2, target) {
|
|
18202
|
-
|
|
18203
|
-
let value = this.latestValues[key2] !== void 0 || !this.current ? this.latestValues[key2] : (_a = this.getBaseTargetFromProps(this.props, key2)) !== null && _a !== void 0 ? _a : this.readValueFromInstance(this.current, key2, this.options);
|
|
18172
|
+
let value = this.latestValues[key2] !== void 0 || !this.current ? this.latestValues[key2] : this.getBaseTargetFromProps(this.props, key2) ?? this.readValueFromInstance(this.current, key2, this.options);
|
|
18204
18173
|
return value != null && (typeof value == "string" && (isNumericalString(value) || isZeroValueString(value)) ? value = parseFloat(value) : !findValueType(value) && complex.test(target) && (value = getAnimatableNone(key2, target)), this.setBaseTarget(key2, isMotionValue(value) ? value.get() : value)), isMotionValue(value) ? value.get() : value;
|
|
18205
18174
|
}
|
|
18206
18175
|
/**
|
|
@@ -18215,11 +18184,10 @@ class VisualElement {
|
|
|
18215
18184
|
* props.
|
|
18216
18185
|
*/
|
|
18217
18186
|
getBaseTarget(key2) {
|
|
18218
|
-
var _a;
|
|
18219
18187
|
const { initial } = this.props;
|
|
18220
18188
|
let valueFromInitial;
|
|
18221
18189
|
if (typeof initial == "string" || typeof initial == "object") {
|
|
18222
|
-
const variant = resolveVariantFromProps(this.props, initial,
|
|
18190
|
+
const variant = resolveVariantFromProps(this.props, initial, this.presenceContext?.custom);
|
|
18223
18191
|
variant && (valueFromInitial = variant[key2]);
|
|
18224
18192
|
}
|
|
18225
18193
|
if (initial && valueFromInitial !== void 0)
|
|
@@ -18357,8 +18325,7 @@ function calculateRepeatDuration(duration, repeat, _repeatDelay) {
|
|
|
18357
18325
|
return duration * (repeat + 1);
|
|
18358
18326
|
}
|
|
18359
18327
|
function calcNextTime(current, next, prev, labels) {
|
|
18360
|
-
|
|
18361
|
-
return typeof next == "number" ? next : next.startsWith("-") || next.startsWith("+") ? Math.max(0, current + parseFloat(next)) : next === "<" ? prev : (_a = labels.get(next)) !== null && _a !== void 0 ? _a : current;
|
|
18328
|
+
return typeof next == "number" ? next : next.startsWith("-") || next.startsWith("+") ? Math.max(0, current + parseFloat(next)) : next === "<" ? prev : labels.get(next) ?? current;
|
|
18362
18329
|
}
|
|
18363
18330
|
function eraseKeyframes(sequence, startTime, endTime) {
|
|
18364
18331
|
for (let i2 = 0; i2 < sequence.length; i2++) {
|
|
@@ -18578,7 +18545,7 @@ function isSequence(value) {
|
|
|
18578
18545
|
function createScopedAnimate(scope) {
|
|
18579
18546
|
function scopedAnimate(subjectOrSequence, optionsOrKeyframes, options) {
|
|
18580
18547
|
let animations2 = [];
|
|
18581
|
-
return isSequence(subjectOrSequence) ? animations2 = animateSequence(subjectOrSequence, optionsOrKeyframes, scope) : animations2 = animateSubject(subjectOrSequence, optionsOrKeyframes, options, scope), new
|
|
18548
|
+
return isSequence(subjectOrSequence) ? animations2 = animateSequence(subjectOrSequence, optionsOrKeyframes, scope) : animations2 = animateSubject(subjectOrSequence, optionsOrKeyframes, options, scope), new GroupAnimationWithThen(animations2);
|
|
18582
18549
|
}
|
|
18583
18550
|
return scopedAnimate;
|
|
18584
18551
|
}
|
|
@@ -20789,18 +20756,18 @@ const errorMessages = {
|
|
|
20789
20756
|
[Number.NEGATIVE_INFINITY, Number.NEGATIVE_INFINITY],
|
|
20790
20757
|
[Number.POSITIVE_INFINITY, Number.POSITIVE_INFINITY]
|
|
20791
20758
|
], elementSelectionKeys = ["Enter", " ", "Escape"];
|
|
20792
|
-
var ConnectionMode;
|
|
20759
|
+
var ConnectionMode$1;
|
|
20793
20760
|
(function(ConnectionMode2) {
|
|
20794
20761
|
ConnectionMode2.Strict = "strict", ConnectionMode2.Loose = "loose";
|
|
20795
|
-
})(ConnectionMode || (ConnectionMode = {}));
|
|
20796
|
-
var PanOnScrollMode;
|
|
20762
|
+
})(ConnectionMode$1 || (ConnectionMode$1 = {}));
|
|
20763
|
+
var PanOnScrollMode$1;
|
|
20797
20764
|
(function(PanOnScrollMode2) {
|
|
20798
20765
|
PanOnScrollMode2.Free = "free", PanOnScrollMode2.Vertical = "vertical", PanOnScrollMode2.Horizontal = "horizontal";
|
|
20799
|
-
})(PanOnScrollMode || (PanOnScrollMode = {}));
|
|
20800
|
-
var SelectionMode;
|
|
20766
|
+
})(PanOnScrollMode$1 || (PanOnScrollMode$1 = {}));
|
|
20767
|
+
var SelectionMode$1;
|
|
20801
20768
|
(function(SelectionMode2) {
|
|
20802
20769
|
SelectionMode2.Partial = "partial", SelectionMode2.Full = "full";
|
|
20803
|
-
})(SelectionMode || (SelectionMode = {}));
|
|
20770
|
+
})(SelectionMode$1 || (SelectionMode$1 = {}));
|
|
20804
20771
|
const initialConnection = {
|
|
20805
20772
|
inProgress: !1,
|
|
20806
20773
|
isValid: null,
|
|
@@ -20813,29 +20780,29 @@ const initialConnection = {
|
|
|
20813
20780
|
toPosition: null,
|
|
20814
20781
|
toNode: null
|
|
20815
20782
|
};
|
|
20816
|
-
var ConnectionLineType;
|
|
20783
|
+
var ConnectionLineType$1;
|
|
20817
20784
|
(function(ConnectionLineType2) {
|
|
20818
20785
|
ConnectionLineType2.Bezier = "default", ConnectionLineType2.Straight = "straight", ConnectionLineType2.Step = "step", ConnectionLineType2.SmoothStep = "smoothstep", ConnectionLineType2.SimpleBezier = "simplebezier";
|
|
20819
|
-
})(ConnectionLineType || (ConnectionLineType = {}));
|
|
20820
|
-
var MarkerType;
|
|
20786
|
+
})(ConnectionLineType$1 || (ConnectionLineType$1 = {}));
|
|
20787
|
+
var MarkerType$1;
|
|
20821
20788
|
(function(MarkerType2) {
|
|
20822
20789
|
MarkerType2.Arrow = "arrow", MarkerType2.ArrowClosed = "arrowclosed";
|
|
20823
|
-
})(MarkerType || (MarkerType = {}));
|
|
20824
|
-
var Position;
|
|
20790
|
+
})(MarkerType$1 || (MarkerType$1 = {}));
|
|
20791
|
+
var Position$1;
|
|
20825
20792
|
(function(Position2) {
|
|
20826
20793
|
Position2.Left = "left", Position2.Top = "top", Position2.Right = "right", Position2.Bottom = "bottom";
|
|
20827
|
-
})(Position || (Position = {}));
|
|
20794
|
+
})(Position$1 || (Position$1 = {}));
|
|
20828
20795
|
const oppositePosition = {
|
|
20829
|
-
[Position.Left]: Position.Right,
|
|
20830
|
-
[Position.Right]: Position.Left,
|
|
20831
|
-
[Position.Top]: Position.Bottom,
|
|
20832
|
-
[Position.Bottom]: Position.Top
|
|
20796
|
+
[Position$1.Left]: Position$1.Right,
|
|
20797
|
+
[Position$1.Right]: Position$1.Left,
|
|
20798
|
+
[Position$1.Top]: Position$1.Bottom,
|
|
20799
|
+
[Position$1.Bottom]: Position$1.Top
|
|
20833
20800
|
};
|
|
20834
20801
|
function getConnectionStatus(isValid) {
|
|
20835
20802
|
return isValid === null ? null : isValid ? "valid" : "invalid";
|
|
20836
20803
|
}
|
|
20837
|
-
const isEdgeBase = (element) => "id" in element && "source" in element && "target" in element, isNodeBase = (element) => "id" in element && "position" in element && !("source" in element) && !("target" in element), isInternalNodeBase = (element) => "id" in element && "internals" in element && !("source" in element) && !("target" in element), getNodePositionWithOrigin = (node2, nodeOrigin = [0, 0]) => {
|
|
20838
|
-
const { width, height } = getNodeDimensions(node2), origin = node2.origin ?? nodeOrigin, offsetX = width * origin[0], offsetY = height * origin[1];
|
|
20804
|
+
const isEdgeBase = (element) => "id" in element && "source" in element && "target" in element, isNodeBase = (element) => "id" in element && "position" in element && !("source" in element) && !("target" in element), isInternalNodeBase$1 = (element) => "id" in element && "internals" in element && !("source" in element) && !("target" in element), getNodePositionWithOrigin$1 = (node2, nodeOrigin = [0, 0]) => {
|
|
20805
|
+
const { width, height } = getNodeDimensions$1(node2), origin = node2.origin ?? nodeOrigin, offsetX = width * origin[0], offsetY = height * origin[1];
|
|
20839
20806
|
return {
|
|
20840
20807
|
x: node2.position.x - offsetX,
|
|
20841
20808
|
y: node2.position.y - offsetY
|
|
@@ -20846,11 +20813,11 @@ const isEdgeBase = (element) => "id" in element && "source" in element && "targe
|
|
|
20846
20813
|
const box = nodes.reduce((currBox, nodeOrId) => {
|
|
20847
20814
|
const isId = typeof nodeOrId == "string";
|
|
20848
20815
|
let currentNode = !params.nodeLookup && !isId ? nodeOrId : void 0;
|
|
20849
|
-
params.nodeLookup && (currentNode = isId ? params.nodeLookup.get(nodeOrId) : isInternalNodeBase(nodeOrId) ? nodeOrId : params.nodeLookup.get(nodeOrId.id));
|
|
20816
|
+
params.nodeLookup && (currentNode = isId ? params.nodeLookup.get(nodeOrId) : isInternalNodeBase$1(nodeOrId) ? nodeOrId : params.nodeLookup.get(nodeOrId.id));
|
|
20850
20817
|
const nodeBox = currentNode ? nodeToBox(currentNode, params.nodeOrigin) : { x: 0, y: 0, x2: 0, y2: 0 };
|
|
20851
|
-
return getBoundsOfBoxes(currBox, nodeBox);
|
|
20818
|
+
return getBoundsOfBoxes$1(currBox, nodeBox);
|
|
20852
20819
|
}, { x: 1 / 0, y: 1 / 0, x2: -1 / 0, y2: -1 / 0 });
|
|
20853
|
-
return boxToRect(box);
|
|
20820
|
+
return boxToRect$1(box);
|
|
20854
20821
|
}, getInternalNodesBounds = (nodeLookup, params = {}) => {
|
|
20855
20822
|
if (nodeLookup.size === 0)
|
|
20856
20823
|
return { x: 0, y: 0, width: 0, height: 0 };
|
|
@@ -20858,9 +20825,9 @@ const isEdgeBase = (element) => "id" in element && "source" in element && "targe
|
|
|
20858
20825
|
return nodeLookup.forEach((node2) => {
|
|
20859
20826
|
if (params.filter === void 0 || params.filter(node2)) {
|
|
20860
20827
|
const nodeBox = nodeToBox(node2);
|
|
20861
|
-
box = getBoundsOfBoxes(box, nodeBox);
|
|
20828
|
+
box = getBoundsOfBoxes$1(box, nodeBox);
|
|
20862
20829
|
}
|
|
20863
|
-
}), boxToRect(box);
|
|
20830
|
+
}), boxToRect$1(box);
|
|
20864
20831
|
}, getNodesInside = (nodes, rect, [tx, ty, tScale] = [0, 0, 1], partially = !1, excludeNonSelectableNodes = !1) => {
|
|
20865
20832
|
const paneRect = {
|
|
20866
20833
|
...pointToRendererPoint(rect, [tx, ty, tScale]),
|
|
@@ -20871,7 +20838,7 @@ const isEdgeBase = (element) => "id" in element && "source" in element && "targe
|
|
|
20871
20838
|
const { measured, selectable = !0, hidden: hidden2 = !1 } = node2;
|
|
20872
20839
|
if (excludeNonSelectableNodes && !selectable || hidden2)
|
|
20873
20840
|
continue;
|
|
20874
|
-
const width = measured.width ?? node2.width ?? node2.initialWidth ?? null, height = measured.height ?? node2.height ?? node2.initialHeight ?? null, overlappingArea = getOverlappingArea(paneRect, nodeToRect(node2)), area = (width ?? 0) * (height ?? 0), partiallyVisible = partially && overlappingArea > 0;
|
|
20841
|
+
const width = measured.width ?? node2.width ?? node2.initialWidth ?? null, height = measured.height ?? node2.height ?? node2.initialHeight ?? null, overlappingArea = getOverlappingArea(paneRect, nodeToRect$1(node2)), area = (width ?? 0) * (height ?? 0), partiallyVisible = partially && overlappingArea > 0;
|
|
20875
20842
|
(!node2.internals.handleBounds || partiallyVisible || overlappingArea >= area || node2.dragging) && visibleNodes.push(node2);
|
|
20876
20843
|
}
|
|
20877
20844
|
return visibleNodes;
|
|
@@ -20890,7 +20857,7 @@ function getFitViewNodes(nodeLookup, options) {
|
|
|
20890
20857
|
async function fitViewport({ nodes, width, height, panZoom, minZoom, maxZoom }, options) {
|
|
20891
20858
|
if (nodes.size === 0)
|
|
20892
20859
|
return Promise.resolve(!0);
|
|
20893
|
-
const nodesToFit = getFitViewNodes(nodes, options), bounds = getInternalNodesBounds(nodesToFit), viewport = getViewportForBounds(bounds, width, height, options?.minZoom ?? minZoom, options?.maxZoom ?? maxZoom, options?.padding ?? 0.1);
|
|
20860
|
+
const nodesToFit = getFitViewNodes(nodes, options), bounds = getInternalNodesBounds(nodesToFit), viewport = getViewportForBounds$1(bounds, width, height, options?.minZoom ?? minZoom, options?.maxZoom ?? maxZoom, options?.padding ?? 0.1);
|
|
20894
20861
|
return await panZoom.setViewport(viewport, { duration: options?.duration }), Promise.resolve(!0);
|
|
20895
20862
|
}
|
|
20896
20863
|
function calculateNodePosition({ nodeId, nextPosition, nodeLookup, nodeOrigin = [0, 0], nodeExtent, onError }) {
|
|
@@ -20941,37 +20908,37 @@ async function getElementsToRemove({ nodesToRemove = [], edgesToRemove = [], nod
|
|
|
20941
20908
|
});
|
|
20942
20909
|
return typeof onBeforeDeleteResult == "boolean" ? onBeforeDeleteResult ? { edges: matchingEdges, nodes: matchingNodes } : { edges: [], nodes: [] } : onBeforeDeleteResult;
|
|
20943
20910
|
}
|
|
20944
|
-
const clamp = (val, min2 = 0, max2 = 1) => Math.min(Math.max(val, min2), max2), clampPosition = (position = { x: 0, y: 0 }, extent, dimensions) => ({
|
|
20945
|
-
x: clamp(position.x, extent[0][0], extent[1][0] - (dimensions?.width ?? 0)),
|
|
20946
|
-
y: clamp(position.y, extent[0][1], extent[1][1] - (dimensions?.height ?? 0))
|
|
20911
|
+
const clamp$1 = (val, min2 = 0, max2 = 1) => Math.min(Math.max(val, min2), max2), clampPosition = (position = { x: 0, y: 0 }, extent, dimensions) => ({
|
|
20912
|
+
x: clamp$1(position.x, extent[0][0], extent[1][0] - (dimensions?.width ?? 0)),
|
|
20913
|
+
y: clamp$1(position.y, extent[0][1], extent[1][1] - (dimensions?.height ?? 0))
|
|
20947
20914
|
});
|
|
20948
20915
|
function clampPositionToParent(childPosition, childDimensions, parent) {
|
|
20949
|
-
const { width: parentWidth, height: parentHeight } = getNodeDimensions(parent), { x: parentX, y: parentY } = parent.internals.positionAbsolute;
|
|
20916
|
+
const { width: parentWidth, height: parentHeight } = getNodeDimensions$1(parent), { x: parentX, y: parentY } = parent.internals.positionAbsolute;
|
|
20950
20917
|
return clampPosition(childPosition, [
|
|
20951
20918
|
[parentX, parentY],
|
|
20952
20919
|
[parentX + parentWidth, parentY + parentHeight]
|
|
20953
20920
|
], childDimensions);
|
|
20954
20921
|
}
|
|
20955
|
-
const calcAutoPanVelocity = (value, min2, max2) => value < min2 ? clamp(Math.abs(value - min2), 1, min2) / min2 : value > max2 ? -clamp(Math.abs(value - max2), 1, min2) / min2 : 0, calcAutoPan = (pos, bounds, speed = 15, distance2 = 40) => {
|
|
20922
|
+
const calcAutoPanVelocity = (value, min2, max2) => value < min2 ? clamp$1(Math.abs(value - min2), 1, min2) / min2 : value > max2 ? -clamp$1(Math.abs(value - max2), 1, min2) / min2 : 0, calcAutoPan = (pos, bounds, speed = 15, distance2 = 40) => {
|
|
20956
20923
|
const xMovement = calcAutoPanVelocity(pos.x, distance2, bounds.width - distance2) * speed, yMovement = calcAutoPanVelocity(pos.y, distance2, bounds.height - distance2) * speed;
|
|
20957
20924
|
return [xMovement, yMovement];
|
|
20958
|
-
}, getBoundsOfBoxes = (box1, box2) => ({
|
|
20925
|
+
}, getBoundsOfBoxes$1 = (box1, box2) => ({
|
|
20959
20926
|
x: Math.min(box1.x, box2.x),
|
|
20960
20927
|
y: Math.min(box1.y, box2.y),
|
|
20961
20928
|
x2: Math.max(box1.x2, box2.x2),
|
|
20962
20929
|
y2: Math.max(box1.y2, box2.y2)
|
|
20963
|
-
}), rectToBox = ({ x: x2, y: y2, width, height }) => ({
|
|
20930
|
+
}), rectToBox$1 = ({ x: x2, y: y2, width, height }) => ({
|
|
20964
20931
|
x: x2,
|
|
20965
20932
|
y: y2,
|
|
20966
20933
|
x2: x2 + width,
|
|
20967
20934
|
y2: y2 + height
|
|
20968
|
-
}), boxToRect = ({ x: x2, y: y2, x2: x22, y2: y22 }) => ({
|
|
20935
|
+
}), boxToRect$1 = ({ x: x2, y: y2, x2: x22, y2: y22 }) => ({
|
|
20969
20936
|
x: x2,
|
|
20970
20937
|
y: y2,
|
|
20971
20938
|
width: x22 - x2,
|
|
20972
20939
|
height: y22 - y2
|
|
20973
|
-
}), nodeToRect = (node2, nodeOrigin = [0, 0]) => {
|
|
20974
|
-
const { x: x2, y: y2 } = isInternalNodeBase(node2) ? node2.internals.positionAbsolute : getNodePositionWithOrigin(node2, nodeOrigin);
|
|
20940
|
+
}), nodeToRect$1 = (node2, nodeOrigin = [0, 0]) => {
|
|
20941
|
+
const { x: x2, y: y2 } = isInternalNodeBase$1(node2) ? node2.internals.positionAbsolute : getNodePositionWithOrigin$1(node2, nodeOrigin);
|
|
20975
20942
|
return {
|
|
20976
20943
|
x: x2,
|
|
20977
20944
|
y: y2,
|
|
@@ -20979,14 +20946,14 @@ const calcAutoPanVelocity = (value, min2, max2) => value < min2 ? clamp(Math.abs
|
|
|
20979
20946
|
height: node2.measured?.height ?? node2.height ?? node2.initialHeight ?? 0
|
|
20980
20947
|
};
|
|
20981
20948
|
}, nodeToBox = (node2, nodeOrigin = [0, 0]) => {
|
|
20982
|
-
const { x: x2, y: y2 } = isInternalNodeBase(node2) ? node2.internals.positionAbsolute : getNodePositionWithOrigin(node2, nodeOrigin);
|
|
20949
|
+
const { x: x2, y: y2 } = isInternalNodeBase$1(node2) ? node2.internals.positionAbsolute : getNodePositionWithOrigin$1(node2, nodeOrigin);
|
|
20983
20950
|
return {
|
|
20984
20951
|
x: x2,
|
|
20985
20952
|
y: y2,
|
|
20986
20953
|
x2: x2 + (node2.measured?.width ?? node2.width ?? node2.initialWidth ?? 0),
|
|
20987
20954
|
y2: y2 + (node2.measured?.height ?? node2.height ?? node2.initialHeight ?? 0)
|
|
20988
20955
|
};
|
|
20989
|
-
}, getBoundsOfRects = (rect1, rect2) => boxToRect(getBoundsOfBoxes(rectToBox(rect1), rectToBox(rect2))), getOverlappingArea = (rectA, rectB) => {
|
|
20956
|
+
}, getBoundsOfRects$1 = (rect1, rect2) => boxToRect$1(getBoundsOfBoxes$1(rectToBox$1(rect1), rectToBox$1(rect2))), getOverlappingArea = (rectA, rectB) => {
|
|
20990
20957
|
const xOverlap = Math.max(0, Math.min(rectA.x + rectA.width, rectB.x + rectB.width) - Math.max(rectA.x, rectB.x)), yOverlap = Math.max(0, Math.min(rectA.y + rectA.height, rectB.y + rectB.height) - Math.max(rectA.y, rectB.y));
|
|
20991
20958
|
return Math.ceil(xOverlap * yOverlap);
|
|
20992
20959
|
}, isRectObject = (obj) => isNumeric(obj.width) && isNumeric(obj.height) && isNumeric(obj.x) && isNumeric(obj.y), isNumeric = (n2) => !isNaN(n2) && isFinite(n2), devWarn = (id2, message) => {
|
|
@@ -20999,11 +20966,11 @@ const calcAutoPanVelocity = (value, min2, max2) => value < min2 ? clamp(Math.abs
|
|
|
20999
20966
|
y: (y2 - ty) / tScale
|
|
21000
20967
|
};
|
|
21001
20968
|
return snapToGrid ? snapPosition(position, snapGrid) : position;
|
|
21002
|
-
}, rendererPointToPoint = ({ x: x2, y: y2 }, [tx, ty, tScale]) => ({
|
|
20969
|
+
}, rendererPointToPoint$1 = ({ x: x2, y: y2 }, [tx, ty, tScale]) => ({
|
|
21003
20970
|
x: x2 * tScale + tx,
|
|
21004
20971
|
y: y2 * tScale + ty
|
|
21005
20972
|
});
|
|
21006
|
-
function parsePadding(padding, viewport) {
|
|
20973
|
+
function parsePadding$1(padding, viewport) {
|
|
21007
20974
|
if (typeof padding == "number")
|
|
21008
20975
|
return Math.floor(viewport - viewport / (1 + padding));
|
|
21009
20976
|
if (typeof padding == "string" && padding.endsWith("px")) {
|
|
@@ -21018,9 +20985,9 @@ function parsePadding(padding, viewport) {
|
|
|
21018
20985
|
}
|
|
21019
20986
|
return console.error(`[React Flow] The padding value "${padding}" is invalid. Please provide a number or a string with a valid unit (px or %).`), 0;
|
|
21020
20987
|
}
|
|
21021
|
-
function parsePaddings(padding, width, height) {
|
|
20988
|
+
function parsePaddings$1(padding, width, height) {
|
|
21022
20989
|
if (typeof padding == "string" || typeof padding == "number") {
|
|
21023
|
-
const paddingY = parsePadding(padding, height), paddingX = parsePadding(padding, width);
|
|
20990
|
+
const paddingY = parsePadding$1(padding, height), paddingX = parsePadding$1(padding, width);
|
|
21024
20991
|
return {
|
|
21025
20992
|
top: paddingY,
|
|
21026
20993
|
right: paddingX,
|
|
@@ -21031,13 +20998,13 @@ function parsePaddings(padding, width, height) {
|
|
|
21031
20998
|
};
|
|
21032
20999
|
}
|
|
21033
21000
|
if (typeof padding == "object") {
|
|
21034
|
-
const top = parsePadding(padding.top ?? padding.y ?? 0, height), bottom = parsePadding(padding.bottom ?? padding.y ?? 0, height), left = parsePadding(padding.left ?? padding.x ?? 0, width), right = parsePadding(padding.right ?? padding.x ?? 0, width);
|
|
21001
|
+
const top = parsePadding$1(padding.top ?? padding.y ?? 0, height), bottom = parsePadding$1(padding.bottom ?? padding.y ?? 0, height), left = parsePadding$1(padding.left ?? padding.x ?? 0, width), right = parsePadding$1(padding.right ?? padding.x ?? 0, width);
|
|
21035
21002
|
return { top, right, bottom, left, x: left + right, y: top + bottom };
|
|
21036
21003
|
}
|
|
21037
21004
|
return { top: 0, right: 0, bottom: 0, left: 0, x: 0, y: 0 };
|
|
21038
21005
|
}
|
|
21039
|
-
function calculateAppliedPaddings(bounds, x2, y2, zoom2, width, height) {
|
|
21040
|
-
const { x: left, y: top } = rendererPointToPoint(bounds, [x2, y2, zoom2]), { x: boundRight, y: boundBottom } = rendererPointToPoint({ x: bounds.x + bounds.width, y: bounds.y + bounds.height }, [x2, y2, zoom2]), right = width - boundRight, bottom = height - boundBottom;
|
|
21006
|
+
function calculateAppliedPaddings$1(bounds, x2, y2, zoom2, width, height) {
|
|
21007
|
+
const { x: left, y: top } = rendererPointToPoint$1(bounds, [x2, y2, zoom2]), { x: boundRight, y: boundBottom } = rendererPointToPoint$1({ x: bounds.x + bounds.width, y: bounds.y + bounds.height }, [x2, y2, zoom2]), right = width - boundRight, bottom = height - boundBottom;
|
|
21041
21008
|
return {
|
|
21042
21009
|
left: Math.floor(left),
|
|
21043
21010
|
top: Math.floor(top),
|
|
@@ -21045,8 +21012,8 @@ function calculateAppliedPaddings(bounds, x2, y2, zoom2, width, height) {
|
|
|
21045
21012
|
bottom: Math.floor(bottom)
|
|
21046
21013
|
};
|
|
21047
21014
|
}
|
|
21048
|
-
const getViewportForBounds = (bounds, width, height, minZoom, maxZoom, padding) => {
|
|
21049
|
-
const p2 = parsePaddings(padding, width, height), xZoom = (width - p2.x) / bounds.width, yZoom = (height - p2.y) / bounds.height, zoom2 = Math.min(xZoom, yZoom), clampedZoom = clamp(zoom2, minZoom, maxZoom), boundsCenterX = bounds.x + bounds.width / 2, boundsCenterY = bounds.y + bounds.height / 2, x2 = width / 2 - boundsCenterX * clampedZoom, y2 = height / 2 - boundsCenterY * clampedZoom, newPadding = calculateAppliedPaddings(bounds, x2, y2, clampedZoom, width, height), offset2 = {
|
|
21015
|
+
const getViewportForBounds$1 = (bounds, width, height, minZoom, maxZoom, padding) => {
|
|
21016
|
+
const p2 = parsePaddings$1(padding, width, height), xZoom = (width - p2.x) / bounds.width, yZoom = (height - p2.y) / bounds.height, zoom2 = Math.min(xZoom, yZoom), clampedZoom = clamp$1(zoom2, minZoom, maxZoom), boundsCenterX = bounds.x + bounds.width / 2, boundsCenterY = bounds.y + bounds.height / 2, x2 = width / 2 - boundsCenterX * clampedZoom, y2 = height / 2 - boundsCenterY * clampedZoom, newPadding = calculateAppliedPaddings$1(bounds, x2, y2, clampedZoom, width, height), offset2 = {
|
|
21050
21017
|
left: Math.min(newPadding.left - p2.left, 0),
|
|
21051
21018
|
top: Math.min(newPadding.top - p2.top, 0),
|
|
21052
21019
|
right: Math.min(newPadding.right - p2.right, 0),
|
|
@@ -21057,11 +21024,11 @@ const getViewportForBounds = (bounds, width, height, minZoom, maxZoom, padding)
|
|
|
21057
21024
|
y: y2 - offset2.top + offset2.bottom,
|
|
21058
21025
|
zoom: clampedZoom
|
|
21059
21026
|
};
|
|
21060
|
-
}, isMacOs = () => typeof navigator < "u" && navigator?.userAgent?.indexOf("Mac") >= 0;
|
|
21027
|
+
}, isMacOs$1 = () => typeof navigator < "u" && navigator?.userAgent?.indexOf("Mac") >= 0;
|
|
21061
21028
|
function isCoordinateExtent(extent) {
|
|
21062
21029
|
return extent !== void 0 && extent !== "parent";
|
|
21063
21030
|
}
|
|
21064
|
-
function getNodeDimensions(node2) {
|
|
21031
|
+
function getNodeDimensions$1(node2) {
|
|
21065
21032
|
return {
|
|
21066
21033
|
width: node2.measured?.width ?? node2.width ?? node2.initialWidth ?? 0,
|
|
21067
21034
|
height: node2.measured?.height ?? node2.height ?? node2.initialHeight ?? 0
|
|
@@ -21123,41 +21090,41 @@ const isMouseEvent = (event) => "clientX" in event, getEventPosition = (event, b
|
|
|
21123
21090
|
};
|
|
21124
21091
|
});
|
|
21125
21092
|
};
|
|
21126
|
-
function getBezierEdgeCenter({ sourceX, sourceY, targetX, targetY, sourceControlX, sourceControlY, targetControlX, targetControlY }) {
|
|
21093
|
+
function getBezierEdgeCenter$1({ sourceX, sourceY, targetX, targetY, sourceControlX, sourceControlY, targetControlX, targetControlY }) {
|
|
21127
21094
|
const centerX = sourceX * 0.125 + sourceControlX * 0.375 + targetControlX * 0.375 + targetX * 0.125, centerY2 = sourceY * 0.125 + sourceControlY * 0.375 + targetControlY * 0.375 + targetY * 0.125, offsetX = Math.abs(centerX - sourceX), offsetY = Math.abs(centerY2 - sourceY);
|
|
21128
21095
|
return [centerX, centerY2, offsetX, offsetY];
|
|
21129
21096
|
}
|
|
21130
|
-
function calculateControlOffset(distance2, curvature) {
|
|
21097
|
+
function calculateControlOffset$1(distance2, curvature) {
|
|
21131
21098
|
return distance2 >= 0 ? 0.5 * distance2 : curvature * 25 * Math.sqrt(-distance2);
|
|
21132
21099
|
}
|
|
21133
|
-
function getControlWithCurvature({ pos, x1, y1, x2, y2, c: c2 }) {
|
|
21100
|
+
function getControlWithCurvature$1({ pos, x1, y1, x2, y2, c: c2 }) {
|
|
21134
21101
|
switch (pos) {
|
|
21135
|
-
case Position.Left:
|
|
21136
|
-
return [x1 - calculateControlOffset(x1 - x2, c2), y1];
|
|
21137
|
-
case Position.Right:
|
|
21138
|
-
return [x1 + calculateControlOffset(x2 - x1, c2), y1];
|
|
21139
|
-
case Position.Top:
|
|
21140
|
-
return [x1, y1 - calculateControlOffset(y1 - y2, c2)];
|
|
21141
|
-
case Position.Bottom:
|
|
21142
|
-
return [x1, y1 + calculateControlOffset(y2 - y1, c2)];
|
|
21143
|
-
}
|
|
21144
|
-
}
|
|
21145
|
-
function getBezierPath({ sourceX, sourceY, sourcePosition = Position.Bottom, targetX, targetY, targetPosition = Position.Top, curvature = 0.25 }) {
|
|
21146
|
-
const [sourceControlX, sourceControlY] = getControlWithCurvature({
|
|
21102
|
+
case Position$1.Left:
|
|
21103
|
+
return [x1 - calculateControlOffset$1(x1 - x2, c2), y1];
|
|
21104
|
+
case Position$1.Right:
|
|
21105
|
+
return [x1 + calculateControlOffset$1(x2 - x1, c2), y1];
|
|
21106
|
+
case Position$1.Top:
|
|
21107
|
+
return [x1, y1 - calculateControlOffset$1(y1 - y2, c2)];
|
|
21108
|
+
case Position$1.Bottom:
|
|
21109
|
+
return [x1, y1 + calculateControlOffset$1(y2 - y1, c2)];
|
|
21110
|
+
}
|
|
21111
|
+
}
|
|
21112
|
+
function getBezierPath$1({ sourceX, sourceY, sourcePosition = Position$1.Bottom, targetX, targetY, targetPosition = Position$1.Top, curvature = 0.25 }) {
|
|
21113
|
+
const [sourceControlX, sourceControlY] = getControlWithCurvature$1({
|
|
21147
21114
|
pos: sourcePosition,
|
|
21148
21115
|
x1: sourceX,
|
|
21149
21116
|
y1: sourceY,
|
|
21150
21117
|
x2: targetX,
|
|
21151
21118
|
y2: targetY,
|
|
21152
21119
|
c: curvature
|
|
21153
|
-
}), [targetControlX, targetControlY] = getControlWithCurvature({
|
|
21120
|
+
}), [targetControlX, targetControlY] = getControlWithCurvature$1({
|
|
21154
21121
|
pos: targetPosition,
|
|
21155
21122
|
x1: targetX,
|
|
21156
21123
|
y1: targetY,
|
|
21157
21124
|
x2: sourceX,
|
|
21158
21125
|
y2: sourceY,
|
|
21159
21126
|
c: curvature
|
|
21160
|
-
}), [labelX, labelY, offsetX, offsetY] = getBezierEdgeCenter({
|
|
21127
|
+
}), [labelX, labelY, offsetX, offsetY] = getBezierEdgeCenter$1({
|
|
21161
21128
|
sourceX,
|
|
21162
21129
|
sourceY,
|
|
21163
21130
|
targetX,
|
|
@@ -21186,7 +21153,7 @@ function getElevatedEdgeZIndex({ sourceNode, targetNode, selected: selected2 = !
|
|
|
21186
21153
|
return zIndex + (edgeOrConnectedNodeSelected ? selectedZIndex : 0);
|
|
21187
21154
|
}
|
|
21188
21155
|
function isEdgeVisible({ sourceNode, targetNode, width, height, transform: transform2 }) {
|
|
21189
|
-
const edgeBox = getBoundsOfBoxes(nodeToBox(sourceNode), nodeToBox(targetNode));
|
|
21156
|
+
const edgeBox = getBoundsOfBoxes$1(nodeToBox(sourceNode), nodeToBox(targetNode));
|
|
21190
21157
|
edgeBox.x === edgeBox.x2 && (edgeBox.x2 += 1), edgeBox.y === edgeBox.y2 && (edgeBox.y2 += 1);
|
|
21191
21158
|
const viewRect = {
|
|
21192
21159
|
x: -transform2[0] / transform2[2],
|
|
@@ -21194,7 +21161,7 @@ function isEdgeVisible({ sourceNode, targetNode, width, height, transform: trans
|
|
|
21194
21161
|
width: width / transform2[2],
|
|
21195
21162
|
height: height / transform2[2]
|
|
21196
21163
|
};
|
|
21197
|
-
return getOverlappingArea(viewRect, boxToRect(edgeBox)) > 0;
|
|
21164
|
+
return getOverlappingArea(viewRect, boxToRect$1(edgeBox)) > 0;
|
|
21198
21165
|
}
|
|
21199
21166
|
const getEdgeId = ({ source, sourceHandle, target, targetHandle }) => `xy-edge__${source}${sourceHandle || ""}-${target}${targetHandle || ""}`, connectionExists = (edge, edges) => edges.some((el) => el.source === edge.source && el.target === edge.target && (el.sourceHandle === edge.sourceHandle || !el.sourceHandle && !edge.sourceHandle) && (el.targetHandle === edge.targetHandle || !el.targetHandle && !edge.targetHandle)), addEdge = (edgeParams, edges) => {
|
|
21200
21167
|
if (!edgeParams.source || !edgeParams.target)
|
|
@@ -21215,12 +21182,12 @@ function getStraightPath({ sourceX, sourceY, targetX, targetY }) {
|
|
|
21215
21182
|
return [`M ${sourceX},${sourceY}L ${targetX},${targetY}`, labelX, labelY, offsetX, offsetY];
|
|
21216
21183
|
}
|
|
21217
21184
|
const handleDirections = {
|
|
21218
|
-
[Position.Left]: { x: -1, y: 0 },
|
|
21219
|
-
[Position.Right]: { x: 1, y: 0 },
|
|
21220
|
-
[Position.Top]: { x: 0, y: -1 },
|
|
21221
|
-
[Position.Bottom]: { x: 0, y: 1 }
|
|
21222
|
-
}, getDirection = ({ source, sourcePosition = Position.Bottom, target }) => sourcePosition === Position.Left || sourcePosition === Position.Right ? source.x < target.x ? { x: 1, y: 0 } : { x: -1, y: 0 } : source.y < target.y ? { x: 0, y: 1 } : { x: 0, y: -1 }, distance = (a2, b2) => Math.sqrt(Math.pow(b2.x - a2.x, 2) + Math.pow(b2.y - a2.y, 2));
|
|
21223
|
-
function getPoints({ source, sourcePosition = Position.Bottom, target, targetPosition = Position.Top, center, offset: offset2 }) {
|
|
21185
|
+
[Position$1.Left]: { x: -1, y: 0 },
|
|
21186
|
+
[Position$1.Right]: { x: 1, y: 0 },
|
|
21187
|
+
[Position$1.Top]: { x: 0, y: -1 },
|
|
21188
|
+
[Position$1.Bottom]: { x: 0, y: 1 }
|
|
21189
|
+
}, getDirection = ({ source, sourcePosition = Position$1.Bottom, target }) => sourcePosition === Position$1.Left || sourcePosition === Position$1.Right ? source.x < target.x ? { x: 1, y: 0 } : { x: -1, y: 0 } : source.y < target.y ? { x: 0, y: 1 } : { x: 0, y: -1 }, distance = (a2, b2) => Math.sqrt(Math.pow(b2.x - a2.x, 2) + Math.pow(b2.y - a2.y, 2));
|
|
21190
|
+
function getPoints({ source, sourcePosition = Position$1.Bottom, target, targetPosition = Position$1.Top, center, offset: offset2 }) {
|
|
21224
21191
|
const sourceDir = handleDirections[sourcePosition], targetDir = handleDirections[targetPosition], sourceGapped = { x: source.x + sourceDir.x * offset2, y: source.y + sourceDir.y * offset2 }, targetGapped = { x: target.x + targetDir.x * offset2, y: target.y + targetDir.y * offset2 }, dir = getDirection({
|
|
21225
21192
|
source: sourceGapped,
|
|
21226
21193
|
sourcePosition,
|
|
@@ -21278,7 +21245,7 @@ function getBend(a2, b2, c2, size2) {
|
|
|
21278
21245
|
const xDir = a2.x < c2.x ? 1 : -1, yDir = a2.y < c2.y ? -1 : 1;
|
|
21279
21246
|
return `L ${x2},${y2 + bendSize * yDir}Q ${x2},${y2} ${x2 + bendSize * xDir},${y2}`;
|
|
21280
21247
|
}
|
|
21281
|
-
function getSmoothStepPath({ sourceX, sourceY, sourcePosition = Position.Bottom, targetX, targetY, targetPosition = Position.Top, borderRadius: borderRadius2 = 5, centerX, centerY: centerY2, offset: offset2 = 20 }) {
|
|
21248
|
+
function getSmoothStepPath({ sourceX, sourceY, sourcePosition = Position$1.Bottom, targetX, targetY, targetPosition = Position$1.Top, borderRadius: borderRadius2 = 5, centerX, centerY: centerY2, offset: offset2 = 20 }) {
|
|
21282
21249
|
const [points, labelX, labelY, offsetX, offsetY] = getPoints({
|
|
21283
21250
|
source: { x: sourceX, y: sourceY },
|
|
21284
21251
|
sourcePosition,
|
|
@@ -21301,7 +21268,7 @@ function getEdgePosition(params) {
|
|
|
21301
21268
|
return null;
|
|
21302
21269
|
const sourceHandleBounds = sourceNode.internals.handleBounds || toHandleBounds(sourceNode.handles), targetHandleBounds = targetNode.internals.handleBounds || toHandleBounds(targetNode.handles), sourceHandle = getHandle$1(sourceHandleBounds?.source ?? [], params.sourceHandle), targetHandle = getHandle$1(
|
|
21303
21270
|
// when connection type is loose we can define all handles as sources and connect source -> source
|
|
21304
|
-
params.connectionMode === ConnectionMode.Strict ? targetHandleBounds?.target ?? [] : (targetHandleBounds?.target ?? []).concat(targetHandleBounds?.source ?? []),
|
|
21271
|
+
params.connectionMode === ConnectionMode$1.Strict ? targetHandleBounds?.target ?? [] : (targetHandleBounds?.target ?? []).concat(targetHandleBounds?.source ?? []),
|
|
21305
21272
|
params.targetHandle
|
|
21306
21273
|
);
|
|
21307
21274
|
if (!sourceHandle || !targetHandle)
|
|
@@ -21310,7 +21277,7 @@ function getEdgePosition(params) {
|
|
|
21310
21277
|
sourceHandle: params.sourceHandle,
|
|
21311
21278
|
targetHandle: params.targetHandle
|
|
21312
21279
|
})), null;
|
|
21313
|
-
const sourcePosition = sourceHandle?.position || Position.Bottom, targetPosition = targetHandle?.position || Position.Top, source = getHandlePosition(sourceNode, sourceHandle, sourcePosition), target = getHandlePosition(targetNode, targetHandle, targetPosition);
|
|
21280
|
+
const sourcePosition = sourceHandle?.position || Position$1.Bottom, targetPosition = targetHandle?.position || Position$1.Top, source = getHandlePosition(sourceNode, sourceHandle, sourcePosition), target = getHandlePosition(targetNode, targetHandle, targetPosition);
|
|
21314
21281
|
return {
|
|
21315
21282
|
sourceX: source.x,
|
|
21316
21283
|
sourceY: source.y,
|
|
@@ -21331,18 +21298,18 @@ function toHandleBounds(handles) {
|
|
|
21331
21298
|
target
|
|
21332
21299
|
};
|
|
21333
21300
|
}
|
|
21334
|
-
function getHandlePosition(node2, handle, fallbackPosition = Position.Left, center = !1) {
|
|
21335
|
-
const x2 = (handle?.x ?? 0) + node2.internals.positionAbsolute.x, y2 = (handle?.y ?? 0) + node2.internals.positionAbsolute.y, { width, height } = handle ?? getNodeDimensions(node2);
|
|
21301
|
+
function getHandlePosition(node2, handle, fallbackPosition = Position$1.Left, center = !1) {
|
|
21302
|
+
const x2 = (handle?.x ?? 0) + node2.internals.positionAbsolute.x, y2 = (handle?.y ?? 0) + node2.internals.positionAbsolute.y, { width, height } = handle ?? getNodeDimensions$1(node2);
|
|
21336
21303
|
if (center)
|
|
21337
21304
|
return { x: x2 + width / 2, y: y2 + height / 2 };
|
|
21338
21305
|
switch (handle?.position ?? fallbackPosition) {
|
|
21339
|
-
case Position.Top:
|
|
21306
|
+
case Position$1.Top:
|
|
21340
21307
|
return { x: x2 + width / 2, y: y2 };
|
|
21341
|
-
case Position.Right:
|
|
21308
|
+
case Position$1.Right:
|
|
21342
21309
|
return { x: x2 + width, y: y2 + height / 2 };
|
|
21343
|
-
case Position.Bottom:
|
|
21310
|
+
case Position$1.Bottom:
|
|
21344
21311
|
return { x: x2 + width / 2, y: y2 + height };
|
|
21345
|
-
case Position.Left:
|
|
21312
|
+
case Position$1.Left:
|
|
21346
21313
|
return { x: x2, y: y2 + height / 2 };
|
|
21347
21314
|
}
|
|
21348
21315
|
}
|
|
@@ -21369,16 +21336,16 @@ function getNodeToolbarTransform(nodeRect, viewport, position, offset2, align) {
|
|
|
21369
21336
|
nodeRect.y * viewport.zoom + viewport.y - offset2
|
|
21370
21337
|
], shift2 = [-100 * alignmentOffset, -100];
|
|
21371
21338
|
switch (position) {
|
|
21372
|
-
case Position.Right:
|
|
21339
|
+
case Position$1.Right:
|
|
21373
21340
|
pos = [
|
|
21374
21341
|
(nodeRect.x + nodeRect.width) * viewport.zoom + viewport.x + offset2,
|
|
21375
21342
|
(nodeRect.y + nodeRect.height * alignmentOffset) * viewport.zoom + viewport.y
|
|
21376
21343
|
], shift2 = [0, -100 * alignmentOffset];
|
|
21377
21344
|
break;
|
|
21378
|
-
case Position.Bottom:
|
|
21345
|
+
case Position$1.Bottom:
|
|
21379
21346
|
pos[1] = (nodeRect.y + nodeRect.height) * viewport.zoom + viewport.y + offset2, shift2[1] = 0;
|
|
21380
21347
|
break;
|
|
21381
|
-
case Position.Left:
|
|
21348
|
+
case Position$1.Left:
|
|
21382
21349
|
pos = [
|
|
21383
21350
|
nodeRect.x * viewport.zoom + viewport.x - offset2,
|
|
21384
21351
|
(nodeRect.y + nodeRect.height * alignmentOffset) * viewport.zoom + viewport.y
|
|
@@ -21408,7 +21375,7 @@ function updateAbsolutePositions(nodeLookup, parentLookup, options) {
|
|
|
21408
21375
|
if (node2.parentId)
|
|
21409
21376
|
updateChildNode(node2, nodeLookup, parentLookup, _options);
|
|
21410
21377
|
else {
|
|
21411
|
-
const positionWithOrigin = getNodePositionWithOrigin(node2, _options.nodeOrigin), extent = isCoordinateExtent(node2.extent) ? node2.extent : _options.nodeExtent, clampedPosition = clampPosition(positionWithOrigin, extent, getNodeDimensions(node2));
|
|
21378
|
+
const positionWithOrigin = getNodePositionWithOrigin$1(node2, _options.nodeOrigin), extent = isCoordinateExtent(node2.extent) ? node2.extent : _options.nodeExtent, clampedPosition = clampPosition(positionWithOrigin, extent, getNodeDimensions$1(node2));
|
|
21412
21379
|
node2.internals.positionAbsolute = clampedPosition;
|
|
21413
21380
|
}
|
|
21414
21381
|
}
|
|
@@ -21422,7 +21389,7 @@ function adoptUserNodes(nodes, nodeLookup, parentLookup, options) {
|
|
|
21422
21389
|
if (_options.checkEquality && userNode === internalNode?.internals.userNode)
|
|
21423
21390
|
nodeLookup.set(userNode.id, internalNode);
|
|
21424
21391
|
else {
|
|
21425
|
-
const positionWithOrigin = getNodePositionWithOrigin(userNode, _options.nodeOrigin), extent = isCoordinateExtent(userNode.extent) ? userNode.extent : _options.nodeExtent, clampedPosition = clampPosition(positionWithOrigin, extent, getNodeDimensions(userNode));
|
|
21392
|
+
const positionWithOrigin = getNodePositionWithOrigin$1(userNode, _options.nodeOrigin), extent = isCoordinateExtent(userNode.extent) ? userNode.extent : _options.nodeExtent, clampedPosition = clampPosition(positionWithOrigin, extent, getNodeDimensions$1(userNode));
|
|
21426
21393
|
internalNode = {
|
|
21427
21394
|
..._options.defaults,
|
|
21428
21395
|
...userNode,
|
|
@@ -21470,7 +21437,7 @@ function calculateZ(node2, selectedNodeZ) {
|
|
|
21470
21437
|
return (isNumeric(node2.zIndex) ? node2.zIndex : 0) + (node2.selected ? selectedNodeZ : 0);
|
|
21471
21438
|
}
|
|
21472
21439
|
function calculateChildXYZ(childNode, parentNode, nodeOrigin, nodeExtent, selectedNodeZ) {
|
|
21473
|
-
const { x: parentX, y: parentY } = parentNode.internals.positionAbsolute, childDimensions = getNodeDimensions(childNode), positionWithOrigin = getNodePositionWithOrigin(childNode, nodeOrigin), clampedPosition = isCoordinateExtent(childNode.extent) ? clampPosition(positionWithOrigin, childNode.extent, childDimensions) : positionWithOrigin;
|
|
21440
|
+
const { x: parentX, y: parentY } = parentNode.internals.positionAbsolute, childDimensions = getNodeDimensions$1(childNode), positionWithOrigin = getNodePositionWithOrigin$1(childNode, nodeOrigin), clampedPosition = isCoordinateExtent(childNode.extent) ? clampPosition(positionWithOrigin, childNode.extent, childDimensions) : positionWithOrigin;
|
|
21474
21441
|
let absolutePosition = clampPosition({ x: parentX + clampedPosition.x, y: parentY + clampedPosition.y }, nodeExtent, childDimensions);
|
|
21475
21442
|
childNode.extent === "parent" && (absolutePosition = clampPositionToParent(absolutePosition, childDimensions, parentNode));
|
|
21476
21443
|
const childZ = calculateZ(childNode, selectedNodeZ), parentZ = parentNode.internals.z ?? 0;
|
|
@@ -21486,11 +21453,11 @@ function handleExpandParent(children2, nodeLookup, parentLookup, nodeOrigin = [0
|
|
|
21486
21453
|
const parent = nodeLookup.get(child.parentId);
|
|
21487
21454
|
if (!parent)
|
|
21488
21455
|
continue;
|
|
21489
|
-
const parentRect = parentExpansions.get(child.parentId)?.expandedRect ?? nodeToRect(parent), expandedRect = getBoundsOfRects(parentRect, child.rect);
|
|
21456
|
+
const parentRect = parentExpansions.get(child.parentId)?.expandedRect ?? nodeToRect$1(parent), expandedRect = getBoundsOfRects$1(parentRect, child.rect);
|
|
21490
21457
|
parentExpansions.set(child.parentId, { expandedRect, parent });
|
|
21491
21458
|
}
|
|
21492
21459
|
return parentExpansions.size > 0 && parentExpansions.forEach(({ expandedRect, parent }, parentId) => {
|
|
21493
|
-
const positionAbsolute = parent.internals.positionAbsolute, dimensions = getNodeDimensions(parent), origin = parent.origin ?? nodeOrigin, xChange = expandedRect.x < positionAbsolute.x ? Math.round(Math.abs(positionAbsolute.x - expandedRect.x)) : 0, yChange = expandedRect.y < positionAbsolute.y ? Math.round(Math.abs(positionAbsolute.y - expandedRect.y)) : 0, newWidth = Math.max(dimensions.width, Math.round(expandedRect.width)), newHeight = Math.max(dimensions.height, Math.round(expandedRect.height)), widthChange = (newWidth - dimensions.width) * origin[0], heightChange = (newHeight - dimensions.height) * origin[1];
|
|
21460
|
+
const positionAbsolute = parent.internals.positionAbsolute, dimensions = getNodeDimensions$1(parent), origin = parent.origin ?? nodeOrigin, xChange = expandedRect.x < positionAbsolute.x ? Math.round(Math.abs(positionAbsolute.x - expandedRect.x)) : 0, yChange = expandedRect.y < positionAbsolute.y ? Math.round(Math.abs(positionAbsolute.y - expandedRect.y)) : 0, newWidth = Math.max(dimensions.width, Math.round(expandedRect.width)), newHeight = Math.max(dimensions.height, Math.round(expandedRect.height)), widthChange = (newWidth - dimensions.width) * origin[0], heightChange = (newHeight - dimensions.height) * origin[1];
|
|
21494
21461
|
(xChange > 0 || yChange > 0 || widthChange || heightChange) && (changes.push({
|
|
21495
21462
|
id: parentId,
|
|
21496
21463
|
type: "position",
|
|
@@ -21562,7 +21529,7 @@ function updateNodeInternals(updates, nodeLookup, parentLookup, domNode, nodeOri
|
|
|
21562
21529
|
}), node2.expandParent && node2.parentId && parentExpandChildren.push({
|
|
21563
21530
|
id: node2.id,
|
|
21564
21531
|
parentId: node2.parentId,
|
|
21565
|
-
rect: nodeToRect(newNode, nodeOrigin)
|
|
21532
|
+
rect: nodeToRect$1(newNode, nodeOrigin)
|
|
21566
21533
|
}));
|
|
21567
21534
|
}
|
|
21568
21535
|
}
|
|
@@ -21679,7 +21646,7 @@ function XYDrag({ onNodeMouseDown, getStoreItems, onDragStart, onDrag, onDragSto
|
|
|
21679
21646
|
let hasChange = !1, nodesBox = { x: 0, y: 0, x2: 0, y2: 0 };
|
|
21680
21647
|
if (dragItems.size > 1 && nodeExtent) {
|
|
21681
21648
|
const rect = getInternalNodesBounds(dragItems);
|
|
21682
|
-
nodesBox = rectToBox(rect);
|
|
21649
|
+
nodesBox = rectToBox$1(rect);
|
|
21683
21650
|
}
|
|
21684
21651
|
for (const [id2, dragItem] of dragItems) {
|
|
21685
21652
|
if (!nodeLookup.has(id2))
|
|
@@ -21788,7 +21755,7 @@ function getNodesWithinDistance(position, nodeLookup, distance2) {
|
|
|
21788
21755
|
height: distance2 * 2
|
|
21789
21756
|
};
|
|
21790
21757
|
for (const node2 of nodeLookup.values())
|
|
21791
|
-
getOverlappingArea(rect, nodeToRect(node2)) > 0 && nodes.push(node2);
|
|
21758
|
+
getOverlappingArea(rect, nodeToRect$1(node2)) > 0 && nodes.push(node2);
|
|
21792
21759
|
return nodes;
|
|
21793
21760
|
}
|
|
21794
21761
|
const ADDITIONAL_DISTANCE = 250;
|
|
@@ -21851,7 +21818,7 @@ function onPointerDown(event, { connectionMode, connectionRadius, handleId, node
|
|
|
21851
21818
|
}, fromNodeInternal = nodeLookup.get(nodeId), newConnection = {
|
|
21852
21819
|
inProgress: !0,
|
|
21853
21820
|
isValid: null,
|
|
21854
|
-
from: getHandlePosition(fromNodeInternal, fromHandle, Position.Left, !0),
|
|
21821
|
+
from: getHandlePosition(fromNodeInternal, fromHandle, Position$1.Left, !0),
|
|
21855
21822
|
fromHandle,
|
|
21856
21823
|
fromPosition: fromHandle.position,
|
|
21857
21824
|
fromNode: fromNodeInternal,
|
|
@@ -21887,7 +21854,7 @@ function onPointerDown(event, { connectionMode, connectionRadius, handleId, node
|
|
|
21887
21854
|
// from stays the same
|
|
21888
21855
|
...previousConnection,
|
|
21889
21856
|
isValid,
|
|
21890
|
-
to: closestHandle && isValid ? rendererPointToPoint({ x: closestHandle.x, y: closestHandle.y }, transform2) : position,
|
|
21857
|
+
to: closestHandle && isValid ? rendererPointToPoint$1({ x: closestHandle.x, y: closestHandle.y }, transform2) : position,
|
|
21891
21858
|
toHandle: result.toHandle,
|
|
21892
21859
|
toPosition: isValid && result.toHandle ? result.toHandle.position : oppositePosition[fromHandle.position],
|
|
21893
21860
|
toNode: result.toHandle ? nodeLookup.get(result.toHandle.nodeId) : null
|
|
@@ -21922,7 +21889,7 @@ function isValidHandle(event, { handle, connectionMode, fromNodeId, fromHandleId
|
|
|
21922
21889
|
targetHandle: isTarget ? fromHandleId : handleId
|
|
21923
21890
|
};
|
|
21924
21891
|
result.connection = connection;
|
|
21925
|
-
const isValid = connectable && connectableEnd && (connectionMode === ConnectionMode.Strict ? isTarget && handleType === "source" || !isTarget && handleType === "target" : handleNodeId !== fromNodeId || handleId !== fromHandleId);
|
|
21892
|
+
const isValid = connectable && connectableEnd && (connectionMode === ConnectionMode$1.Strict ? isTarget && handleType === "source" || !isTarget && handleType === "target" : handleNodeId !== fromNodeId || handleId !== fromHandleId);
|
|
21926
21893
|
result.isValid = isValid && isValidConnection(connection), result.toHandle = getHandle(handleNodeId, handleType, handleId, nodeLookup, connectionMode, !1);
|
|
21927
21894
|
}
|
|
21928
21895
|
return result;
|
|
@@ -21989,7 +21956,7 @@ const viewChanged = (prevViewport, eventViewport) => prevViewport.x !== eventVie
|
|
|
21989
21956
|
const hasDuration = typeof duration == "number" && duration > 0;
|
|
21990
21957
|
return hasDuration || onEnd(), hasDuration ? selection2.transition().duration(duration).on("end", onEnd) : selection2;
|
|
21991
21958
|
}, wheelDelta = (event) => {
|
|
21992
|
-
const factor = event.ctrlKey && isMacOs() ? 10 : 1;
|
|
21959
|
+
const factor = event.ctrlKey && isMacOs$1() ? 10 : 1;
|
|
21993
21960
|
return -event.deltaY * (event.deltaMode === 1 ? 0.05 : event.deltaMode ? 1 : 2e-3) * factor;
|
|
21994
21961
|
};
|
|
21995
21962
|
function createPanOnScrollHandler({ zoomPanValues, noWheelClassName, d3Selection, d3Zoom, panOnScrollMode, panOnScrollSpeed, zoomOnPinch, onPanZoomStart, onPanZoom, onPanZoomEnd }) {
|
|
@@ -22004,8 +21971,8 @@ function createPanOnScrollHandler({ zoomPanValues, noWheelClassName, d3Selection
|
|
|
22004
21971
|
return;
|
|
22005
21972
|
}
|
|
22006
21973
|
const deltaNormalize = event.deltaMode === 1 ? 20 : 1;
|
|
22007
|
-
let deltaX = panOnScrollMode === PanOnScrollMode.Vertical ? 0 : event.deltaX * deltaNormalize, deltaY = panOnScrollMode === PanOnScrollMode.Horizontal ? 0 : event.deltaY * deltaNormalize;
|
|
22008
|
-
!isMacOs() && event.shiftKey && panOnScrollMode !== PanOnScrollMode.Vertical && (deltaX = event.deltaY * deltaNormalize, deltaY = 0), d3Zoom.translateBy(
|
|
21974
|
+
let deltaX = panOnScrollMode === PanOnScrollMode$1.Vertical ? 0 : event.deltaX * deltaNormalize, deltaY = panOnScrollMode === PanOnScrollMode$1.Horizontal ? 0 : event.deltaY * deltaNormalize;
|
|
21975
|
+
!isMacOs$1() && event.shiftKey && panOnScrollMode !== PanOnScrollMode$1.Vertical && (deltaX = event.deltaY * deltaNormalize, deltaY = 0), d3Zoom.translateBy(
|
|
22009
21976
|
d3Selection,
|
|
22010
21977
|
-(deltaX / currentZoom) * panOnScrollSpeed,
|
|
22011
21978
|
-(deltaY / currentZoom) * panOnScrollSpeed,
|
|
@@ -22020,7 +21987,8 @@ function createPanOnScrollHandler({ zoomPanValues, noWheelClassName, d3Selection
|
|
|
22020
21987
|
}
|
|
22021
21988
|
function createZoomOnScrollHandler({ noWheelClassName, preventScrolling, d3ZoomHandler }) {
|
|
22022
21989
|
return function(event, d2) {
|
|
22023
|
-
|
|
21990
|
+
const isWheel = event.type === "wheel", preventZoom = !preventScrolling && isWheel && !event.ctrlKey, hasNoWheelClass = isWrappedWithClass(event, noWheelClassName);
|
|
21991
|
+
if (event.ctrlKey && isWheel && hasNoWheelClass && event.preventDefault(), preventZoom || hasNoWheelClass)
|
|
22024
21992
|
return null;
|
|
22025
21993
|
event.preventDefault(), d3ZoomHandler.call(this, event, d2);
|
|
22026
21994
|
};
|
|
@@ -22080,7 +22048,7 @@ function XYPanZoom({ domNode, minZoom, maxZoom, paneClickDistance, translateExte
|
|
|
22080
22048
|
setViewportConstrained({
|
|
22081
22049
|
x: viewport.x,
|
|
22082
22050
|
y: viewport.y,
|
|
22083
|
-
zoom: clamp(viewport.zoom, minZoom, maxZoom)
|
|
22051
|
+
zoom: clamp$1(viewport.zoom, minZoom, maxZoom)
|
|
22084
22052
|
}, [
|
|
22085
22053
|
[0, 0],
|
|
22086
22054
|
[bbox.width, bbox.height]
|
|
@@ -22204,10 +22172,10 @@ function XYPanZoom({ domNode, minZoom, maxZoom, paneClickDistance, translateExte
|
|
|
22204
22172
|
setClickDistance
|
|
22205
22173
|
};
|
|
22206
22174
|
}
|
|
22207
|
-
var ResizeControlVariant;
|
|
22175
|
+
var ResizeControlVariant$1;
|
|
22208
22176
|
(function(ResizeControlVariant2) {
|
|
22209
22177
|
ResizeControlVariant2.Line = "line", ResizeControlVariant2.Handle = "handle";
|
|
22210
|
-
})(ResizeControlVariant || (ResizeControlVariant = {}));
|
|
22178
|
+
})(ResizeControlVariant$1 || (ResizeControlVariant$1 = {}));
|
|
22211
22179
|
function getResizeDirection({ width, prevWidth, height, prevHeight, affectsX, affectsY }) {
|
|
22212
22180
|
const deltaWidth = width - prevWidth, deltaHeight = height - prevHeight, direction = [deltaWidth > 0 ? 1 : deltaWidth < 0 ? -1 : 0, deltaHeight > 0 ? 1 : deltaHeight < 0 ? -1 : 0];
|
|
22213
22181
|
return deltaWidth && affectsX && (direction[0] = direction[0] * -1), deltaHeight && affectsY && (direction[1] = direction[1] * -1), direction;
|
|
@@ -22376,7 +22344,7 @@ function XYResizer({ domNode, nodeId, getStoreItems, onChange, onEnd }) {
|
|
|
22376
22344
|
}), nextValues = { ...prevValues, direction };
|
|
22377
22345
|
shouldResize?.(event, nextValues) !== !1 && (onResize?.(event, nextValues), onChange(change, childChanges));
|
|
22378
22346
|
}).on("end", (event) => {
|
|
22379
|
-
onResizeEnd?.(event, { ...prevValues }), onEnd?.();
|
|
22347
|
+
onResizeEnd?.(event, { ...prevValues }), onEnd?.({ ...prevValues });
|
|
22380
22348
|
});
|
|
22381
22349
|
selection2.call(dragHandler);
|
|
22382
22350
|
}
|
|
@@ -22825,7 +22793,7 @@ const useViewportHelper = () => {
|
|
|
22825
22793
|
}, { duration: options?.duration }), Promise.resolve(!0)) : Promise.resolve(!1);
|
|
22826
22794
|
},
|
|
22827
22795
|
fitBounds: async (bounds, options) => {
|
|
22828
|
-
const { width, height, minZoom, maxZoom, panZoom } = store.getState(), viewport = getViewportForBounds(bounds, width, height, minZoom, maxZoom, options?.padding ?? 0.1);
|
|
22796
|
+
const { width, height, minZoom, maxZoom, panZoom } = store.getState(), viewport = getViewportForBounds$1(bounds, width, height, minZoom, maxZoom, options?.padding ?? 0.1);
|
|
22829
22797
|
return panZoom ? (await panZoom.setViewport(viewport, { duration: options?.duration }), Promise.resolve(!0)) : Promise.resolve(!1);
|
|
22830
22798
|
},
|
|
22831
22799
|
screenToFlowPosition: (clientPosition, options = {}) => {
|
|
@@ -22842,7 +22810,7 @@ const useViewportHelper = () => {
|
|
|
22842
22810
|
const { transform: transform2, domNode } = store.getState();
|
|
22843
22811
|
if (!domNode)
|
|
22844
22812
|
return flowPosition;
|
|
22845
|
-
const { x: domX, y: domY } = domNode.getBoundingClientRect(), rendererPosition = rendererPointToPoint(flowPosition, transform2);
|
|
22813
|
+
const { x: domX, y: domY } = domNode.getBoundingClientRect(), rendererPosition = rendererPointToPoint$1(flowPosition, transform2);
|
|
22846
22814
|
return {
|
|
22847
22815
|
x: rendererPosition.x + domX,
|
|
22848
22816
|
y: rendererPosition.y + domY
|
|
@@ -22969,12 +22937,12 @@ function BatchProvider({ children: children2 }) {
|
|
|
22969
22937
|
next = typeof payload == "function" ? payload(next) : payload;
|
|
22970
22938
|
if (hasDefaultNodes)
|
|
22971
22939
|
setNodes(next);
|
|
22972
|
-
else
|
|
22940
|
+
else {
|
|
22973
22941
|
const changes = getElementsDiffChanges({
|
|
22974
22942
|
items: next,
|
|
22975
22943
|
lookup: nodeLookup
|
|
22976
22944
|
});
|
|
22977
|
-
changes.length > 0 ? onNodesChange(changes) : fitViewQueued && window.requestAnimationFrame(() => {
|
|
22945
|
+
changes.length > 0 ? onNodesChange?.(changes) : fitViewQueued && window.requestAnimationFrame(() => {
|
|
22978
22946
|
const { fitViewQueued: fitViewQueued2, nodes: nodes2, setNodes: setNodes2 } = store.getState();
|
|
22979
22947
|
fitViewQueued2 && setNodes2(nodes2);
|
|
22980
22948
|
});
|
|
@@ -23011,7 +22979,7 @@ function useReactFlow() {
|
|
|
23011
22979
|
width: nodeToUse.measured?.width ?? nodeToUse.width,
|
|
23012
22980
|
height: nodeToUse.measured?.height ?? nodeToUse.height
|
|
23013
22981
|
};
|
|
23014
|
-
return nodeToRect(nodeWithPosition);
|
|
22982
|
+
return nodeToRect$1(nodeWithPosition);
|
|
23015
22983
|
}, updateNode = (id2, nodeUpdate, options = { replace: !1 }) => {
|
|
23016
22984
|
setNodes((prevNodes) => prevNodes.map((node2) => {
|
|
23017
22985
|
if (node2.id === id2) {
|
|
@@ -23084,7 +23052,7 @@ function useReactFlow() {
|
|
|
23084
23052
|
const internalNode = store.getState().nodeLookup.get(n2.id);
|
|
23085
23053
|
if (internalNode && !isRect && (n2.id === nodeOrRect.id || !internalNode.internals.positionAbsolute))
|
|
23086
23054
|
return !1;
|
|
23087
|
-
const currNodeRect = nodeToRect(hasNodesOption ? n2 : internalNode), overlappingArea = getOverlappingArea(currNodeRect, nodeRect);
|
|
23055
|
+
const currNodeRect = nodeToRect$1(hasNodesOption ? n2 : internalNode), overlappingArea = getOverlappingArea(currNodeRect, nodeRect);
|
|
23088
23056
|
return partially && overlappingArea > 0 || overlappingArea >= nodeRect.width * nodeRect.height;
|
|
23089
23057
|
}) : [];
|
|
23090
23058
|
},
|
|
@@ -23167,7 +23135,7 @@ const containerStyle = {
|
|
|
23167
23135
|
userSelectionActive: s2.userSelectionActive,
|
|
23168
23136
|
lib: s2.lib
|
|
23169
23137
|
});
|
|
23170
|
-
function ZoomPane({ onPaneContextMenu, zoomOnScroll = !0, zoomOnPinch = !0, panOnScroll = !1, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode.Free, zoomOnDoubleClick = !0, panOnDrag = !0, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, zoomActivationKeyCode, preventScrolling = !0, children: children2, noWheelClassName, noPanClassName, onViewportChange, isControlledViewport, paneClickDistance }) {
|
|
23138
|
+
function ZoomPane({ onPaneContextMenu, zoomOnScroll = !0, zoomOnPinch = !0, panOnScroll = !1, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode$1.Free, zoomOnDoubleClick = !0, panOnDrag = !0, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, zoomActivationKeyCode, preventScrolling = !0, children: children2, noWheelClassName, noPanClassName, onViewportChange, isControlledViewport, paneClickDistance }) {
|
|
23171
23139
|
const store = useStoreApi(), zoomPane = useRef(null), { userSelectionActive, lib: lib2 } = useStore$1(selector$j, shallow$1), zoomActivationKeyPressed = useKeyPress(zoomActivationKeyCode), panZoom = useRef();
|
|
23172
23140
|
useResizeHandler(zoomPane);
|
|
23173
23141
|
const onTransformChange = useCallback((transform2) => {
|
|
@@ -23261,7 +23229,7 @@ const wrapHandler = (handler, containerRef) => (event) => {
|
|
|
23261
23229
|
connectionInProgress: s2.connection.inProgress,
|
|
23262
23230
|
dragging: s2.paneDragging
|
|
23263
23231
|
});
|
|
23264
|
-
function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.Full, panOnDrag, selectionOnDrag, onSelectionStart, onSelectionEnd, onPaneClick, onPaneContextMenu, onPaneScroll, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, children: children2 }) {
|
|
23232
|
+
function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode$1.Full, panOnDrag, selectionOnDrag, onSelectionStart, onSelectionEnd, onPaneClick, onPaneContextMenu, onPaneScroll, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, children: children2 }) {
|
|
23265
23233
|
const store = useStoreApi(), { userSelectionActive, elementsSelectable, dragging, connectionInProgress } = useStore$1(selector$h, shallow$1), hasActiveSelection = elementsSelectable && (isSelecting || userSelectionActive), container2 = useRef(null), containerBounds = useRef(), selectedNodeIds = useRef(/* @__PURE__ */ new Set()), selectedEdgeIds = useRef(/* @__PURE__ */ new Set()), selectionInProgress = useRef(!1), selectionStarted = useRef(!1), onClick = (event) => {
|
|
23266
23234
|
if (selectionInProgress.current || connectionInProgress) {
|
|
23267
23235
|
selectionInProgress.current = !1;
|
|
@@ -23303,7 +23271,7 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
23303
23271
|
width: Math.abs(mouseX - startX),
|
|
23304
23272
|
height: Math.abs(mouseY - startY)
|
|
23305
23273
|
}, prevSelectedNodeIds = selectedNodeIds.current, prevSelectedEdgeIds = selectedEdgeIds.current;
|
|
23306
|
-
selectedNodeIds.current = new Set(getNodesInside(nodeLookup, nextUserSelectRect, transform2, selectionMode === SelectionMode.Partial, !0).map((node2) => node2.id)), selectedEdgeIds.current = /* @__PURE__ */ new Set();
|
|
23274
|
+
selectedNodeIds.current = new Set(getNodesInside(nodeLookup, nextUserSelectRect, transform2, selectionMode === SelectionMode$1.Partial, !0).map((node2) => node2.id)), selectedEdgeIds.current = /* @__PURE__ */ new Set();
|
|
23307
23275
|
const edgesSelectable = defaultEdgeOptions?.selectable ?? !0;
|
|
23308
23276
|
for (const nodeId of selectedNodeIds.current) {
|
|
23309
23277
|
const connections = connectionLookup.get(nodeId);
|
|
@@ -23420,13 +23388,13 @@ const useNodeId = () => useContext(NodeIdContext), selector$g = (s2) => ({
|
|
|
23420
23388
|
connectingFrom: fromHandle?.nodeId === nodeId && fromHandle?.id === handleId && fromHandle?.type === type,
|
|
23421
23389
|
connectingTo,
|
|
23422
23390
|
clickConnecting: clickHandle?.nodeId === nodeId && clickHandle?.id === handleId && clickHandle?.type === type,
|
|
23423
|
-
isPossibleEndHandle: connectionMode === ConnectionMode.Strict ? fromHandle?.type !== type : nodeId !== fromHandle?.nodeId || handleId !== fromHandle?.id,
|
|
23391
|
+
isPossibleEndHandle: connectionMode === ConnectionMode$1.Strict ? fromHandle?.type !== type : nodeId !== fromHandle?.nodeId || handleId !== fromHandle?.id,
|
|
23424
23392
|
connectionInProcess: !!fromHandle,
|
|
23425
23393
|
clickConnectionInProcess: !!clickHandle,
|
|
23426
23394
|
valid: connectingTo && isValid
|
|
23427
23395
|
};
|
|
23428
23396
|
};
|
|
23429
|
-
function HandleComponent({ type = "source", position = Position.Top, isValidConnection, isConnectable = !0, isConnectableStart = !0, isConnectableEnd = !0, id: id2, onConnect, children: children2, className, onMouseDown, onTouchStart, ...rest }, ref) {
|
|
23397
|
+
function HandleComponent({ type = "source", position = Position$1.Top, isValidConnection, isConnectable = !0, isConnectableStart = !0, isConnectableEnd = !0, id: id2, onConnect, children: children2, className, onMouseDown, onTouchStart, ...rest }, ref) {
|
|
23430
23398
|
const handleId = id2 || null, isTarget = type === "target", store = useStoreApi(), nodeId = useNodeId(), { connectOnClick, noPanClassName, rfId } = useStore$1(selector$g, shallow$1), { connectingFrom, connectingTo, clickConnecting, isPossibleEndHandle, connectionInProcess, clickConnectionInProcess, valid } = useStore$1(connectingSelector(nodeId, handleId, type), shallow$1);
|
|
23431
23399
|
nodeId || store.getState().onError?.("010", errorMessages.error010());
|
|
23432
23400
|
const onConnectExtended = (params) => {
|
|
@@ -23522,16 +23490,16 @@ function HandleComponent({ type = "source", position = Position.Top, isValidConn
|
|
|
23522
23490
|
]), onMouseDown: onPointerDown2, onTouchStart: onPointerDown2, onClick: connectOnClick ? onClick : void 0, ref, ...rest, children: children2 });
|
|
23523
23491
|
}
|
|
23524
23492
|
const Handle = memo$3(fixedForwardRef(HandleComponent));
|
|
23525
|
-
function InputNode({ data, isConnectable, sourcePosition = Position.Bottom }) {
|
|
23493
|
+
function InputNode({ data, isConnectable, sourcePosition = Position$1.Bottom }) {
|
|
23526
23494
|
return jsxs(Fragment$1, { children: [data?.label, jsx(Handle, { type: "source", position: sourcePosition, isConnectable })] });
|
|
23527
23495
|
}
|
|
23528
|
-
function DefaultNode({ data, isConnectable, targetPosition = Position.Top, sourcePosition = Position.Bottom }) {
|
|
23496
|
+
function DefaultNode({ data, isConnectable, targetPosition = Position$1.Top, sourcePosition = Position$1.Bottom }) {
|
|
23529
23497
|
return jsxs(Fragment$1, { children: [jsx(Handle, { type: "target", position: targetPosition, isConnectable }), data?.label, jsx(Handle, { type: "source", position: sourcePosition, isConnectable })] });
|
|
23530
23498
|
}
|
|
23531
23499
|
function GroupNode() {
|
|
23532
23500
|
return null;
|
|
23533
23501
|
}
|
|
23534
|
-
function OutputNode({ data, isConnectable, targetPosition = Position.Top }) {
|
|
23502
|
+
function OutputNode({ data, isConnectable, targetPosition = Position$1.Top }) {
|
|
23535
23503
|
return jsxs(Fragment$1, { children: [jsx(Handle, { type: "target", position: targetPosition, isConnectable }), data?.label] });
|
|
23536
23504
|
}
|
|
23537
23505
|
const arrowKeyDiffs = {
|
|
@@ -23653,7 +23621,7 @@ function NodeWrapper({ id: id2, onClick, onMouseEnter, onMouseMove, onMouseLeave
|
|
|
23653
23621
|
}), moveSelectedNodes = useMoveSelectedNodes();
|
|
23654
23622
|
if (node2.hidden)
|
|
23655
23623
|
return null;
|
|
23656
|
-
const nodeDimensions = getNodeDimensions(node2), inlineDimensions = getNodeInlineStyleDimensions(node2), hasPointerEvents = isSelectable || isDraggable || onClick || onMouseEnter || onMouseMove || onMouseLeave, onMouseEnterHandler = onMouseEnter ? (event) => onMouseEnter(event, { ...internals.userNode }) : void 0, onMouseMoveHandler = onMouseMove ? (event) => onMouseMove(event, { ...internals.userNode }) : void 0, onMouseLeaveHandler = onMouseLeave ? (event) => onMouseLeave(event, { ...internals.userNode }) : void 0, onContextMenuHandler = onContextMenu ? (event) => onContextMenu(event, { ...internals.userNode }) : void 0, onDoubleClickHandler = onDoubleClick ? (event) => onDoubleClick(event, { ...internals.userNode }) : void 0, onSelectNodeHandler = (event) => {
|
|
23624
|
+
const nodeDimensions = getNodeDimensions$1(node2), inlineDimensions = getNodeInlineStyleDimensions(node2), hasPointerEvents = isSelectable || isDraggable || onClick || onMouseEnter || onMouseMove || onMouseLeave, onMouseEnterHandler = onMouseEnter ? (event) => onMouseEnter(event, { ...internals.userNode }) : void 0, onMouseMoveHandler = onMouseMove ? (event) => onMouseMove(event, { ...internals.userNode }) : void 0, onMouseLeaveHandler = onMouseLeave ? (event) => onMouseLeave(event, { ...internals.userNode }) : void 0, onContextMenuHandler = onContextMenu ? (event) => onContextMenu(event, { ...internals.userNode }) : void 0, onDoubleClickHandler = onDoubleClick ? (event) => onDoubleClick(event, { ...internals.userNode }) : void 0, onSelectNodeHandler = (event) => {
|
|
23657
23625
|
const { selectNodesOnDrag, nodeDragThreshold } = store.getState();
|
|
23658
23626
|
isSelectable && (!selectNodesOnDrag || !isDraggable || nodeDragThreshold > 0) && handleNodeClick({
|
|
23659
23627
|
id: id2,
|
|
@@ -23768,8 +23736,8 @@ const ArrowSymbol = ({ color: color2 = "none", strokeWidth = 1 }) => jsx("polyli
|
|
|
23768
23736
|
fill: color2,
|
|
23769
23737
|
strokeWidth
|
|
23770
23738
|
}, strokeLinecap: "round", strokeLinejoin: "round", points: "-5,-4 0,0 -5,4 -5,-4" }), MarkerSymbols = {
|
|
23771
|
-
[MarkerType.Arrow]: ArrowSymbol,
|
|
23772
|
-
[MarkerType.ArrowClosed]: ArrowClosedSymbol
|
|
23739
|
+
[MarkerType$1.Arrow]: ArrowSymbol,
|
|
23740
|
+
[MarkerType$1.ArrowClosed]: ArrowClosedSymbol
|
|
23773
23741
|
};
|
|
23774
23742
|
function useMarkerSymbol(type) {
|
|
23775
23743
|
const store = useStoreApi();
|
|
@@ -23809,9 +23777,9 @@ function BaseEdge({ path, labelX, labelY, label: label2, labelStyle, labelShowBg
|
|
|
23809
23777
|
return jsxs(Fragment$1, { children: [jsx("path", { ...props, d: path, fill: "none", className: cc(["react-flow__edge-path", props.className]) }), interactionWidth && jsx("path", { d: path, fill: "none", strokeOpacity: 0, strokeWidth: interactionWidth, className: "react-flow__edge-interaction" }), label2 && isNumeric(labelX) && isNumeric(labelY) ? jsx(EdgeText, { x: labelX, y: labelY, label: label2, labelStyle, labelShowBg, labelBgStyle, labelBgPadding, labelBgBorderRadius }) : null] });
|
|
23810
23778
|
}
|
|
23811
23779
|
function getControl({ pos, x1, y1, x2, y2 }) {
|
|
23812
|
-
return pos === Position.Left || pos === Position.Right ? [0.5 * (x1 + x2), y1] : [x1, 0.5 * (y1 + y2)];
|
|
23780
|
+
return pos === Position$1.Left || pos === Position$1.Right ? [0.5 * (x1 + x2), y1] : [x1, 0.5 * (y1 + y2)];
|
|
23813
23781
|
}
|
|
23814
|
-
function getSimpleBezierPath({ sourceX, sourceY, sourcePosition = Position.Bottom, targetX, targetY, targetPosition = Position.Top }) {
|
|
23782
|
+
function getSimpleBezierPath({ sourceX, sourceY, sourcePosition = Position$1.Bottom, targetX, targetY, targetPosition = Position$1.Top }) {
|
|
23815
23783
|
const [sourceControlX, sourceControlY] = getControl({
|
|
23816
23784
|
pos: sourcePosition,
|
|
23817
23785
|
x1: sourceX,
|
|
@@ -23824,7 +23792,7 @@ function getSimpleBezierPath({ sourceX, sourceY, sourcePosition = Position.Botto
|
|
|
23824
23792
|
y1: targetY,
|
|
23825
23793
|
x2: sourceX,
|
|
23826
23794
|
y2: sourceY
|
|
23827
|
-
}), [labelX, labelY, offsetX, offsetY] = getBezierEdgeCenter({
|
|
23795
|
+
}), [labelX, labelY, offsetX, offsetY] = getBezierEdgeCenter$1({
|
|
23828
23796
|
sourceX,
|
|
23829
23797
|
sourceY,
|
|
23830
23798
|
targetX,
|
|
@@ -23843,7 +23811,7 @@ function getSimpleBezierPath({ sourceX, sourceY, sourcePosition = Position.Botto
|
|
|
23843
23811
|
];
|
|
23844
23812
|
}
|
|
23845
23813
|
function createSimpleBezierEdge(params) {
|
|
23846
|
-
return memo$3(({ id: id2, sourceX, sourceY, targetX, targetY, sourcePosition = Position.Bottom, targetPosition = Position.Top, label: label2, labelStyle, labelShowBg, labelBgStyle, labelBgPadding, labelBgBorderRadius, style: style2, markerEnd, markerStart, interactionWidth }) => {
|
|
23814
|
+
return memo$3(({ id: id2, sourceX, sourceY, targetX, targetY, sourcePosition = Position$1.Bottom, targetPosition = Position$1.Top, label: label2, labelStyle, labelShowBg, labelBgStyle, labelBgPadding, labelBgBorderRadius, style: style2, markerEnd, markerStart, interactionWidth }) => {
|
|
23847
23815
|
const [path, labelX, labelY] = getSimpleBezierPath({
|
|
23848
23816
|
sourceX,
|
|
23849
23817
|
sourceY,
|
|
@@ -23859,7 +23827,7 @@ const SimpleBezierEdge = createSimpleBezierEdge({ isInternal: !1 }), SimpleBezie
|
|
|
23859
23827
|
SimpleBezierEdge.displayName = "SimpleBezierEdge";
|
|
23860
23828
|
SimpleBezierEdgeInternal.displayName = "SimpleBezierEdgeInternal";
|
|
23861
23829
|
function createSmoothStepEdge(params) {
|
|
23862
|
-
return memo$3(({ id: id2, sourceX, sourceY, targetX, targetY, label: label2, labelStyle, labelShowBg, labelBgStyle, labelBgPadding, labelBgBorderRadius, style: style2, sourcePosition = Position.Bottom, targetPosition = Position.Top, markerEnd, markerStart, pathOptions, interactionWidth }) => {
|
|
23830
|
+
return memo$3(({ id: id2, sourceX, sourceY, targetX, targetY, label: label2, labelStyle, labelShowBg, labelBgStyle, labelBgPadding, labelBgBorderRadius, style: style2, sourcePosition = Position$1.Bottom, targetPosition = Position$1.Top, markerEnd, markerStart, pathOptions, interactionWidth }) => {
|
|
23863
23831
|
const [path, labelX, labelY] = getSmoothStepPath({
|
|
23864
23832
|
sourceX,
|
|
23865
23833
|
sourceY,
|
|
@@ -23895,8 +23863,8 @@ const StraightEdge = createStraightEdge({ isInternal: !1 }), StraightEdgeInterna
|
|
|
23895
23863
|
StraightEdge.displayName = "StraightEdge";
|
|
23896
23864
|
StraightEdgeInternal.displayName = "StraightEdgeInternal";
|
|
23897
23865
|
function createBezierEdge(params) {
|
|
23898
|
-
return memo$3(({ id: id2, sourceX, sourceY, targetX, targetY, sourcePosition = Position.Bottom, targetPosition = Position.Top, label: label2, labelStyle, labelShowBg, labelBgStyle, labelBgPadding, labelBgBorderRadius, style: style2, markerEnd, markerStart, pathOptions, interactionWidth }) => {
|
|
23899
|
-
const [path, labelX, labelY] = getBezierPath({
|
|
23866
|
+
return memo$3(({ id: id2, sourceX, sourceY, targetX, targetY, sourcePosition = Position$1.Bottom, targetPosition = Position$1.Top, label: label2, labelStyle, labelShowBg, labelBgStyle, labelBgPadding, labelBgBorderRadius, style: style2, markerEnd, markerStart, pathOptions, interactionWidth }) => {
|
|
23867
|
+
const [path, labelX, labelY] = getBezierPath$1({
|
|
23900
23868
|
sourceX,
|
|
23901
23869
|
sourceY,
|
|
23902
23870
|
sourcePosition,
|
|
@@ -23924,7 +23892,7 @@ const builtinEdgeTypes = {
|
|
|
23924
23892
|
targetY: null,
|
|
23925
23893
|
sourcePosition: null,
|
|
23926
23894
|
targetPosition: null
|
|
23927
|
-
}, shiftX = (x2, shift2, position) => position === Position.Left ? x2 - shift2 : position === Position.Right ? x2 + shift2 : x2, shiftY = (y2, shift2, position) => position === Position.Top ? y2 - shift2 : position === Position.Bottom ? y2 + shift2 : y2, EdgeUpdaterClassName = "react-flow__edgeupdater";
|
|
23895
|
+
}, shiftX = (x2, shift2, position) => position === Position$1.Left ? x2 - shift2 : position === Position$1.Right ? x2 + shift2 : x2, shiftY = (y2, shift2, position) => position === Position$1.Top ? y2 - shift2 : position === Position$1.Bottom ? y2 + shift2 : y2, EdgeUpdaterClassName = "react-flow__edgeupdater";
|
|
23928
23896
|
function EdgeAnchor({ position, centerX, centerY: centerY2, radius = 10, onMouseDown, onMouseEnter, onMouseOut, type }) {
|
|
23929
23897
|
return jsx("circle", { onMouseDown, onMouseEnter, onMouseOut, className: cc([EdgeUpdaterClassName, `${EdgeUpdaterClassName}-${type}`]), cx: shiftX(centerX, radius, position), cy: shiftY(centerY2, radius, position), r: radius, stroke: "transparent", fill: "transparent" });
|
|
23930
23898
|
}
|
|
@@ -24082,7 +24050,7 @@ function ConnectionLineWrapper({ containerStyle: containerStyle2, style: style2,
|
|
|
24082
24050
|
const { nodesConnectable, width, height, isValid, inProgress } = useStore$1(selector$7, shallow$1);
|
|
24083
24051
|
return !(width && nodesConnectable && inProgress) ? null : jsx("svg", { style: containerStyle2, width, height, className: "react-flow__connectionline react-flow__container", children: jsx("g", { className: cc(["react-flow__connection", getConnectionStatus(isValid)]), children: jsx(ConnectionLine, { style: style2, type, CustomComponent: component, isValid }) }) });
|
|
24084
24052
|
}
|
|
24085
|
-
const ConnectionLine = ({ style: style2, type = ConnectionLineType.Bezier, CustomComponent, isValid }) => {
|
|
24053
|
+
const ConnectionLine = ({ style: style2, type = ConnectionLineType$1.Bezier, CustomComponent, isValid }) => {
|
|
24086
24054
|
const { inProgress, from, fromNode, fromHandle, fromPosition, to, toNode, toHandle, toPosition } = useConnection();
|
|
24087
24055
|
if (!inProgress)
|
|
24088
24056
|
return;
|
|
@@ -24098,19 +24066,19 @@ const ConnectionLine = ({ style: style2, type = ConnectionLineType.Bezier, Custo
|
|
|
24098
24066
|
targetPosition: toPosition
|
|
24099
24067
|
};
|
|
24100
24068
|
switch (type) {
|
|
24101
|
-
case ConnectionLineType.Bezier:
|
|
24102
|
-
[path] = getBezierPath(pathParams);
|
|
24069
|
+
case ConnectionLineType$1.Bezier:
|
|
24070
|
+
[path] = getBezierPath$1(pathParams);
|
|
24103
24071
|
break;
|
|
24104
|
-
case ConnectionLineType.SimpleBezier:
|
|
24072
|
+
case ConnectionLineType$1.SimpleBezier:
|
|
24105
24073
|
[path] = getSimpleBezierPath(pathParams);
|
|
24106
24074
|
break;
|
|
24107
|
-
case ConnectionLineType.Step:
|
|
24075
|
+
case ConnectionLineType$1.Step:
|
|
24108
24076
|
[path] = getSmoothStepPath({
|
|
24109
24077
|
...pathParams,
|
|
24110
24078
|
borderRadius: 0
|
|
24111
24079
|
});
|
|
24112
24080
|
break;
|
|
24113
|
-
case ConnectionLineType.SmoothStep:
|
|
24081
|
+
case ConnectionLineType$1.SmoothStep:
|
|
24114
24082
|
[path] = getSmoothStepPath(pathParams);
|
|
24115
24083
|
break;
|
|
24116
24084
|
default:
|
|
@@ -24143,7 +24111,7 @@ const GraphView = memo$3(GraphViewComponent), getInitialState = ({ nodes, edges,
|
|
|
24143
24111
|
if (fitView && width && height) {
|
|
24144
24112
|
const bounds = getInternalNodesBounds(nodeLookup, {
|
|
24145
24113
|
filter: (node2) => !!((node2.width || node2.initialWidth) && (node2.height || node2.initialHeight))
|
|
24146
|
-
}), { x: x2, y: y2, zoom: zoom2 } = getViewportForBounds(bounds, width, height, 0.5, 2, 0.1);
|
|
24114
|
+
}), { x: x2, y: y2, zoom: zoom2 } = getViewportForBounds$1(bounds, width, height, 0.5, 2, 0.1);
|
|
24147
24115
|
transform2 = [x2, y2, zoom2];
|
|
24148
24116
|
}
|
|
24149
24117
|
return {
|
|
@@ -24169,7 +24137,7 @@ const GraphView = memo$3(GraphViewComponent), getInitialState = ({ nodes, edges,
|
|
|
24169
24137
|
nodesSelectionActive: !1,
|
|
24170
24138
|
userSelectionActive: !1,
|
|
24171
24139
|
userSelectionRect: null,
|
|
24172
|
-
connectionMode: ConnectionMode.Strict,
|
|
24140
|
+
connectionMode: ConnectionMode$1.Strict,
|
|
24173
24141
|
domNode: null,
|
|
24174
24142
|
paneDragging: !1,
|
|
24175
24143
|
noPanClassName: "nopan",
|
|
@@ -24389,7 +24357,7 @@ const wrapperStyle = {
|
|
|
24389
24357
|
position: "relative",
|
|
24390
24358
|
zIndex: 0
|
|
24391
24359
|
};
|
|
24392
|
-
function ReactFlow({ nodes, edges, defaultNodes, defaultEdges, className, nodeTypes: nodeTypes2, edgeTypes: edgeTypes2, onNodeClick, onEdgeClick, onInit, onMove, onMoveStart, onMoveEnd, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, onNodeDragStart, onNodeDrag, onNodeDragStop, onNodesDelete, onEdgesDelete, onDelete, onSelectionChange, onSelectionDragStart, onSelectionDrag, onSelectionDragStop, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onBeforeDelete, connectionMode, connectionLineType = ConnectionLineType.Bezier, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, deleteKeyCode = "Backspace", selectionKeyCode = "Shift", selectionOnDrag = !1, selectionMode = SelectionMode.Full, panActivationKeyCode = "Space", multiSelectionKeyCode = isMacOs() ? "Meta" : "Control", zoomActivationKeyCode = isMacOs() ? "Meta" : "Control", snapToGrid, snapGrid, onlyRenderVisibleElements = !1, selectNodesOnDrag, nodesDraggable, nodesConnectable, nodesFocusable, nodeOrigin = defaultNodeOrigin, edgesFocusable, edgesReconnectable, elementsSelectable = !0, defaultViewport: defaultViewport$1 = defaultViewport, minZoom = 0.5, maxZoom = 2, translateExtent = infiniteExtent, preventScrolling = !0, nodeExtent, defaultMarkerColor = "#b1b1b7", zoomOnScroll = !0, zoomOnPinch = !0, panOnScroll = !1, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode.Free, zoomOnDoubleClick = !0, panOnDrag = !0, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance = 0, nodeClickDistance = 0, children: children2, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius = 10, onNodesChange, onEdgesChange, noDragClassName = "nodrag", noWheelClassName = "nowheel", noPanClassName = "nopan", fitView, fitViewOptions, connectOnClick, attributionPosition, proOptions, defaultEdgeOptions, elevateNodesOnSelect, elevateEdgesOnSelect, disableKeyboardA11y = !1, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, connectionRadius, isValidConnection, onError, style: style2, id: id2, nodeDragThreshold, viewport, onViewportChange, width, height, colorMode = "light", debug: debug2, onScroll, ...rest }, ref) {
|
|
24360
|
+
function ReactFlow({ nodes, edges, defaultNodes, defaultEdges, className, nodeTypes: nodeTypes2, edgeTypes: edgeTypes2, onNodeClick, onEdgeClick, onInit, onMove, onMoveStart, onMoveEnd, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, onNodeDragStart, onNodeDrag, onNodeDragStop, onNodesDelete, onEdgesDelete, onDelete, onSelectionChange, onSelectionDragStart, onSelectionDrag, onSelectionDragStop, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onBeforeDelete, connectionMode, connectionLineType = ConnectionLineType$1.Bezier, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, deleteKeyCode = "Backspace", selectionKeyCode = "Shift", selectionOnDrag = !1, selectionMode = SelectionMode$1.Full, panActivationKeyCode = "Space", multiSelectionKeyCode = isMacOs$1() ? "Meta" : "Control", zoomActivationKeyCode = isMacOs$1() ? "Meta" : "Control", snapToGrid, snapGrid, onlyRenderVisibleElements = !1, selectNodesOnDrag, nodesDraggable, nodesConnectable, nodesFocusable, nodeOrigin = defaultNodeOrigin, edgesFocusable, edgesReconnectable, elementsSelectable = !0, defaultViewport: defaultViewport$1 = defaultViewport, minZoom = 0.5, maxZoom = 2, translateExtent = infiniteExtent, preventScrolling = !0, nodeExtent, defaultMarkerColor = "#b1b1b7", zoomOnScroll = !0, zoomOnPinch = !0, panOnScroll = !1, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode$1.Free, zoomOnDoubleClick = !0, panOnDrag = !0, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance = 0, nodeClickDistance = 0, children: children2, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius = 10, onNodesChange, onEdgesChange, noDragClassName = "nodrag", noWheelClassName = "nowheel", noPanClassName = "nopan", fitView, fitViewOptions, connectOnClick, attributionPosition, proOptions, defaultEdgeOptions, elevateNodesOnSelect, elevateEdgesOnSelect, disableKeyboardA11y = !1, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, connectionRadius, isValidConnection, onError, style: style2, id: id2, nodeDragThreshold, viewport, onViewportChange, width, height, colorMode = "light", debug: debug2, onScroll, ...rest }, ref) {
|
|
24393
24361
|
const rfId = id2 || "1", colorModeClassName = useColorModeClass(colorMode), wrapperOnScroll = useCallback((e2) => {
|
|
24394
24362
|
e2.currentTarget.scrollTo({ top: 0, left: 0, behavior: "instant" }), onScroll?.(e2);
|
|
24395
24363
|
}, [onScroll]);
|
|
@@ -24524,7 +24492,7 @@ function MiniMapNodes({
|
|
|
24524
24492
|
}
|
|
24525
24493
|
function NodeComponentWrapperInner({ id: id2, nodeColorFunc, nodeStrokeColorFunc, nodeClassNameFunc, nodeBorderRadius, nodeStrokeWidth, shapeRendering, NodeComponent, onClick }) {
|
|
24526
24494
|
const { node: node2, x: x2, y: y2, width, height } = useStore$1((s2) => {
|
|
24527
|
-
const
|
|
24495
|
+
const { internals } = s2.nodeLookup.get(id2), node22 = internals.userNode, { x: x22, y: y22 } = internals.positionAbsolute, { width: width2, height: height2 } = getNodeDimensions$1(node22);
|
|
24528
24496
|
return {
|
|
24529
24497
|
node: node22,
|
|
24530
24498
|
x: x22,
|
|
@@ -24546,7 +24514,7 @@ const defaultWidth = 200, defaultHeight = 150, filterHidden = (node2) => !node2.
|
|
|
24546
24514
|
};
|
|
24547
24515
|
return {
|
|
24548
24516
|
viewBB,
|
|
24549
|
-
boundingRect: s2.nodeLookup.size > 0 ? getBoundsOfRects(getInternalNodesBounds(s2.nodeLookup, { filter: filterHidden }), viewBB) : viewBB,
|
|
24517
|
+
boundingRect: s2.nodeLookup.size > 0 ? getBoundsOfRects$1(getInternalNodesBounds(s2.nodeLookup, { filter: filterHidden }), viewBB) : viewBB,
|
|
24550
24518
|
rfId: s2.rfId,
|
|
24551
24519
|
panZoom: s2.panZoom,
|
|
24552
24520
|
translateExtent: s2.translateExtent,
|
|
@@ -24607,7 +24575,7 @@ function MiniMapComponent({
|
|
|
24607
24575
|
const [x22, y22] = minimapInstance.current?.pointer(event) || [0, 0];
|
|
24608
24576
|
onClick(event, { x: x22, y: y22 });
|
|
24609
24577
|
} : void 0, onSvgNodeClick = onNodeClick ? useCallback((event, nodeId) => {
|
|
24610
|
-
const node2 = store.getState().nodeLookup.get(nodeId);
|
|
24578
|
+
const node2 = store.getState().nodeLookup.get(nodeId).internals.userNode;
|
|
24611
24579
|
onNodeClick(event, node2);
|
|
24612
24580
|
}, []) : void 0;
|
|
24613
24581
|
return jsx(Panel, { position, style: {
|
|
@@ -24618,14 +24586,14 @@ function MiniMapComponent({
|
|
|
24618
24586
|
"--xy-minimap-mask-stroke-width-props": typeof maskStrokeWidth == "number" ? maskStrokeWidth * viewScale : void 0,
|
|
24619
24587
|
"--xy-minimap-node-background-color-props": typeof nodeColor == "string" ? nodeColor : void 0,
|
|
24620
24588
|
"--xy-minimap-node-stroke-color-props": typeof nodeStrokeColor == "string" ? nodeStrokeColor : void 0,
|
|
24621
|
-
"--xy-minimap-node-stroke-width-props": typeof nodeStrokeWidth == "
|
|
24589
|
+
"--xy-minimap-node-stroke-width-props": typeof nodeStrokeWidth == "number" ? nodeStrokeWidth : void 0
|
|
24622
24590
|
}, className: cc(["react-flow__minimap", className]), "data-testid": "rf__minimap", children: jsxs("svg", { width: elementWidth, height: elementHeight, viewBox: `${x2} ${y2} ${width} ${height}`, className: "react-flow__minimap-svg", role: "img", "aria-labelledby": labelledBy, ref: svg, onClick: onSvgClick, children: [ariaLabel && jsx("title", { id: labelledBy, children: ariaLabel }), jsx(MiniMapNodes$1, { onClick: onSvgNodeClick, nodeColor, nodeStrokeColor, nodeBorderRadius, nodeClassName, nodeStrokeWidth, nodeComponent }), jsx("path", { className: "react-flow__minimap-mask", d: `M${x2 - offset2},${y2 - offset2}h${width + offset2 * 2}v${height + offset2 * 2}h${-width - offset2 * 2}z
|
|
24623
24591
|
M${viewBB.x},${viewBB.y}h${viewBB.width}v${viewBB.height}h${-viewBB.width}z`, fillRule: "evenodd", pointerEvents: "none" })] }) });
|
|
24624
24592
|
}
|
|
24625
24593
|
MiniMapComponent.displayName = "MiniMap";
|
|
24626
24594
|
memo$3(MiniMapComponent);
|
|
24627
|
-
function ResizeControl({ nodeId, position, variant = ResizeControlVariant.Handle, className, style: style2 = {}, children: children2, color: color2, minWidth = 10, minHeight = 10, maxWidth = Number.MAX_VALUE, maxHeight = Number.MAX_VALUE, keepAspectRatio = !1, shouldResize, onResizeStart, onResize, onResizeEnd }) {
|
|
24628
|
-
const contextNodeId = useNodeId(), id2 = typeof nodeId == "string" ? nodeId : contextNodeId, store = useStoreApi(), resizeControlRef = useRef(null), defaultPosition = variant === ResizeControlVariant.Line ? "right" : "bottom-right", controlPosition = position ?? defaultPosition, resizer = useRef(null);
|
|
24595
|
+
function ResizeControl({ nodeId, position, variant = ResizeControlVariant$1.Handle, className, style: style2 = {}, children: children2, color: color2, minWidth = 10, minHeight = 10, maxWidth = Number.MAX_VALUE, maxHeight = Number.MAX_VALUE, keepAspectRatio = !1, shouldResize, onResizeStart, onResize, onResizeEnd }) {
|
|
24596
|
+
const contextNodeId = useNodeId(), id2 = typeof nodeId == "string" ? nodeId : contextNodeId, store = useStoreApi(), resizeControlRef = useRef(null), defaultPosition = variant === ResizeControlVariant$1.Line ? "right" : "bottom-right", controlPosition = position ?? defaultPosition, resizer = useRef(null);
|
|
24629
24597
|
useEffect(() => {
|
|
24630
24598
|
if (!(!resizeControlRef.current || !id2))
|
|
24631
24599
|
return resizer.current || (resizer.current = XYResizer({
|
|
@@ -24689,11 +24657,15 @@ function ResizeControl({ nodeId, position, variant = ResizeControlVariant.Handle
|
|
|
24689
24657
|
}
|
|
24690
24658
|
triggerNodeChanges(changes);
|
|
24691
24659
|
},
|
|
24692
|
-
onEnd: () => {
|
|
24660
|
+
onEnd: ({ width, height }) => {
|
|
24693
24661
|
const dimensionChange = {
|
|
24694
24662
|
id: id2,
|
|
24695
24663
|
type: "dimensions",
|
|
24696
|
-
resizing: !1
|
|
24664
|
+
resizing: !1,
|
|
24665
|
+
dimensions: {
|
|
24666
|
+
width,
|
|
24667
|
+
height
|
|
24668
|
+
}
|
|
24697
24669
|
};
|
|
24698
24670
|
store.getState().triggerNodeChanges([dimensionChange]);
|
|
24699
24671
|
}
|
|
@@ -24725,7 +24697,7 @@ function ResizeControl({ nodeId, position, variant = ResizeControlVariant.Handle
|
|
|
24725
24697
|
onResizeEnd,
|
|
24726
24698
|
shouldResize
|
|
24727
24699
|
]);
|
|
24728
|
-
const positionClassNames = controlPosition.split("-"), colorStyleProp = variant === ResizeControlVariant.Line ? "borderColor" : "backgroundColor", controlStyle = color2 ? { ...style2, [colorStyleProp]: color2 } : style2;
|
|
24700
|
+
const positionClassNames = controlPosition.split("-"), colorStyleProp = variant === ResizeControlVariant$1.Line ? "borderColor" : "backgroundColor", controlStyle = color2 ? { ...style2, [colorStyleProp]: color2 } : style2;
|
|
24729
24701
|
return jsx("div", { className: cc(["react-flow__resize-control", "nodrag", ...positionClassNames, variant, className]), ref: resizeControlRef, style: controlStyle, children: children2 });
|
|
24730
24702
|
}
|
|
24731
24703
|
memo$3(ResizeControl);
|
|
@@ -24747,7 +24719,7 @@ const nodeEqualityFn = (a2, b2) => a2?.internals.positionAbsolute.x !== b2?.inte
|
|
|
24747
24719
|
zoom: state.transform[2],
|
|
24748
24720
|
selectedNodesCount: state.nodes.filter((node2) => node2.selected).length
|
|
24749
24721
|
});
|
|
24750
|
-
function NodeToolbar({ nodeId, children: children2, className, style: style2, isVisible, position = Position.Top, offset: offset2 = 10, align = "center", ...rest }) {
|
|
24722
|
+
function NodeToolbar({ nodeId, children: children2, className, style: style2, isVisible, position = Position$1.Top, offset: offset2 = 10, align = "center", ...rest }) {
|
|
24751
24723
|
const contextNodeId = useNodeId(), nodesSelector2 = useCallback((state) => (Array.isArray(nodeId) ? nodeId : [nodeId || contextNodeId || ""]).reduce((res, id2) => {
|
|
24752
24724
|
const node2 = state.nodeLookup.get(id2);
|
|
24753
24725
|
return node2 && res.set(node2.id, node2), res;
|
|
@@ -25510,6 +25482,165 @@ const useXYStoreApi = useStoreApi, useXYInternalNode = useInternalNode, selectZo
|
|
|
25510
25482
|
function useIsZoomTooSmall() {
|
|
25511
25483
|
return useStore$1(selectZoom);
|
|
25512
25484
|
}
|
|
25485
|
+
var ConnectionMode;
|
|
25486
|
+
(function(ConnectionMode2) {
|
|
25487
|
+
ConnectionMode2.Strict = "strict", ConnectionMode2.Loose = "loose";
|
|
25488
|
+
})(ConnectionMode || (ConnectionMode = {}));
|
|
25489
|
+
var PanOnScrollMode;
|
|
25490
|
+
(function(PanOnScrollMode2) {
|
|
25491
|
+
PanOnScrollMode2.Free = "free", PanOnScrollMode2.Vertical = "vertical", PanOnScrollMode2.Horizontal = "horizontal";
|
|
25492
|
+
})(PanOnScrollMode || (PanOnScrollMode = {}));
|
|
25493
|
+
var SelectionMode;
|
|
25494
|
+
(function(SelectionMode2) {
|
|
25495
|
+
SelectionMode2.Partial = "partial", SelectionMode2.Full = "full";
|
|
25496
|
+
})(SelectionMode || (SelectionMode = {}));
|
|
25497
|
+
var ConnectionLineType;
|
|
25498
|
+
(function(ConnectionLineType2) {
|
|
25499
|
+
ConnectionLineType2.Bezier = "default", ConnectionLineType2.Straight = "straight", ConnectionLineType2.Step = "step", ConnectionLineType2.SmoothStep = "smoothstep", ConnectionLineType2.SimpleBezier = "simplebezier";
|
|
25500
|
+
})(ConnectionLineType || (ConnectionLineType = {}));
|
|
25501
|
+
var MarkerType;
|
|
25502
|
+
(function(MarkerType2) {
|
|
25503
|
+
MarkerType2.Arrow = "arrow", MarkerType2.ArrowClosed = "arrowclosed";
|
|
25504
|
+
})(MarkerType || (MarkerType = {}));
|
|
25505
|
+
var Position;
|
|
25506
|
+
(function(Position2) {
|
|
25507
|
+
Position2.Left = "left", Position2.Top = "top", Position2.Right = "right", Position2.Bottom = "bottom";
|
|
25508
|
+
})(Position || (Position = {}));
|
|
25509
|
+
Position.Left + "", Position.Right, Position.Right + "", Position.Left, Position.Top + "", Position.Bottom, Position.Bottom + "", Position.Top;
|
|
25510
|
+
const isInternalNodeBase = (element) => "id" in element && "internals" in element && !("source" in element) && !("target" in element), getNodePositionWithOrigin = (node2, nodeOrigin = [0, 0]) => {
|
|
25511
|
+
const { width, height } = getNodeDimensions(node2), origin = node2.origin ?? nodeOrigin, offsetX = width * origin[0], offsetY = height * origin[1];
|
|
25512
|
+
return {
|
|
25513
|
+
x: node2.position.x - offsetX,
|
|
25514
|
+
y: node2.position.y - offsetY
|
|
25515
|
+
};
|
|
25516
|
+
}, clamp = (val, min2 = 0, max2 = 1) => Math.min(Math.max(val, min2), max2), getBoundsOfBoxes = (box1, box2) => ({
|
|
25517
|
+
x: Math.min(box1.x, box2.x),
|
|
25518
|
+
y: Math.min(box1.y, box2.y),
|
|
25519
|
+
x2: Math.max(box1.x2, box2.x2),
|
|
25520
|
+
y2: Math.max(box1.y2, box2.y2)
|
|
25521
|
+
}), rectToBox = ({ x: x2, y: y2, width, height }) => ({
|
|
25522
|
+
x: x2,
|
|
25523
|
+
y: y2,
|
|
25524
|
+
x2: x2 + width,
|
|
25525
|
+
y2: y2 + height
|
|
25526
|
+
}), boxToRect = ({ x: x2, y: y2, x2: x22, y2: y22 }) => ({
|
|
25527
|
+
x: x2,
|
|
25528
|
+
y: y2,
|
|
25529
|
+
width: x22 - x2,
|
|
25530
|
+
height: y22 - y2
|
|
25531
|
+
}), nodeToRect = (node2, nodeOrigin = [0, 0]) => {
|
|
25532
|
+
const { x: x2, y: y2 } = isInternalNodeBase(node2) ? node2.internals.positionAbsolute : getNodePositionWithOrigin(node2, nodeOrigin);
|
|
25533
|
+
return {
|
|
25534
|
+
x: x2,
|
|
25535
|
+
y: y2,
|
|
25536
|
+
width: node2.measured?.width ?? node2.width ?? node2.initialWidth ?? 0,
|
|
25537
|
+
height: node2.measured?.height ?? node2.height ?? node2.initialHeight ?? 0
|
|
25538
|
+
};
|
|
25539
|
+
}, getBoundsOfRects = (rect1, rect2) => boxToRect(getBoundsOfBoxes(rectToBox(rect1), rectToBox(rect2))), rendererPointToPoint = ({ x: x2, y: y2 }, [tx, ty, tScale]) => ({
|
|
25540
|
+
x: x2 * tScale + tx,
|
|
25541
|
+
y: y2 * tScale + ty
|
|
25542
|
+
});
|
|
25543
|
+
function parsePadding(padding, viewport) {
|
|
25544
|
+
return Math.floor(viewport - viewport / (1 + padding));
|
|
25545
|
+
}
|
|
25546
|
+
function parsePaddings(padding, width, height) {
|
|
25547
|
+
{
|
|
25548
|
+
const paddingY = parsePadding(padding, height), paddingX = parsePadding(padding, width);
|
|
25549
|
+
return {
|
|
25550
|
+
top: paddingY,
|
|
25551
|
+
right: paddingX,
|
|
25552
|
+
bottom: paddingY,
|
|
25553
|
+
left: paddingX,
|
|
25554
|
+
x: paddingX * 2,
|
|
25555
|
+
y: paddingY * 2
|
|
25556
|
+
};
|
|
25557
|
+
}
|
|
25558
|
+
}
|
|
25559
|
+
function calculateAppliedPaddings(bounds, x2, y2, zoom2, width, height) {
|
|
25560
|
+
const { x: left, y: top } = rendererPointToPoint(bounds, [x2, y2, zoom2]), { x: boundRight, y: boundBottom } = rendererPointToPoint({ x: bounds.x + bounds.width, y: bounds.y + bounds.height }, [x2, y2, zoom2]), right = width - boundRight, bottom = height - boundBottom;
|
|
25561
|
+
return {
|
|
25562
|
+
left: Math.floor(left),
|
|
25563
|
+
top: Math.floor(top),
|
|
25564
|
+
right: Math.floor(right),
|
|
25565
|
+
bottom: Math.floor(bottom)
|
|
25566
|
+
};
|
|
25567
|
+
}
|
|
25568
|
+
const getViewportForBounds = (bounds, width, height, minZoom, maxZoom, padding) => {
|
|
25569
|
+
const p2 = parsePaddings(padding, width, height), xZoom = (width - p2.x) / bounds.width, yZoom = (height - p2.y) / bounds.height, zoom2 = Math.min(xZoom, yZoom), clampedZoom = clamp(zoom2, minZoom, maxZoom), boundsCenterX = bounds.x + bounds.width / 2, boundsCenterY = bounds.y + bounds.height / 2, x2 = width / 2 - boundsCenterX * clampedZoom, y2 = height / 2 - boundsCenterY * clampedZoom, newPadding = calculateAppliedPaddings(bounds, x2, y2, clampedZoom, width, height), offset2 = {
|
|
25570
|
+
left: Math.min(newPadding.left - p2.left, 0),
|
|
25571
|
+
top: Math.min(newPadding.top - p2.top, 0),
|
|
25572
|
+
right: Math.min(newPadding.right - p2.right, 0),
|
|
25573
|
+
bottom: Math.min(newPadding.bottom - p2.bottom, 0)
|
|
25574
|
+
};
|
|
25575
|
+
return {
|
|
25576
|
+
x: x2 - offset2.left + offset2.right,
|
|
25577
|
+
y: y2 - offset2.top + offset2.bottom,
|
|
25578
|
+
zoom: clampedZoom
|
|
25579
|
+
};
|
|
25580
|
+
}, isMacOs = () => typeof navigator < "u" && navigator?.userAgent?.indexOf("Mac") >= 0;
|
|
25581
|
+
function getNodeDimensions(node2) {
|
|
25582
|
+
return {
|
|
25583
|
+
width: node2.measured?.width ?? node2.width ?? node2.initialWidth ?? 0,
|
|
25584
|
+
height: node2.measured?.height ?? node2.height ?? node2.initialHeight ?? 0
|
|
25585
|
+
};
|
|
25586
|
+
}
|
|
25587
|
+
function getBezierEdgeCenter({ sourceX, sourceY, targetX, targetY, sourceControlX, sourceControlY, targetControlX, targetControlY }) {
|
|
25588
|
+
const centerX = sourceX * 0.125 + sourceControlX * 0.375 + targetControlX * 0.375 + targetX * 0.125, centerY2 = sourceY * 0.125 + sourceControlY * 0.375 + targetControlY * 0.375 + targetY * 0.125, offsetX = Math.abs(centerX - sourceX), offsetY = Math.abs(centerY2 - sourceY);
|
|
25589
|
+
return [centerX, centerY2, offsetX, offsetY];
|
|
25590
|
+
}
|
|
25591
|
+
function calculateControlOffset(distance2, curvature) {
|
|
25592
|
+
return distance2 >= 0 ? 0.5 * distance2 : curvature * 25 * Math.sqrt(-distance2);
|
|
25593
|
+
}
|
|
25594
|
+
function getControlWithCurvature({ pos, x1, y1, x2, y2, c: c2 }) {
|
|
25595
|
+
switch (pos) {
|
|
25596
|
+
case Position.Left:
|
|
25597
|
+
return [x1 - calculateControlOffset(x1 - x2, c2), y1];
|
|
25598
|
+
case Position.Right:
|
|
25599
|
+
return [x1 + calculateControlOffset(x2 - x1, c2), y1];
|
|
25600
|
+
case Position.Top:
|
|
25601
|
+
return [x1, y1 - calculateControlOffset(y1 - y2, c2)];
|
|
25602
|
+
case Position.Bottom:
|
|
25603
|
+
return [x1, y1 + calculateControlOffset(y2 - y1, c2)];
|
|
25604
|
+
}
|
|
25605
|
+
}
|
|
25606
|
+
function getBezierPath({ sourceX, sourceY, sourcePosition = Position.Bottom, targetX, targetY, targetPosition = Position.Top, curvature = 0.25 }) {
|
|
25607
|
+
const [sourceControlX, sourceControlY] = getControlWithCurvature({
|
|
25608
|
+
pos: sourcePosition,
|
|
25609
|
+
x1: sourceX,
|
|
25610
|
+
y1: sourceY,
|
|
25611
|
+
x2: targetX,
|
|
25612
|
+
y2: targetY,
|
|
25613
|
+
c: curvature
|
|
25614
|
+
}), [targetControlX, targetControlY] = getControlWithCurvature({
|
|
25615
|
+
pos: targetPosition,
|
|
25616
|
+
x1: targetX,
|
|
25617
|
+
y1: targetY,
|
|
25618
|
+
x2: sourceX,
|
|
25619
|
+
y2: sourceY,
|
|
25620
|
+
c: curvature
|
|
25621
|
+
}), [labelX, labelY, offsetX, offsetY] = getBezierEdgeCenter({
|
|
25622
|
+
sourceX,
|
|
25623
|
+
sourceY,
|
|
25624
|
+
targetX,
|
|
25625
|
+
targetY,
|
|
25626
|
+
sourceControlX,
|
|
25627
|
+
sourceControlY,
|
|
25628
|
+
targetControlX,
|
|
25629
|
+
targetControlY
|
|
25630
|
+
});
|
|
25631
|
+
return [
|
|
25632
|
+
`M${sourceX},${sourceY} C${sourceControlX},${sourceControlY} ${targetControlX},${targetControlY} ${targetX},${targetY}`,
|
|
25633
|
+
labelX,
|
|
25634
|
+
labelY,
|
|
25635
|
+
offsetX,
|
|
25636
|
+
offsetY
|
|
25637
|
+
];
|
|
25638
|
+
}
|
|
25639
|
+
Position.Left + "", Position.Right + "", Position.Top + "", Position.Bottom + "";
|
|
25640
|
+
var ResizeControlVariant;
|
|
25641
|
+
(function(ResizeControlVariant2) {
|
|
25642
|
+
ResizeControlVariant2.Line = "line", ResizeControlVariant2.Handle = "handle";
|
|
25643
|
+
})(ResizeControlVariant || (ResizeControlVariant = {}));
|
|
25513
25644
|
const { abs: abs$1, cos: cos$1, sin: sin$1, acos: acos$1, atan2, sqrt: sqrt$1, pow } = Math;
|
|
25514
25645
|
function crt(v2) {
|
|
25515
25646
|
return v2 < 0 ? -pow(-v2, 1 / 3) : pow(v2, 1 / 3);
|
|
@@ -29144,38 +29275,28 @@ const useDiagramActorRef = () => {
|
|
|
29144
29275
|
return ctx;
|
|
29145
29276
|
};
|
|
29146
29277
|
function useDiagram() {
|
|
29147
|
-
const actor = useDiagramActorRef()
|
|
29278
|
+
const actor = useDiagramActorRef();
|
|
29148
29279
|
return useMemo(() => ({
|
|
29149
29280
|
actor,
|
|
29150
29281
|
send: actor.send,
|
|
29151
29282
|
navigateTo: (viewId, fromNode) => {
|
|
29152
|
-
|
|
29153
|
-
|
|
29154
|
-
|
|
29155
|
-
|
|
29156
|
-
...fromNode && { fromNode }
|
|
29157
|
-
});
|
|
29283
|
+
actor.send({
|
|
29284
|
+
type: "navigate.to",
|
|
29285
|
+
viewId,
|
|
29286
|
+
...fromNode && { fromNode }
|
|
29158
29287
|
});
|
|
29159
29288
|
},
|
|
29160
29289
|
navigate: (direction) => {
|
|
29161
|
-
|
|
29162
|
-
actor.send({ type: `navigate.${direction}` });
|
|
29163
|
-
});
|
|
29290
|
+
actor.send({ type: `navigate.${direction}` });
|
|
29164
29291
|
},
|
|
29165
29292
|
fitDiagram: (duration = 350) => {
|
|
29166
|
-
|
|
29167
|
-
actor.send({ type: "fitDiagram", duration });
|
|
29168
|
-
});
|
|
29293
|
+
actor.send({ type: "fitDiagram", duration });
|
|
29169
29294
|
},
|
|
29170
29295
|
openRelationshipsBrowser: (fqn2) => {
|
|
29171
|
-
|
|
29172
|
-
actor.send({ type: "open.relationshipsBrowser", fqn: fqn2 });
|
|
29173
|
-
});
|
|
29296
|
+
actor.send({ type: "open.relationshipsBrowser", fqn: fqn2 });
|
|
29174
29297
|
},
|
|
29175
29298
|
openSource: (params) => {
|
|
29176
|
-
|
|
29177
|
-
actor.send({ type: "open.source", ...params });
|
|
29178
|
-
});
|
|
29299
|
+
actor.send({ type: "open.source", ...params });
|
|
29179
29300
|
},
|
|
29180
29301
|
openElementDetails: (fqn2, fromNode) => {
|
|
29181
29302
|
actor.send({ type: "open.elementDetails", fqn: fqn2, fromNode });
|
|
@@ -30513,9 +30634,10 @@ function EdgeLabelContainer({
|
|
|
30513
30634
|
children: /* @__PURE__ */ jsx(
|
|
30514
30635
|
"div",
|
|
30515
30636
|
{
|
|
30516
|
-
|
|
30637
|
+
style: {
|
|
30517
30638
|
display: "contents"
|
|
30518
|
-
}
|
|
30639
|
+
},
|
|
30640
|
+
// Work around to keep same global selector data-likec4-dimmed
|
|
30519
30641
|
...isDimmed !== !1 && {
|
|
30520
30642
|
"data-likec4-dimmed": isDimmed
|
|
30521
30643
|
},
|
|
@@ -30813,14 +30935,13 @@ const EdgePath = forwardRef(({
|
|
|
30813
30935
|
alignItems: "center"
|
|
30814
30936
|
});
|
|
30815
30937
|
function ElementActionButtons({
|
|
30816
|
-
id: id2,
|
|
30817
30938
|
selected: selected2 = !1,
|
|
30818
30939
|
data: {
|
|
30819
30940
|
hovered: isHovered = !1
|
|
30820
30941
|
},
|
|
30821
30942
|
buttons: buttons2
|
|
30822
30943
|
}) {
|
|
30823
|
-
const zoomTooSmall = useIsZoomTooSmall();
|
|
30944
|
+
const id2 = useId$1(), zoomTooSmall = useIsZoomTooSmall();
|
|
30824
30945
|
return !buttons2.length || zoomTooSmall ? null : /* @__PURE__ */ jsx(Box$1, { className: container$4, children: /* @__PURE__ */ jsx(
|
|
30825
30946
|
Box$1,
|
|
30826
30947
|
{
|
|
@@ -30839,21 +30960,24 @@ function ElementActionButtons({
|
|
|
30839
30960
|
"data-likec4-hovered": isHovered,
|
|
30840
30961
|
className: cx("nodrag nopan", actionButtons),
|
|
30841
30962
|
children: buttons2.map((button2, index2) => /* @__PURE__ */ jsx(
|
|
30842
|
-
|
|
30963
|
+
ActionIcon$1,
|
|
30843
30964
|
{
|
|
30965
|
+
component: m.button,
|
|
30966
|
+
layout: !0,
|
|
30967
|
+
className: actionBtn$1({}),
|
|
30844
30968
|
initial: !1,
|
|
30845
30969
|
whileTap: { scale: 1 },
|
|
30846
30970
|
whileHover: {
|
|
30847
30971
|
scale: 1.3
|
|
30848
30972
|
},
|
|
30849
|
-
|
|
30850
|
-
onClick: stopPropagation$1,
|
|
30973
|
+
onClick: button2.onClick,
|
|
30851
30974
|
onDoubleClick: stopPropagation$1,
|
|
30852
|
-
children:
|
|
30975
|
+
children: button2.icon
|
|
30853
30976
|
},
|
|
30854
|
-
|
|
30977
|
+
`${id2}-${button2.key ?? index2}`
|
|
30855
30978
|
))
|
|
30856
|
-
}
|
|
30979
|
+
},
|
|
30980
|
+
`${id2}-action-buttons`
|
|
30857
30981
|
) });
|
|
30858
30982
|
}
|
|
30859
30983
|
const container$3 = css({
|
|
@@ -30885,11 +31009,13 @@ function ElementDetailsButton({
|
|
|
30885
31009
|
icon: icon2,
|
|
30886
31010
|
onClick
|
|
30887
31011
|
}) {
|
|
31012
|
+
const id2 = useId$1();
|
|
30888
31013
|
return /* @__PURE__ */ jsx(Box$1, { className: cx(container$3, "details-button"), children: /* @__PURE__ */ jsx(
|
|
30889
31014
|
ActionIcon$1,
|
|
30890
31015
|
{
|
|
30891
31016
|
className: cx("nodrag nopan", actionBtn$1({ variant: "transparent" })),
|
|
30892
31017
|
component: m.button,
|
|
31018
|
+
layout: !0,
|
|
30893
31019
|
initial: !1,
|
|
30894
31020
|
style: {
|
|
30895
31021
|
originX: 0.45,
|
|
@@ -30910,7 +31036,8 @@ function ElementDetailsButton({
|
|
|
30910
31036
|
onClick,
|
|
30911
31037
|
onDoubleClick: stopPropagation$1,
|
|
30912
31038
|
children: icon2 ?? /* @__PURE__ */ jsx(IconId, { stroke: 1.8, style: { width: "75%" } })
|
|
30913
|
-
}
|
|
31039
|
+
},
|
|
31040
|
+
id2
|
|
30914
31041
|
) });
|
|
30915
31042
|
}
|
|
30916
31043
|
const container$2 = css({
|
|
@@ -31553,8 +31680,8 @@ const style = {
|
|
|
31553
31680
|
left: "50%",
|
|
31554
31681
|
visibility: "hidden"
|
|
31555
31682
|
}, DefaultHandles = () => /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
31556
|
-
/* @__PURE__ */ jsx(Handle, { type: "target", position: Position.Top, style }),
|
|
31557
|
-
/* @__PURE__ */ jsx(Handle, { type: "source", position: Position.Bottom, style })
|
|
31683
|
+
/* @__PURE__ */ jsx(Handle, { type: "target", position: Position$1.Top, style }),
|
|
31684
|
+
/* @__PURE__ */ jsx(Handle, { type: "source", position: Position$1.Bottom, style })
|
|
31558
31685
|
] });
|
|
31559
31686
|
class VectorImpl {
|
|
31560
31687
|
constructor(x2, y2) {
|
|
@@ -32232,7 +32359,17 @@ const curve = d3line().curve(curveCatmullRomOpen).x((d2) => d2.x).y((d2) => d2.y
|
|
|
32232
32359
|
}
|
|
32233
32360
|
return /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
32234
32361
|
/* @__PURE__ */ jsxs(EdgeContainer, { ...props, className: clsx(isControlPointDragging && controlDragging), children: [
|
|
32235
|
-
/* @__PURE__ */ jsx(
|
|
32362
|
+
/* @__PURE__ */ jsx(
|
|
32363
|
+
EdgePath,
|
|
32364
|
+
{
|
|
32365
|
+
...props,
|
|
32366
|
+
svgPath: edgePath,
|
|
32367
|
+
ref: svgPathRef,
|
|
32368
|
+
...enableEdgeEditing && {
|
|
32369
|
+
onEdgePointerDown
|
|
32370
|
+
}
|
|
32371
|
+
}
|
|
32372
|
+
),
|
|
32236
32373
|
/* @__PURE__ */ jsx(
|
|
32237
32374
|
EdgeLabelContainer,
|
|
32238
32375
|
{
|
|
@@ -33438,7 +33575,7 @@ function useRelationshipsBrowserState(selector3, compare = shallowEqual) {
|
|
|
33438
33575
|
return useSelector(actor, useCallbackRef(selector3), compare);
|
|
33439
33576
|
}
|
|
33440
33577
|
function useRelationshipsBrowser() {
|
|
33441
|
-
const actor = useRelationshipsBrowserActor()
|
|
33578
|
+
const actor = useRelationshipsBrowserActor();
|
|
33442
33579
|
return useMemo(() => ({
|
|
33443
33580
|
actor,
|
|
33444
33581
|
get rootElementId() {
|
|
@@ -33459,12 +33596,10 @@ function useRelationshipsBrowser() {
|
|
|
33459
33596
|
});
|
|
33460
33597
|
},
|
|
33461
33598
|
navigateTo: (subject, fromNode) => {
|
|
33462
|
-
|
|
33463
|
-
|
|
33464
|
-
|
|
33465
|
-
|
|
33466
|
-
fromNode
|
|
33467
|
-
});
|
|
33599
|
+
actor.send({
|
|
33600
|
+
type: "navigate.to",
|
|
33601
|
+
subject,
|
|
33602
|
+
fromNode
|
|
33468
33603
|
});
|
|
33469
33604
|
},
|
|
33470
33605
|
fitDiagram: () => {
|
|
@@ -33614,7 +33749,7 @@ const ElementDetailsButtonWithHandler$1 = (props) => {
|
|
|
33614
33749
|
);
|
|
33615
33750
|
}, ElementNode$1 = customNode((props) => /* @__PURE__ */ jsxs(ElementNodeContainer, { component: m.div, layoutId: props.id, nodeProps: props, children: [
|
|
33616
33751
|
/* @__PURE__ */ jsx(ElementShape, { ...props }),
|
|
33617
|
-
/* @__PURE__ */ jsx(ElementTitle, { ...props
|
|
33752
|
+
/* @__PURE__ */ jsx(ElementTitle, { ...props }),
|
|
33618
33753
|
/* @__PURE__ */ jsx(ElementDetailsButtonWithHandler$1, { ...props }),
|
|
33619
33754
|
/* @__PURE__ */ jsx(ElementActions$1, { ...props }),
|
|
33620
33755
|
/* @__PURE__ */ jsx(ElementPorts$1, { ...props })
|
|
@@ -35961,7 +36096,7 @@ const dagre = /* @__PURE__ */ getDefaultExportFromCjs(dagreExports), Sizes$1 = {
|
|
|
35961
36096
|
edgesep: 25
|
|
35962
36097
|
},
|
|
35963
36098
|
edgeLabel: {
|
|
35964
|
-
width:
|
|
36099
|
+
width: 140,
|
|
35965
36100
|
height: 10,
|
|
35966
36101
|
minlen: 1,
|
|
35967
36102
|
weight: 1
|
|
@@ -36153,7 +36288,7 @@ function layoutRelationshipsView(data, scope) {
|
|
|
36153
36288
|
for (const edge of g2.edges())
|
|
36154
36289
|
g2.setEdge(edge, {
|
|
36155
36290
|
...Sizes$1.edgeLabel,
|
|
36156
|
-
width: edgeCount >
|
|
36291
|
+
width: edgeCount > 25 ? 800 : 400
|
|
36157
36292
|
});
|
|
36158
36293
|
const dagreBounds = applyDagreLayout$1(g2), _calculatedNodeBounds = C(
|
|
36159
36294
|
nodeIds,
|
|
@@ -36243,8 +36378,6 @@ function layoutRelationshipsView(data, scope) {
|
|
|
36243
36378
|
width,
|
|
36244
36379
|
height
|
|
36245
36380
|
},
|
|
36246
|
-
inEdges: [],
|
|
36247
|
-
outEdges: [],
|
|
36248
36381
|
children: [],
|
|
36249
36382
|
width,
|
|
36250
36383
|
height,
|
|
@@ -36285,8 +36418,6 @@ function layoutRelationshipsView(data, scope) {
|
|
|
36285
36418
|
...element.$element.style
|
|
36286
36419
|
},
|
|
36287
36420
|
navigateTo,
|
|
36288
|
-
inEdges: [],
|
|
36289
|
-
outEdges: [],
|
|
36290
36421
|
...children2.length > 0 && { depth: nodeDepth(id2) },
|
|
36291
36422
|
children: children2,
|
|
36292
36423
|
width,
|
|
@@ -37482,7 +37613,7 @@ const backdropBlur = "--_blur", backdropOpacity = "--_opacity", level = "--_leve
|
|
|
37482
37613
|
[backdropBlur]: "0px",
|
|
37483
37614
|
[level]: "0",
|
|
37484
37615
|
[offset]: "0px",
|
|
37485
|
-
[inset]: "calc((1 + var(--_level) * 0.
|
|
37616
|
+
[inset]: "calc((1 + var(--_level) * 0.75) * var(--_offset))",
|
|
37486
37617
|
[backdropOpacity]: "0%",
|
|
37487
37618
|
_backdrop: {
|
|
37488
37619
|
cursor: "zoom-out",
|
|
@@ -37503,8 +37634,8 @@ const backdropBlur = "--_blur", backdropOpacity = "--_opacity", level = "--_leve
|
|
|
37503
37634
|
height: "100vh"
|
|
37504
37635
|
},
|
|
37505
37636
|
sm: {
|
|
37506
|
-
inset: "[var(--_inset) var(--
|
|
37507
|
-
width: "calc(100vw -
|
|
37637
|
+
inset: "[var(--_inset) var(--_inset) var(--_offset) var(--_inset)]",
|
|
37638
|
+
width: "calc(100vw - 2 * var(--_inset))",
|
|
37508
37639
|
height: "calc(100vh - var(--_offset) - var(--_inset))",
|
|
37509
37640
|
[borderRadius]: "6px",
|
|
37510
37641
|
padding: "6px",
|
|
@@ -37519,22 +37650,6 @@ const backdropBlur = "--_blur", backdropOpacity = "--_opacity", level = "--_leve
|
|
|
37519
37650
|
xl: {
|
|
37520
37651
|
[offset]: "4rem"
|
|
37521
37652
|
}
|
|
37522
|
-
// inset: '[calc(2rem + var(--_level, 0) * 1rem), 2rem, 2rem, 2rem]',
|
|
37523
|
-
// width: 'calc(100vw - 4rem)',
|
|
37524
|
-
// height: 'calc(100vh - 4rem - var(--_level, 0) * 1rem)',
|
|
37525
|
-
// },
|
|
37526
|
-
// lg: {
|
|
37527
|
-
// inset: '[calc(4rem + var(--_level, 0) * 1rem), 4rem, 4rem, 4rem]',
|
|
37528
|
-
// width: 'calc(100vw - 8rem)',
|
|
37529
|
-
// height: 'calc(100vh - 8rem)',
|
|
37530
|
-
// },
|
|
37531
|
-
// xl: {
|
|
37532
|
-
// [borderRadius]: '8px',
|
|
37533
|
-
// padding: '8px',
|
|
37534
|
-
// inset: '[calc(5rem + var(--_level, 0) * 1rem), 5rem, 5rem, 5rem]',
|
|
37535
|
-
// width: 'calc(100vw - 10rem)',
|
|
37536
|
-
// height: 'calc(100vh - 10rem - var(--_level, 0) * 1rem)',
|
|
37537
|
-
// },
|
|
37538
37653
|
}), body = css.raw({
|
|
37539
37654
|
position: "relative",
|
|
37540
37655
|
containerName: "overlay-dialog",
|
|
@@ -37552,108 +37667,91 @@ const backdropBlur = "--_blur", backdropOpacity = "--_opacity", level = "--_leve
|
|
|
37552
37667
|
base: {
|
|
37553
37668
|
dialog,
|
|
37554
37669
|
body
|
|
37555
|
-
}
|
|
37556
|
-
|
|
37557
|
-
|
|
37558
|
-
|
|
37559
|
-
|
|
37560
|
-
|
|
37561
|
-
|
|
37670
|
+
}
|
|
37671
|
+
}), Overlay = forwardRef(({
|
|
37672
|
+
onClose,
|
|
37673
|
+
className,
|
|
37674
|
+
classes: classes2,
|
|
37675
|
+
overlayLevel = 0,
|
|
37676
|
+
children: children2,
|
|
37677
|
+
...rest
|
|
37678
|
+
}, ref) => {
|
|
37679
|
+
const [opened, setOpened] = useState(!1), dialogRef = useRef(null), isClosingRef = useRef(!1), motionNotReduced = useReducedMotionConfig() !== !0, onCloseRef = useSyncedRef(onClose), close = useDebouncedCallback(
|
|
37680
|
+
() => {
|
|
37681
|
+
isClosingRef.current || (isClosingRef.current = !0, onCloseRef.current());
|
|
37682
|
+
},
|
|
37683
|
+
[],
|
|
37684
|
+
50
|
|
37685
|
+
);
|
|
37686
|
+
useEffect(() => {
|
|
37687
|
+
const cancel2 = (e2) => {
|
|
37688
|
+
e2.preventDefault(), close();
|
|
37689
|
+
};
|
|
37690
|
+
return dialogRef.current?.addEventListener("cancel", cancel2, { capture: !0 }), () => {
|
|
37691
|
+
dialogRef.current?.removeEventListener("cancel", cancel2, { capture: !0 });
|
|
37692
|
+
};
|
|
37693
|
+
}, []), useTimeoutEffect(() => {
|
|
37694
|
+
dialogRef.current?.open || dialogRef.current?.showModal();
|
|
37695
|
+
}, 30), useTimeoutEffect(() => {
|
|
37696
|
+
setOpened(!0);
|
|
37697
|
+
}, 120);
|
|
37698
|
+
const styles = overlay({
|
|
37699
|
+
level: overlayLevel
|
|
37700
|
+
});
|
|
37701
|
+
return /* @__PURE__ */ jsx(
|
|
37702
|
+
m.dialog,
|
|
37703
|
+
{
|
|
37704
|
+
ref: useMergedRef(dialogRef, ref),
|
|
37705
|
+
className: cx(ReactRemoveScroll.classNames.fullWidth, styles.dialog, classes2?.dialog, className),
|
|
37706
|
+
layout: !0,
|
|
37707
|
+
style: {
|
|
37708
|
+
// @ts-ignore
|
|
37709
|
+
[level]: overlayLevel
|
|
37562
37710
|
},
|
|
37563
|
-
|
|
37564
|
-
|
|
37565
|
-
[
|
|
37711
|
+
...motionNotReduced ? {
|
|
37712
|
+
initial: {
|
|
37713
|
+
[backdropBlur]: "0px",
|
|
37714
|
+
[backdropOpacity]: "0%",
|
|
37715
|
+
scale: overlayLevel > 0 ? 0.9 : 1.075,
|
|
37716
|
+
opacity: 0
|
|
37717
|
+
},
|
|
37718
|
+
animate: {
|
|
37719
|
+
[backdropBlur]: overlayLevel > 0 ? "4px" : "8px",
|
|
37720
|
+
[backdropOpacity]: overlayLevel > 0 ? "50%" : "60%",
|
|
37721
|
+
scale: 1,
|
|
37722
|
+
opacity: 1,
|
|
37723
|
+
transition: {
|
|
37724
|
+
delay: 0.075
|
|
37725
|
+
}
|
|
37726
|
+
},
|
|
37727
|
+
exit: {
|
|
37728
|
+
scale: 1.2,
|
|
37729
|
+
opacity: 0,
|
|
37730
|
+
[backdropBlur]: "0px",
|
|
37731
|
+
[backdropOpacity]: "0%"
|
|
37566
37732
|
}
|
|
37567
|
-
}
|
|
37568
|
-
|
|
37569
|
-
|
|
37570
|
-
[
|
|
37733
|
+
} : {
|
|
37734
|
+
initial: {
|
|
37735
|
+
[backdropBlur]: "8px",
|
|
37736
|
+
[backdropOpacity]: "60%"
|
|
37571
37737
|
}
|
|
37572
37738
|
},
|
|
37573
|
-
|
|
37574
|
-
|
|
37575
|
-
|
|
37739
|
+
onClick: (e2) => {
|
|
37740
|
+
if (e2.stopPropagation(), e2.target?.nodeName?.toUpperCase() === "DIALOG") {
|
|
37741
|
+
dialogRef.current?.close();
|
|
37742
|
+
return;
|
|
37576
37743
|
}
|
|
37577
|
-
}
|
|
37578
|
-
}
|
|
37579
|
-
}
|
|
37580
|
-
}), Overlay = forwardRef(
|
|
37581
|
-
({ children: children2, onClose, className, classes: classes2, overlayLevel = 0, ...rest }, ref) => {
|
|
37582
|
-
const [opened, setOpened] = useState(!1), dialogRef = useRef(null), isClosingRef = useRef(!1), motionNotReduced = useReducedMotionConfig() !== !0, onCloseRef = useSyncedRef(onClose), close = useDebouncedCallback(
|
|
37583
|
-
() => {
|
|
37584
|
-
isClosingRef.current || (isClosingRef.current = !0, onCloseRef.current());
|
|
37585
37744
|
},
|
|
37586
|
-
|
|
37587
|
-
|
|
37588
|
-
|
|
37589
|
-
|
|
37590
|
-
|
|
37591
|
-
|
|
37592
|
-
}
|
|
37593
|
-
|
|
37594
|
-
|
|
37595
|
-
|
|
37596
|
-
}, []), useTimeoutEffect(() => {
|
|
37597
|
-
dialogRef.current?.open || dialogRef.current?.showModal();
|
|
37598
|
-
}, 20), useTimeoutEffect(() => {
|
|
37599
|
-
setOpened(!0);
|
|
37600
|
-
}, 120);
|
|
37601
|
-
const styles = overlay({
|
|
37602
|
-
level: overlayLevel
|
|
37603
|
-
});
|
|
37604
|
-
return /* @__PURE__ */ jsx(
|
|
37605
|
-
m.dialog,
|
|
37606
|
-
{
|
|
37607
|
-
ref: useMergedRef(dialogRef, ref),
|
|
37608
|
-
className: cx(ReactRemoveScroll.classNames.fullWidth, styles.dialog, classes2?.dialog, className),
|
|
37609
|
-
layout: !0,
|
|
37610
|
-
...motionNotReduced ? {
|
|
37611
|
-
initial: {
|
|
37612
|
-
[backdropBlur]: "0px",
|
|
37613
|
-
[backdropOpacity]: "0%",
|
|
37614
|
-
scale: overlayLevel > 0 ? 0.9 : 1.075,
|
|
37615
|
-
opacity: 0
|
|
37616
|
-
},
|
|
37617
|
-
animate: {
|
|
37618
|
-
[backdropBlur]: overlayLevel > 0 ? "4px" : "8px",
|
|
37619
|
-
[backdropOpacity]: overlayLevel > 0 ? "50%" : "60%",
|
|
37620
|
-
scale: 1,
|
|
37621
|
-
opacity: 1,
|
|
37622
|
-
translateY: 0,
|
|
37623
|
-
transition: {
|
|
37624
|
-
delay: 0.075
|
|
37625
|
-
}
|
|
37626
|
-
},
|
|
37627
|
-
exit: {
|
|
37628
|
-
scale: 1.3,
|
|
37629
|
-
opacity: 0,
|
|
37630
|
-
translateY: -10,
|
|
37631
|
-
[backdropBlur]: "0px",
|
|
37632
|
-
[backdropOpacity]: "0%"
|
|
37633
|
-
}
|
|
37634
|
-
} : {
|
|
37635
|
-
initial: {
|
|
37636
|
-
[backdropBlur]: "8px",
|
|
37637
|
-
[backdropOpacity]: "60%"
|
|
37638
|
-
}
|
|
37639
|
-
},
|
|
37640
|
-
onClick: (e2) => {
|
|
37641
|
-
if (e2.stopPropagation(), e2.target?.nodeName?.toUpperCase() === "DIALOG") {
|
|
37642
|
-
dialogRef.current?.close();
|
|
37643
|
-
return;
|
|
37644
|
-
}
|
|
37645
|
-
},
|
|
37646
|
-
onDoubleClick: stopPropagation$1,
|
|
37647
|
-
onPointerDown: stopPropagation$1,
|
|
37648
|
-
onClose: (e2) => {
|
|
37649
|
-
e2.stopPropagation(), close();
|
|
37650
|
-
},
|
|
37651
|
-
...rest,
|
|
37652
|
-
children: /* @__PURE__ */ jsx(ReactRemoveScroll, { forwardProps: !0, removeScrollBar: !1, children: /* @__PURE__ */ jsx(Box$1, { className: cx(styles.body, "overlay-body", classes2?.body), children: opened && /* @__PURE__ */ jsx(Fragment$1, { children: children2 }) }) })
|
|
37653
|
-
}
|
|
37654
|
-
);
|
|
37655
|
-
}
|
|
37656
|
-
);
|
|
37745
|
+
onDoubleClick: stopPropagation$1,
|
|
37746
|
+
onPointerDown: stopPropagation$1,
|
|
37747
|
+
onClose: (e2) => {
|
|
37748
|
+
e2.stopPropagation(), close();
|
|
37749
|
+
},
|
|
37750
|
+
...rest,
|
|
37751
|
+
children: /* @__PURE__ */ jsx(ReactRemoveScroll, { forwardProps: !0, removeScrollBar: !1, children: /* @__PURE__ */ jsx(Box$1, { className: cx(styles.body, "overlay-body", classes2?.body), children: opened && /* @__PURE__ */ jsx(Fragment$1, { children: children2 }) }) })
|
|
37752
|
+
}
|
|
37753
|
+
);
|
|
37754
|
+
});
|
|
37657
37755
|
Overlay.displayName = "Overlay";
|
|
37658
37756
|
function _update$1(current, update) {
|
|
37659
37757
|
return update.map((next) => {
|
|
@@ -38210,123 +38308,7 @@ const findRootSubject = (nodes) => nodes.find(
|
|
|
38210
38308
|
// xyedges: [],
|
|
38211
38309
|
// xynodes: [],
|
|
38212
38310
|
// }),
|
|
38213
|
-
}),
|
|
38214
|
-
...treeFromElements(elements).flatten(),
|
|
38215
|
-
...explicits
|
|
38216
|
-
])) : elements.size > 1 ? new Set(sortParentsFirst([...elements])) : elements;
|
|
38217
|
-
function computeEdgeDetailsViewData(edges, view) {
|
|
38218
|
-
const sources = /* @__PURE__ */ new Set(), relationships = /* @__PURE__ */ new Set(), targets = /* @__PURE__ */ new Set(), explicit = {
|
|
38219
|
-
sources: /* @__PURE__ */ new Set(),
|
|
38220
|
-
targets: /* @__PURE__ */ new Set()
|
|
38221
|
-
}, addExplicit = (el, type) => {
|
|
38222
|
-
type === "source" ? (sources.add(el), explicit.sources.add(el)) : (targets.add(el), explicit.targets.add(el));
|
|
38223
|
-
};
|
|
38224
|
-
for (const edgeId of edges) {
|
|
38225
|
-
const edge = view.findEdge(edgeId), _relationships = edge ? [...edge.relationships("model")] : [];
|
|
38226
|
-
if (!edge || !hasAtLeast(_relationships, 1) || !edge.source.hasElement() || !edge.target.hasElement())
|
|
38227
|
-
continue;
|
|
38228
|
-
const source = edge.source.element, target = edge.target.element;
|
|
38229
|
-
addExplicit(source, "source"), addExplicit(target, "target");
|
|
38230
|
-
for (const relationship of _relationships) {
|
|
38231
|
-
if (relationships.add(relationship), relationship.source !== source) {
|
|
38232
|
-
addExplicit(relationship.source, "source");
|
|
38233
|
-
for (const parent of relationship.source.ancestors()) {
|
|
38234
|
-
if (parent === source)
|
|
38235
|
-
break;
|
|
38236
|
-
sources.add(parent);
|
|
38237
|
-
}
|
|
38238
|
-
}
|
|
38239
|
-
if (relationship.target !== target) {
|
|
38240
|
-
addExplicit(relationship.target, "target");
|
|
38241
|
-
for (const parent of relationship.target.ancestors()) {
|
|
38242
|
-
if (parent === target)
|
|
38243
|
-
break;
|
|
38244
|
-
targets.add(parent);
|
|
38245
|
-
}
|
|
38246
|
-
}
|
|
38247
|
-
}
|
|
38248
|
-
}
|
|
38249
|
-
return {
|
|
38250
|
-
sources: finalize(sources, explicit.sources),
|
|
38251
|
-
targets: finalize(targets, explicit.targets),
|
|
38252
|
-
relationships
|
|
38253
|
-
};
|
|
38254
|
-
}
|
|
38255
|
-
function computeRelationshipDetailsViewData({
|
|
38256
|
-
// relationships: _relationships,
|
|
38257
|
-
source,
|
|
38258
|
-
target
|
|
38259
|
-
}) {
|
|
38260
|
-
const sources = /* @__PURE__ */ new Set(), relationships = /* @__PURE__ */ new Set(), targets = /* @__PURE__ */ new Set(), explicit = {
|
|
38261
|
-
sources: /* @__PURE__ */ new Set(),
|
|
38262
|
-
targets: /* @__PURE__ */ new Set()
|
|
38263
|
-
}, addExplicit = (el, type) => {
|
|
38264
|
-
type === "source" ? (sources.add(el), explicit.sources.add(el)) : (targets.add(el), explicit.targets.add(el));
|
|
38265
|
-
};
|
|
38266
|
-
source && addExplicit(source, "source"), target && addExplicit(target, "target");
|
|
38267
|
-
const [connection] = modelConnection.findConnection(source, target, "directed");
|
|
38268
|
-
if (!connection)
|
|
38269
|
-
return {
|
|
38270
|
-
sources,
|
|
38271
|
-
targets,
|
|
38272
|
-
relationships
|
|
38273
|
-
};
|
|
38274
|
-
for (const relationship of connection.relations) {
|
|
38275
|
-
const relationSource = relationship.source, relationTarget = relationship.target;
|
|
38276
|
-
if (addExplicit(relationSource, "source"), addExplicit(relationTarget, "target"), relationships.add(relationship), source !== relationSource) {
|
|
38277
|
-
invariant$1(isAncestor(source, relationSource), `${source.id} is not an ancestor of ${relationSource.id}`);
|
|
38278
|
-
for (const parent of relationSource.ancestors()) {
|
|
38279
|
-
if (parent === source)
|
|
38280
|
-
break;
|
|
38281
|
-
sources.add(parent);
|
|
38282
|
-
}
|
|
38283
|
-
}
|
|
38284
|
-
if (target !== relationTarget) {
|
|
38285
|
-
invariant$1(isAncestor(target, relationTarget), `${target.id} is not an ancestor of ${relationTarget.id}`);
|
|
38286
|
-
for (const parent of relationTarget.ancestors()) {
|
|
38287
|
-
if (parent === target)
|
|
38288
|
-
break;
|
|
38289
|
-
targets.add(parent);
|
|
38290
|
-
}
|
|
38291
|
-
}
|
|
38292
|
-
}
|
|
38293
|
-
return {
|
|
38294
|
-
sources: finalize(sources, explicit.sources),
|
|
38295
|
-
targets: finalize(targets, explicit.targets),
|
|
38296
|
-
relationships
|
|
38297
|
-
};
|
|
38298
|
-
}
|
|
38299
|
-
const RelationshipDetailsActorContext = createContext(null);
|
|
38300
|
-
function useRelationshipDetailsActor() {
|
|
38301
|
-
return nonNullable(useContext(RelationshipDetailsActorContext), "No RelationshipDetailsActorContext");
|
|
38302
|
-
}
|
|
38303
|
-
function useRelationshipDetailsState(selector3, compare = shallowEqual) {
|
|
38304
|
-
const select2 = useCallbackRef(selector3), actor = useRelationshipDetailsActor();
|
|
38305
|
-
return useSelector(actor, select2, compare);
|
|
38306
|
-
}
|
|
38307
|
-
function useRelationshipDetails() {
|
|
38308
|
-
const actor = useRelationshipDetailsActor(), [, startTransition] = useTransition$1();
|
|
38309
|
-
return useMemo(() => ({
|
|
38310
|
-
actor,
|
|
38311
|
-
get rootElementId() {
|
|
38312
|
-
return `relationship-details-${actor.sessionId.replaceAll(":", "_")}`;
|
|
38313
|
-
},
|
|
38314
|
-
getState: () => actor.getSnapshot().context,
|
|
38315
|
-
send: actor.send,
|
|
38316
|
-
navigateTo: (...params) => {
|
|
38317
|
-
params.length === 1 ? actor.send({ type: "navigate.to", params: { edgeId: params[0] } }) : actor.send({ type: "navigate.to", params: { source: params[0], target: params[1] } });
|
|
38318
|
-
},
|
|
38319
|
-
fitDiagram: () => {
|
|
38320
|
-
startTransition(() => {
|
|
38321
|
-
actor.send({ type: "fitDiagram" });
|
|
38322
|
-
});
|
|
38323
|
-
},
|
|
38324
|
-
close: () => {
|
|
38325
|
-
actor._parent ? actor._parent?.send({ type: "close", actorId: actor.id }) : actor.send({ type: "close" });
|
|
38326
|
-
}
|
|
38327
|
-
}), [actor]);
|
|
38328
|
-
}
|
|
38329
|
-
const Sizes = {
|
|
38311
|
+
}), Sizes = {
|
|
38330
38312
|
dagre: {
|
|
38331
38313
|
ranksep: 60,
|
|
38332
38314
|
nodesep: 35,
|
|
@@ -38710,7 +38692,7 @@ const relationshipDetailsLogic = setup({
|
|
|
38710
38692
|
invariant$1(xyflow2, "xyflow is not initialized"), invariant$1(xystore, "xystore is not initialized"), bounds ??= context2.bounds;
|
|
38711
38693
|
const maxZoom = Math.max(xyflow2.getZoom(), 1);
|
|
38712
38694
|
if (bounds) {
|
|
38713
|
-
const { width, height } = xystore.getState(), viewport = getViewportForBounds(bounds, width, height, MinZoom, maxZoom, 0.1);
|
|
38695
|
+
const { width, height } = xystore.getState(), viewport = getViewportForBounds$1(bounds, width, height, MinZoom, maxZoom, 0.1);
|
|
38714
38696
|
xyflow2.setViewport(viewport, duration > 0 ? { duration } : void 0);
|
|
38715
38697
|
} else
|
|
38716
38698
|
xyflow2.fitView({
|
|
@@ -38861,12 +38843,7 @@ const relationshipDetailsLogic = setup({
|
|
|
38861
38843
|
actions: [
|
|
38862
38844
|
"updateLayoutData",
|
|
38863
38845
|
cancel("fitDiagram"),
|
|
38864
|
-
{
|
|
38865
|
-
type: "xyflow:fitDiagram",
|
|
38866
|
-
params: {
|
|
38867
|
-
duration: 0
|
|
38868
|
-
}
|
|
38869
|
-
},
|
|
38846
|
+
raise({ type: "fitDiagram", duration: 0 }, { id: "fitDiagram", delay: 50 }),
|
|
38870
38847
|
raise({ type: "xyflow.updateNodeInternals" }, { delay: 75 })
|
|
38871
38848
|
]
|
|
38872
38849
|
},
|
|
@@ -38930,7 +38907,9 @@ const relationshipDetailsLogic = setup({
|
|
|
38930
38907
|
}
|
|
38931
38908
|
}), hotkeyLogic = fromCallback(({ sendBack }) => {
|
|
38932
38909
|
const handler = getHotkeyHandler([
|
|
38933
|
-
["Escape", () =>
|
|
38910
|
+
["Escape", (event) => {
|
|
38911
|
+
event.stopPropagation(), sendBack({ type: "close" });
|
|
38912
|
+
}, {
|
|
38934
38913
|
preventDefault: !0
|
|
38935
38914
|
}]
|
|
38936
38915
|
]);
|
|
@@ -39116,7 +39095,93 @@ const relationshipDetailsLogic = setup({
|
|
|
39116
39095
|
"stopListeningToEsc",
|
|
39117
39096
|
"closeAllOverlays"
|
|
39118
39097
|
]
|
|
39119
|
-
}),
|
|
39098
|
+
}), finalize = (elements, explicits) => elements.size > 2 && explicits.size !== elements.size ? new Set(sortParentsFirst([
|
|
39099
|
+
...treeFromElements(elements).flatten(),
|
|
39100
|
+
...explicits
|
|
39101
|
+
])) : elements.size > 1 ? new Set(sortParentsFirst([...elements])) : elements;
|
|
39102
|
+
function computeEdgeDetailsViewData(edges, view) {
|
|
39103
|
+
const sources = /* @__PURE__ */ new Set(), relationships = /* @__PURE__ */ new Set(), targets = /* @__PURE__ */ new Set(), explicit = {
|
|
39104
|
+
sources: /* @__PURE__ */ new Set(),
|
|
39105
|
+
targets: /* @__PURE__ */ new Set()
|
|
39106
|
+
}, addExplicit = (el, type) => {
|
|
39107
|
+
type === "source" ? (sources.add(el), explicit.sources.add(el)) : (targets.add(el), explicit.targets.add(el));
|
|
39108
|
+
};
|
|
39109
|
+
for (const edgeId of edges) {
|
|
39110
|
+
const edge = view.findEdge(edgeId), _relationships = edge ? [...edge.relationships("model")] : [];
|
|
39111
|
+
if (!edge || !hasAtLeast(_relationships, 1) || !edge.source.hasElement() || !edge.target.hasElement())
|
|
39112
|
+
continue;
|
|
39113
|
+
const source = edge.source.element, target = edge.target.element;
|
|
39114
|
+
addExplicit(source, "source"), addExplicit(target, "target");
|
|
39115
|
+
for (const relationship of _relationships) {
|
|
39116
|
+
if (relationships.add(relationship), relationship.source !== source) {
|
|
39117
|
+
addExplicit(relationship.source, "source");
|
|
39118
|
+
for (const parent of relationship.source.ancestors()) {
|
|
39119
|
+
if (parent === source)
|
|
39120
|
+
break;
|
|
39121
|
+
sources.add(parent);
|
|
39122
|
+
}
|
|
39123
|
+
}
|
|
39124
|
+
if (relationship.target !== target) {
|
|
39125
|
+
addExplicit(relationship.target, "target");
|
|
39126
|
+
for (const parent of relationship.target.ancestors()) {
|
|
39127
|
+
if (parent === target)
|
|
39128
|
+
break;
|
|
39129
|
+
targets.add(parent);
|
|
39130
|
+
}
|
|
39131
|
+
}
|
|
39132
|
+
}
|
|
39133
|
+
}
|
|
39134
|
+
return {
|
|
39135
|
+
sources: finalize(sources, explicit.sources),
|
|
39136
|
+
targets: finalize(targets, explicit.targets),
|
|
39137
|
+
relationships
|
|
39138
|
+
};
|
|
39139
|
+
}
|
|
39140
|
+
function computeRelationshipDetailsViewData({
|
|
39141
|
+
// relationships: _relationships,
|
|
39142
|
+
source,
|
|
39143
|
+
target
|
|
39144
|
+
}) {
|
|
39145
|
+
const sources = /* @__PURE__ */ new Set(), relationships = /* @__PURE__ */ new Set(), targets = /* @__PURE__ */ new Set(), explicit = {
|
|
39146
|
+
sources: /* @__PURE__ */ new Set(),
|
|
39147
|
+
targets: /* @__PURE__ */ new Set()
|
|
39148
|
+
}, addExplicit = (el, type) => {
|
|
39149
|
+
type === "source" ? (sources.add(el), explicit.sources.add(el)) : (targets.add(el), explicit.targets.add(el));
|
|
39150
|
+
};
|
|
39151
|
+
source && addExplicit(source, "source"), target && addExplicit(target, "target");
|
|
39152
|
+
const [connection] = modelConnection.findConnection(source, target, "directed");
|
|
39153
|
+
if (!connection)
|
|
39154
|
+
return {
|
|
39155
|
+
sources,
|
|
39156
|
+
targets,
|
|
39157
|
+
relationships
|
|
39158
|
+
};
|
|
39159
|
+
for (const relationship of connection.relations) {
|
|
39160
|
+
const relationSource = relationship.source, relationTarget = relationship.target;
|
|
39161
|
+
if (addExplicit(relationSource, "source"), addExplicit(relationTarget, "target"), relationships.add(relationship), source !== relationSource) {
|
|
39162
|
+
invariant$1(isAncestor(source, relationSource), `${source.id} is not an ancestor of ${relationSource.id}`);
|
|
39163
|
+
for (const parent of relationSource.ancestors()) {
|
|
39164
|
+
if (parent === source)
|
|
39165
|
+
break;
|
|
39166
|
+
sources.add(parent);
|
|
39167
|
+
}
|
|
39168
|
+
}
|
|
39169
|
+
if (target !== relationTarget) {
|
|
39170
|
+
invariant$1(isAncestor(target, relationTarget), `${target.id} is not an ancestor of ${relationTarget.id}`);
|
|
39171
|
+
for (const parent of relationTarget.ancestors()) {
|
|
39172
|
+
if (parent === target)
|
|
39173
|
+
break;
|
|
39174
|
+
targets.add(parent);
|
|
39175
|
+
}
|
|
39176
|
+
}
|
|
39177
|
+
}
|
|
39178
|
+
return {
|
|
39179
|
+
sources: finalize(sources, explicit.sources),
|
|
39180
|
+
targets: finalize(targets, explicit.targets),
|
|
39181
|
+
relationships
|
|
39182
|
+
};
|
|
39183
|
+
}
|
|
39184
|
+
const RelationshipEdge = customEdge((props) => {
|
|
39120
39185
|
const { enableNavigateTo } = useEnabledFeature("NavigateTo"), {
|
|
39121
39186
|
sourceX,
|
|
39122
39187
|
targetY,
|
|
@@ -39188,7 +39253,7 @@ const relationshipDetailsLogic = setup({
|
|
|
39188
39253
|
);
|
|
39189
39254
|
}, ElementNode = customNode((props) => /* @__PURE__ */ jsxs(ElementNodeContainer, { nodeProps: props, children: [
|
|
39190
39255
|
/* @__PURE__ */ jsx(ElementShape, { ...props }),
|
|
39191
|
-
/* @__PURE__ */ jsx(ElementTitle, { ...props
|
|
39256
|
+
/* @__PURE__ */ jsx(ElementTitle, { ...props }),
|
|
39192
39257
|
/* @__PURE__ */ jsx(ElementDetailsButtonWithHandler, { ...props }),
|
|
39193
39258
|
/* @__PURE__ */ jsx(ElementActions, { ...props }),
|
|
39194
39259
|
/* @__PURE__ */ jsx(ElementPorts, { ...props })
|
|
@@ -39250,7 +39315,35 @@ const relationshipDetailsLogic = setup({
|
|
|
39250
39315
|
},
|
|
39251
39316
|
id2
|
|
39252
39317
|
))
|
|
39253
|
-
] }),
|
|
39318
|
+
] }), RelationshipDetailsActorContext = createContext(null);
|
|
39319
|
+
function useRelationshipDetailsActor() {
|
|
39320
|
+
return nonNullable(useContext(RelationshipDetailsActorContext), "No RelationshipDetailsActorContext");
|
|
39321
|
+
}
|
|
39322
|
+
function useRelationshipDetailsState(selector3, compare = shallowEqual) {
|
|
39323
|
+
const select2 = useCallbackRef(selector3), actor = useRelationshipDetailsActor();
|
|
39324
|
+
return useSelector(actor, select2, compare);
|
|
39325
|
+
}
|
|
39326
|
+
function useRelationshipDetails() {
|
|
39327
|
+
const actor = useRelationshipDetailsActor();
|
|
39328
|
+
return useMemo(() => ({
|
|
39329
|
+
actor,
|
|
39330
|
+
get rootElementId() {
|
|
39331
|
+
return `relationship-details-${actor.sessionId.replaceAll(":", "_")}`;
|
|
39332
|
+
},
|
|
39333
|
+
getState: () => actor.getSnapshot().context,
|
|
39334
|
+
send: actor.send,
|
|
39335
|
+
navigateTo: (...params) => {
|
|
39336
|
+
params.length === 1 ? actor.send({ type: "navigate.to", params: { edgeId: params[0] } }) : actor.send({ type: "navigate.to", params: { source: params[0], target: params[1] } });
|
|
39337
|
+
},
|
|
39338
|
+
fitDiagram: () => {
|
|
39339
|
+
actor.send({ type: "fitDiagram" });
|
|
39340
|
+
},
|
|
39341
|
+
close: () => {
|
|
39342
|
+
actor._parent ? actor._parent?.send({ type: "close", actorId: actor.id }) : actor.send({ type: "close" });
|
|
39343
|
+
}
|
|
39344
|
+
}), [actor]);
|
|
39345
|
+
}
|
|
39346
|
+
const edgeEnpoint = css.raw({
|
|
39254
39347
|
display: "inline-flex",
|
|
39255
39348
|
alignItems: "center",
|
|
39256
39349
|
padding: "6px 2px 0 2px",
|
|
@@ -39674,7 +39767,7 @@ const selectOverlays = (s2) => s2.context.overlays.map((overlay2) => {
|
|
|
39674
39767
|
return /* @__PURE__ */ jsx(
|
|
39675
39768
|
Overlay,
|
|
39676
39769
|
{
|
|
39677
|
-
overlayLevel:
|
|
39770
|
+
overlayLevel: index2,
|
|
39678
39771
|
onClose: () => close(overlay2.actorRef),
|
|
39679
39772
|
children: /* @__PURE__ */ jsx(RelationshipsBrowser, { actorRef: overlay2.actorRef })
|
|
39680
39773
|
},
|
|
@@ -39684,7 +39777,7 @@ const selectOverlays = (s2) => s2.context.overlays.map((overlay2) => {
|
|
|
39684
39777
|
return /* @__PURE__ */ jsx(
|
|
39685
39778
|
Overlay,
|
|
39686
39779
|
{
|
|
39687
|
-
overlayLevel:
|
|
39780
|
+
overlayLevel: index2,
|
|
39688
39781
|
onClose: () => close(overlay2.actorRef),
|
|
39689
39782
|
children: /* @__PURE__ */ jsx(RelationshipDetails, { actorRef: overlay2.actorRef })
|
|
39690
39783
|
},
|
|
@@ -42162,13 +42255,13 @@ const selectXYProps = (ctx) => ({
|
|
|
42162
42255
|
onCanvasClick,
|
|
42163
42256
|
onCanvasDblClick
|
|
42164
42257
|
} = useDiagramEventHandlers(), notReadOnly = !enableReadOnly, isReducedGraphics = useIsReducedGraphics(), layoutConstraints = useLayoutConstraints(), $isPanning = usePanningAtom(), isPanning = useTimeout(() => {
|
|
42165
|
-
$isPanning.
|
|
42166
|
-
}, isReducedGraphics ?
|
|
42258
|
+
$isPanning.set(!0);
|
|
42259
|
+
}, isReducedGraphics ? 100 : 200), notPanning = useDebouncedCallback$1(() => {
|
|
42167
42260
|
isPanning.clear(), $isPanning.get() && $isPanning.set(!1);
|
|
42168
|
-
},
|
|
42261
|
+
}, 200), onMove = useCallbackRef((event) => {
|
|
42169
42262
|
event && ($isPanning.get() || isPanning.start(), notPanning());
|
|
42170
42263
|
}), onMoveEnd = useCallbackRef((event, viewport) => {
|
|
42171
|
-
notPanning.flush(), diagram.send({ type: "xyflow.viewportMoved", viewport, manually: !!event });
|
|
42264
|
+
event && notPanning.flush(), diagram.send({ type: "xyflow.viewportMoved", viewport, manually: !!event });
|
|
42172
42265
|
}), onViewportResize = useCallbackRef(() => {
|
|
42173
42266
|
diagram.send({ type: "xyflow.resized" });
|
|
42174
42267
|
});
|
|
@@ -43050,14 +43143,20 @@ function updateActiveWalkthrough({ context: context2 }) {
|
|
|
43050
43143
|
}
|
|
43051
43144
|
const hotkeyActorLogic = fromCallback(({ sendBack }) => {
|
|
43052
43145
|
const escHandler = getHotkeyHandler([
|
|
43053
|
-
["Escape", () =>
|
|
43146
|
+
["Escape", (event) => {
|
|
43147
|
+
event.stopPropagation(), sendBack({ type: "key.esc" });
|
|
43148
|
+
}, {
|
|
43054
43149
|
preventDefault: !0
|
|
43055
43150
|
}]
|
|
43056
43151
|
]), arrowshandler = getHotkeyHandler([
|
|
43057
|
-
["ArrowLeft", () =>
|
|
43152
|
+
["ArrowLeft", (event) => {
|
|
43153
|
+
event.stopPropagation(), sendBack({ type: "key.arrow.left" });
|
|
43154
|
+
}, {
|
|
43058
43155
|
preventDefault: !0
|
|
43059
43156
|
}],
|
|
43060
|
-
["ArrowRight", () =>
|
|
43157
|
+
["ArrowRight", (event) => {
|
|
43158
|
+
event.stopPropagation(), sendBack({ type: "key.arrow.right" });
|
|
43159
|
+
}, {
|
|
43061
43160
|
preventDefault: !0
|
|
43062
43161
|
}]
|
|
43063
43162
|
]);
|
|
@@ -43255,7 +43354,7 @@ const diagramMachine = setup({
|
|
|
43255
43354
|
const {
|
|
43256
43355
|
bounds = context2.view.bounds,
|
|
43257
43356
|
duration = 450
|
|
43258
|
-
} = params ?? {}, { width, height, panZoom, transform: transform2 } = context2.xystore.getState(), maxZoom = Math.max(1, transform2[2]), viewport = getViewportForBounds(
|
|
43357
|
+
} = params ?? {}, { width, height, panZoom, transform: transform2 } = context2.xystore.getState(), maxZoom = Math.max(1, transform2[2]), viewport = getViewportForBounds$1(
|
|
43259
43358
|
bounds,
|
|
43260
43359
|
width,
|
|
43261
43360
|
height,
|
|
@@ -43266,7 +43365,7 @@ const diagramMachine = setup({
|
|
|
43266
43365
|
viewport.x = Math.round(viewport.x), viewport.y = Math.round(viewport.y), panZoom?.setViewport(viewport, duration > 0 ? { duration } : void 0);
|
|
43267
43366
|
},
|
|
43268
43367
|
"xyflow:fitFocusedBounds": ({ context: context2 }) => {
|
|
43269
|
-
const { bounds, duration = 450 } = focusedBounds({ context: context2 }), { width, height, panZoom, transform: transform2 } = context2.xystore.getState(), maxZoom = Math.max(1, transform2[2]), viewport = getViewportForBounds(
|
|
43368
|
+
const { bounds, duration = 450 } = focusedBounds({ context: context2 }), { width, height, panZoom, transform: transform2 } = context2.xystore.getState(), maxZoom = Math.max(1, transform2[2]), viewport = getViewportForBounds$1(
|
|
43270
43369
|
bounds,
|
|
43271
43370
|
width,
|
|
43272
43371
|
height,
|