@valbuild/ui 0.50.0 → 0.51.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/valbuild-ui.cjs.d.ts +5 -7
- package/dist/valbuild-ui.cjs.js +333 -908
- package/dist/valbuild-ui.esm.js +333 -908
- package/package.json +3 -3
- package/server/.tmp/assets/{index--YwmBLuB.js → index-cdGbMDmn.js} +4 -4
- package/server/.tmp/assets/{index--uQ45tQ2.css → index-p3rwgFuv.css} +1 -1
- package/server/.tmp/index.html +2 -2
- package/server/dist/valbuild-ui-main.cjs.js +219 -215
- package/server/dist/valbuild-ui-main.esm.js +219 -215
- package/server/dist/valbuild-ui-server.cjs.js +43 -13
- package/server/dist/valbuild-ui-server.esm.js +43 -13
package/dist/valbuild-ui.esm.js
CHANGED
|
@@ -200,9 +200,6 @@ const Check = createLucideIcon("Check", [
|
|
|
200
200
|
const ChevronDown = createLucideIcon("ChevronDown", [
|
|
201
201
|
["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]
|
|
202
202
|
]);
|
|
203
|
-
const ChevronLeft = createLucideIcon("ChevronLeft", [
|
|
204
|
-
["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]
|
|
205
|
-
]);
|
|
206
203
|
const ChevronRight = createLucideIcon("ChevronRight", [
|
|
207
204
|
["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]
|
|
208
205
|
]);
|
|
@@ -348,11 +345,6 @@ const Maximize2 = createLucideIcon("Maximize2", [
|
|
|
348
345
|
["line", { x1: "21", x2: "14", y1: "3", y2: "10", key: "ota7mn" }],
|
|
349
346
|
["line", { x1: "3", x2: "10", y1: "21", y2: "14", key: "1atl0r" }]
|
|
350
347
|
]);
|
|
351
|
-
const Menu = createLucideIcon("Menu", [
|
|
352
|
-
["line", { x1: "4", x2: "20", y1: "12", y2: "12", key: "1e0a9i" }],
|
|
353
|
-
["line", { x1: "4", x2: "20", y1: "6", y2: "6", key: "1owob3" }],
|
|
354
|
-
["line", { x1: "4", x2: "20", y1: "18", y2: "18", key: "yk5zj1" }]
|
|
355
|
-
]);
|
|
356
348
|
const Minimize2 = createLucideIcon("Minimize2", [
|
|
357
349
|
["polyline", { points: "4 14 10 14 10 20", key: "11kfnr" }],
|
|
358
350
|
["polyline", { points: "20 10 14 10 14 4", key: "rlmsce" }],
|
|
@@ -32769,7 +32761,7 @@ var getGapWidth = function(gapMode) {
|
|
|
32769
32761
|
gap: Math.max(0, windowWidth - documentWidth + offsets[2] - offsets[0])
|
|
32770
32762
|
};
|
|
32771
32763
|
};
|
|
32772
|
-
var Style
|
|
32764
|
+
var Style = styleSingleton();
|
|
32773
32765
|
var getStyles = function(_a, allowRelative, gapMode, important) {
|
|
32774
32766
|
var left = _a.left, top = _a.top, right = _a.right, gap = _a.gap;
|
|
32775
32767
|
if (gapMode === void 0) {
|
|
@@ -32786,7 +32778,7 @@ var RemoveScrollBar = function(props) {
|
|
|
32786
32778
|
var gap = React$3.useMemo(function() {
|
|
32787
32779
|
return getGapWidth(gapMode);
|
|
32788
32780
|
}, [gapMode]);
|
|
32789
|
-
return React$3.createElement(Style
|
|
32781
|
+
return React$3.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? "!important" : "") });
|
|
32790
32782
|
};
|
|
32791
32783
|
var passiveSupported = false;
|
|
32792
32784
|
if (typeof window !== "undefined") {
|
|
@@ -35828,7 +35820,7 @@ function ValMenu({
|
|
|
35828
35820
|
}, [patches]);
|
|
35829
35821
|
return /* @__PURE__ */ jsxs(MenuContainer, { direction, children: [
|
|
35830
35822
|
/* @__PURE__ */ jsx(
|
|
35831
|
-
MenuButton
|
|
35823
|
+
MenuButton,
|
|
35832
35824
|
{
|
|
35833
35825
|
active: editMode === "hover" || editMode === "window",
|
|
35834
35826
|
onClick: () => {
|
|
@@ -35840,7 +35832,7 @@ function ValMenu({
|
|
|
35840
35832
|
}
|
|
35841
35833
|
),
|
|
35842
35834
|
/* @__PURE__ */ jsx(
|
|
35843
|
-
MenuButton
|
|
35835
|
+
MenuButton,
|
|
35844
35836
|
{
|
|
35845
35837
|
active: editMode === "full",
|
|
35846
35838
|
onClick: () => {
|
|
@@ -35856,7 +35848,7 @@ function ValMenu({
|
|
|
35856
35848
|
}
|
|
35857
35849
|
),
|
|
35858
35850
|
patchCount !== void 0 && session.status === "success" && session.data.mode === "proxy" && /* @__PURE__ */ jsx(
|
|
35859
|
-
MenuButton
|
|
35851
|
+
MenuButton,
|
|
35860
35852
|
{
|
|
35861
35853
|
onClick: () => {
|
|
35862
35854
|
if (patchCount > 0) {
|
|
@@ -35950,7 +35942,7 @@ function MenuContainer({
|
|
|
35950
35942
|
}
|
|
35951
35943
|
);
|
|
35952
35944
|
}
|
|
35953
|
-
function MenuButton
|
|
35945
|
+
function MenuButton({
|
|
35954
35946
|
active,
|
|
35955
35947
|
onClick,
|
|
35956
35948
|
children
|
|
@@ -39703,9 +39695,44 @@ function ValWindow({
|
|
|
39703
39695
|
onClose,
|
|
39704
39696
|
children
|
|
39705
39697
|
}) {
|
|
39706
|
-
const [
|
|
39707
|
-
|
|
39698
|
+
const [globalWindowSize, setGlobalWindowSize] = useState({ height: window.innerHeight, width: window.innerWidth });
|
|
39699
|
+
useEffect(() => {
|
|
39700
|
+
const resizeListener = () => {
|
|
39701
|
+
if (window.visualViewport) {
|
|
39702
|
+
setGlobalWindowSize({
|
|
39703
|
+
height: window.visualViewport.height,
|
|
39704
|
+
width: window.visualViewport.width
|
|
39705
|
+
});
|
|
39706
|
+
} else {
|
|
39707
|
+
setGlobalWindowSize({
|
|
39708
|
+
height: window.innerHeight,
|
|
39709
|
+
width: window.innerWidth
|
|
39710
|
+
});
|
|
39711
|
+
}
|
|
39712
|
+
};
|
|
39713
|
+
window.addEventListener("resize", resizeListener);
|
|
39714
|
+
window.addEventListener("orientationchange", resizeListener);
|
|
39715
|
+
return () => {
|
|
39716
|
+
window.removeEventListener("resize", resizeListener);
|
|
39717
|
+
window.removeEventListener("orientationchange", resizeListener);
|
|
39718
|
+
};
|
|
39719
|
+
}, []);
|
|
39720
|
+
const [
|
|
39721
|
+
draggedPosition,
|
|
39722
|
+
isInitialized,
|
|
39723
|
+
dragRef,
|
|
39724
|
+
onMouseDownDrag,
|
|
39725
|
+
setPosition
|
|
39726
|
+
] = useDrag({
|
|
39727
|
+
position,
|
|
39728
|
+
globalSize: globalWindowSize
|
|
39708
39729
|
});
|
|
39730
|
+
useEffect(() => {
|
|
39731
|
+
setPosition({
|
|
39732
|
+
left: globalWindowSize.width - MIN_WIDTH$1 - (24 + 50),
|
|
39733
|
+
top: 16
|
|
39734
|
+
});
|
|
39735
|
+
}, [globalWindowSize]);
|
|
39709
39736
|
useEffect(() => {
|
|
39710
39737
|
const closeOnEscape = (e3) => {
|
|
39711
39738
|
if (e3.key === "Escape") {
|
|
@@ -39718,6 +39745,7 @@ function ValWindow({
|
|
|
39718
39745
|
};
|
|
39719
39746
|
}, []);
|
|
39720
39747
|
const { windowSize, setWindowSize } = useValUIContext();
|
|
39748
|
+
const isDrawer = globalWindowSize.width <= 600 || globalWindowSize.height <= 600;
|
|
39721
39749
|
useEffect(() => {
|
|
39722
39750
|
var _a, _b;
|
|
39723
39751
|
setWindowSize({
|
|
@@ -39727,20 +39755,40 @@ function ValWindow({
|
|
|
39727
39755
|
});
|
|
39728
39756
|
}, []);
|
|
39729
39757
|
const bottomRef = useRef(null);
|
|
39758
|
+
useEffect(() => {
|
|
39759
|
+
if (isDrawer) {
|
|
39760
|
+
setPosition({
|
|
39761
|
+
top: 0,
|
|
39762
|
+
left: 0
|
|
39763
|
+
});
|
|
39764
|
+
setWindowSize({
|
|
39765
|
+
height: window.innerHeight,
|
|
39766
|
+
width: window.innerWidth,
|
|
39767
|
+
innerHeight: window.innerHeight - 64
|
|
39768
|
+
});
|
|
39769
|
+
const doc2 = document.ownerDocument || document;
|
|
39770
|
+
const prevOverflow = doc2.body.style.overflow;
|
|
39771
|
+
doc2.body.style.overflow = "hidden";
|
|
39772
|
+
return () => {
|
|
39773
|
+
doc2.body.style.overflow = prevOverflow;
|
|
39774
|
+
};
|
|
39775
|
+
}
|
|
39776
|
+
}, [isDrawer, globalWindowSize]);
|
|
39777
|
+
const touchStart = useRef();
|
|
39730
39778
|
return /* @__PURE__ */ jsx(
|
|
39731
39779
|
Resizable,
|
|
39732
39780
|
{
|
|
39733
|
-
minConstraints: [MIN_WIDTH$1, MIN_HEIGHT],
|
|
39781
|
+
minConstraints: isDrawer ? void 0 : [MIN_WIDTH$1, MIN_HEIGHT],
|
|
39734
39782
|
width: (windowSize == null ? void 0 : windowSize.width) || MIN_WIDTH$1,
|
|
39735
39783
|
height: (windowSize == null ? void 0 : windowSize.height) || MIN_HEIGHT,
|
|
39736
39784
|
onResize: (_, { size: size2 }) => {
|
|
39737
39785
|
var _a, _b;
|
|
39738
|
-
return setWindowSize({
|
|
39786
|
+
return !isDrawer && setWindowSize({
|
|
39739
39787
|
...size2,
|
|
39740
39788
|
innerHeight: size2.height - (64 + (((_b = (_a = bottomRef.current) == null ? void 0 : _a.getBoundingClientRect()) == null ? void 0 : _b.height) || 0))
|
|
39741
39789
|
});
|
|
39742
39790
|
},
|
|
39743
|
-
handle: /* @__PURE__ */ jsx("div", { className: "fixed bottom-0 right-0 cursor-se-resize", children: /* @__PURE__ */ jsx(
|
|
39791
|
+
handle: isDrawer ? null : /* @__PURE__ */ jsx("div", { className: "fixed bottom-0 right-0 cursor-se-resize", children: /* @__PURE__ */ jsx(
|
|
39744
39792
|
"svg",
|
|
39745
39793
|
{
|
|
39746
39794
|
height: "18",
|
|
@@ -39756,12 +39804,12 @@ function ValWindow({
|
|
|
39756
39804
|
)
|
|
39757
39805
|
}
|
|
39758
39806
|
) }),
|
|
39759
|
-
draggableOpts: {},
|
|
39760
39807
|
className: classNames(
|
|
39761
|
-
"absolute inset-0 tablet:w-auto tablet:h-auto tablet:min-h-fit
|
|
39808
|
+
"absolute inset-0 tablet:w-auto tablet:h-auto tablet:min-h-fit max-h-svh bg-gradient-to-br from-background/90 from-40% to-background backdrop-blur-lg text-primary drop-shadow-2xl min-w-[320px]",
|
|
39762
39809
|
{
|
|
39763
39810
|
"opacity-0": !isInitialized,
|
|
39764
|
-
"opacity-100": isInitialized
|
|
39811
|
+
"opacity-100": isInitialized,
|
|
39812
|
+
"rounded-lg": !isDrawer
|
|
39765
39813
|
}
|
|
39766
39814
|
),
|
|
39767
39815
|
children: /* @__PURE__ */ jsxs(
|
|
@@ -39780,17 +39828,41 @@ function ValWindow({
|
|
|
39780
39828
|
"div",
|
|
39781
39829
|
{
|
|
39782
39830
|
ref: dragRef,
|
|
39783
|
-
className: "relative flex items-center justify-center px-2 py-2 text-primary",
|
|
39831
|
+
className: "relative flex items-center justify-center px-2 py-8 tablet:py-2 text-primary",
|
|
39832
|
+
onTouchStart: (ev) => {
|
|
39833
|
+
var _a;
|
|
39834
|
+
const touch = (_a = ev.changedTouches) == null ? void 0 : _a[0];
|
|
39835
|
+
if (!touch)
|
|
39836
|
+
return;
|
|
39837
|
+
touchStart.current = {
|
|
39838
|
+
time: Date.now(),
|
|
39839
|
+
y: touch.clientY
|
|
39840
|
+
};
|
|
39841
|
+
},
|
|
39842
|
+
onTouchEnd: (ev) => {
|
|
39843
|
+
var _a;
|
|
39844
|
+
const touch = (_a = ev.changedTouches) == null ? void 0 : _a[0];
|
|
39845
|
+
if (!touch)
|
|
39846
|
+
return;
|
|
39847
|
+
if (touchStart.current) {
|
|
39848
|
+
if (touch.clientY - touchStart.current.y > 20 && touch.clientY - touchStart.current.y < 100 && Date.now() - touchStart.current.time < 150) {
|
|
39849
|
+
ev.preventDefault();
|
|
39850
|
+
onClose();
|
|
39851
|
+
}
|
|
39852
|
+
}
|
|
39853
|
+
},
|
|
39784
39854
|
children: [
|
|
39785
|
-
/* @__PURE__ */ jsx(
|
|
39855
|
+
isDrawer ? /* @__PURE__ */ jsx("div", { className: "absolute left-1/2 -translate-x-1/2 h-[8px] w-[80px] top-4 bg-primary rounded-lg" }) : /* @__PURE__ */ jsx(
|
|
39786
39856
|
AlignJustify,
|
|
39787
39857
|
{
|
|
39788
39858
|
size: 16,
|
|
39789
|
-
className: "w-full cursor-grab
|
|
39859
|
+
className: "block w-full cursor-grab",
|
|
39790
39860
|
onMouseDown: (e3) => {
|
|
39791
|
-
|
|
39792
|
-
|
|
39793
|
-
|
|
39861
|
+
if (!isDrawer) {
|
|
39862
|
+
e3.preventDefault();
|
|
39863
|
+
e3.stopPropagation();
|
|
39864
|
+
onMouseDownDrag();
|
|
39865
|
+
}
|
|
39794
39866
|
}
|
|
39795
39867
|
}
|
|
39796
39868
|
),
|
|
@@ -39799,7 +39871,7 @@ function ValWindow({
|
|
|
39799
39871
|
{
|
|
39800
39872
|
className: "absolute top-0 right-0 px-4 py-2 focus:outline-none focus-visible:outline-accent",
|
|
39801
39873
|
onClick: onClose,
|
|
39802
|
-
children: /* @__PURE__ */ jsx(X, { size: 16 })
|
|
39874
|
+
children: /* @__PURE__ */ jsx(X, { size: isDrawer ? 32 : 16 })
|
|
39803
39875
|
}
|
|
39804
39876
|
)
|
|
39805
39877
|
]
|
|
@@ -39825,9 +39897,12 @@ function ValWindow({
|
|
|
39825
39897
|
}
|
|
39826
39898
|
);
|
|
39827
39899
|
}
|
|
39828
|
-
function useDrag({
|
|
39900
|
+
function useDrag({
|
|
39901
|
+
position: initPosition,
|
|
39902
|
+
globalSize
|
|
39903
|
+
}) {
|
|
39829
39904
|
var _a, _b;
|
|
39830
|
-
const [position, setPosition] = useState({ left:
|
|
39905
|
+
const [position, setPosition] = useState({ left: globalSize.width - MIN_WIDTH$1 - (24 + 50), top: 16 });
|
|
39831
39906
|
useEffect(() => {
|
|
39832
39907
|
if (initPosition) {
|
|
39833
39908
|
setPosition(initPosition);
|
|
@@ -39859,23 +39934,9 @@ function useDrag({ position: initPosition }) {
|
|
|
39859
39934
|
document.removeEventListener("mousemove", onMouseMove);
|
|
39860
39935
|
};
|
|
39861
39936
|
}, [mouseDown]);
|
|
39862
|
-
useEffect(() => {
|
|
39863
|
-
const onResize = () => {
|
|
39864
|
-
if (window.screen.width < MIN_WIDTH$1 * 2) {
|
|
39865
|
-
setPosition({
|
|
39866
|
-
left: 0,
|
|
39867
|
-
top: 0
|
|
39868
|
-
});
|
|
39869
|
-
}
|
|
39870
|
-
};
|
|
39871
|
-
window.addEventListener("resize", onResize);
|
|
39872
|
-
return () => {
|
|
39873
|
-
window.removeEventListener("resize", onResize);
|
|
39874
|
-
};
|
|
39875
|
-
}, []);
|
|
39876
39937
|
const handleMouseDown = () => setMouseDown(true);
|
|
39877
39938
|
const isInitialized = !!((_b = (_a = ref == null ? void 0 : ref.current) == null ? void 0 : _a.getBoundingClientRect()) == null ? void 0 : _b.width);
|
|
39878
|
-
return [position, isInitialized, ref, handleMouseDown];
|
|
39939
|
+
return [position, isInitialized, ref, handleMouseDown, setPosition];
|
|
39879
39940
|
}
|
|
39880
39941
|
function _arrayLikeToArray$1(arr, len) {
|
|
39881
39942
|
if (len == null || len > arr.length)
|
|
@@ -50655,13 +50716,6 @@ function useNavigateUnstable() {
|
|
|
50655
50716
|
}, [basename, navigator2, routePathnamesJson, locationPathname, dataRouterContext]);
|
|
50656
50717
|
return navigate;
|
|
50657
50718
|
}
|
|
50658
|
-
function useParams() {
|
|
50659
|
-
let {
|
|
50660
|
-
matches: matches2
|
|
50661
|
-
} = React$3.useContext(RouteContext);
|
|
50662
|
-
let routeMatch = matches2[matches2.length - 1];
|
|
50663
|
-
return routeMatch ? routeMatch.params : {};
|
|
50664
|
-
}
|
|
50665
50719
|
var DataRouterHook = /* @__PURE__ */ function(DataRouterHook2) {
|
|
50666
50720
|
DataRouterHook2["UseBlocker"] = "useBlocker";
|
|
50667
50721
|
DataRouterHook2["UseRevalidator"] = "useRevalidator";
|
|
@@ -51881,318 +51935,6 @@ const SelectSeparator = React$3.forwardRef(({ className: className2, ...props },
|
|
|
51881
51935
|
}
|
|
51882
51936
|
));
|
|
51883
51937
|
SelectSeparator.displayName = $cc7e05a45900e73f$export$1ff3c3f08ae963c0.displayName;
|
|
51884
|
-
function Grid({ children }) {
|
|
51885
|
-
const leftColRef = useRef(null);
|
|
51886
|
-
const rightColRef = useRef(null);
|
|
51887
|
-
const isResizing = useRef(false);
|
|
51888
|
-
const x2 = useRef(0);
|
|
51889
|
-
const dragRef = useRef(null);
|
|
51890
|
-
const originalWidth = useRef(0);
|
|
51891
|
-
const [showMobileLeftMenu, setShowMobileLeftMenu] = useState(true);
|
|
51892
|
-
const handleMouseUp = () => {
|
|
51893
|
-
isResizing.current = false;
|
|
51894
|
-
dragRef.current = null;
|
|
51895
|
-
x2.current = 0;
|
|
51896
|
-
originalWidth.current = 0;
|
|
51897
|
-
};
|
|
51898
|
-
const handleMouseMove = (event) => {
|
|
51899
|
-
event.preventDefault();
|
|
51900
|
-
const targetRef = dragRef.current === "left" ? leftColRef : rightColRef;
|
|
51901
|
-
if (targetRef.current && isResizing.current) {
|
|
51902
|
-
const dx = dragRef.current === "left" ? event.screenX - x2.current : x2.current - event.screenX;
|
|
51903
|
-
targetRef.current.style.width = `${Math.max(
|
|
51904
|
-
originalWidth.current + dx,
|
|
51905
|
-
150
|
|
51906
|
-
)}px`;
|
|
51907
|
-
}
|
|
51908
|
-
};
|
|
51909
|
-
const handleMouseDown = (column) => (event) => {
|
|
51910
|
-
const target = event.target;
|
|
51911
|
-
if (target) {
|
|
51912
|
-
const columnRef = column === "left" ? leftColRef : column === "right" ? rightColRef : null;
|
|
51913
|
-
isResizing.current = true;
|
|
51914
|
-
if (columnRef && columnRef.current) {
|
|
51915
|
-
x2.current = event.screenX;
|
|
51916
|
-
dragRef.current = column;
|
|
51917
|
-
if (columnRef.current) {
|
|
51918
|
-
originalWidth.current = columnRef.current.offsetWidth;
|
|
51919
|
-
}
|
|
51920
|
-
}
|
|
51921
|
-
}
|
|
51922
|
-
};
|
|
51923
|
-
const [header1, body1, header2, body2, header3, body3] = Children.toArray(children);
|
|
51924
|
-
useEffect(() => {
|
|
51925
|
-
document.addEventListener("mouseup", handleMouseUp);
|
|
51926
|
-
document.addEventListener("mousemove", handleMouseMove);
|
|
51927
|
-
return () => {
|
|
51928
|
-
document.removeEventListener("mouseup", handleMouseUp);
|
|
51929
|
-
document.removeEventListener("mousemove", handleMouseMove);
|
|
51930
|
-
};
|
|
51931
|
-
}, []);
|
|
51932
|
-
return /* @__PURE__ */ jsxs("div", { className: "relative flex h-screen", children: [
|
|
51933
|
-
/* @__PURE__ */ jsxs(
|
|
51934
|
-
"div",
|
|
51935
|
-
{
|
|
51936
|
-
ref: leftColRef,
|
|
51937
|
-
className: classNames(
|
|
51938
|
-
"absolute top-0 left-0 border-r border-border md:relative z-[1] bg-gradient-to-br from-card from-50% to-background",
|
|
51939
|
-
{
|
|
51940
|
-
"w-[300px]": showMobileLeftMenu,
|
|
51941
|
-
"w-0 md:w-[300px]": !showMobileLeftMenu
|
|
51942
|
-
}
|
|
51943
|
-
),
|
|
51944
|
-
children: [
|
|
51945
|
-
/* @__PURE__ */ jsxs(Grid.Column, { children: [
|
|
51946
|
-
/* @__PURE__ */ jsx(
|
|
51947
|
-
MenuButton,
|
|
51948
|
-
{
|
|
51949
|
-
showOnMobile: !showMobileLeftMenu,
|
|
51950
|
-
onClick: () => {
|
|
51951
|
-
setShowMobileLeftMenu(!showMobileLeftMenu);
|
|
51952
|
-
},
|
|
51953
|
-
children: header1
|
|
51954
|
-
}
|
|
51955
|
-
),
|
|
51956
|
-
/* @__PURE__ */ jsx(
|
|
51957
|
-
ScrollArea,
|
|
51958
|
-
{
|
|
51959
|
-
style: { height: "calc(100vh - 50px)" },
|
|
51960
|
-
onClick: () => {
|
|
51961
|
-
setShowMobileLeftMenu(false);
|
|
51962
|
-
},
|
|
51963
|
-
children: body1
|
|
51964
|
-
}
|
|
51965
|
-
)
|
|
51966
|
-
] }),
|
|
51967
|
-
/* @__PURE__ */ jsx(
|
|
51968
|
-
"div",
|
|
51969
|
-
{
|
|
51970
|
-
className: "absolute inset-y-0 right-0 cursor-col-resize w-[1px] hover:w-[3px] h-full hover:bg-border",
|
|
51971
|
-
onMouseDown: handleMouseDown("left")
|
|
51972
|
-
}
|
|
51973
|
-
)
|
|
51974
|
-
]
|
|
51975
|
-
}
|
|
51976
|
-
),
|
|
51977
|
-
/* @__PURE__ */ jsx(
|
|
51978
|
-
"div",
|
|
51979
|
-
{
|
|
51980
|
-
className: classNames("", {
|
|
51981
|
-
"w-full": !header3 && !body3
|
|
51982
|
-
}),
|
|
51983
|
-
children: /* @__PURE__ */ jsxs(Grid.Column, { children: [
|
|
51984
|
-
/* @__PURE__ */ jsxs("span", { className: "flex w-full border-b border-border", children: [
|
|
51985
|
-
/* @__PURE__ */ jsx(
|
|
51986
|
-
MenuButton,
|
|
51987
|
-
{
|
|
51988
|
-
className: "md:hidden",
|
|
51989
|
-
showOnMobile: showMobileLeftMenu,
|
|
51990
|
-
onClick: () => {
|
|
51991
|
-
setShowMobileLeftMenu(!showMobileLeftMenu);
|
|
51992
|
-
},
|
|
51993
|
-
children: header1
|
|
51994
|
-
}
|
|
51995
|
-
),
|
|
51996
|
-
/* @__PURE__ */ jsx(
|
|
51997
|
-
"span",
|
|
51998
|
-
{
|
|
51999
|
-
className: classNames({
|
|
52000
|
-
"pl-[300px] md:pl-0": showMobileLeftMenu
|
|
52001
|
-
}),
|
|
52002
|
-
children: header2
|
|
52003
|
-
}
|
|
52004
|
-
)
|
|
52005
|
-
] }),
|
|
52006
|
-
/* @__PURE__ */ jsx(ScrollArea, { style: { height: "calc(100vh - 50px)" }, children: body2 })
|
|
52007
|
-
] })
|
|
52008
|
-
}
|
|
52009
|
-
),
|
|
52010
|
-
header3 || body3 && /* @__PURE__ */ jsxs(
|
|
52011
|
-
"div",
|
|
52012
|
-
{
|
|
52013
|
-
ref: rightColRef,
|
|
52014
|
-
className: "relative h-screen border-l border-border",
|
|
52015
|
-
style: { width: 300 },
|
|
52016
|
-
children: [
|
|
52017
|
-
/* @__PURE__ */ jsxs(Grid.Column, { children: [
|
|
52018
|
-
header3,
|
|
52019
|
-
/* @__PURE__ */ jsx(ScrollArea, { style: { height: "calc(100vh - 50px)" }, children: body3 })
|
|
52020
|
-
] }),
|
|
52021
|
-
/* @__PURE__ */ jsx(
|
|
52022
|
-
"div",
|
|
52023
|
-
{
|
|
52024
|
-
onMouseDown: handleMouseDown("right"),
|
|
52025
|
-
className: "absolute inset-y-0 left-0 cursor-col-resize w-[1px] bg-border hover:w-[3px] hover:bg-border"
|
|
52026
|
-
}
|
|
52027
|
-
)
|
|
52028
|
-
]
|
|
52029
|
-
}
|
|
52030
|
-
)
|
|
52031
|
-
] });
|
|
52032
|
-
}
|
|
52033
|
-
function MenuButton({
|
|
52034
|
-
className: className2,
|
|
52035
|
-
showOnMobile,
|
|
52036
|
-
onClick,
|
|
52037
|
-
children
|
|
52038
|
-
}) {
|
|
52039
|
-
return /* @__PURE__ */ jsxs(
|
|
52040
|
-
"div",
|
|
52041
|
-
{
|
|
52042
|
-
className: classNames("flex items-center px-4 md:px-4", className2, {
|
|
52043
|
-
"hidden md:flex": showOnMobile
|
|
52044
|
-
}),
|
|
52045
|
-
children: [
|
|
52046
|
-
/* @__PURE__ */ jsx("button", { className: "md:hidden", onClick, children: /* @__PURE__ */ jsx(Menu, {}) }),
|
|
52047
|
-
/* @__PURE__ */ jsx("span", { className: "flex items-center justify-between w-full", children })
|
|
52048
|
-
]
|
|
52049
|
-
}
|
|
52050
|
-
);
|
|
52051
|
-
}
|
|
52052
|
-
Grid.Column = ({ children, className: className2 }) => {
|
|
52053
|
-
const [header, body] = Children.toArray(children);
|
|
52054
|
-
return /* @__PURE__ */ jsxs("div", { className: classNames("flex flex-col", className2), children: [
|
|
52055
|
-
/* @__PURE__ */ jsx("div", { className: "flex items-center border-b border-border", children: header }),
|
|
52056
|
-
body
|
|
52057
|
-
] });
|
|
52058
|
-
};
|
|
52059
|
-
const Logo = ({ className: className2 }) => {
|
|
52060
|
-
return /* @__PURE__ */ jsxs(
|
|
52061
|
-
"svg",
|
|
52062
|
-
{
|
|
52063
|
-
width: "58",
|
|
52064
|
-
height: "34",
|
|
52065
|
-
viewBox: "0 0 58 34",
|
|
52066
|
-
fill: "none",
|
|
52067
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
52068
|
-
className: className2,
|
|
52069
|
-
children: [
|
|
52070
|
-
/* @__PURE__ */ jsx("g", { filter: "url(#filter0_d_21_1677)", children: /* @__PURE__ */ jsx(
|
|
52071
|
-
"path",
|
|
52072
|
-
{
|
|
52073
|
-
d: "M5 5.36426C5 5.16309 5.16309 5 5.36426 5H17.6581C17.8593 5 18.0223 5.16309 18.0223 5.36426V28.4949C18.0223 28.696 17.8593 28.8591 17.6581 28.8591H5.36426C5.16309 28.8591 5 28.696 5 28.4949V5.36426Z",
|
|
52074
|
-
fill: "hsl(var(--accent))"
|
|
52075
|
-
}
|
|
52076
|
-
) }),
|
|
52077
|
-
/* @__PURE__ */ jsx("g", { filter: "url(#filter1_i_21_1677)", children: /* @__PURE__ */ jsx("circle", { cx: "11.4656", cy: "23.7595", r: "2.18557", fill: "currentColor" }) }),
|
|
52078
|
-
/* @__PURE__ */ jsx(
|
|
52079
|
-
"path",
|
|
52080
|
-
{
|
|
52081
|
-
fillRule: "evenodd",
|
|
52082
|
-
clipRule: "evenodd",
|
|
52083
|
-
d: "M52.8588 23.839H48.7257H48.537H48.1128C47.6715 23.839 47.4508 23.5942 47.4508 23.1044V13.7293C47.4508 13.5784 47.3285 13.4561 47.1777 13.4561H45.8118C45.6609 13.4561 45.5386 13.5784 45.5386 13.7293V15.1836C45.5386 15.2844 45.4569 15.3661 45.3561 15.3661C45.2876 15.3661 45.225 15.3275 45.1924 15.2672C44.805 14.5503 44.283 14.02 43.6264 13.6765C42.9563 13.301 42.2045 13.1132 41.3709 13.1132C40.6028 13.1132 39.8755 13.252 39.189 13.5295C38.5026 13.8071 37.8979 14.2152 37.3748 14.7539C36.8682 15.2764 36.4678 15.9212 36.1736 16.6885C35.8794 17.4558 35.7323 18.3374 35.7323 19.3332V19.725C35.7323 20.7372 35.8794 21.627 36.1736 22.3942C36.4678 23.1615 36.8682 23.8146 37.3748 24.3533C37.8979 24.8757 38.5026 25.2757 39.189 25.5532C39.8755 25.8144 40.6191 25.945 41.42 25.945C42.1881 25.945 42.9154 25.7491 43.6019 25.3573C44.2751 24.982 44.8058 24.4119 45.1941 23.6471C45.2255 23.5852 45.2886 23.5452 45.358 23.5452H45.3917C45.4728 23.5452 45.5386 23.611 45.5386 23.6921C45.5386 23.7904 45.544 23.8856 45.5547 23.9777V25.1392C45.5547 25.3904 45.7584 25.5941 46.0096 25.5941H47.2261C47.2914 25.5995 47.3581 25.6022 47.4263 25.6022H48.537H48.7257H57.7268C57.8777 25.6022 58 25.4799 58 25.329V24.1122C58 23.9614 57.8777 23.839 57.7268 23.839H55.3174C55.1665 23.839 55.0442 23.7167 55.0442 23.5659V8.73368C55.0442 8.58279 54.9219 8.46048 54.771 8.46048H50.5054C50.3545 8.46048 50.2322 8.58279 50.2322 8.73368V9.95043C50.2322 10.1013 50.3545 10.2236 50.5054 10.2236H52.8588C53.0097 10.2236 53.132 10.3459 53.132 10.4968V23.5659C53.132 23.7167 53.0097 23.839 52.8588 23.839ZM41.6161 24.1329C42.1881 24.1329 42.7111 24.0268 43.1851 23.8146C43.6754 23.6023 44.0922 23.3003 44.4354 22.9085C44.7786 22.5167 45.0483 22.0514 45.2444 21.5127C45.4406 20.9576 45.5386 20.3454 45.5386 19.6761V19.3822C45.5386 18.7292 45.4406 18.1333 45.2444 17.5946C45.0483 17.0395 44.7705 16.5661 44.4109 16.1743C44.0677 15.7824 43.6509 15.4804 43.1606 15.2682C42.6866 15.0396 42.1718 14.9254 41.6161 14.9254C41.044 14.9254 40.521 15.0315 40.0471 15.2437C39.5731 15.4559 39.1563 15.758 38.7968 16.1498C38.4535 16.5252 38.1839 16.9905 37.9877 17.5456C37.7916 18.0843 37.6936 18.6802 37.6936 19.3332V19.725C37.6936 21.1127 38.0531 22.1983 38.7722 22.982C39.5077 23.7493 40.4557 24.1329 41.6161 24.1329ZM31.1115 25.4191C31.0732 25.5287 30.9698 25.6022 30.8536 25.6022H27.4661C27.35 25.6022 27.2465 25.5287 27.2082 25.4191L23.1578 13.8193C23.0958 13.6417 23.2276 13.4561 23.4157 13.4561H25.089C25.2068 13.4561 25.3114 13.5316 25.3484 13.6435L28.9666 24.581C28.9942 24.6643 29.0721 24.7206 29.1599 24.7206C29.2477 24.7206 29.3256 24.6643 29.3532 24.581L32.9714 13.6435C33.0084 13.5316 33.1129 13.4561 33.2308 13.4561H34.9041C35.0922 13.4561 35.224 13.6417 35.162 13.8193L31.1115 25.4191Z",
|
|
52084
|
-
fill: "currentColor"
|
|
52085
|
-
}
|
|
52086
|
-
),
|
|
52087
|
-
/* @__PURE__ */ jsxs("defs", { children: [
|
|
52088
|
-
/* @__PURE__ */ jsxs(
|
|
52089
|
-
"filter",
|
|
52090
|
-
{
|
|
52091
|
-
id: "filter0_d_21_1677",
|
|
52092
|
-
x: "0.124722",
|
|
52093
|
-
y: "0.124722",
|
|
52094
|
-
width: "22.7729",
|
|
52095
|
-
height: "33.6097",
|
|
52096
|
-
filterUnits: "userSpaceOnUse",
|
|
52097
|
-
colorInterpolationFilters: "sRGB",
|
|
52098
|
-
children: [
|
|
52099
|
-
/* @__PURE__ */ jsx("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
|
|
52100
|
-
/* @__PURE__ */ jsx(
|
|
52101
|
-
"feColorMatrix",
|
|
52102
|
-
{
|
|
52103
|
-
in: "SourceAlpha",
|
|
52104
|
-
type: "matrix",
|
|
52105
|
-
values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0",
|
|
52106
|
-
result: "hardAlpha"
|
|
52107
|
-
}
|
|
52108
|
-
),
|
|
52109
|
-
/* @__PURE__ */ jsx("feOffset", {}),
|
|
52110
|
-
/* @__PURE__ */ jsx("feGaussianBlur", { stdDeviation: "2.43764" }),
|
|
52111
|
-
/* @__PURE__ */ jsx("feComposite", { in2: "hardAlpha", operator: "out" }),
|
|
52112
|
-
/* @__PURE__ */ jsx(
|
|
52113
|
-
"feColorMatrix",
|
|
52114
|
-
{
|
|
52115
|
-
type: "matrix",
|
|
52116
|
-
values: "0 0 0 0 0.219608 0 0 0 0 0.803922 0 0 0 0 0.501961 0 0 0 0.3 0"
|
|
52117
|
-
}
|
|
52118
|
-
),
|
|
52119
|
-
/* @__PURE__ */ jsx(
|
|
52120
|
-
"feBlend",
|
|
52121
|
-
{
|
|
52122
|
-
mode: "normal",
|
|
52123
|
-
in2: "BackgroundImageFix",
|
|
52124
|
-
result: "effect1_dropShadow_21_1677"
|
|
52125
|
-
}
|
|
52126
|
-
),
|
|
52127
|
-
/* @__PURE__ */ jsx(
|
|
52128
|
-
"feBlend",
|
|
52129
|
-
{
|
|
52130
|
-
mode: "normal",
|
|
52131
|
-
in: "SourceGraphic",
|
|
52132
|
-
in2: "effect1_dropShadow_21_1677",
|
|
52133
|
-
result: "shape"
|
|
52134
|
-
}
|
|
52135
|
-
)
|
|
52136
|
-
]
|
|
52137
|
-
}
|
|
52138
|
-
),
|
|
52139
|
-
/* @__PURE__ */ jsxs(
|
|
52140
|
-
"filter",
|
|
52141
|
-
{
|
|
52142
|
-
id: "filter1_i_21_1677",
|
|
52143
|
-
x: "9.28003",
|
|
52144
|
-
y: "21.5739",
|
|
52145
|
-
width: "4.37112",
|
|
52146
|
-
height: "4.37112",
|
|
52147
|
-
filterUnits: "userSpaceOnUse",
|
|
52148
|
-
colorInterpolationFilters: "sRGB",
|
|
52149
|
-
children: [
|
|
52150
|
-
/* @__PURE__ */ jsx("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
|
|
52151
|
-
/* @__PURE__ */ jsx(
|
|
52152
|
-
"feBlend",
|
|
52153
|
-
{
|
|
52154
|
-
mode: "normal",
|
|
52155
|
-
in: "SourceGraphic",
|
|
52156
|
-
in2: "BackgroundImageFix",
|
|
52157
|
-
result: "shape"
|
|
52158
|
-
}
|
|
52159
|
-
),
|
|
52160
|
-
/* @__PURE__ */ jsx(
|
|
52161
|
-
"feColorMatrix",
|
|
52162
|
-
{
|
|
52163
|
-
in: "SourceAlpha",
|
|
52164
|
-
type: "matrix",
|
|
52165
|
-
values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0",
|
|
52166
|
-
result: "hardAlpha"
|
|
52167
|
-
}
|
|
52168
|
-
),
|
|
52169
|
-
/* @__PURE__ */ jsx("feOffset", {}),
|
|
52170
|
-
/* @__PURE__ */ jsx("feGaussianBlur", { stdDeviation: "0.546392" }),
|
|
52171
|
-
/* @__PURE__ */ jsx("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
|
|
52172
|
-
/* @__PURE__ */ jsx(
|
|
52173
|
-
"feColorMatrix",
|
|
52174
|
-
{
|
|
52175
|
-
type: "matrix",
|
|
52176
|
-
values: "0 0 0 0 0.219608 0 0 0 0 0.803922 0 0 0 0 0.501961 0 0 0 0.3 0"
|
|
52177
|
-
}
|
|
52178
|
-
),
|
|
52179
|
-
/* @__PURE__ */ jsx(
|
|
52180
|
-
"feBlend",
|
|
52181
|
-
{
|
|
52182
|
-
mode: "normal",
|
|
52183
|
-
in2: "shape",
|
|
52184
|
-
result: "effect1_innerShadow_21_1677"
|
|
52185
|
-
}
|
|
52186
|
-
)
|
|
52187
|
-
]
|
|
52188
|
-
}
|
|
52189
|
-
)
|
|
52190
|
-
] })
|
|
52191
|
-
]
|
|
52192
|
-
}
|
|
52193
|
-
);
|
|
52194
|
-
};
|
|
52195
|
-
const Logo$1 = Logo;
|
|
52196
51938
|
function Path({ children }) {
|
|
52197
51939
|
const segs = children.split("/").filter((seg) => seg);
|
|
52198
51940
|
return segs.map((seg, i2) => {
|
|
@@ -52241,265 +51983,6 @@ const useValModuleFromPath = (sourcePath) => {
|
|
|
52241
51983
|
moduleSchema: resolvedPath.schema
|
|
52242
51984
|
};
|
|
52243
51985
|
};
|
|
52244
|
-
const ValFullscreen = ({ api }) => {
|
|
52245
|
-
var _a, _b;
|
|
52246
|
-
const { "*": pathFromParams } = useParams();
|
|
52247
|
-
const [modules, setModules] = useState(null);
|
|
52248
|
-
const [error, setError] = useState(null);
|
|
52249
|
-
const [selectedPath, setSelectedPath] = useState();
|
|
52250
|
-
const [selectedModuleId] = selectedPath ? Internal.splitModuleIdAndModulePath(selectedPath) : [void 0, void 0];
|
|
52251
|
-
const moduleSource = selectedModuleId && ((_a = modules == null ? void 0 : modules[selectedModuleId]) == null ? void 0 : _a.source);
|
|
52252
|
-
const moduleSchema = selectedModuleId && ((_b = modules == null ? void 0 : modules[selectedModuleId]) == null ? void 0 : _b.schema);
|
|
52253
|
-
const fatalErrors = Object.entries(modules || {}).flatMap(([id2, module]) => {
|
|
52254
|
-
return module.errors ? module.errors.fatal ? module.errors.fatal.map((e3) => ({ id: id2, ...e3 })) : [] : [];
|
|
52255
|
-
});
|
|
52256
|
-
const validationErrors = Object.entries(modules || {}).flatMap(
|
|
52257
|
-
([, module]) => {
|
|
52258
|
-
return module.errors && module.errors.validation ? [module.errors.validation] : [];
|
|
52259
|
-
}
|
|
52260
|
-
);
|
|
52261
|
-
if (fatalErrors && fatalErrors.length > 0) {
|
|
52262
|
-
const message = fatalErrors.length === 1 ? fatalErrors[0].message : `Multiple errors detected:
|
|
52263
|
-
${fatalErrors.map((f, i2) => `${i2 + 1}. [${f.id}]: ${f.message}`).join("\n")}
|
|
52264
|
-
|
|
52265
|
-
Showing stack trace of: 1. ${fatalErrors[0].message}`;
|
|
52266
|
-
const error2 = new Error(message);
|
|
52267
|
-
error2.stack = fatalErrors[0].stack;
|
|
52268
|
-
throw error2;
|
|
52269
|
-
}
|
|
52270
|
-
if (validationErrors && validationErrors.length > 0) {
|
|
52271
|
-
console.warn("Val encountered validation errors:", validationErrors);
|
|
52272
|
-
}
|
|
52273
|
-
useEffect(() => {
|
|
52274
|
-
setSelectedPath(
|
|
52275
|
-
pathFromParams ? `/${pathFromParams}` : selectedPath
|
|
52276
|
-
);
|
|
52277
|
-
}, [pathFromParams]);
|
|
52278
|
-
const [hmrHash, setHmrHash] = useState(null);
|
|
52279
|
-
useEffect(() => {
|
|
52280
|
-
try {
|
|
52281
|
-
const hot = new WebSocket(
|
|
52282
|
-
`${window.location.origin.replace(
|
|
52283
|
-
"http://",
|
|
52284
|
-
"ws://"
|
|
52285
|
-
)}/_next/webpack-hmr`
|
|
52286
|
-
);
|
|
52287
|
-
hot.addEventListener("message", (e3) => {
|
|
52288
|
-
let data;
|
|
52289
|
-
try {
|
|
52290
|
-
data = JSON.parse(e3.data);
|
|
52291
|
-
} catch (err2) {
|
|
52292
|
-
console.error("Failed to parse HMR");
|
|
52293
|
-
}
|
|
52294
|
-
if (typeof (data == null ? void 0 : data.hash) === "string" && (data == null ? void 0 : data.action) === "built") {
|
|
52295
|
-
setHmrHash(data.hash);
|
|
52296
|
-
}
|
|
52297
|
-
});
|
|
52298
|
-
} catch (err2) {
|
|
52299
|
-
console.warn("Failed to initialize HMR", err2);
|
|
52300
|
-
}
|
|
52301
|
-
}, []);
|
|
52302
|
-
useEffect(() => {
|
|
52303
|
-
console.log("(Re)-fetching modules");
|
|
52304
|
-
api.getTree({ patch: true, includeSchema: true, includeSource: true }).then((res) => {
|
|
52305
|
-
if (result.isOk(res)) {
|
|
52306
|
-
setModules(res.value.modules);
|
|
52307
|
-
} else {
|
|
52308
|
-
setError("Could not load modules: " + res.error.message);
|
|
52309
|
-
console.error(res.error);
|
|
52310
|
-
}
|
|
52311
|
-
});
|
|
52312
|
-
}, [hmrHash]);
|
|
52313
|
-
const session = useSession(api);
|
|
52314
|
-
const navigate = useNavigate();
|
|
52315
|
-
const [theme2, setTheme] = useTheme();
|
|
52316
|
-
const { patches, setPatchResetId } = usePatches(session, api);
|
|
52317
|
-
const hoverElemRef = React__default.useRef(null);
|
|
52318
|
-
const initOnSubmit = useCallback(
|
|
52319
|
-
(path) => async (callback) => {
|
|
52320
|
-
const [moduleId, modulePath] = Internal.splitModuleIdAndModulePath(path);
|
|
52321
|
-
const patch = await callback(Internal.createPatchJSONPath(modulePath));
|
|
52322
|
-
return api.postPatches(moduleId, patch).then((res) => {
|
|
52323
|
-
if (result.isErr(res)) {
|
|
52324
|
-
throw res.error;
|
|
52325
|
-
} else {
|
|
52326
|
-
if (!hmrHash) {
|
|
52327
|
-
setPatchResetId((prev) => prev + 1);
|
|
52328
|
-
return api.getTree({
|
|
52329
|
-
treePath: moduleId,
|
|
52330
|
-
patch: true,
|
|
52331
|
-
includeSchema: true,
|
|
52332
|
-
includeSource: true
|
|
52333
|
-
}).then((res2) => {
|
|
52334
|
-
if (result.isOk(res2)) {
|
|
52335
|
-
setModules((modules2) => ({
|
|
52336
|
-
...modules2,
|
|
52337
|
-
...res2.value.modules
|
|
52338
|
-
}));
|
|
52339
|
-
} else {
|
|
52340
|
-
setError("Could not load modules: " + res2.error.message);
|
|
52341
|
-
console.error(res2.error);
|
|
52342
|
-
}
|
|
52343
|
-
});
|
|
52344
|
-
}
|
|
52345
|
-
}
|
|
52346
|
-
}).catch((e3) => {
|
|
52347
|
-
console.error(e3);
|
|
52348
|
-
});
|
|
52349
|
-
},
|
|
52350
|
-
[]
|
|
52351
|
-
);
|
|
52352
|
-
const [patchModalOpen, setPatchModalOpen] = useState(false);
|
|
52353
|
-
const allModuleIds = Object.entries(modules || {}).flatMap(
|
|
52354
|
-
([moduleId, valModule]) => {
|
|
52355
|
-
if ((valModule == null ? void 0 : valModule.schema) && (valModule == null ? void 0 : valModule.source)) {
|
|
52356
|
-
return [moduleId];
|
|
52357
|
-
} else if (valModule == null ? void 0 : valModule.errors) {
|
|
52358
|
-
return [moduleId];
|
|
52359
|
-
}
|
|
52360
|
-
return [];
|
|
52361
|
-
}
|
|
52362
|
-
);
|
|
52363
|
-
return /* @__PURE__ */ jsx(
|
|
52364
|
-
ValUIContext.Provider,
|
|
52365
|
-
{
|
|
52366
|
-
value: {
|
|
52367
|
-
theme: theme2,
|
|
52368
|
-
setTheme,
|
|
52369
|
-
editMode: "full",
|
|
52370
|
-
session,
|
|
52371
|
-
setEditMode: () => {
|
|
52372
|
-
},
|
|
52373
|
-
setWindowSize: () => {
|
|
52374
|
-
}
|
|
52375
|
-
},
|
|
52376
|
-
children: /* @__PURE__ */ jsxs(
|
|
52377
|
-
"div",
|
|
52378
|
-
{
|
|
52379
|
-
id: "val-fullscreen-container",
|
|
52380
|
-
className: "relative w-full h-[100] overflow-hidden font-serif antialiased bg-background text-primary",
|
|
52381
|
-
"data-mode": theme2,
|
|
52382
|
-
children: [
|
|
52383
|
-
patchModalOpen && /* @__PURE__ */ jsx("div", { className: "fixed z-5 top-[16px] left-[16px] w-[calc(100%-32px-50px-16px)] h-[calc(100svh-32px)]", children: /* @__PURE__ */ jsx(
|
|
52384
|
-
ValPatches,
|
|
52385
|
-
{
|
|
52386
|
-
patches,
|
|
52387
|
-
api,
|
|
52388
|
-
onCancel: () => {
|
|
52389
|
-
setPatchModalOpen(false);
|
|
52390
|
-
},
|
|
52391
|
-
onCommit: () => {
|
|
52392
|
-
setPatchResetId((patchResetId) => patchResetId + 1);
|
|
52393
|
-
}
|
|
52394
|
-
}
|
|
52395
|
-
) }),
|
|
52396
|
-
/* @__PURE__ */ jsxs(Popover, { children: [
|
|
52397
|
-
/* @__PURE__ */ jsx($cb5cc270b50c6fcd$export$602eac185826482c, {}),
|
|
52398
|
-
/* @__PURE__ */ jsx("div", { className: "fixed -translate-y-1/2 right-4 top-1/2 z-overlay", children: /* @__PURE__ */ jsx(
|
|
52399
|
-
ValMenu,
|
|
52400
|
-
{
|
|
52401
|
-
direction: "vertical",
|
|
52402
|
-
api,
|
|
52403
|
-
patches,
|
|
52404
|
-
onClickPatches: () => setPatchModalOpen((prev) => !prev)
|
|
52405
|
-
}
|
|
52406
|
-
) })
|
|
52407
|
-
] }),
|
|
52408
|
-
/* @__PURE__ */ jsx("div", { id: "val-fullscreen-hover", ref: hoverElemRef }),
|
|
52409
|
-
/* @__PURE__ */ jsx(
|
|
52410
|
-
ValImagePreviewContext.Provider,
|
|
52411
|
-
{
|
|
52412
|
-
value: {
|
|
52413
|
-
hoverElem: hoverElemRef == null ? void 0 : hoverElemRef.current
|
|
52414
|
-
},
|
|
52415
|
-
children: /* @__PURE__ */ jsx("div", { className: "text-primary", children: /* @__PURE__ */ jsxs(Grid, { children: [
|
|
52416
|
-
/* @__PURE__ */ jsx("div", { className: "px-4 h-[50px] flex items-center justify-center", children: /* @__PURE__ */ jsx(Logo$1, {}) }),
|
|
52417
|
-
/* @__PURE__ */ jsx(ScrollArea, { className: "px-4", children: modules ? /* @__PURE__ */ jsx(
|
|
52418
|
-
PathTree,
|
|
52419
|
-
{
|
|
52420
|
-
selectedPath,
|
|
52421
|
-
paths: allModuleIds,
|
|
52422
|
-
setSelectedModuleId: (path) => {
|
|
52423
|
-
navigate(path);
|
|
52424
|
-
}
|
|
52425
|
-
}
|
|
52426
|
-
) : !error && /* @__PURE__ */ jsx("div", { className: "py-4", children: "Loading..." }) }),
|
|
52427
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-start h-[50px] gap-2 font-serif text-xs", children: [
|
|
52428
|
-
/* @__PURE__ */ jsx(
|
|
52429
|
-
"button",
|
|
52430
|
-
{
|
|
52431
|
-
onClick: () => {
|
|
52432
|
-
history.back();
|
|
52433
|
-
},
|
|
52434
|
-
children: /* @__PURE__ */ jsx(ChevronLeft, {})
|
|
52435
|
-
}
|
|
52436
|
-
),
|
|
52437
|
-
/* @__PURE__ */ jsx(
|
|
52438
|
-
"div",
|
|
52439
|
-
{
|
|
52440
|
-
className: "truncate max-w-[300px] text-left",
|
|
52441
|
-
dir: "rtl",
|
|
52442
|
-
title: selectedPath,
|
|
52443
|
-
children: /* @__PURE__ */ jsx(Path, { children: selectedPath || "/" })
|
|
52444
|
-
}
|
|
52445
|
-
)
|
|
52446
|
-
] }),
|
|
52447
|
-
/* @__PURE__ */ jsxs("div", { className: "p-4", children: [
|
|
52448
|
-
error && /* @__PURE__ */ jsxs("div", { className: "max-w-xl p-4 text-lg bg-destructive text-destructive-foreground", children: [
|
|
52449
|
-
"ERROR: ",
|
|
52450
|
-
error
|
|
52451
|
-
] }),
|
|
52452
|
-
session.status === "success" && session.data.mode === "unauthorized" && /* @__PURE__ */ jsx("div", { className: "max-w-xl p-4 text-lg bg-destructive text-destructive-foreground", children: "Not authorized" }),
|
|
52453
|
-
session.status === "success" && session.data.mode !== "unauthorized" && modules && selectedPath && selectedModuleId && moduleSource !== void 0 && moduleSchema !== void 0 && /* @__PURE__ */ jsx(ValModulesContext.Provider, { value: modules, children: /* @__PURE__ */ jsx(
|
|
52454
|
-
ValModule,
|
|
52455
|
-
{
|
|
52456
|
-
path: selectedPath,
|
|
52457
|
-
source: moduleSource,
|
|
52458
|
-
schema: moduleSchema,
|
|
52459
|
-
setSelectedPath,
|
|
52460
|
-
initOnSubmit
|
|
52461
|
-
}
|
|
52462
|
-
) })
|
|
52463
|
-
] })
|
|
52464
|
-
] }) })
|
|
52465
|
-
}
|
|
52466
|
-
)
|
|
52467
|
-
]
|
|
52468
|
-
}
|
|
52469
|
-
)
|
|
52470
|
-
}
|
|
52471
|
-
);
|
|
52472
|
-
};
|
|
52473
|
-
function ValModule({
|
|
52474
|
-
path,
|
|
52475
|
-
source: moduleSource,
|
|
52476
|
-
schema: moduleSchema,
|
|
52477
|
-
setSelectedPath,
|
|
52478
|
-
initOnSubmit
|
|
52479
|
-
}) {
|
|
52480
|
-
const [, modulePath] = Internal.splitModuleIdAndModulePath(
|
|
52481
|
-
path
|
|
52482
|
-
);
|
|
52483
|
-
const resolvedPath = Internal.resolvePath(
|
|
52484
|
-
modulePath,
|
|
52485
|
-
moduleSource,
|
|
52486
|
-
moduleSchema
|
|
52487
|
-
);
|
|
52488
|
-
if (!resolvedPath) {
|
|
52489
|
-
throw Error("Could not resolve module: " + path);
|
|
52490
|
-
}
|
|
52491
|
-
return /* @__PURE__ */ jsx(
|
|
52492
|
-
AnyVal,
|
|
52493
|
-
{
|
|
52494
|
-
path,
|
|
52495
|
-
source: resolvedPath.source,
|
|
52496
|
-
schema: resolvedPath.schema,
|
|
52497
|
-
setSelectedPath,
|
|
52498
|
-
initOnSubmit,
|
|
52499
|
-
top: true
|
|
52500
|
-
}
|
|
52501
|
-
);
|
|
52502
|
-
}
|
|
52503
51986
|
let createNanoEvents = () => ({
|
|
52504
51987
|
events: {},
|
|
52505
51988
|
emit(event, ...args) {
|
|
@@ -76114,7 +75597,7 @@ function mustPreserveItems(state) {
|
|
|
76114
75597
|
}
|
|
76115
75598
|
const historyKey = new PluginKey("history");
|
|
76116
75599
|
const closeHistoryKey = new PluginKey("closeHistory");
|
|
76117
|
-
function history
|
|
75600
|
+
function history(config = {}) {
|
|
76118
75601
|
config = {
|
|
76119
75602
|
depth: config.depth || 100,
|
|
76120
75603
|
newGroupDelay: config.newGroupDelay || 500
|
|
@@ -76217,7 +75700,7 @@ var HistoryExtension = class extends PlainExtension {
|
|
|
76217
75700
|
*/
|
|
76218
75701
|
createExternalPlugins() {
|
|
76219
75702
|
const { depth, newGroupDelay } = this.options;
|
|
76220
|
-
return [history
|
|
75703
|
+
return [history({ depth, newGroupDelay })];
|
|
76221
75704
|
}
|
|
76222
75705
|
undo() {
|
|
76223
75706
|
return nonChainable(this.wrapMethod(undo, this.options.onUndo));
|
|
@@ -80411,7 +79894,7 @@ const DropdownMenuSubTrigger = React$3.forwardRef(({ className: className2, inse
|
|
|
80411
79894
|
...props,
|
|
80412
79895
|
children: [
|
|
80413
79896
|
children,
|
|
80414
|
-
/* @__PURE__ */ jsx(ChevronRight, { className: "
|
|
79897
|
+
/* @__PURE__ */ jsx(ChevronRight, { className: "w-4 h-4 ml-auto" })
|
|
80415
79898
|
]
|
|
80416
79899
|
}
|
|
80417
79900
|
));
|
|
@@ -80428,7 +79911,7 @@ const DropdownMenuSubContent = React$3.forwardRef(({ className: className2, ...p
|
|
|
80428
79911
|
}
|
|
80429
79912
|
));
|
|
80430
79913
|
DropdownMenuSubContent.displayName = $d08ef79370b62062$export$6d4de93b380beddf.displayName;
|
|
80431
|
-
const DropdownMenuContent = React$3.forwardRef(({ className: className2, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx($d08ef79370b62062$export$602eac185826482c, { children: /* @__PURE__ */ jsx(
|
|
79914
|
+
const DropdownMenuContent = React$3.forwardRef(({ className: className2, sideOffset = 4, container, ...props }, ref) => /* @__PURE__ */ jsx($d08ef79370b62062$export$602eac185826482c, { container, children: /* @__PURE__ */ jsx(
|
|
80432
79915
|
$d08ef79370b62062$export$7c6e2c02157bb7d2,
|
|
80433
79916
|
{
|
|
80434
79917
|
ref,
|
|
@@ -80465,7 +79948,7 @@ const DropdownMenuCheckboxItem = React$3.forwardRef(({ className: className2, ch
|
|
|
80465
79948
|
checked,
|
|
80466
79949
|
...props,
|
|
80467
79950
|
children: [
|
|
80468
|
-
/* @__PURE__ */ jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx($d08ef79370b62062$export$c3468e2714d175fa, { children: /* @__PURE__ */ jsx(Check, { className: "
|
|
79951
|
+
/* @__PURE__ */ jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx($d08ef79370b62062$export$c3468e2714d175fa, { children: /* @__PURE__ */ jsx(Check, { className: "w-4 h-4" }) }) }),
|
|
80469
79952
|
children
|
|
80470
79953
|
]
|
|
80471
79954
|
}
|
|
@@ -80481,7 +79964,7 @@ const DropdownMenuRadioItem = React$3.forwardRef(({ className: className2, child
|
|
|
80481
79964
|
),
|
|
80482
79965
|
...props,
|
|
80483
79966
|
children: [
|
|
80484
|
-
/* @__PURE__ */ jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx($d08ef79370b62062$export$c3468e2714d175fa, { children: /* @__PURE__ */ jsx(Circle, { className: "
|
|
79967
|
+
/* @__PURE__ */ jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx($d08ef79370b62062$export$c3468e2714d175fa, { children: /* @__PURE__ */ jsx(Circle, { className: "w-2 h-2 fill-current" }) }) }),
|
|
80485
79968
|
children
|
|
80486
79969
|
]
|
|
80487
79970
|
}
|
|
@@ -85033,18 +84516,18 @@ function RichTextEditor({
|
|
|
85033
84516
|
"rounded-t-none border-t-0": showToolbar
|
|
85034
84517
|
}
|
|
85035
84518
|
);
|
|
85036
|
-
return /* @__PURE__ */ jsx("div", { className: "
|
|
85037
|
-
|
|
84519
|
+
return /* @__PURE__ */ jsx("div", { className: "text-base val-rich-text-editor", children: /* @__PURE__ */ jsx(
|
|
84520
|
+
Remirror,
|
|
85038
84521
|
{
|
|
85039
|
-
|
|
85040
|
-
|
|
85041
|
-
|
|
84522
|
+
manager,
|
|
84523
|
+
initialContent: state,
|
|
84524
|
+
classNames: [className2],
|
|
85042
84525
|
children: /* @__PURE__ */ jsxs(
|
|
85043
|
-
|
|
84526
|
+
DayPickerProvider,
|
|
85044
84527
|
{
|
|
85045
|
-
|
|
85046
|
-
|
|
85047
|
-
|
|
84528
|
+
initialProps: {
|
|
84529
|
+
mode: "default"
|
|
84530
|
+
},
|
|
85048
84531
|
children: [
|
|
85049
84532
|
/* @__PURE__ */ jsx(
|
|
85050
84533
|
Toolbar,
|
|
@@ -85078,212 +84561,216 @@ const Toolbar = ({
|
|
|
85078
84561
|
useEffect(() => {
|
|
85079
84562
|
onShowToolbar(showToolbar);
|
|
85080
84563
|
}, [showToolbar]);
|
|
85081
|
-
|
|
85082
|
-
|
|
85083
|
-
{
|
|
85084
|
-
|
|
85085
|
-
|
|
85086
|
-
|
|
85087
|
-
|
|
85088
|
-
|
|
85089
|
-
|
|
85090
|
-
|
|
85091
|
-
|
|
85092
|
-
|
|
85093
|
-
|
|
85094
|
-
|
|
85095
|
-
|
|
85096
|
-
|
|
85097
|
-
|
|
85098
|
-
|
|
85099
|
-
|
|
85100
|
-
|
|
85101
|
-
|
|
85102
|
-
|
|
85103
|
-
|
|
85104
|
-
|
|
85105
|
-
|
|
85106
|
-
onClick: () => {
|
|
85107
|
-
chain.setBlockNodeType("paragraph").focus().run();
|
|
85108
|
-
},
|
|
85109
|
-
children: "Normal"
|
|
85110
|
-
}
|
|
85111
|
-
),
|
|
85112
|
-
((_a = options == null ? void 0 : options.headings) == null ? void 0 : _a.includes("h1")) && /* @__PURE__ */ jsx(
|
|
85113
|
-
DropdownMenuItem,
|
|
85114
|
-
{
|
|
85115
|
-
onClick: () => {
|
|
85116
|
-
chain.setBlockNodeType("heading", { level: 1 }).focus().run();
|
|
85117
|
-
},
|
|
85118
|
-
children: /* @__PURE__ */ jsx(Heading1, { size: 16 })
|
|
85119
|
-
}
|
|
85120
|
-
),
|
|
85121
|
-
((_b = options == null ? void 0 : options.headings) == null ? void 0 : _b.includes("h2")) && /* @__PURE__ */ jsx(
|
|
85122
|
-
DropdownMenuItem,
|
|
85123
|
-
{
|
|
85124
|
-
onClick: () => {
|
|
85125
|
-
chain.setBlockNodeType("heading", { level: 2 }).focus().run();
|
|
85126
|
-
},
|
|
85127
|
-
children: /* @__PURE__ */ jsx(Heading2, { size: 16 })
|
|
85128
|
-
}
|
|
85129
|
-
),
|
|
85130
|
-
((_c = options == null ? void 0 : options.headings) == null ? void 0 : _c.includes("h3")) && /* @__PURE__ */ jsx(
|
|
85131
|
-
DropdownMenuItem,
|
|
85132
|
-
{
|
|
85133
|
-
onClick: () => {
|
|
85134
|
-
chain.setBlockNodeType("heading", { level: 3 }).focus().run();
|
|
85135
|
-
},
|
|
85136
|
-
children: /* @__PURE__ */ jsx(Heading3, { size: 16 })
|
|
85137
|
-
}
|
|
85138
|
-
),
|
|
85139
|
-
((_d = options == null ? void 0 : options.headings) == null ? void 0 : _d.includes("h4")) && /* @__PURE__ */ jsx(
|
|
85140
|
-
DropdownMenuItem,
|
|
85141
|
-
{
|
|
85142
|
-
onClick: () => {
|
|
85143
|
-
chain.setBlockNodeType("heading", { level: 4 }).focus().run();
|
|
85144
|
-
},
|
|
85145
|
-
children: /* @__PURE__ */ jsx(Heading4, { size: 16 })
|
|
85146
|
-
}
|
|
85147
|
-
),
|
|
85148
|
-
((_e = options == null ? void 0 : options.headings) == null ? void 0 : _e.includes("h5")) && /* @__PURE__ */ jsx(
|
|
85149
|
-
DropdownMenuItem,
|
|
85150
|
-
{
|
|
85151
|
-
onClick: () => {
|
|
85152
|
-
chain.setBlockNodeType("heading", { level: 5 }).focus().run();
|
|
85153
|
-
},
|
|
85154
|
-
children: /* @__PURE__ */ jsx(Heading5, { size: 16 })
|
|
85155
|
-
}
|
|
85156
|
-
),
|
|
85157
|
-
((_f = options == null ? void 0 : options.headings) == null ? void 0 : _f.includes("h5")) && /* @__PURE__ */ jsx(
|
|
85158
|
-
DropdownMenuItem,
|
|
85159
|
-
{
|
|
85160
|
-
onClick: () => {
|
|
85161
|
-
chain.setBlockNodeType("heading", { level: 6 }).focus().run();
|
|
85162
|
-
},
|
|
85163
|
-
children: /* @__PURE__ */ jsx(Heading6, { size: 16 })
|
|
85164
|
-
}
|
|
85165
|
-
)
|
|
85166
|
-
] })
|
|
85167
|
-
] }),
|
|
85168
|
-
/* @__PURE__ */ jsx(
|
|
85169
|
-
ToolbarButton,
|
|
85170
|
-
{
|
|
85171
|
-
icon: /* @__PURE__ */ jsx(Bold, { size: 18 }),
|
|
85172
|
-
stroke: 3,
|
|
85173
|
-
mark: "bold",
|
|
85174
|
-
isOption: options == null ? void 0 : options.bold,
|
|
85175
|
-
isActive: active.bold(),
|
|
85176
|
-
onToggle: (chain2) => chain2.toggleBold().focus().run()
|
|
85177
|
-
}
|
|
85178
|
-
),
|
|
85179
|
-
/* @__PURE__ */ jsx(
|
|
85180
|
-
ToolbarButton,
|
|
85181
|
-
{
|
|
85182
|
-
icon: /* @__PURE__ */ jsx(Strikethrough, { size: 18 }),
|
|
85183
|
-
stroke: 3,
|
|
85184
|
-
mark: "strike",
|
|
85185
|
-
isOption: options == null ? void 0 : options.lineThrough,
|
|
85186
|
-
isActive: active.strike(),
|
|
85187
|
-
onToggle: (chain2) => chain2.toggleStrike().focus().run()
|
|
85188
|
-
}
|
|
85189
|
-
),
|
|
85190
|
-
/* @__PURE__ */ jsx(
|
|
85191
|
-
ToolbarButton,
|
|
85192
|
-
{
|
|
85193
|
-
icon: /* @__PURE__ */ jsx(Italic, { size: 18 }),
|
|
85194
|
-
stroke: 3,
|
|
85195
|
-
mark: "italic",
|
|
85196
|
-
isOption: options == null ? void 0 : options.italic,
|
|
85197
|
-
isActive: active.italic(),
|
|
85198
|
-
onToggle: (chain2) => chain2.toggleItalic().focus().run()
|
|
85199
|
-
}
|
|
85200
|
-
),
|
|
85201
|
-
/* @__PURE__ */ jsx(
|
|
85202
|
-
ToolbarButton,
|
|
85203
|
-
{
|
|
85204
|
-
icon: /* @__PURE__ */ jsx(List, { size: 18 }),
|
|
85205
|
-
stroke: 3,
|
|
85206
|
-
mark: "bulletList",
|
|
85207
|
-
isOption: options == null ? void 0 : options.ul,
|
|
85208
|
-
isActive: active.bulletList(),
|
|
85209
|
-
onToggle: (chain2) => chain2.toggleBulletList().focus().run()
|
|
85210
|
-
}
|
|
85211
|
-
),
|
|
85212
|
-
/* @__PURE__ */ jsx(
|
|
85213
|
-
ToolbarButton,
|
|
85214
|
-
{
|
|
85215
|
-
icon: /* @__PURE__ */ jsx(ListOrdered, { size: 18 }),
|
|
85216
|
-
stroke: 3,
|
|
85217
|
-
mark: "list",
|
|
85218
|
-
isOption: options == null ? void 0 : options.ol,
|
|
85219
|
-
isActive: active.orderedList(),
|
|
85220
|
-
onToggle: (chain2) => chain2.toggleOrderedList().focus().run()
|
|
85221
|
-
}
|
|
85222
|
-
),
|
|
85223
|
-
/* @__PURE__ */ jsx(
|
|
85224
|
-
ToolbarButton,
|
|
85225
|
-
{
|
|
85226
|
-
icon: /* @__PURE__ */ jsx(Link, { size: 18 }),
|
|
85227
|
-
stroke: 3,
|
|
85228
|
-
mark: "link",
|
|
85229
|
-
isOption: options == null ? void 0 : options.ol,
|
|
85230
|
-
isActive: active.link(),
|
|
85231
|
-
onToggle: (chain2) => chain2.updateLink({ href: "" }).focus().run()
|
|
85232
|
-
}
|
|
85233
|
-
),
|
|
85234
|
-
((options == null ? void 0 : options.img) || active.image()) && /* @__PURE__ */ jsxs(
|
|
85235
|
-
"label",
|
|
85236
|
-
{
|
|
85237
|
-
className: "px-2 py-1 cursor-pointer",
|
|
85238
|
-
htmlFor: "val-toolbar-image-select",
|
|
85239
|
-
children: [
|
|
84564
|
+
const dropdownContainerRef = useRef(null);
|
|
84565
|
+
return /* @__PURE__ */ jsxs(Fragment$2, { children: [
|
|
84566
|
+
/* @__PURE__ */ jsx("div", { className: "h-0", ref: dropdownContainerRef }),
|
|
84567
|
+
/* @__PURE__ */ jsxs(
|
|
84568
|
+
"div",
|
|
84569
|
+
{
|
|
84570
|
+
className: classNames(
|
|
84571
|
+
"sticky top-0 flex flex-col py-2 z-[40] border divide-y rounded-md rounded-b-none border-input bg-background",
|
|
84572
|
+
{
|
|
84573
|
+
hidden: !showToolbar
|
|
84574
|
+
}
|
|
84575
|
+
),
|
|
84576
|
+
children: [
|
|
84577
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-row items-center justify-start px-4 py-1 gap-x-3", children: [
|
|
84578
|
+
((options == null ? void 0 : options.headings) || active.heading()) && /* @__PURE__ */ jsxs(DropdownMenu, { children: [
|
|
84579
|
+
/* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, className: "pr-4", children: /* @__PURE__ */ jsxs("button", { children: [
|
|
84580
|
+
active.heading({ level: 1 }) && /* @__PURE__ */ jsx(Heading1, { size: 22 }),
|
|
84581
|
+
active.heading({ level: 2 }) && /* @__PURE__ */ jsx(Heading2, { size: 22 }),
|
|
84582
|
+
active.heading({ level: 3 }) && /* @__PURE__ */ jsx(Heading3, { size: 22 }),
|
|
84583
|
+
active.heading({ level: 4 }) && /* @__PURE__ */ jsx(Heading4, { size: 22 }),
|
|
84584
|
+
active.heading({ level: 5 }) && /* @__PURE__ */ jsx(Heading5, { size: 22 }),
|
|
84585
|
+
active.heading({ level: 6 }) && /* @__PURE__ */ jsx(Heading6, { size: 22 }),
|
|
84586
|
+
!active.heading() && "Normal"
|
|
84587
|
+
] }) }),
|
|
84588
|
+
/* @__PURE__ */ jsxs(DropdownMenuContent, { container: dropdownContainerRef.current, children: [
|
|
85240
84589
|
/* @__PURE__ */ jsx(
|
|
85241
|
-
|
|
84590
|
+
DropdownMenuItem,
|
|
85242
84591
|
{
|
|
85243
|
-
|
|
85244
|
-
|
|
85245
|
-
|
|
85246
|
-
|
|
85247
|
-
onChange: (ev) => {
|
|
85248
|
-
readImage(ev).then((res) => {
|
|
85249
|
-
chain.insertImage({
|
|
85250
|
-
src: res.src,
|
|
85251
|
-
width: res.width,
|
|
85252
|
-
height: res.height,
|
|
85253
|
-
fileName: createFilename(res.src, res.filename ?? null, {
|
|
85254
|
-
width: res.width,
|
|
85255
|
-
height: res.height,
|
|
85256
|
-
sha256: res.sha256,
|
|
85257
|
-
mimeType: res.mimeType
|
|
85258
|
-
}) ?? void 0
|
|
85259
|
-
}).focus().run();
|
|
85260
|
-
});
|
|
85261
|
-
}
|
|
84592
|
+
onClick: () => {
|
|
84593
|
+
chain.setBlockNodeType("paragraph").focus().run();
|
|
84594
|
+
},
|
|
84595
|
+
children: "Normal"
|
|
85262
84596
|
}
|
|
85263
84597
|
),
|
|
85264
|
-
/* @__PURE__ */ jsx(
|
|
85265
|
-
|
|
84598
|
+
((_a = options == null ? void 0 : options.headings) == null ? void 0 : _a.includes("h1")) && /* @__PURE__ */ jsx(
|
|
84599
|
+
DropdownMenuItem,
|
|
85266
84600
|
{
|
|
85267
|
-
|
|
85268
|
-
|
|
84601
|
+
onClick: () => {
|
|
84602
|
+
chain.setBlockNodeType("heading", { level: 1 }).focus().run();
|
|
84603
|
+
},
|
|
84604
|
+
children: /* @__PURE__ */ jsx(Heading1, { size: 16 })
|
|
84605
|
+
}
|
|
84606
|
+
),
|
|
84607
|
+
((_b = options == null ? void 0 : options.headings) == null ? void 0 : _b.includes("h2")) && /* @__PURE__ */ jsx(
|
|
84608
|
+
DropdownMenuItem,
|
|
84609
|
+
{
|
|
84610
|
+
onClick: () => {
|
|
84611
|
+
chain.setBlockNodeType("heading", { level: 2 }).focus().run();
|
|
84612
|
+
},
|
|
84613
|
+
children: /* @__PURE__ */ jsx(Heading2, { size: 16 })
|
|
84614
|
+
}
|
|
84615
|
+
),
|
|
84616
|
+
((_c = options == null ? void 0 : options.headings) == null ? void 0 : _c.includes("h3")) && /* @__PURE__ */ jsx(
|
|
84617
|
+
DropdownMenuItem,
|
|
84618
|
+
{
|
|
84619
|
+
onClick: () => {
|
|
84620
|
+
chain.setBlockNodeType("heading", { level: 3 }).focus().run();
|
|
84621
|
+
},
|
|
84622
|
+
children: /* @__PURE__ */ jsx(Heading3, { size: 16 })
|
|
84623
|
+
}
|
|
84624
|
+
),
|
|
84625
|
+
((_d = options == null ? void 0 : options.headings) == null ? void 0 : _d.includes("h4")) && /* @__PURE__ */ jsx(
|
|
84626
|
+
DropdownMenuItem,
|
|
84627
|
+
{
|
|
84628
|
+
onClick: () => {
|
|
84629
|
+
chain.setBlockNodeType("heading", { level: 4 }).focus().run();
|
|
84630
|
+
},
|
|
84631
|
+
children: /* @__PURE__ */ jsx(Heading4, { size: 16 })
|
|
84632
|
+
}
|
|
84633
|
+
),
|
|
84634
|
+
((_e = options == null ? void 0 : options.headings) == null ? void 0 : _e.includes("h5")) && /* @__PURE__ */ jsx(
|
|
84635
|
+
DropdownMenuItem,
|
|
84636
|
+
{
|
|
84637
|
+
onClick: () => {
|
|
84638
|
+
chain.setBlockNodeType("heading", { level: 5 }).focus().run();
|
|
84639
|
+
},
|
|
84640
|
+
children: /* @__PURE__ */ jsx(Heading5, { size: 16 })
|
|
84641
|
+
}
|
|
84642
|
+
),
|
|
84643
|
+
((_f = options == null ? void 0 : options.headings) == null ? void 0 : _f.includes("h5")) && /* @__PURE__ */ jsx(
|
|
84644
|
+
DropdownMenuItem,
|
|
84645
|
+
{
|
|
84646
|
+
onClick: () => {
|
|
84647
|
+
chain.setBlockNodeType("heading", { level: 6 }).focus().run();
|
|
84648
|
+
},
|
|
84649
|
+
children: /* @__PURE__ */ jsx(Heading6, { size: 16 })
|
|
85269
84650
|
}
|
|
85270
84651
|
)
|
|
85271
|
-
]
|
|
85272
|
-
}
|
|
85273
|
-
|
|
85274
|
-
|
|
85275
|
-
|
|
85276
|
-
|
|
85277
|
-
|
|
85278
|
-
|
|
85279
|
-
|
|
85280
|
-
|
|
85281
|
-
|
|
85282
|
-
|
|
85283
|
-
|
|
85284
|
-
|
|
85285
|
-
|
|
85286
|
-
|
|
84652
|
+
] })
|
|
84653
|
+
] }),
|
|
84654
|
+
/* @__PURE__ */ jsx(
|
|
84655
|
+
ToolbarButton,
|
|
84656
|
+
{
|
|
84657
|
+
icon: /* @__PURE__ */ jsx(Bold, { size: 18 }),
|
|
84658
|
+
stroke: 3,
|
|
84659
|
+
mark: "bold",
|
|
84660
|
+
isOption: options == null ? void 0 : options.bold,
|
|
84661
|
+
isActive: active.bold(),
|
|
84662
|
+
onToggle: (chain2) => chain2.toggleBold().focus().run()
|
|
84663
|
+
}
|
|
84664
|
+
),
|
|
84665
|
+
/* @__PURE__ */ jsx(
|
|
84666
|
+
ToolbarButton,
|
|
84667
|
+
{
|
|
84668
|
+
icon: /* @__PURE__ */ jsx(Strikethrough, { size: 18 }),
|
|
84669
|
+
stroke: 3,
|
|
84670
|
+
mark: "strike",
|
|
84671
|
+
isOption: options == null ? void 0 : options.lineThrough,
|
|
84672
|
+
isActive: active.strike(),
|
|
84673
|
+
onToggle: (chain2) => chain2.toggleStrike().focus().run()
|
|
84674
|
+
}
|
|
84675
|
+
),
|
|
84676
|
+
/* @__PURE__ */ jsx(
|
|
84677
|
+
ToolbarButton,
|
|
84678
|
+
{
|
|
84679
|
+
icon: /* @__PURE__ */ jsx(Italic, { size: 18 }),
|
|
84680
|
+
stroke: 3,
|
|
84681
|
+
mark: "italic",
|
|
84682
|
+
isOption: options == null ? void 0 : options.italic,
|
|
84683
|
+
isActive: active.italic(),
|
|
84684
|
+
onToggle: (chain2) => chain2.toggleItalic().focus().run()
|
|
84685
|
+
}
|
|
84686
|
+
),
|
|
84687
|
+
/* @__PURE__ */ jsx(
|
|
84688
|
+
ToolbarButton,
|
|
84689
|
+
{
|
|
84690
|
+
icon: /* @__PURE__ */ jsx(List, { size: 18 }),
|
|
84691
|
+
stroke: 3,
|
|
84692
|
+
mark: "bulletList",
|
|
84693
|
+
isOption: options == null ? void 0 : options.ul,
|
|
84694
|
+
isActive: active.bulletList(),
|
|
84695
|
+
onToggle: (chain2) => chain2.toggleBulletList().focus().run()
|
|
84696
|
+
}
|
|
84697
|
+
),
|
|
84698
|
+
/* @__PURE__ */ jsx(
|
|
84699
|
+
ToolbarButton,
|
|
84700
|
+
{
|
|
84701
|
+
icon: /* @__PURE__ */ jsx(ListOrdered, { size: 18 }),
|
|
84702
|
+
stroke: 3,
|
|
84703
|
+
mark: "list",
|
|
84704
|
+
isOption: options == null ? void 0 : options.ol,
|
|
84705
|
+
isActive: active.orderedList(),
|
|
84706
|
+
onToggle: (chain2) => chain2.toggleOrderedList().focus().run()
|
|
84707
|
+
}
|
|
84708
|
+
),
|
|
84709
|
+
/* @__PURE__ */ jsx(
|
|
84710
|
+
ToolbarButton,
|
|
84711
|
+
{
|
|
84712
|
+
icon: /* @__PURE__ */ jsx(Link, { size: 18 }),
|
|
84713
|
+
stroke: 3,
|
|
84714
|
+
mark: "link",
|
|
84715
|
+
isOption: options == null ? void 0 : options.ol,
|
|
84716
|
+
isActive: active.link(),
|
|
84717
|
+
onToggle: (chain2) => chain2.updateLink({ href: "" }).focus().run()
|
|
84718
|
+
}
|
|
84719
|
+
),
|
|
84720
|
+
((options == null ? void 0 : options.img) || active.image()) && /* @__PURE__ */ jsxs(
|
|
84721
|
+
"label",
|
|
84722
|
+
{
|
|
84723
|
+
className: "cursor-pointer",
|
|
84724
|
+
htmlFor: "val-toolbar-image-select",
|
|
84725
|
+
children: [
|
|
84726
|
+
/* @__PURE__ */ jsx(
|
|
84727
|
+
"input",
|
|
84728
|
+
{
|
|
84729
|
+
hidden: true,
|
|
84730
|
+
id: "val-toolbar-image-select",
|
|
84731
|
+
accept: "image/*",
|
|
84732
|
+
type: "file",
|
|
84733
|
+
onChange: (ev) => {
|
|
84734
|
+
readImage(ev).then((res) => {
|
|
84735
|
+
chain.insertImage({
|
|
84736
|
+
src: res.src,
|
|
84737
|
+
width: res.width,
|
|
84738
|
+
height: res.height,
|
|
84739
|
+
fileName: createFilename(res.src, res.filename ?? null, {
|
|
84740
|
+
width: res.width,
|
|
84741
|
+
height: res.height,
|
|
84742
|
+
sha256: res.sha256,
|
|
84743
|
+
mimeType: res.mimeType
|
|
84744
|
+
}) ?? void 0
|
|
84745
|
+
}).focus().run();
|
|
84746
|
+
});
|
|
84747
|
+
}
|
|
84748
|
+
}
|
|
84749
|
+
),
|
|
84750
|
+
/* @__PURE__ */ jsx(
|
|
84751
|
+
Image$1,
|
|
84752
|
+
{
|
|
84753
|
+
size: 18,
|
|
84754
|
+
className: `${active.image() && "stroke-[3px]"}`
|
|
84755
|
+
}
|
|
84756
|
+
)
|
|
84757
|
+
]
|
|
84758
|
+
}
|
|
84759
|
+
),
|
|
84760
|
+
debug && /* @__PURE__ */ jsx(
|
|
84761
|
+
"button",
|
|
84762
|
+
{
|
|
84763
|
+
onMouseDown: (event) => event.preventDefault(),
|
|
84764
|
+
onClick: () => chain.insertHardBreak().run(),
|
|
84765
|
+
children: "Br"
|
|
84766
|
+
}
|
|
84767
|
+
)
|
|
84768
|
+
] }),
|
|
84769
|
+
/* @__PURE__ */ jsx(LinkToolBar, {})
|
|
84770
|
+
]
|
|
84771
|
+
}
|
|
84772
|
+
)
|
|
84773
|
+
] });
|
|
85287
84774
|
};
|
|
85288
84775
|
function LinkToolBar() {
|
|
85289
84776
|
const chain = useChainedCommands();
|
|
@@ -87433,70 +86920,6 @@ function ValDefaultOf({
|
|
|
87433
86920
|
function isJsonArray(source) {
|
|
87434
86921
|
return Array.isArray(source);
|
|
87435
86922
|
}
|
|
87436
|
-
function dirPaths(paths) {
|
|
87437
|
-
const res = {};
|
|
87438
|
-
paths.forEach((path) => {
|
|
87439
|
-
const allParts = path.split("/").filter((part) => part !== "");
|
|
87440
|
-
if (allParts.length === 1) {
|
|
87441
|
-
if (!res[""]) {
|
|
87442
|
-
res[""] = [];
|
|
87443
|
-
}
|
|
87444
|
-
res[""].push(allParts[0]);
|
|
87445
|
-
} else if (allParts.length > 1) {
|
|
87446
|
-
const dir = allParts.slice(0, allParts.length - 1).join("/");
|
|
87447
|
-
const file3 = allParts.slice(-1)[0];
|
|
87448
|
-
if (!res[dir]) {
|
|
87449
|
-
res[dir] = [];
|
|
87450
|
-
}
|
|
87451
|
-
res[dir].push(file3);
|
|
87452
|
-
}
|
|
87453
|
-
});
|
|
87454
|
-
return res;
|
|
87455
|
-
}
|
|
87456
|
-
function PathTree({
|
|
87457
|
-
selectedPath,
|
|
87458
|
-
paths,
|
|
87459
|
-
setSelectedModuleId
|
|
87460
|
-
}) {
|
|
87461
|
-
const tree = dirPaths(paths);
|
|
87462
|
-
const selectedModuleId = selectedPath && Internal.splitModuleIdAndModulePath(selectedPath)[0];
|
|
87463
|
-
return /* @__PURE__ */ jsx("div", { className: "flex flex-col w-full py-2 text-xs", children: Object.entries(tree).map(([dir, files]) => {
|
|
87464
|
-
return /* @__PURE__ */ jsxs("div", { className: "px-4 py-2", children: [
|
|
87465
|
-
dir && /* @__PURE__ */ jsx(
|
|
87466
|
-
"div",
|
|
87467
|
-
{
|
|
87468
|
-
className: "font-bold truncate max-w-[300px] text-left",
|
|
87469
|
-
title: dir,
|
|
87470
|
-
children: /* @__PURE__ */ jsx(Path, { children: dir })
|
|
87471
|
-
}
|
|
87472
|
-
),
|
|
87473
|
-
/* @__PURE__ */ jsx(
|
|
87474
|
-
"div",
|
|
87475
|
-
{
|
|
87476
|
-
className: classNames({
|
|
87477
|
-
"flex flex-col py-2 justify-start items-start": !!dir
|
|
87478
|
-
}),
|
|
87479
|
-
children: files.map((file3) => {
|
|
87480
|
-
const moduleId = `/${dir}/${file3}`;
|
|
87481
|
-
return /* @__PURE__ */ jsx(
|
|
87482
|
-
"button",
|
|
87483
|
-
{
|
|
87484
|
-
className: classNames("block px-2 py-1 rounded-full", {
|
|
87485
|
-
"bg-accent text-accent-foreground": selectedModuleId === moduleId
|
|
87486
|
-
}),
|
|
87487
|
-
onClick: () => {
|
|
87488
|
-
setSelectedModuleId(moduleId);
|
|
87489
|
-
},
|
|
87490
|
-
children: file3
|
|
87491
|
-
},
|
|
87492
|
-
moduleId
|
|
87493
|
-
);
|
|
87494
|
-
})
|
|
87495
|
-
}
|
|
87496
|
-
)
|
|
87497
|
-
] }, `/${dir}`);
|
|
87498
|
-
}) });
|
|
87499
|
-
}
|
|
87500
86923
|
const theme = {
|
|
87501
86924
|
tags: {
|
|
87502
86925
|
h1: "font-bold",
|
|
@@ -87999,12 +87422,14 @@ function useInitEditMode() {
|
|
|
87999
87422
|
}, []);
|
|
88000
87423
|
return [editMode, setEditMode];
|
|
88001
87424
|
}
|
|
88002
|
-
const styleCss = "/**\n * Styles extracted from: packages/remirror__theme/src/components-theme.ts\n */\n.remirror-editor-wrapper {\n padding-top: var(--rmr-space-3);\n}\n.remirror-button-active {\n color: var(--rmr-color-primary-text) !important;\n background-color: var(--rmr-color-primary) !important;\n}\n.remirror-button {\n display: inline-flex;\n font-weight: 400;\n align-items: center;\n justify-content: center;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n padding: 0.375em 0.75em;\n line-height: 1.5;\n border-radius: var(--rmr-radius-border);\n text-decoration: none;\n border: 1px solid var(--rmr-color-border);\n cursor: pointer;\n white-space: nowrap;\n color: var(--rmr-color-text);\n background-color: var(--rmr-color-background);\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n font-size: 100%;\n}\n.remirror-button[aria-disabled='true'] {\n cursor: auto;\n}\n.remirror-button:not([aria-disabled='true']):hover {\n color: var(--rmr-color-hover-primary-text);\n border-color: var(--rmr-color-hover-border);\n background-color: var(--rmr-color-hover-primary);\n}\n.remirror-button:not([aria-disabled='true']):active,\n.remirror-button:not([aria-disabled='true'])[data-active],\n.remirror-button:not([aria-disabled='true'])[aria-expanded='true'] {\n color: var(--rmr-color-active-primary-text);\n border-color: var(--rmr-color-active-border);\n background-color: var(--rmr-color-active-primary);\n}\n/* Ensure a perceivable button border for users with Windows High Contrast\n mode enabled https://moderncss.dev/css-button-styling-guide/ */\n@media screen and (-ms-high-contrast: active) {\n .remirror-button {\n border: 2px solid currentcolor;\n }\n}\n.remirror-composite {\n align-items: center;\n justify-content: center;\n padding: 0.375em 0.75em;\n font-size: 100%;\n border: 0;\n color: inherit;\n background-color: inherit;\n}\n.remirror-composite:not([aria-selected='true']) {\n color: inherit;\n background-color: inherit;\n}\n[aria-activedescendant='*']:focus .remirror-composite[aria-selected='true'],\n[aria-activedescendant='*']:focus ~ * .remirror-composite[aria-selected='true'] {\n color: var(--rmr-color-text);\n background-color: var(--rmr-color-background);\n}\n.remirror-dialog {\n position: fixed;\n top: 28px;\n left: 50%;\n transform: translateX(-50%);\n border-radius: var(--rmr-radius-border);\n padding: 1em;\n max-height: calc(100vh - 56px);\n outline: 0;\n border: 1px solid var(--rmr-color-border);\n color: var(--rmr-color-text);\n z-index: 999;\n}\n.remirror-dialog:focus {\n box-shadow: 0 0 0 0.2em var(--rmr-color-shadow-1);\n}\n.remirror-dialog-backdrop {\n background-color: var(--rmr-color-backdrop);\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 999;\n}\n.remirror-form > *:not(:first-child) {\n margin-top: 1rem;\n}\n.remirror-form-message {\n font-size: 0.8em;\n margin-top: 0.5rem !important;\n}\n.remirror-form-label {\n display: block;\n margin: 0 0 0.5rem 0 !important;\n}\ninput[type='checkbox'] + .remirror-form-label,\ninput[type='radio'] + .remirror-form-label {\n display: inline-block;\n margin: 0 0 0 0.5rem !important;\n}\n.remirror-form-group {\n display: block;\n color: var(--rmr-color-text);\n border: 1px solid var(--rmr-color-border);\n border-radius: var(--rmr-radius-border);\n padding: 0.5rem 1rem 1rem;\n}\n.remirror-form-group > * {\n display: block;\n}\n.remirror-group {\n display: flex;\n}\n.remirror-group > :not(:first-child) {\n margin-left: -1px;\n}\n.remirror-group > :not(:first-child):not(:last-child):not(.first-child):not(.last-child) {\n border-radius: 0;\n}\n.remirror-group > :first-child:not(:last-child),\n.remirror-group > .first-child {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.remirror-group > :last-child:not(:first-child),\n.remirror-group > .last-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.remirror-input {\n display: block;\n width: 100%;\n border-radius: var(--rmr-radius-border);\n padding: 0.5em 0.75em;\n font-size: 100%;\n border: 1px solid var(--rmr-hue-gray-2);\n color: var(--rmr-hue-gray-5);\n margin: 0 !important;\n}\n.remirror-input:focus {\n border-color: var(--rmr-hue-gray-3);\n}\n.remirror-menu {\n display: flex;\n border-radius: 0;\n}\n.remirror-menu-pane {\n position: relative;\n display: flex;\n justify-content: center;\n align-items: flex-start;\n padding-top: var(--rmr-space-1);\n padding-bottom: var(--rmr-space-1);\n padding-right: var(--rmr-space-2);\n}\n.remirror-menu-pane-active {\n color: var(--rmr-color-primary-text);\n background-color: var(--rmr-color-primary);\n}\n.remirror-menu-dropdown-label {\n padding: 0 var(--rmr-space-2);\n}\n.remirror-menu-pane-icon {\n position: absolute;\n left: 8px;\n width: 20px;\n color: var(--rmr-hue-gray-7);\n}\nbutton:hover .remirror-menu-pane-icon,\nbutton:active .remirror-menu-pane-icon,\n[aria-checked='true'] .remirror-menu-pane-icon {\n color: var(--rmr-hue-gray-1);\n}\n.remirror-menu-pane-label {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n padding-right: var(--rmr-space-3);\n}\n.remirror-menu-pane-shortcut {\n align-self: flex-end;\n color: var(--rmr-hue-gray-6);\n}\nbutton:hover .remirror-menu-pane-shortcut,\nbutton:active .remirror-menu-pane-shortcut,\n[aria-checked='true'] .remirror-menu-pane-shortcut {\n color: var(--rmr-hue-gray-1);\n}\n[role='menu'] > .remirror-menu-button-left {\n left: var(--rmr-space-2);\n}\n[role='menu'] > .remirror-menu-button-right {\n right: var(--rmr-space-2);\n}\n.remirror-menu-button-nested-left svg {\n margin-right: var(--rmr-space-2);\n}\n[role='menu'] > .remirror-menu-button-nested-right {\n padding-right: 2em !important;\n}\n.remirror-menu-button-nested-right svg {\n margin-left: var(--rmr-space-2);\n}\n.remirror-menu-button {\n position: relative;\n}\n.remirror-menu-button svg {\n fill: currentColor;\n width: 0.65em;\n height: 0.65em;\n}\n[role='menu'] > .remirror-menu-button svg {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n}\n[role='menubar'] > .remirror-menu-button svg {\n display: none;\n}\n.remirror-menu-bar {\n position: relative;\n display: flex;\n white-space: nowrap;\n box-shadow: none !important;\n}\n.remirror-menu-bar[aria-orientation='vertical'] {\n padding: 0.25em 0;\n}\n.remirror-menu-bar[aria-orientation='horizontal'] {\n padding: 0;\n}\n.remirror-flex-column {\n flex-direction: column;\n}\n.remirror-flex-row {\n flex-direction: row;\n}\n.remirror-menu-item {\n line-height: 1.5;\n text-align: left;\n justify-content: flex-start;\n border: 0;\n border-radius: 0;\n font-size: 100%;\n background: transparent;\n color: var(--rmr-color-foreground);\n margin: 0;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n cursor: default;\n text-decoration: none;\n}\n.remirror-menu-item:focus,\n.remirror-menu-item[aria-expanded='true'] {\n background-color: var(--rmr-color-primary);\n color: var(--rmr-color-primary-text);\n box-shadow: none !important;\n}\n.remirror-menu-item:active,\n.remirror-menu-item[data-active] {\n background-color: var(--rmr-color-active-primary) !important;\n color: var(--rmr-color-active-primary-text) !important;\n}\n.remirror-menu-item:disabled {\n opacity: 0.5;\n}\n.remirror-menu-item-row {\n padding: 0 var(--rmr-space-2);\n}\n.remirror-menu-item-column {\n padding: 0 var(--rmr-space-4);\n}\n.remirror-menu-item-checkbox {\n position: relative;\n outline: 0;\n}\n.remirror-menu-item-checkbox[aria-checked='true']:before {\n content: '✓';\n position: absolute;\n top: 0;\n left: 0.4em;\n width: 1em;\n height: 1em;\n}\n.remirror-menu-item-radio {\n position: relative;\n outline: 0;\n}\n.remirror-menu-item-radio[aria-checked='true']:before {\n content: '•';\n position: absolute;\n font-size: 1.4em;\n top: -0.25em;\n left: 0.35em;\n width: 0.7142857143em;\n height: 0.7142857143em;\n}\n.remirror-menu-group {\n display: inherit;\n flex-direction: inherit;\n}\n.remirror-floating-popover {\n /* padding: var(--rmr-space-2); */\n padding: 0;\n border: none;\n max-height: calc(100vh - 56px);\n}\n.remirror-popover [data-arrow] {\n background-color: transparent;\n}\n.remirror-popover [data-arrow] .stroke {\n fill: var(--rmr-color-border);\n}\n.remirror-popover [data-arrow] .fill {\n fill: var(--rmr-color-background);\n}\n.remirror-animated-popover {\n transition: opacity 250ms ease-in-out, transform 250ms ease-in-out;\n opacity: 0;\n transform-origin: top center;\n transform: translate3d(0, -20px, 0);\n}\n[data-enter] .remirror-animated-popover {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n}\n.remirror-role {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n font-family: var(--rmr-font-family-default);\n color: var(--rmr-color-text);\n background-color: var(--rmr-color-background);\n /* border: 1px solid var(--rmr-color-border); */\n}\n.remirror-separator {\n border: 1px solid var(--rmr-color-border);\n border-width: 0 1px 0 0;\n margin: 0 0.5em;\n padding: 0;\n width: 0;\n height: auto;\n}\n.remirror-separator[aria-orientation='horizontal'] {\n border-width: 0 0 1px 0;\n margin: 0.5em 0;\n width: auto;\n height: 0;\n}\n.remirror-tab {\n background-color: transparent;\n border: 1px solid transparent;\n border-width: 1px 1px 0 1px;\n border-radius: var(--rmr-radius-border) var(--rmr-radius-border) 0 0;\n font-size: 100%;\n padding: 0.5em 1em;\n margin: 0 0 -1px 0;\n}\n.remirror-tab[aria-selected='true'] {\n background-color: var(--rmr-color-background);\n border-color: var(--rmr-color-border);\n}\n[aria-orientation='vertical'] .remirror-tab {\n border-width: 1px 0 1px 1px;\n border-radius: 0.2em 0 0 0.2em;\n margin: 0 -1px 0 0;\n}\n.remirror-tab-list {\n display: flex;\n flex-direction: row;\n border: 1px solid var(--rmr-color-border);\n border-width: 0 0 1px 0;\n margin: 0 0 1em 0;\n}\n.remirror-tab-list[aria-orientation='vertical'] {\n flex-direction: column;\n border-width: 0 1px 0 0;\n margin: 0 1em 0 0;\n}\n.remirror-tabbable:not([type='checkbox']):not([type='radio']) {\n /* transition: box-shadow 0.15s ease-in-out; */\n outline: 0;\n}\n.remirror-tabbable:not([type='checkbox']):not([type='radio']):focus {\n box-shadow: var(--rmr-color-outline) 0px 0px 0px 0.2em;\n position: relative;\n z-index: 2;\n}\n.remirror-tabbable:not([type='checkbox']):not([type='radio']):hover {\n z-index: 2;\n}\n.remirror-tabbable[aria-disabled='true'] {\n opacity: 0.5;\n}\n.remirror-toolbar {\n display: flex;\n flex-direction: row;\n\n overflow-y: auto;\n}\n.remirror-toolbar > *:not(:first-child) {\n margin: 0 0 0 0.5em;\n}\n.remirror-toolbar[aria-orientation='vertical'] {\n display: inline-flex;\n flex-direction: column;\n}\n.remirror-toolbar[aria-orientation='vertical'] > *:not(:first-child) {\n margin: 0.5em 0 0;\n}\n.remirror-tooltip {\n background-color: var(--rmr-color-faded);\n color: white;\n font-size: 0.8em;\n padding: 0.5rem;\n border-radius: var(--rmr-radius-border);\n z-index: 999;\n}\n.remirror-tooltip [data-arrow] {\n background-color: transparent;\n}\n.remirror-tooltip [data-arrow] .stroke {\n fill: transparent;\n}\n.remirror-tooltip [data-arrow] .fill {\n fill: var(--rmr-hue-gray-8);\n}\n.remirror-table-size-editor {\n background: var(--rmr-color-background);\n box-shadow: var(--rmr-color-shadow-1);\n font-family: var(--rmr-font-family-default);\n font-size: var(--rmr-font-size-1);\n}\n.remirror-table-size-editor-body {\n position: relative;\n}\n.remirror-table-size-editor-body::after {\n background: rgba(0, 0, 0, 0);\n bottom: -50px;\n content: '';\n left: 0;\n position: absolute;\n right: -50px;\n top: -50px;\n}\n.remirror-table-size-editor-cell {\n border: var(--rmr-color-border);\n position: absolute;\n z-index: 2;\n}\n.remirror-table-size-editor-cell-selected {\n background: var(--rmr-color-table-selected-border);\n border-color: var(--rmr-color-border);\n}\n.remirror-table-size-editor-footer {\n padding-bottom: var(--rmr-space-1);\n text-align: center;\n}\n.remirror-color-picker {\n background: var(--rmr-color-background);\n box-shadow: var(--rmr-box-shadow-1);\n font-family: var(--rmr-font-family-default);\n font-size: var(--rmr-font-size-1);\n padding: var(--rmr-space-2) var(--rmr-space-3);\n}\n.remirror-color-picker-cell {\n}\n.remirror-color-picker-cell-selected {\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/core-theme.ts\n */\n.remirror-editor.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n white-space: break-spaces;\n position: relative;\n font-variant-ligatures: none;\n font-feature-settings: 'liga' 0;\n overflow-y: scroll;\n}\n.remirror-editor.ProseMirror pre {\n white-space: pre-wrap;\n}\n.remirror-editor.ProseMirror li {\n position: relative;\n}\n.remirror-editor.ProseMirror hr {\n border-color: #2e2e2e;\n}\n/* Protect against generic img rules. See also https://github.com/ProseMirror/prosemirror-view/commit/aaa50d592074c8063fc2ef77907ab6d0373822fb */\n.remirror-editor.ProseMirror img.ProseMirror-separator {\n display: inline !important;\n border: none !important;\n margin: 0 !important;\n}\n.remirror-editor.ProseMirror-hideselection *::-moz-selection {\n background: transparent;\n color: inherit;\n}\n.remirror-editor.ProseMirror-hideselection *::selection {\n background: transparent;\n color: inherit;\n}\n.remirror-editor.ProseMirror-hideselection *::-moz-selection {\n background: transparent;\n color: inherit;\n}\n.remirror-editor.ProseMirror-hideselection {\n caret-color: transparent;\n}\n.remirror-editor .ProseMirror-selectednode {\n outline: 2px solid #8cf;\n}\n/* Make sure li selections wrap around markers */\n.remirror-editor li.ProseMirror-selectednode {\n outline: none;\n}\n.remirror-editor li.ProseMirror-selectednode:after {\n content: '';\n position: absolute;\n left: -32px;\n right: -2px;\n top: -2px;\n bottom: -2px;\n border: 2px solid #8cf;\n pointer-events: none;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-blockquote-theme.ts\n */\n.remirror-editor.ProseMirror blockquote {\n border-left: 3px solid var(--rmr-hue-gray-3);\n margin-left: 0;\n margin-right: 0;\n padding-left: 10px;\n font-style: italic;\n}\n.remirror-editor.ProseMirror blockquote p {\n color: #888;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-callout-theme.ts\n */\n.remirror-editor div[data-callout-type] {\n display: flex;\n margin-left: 0;\n margin-right: 0;\n padding: 10px;\n border-left: 2px solid transparent;\n}\n.remirror-editor div[data-callout-type] > :not(.remirror-callout-emoji-wrapper) {\n margin-left: 8px;\n flex-grow: 1;\n}\n.remirror-editor div[data-callout-type='info'] {\n background: #eef6fc;\n border-left-color: #3298dc;\n}\n.remirror-editor div[data-callout-type='warning'] {\n background: #fffbeb;\n border-left-color: #ffdd57;\n}\n.remirror-editor div[data-callout-type='error'] {\n background: #feecf0;\n border-left-color: #f14668;\n}\n.remirror-editor div[data-callout-type='success'] {\n background: #effaf3;\n border-left-color: #48c774;\n}\n.remirror-editor div[data-callout-type='blank'] {\n background: #f8f8f8;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-code-block-theme.ts\n */\n.remirror-wrap {\n white-space: pre-wrap !important;\n}\n.remirror-language-select-positioner {\n position: absolute;\n top: var(--y);\n left: var(--x);\n}\n.remirror-language-select-width {\n width: var(--w);\n}\n.remirror-a11y-dark code[class*='language-'],\n.remirror-a11y-dark pre[class*='language-'] {\n color: #f8f8f2;\n background: none;\n font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n word-wrap: normal;\n line-height: 1.5;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n -webkit-hyphens: none;\n hyphens: none;\n}\n/* Code blocks */\n.remirror-a11y-dark pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n border-radius: 0.3em;\n}\n.remirror-a11y-dark :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n.remirror-a11y-dark :not(pre) > code[class*='language-'],\n.remirror-a11y-dark pre[class*='language-'] {\n background: #2b2b2b;\n}\n/* Inline code */\n.remirror-a11y-dark :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n white-space: normal;\n}\n.remirror-a11y-dark .token.comment,\n.remirror-a11y-dark .token.prolog,\n.remirror-a11y-dark .token.doctype,\n.remirror-a11y-dark .token.cdata {\n color: #d4d0ab;\n}\n.remirror-a11y-dark .token.punctuation,\n.remirror-a11y-dark .token.punctuation.important {\n color: #fefefe;\n}\n.remirror-a11y-dark .token.property,\n.remirror-a11y-dark .token.tag,\n.remirror-a11y-dark .token.constant,\n.remirror-a11y-dark .token.symbol,\n.remirror-a11y-dark .token.deleted {\n color: #ffa07a;\n}\n.remirror-a11y-dark .token.boolean,\n.remirror-a11y-dark .token.number {\n color: #00e0e0;\n}\n.remirror-a11y-dark .token.selector,\n.remirror-a11y-dark .token.attr-name,\n.remirror-a11y-dark .token.string,\n.remirror-a11y-dark .token.char,\n.remirror-a11y-dark .token.builtin,\n.remirror-a11y-dark .token.inserted {\n color: #abe338;\n}\n.remirror-a11y-dark .token.operator,\n.remirror-a11y-dark .token.entity,\n.remirror-a11y-dark .token.url,\n.remirror-a11y-dark .language-css .token.string,\n.remirror-a11y-dark .style .token.string,\n.remirror-a11y-dark .token.variable {\n color: #00e0e0;\n}\n.remirror-a11y-dark .token.atrule,\n.remirror-a11y-dark .token.attr-value,\n.remirror-a11y-dark .token.function {\n color: #ffd700;\n}\n.remirror-a11y-dark .token.keyword {\n color: #00e0e0;\n}\n.remirror-a11y-dark .token.regex,\n.remirror-a11y-dark .token.important {\n color: #ffd700;\n}\n.remirror-a11y-dark .token.important,\n.remirror-a11y-dark .token.bold {\n font-weight: bold;\n}\n.remirror-a11y-dark .token.italic {\n font-style: italic;\n}\n.remirror-a11y-dark .token.entity {\n cursor: help;\n}\n@media screen and (-ms-high-contrast: active) {\n .remirror-a11y-dark code[class*='language-'],\n .remirror-a11y-dark pre[class*='language-'] {\n color: windowText;\n background: window;\n }\n .remirror-a11y-dark :not(pre) > code[class*='language-'],\n .remirror-a11y-dark pre[class*='language-'] {\n background: window;\n }\n .remirror-a11y-dark .token.important {\n background: highlight;\n color: window;\n font-weight: normal;\n }\n .remirror-a11y-dark .token.atrule,\n .remirror-a11y-dark .token.attr-value,\n .remirror-a11y-dark .token.function,\n .remirror-a11y-dark .token.keyword,\n .remirror-a11y-dark .token.operator,\n .remirror-a11y-dark .token.selector {\n font-weight: bold;\n }\n .remirror-a11y-dark .token.attr-value,\n .remirror-a11y-dark .token.comment,\n .remirror-a11y-dark .token.doctype,\n .remirror-a11y-dark .token.function,\n .remirror-a11y-dark .token.keyword,\n .remirror-a11y-dark .token.operator,\n .remirror-a11y-dark .token.property,\n .remirror-a11y-dark .token.string {\n color: highlight;\n }\n .remirror-a11y-dark .token.attr-value,\n .remirror-a11y-dark .token.url {\n font-weight: normal;\n }\n}\n.remirror-atom-dark code[class*='language-'],\n.remirror-atom-dark pre[class*='language-'] {\n color: #c5c8c6;\n text-shadow: 0 1px rgba(0, 0, 0, 0.3);\n font-family: Inconsolata, Monaco, Consolas, 'Courier New', Courier, monospace;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n line-height: 1.5;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n -webkit-hyphens: none;\n hyphens: none;\n}\n/* Code blocks */\n.remirror-atom-dark pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n border-radius: 0.3em;\n}\n.remirror-atom-dark :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n.remirror-atom-dark :not(pre) > code[class*='language-'],\n.remirror-atom-dark pre[class*='language-'] {\n background: #1d1f21;\n}\n/* Inline code */\n.remirror-atom-dark :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-atom-dark .token.comment,\n.remirror-atom-dark .token.prolog,\n.remirror-atom-dark .token.doctype,\n.remirror-atom-dark .token.cdata {\n color: #7c7c7c;\n}\n.remirror-atom-dark .token.punctuation,\n.remirror-atom-dark .token.punctuation.important {\n color: #c5c8c6;\n}\n.remirror-atom-dark .namespace {\n opacity: 0.7;\n}\n.remirror-atom-dark .token.property,\n.remirror-atom-dark .token.keyword,\n.remirror-atom-dark .token.tag {\n color: #96cbfe;\n}\n.remirror-atom-dark .token.class-name {\n color: #ffffb6;\n text-decoration: underline;\n}\n.remirror-atom-dark .token.boolean,\n.remirror-atom-dark .token.constant {\n color: #99cc99;\n}\n.remirror-atom-dark .token.symbol,\n.remirror-atom-dark .token.deleted {\n color: #f92672;\n}\n.remirror-atom-dark .token.number {\n color: #ff73fd;\n}\n.remirror-atom-dark .token.selector,\n.remirror-atom-dark .token.attr-name,\n.remirror-atom-dark .token.string,\n.remirror-atom-dark .token.char,\n.remirror-atom-dark .token.builtin,\n.remirror-atom-dark .token.inserted {\n color: #a8ff60;\n}\n.remirror-atom-dark .token.variable {\n color: #c6c5fe;\n}\n.remirror-atom-dark .token.operator {\n color: #ededed;\n}\n.remirror-atom-dark .token.entity {\n color: #ffffb6;\n /* text-decoration: underline; */\n}\n.remirror-atom-dark .token.url {\n color: #96cbfe;\n}\n.remirror-atom-dark .language-css .token.string,\n.remirror-atom-dark .style .token.string {\n color: #87c38a;\n}\n.remirror-atom-dark .token.atrule,\n.remirror-atom-dark .token.attr-value {\n color: #f9ee98;\n}\n.remirror-atom-dark .token.function {\n color: #dad085;\n}\n.remirror-atom-dark .token.regex {\n color: #e9c062;\n}\n.remirror-atom-dark .token.important {\n color: #fd971f;\n}\n.remirror-atom-dark .token.important,\n.remirror-atom-dark .token.bold {\n font-weight: bold;\n}\n.remirror-atom-dark .token.italic {\n font-style: italic;\n}\n.remirror-atom-dark .token.entity {\n cursor: help;\n}\n.remirror-base16-ateliersulphurpool-light code[class*='language-'],\n.remirror-base16-ateliersulphurpool-light pre[class*='language-'] {\n font-family: Consolas, Menlo, Monaco, 'Andale Mono WT', 'Andale Mono', 'Lucida Console',\n 'Lucida Sans Typewriter', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Liberation Mono',\n 'Nimbus Mono L', 'Courier New', Courier, monospace;\n font-size: 14px;\n line-height: 1.375;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n -webkit-hyphens: none;\n hyphens: none;\n background: #f5f7ff;\n color: #5e6687;\n}\n.remirror-base16-ateliersulphurpool-light pre[class*='language-']::-moz-selection,\n.remirror-base16-ateliersulphurpool-light pre[class*='language-'] ::-moz-selection,\n.remirror-base16-ateliersulphurpool-light code[class*='language-']::-moz-selection,\n.remirror-base16-ateliersulphurpool-light code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #dfe2f1;\n}\n.remirror-base16-ateliersulphurpool-light pre[class*='language-']::-moz-selection, .remirror-base16-ateliersulphurpool-light pre[class*='language-'] ::-moz-selection, .remirror-base16-ateliersulphurpool-light code[class*='language-']::-moz-selection, .remirror-base16-ateliersulphurpool-light code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #dfe2f1;\n}\n.remirror-base16-ateliersulphurpool-light pre[class*='language-']::selection,\n.remirror-base16-ateliersulphurpool-light pre[class*='language-'] ::selection,\n.remirror-base16-ateliersulphurpool-light code[class*='language-']::selection,\n.remirror-base16-ateliersulphurpool-light code[class*='language-'] ::selection {\n text-shadow: none;\n background: #dfe2f1;\n}\n/* Code blocks */\n.remirror-base16-ateliersulphurpool-light pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n}\n.remirror-base16-ateliersulphurpool-light\n :has(.remirror-language-select-positioner)\n ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-base16-ateliersulphurpool-light :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-base16-ateliersulphurpool-light .token.comment,\n.remirror-base16-ateliersulphurpool-light .token.prolog,\n.remirror-base16-ateliersulphurpool-light .token.doctype,\n.remirror-base16-ateliersulphurpool-light .token.cdata {\n color: #898ea4;\n}\n.remirror-base16-ateliersulphurpool-light .token.punctuation,\n.remirror-base16-ateliersulphurpool-light .token.punctuation.important {\n color: #5e6687;\n}\n.remirror-base16-ateliersulphurpool-light .token.namespace {\n opacity: 0.7;\n}\n.remirror-base16-ateliersulphurpool-light .token.operator,\n.remirror-base16-ateliersulphurpool-light .token.boolean,\n.remirror-base16-ateliersulphurpool-light .token.number {\n color: #c76b29;\n}\n.remirror-base16-ateliersulphurpool-light .token.property {\n color: #c08b30;\n}\n.remirror-base16-ateliersulphurpool-light .token.tag {\n color: #3d8fd1;\n}\n.remirror-base16-ateliersulphurpool-light .token.string {\n color: #22a2c9;\n}\n.remirror-base16-ateliersulphurpool-light .token.selector {\n color: #6679cc;\n}\n.remirror-base16-ateliersulphurpool-light .token.attr-name {\n color: #c76b29;\n}\n.remirror-base16-ateliersulphurpool-light .token.entity,\n.remirror-base16-ateliersulphurpool-light .token.url,\n.remirror-base16-ateliersulphurpool-light .language-css .token.string,\n.remirror-base16-ateliersulphurpool-light .style .token.string {\n color: #22a2c9;\n}\n.remirror-base16-ateliersulphurpool-light .token.attr-value,\n.remirror-base16-ateliersulphurpool-light .token.keyword,\n.remirror-base16-ateliersulphurpool-light .token.control,\n.remirror-base16-ateliersulphurpool-light .token.directive,\n.remirror-base16-ateliersulphurpool-light .token.unit {\n color: #ac9739;\n}\n.remirror-base16-ateliersulphurpool-light .token.statement,\n.remirror-base16-ateliersulphurpool-light .token.regex,\n.remirror-base16-ateliersulphurpool-light .token.atrule {\n color: #22a2c9;\n}\n.remirror-base16-ateliersulphurpool-light .token.placeholder,\n.remirror-base16-ateliersulphurpool-light .token.variable {\n color: #3d8fd1;\n}\n.remirror-base16-ateliersulphurpool-light .token.deleted {\n text-decoration: line-through;\n}\n.remirror-base16-ateliersulphurpool-light .token.inserted {\n border-bottom: 1px dotted #202746;\n text-decoration: none;\n}\n.remirror-base16-ateliersulphurpool-light .token.italic {\n font-style: italic;\n}\n.remirror-base16-ateliersulphurpool-light .token.important,\n.remirror-base16-ateliersulphurpool-light .token.bold {\n font-weight: bold;\n}\n.remirror-base16-ateliersulphurpool-light .token.important {\n color: #c94922;\n}\n.remirror-base16-ateliersulphurpool-light .token.entity {\n cursor: help;\n}\n.remirror-base16-ateliersulphurpool-light pre > code.highlight {\n outline: 0.4em solid #c94922;\n outline-offset: 0.4em;\n}\n/* overrides color-values for the Line Numbers plugin\n * http://prismjs.com/plugins/line-numbers/\n */\n.remirror-base16-ateliersulphurpool-light .line-numbers .line-numbers-rows {\n border-right-color: #dfe2f1;\n}\n.remirror-base16-ateliersulphurpool-light .line-numbers-rows > span:before {\n color: #979db4;\n}\n/* overrides color-values for the Line Highlight plugin\n * http://prismjs.com/plugins/line-highlight/\n */\n.remirror-base16-ateliersulphurpool-light .line-highlight {\n background: rgba(107, 115, 148, 0.2);\n background: linear-gradient(to right, rgba(107, 115, 148, 0.2) 70%, rgba(107, 115, 148, 0));\n}\n.remirror-cb code[class*='language-'],\n.remirror-cb pre[class*='language-'] {\n color: #fff;\n text-shadow: 0 1px 1px #000;\n font-family: Menlo, Monaco, 'Courier New', monospace;\n direction: ltr;\n text-align: left;\n word-spacing: normal;\n white-space: pre;\n word-wrap: normal;\n line-height: 1.4;\n background: none;\n border: 0;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n}\n.remirror-cb pre[class*='language-'] code {\n float: left;\n padding: 0 15px 0 0;\n}\n.remirror-cb pre[class*='language-'],\n.remirror-cb :not(pre) > code[class*='language-'] {\n background: #222;\n}\n/* Code blocks */\n.remirror-cb pre[class*='language-'] {\n padding: 15px;\n margin: 1em 0;\n overflow: auto;\n border-radius: 8px;\n}\n.remirror-cb :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-cb :not(pre) > code[class*='language-'] {\n padding: 5px 10px;\n line-height: 1;\n border-radius: 3px;\n}\n.remirror-cb .token.comment,\n.remirror-cb .token.prolog,\n.remirror-cb .token.doctype,\n.remirror-cb .token.cdata {\n color: #797979;\n}\n.remirror-cb .token.selector,\n.remirror-cb .token.operator,\n.remirror-cb .token.punctuation,\n.remirror-cb .token.punctuation.important {\n color: #fff;\n}\n.remirror-cb .token.namespace {\n opacity: 0.7;\n}\n.remirror-cb .token.tag,\n.remirror-cb .token.boolean {\n color: #ffd893;\n}\n.remirror-cb .token.atrule,\n.remirror-cb .token.attr-value,\n.remirror-cb .token.hex,\n.remirror-cb .token.string {\n color: #b0c975;\n}\n.remirror-cb .token.property,\n.remirror-cb .token.entity,\n.remirror-cb .token.url,\n.remirror-cb .token.attr-name,\n.remirror-cb .token.keyword {\n color: #c27628;\n}\n.remirror-cb .token.regex {\n color: #9b71c6;\n}\n.remirror-cb .token.entity {\n cursor: help;\n}\n.remirror-cb .token.function,\n.remirror-cb .token.constant {\n color: #e5a638;\n}\n.remirror-cb .token.variable {\n color: #fdfba8;\n}\n.remirror-cb .token.number {\n color: #8799b0;\n}\n.remirror-cb .token.important,\n.remirror-cb .token.deliminator {\n color: #e45734;\n}\n/* Line highlight plugin */\n.remirror-cb pre[data-line] {\n position: relative;\n padding: 1em 0 1em 3em;\n}\n.remirror-cb .line-highlight {\n position: absolute;\n left: 0;\n right: 0;\n margin-top: 1em; /* Same as .prism's padding-top */\n background: rgba(255, 255, 255, 0.2);\n pointer-events: none;\n line-height: inherit;\n white-space: pre;\n}\n.remirror-cb .line-highlight:before,\n.remirror-cb .line-highlight[data-end]:after {\n content: attr(data-start);\n position: absolute;\n top: 0.3em;\n left: 0.6em;\n min-width: 1em;\n padding: 0 0.5em;\n background-color: rgba(255, 255, 255, 0.3);\n color: #fff;\n font: bold 65%/1.5 sans-serif;\n text-align: center;\n border-radius: 8px;\n text-shadow: none;\n}\n.remirror-cb .line-highlight[data-end]:after {\n content: attr(data-end);\n top: auto;\n bottom: 0.4em;\n}\n/* for line numbers */\n.remirror-cb .line-numbers-rows {\n margin: 0;\n}\n.remirror-cb .line-numbers-rows span {\n padding-right: 10px;\n border-right: 3px #d9d336 solid;\n}\n.remirror-darcula code[class*='language-'],\n.remirror-darcula pre[class*='language-'] {\n color: #a9b7c6;\n font-family: Consolas, Monaco, 'Andale Mono', monospace;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n line-height: 1.5;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n}\n.remirror-darcula pre[class*='language-']::-moz-selection,\n.remirror-darcula pre[class*='language-'] ::-moz-selection,\n.remirror-darcula code[class*='language-']::-moz-selection,\n.remirror-darcula code[class*='language-'] ::-moz-selection {\n color: inherit;\n background: rgba(33, 66, 131, 0.85);\n}\n.remirror-darcula pre[class*='language-']::-moz-selection, .remirror-darcula pre[class*='language-'] ::-moz-selection, .remirror-darcula code[class*='language-']::-moz-selection, .remirror-darcula code[class*='language-'] ::-moz-selection {\n color: inherit;\n background: rgba(33, 66, 131, 0.85);\n}\n.remirror-darcula pre[class*='language-']::selection,\n.remirror-darcula pre[class*='language-'] ::selection,\n.remirror-darcula code[class*='language-']::selection,\n.remirror-darcula code[class*='language-'] ::selection {\n color: inherit;\n background: rgba(33, 66, 131, 0.85);\n}\n/* Code blocks */\n.remirror-darcula pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n}\n.remirror-darcula :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n.remirror-darcula :not(pre) > code[class*='language-'],\n.remirror-darcula pre[class*='language-'] {\n background: #2b2b2b;\n}\n/* Inline code */\n.remirror-darcula :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-darcula .token.comment,\n.remirror-darcula .token.prolog,\n.remirror-darcula .token.cdata {\n color: #808080;\n}\n.remirror-darcula .token.delimiter,\n.remirror-darcula .token.boolean,\n.remirror-darcula .token.keyword,\n.remirror-darcula .token.selector,\n.remirror-darcula .token.important,\n.remirror-darcula .token.atrule {\n color: #cc7832;\n}\n.remirror-darcula .token.operator,\n.remirror-darcula .token.punctuation,\n.remirror-darcula .token.attr-name {\n color: #a9b7c6;\n}\n.remirror-darcula .token.tag,\n.remirror-darcula .token.tag .punctuation,\n.remirror-darcula .token.doctype,\n.remirror-darcula .token.builtin {\n color: #e8bf6a;\n}\n.remirror-darcula .token.entity,\n.remirror-darcula .token.number,\n.remirror-darcula .token.symbol {\n color: #6897bb;\n}\n.remirror-darcula .token.property,\n.remirror-darcula .token.constant,\n.remirror-darcula .token.variable {\n color: #9876aa;\n}\n.remirror-darcula .token.string,\n.remirror-darcula .token.char {\n color: #6a8759;\n}\n.remirror-darcula .token.attr-value,\n.remirror-darcula .token.attr-value .punctuation {\n color: #a5c261;\n}\n.remirror-darcula .token.attr-value .punctuation:first-of-type {\n color: #a9b7c6;\n}\n.remirror-darcula .token.url {\n color: #287bde;\n text-decoration: underline;\n}\n.remirror-darcula .token.function {\n color: #ffc66d;\n}\n.remirror-darcula .token.regex {\n background: #364135;\n}\n.remirror-darcula .token.bold {\n font-weight: bold;\n}\n.remirror-darcula .token.italic {\n font-style: italic;\n}\n.remirror-darcula .token.inserted {\n background: #294436;\n}\n.remirror-darcula .token.deleted {\n background: #484a4a;\n}\n/*code.language-css .token.punctuation, .token.punctuation.important {color:\n #cc7832;\n}*/\n.remirror-darcula code.language-css .token.property,\n.remirror-darcula code.language-css .token.property + .token.punctuation,\n.remirror-darcula .token.punctuation.important {\n color: #a9b7c6;\n}\n.remirror-darcula code.language-css .token.id {\n color: #ffc66d;\n}\n.remirror-darcula code.language-css .token.selector > .token.class,\n.remirror-darcula code.language-css .token.selector > .token.attribute,\n.remirror-darcula code.language-css .token.selector > .token.pseudo-class,\n.remirror-darcula code.language-css .token.selector > .token.pseudo-element {\n color: #ffc66d;\n}\n.remirror-dracula code[class*='language-'],\n.remirror-dracula pre[class*='language-'] {\n color: #f8f8f2;\n background: none;\n text-shadow: 0 1px rgba(0, 0, 0, 0.3);\n font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n word-wrap: normal;\n line-height: 1.5;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n -webkit-hyphens: none;\n hyphens: none;\n}\n/* Code blocks */\n.remirror-dracula pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n border-radius: 0.3em;\n}\n.remirror-dracula :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n.remirror-dracula :not(pre) > code[class*='language-'],\n.remirror-dracula pre[class*='language-'] {\n background: #282a36;\n}\n/* Inline code */\n.remirror-dracula :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n white-space: normal;\n}\n.remirror-dracula .token.comment,\n.remirror-dracula .token.prolog,\n.remirror-dracula .token.doctype,\n.remirror-dracula .token.cdata {\n color: #6272a4;\n}\n.remirror-dracula .token.punctuation,\n.remirror-dracula .token.punctuation.important {\n color: #f8f8f2;\n}\n.remirror-dracula .namespace {\n opacity: 0.7;\n}\n.remirror-dracula .token.property,\n.remirror-dracula .token.tag,\n.remirror-dracula .token.constant,\n.remirror-dracula .token.symbol,\n.remirror-dracula .token.deleted {\n color: #ff79c6;\n}\n.remirror-dracula .token.boolean,\n.remirror-dracula .token.number {\n color: #bd93f9;\n}\n.remirror-dracula .token.selector,\n.remirror-dracula .token.attr-name,\n.remirror-dracula .token.string,\n.remirror-dracula .token.char,\n.remirror-dracula .token.builtin,\n.remirror-dracula .token.inserted {\n color: #50fa7b;\n}\n.remirror-dracula .token.operator,\n.remirror-dracula .token.entity,\n.remirror-dracula .token.url,\n.remirror-dracula .language-css .token.string,\n.remirror-dracula .style .token.string,\n.remirror-dracula .token.variable {\n color: #f8f8f2;\n}\n.remirror-dracula .token.atrule,\n.remirror-dracula .token.attr-value,\n.remirror-dracula .token.function,\n.remirror-dracula .token.class-name {\n color: #f1fa8c;\n}\n.remirror-dracula .token.keyword {\n color: #8be9fd;\n}\n.remirror-dracula .token.regex,\n.remirror-dracula .token.important {\n color: #ffb86c;\n}\n.remirror-dracula .token.important,\n.remirror-dracula .token.bold {\n font-weight: bold;\n}\n.remirror-dracula .token.italic {\n font-style: italic;\n}\n.remirror-dracula .token.entity {\n cursor: help;\n}\n.remirror-duotone-dark code[class*='language-'],\n.remirror-duotone-dark pre[class*='language-'] {\n font-family: Consolas, Menlo, Monaco, 'Andale Mono WT', 'Andale Mono', 'Lucida Console',\n 'Lucida Sans Typewriter', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Liberation Mono',\n 'Nimbus Mono L', 'Courier New', Courier, monospace;\n font-size: 14px;\n line-height: 1.375;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n background: #2a2734;\n color: #9a86fd;\n}\n.remirror-duotone-dark pre[class*='language-']::-moz-selection,\n.remirror-duotone-dark pre[class*='language-'] ::-moz-selection,\n.remirror-duotone-dark code[class*='language-']::-moz-selection,\n.remirror-duotone-dark code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #6a51e6;\n}\n.remirror-duotone-dark pre[class*='language-']::-moz-selection, .remirror-duotone-dark pre[class*='language-'] ::-moz-selection, .remirror-duotone-dark code[class*='language-']::-moz-selection, .remirror-duotone-dark code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #6a51e6;\n}\n.remirror-duotone-dark pre[class*='language-']::selection,\n.remirror-duotone-dark pre[class*='language-'] ::selection,\n.remirror-duotone-dark code[class*='language-']::selection,\n.remirror-duotone-dark code[class*='language-'] ::selection {\n text-shadow: none;\n background: #6a51e6;\n}\n/* Code blocks */\n.remirror-duotone-dark pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n}\n.remirror-duotone-dark :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-duotone-dark :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-duotone-dark .token.comment,\n.remirror-duotone-dark .token.prolog,\n.remirror-duotone-dark .token.doctype,\n.remirror-duotone-dark .token.cdata {\n color: #6c6783;\n}\n.remirror-duotone-dark .token.punctuation,\n.remirror-duotone-dark .token.punctuation.important {\n color: #6c6783;\n}\n.remirror-duotone-dark .token.namespace {\n opacity: 0.7;\n}\n.remirror-duotone-dark .token.tag,\n.remirror-duotone-dark .token.operator,\n.remirror-duotone-dark .token.number {\n color: #e09142;\n}\n.remirror-duotone-dark .token.property,\n.remirror-duotone-dark .token.function {\n color: #9a86fd;\n}\n.remirror-duotone-dark .token.tag-id,\n.remirror-duotone-dark .token.selector,\n.remirror-duotone-dark .token.atrule-id {\n color: #eeebff;\n}\n.remirror-duotone-dark code.language-javascript,\n.remirror-duotone-dark .token.attr-name {\n color: #c4b9fe;\n}\n.remirror-duotone-dark code.language-css,\n.remirror-duotone-dark code.language-scss,\n.remirror-duotone-dark .token.boolean,\n.remirror-duotone-dark .token.string,\n.remirror-duotone-dark .token.entity,\n.remirror-duotone-dark .token.url,\n.remirror-duotone-dark .language-css .token.string,\n.remirror-duotone-dark .language-scss .token.string,\n.remirror-duotone-dark .style .token.string,\n.remirror-duotone-dark .token.attr-value,\n.remirror-duotone-dark .token.keyword,\n.remirror-duotone-dark .token.control,\n.remirror-duotone-dark .token.directive,\n.remirror-duotone-dark .token.unit,\n.remirror-duotone-dark .token.statement,\n.remirror-duotone-dark .token.regex,\n.remirror-duotone-dark .token.atrule {\n color: #ffcc99;\n}\n.remirror-duotone-dark .token.placeholder,\n.remirror-duotone-dark .token.variable {\n color: #ffcc99;\n}\n.remirror-duotone-dark .token.deleted {\n text-decoration: line-through;\n}\n.remirror-duotone-dark .token.inserted {\n border-bottom: 1px dotted #eeebff;\n text-decoration: none;\n}\n.remirror-duotone-dark .token.italic {\n font-style: italic;\n}\n.remirror-duotone-dark .token.important,\n.remirror-duotone-dark .token.bold {\n font-weight: bold;\n}\n.remirror-duotone-dark .token.important {\n color: #c4b9fe;\n}\n.remirror-duotone-dark .token.entity {\n cursor: help;\n}\n.remirror-duotone-dark pre > code.highlight {\n outline: 0.4em solid #8a75f5;\n outline-offset: 0.4em;\n}\n/* overrides color-values for the Line Numbers plugin\n * http://prismjs.com/plugins/line-numbers/\n */\n.remirror-duotone-dark .line-numbers .line-numbers-rows {\n border-right-color: #2c2937;\n}\n.remirror-duotone-dark .line-numbers-rows > span:before {\n color: #3c3949;\n}\n/* overrides color-values for the Line Highlight plugin\n* http://prismjs.com/plugins/line-highlight/\n*/\n.remirror-duotone-dark .line-highlight {\n background: rgba(224, 145, 66, 0.2);\n background: linear-gradient(to right, rgba(224, 145, 66, 0.2) 70%, rgba(224, 145, 66, 0));\n}\n.remirror-duotone-earth code[class*='language-'],\n.remirror-duotone-earth pre[class*='language-'] {\n font-family: Consolas, Menlo, Monaco, 'Andale Mono WT', 'Andale Mono', 'Lucida Console',\n 'Lucida Sans Typewriter', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Liberation Mono',\n 'Nimbus Mono L', 'Courier New', Courier, monospace;\n font-size: 14px;\n line-height: 1.375;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n background: #322d29;\n color: #88786d;\n}\n.remirror-duotone-earth pre[class*='language-']::-moz-selection,\n.remirror-duotone-earth pre[class*='language-'] ::-moz-selection,\n.remirror-duotone-earth code[class*='language-']::-moz-selection,\n.remirror-duotone-earth code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #6f5849;\n}\n.remirror-duotone-earth pre[class*='language-']::-moz-selection, .remirror-duotone-earth pre[class*='language-'] ::-moz-selection, .remirror-duotone-earth code[class*='language-']::-moz-selection, .remirror-duotone-earth code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #6f5849;\n}\n.remirror-duotone-earth pre[class*='language-']::selection,\n.remirror-duotone-earth pre[class*='language-'] ::selection,\n.remirror-duotone-earth code[class*='language-']::selection,\n.remirror-duotone-earth code[class*='language-'] ::selection {\n text-shadow: none;\n background: #6f5849;\n}\n/* Code blocks */\n.remirror-duotone-earth pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n}\n.remirror-duotone-earth :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-duotone-earth :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-duotone-earth .token.comment,\n.remirror-duotone-earth .token.prolog,\n.remirror-duotone-earth .token.doctype,\n.remirror-duotone-earth .token.cdata {\n color: #6a5f58;\n}\n.remirror-duotone-earth .token.punctuation,\n.remirror-duotone-earth .token.punctuation.important {\n color: #6a5f58;\n}\n.remirror-duotone-earth .token.namespace {\n opacity: 0.7;\n}\n.remirror-duotone-earth .token.tag,\n.remirror-duotone-earth .token.operator,\n.remirror-duotone-earth .token.number {\n color: #bfa05a;\n}\n.remirror-duotone-earth .token.property,\n.remirror-duotone-earth .token.function {\n color: #88786d;\n}\n.remirror-duotone-earth .token.tag-id,\n.remirror-duotone-earth .token.selector,\n.remirror-duotone-earth .token.atrule-id {\n color: #fff3eb;\n}\n.remirror-duotone-earth code.language-javascript,\n.remirror-duotone-earth .token.attr-name {\n color: #a48774;\n}\n.remirror-duotone-earth code.language-css,\n.remirror-duotone-earth code.language-scss,\n.remirror-duotone-earth .token.boolean,\n.remirror-duotone-earth .token.string,\n.remirror-duotone-earth .token.entity,\n.remirror-duotone-earth .token.url,\n.remirror-duotone-earth .language-css .token.string,\n.remirror-duotone-earth .language-scss .token.string,\n.remirror-duotone-earth .style .token.string,\n.remirror-duotone-earth .token.attr-value,\n.remirror-duotone-earth .token.keyword,\n.remirror-duotone-earth .token.control,\n.remirror-duotone-earth .token.directive,\n.remirror-duotone-earth .token.unit,\n.remirror-duotone-earth .token.statement,\n.remirror-duotone-earth .token.regex,\n.remirror-duotone-earth .token.atrule {\n color: #fcc440;\n}\n.remirror-duotone-earth .token.placeholder,\n.remirror-duotone-earth .token.variable {\n color: #fcc440;\n}\n.remirror-duotone-earth .token.deleted {\n text-decoration: line-through;\n}\n.remirror-duotone-earth .token.inserted {\n border-bottom: 1px dotted #fff3eb;\n text-decoration: none;\n}\n.remirror-duotone-earth .token.italic {\n font-style: italic;\n}\n.remirror-duotone-earth .token.important,\n.remirror-duotone-earth .token.bold {\n font-weight: bold;\n}\n.remirror-duotone-earth .token.important {\n color: #a48774;\n}\n.remirror-duotone-earth .token.entity {\n cursor: help;\n}\n.remirror-duotone-earth pre > code.highlight {\n outline: 0.4em solid #816d5f;\n outline-offset: 0.4em;\n}\n/* overrides color-values for the Line Numbers plugin\n * http://prismjs.com/plugins/line-numbers/\n */\n.remirror-duotone-earth .line-numbers .line-numbers-rows {\n border-right-color: #35302b;\n}\n.remirror-duotone-earth .line-numbers-rows > span:before {\n color: #46403d;\n}\n/* overrides color-values for the Line Highlight plugin\n* http://prismjs.com/plugins/line-highlight/\n*/\n.remirror-duotone-earth .line-highlight {\n background: rgba(191, 160, 90, 0.2);\n background: linear-gradient(to right, rgba(191, 160, 90, 0.2) 70%, rgba(191, 160, 90, 0));\n}\n.remirror-duotone-forest code[class*='language-'],\n.remirror-duotone-forest pre[class*='language-'] {\n font-family: Consolas, Menlo, Monaco, 'Andale Mono WT', 'Andale Mono', 'Lucida Console',\n 'Lucida Sans Typewriter', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Liberation Mono',\n 'Nimbus Mono L', 'Courier New', Courier, monospace;\n font-size: 14px;\n line-height: 1.375;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n background: #2a2d2a;\n color: #687d68;\n}\n.remirror-duotone-forest pre[class*='language-']::-moz-selection,\n.remirror-duotone-forest pre[class*='language-'] ::-moz-selection,\n.remirror-duotone-forest code[class*='language-']::-moz-selection,\n.remirror-duotone-forest code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #435643;\n}\n.remirror-duotone-forest pre[class*='language-']::-moz-selection, .remirror-duotone-forest pre[class*='language-'] ::-moz-selection, .remirror-duotone-forest code[class*='language-']::-moz-selection, .remirror-duotone-forest code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #435643;\n}\n.remirror-duotone-forest pre[class*='language-']::selection,\n.remirror-duotone-forest pre[class*='language-'] ::selection,\n.remirror-duotone-forest code[class*='language-']::selection,\n.remirror-duotone-forest code[class*='language-'] ::selection {\n text-shadow: none;\n background: #435643;\n}\n/* Code blocks */\n.remirror-duotone-forest pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n}\n.remirror-duotone-forest :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-duotone-forest :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-duotone-forest .token.comment,\n.remirror-duotone-forest .token.prolog,\n.remirror-duotone-forest .token.doctype,\n.remirror-duotone-forest .token.cdata {\n color: #535f53;\n}\n.remirror-duotone-forest .token.punctuation,\n.remirror-duotone-forest .token.punctuation.important {\n color: #535f53;\n}\n.remirror-duotone-forest .token.namespace {\n opacity: 0.7;\n}\n.remirror-duotone-forest .token.tag,\n.remirror-duotone-forest .token.operator,\n.remirror-duotone-forest .token.number {\n color: #a2b34d;\n}\n.remirror-duotone-forest .token.property,\n.remirror-duotone-forest .token.function {\n color: #687d68;\n}\n.remirror-duotone-forest .token.tag-id,\n.remirror-duotone-forest .token.selector,\n.remirror-duotone-forest .token.atrule-id {\n color: #f0fff0;\n}\n.remirror-duotone-forest code.language-javascript,\n.remirror-duotone-forest .token.attr-name {\n color: #b3d6b3;\n}\n.remirror-duotone-forest code.language-css,\n.remirror-duotone-forest code.language-scss,\n.remirror-duotone-forest .token.boolean,\n.remirror-duotone-forest .token.string,\n.remirror-duotone-forest .token.entity,\n.remirror-duotone-forest .token.url,\n.remirror-duotone-forest .language-css .token.string,\n.remirror-duotone-forest .language-scss .token.string,\n.remirror-duotone-forest .style .token.string,\n.remirror-duotone-forest .token.attr-value,\n.remirror-duotone-forest .token.keyword,\n.remirror-duotone-forest .token.control,\n.remirror-duotone-forest .token.directive,\n.remirror-duotone-forest .token.unit,\n.remirror-duotone-forest .token.statement,\n.remirror-duotone-forest .token.regex,\n.remirror-duotone-forest .token.atrule {\n color: #e5fb79;\n}\n.remirror-duotone-forest .token.placeholder,\n.remirror-duotone-forest .token.variable {\n color: #e5fb79;\n}\n.remirror-duotone-forest .token.deleted {\n text-decoration: line-through;\n}\n.remirror-duotone-forest .token.inserted {\n border-bottom: 1px dotted #f0fff0;\n text-decoration: none;\n}\n.remirror-duotone-forest .token.italic {\n font-style: italic;\n}\n.remirror-duotone-forest .token.important,\n.remirror-duotone-forest .token.bold {\n font-weight: bold;\n}\n.remirror-duotone-forest .token.important {\n color: #b3d6b3;\n}\n.remirror-duotone-forest .token.entity {\n cursor: help;\n}\n.remirror-duotone-forest pre > code.highlight {\n outline: 0.4em solid #5c705c;\n outline-offset: 0.4em;\n}\n/* overrides color-values for the Line Numbers plugin\n * http://prismjs.com/plugins/line-numbers/\n */\n.remirror-duotone-forest .line-numbers .line-numbers-rows {\n border-right-color: #2c302c;\n}\n.remirror-duotone-forest .line-numbers-rows > span:before {\n color: #3b423b;\n}\n/* overrides color-values for the Line Highlight plugin\n* http://prismjs.com/plugins/line-highlight/\n*/\n.remirror-duotone-forest .line-highlight {\n background: rgba(162, 179, 77, 0.2);\n background: linear-gradient(to right, rgba(162, 179, 77, 0.2) 70%, rgba(162, 179, 77, 0));\n}\n.remirror-duotone-light code[class*='language-'],\n.remirror-duotone-light pre[class*='language-'] {\n font-family: Consolas, Menlo, Monaco, 'Andale Mono WT', 'Andale Mono', 'Lucida Console',\n 'Lucida Sans Typewriter', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Liberation Mono',\n 'Nimbus Mono L', 'Courier New', Courier, monospace;\n font-size: 14px;\n line-height: 1.375;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n background: #faf8f5;\n color: #728fcb;\n}\n.remirror-duotone-light pre[class*='language-']::-moz-selection,\n.remirror-duotone-light pre[class*='language-'] ::-moz-selection,\n.remirror-duotone-light code[class*='language-']::-moz-selection,\n.remirror-duotone-light code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #faf8f5;\n}\n.remirror-duotone-light pre[class*='language-']::-moz-selection, .remirror-duotone-light pre[class*='language-'] ::-moz-selection, .remirror-duotone-light code[class*='language-']::-moz-selection, .remirror-duotone-light code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #faf8f5;\n}\n.remirror-duotone-light pre[class*='language-']::selection,\n.remirror-duotone-light pre[class*='language-'] ::selection,\n.remirror-duotone-light code[class*='language-']::selection,\n.remirror-duotone-light code[class*='language-'] ::selection {\n text-shadow: none;\n background: #faf8f5;\n}\n/* Code blocks */\n.remirror-duotone-light pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n}\n.remirror-duotone-light :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-duotone-light :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-duotone-light .token.comment,\n.remirror-duotone-light .token.prolog,\n.remirror-duotone-light .token.doctype,\n.remirror-duotone-light .token.cdata {\n color: #b6ad9a;\n}\n.remirror-duotone-light .token.punctuation,\n.remirror-duotone-light .token.punctuation.important {\n color: #b6ad9a;\n}\n.remirror-duotone-light .token.namespace {\n opacity: 0.7;\n}\n.remirror-duotone-light .token.tag,\n.remirror-duotone-light .token.operator,\n.remirror-duotone-light .token.number {\n color: #063289;\n}\n.remirror-duotone-light .token.property,\n.remirror-duotone-light .token.function {\n color: #b29762;\n}\n.remirror-duotone-light .token.tag-id,\n.remirror-duotone-light .token.selector,\n.remirror-duotone-light .token.atrule-id {\n color: #2d2006;\n}\n.remirror-duotone-light code.language-javascript,\n.remirror-duotone-light .token.attr-name {\n color: #896724;\n}\n.remirror-duotone-light code.language-css,\n.remirror-duotone-light code.language-scss,\n.remirror-duotone-light .token.boolean,\n.remirror-duotone-light .token.string,\n.remirror-duotone-light .token.entity,\n.remirror-duotone-light .token.url,\n.remirror-duotone-light .language-css .token.string,\n.remirror-duotone-light .language-scss .token.string,\n.remirror-duotone-light .style .token.string,\n.remirror-duotone-light .token.attr-value,\n.remirror-duotone-light .token.keyword,\n.remirror-duotone-light .token.control,\n.remirror-duotone-light .token.directive,\n.remirror-duotone-light .token.unit,\n.remirror-duotone-light .token.statement,\n.remirror-duotone-light .token.regex,\n.remirror-duotone-light .token.atrule {\n color: #728fcb;\n}\n.remirror-duotone-light .token.placeholder,\n.remirror-duotone-light .token.variable {\n color: #93abdc;\n}\n.remirror-duotone-light .token.deleted {\n text-decoration: line-through;\n}\n.remirror-duotone-light .token.inserted {\n border-bottom: 1px dotted #2d2006;\n text-decoration: none;\n}\n.remirror-duotone-light .token.italic {\n font-style: italic;\n}\n.remirror-duotone-light .token.important,\n.remirror-duotone-light .token.bold {\n font-weight: bold;\n}\n.remirror-duotone-light .token.important {\n color: #896724;\n}\n.remirror-duotone-light .token.entity {\n cursor: help;\n}\n.remirror-duotone-light pre > code.highlight {\n outline: 0.4em solid #896724;\n outline-offset: 0.4em;\n}\n/* overrides color-values for the Line Numbers plugin\n * http://prismjs.com/plugins/line-numbers/\n */\n.remirror-duotone-light .line-numbers .line-numbers-rows {\n border-right-color: #ece8de;\n}\n.remirror-duotone-light .line-numbers-rows > span:before {\n color: #cdc4b1;\n}\n/* overrides color-values for the Line Highlight plugin\n * http://prismjs.com/plugins/line-highlight/\n */\n.remirror-duotone-light .line-highlight {\n background: rgba(45, 32, 6, 0.2);\n background: linear-gradient(to right, rgba(45, 32, 6, 0.2) 70%, rgba(45, 32, 6, 0));\n}\n.remirror-duotone-sea code[class*='language-'],\n.remirror-duotone-sea pre[class*='language-'] {\n font-family: Consolas, Menlo, Monaco, 'Andale Mono WT', 'Andale Mono', 'Lucida Console',\n 'Lucida Sans Typewriter', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Liberation Mono',\n 'Nimbus Mono L', 'Courier New', Courier, monospace;\n font-size: 14px;\n line-height: 1.375;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n background: #1d262f;\n color: #57718e;\n}\n.remirror-duotone-sea pre[class*='language-']::-moz-selection,\n.remirror-duotone-sea pre[class*='language-'] ::-moz-selection,\n.remirror-duotone-sea code[class*='language-']::-moz-selection,\n.remirror-duotone-sea code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #004a9e;\n}\n.remirror-duotone-sea pre[class*='language-']::-moz-selection, .remirror-duotone-sea pre[class*='language-'] ::-moz-selection, .remirror-duotone-sea code[class*='language-']::-moz-selection, .remirror-duotone-sea code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #004a9e;\n}\n.remirror-duotone-sea pre[class*='language-']::selection,\n.remirror-duotone-sea pre[class*='language-'] ::selection,\n.remirror-duotone-sea code[class*='language-']::selection,\n.remirror-duotone-sea code[class*='language-'] ::selection {\n text-shadow: none;\n background: #004a9e;\n}\n/* Code blocks */\n.remirror-duotone-sea pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n}\n.remirror-duotone-sea :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-duotone-sea :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-duotone-sea .token.comment,\n.remirror-duotone-sea .token.prolog,\n.remirror-duotone-sea .token.doctype,\n.remirror-duotone-sea .token.cdata {\n color: #4a5f78;\n}\n.remirror-duotone-sea .token.punctuation,\n.remirror-duotone-sea .token.punctuation.important {\n color: #4a5f78;\n}\n.remirror-duotone-sea .token.namespace {\n opacity: 0.7;\n}\n.remirror-duotone-sea .token.tag,\n.remirror-duotone-sea .token.operator,\n.remirror-duotone-sea .token.number {\n color: #0aa370;\n}\n.remirror-duotone-sea .token.property,\n.remirror-duotone-sea .token.function {\n color: #57718e;\n}\n.remirror-duotone-sea .token.tag-id,\n.remirror-duotone-sea .token.selector,\n.remirror-duotone-sea .token.atrule-id {\n color: #ebf4ff;\n}\n.remirror-duotone-sea code.language-javascript,\n.remirror-duotone-sea .token.attr-name {\n color: #7eb6f6;\n}\n.remirror-duotone-sea code.language-css,\n.remirror-duotone-sea code.language-scss,\n.remirror-duotone-sea .token.boolean,\n.remirror-duotone-sea .token.string,\n.remirror-duotone-sea .token.entity,\n.remirror-duotone-sea .token.url,\n.remirror-duotone-sea .language-css .token.string,\n.remirror-duotone-sea .language-scss .token.string,\n.remirror-duotone-sea .style .token.string,\n.remirror-duotone-sea .token.attr-value,\n.remirror-duotone-sea .token.keyword,\n.remirror-duotone-sea .token.control,\n.remirror-duotone-sea .token.directive,\n.remirror-duotone-sea .token.unit,\n.remirror-duotone-sea .token.statement,\n.remirror-duotone-sea .token.regex,\n.remirror-duotone-sea .token.atrule {\n color: #47ebb4;\n}\n.remirror-duotone-sea .token.placeholder,\n.remirror-duotone-sea .token.variable {\n color: #47ebb4;\n}\n.remirror-duotone-sea .token.deleted {\n text-decoration: line-through;\n}\n.remirror-duotone-sea .token.inserted {\n border-bottom: 1px dotted #ebf4ff;\n text-decoration: none;\n}\n.remirror-duotone-sea .token.italic {\n font-style: italic;\n}\n.remirror-duotone-sea .token.important,\n.remirror-duotone-sea .token.bold {\n font-weight: bold;\n}\n.remirror-duotone-sea .token.important {\n color: #7eb6f6;\n}\n.remirror-duotone-sea .token.entity {\n cursor: help;\n}\n.remirror-duotone-sea pre > code.highlight {\n outline: 0.4em solid #34659d;\n outline-offset: 0.4em;\n}\n/* overrides color-values for the Line Numbers plugin\n * http://prismjs.com/plugins/line-numbers/\n */\n.remirror-duotone-sea .line-numbers .line-numbers-rows {\n border-right-color: #1f2932;\n}\n.remirror-duotone-sea .line-numbers-rows > span:before {\n color: #2c3847;\n}\n/* overrides color-values for the Line Highlight plugin\n* http://prismjs.com/plugins/line-highlight/\n*/\n.remirror-duotone-sea .line-highlight {\n background: rgba(10, 163, 112, 0.2);\n background: linear-gradient(to right, rgba(10, 163, 112, 0.2) 70%, rgba(10, 163, 112, 0));\n}\n.remirror-duotone-space code[class*='language-'],\n.remirror-duotone-space pre[class*='language-'] {\n font-family: Consolas, Menlo, Monaco, 'Andale Mono WT', 'Andale Mono', 'Lucida Console',\n 'Lucida Sans Typewriter', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Liberation Mono',\n 'Nimbus Mono L', 'Courier New', Courier, monospace;\n font-size: 14px;\n line-height: 1.375;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n background: #24242e;\n color: #767693;\n}\n.remirror-duotone-space pre[class*='language-']::-moz-selection,\n.remirror-duotone-space pre[class*='language-'] ::-moz-selection,\n.remirror-duotone-space code[class*='language-']::-moz-selection,\n.remirror-duotone-space code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #5151e6;\n}\n.remirror-duotone-space pre[class*='language-']::-moz-selection, .remirror-duotone-space pre[class*='language-'] ::-moz-selection, .remirror-duotone-space code[class*='language-']::-moz-selection, .remirror-duotone-space code[class*='language-'] ::-moz-selection {\n text-shadow: none;\n background: #5151e6;\n}\n.remirror-duotone-space pre[class*='language-']::selection,\n.remirror-duotone-space pre[class*='language-'] ::selection,\n.remirror-duotone-space code[class*='language-']::selection,\n.remirror-duotone-space code[class*='language-'] ::selection {\n text-shadow: none;\n background: #5151e6;\n}\n/* Code blocks */\n.remirror-duotone-space pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n}\n.remirror-duotone-space :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-duotone-space :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-duotone-space .token.comment,\n.remirror-duotone-space .token.prolog,\n.remirror-duotone-space .token.doctype,\n.remirror-duotone-space .token.cdata {\n color: #5b5b76;\n}\n.remirror-duotone-space .token.punctuation,\n.remirror-duotone-space .token.punctuation.important {\n color: #5b5b76;\n}\n.remirror-duotone-space .token.namespace {\n opacity: 0.7;\n}\n.remirror-duotone-space .token.tag,\n.remirror-duotone-space .token.operator,\n.remirror-duotone-space .token.number {\n color: #dd672c;\n}\n.remirror-duotone-space .token.property,\n.remirror-duotone-space .token.function {\n color: #767693;\n}\n.remirror-duotone-space .token.tag-id,\n.remirror-duotone-space .token.selector,\n.remirror-duotone-space .token.atrule-id {\n color: #ebebff;\n}\n.remirror-duotone-space code.language-javascript,\n.remirror-duotone-space .token.attr-name {\n color: #aaaaca;\n}\n.remirror-duotone-space code.language-css,\n.remirror-duotone-space code.language-scss,\n.remirror-duotone-space .token.boolean,\n.remirror-duotone-space .token.string,\n.remirror-duotone-space .token.entity,\n.remirror-duotone-space .token.url,\n.remirror-duotone-space .language-css .token.string,\n.remirror-duotone-space .language-scss .token.string,\n.remirror-duotone-space .style .token.string,\n.remirror-duotone-space .token.attr-value,\n.remirror-duotone-space .token.keyword,\n.remirror-duotone-space .token.control,\n.remirror-duotone-space .token.directive,\n.remirror-duotone-space .token.unit,\n.remirror-duotone-space .token.statement,\n.remirror-duotone-space .token.regex,\n.remirror-duotone-space .token.atrule {\n color: #fe8c52;\n}\n.remirror-duotone-space .token.placeholder,\n.remirror-duotone-space .token.variable {\n color: #fe8c52;\n}\n.remirror-duotone-space .token.deleted {\n text-decoration: line-through;\n}\n.remirror-duotone-space .token.inserted {\n border-bottom: 1px dotted #ebebff;\n text-decoration: none;\n}\n.remirror-duotone-space .token.italic {\n font-style: italic;\n}\n.remirror-duotone-space .token.important,\n.remirror-duotone-space .token.bold {\n font-weight: bold;\n}\n.remirror-duotone-space .token.important {\n color: #aaaaca;\n}\n.remirror-duotone-space .token.entity {\n cursor: help;\n}\n.remirror-duotone-space pre > code.highlight {\n outline: 0.4em solid #7676f4;\n outline-offset: 0.4em;\n}\n/* overrides color-values for the Line Numbers plugin\n * http://prismjs.com/plugins/line-numbers/\n */\n.remirror-duotone-space .line-numbers .line-numbers-rows {\n border-right-color: #262631;\n}\n.remirror-duotone-space .line-numbers-rows > span:before {\n color: #393949;\n}\n/* overrides color-values for the Line Highlight plugin\n* http://prismjs.com/plugins/line-highlight/\n*/\n.remirror-duotone-space .line-highlight {\n background: rgba(221, 103, 44, 0.2);\n background: linear-gradient(to right, rgba(221, 103, 44, 0.2) 70%, rgba(221, 103, 44, 0));\n}\n.remirror-gh-colors code[class*='language-'],\n.remirror-gh-colors pre[class*='language-'] {\n color: #393a34;\n font-family: 'Consolas', 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n font-size: 0.95em;\n line-height: 1.2em;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n}\n.remirror-gh-colors pre[class*='language-']::-moz-selection,\n.remirror-gh-colors pre[class*='language-'] ::-moz-selection,\n.remirror-gh-colors code[class*='language-']::-moz-selection,\n.remirror-gh-colors code[class*='language-'] ::-moz-selection {\n background: #b3d4fc;\n}\n.remirror-gh-colors pre[class*='language-']::-moz-selection, .remirror-gh-colors pre[class*='language-'] ::-moz-selection, .remirror-gh-colors code[class*='language-']::-moz-selection, .remirror-gh-colors code[class*='language-'] ::-moz-selection {\n background: #b3d4fc;\n}\n.remirror-gh-colors pre[class*='language-']::selection,\n.remirror-gh-colors pre[class*='language-'] ::selection,\n.remirror-gh-colors code[class*='language-']::selection,\n.remirror-gh-colors code[class*='language-'] ::selection {\n background: #b3d4fc;\n}\n/* Code blocks */\n.remirror-gh-colors pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n border: 1px solid #dddddd;\n background-color: white;\n}\n.remirror-gh-colors :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n.remirror-gh-colors :not(pre) > code[class*='language-'],\n.remirror-gh-colors pre[class*='language-'] {\n}\n/* Inline code */\n.remirror-gh-colors :not(pre) > code[class*='language-'] {\n padding: 0.2em;\n padding-top: 1px;\n padding-bottom: 1px;\n background: #f8f8f8;\n border: 1px solid #dddddd;\n}\n.remirror-gh-colors .token.comment,\n.remirror-gh-colors .token.prolog,\n.remirror-gh-colors .token.doctype,\n.remirror-gh-colors .token.cdata {\n color: #999988;\n font-style: italic;\n}\n.remirror-gh-colors .token.namespace {\n opacity: 0.7;\n}\n.remirror-gh-colors .token.string,\n.remirror-gh-colors .token.attr-value {\n color: #e3116c;\n}\n.remirror-gh-colors .token.punctuation,\n.remirror-gh-colors .token.operator {\n color: #393a34; /* no highlight */\n}\n.remirror-gh-colors .token.entity,\n.remirror-gh-colors .token.url,\n.remirror-gh-colors .token.symbol,\n.remirror-gh-colors .token.number,\n.remirror-gh-colors .token.boolean,\n.remirror-gh-colors .token.variable,\n.remirror-gh-colors .token.constant,\n.remirror-gh-colors .token.property,\n.remirror-gh-colors .token.regex,\n.remirror-gh-colors .token.inserted {\n color: #36acaa;\n}\n.remirror-gh-colors .token.atrule,\n.remirror-gh-colors .token.keyword,\n.remirror-gh-colors .token.attr-name,\n.remirror-gh-colors .language-autohotkey .token.selector {\n color: #00a4db;\n}\n.remirror-gh-colors .token.function,\n.remirror-gh-colors .token.deleted,\n.remirror-gh-colors .language-autohotkey .token.tag {\n color: #9a050f;\n}\n.remirror-gh-colors .token.tag,\n.remirror-gh-colors .token.selector,\n.remirror-gh-colors .language-autohotkey .token.keyword {\n color: #00009f;\n}\n.remirror-gh-colors .token.important,\n.remirror-gh-colors .token.function,\n.remirror-gh-colors .token.bold {\n font-weight: bold;\n}\n.remirror-gh-colors .token.italic {\n font-style: italic;\n}\n.remirror-hopscotch code[class*='language-'],\n.remirror-hopscotch pre[class*='language-'] {\n color: #ffffff;\n font-family: 'Fira Mono', Menlo, Monaco, 'Lucida Console', 'Courier New', Courier, monospace;\n font-size: 16px;\n line-height: 1.375;\n direction: ltr;\n text-align: left;\n word-spacing: normal;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n white-space: pre;\n white-space: pre-wrap;\n word-break: break-all;\n word-wrap: break-word;\n background: #322931;\n color: #b9b5b8;\n}\n/* Code blocks */\n.remirror-hopscotch pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n}\n.remirror-hopscotch :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-hopscotch :not(pre) > code[class*='language-'] {\n padding: 0.1em;\n border-radius: 0.3em;\n}\n.remirror-hopscotch .token.comment,\n.remirror-hopscotch .token.prolog,\n.remirror-hopscotch .token.doctype,\n.remirror-hopscotch .token.cdata {\n color: #797379;\n}\n.remirror-hopscotch .token.punctuation,\n.remirror-hopscotch .token.punctuation.important {\n color: #b9b5b8;\n}\n.remirror-hopscotch .namespace {\n opacity: 0.7;\n}\n.remirror-hopscotch .token.null,\n.remirror-hopscotch .token.operator,\n.remirror-hopscotch .token.boolean,\n.remirror-hopscotch .token.number {\n color: #fd8b19;\n}\n.remirror-hopscotch .token.property {\n color: #fdcc59;\n}\n.remirror-hopscotch .token.tag {\n color: #1290bf;\n}\n.remirror-hopscotch .token.string {\n color: #149b93;\n}\n.remirror-hopscotch .token.selector {\n color: #c85e7c;\n}\n.remirror-hopscotch .token.attr-name {\n color: #fd8b19;\n}\n.remirror-hopscotch .token.entity,\n.remirror-hopscotch .token.url,\n.remirror-hopscotch .language-css .token.string,\n.remirror-hopscotch .style .token.string {\n color: #149b93;\n}\n.remirror-hopscotch .token.attr-value,\n.remirror-hopscotch .token.keyword,\n.remirror-hopscotch .token.control,\n.remirror-hopscotch .token.directive,\n.remirror-hopscotch .token.unit {\n color: #8fc13e;\n}\n.remirror-hopscotch .token.statement,\n.remirror-hopscotch .token.regex,\n.remirror-hopscotch .token.atrule {\n color: #149b93;\n}\n.remirror-hopscotch .token.placeholder,\n.remirror-hopscotch .token.variable {\n color: #1290bf;\n}\n.remirror-hopscotch .token.important {\n color: #dd464c;\n font-weight: bold;\n}\n.remirror-hopscotch .token.entity {\n cursor: help;\n}\n.remirror-hopscotch pre > code.highlight {\n outline: 0.4em solid red;\n outline-offset: 0.4em;\n}\n.remirror-pojoaque code[class*='language-'],\n.remirror-pojoaque pre[class*='language-'] {\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n -webkit-hyphens: none;\n hyphens: none;\n white-space: pre;\n white-space: pre-wrap;\n word-break: break-all;\n word-wrap: break-word;\n font-family: Menlo, Monaco, 'Courier New', monospace;\n font-size: 15px;\n line-height: 1.5;\n color: #dccf8f;\n text-shadow: 0;\n}\n.remirror-pojoaque pre[class*='language-'],\n.remirror-pojoaque :not(pre) > code[class*='language-'] {\n border-radius: 5px;\n border: 1px solid #000;\n color: #dccf8f;\n background: #181914\n url('data:image/jpeg;base64,/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAMAAA/+4ADkFkb2JlAGTAAAAAAf/bAIQACQYGBgcGCQcHCQ0IBwgNDwsJCQsPEQ4ODw4OERENDg4ODg0RERQUFhQUERoaHBwaGiYmJiYmKysrKysrKysrKwEJCAgJCgkMCgoMDwwODA8TDg4ODhMVDg4PDg4VGhMRERERExoXGhYWFhoXHR0aGh0dJCQjJCQrKysrKysrKysr/8AAEQgAjACMAwEiAAIRAQMRAf/EAF4AAQEBAAAAAAAAAAAAAAAAAAABBwEBAQAAAAAAAAAAAAAAAAAAAAIQAAEDAwIHAQEAAAAAAAAAAADwAREhYaExkUFRcYGxwdHh8REBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8AyGFEjHaBS2fDDs2zkhKmBKktb7km+ZwwCnXPkLVmCTMItj6AXFxRS465/BTnkAJvkLkJe+7AKKoi2AtRS2zuAWsCb5GOlBN8gKfmuGHZ8MFqIth3ALmFoFwbwKWyAlTAp17uKqBvgBD8sM4fTjhvAhkzhaRkBMKBrfs7jGPIpzy7gFrAqnC0C0gB0EWwBDW2cBVQwm+QtPpa3wBO3sVvszCnLAhkzgL5/RLf13cLQd8/AGlu0Cb5HTx9KuAEieGJEdcehS3eRTp2ATdt3CpIm+QtZwAhROXFeb7swp/ahaM3kBE/jSIUBc/AWrgBN8uNFAl+b7sAXFxFn2YLUU5Ns7gFX8C4ib+hN8gFWXwK3bZglxEJm+gKdciLPsFV/TClsgJUwKJ5FVA7tvIFrfZhVfGJDcsCKaYgAqv6YRbE+RWOWBtu7+AL3yRalXLyKqAIIfk+zARbDgFyEsncYwJvlgFRW+GEWntIi2P0BooyFxcNr8Ep3+ANLbMO+QyhvbiqdgC0kVvgUUiLYgBS2QtPbiVI1/sgOmG9uO+Y8DW+7jS2zAOnj6O2BndwuIAUtkdRN8gFoK3wwXMQyZwHVbClsuNLd4E3yAUR6FVDBR+BafQGt93LVMxJTv8ABts4CVLhcfYWsCb5kC9/BHdU8CLYFY5bMAd+eX9MGthhpbA1vu4B7+RKkaW2Yq4AQtVBBFsAJU/AuIXBhN8gGWnstefhiZyWvLAEnbYS1uzSFP6Jvn4Baxx70JKkQojLib5AVTey1jjgkKJGO0AKWyOm7N7cSpgSpAdPH0Tfd/gp1z5C1ZgKqN9J2wFxcUUuAFLZAm+QC0Fb4YUVRFsAOvj4KW2dwtYE3yAWk/wS/PLMKfmuGHZ8MAXF/Ja32Yi5haAKWz4Ydm2cSpgU693Atb7km+Zwwh+WGcPpxw3gAkzCLY+iYUDW/Z3Adc/gpzyFrAqnALkJe+7DoItgAtRS2zuKqGE3yAx0oJvkdvYrfZmALURbDuL5/RLf13cAuDeBS2RpbtAm+QFVA3wR+3fUtFHoBDJnC0jIXH0HWsgMY8inPLuOkd9chp4z20ALQLSA8cI9jYAIa2zjzjBd8gRafS1vgiUho/kAKcsCGTOGWvoOpkAtB3z8Hm8x2Ff5ADp4+lXAlIvcmwH/2Q==')\n repeat left top;\n}\n.remirror-pojoaque pre[class*='language-'] {\n padding: 12px;\n overflow: auto;\n}\n.remirror-pojoaque :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n.remirror-pojoaque :not(pre) > code[class*='language-'] {\n padding: 2px 6px;\n}\n.remirror-pojoaque .token.namespace {\n opacity: 0.7;\n}\n.remirror-pojoaque .token.comment,\n.remirror-pojoaque .token.prolog,\n.remirror-pojoaque .token.doctype,\n.remirror-pojoaque .token.cdata {\n color: #586e75;\n font-style: italic;\n}\n.remirror-pojoaque .token.number,\n.remirror-pojoaque .token.string,\n.remirror-pojoaque .token.char,\n.remirror-pojoaque .token.builtin,\n.remirror-pojoaque .token.inserted {\n color: #468966;\n}\n.remirror-pojoaque .token.attr-name {\n color: #b89859;\n}\n.remirror-pojoaque .token.operator,\n.remirror-pojoaque .token.entity,\n.remirror-pojoaque .token.url,\n.remirror-pojoaque .language-css .token.string,\n.remirror-pojoaque .style .token.string {\n color: #dccf8f;\n}\n.remirror-pojoaque .token.selector,\n.remirror-pojoaque .token.regex {\n color: #859900;\n}\n.remirror-pojoaque .token.atrule,\n.remirror-pojoaque .token.keyword {\n color: #cb4b16;\n}\n.remirror-pojoaque .token.attr-value {\n color: #468966;\n}\n.remirror-pojoaque .token.function,\n.remirror-pojoaque .token.variable,\n.remirror-pojoaque .token.placeholder {\n color: #b58900;\n}\n.remirror-pojoaque .token.property,\n.remirror-pojoaque .token.tag,\n.remirror-pojoaque .token.boolean,\n.remirror-pojoaque .token.number,\n.remirror-pojoaque .token.constant,\n.remirror-pojoaque .token.symbol {\n color: #b89859;\n}\n.remirror-pojoaque .token.tag {\n color: #ffb03b;\n}\n.remirror-pojoaque .token.important,\n.remirror-pojoaque .token.statement,\n.remirror-pojoaque .token.deleted {\n color: #dc322f;\n}\n.remirror-pojoaque .token.punctuation,\n.remirror-pojoaque .token.punctuation.important {\n color: #dccf8f;\n}\n.remirror-pojoaque .token.entity {\n cursor: help;\n}\n.remirror-pojoaque .token.bold {\n font-weight: bold;\n}\n.remirror-pojoaque .token.italic {\n font-style: italic;\n}\n.remirror-vs code[class*='language-'],\n.remirror-vs pre[class*='language-'] {\n color: #393a34;\n font-family: 'Consolas', 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace;\n direction: ltr;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n font-size: 0.95em;\n line-height: 1.2em;\n\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n\n -webkit-hyphens: none;\n hyphens: none;\n}\n.remirror-vs pre[class*='language-']::-moz-selection,\n.remirror-vs pre[class*='language-'] ::-moz-selection,\n.remirror-vs code[class*='language-']::-moz-selection,\n.remirror-vs code[class*='language-'] ::-moz-selection {\n background: #c1def1;\n}\n.remirror-vs pre[class*='language-']::-moz-selection, .remirror-vs pre[class*='language-'] ::-moz-selection, .remirror-vs code[class*='language-']::-moz-selection, .remirror-vs code[class*='language-'] ::-moz-selection {\n background: #c1def1;\n}\n.remirror-vs pre[class*='language-']::selection,\n.remirror-vs pre[class*='language-'] ::selection,\n.remirror-vs code[class*='language-']::selection,\n.remirror-vs code[class*='language-'] ::selection {\n background: #c1def1;\n}\n/* Code blocks */\n.remirror-vs pre[class*='language-'] {\n padding: 1em;\n margin: 0.5em 0;\n overflow: auto;\n border: 1px solid #dddddd;\n background-color: white;\n}\n.remirror-vs :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n/* Inline code */\n.remirror-vs :not(pre) > code[class*='language-'] {\n padding: 0.2em;\n padding-top: 1px;\n padding-bottom: 1px;\n background: #f8f8f8;\n border: 1px solid #dddddd;\n}\n.remirror-vs .token.comment,\n.remirror-vs .token.prolog,\n.remirror-vs .token.doctype,\n.remirror-vs .token.cdata {\n color: #008000;\n font-style: italic;\n}\n.remirror-vs .token.namespace {\n opacity: 0.7;\n}\n.remirror-vs .token.string {\n color: #a31515;\n}\n.remirror-vs .token.punctuation,\n.remirror-vs .token.operator {\n color: #393a34; /* no highlight */\n}\n.remirror-vs .token.url,\n.remirror-vs .token.symbol,\n.remirror-vs .token.number,\n.remirror-vs .token.boolean,\n.remirror-vs .token.variable,\n.remirror-vs .token.constant,\n.remirror-vs .token.inserted {\n color: #36acaa;\n}\n.remirror-vs .token.atrule,\n.remirror-vs .token.keyword,\n.remirror-vs .token.attr-value,\n.remirror-vs .language-autohotkey .token.selector,\n.remirror-vs .language-json .token.boolean,\n.remirror-vs .language-json .token.number,\n.remirror-vs code[class*='language-css'] {\n color: #0000ff;\n}\n.remirror-vs .token.function {\n color: #393a34;\n}\n.remirror-vs .token.deleted,\n.remirror-vs .language-autohotkey .token.tag {\n color: #9a050f;\n}\n.remirror-vs .token.selector,\n.remirror-vs .language-autohotkey .token.keyword {\n color: #00009f;\n}\n.remirror-vs .token.important,\n.remirror-vs .token.bold {\n font-weight: bold;\n}\n.remirror-vs .token.italic {\n font-style: italic;\n}\n.remirror-vs .token.class-name,\n.remirror-vs .language-json .token.property {\n color: #2b91af;\n}\n.remirror-vs .token.tag,\n.remirror-vs .token.selector {\n color: #800000;\n}\n.remirror-vs .token.attr-name,\n.remirror-vs .token.property,\n.remirror-vs .token.regex,\n.remirror-vs .token.entity {\n color: #ff0000;\n}\n.remirror-vs .token.directive.tag .tag {\n background: #ffff00;\n color: #393a34;\n}\n/* overrides color-values for the Line Numbers plugin\n * http://prismjs.com/plugins/line-numbers/\n */\n.remirror-vs .line-numbers .line-numbers-rows {\n border-right-color: #a5a5a5;\n}\n.remirror-vs .line-numbers-rows > span:before {\n color: #2b91af;\n}\n/* overrides color-values for the Line Highlight plugin\n* http://prismjs.com/plugins/line-highlight/\n*/\n.remirror-vs .line-highlight {\n background: rgba(193, 222, 241, 0.2);\n background: linear-gradient(to right, rgba(193, 222, 241, 0.2) 70%, rgba(221, 222, 241, 0));\n}\n.remirror-xonokai code[class*='language-'],\n.remirror-xonokai pre[class*='language-'] {\n -moz-tab-size: 2;\n -o-tab-size: 2;\n tab-size: 2;\n -webkit-hyphens: none;\n hyphens: none;\n white-space: pre;\n white-space: pre-wrap;\n word-wrap: normal;\n font-family: Menlo, Monaco, 'Courier New', monospace;\n font-size: 14px;\n color: #76d9e6;\n text-shadow: none;\n}\n.remirror-xonokai pre[class*='language-'],\n.remirror-xonokai :not(pre) > code[class*='language-'] {\n background: #2a2a2a;\n}\n.remirror-xonokai pre[class*='language-'] {\n padding: 15px;\n border-radius: 4px;\n border: 1px solid #e1e1e8;\n overflow: auto;\n}\n.remirror-xonokai :has(.remirror-language-select-positioner) ~ pre[class*='language-'] {\n padding: 2em 1em;\n}\n.remirror-xonokai pre[class*='language-'] {\n position: relative;\n}\n.remirror-xonokai pre[class*='language-'] code {\n white-space: pre;\n display: block;\n}\n.remirror-xonokai :not(pre) > code[class*='language-'] {\n padding: 0.15em 0.2em 0.05em;\n border-radius: 0.3em;\n border: 0.13em solid #7a6652;\n box-shadow: 1px 1px 0.3em -0.1em #000 inset;\n}\n.remirror-xonokai .token.namespace {\n opacity: 0.7;\n}\n.remirror-xonokai .token.comment,\n.remirror-xonokai .token.prolog,\n.remirror-xonokai .token.doctype,\n.remirror-xonokai .token.cdata {\n color: #6f705e;\n}\n.remirror-xonokai .token.operator,\n.remirror-xonokai .token.boolean,\n.remirror-xonokai .token.number {\n color: #a77afe;\n}\n.remirror-xonokai .token.attr-name,\n.remirror-xonokai .token.string {\n color: #e6d06c;\n}\n.remirror-xonokai .token.entity,\n.remirror-xonokai .token.url,\n.remirror-xonokai .language-css .token.string,\n.remirror-xonokai .style .token.string {\n color: #e6d06c;\n}\n.remirror-xonokai .token.selector,\n.remirror-xonokai .token.inserted {\n color: #a6e22d;\n}\n.remirror-xonokai .token.atrule,\n.remirror-xonokai .token.attr-value,\n.remirror-xonokai .token.keyword,\n.remirror-xonokai .token.important,\n.remirror-xonokai .token.deleted {\n color: #ef3b7d;\n}\n.remirror-xonokai .token.regex,\n.remirror-xonokai .token.statement {\n color: #76d9e6;\n}\n.remirror-xonokai .token.placeholder,\n.remirror-xonokai .token.variable {\n color: #fff;\n}\n.remirror-xonokai .token.important,\n.remirror-xonokai .token.statement,\n.remirror-xonokai .token.bold {\n font-weight: bold;\n}\n.remirror-xonokai .token.punctuation,\n.remirror-xonokai .token.punctuation.important {\n color: #bebec5;\n}\n.remirror-xonokai .token.entity {\n cursor: help;\n}\n.remirror-xonokai .token.italic {\n font-style: italic;\n}\n.remirror-xonokai code.language-markup {\n color: #f9f9f9;\n}\n.remirror-xonokai code.language-markup .token.tag {\n color: #ef3b7d;\n}\n.remirror-xonokai code.language-markup .token.attr-name {\n color: #a6e22d;\n}\n.remirror-xonokai code.language-markup .token.attr-value {\n color: #e6d06c;\n}\n.remirror-xonokai code.language-markup .token.style,\n.remirror-xonokai code.language-markup .token.script {\n color: #76d9e6;\n}\n.remirror-xonokai code.language-markup .token.script .token.keyword {\n color: #76d9e6;\n}\n/* Line highlight plugin */\n.remirror-xonokai pre[class*='language-'][data-line] {\n position: relative;\n padding: 1em 0 1em 3em;\n}\n.remirror-xonokai pre[data-line] .line-highlight {\n position: absolute;\n left: 0;\n right: 0;\n padding: 0;\n margin-top: 1em;\n background: rgba(255, 255, 255, 0.08);\n pointer-events: none;\n line-height: inherit;\n white-space: pre;\n}\n.remirror-xonokai pre[data-line] .line-highlight:before,\n.remirror-xonokai pre[data-line] .line-highlight[data-end]:after {\n content: attr(data-start);\n position: absolute;\n top: 0.4em;\n left: 0.6em;\n min-width: 1em;\n padding: 0.2em 0.5em;\n background-color: rgba(255, 255, 255, 0.4);\n color: black;\n font: bold 65%/1 sans-serif;\n height: 1em;\n line-height: 1em;\n text-align: center;\n border-radius: 999px;\n text-shadow: none;\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);\n}\n.remirror-xonokai pre[data-line] .line-highlight[data-end]:after {\n content: attr(data-end);\n top: auto;\n bottom: 0.4em;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-count-theme.ts\n */\n.remirror-editor span.remirror-max-count-exceeded {\n background-color: var(--rmr-hue-red-4);\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-emoji-theme.ts\n */\n.remirror-emoji-image {\n -o-object-fit: contain;\n object-fit: contain;\n width: 1.375em;\n height: 1.375em;\n vertical-align: bottom;\n}\n.remirror-emoji-wrapper {\n text-indent: -99999px;\n}\n.remirror-emoji-popup-item {\n padding: 8px;\n text-overflow: ellipsis;\n max-width: 250px;\n width: 250px;\n overflow: hidden;\n white-space: nowrap;\n color: white;\n}\n.remirror-emoji-popup-hovered {\n background-color: var(--rmr-hue-gray-2);\n}\n.remirror-emoji-popup-highlight {\n background-color: var(--rmr-hue-gray-3);\n}\n.remirror-emoji-popup-wrapper {\n position: absolute;\n width: -moz-max-content;\n width: max-content;\n padding-top: 8px;\n padding-bottom: 8px;\n margin: 0 auto;\n border-radius: 8px;\n box-shadow: hsla(205, 70%, 15%, 0.25) 0 4px 8px, hsla(205, 70%, 15%, 0.31) 0px 0px 1px;\n background-color: white;\n z-index: 10;\n max-height: 250px;\n overflow-y: scroll;\n}\n.remirror-emoji-popup-name {\n color: rgb(121, 129, 134);\n}\n.remirror-emoji-popup-char {\n font-size: 1.25em;\n padding-right: 5px;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-file-theme.ts\n */\n.remirror-file-root {\n border-radius: 4px;\n padding: 8px 12px;\n background-color: #e8ecf1;\n color: #000;\n margin: 8px auto;\n min-height: 32px;\n width: 100%;\n max-width: 600px;\n display: flex;\n align-items: center;\n}\n.remirror-file-name {\n font-size: 1rem;\n margin-left: 8px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.remirror-file-size {\n font-size: 0.8rem;\n margin-left: 8px;\n color: gray;\n white-space: nowrap;\n}\n.remirror-file-upload-progress {\n font-size: 0.8rem;\n margin-left: 8px;\n margin-right: 8px;\n color: gray;\n font-family: Menlo, Monaco, 'Courier New', monospace;\n}\n.remirror-file-error {\n font-size: 0.8rem;\n color: red;\n}\n.remirror-file-icon-button {\n display: flex;\n justify-content: center;\n align-items: center;\n color: #000;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-gap-cursor-theme.ts\n */\n.remirror-editor.ProseMirror .ProseMirror-gapcursor {\n display: none;\n pointer-events: none;\n position: absolute;\n}\n.remirror-editor.ProseMirror .ProseMirror-gapcursor:after {\n content: '';\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid black;\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n.remirror-editor.ProseMirror .ProseMirror-focused .ProseMirror-gapcursor,\n.remirror-editor.ProseMirror.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-image-theme.ts\n */\n.remirror-image-loader {\n border: 16px solid #f3f3f3;\n border-radius: 50%;\n border-top: 16px solid #3498db;\n width: 120px;\n height: 120px;\n animation: spin 2s linear infinite;\n}\n@keyframes spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-list-theme.ts\n */\n/* don't show the custom markers in a ordered list */\n.remirror-editor ol > li > .remirror-list-item-marker-container {\n display: none;\n}\n/* don't show the origin markers when using custom markers (checkbox / collapsible) */\n.remirror-editor ul > li.remirror-list-item-with-custom-mark {\n list-style: none;\n}\n.remirror-editor .remirror-ul-list-content > li.remirror-list-item-with-custom-mark {\n list-style: none;\n}\n/* override the browser's default styles */\n.remirror-editor ul ul + ul {\n margin-block-start: 1em;\n}\n.remirror-list-item-marker-container {\n position: absolute;\n left: -32px;\n width: 24px;\n display: inline-block;\n text-align: center;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.remirror-list-item-checkbox {\n /* change the checkbox color from blue (default on Chrome) to purple. */\n filter: hue-rotate(60deg);\n}\n.remirror-collapsible-list-item-closed li {\n display: none;\n}\n.remirror-collapsible-list-item-closed .remirror-collapsible-list-item-button {\n background-color: var(--rmr-hue-gray-6);\n}\n.remirror-collapsible-list-item-button {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n cursor: pointer;\n display: inline-block;\n vertical-align: middle;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n\n transition: background-color 0.25s ease;\n background-color: var(--rmr-color-border);\n}\n.remirror-collapsible-list-item-button:hover {\n background-color: var(--rmr-color-primary);\n}\n.remirror-collapsible-list-item-button.disabled,\n.remirror-collapsible-list-item-button.disabled:hover {\n background-color: var(--rmr-color-border);\n cursor: default;\n}\n.remirror-list-spine {\n position: absolute;\n top: 4px;\n bottom: 0px;\n left: -20px;\n width: 16px;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n\n transition: border-left-color 0.25s ease;\n border-left-color: var(--rmr-color-border);\n border-left-style: solid;\n border-left-width: 1px;\n}\n.remirror-list-spine:hover {\n border-left-color: var(--rmr-color-primary);\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-mention-atom-theme.ts\n */\n.remirror-mention-atom {\n background: var(--rmr-hue-gray-2);\n font-weight: bold;\n font-size: 0.9em;\n font-style: normal;\n border-radius: var(--rmr-radius-border);\n padding: 0.2rem 0.5rem;\n white-space: nowrap;\n color: var(--rmr-color-primary);\n}\n.remirror-suggest-atom {\n color: rgba(0, 0, 0, 0.6);\n}\n.remirror-mention-atom-popup-item {\n padding: 8px;\n text-overflow: ellipsis;\n max-width: 250px;\n width: 250px;\n overflow: hidden;\n white-space: nowrap;\n color: white;\n}\n.remirror-mention-atom-popup-hovered {\n background-color: var(--rmr-hue-gray-2);\n}\n.remirror-mention-atom-popup-highlight {\n background-color: var(--rmr-hue-gray-3);\n}\n.remirror-mention-atom-popup-wrapper {\n width: -moz-max-content;\n width: max-content;\n padding-top: 8px;\n padding-bottom: 8px;\n margin: 0 auto;\n border-radius: 8px;\n box-shadow: hsla(205, 70%, 15%, 0.25) 0 4px 8px, hsla(205, 70%, 15%, 0.31) 0px 0px 1px;\n background-color: white;\n z-index: 10;\n max-height: 250px;\n overflow-y: scroll;\n}\n.remirror-mention-atom-popup-name {\n color: rgb(121, 129, 134);\n}\n.remirror-mention-atom-zero-items {\n color: rgb(121, 129, 134);\n}\n.remirror-mention-atom-popup-char {\n font-size: 1.25em;\n padding-right: 5px;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-node-formatting-theme.ts\n */\n.remirror-editor.ProseMirror {\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-placeholder-theme.ts\n */\n.remirror-is-empty:first-of-type::before {\n position: absolute;\n color: #aaa;\n pointer-events: none;\n height: 0;\n font-style: italic;\n content: attr(data-placeholder);\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-positioner-theme.ts\n */\n.remirror-editor.ProseMirror {\n position: relative;\n}\n.remirror-positioner {\n position: absolute;\n min-width: 1px;\n min-height: 1px;\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n cursor: none;\n z-index: -1;\n}\n.remirror-positioner-widget {\n width: 0;\n height: 0;\n position: absolute;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-tables-theme.ts\n */\n.remirror-editor.ProseMirror {\n /* Give selected cells a blue overlay */\n /* We don't need this anymore -- 2021-04-03 ocavue */\n}\n.remirror-editor.ProseMirror .tableWrapper {\n overflow-x: auto;\n}\n.remirror-editor.ProseMirror table {\n border-collapse: collapse;\n table-layout: fixed;\n width: 100%;\n overflow: hidden;\n}\n.remirror-editor.ProseMirror td,\n.remirror-editor.ProseMirror th {\n vertical-align: top;\n box-sizing: border-box;\n position: relative;\n border-width: 1px;\n border-style: solid;\n border-color: var(--rmr-color-table-default-border);\n}\n.remirror-editor.ProseMirror .column-resize-handle {\n position: absolute;\n right: -2px;\n top: 0;\n bottom: 0;\n width: 4px;\n z-index: 40;\n background-color: var(--rmr-hue-blue-7);\n pointer-events: none;\n}\n.remirror-editor.ProseMirror.resize-cursor {\n cursor: ew-resize;\n cursor: col-resize;\n}\n/*\n .selectedCell:after {\n z-index: 2;\n position: absolute;\n content: '';\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background: rgba(200, 200, 255, 0.4);\n pointer-events: none;\n }\n */\n.remirror-editor.ProseMirror th.selectedCell,\n.remirror-editor.ProseMirror td.selectedCell {\n border-style: double;\n border-color: var(--rmr-color-table-selected-border);\n background-color: var(--rmr-color-table-selected-cell);\n}\n.remirror-table-colgroup > col:first-of-type {\n width: 13px;\n overflow: visible;\n}\n.remirror-controllers-toggle {\n visibility: hidden;\n}\n.remirror-table-show-controllers .remirror-controllers-toggle {\n visibility: visible;\n}\n.remirror-table-insert-button {\n position: absolute;\n width: 18px;\n height: 18px;\n z-index: 25;\n cursor: pointer;\n border-radius: 4px;\n transition: background-color 150ms ease;\n\n background-color: #dcdcdc;\n}\n.remirror-table-insert-button svg {\n fill: #ffffff;\n}\n.remirror-table-insert-button:hover {\n background-color: #136bda;\n}\n.remirror-table-insert-button:hover svg {\n fill: #ffffff;\n}\n.remirror-table-delete-inner-button {\n border: none;\n padding: 0;\n width: 18px;\n height: 18px;\n\n position: absolute;\n z-index: 30;\n cursor: pointer;\n border-radius: 4px;\n background-color: #cecece;\n transition: background-color 150ms ease;\n}\n.remirror-table-delete-inner-button:hover {\n background-color: #ff7884;\n}\n.remirror-table-delete-table-inner-button {\n top: calc(var(--remirror-table-delete-button-y) - 9px);\n left: calc(var(--remirror-table-delete-button-x) - 9px);\n}\n.remirror-table-delete-row-column-inner-button {\n top: calc(var(--remirror-table-delete-row-column-button-y) - 9px);\n left: calc(var(--remirror-table-delete-row-column-button-x) - 9px);\n}\n.remirror-table-with-controllers {\n /* Space for marks */\n margin-top: 40px;\n margin-bottom: 40px;\n\n /* To make controller's 'height: 100%' works, table must set its own height. */\n height: 1px;\n}\n/* To show marks */\n.ProseMirror table.remirror-table-with-controllers {\n overflow: visible;\n}\n.remirror-table-waitting-controllers {\n /* Hide the table before controllers injected */\n display: none;\n}\n/* First row contains one corner controller and multiple column controllers */\n.remirror-table-tbody-with-controllers > tr:nth-of-type(1) {\n height: 12px;\n overflow: visible;\n}\n/* First controller cell is the corner controller */\n.remirror-table-tbody-with-controllers > tr:nth-of-type(1) th:nth-of-type(1) {\n overflow: visible;\n padding: 0;\n cursor: pointer;\n z-index: 15;\n position: relative;\n height: 12px;\n width: 12px;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(1)\n th:nth-of-type(1)\n div.remirror-table-controller-wrapper {\n overflow: visible;\n display: flex;\n justify-content: flex-end;\n align-items: flex-end;\n width: 12px;\n height: 12px;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(1)\n th:nth-of-type(1)\n div.remirror-table-controller-trigger-area {\n flex: 1;\n position: relative;\n z-index: 10; /* Style for debug. Use linear-gradient as background so that we can differentiate two neighbor areas. */ /* background: linear-gradient(to left top, rgba(0, 255, 100, 0.2), rgba(200, 100, 255, 0.2)); */\n display: none;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(1)\n th:nth-of-type(1)\n div.remirror-table-controller-mark-row-corner {\n bottom: -2px;\n left: -12px;\n position: absolute;\n width: 0px;\n height: 0px;\n border-radius: 50%;\n border-style: solid;\n border-color: var(--rmr-color-table-mark);\n border-width: 2px;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(1)\n th:nth-of-type(1)\n div.remirror-table-controller-mark-column-corner {\n position: absolute;\n width: 0px;\n height: 0px;\n border-radius: 50%;\n border-style: solid;\n border-color: var(--rmr-color-table-mark);\n border-width: 2px;\n right: -2px;\n top: -12px;\n}\n/* Second and more cells are column controllers */\n.remirror-table-tbody-with-controllers > tr:nth-of-type(1) th:nth-of-type(n + 2) {\n overflow: visible;\n padding: 0;\n cursor: pointer;\n z-index: 15;\n position: relative;\n height: 12px;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(1)\n th:nth-of-type(n + 2)\n div.remirror-table-controller-wrapper {\n overflow: visible;\n display: flex;\n justify-content: flex-end;\n align-items: flex-end;\n width: 100%;\n height: 12px;\n flex-direction: row;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(1)\n th:nth-of-type(n + 2)\n div.remirror-table-controller-trigger-area {\n flex: 1;\n position: relative;\n z-index: 10; /* Style for debug. Use linear-gradient as background so that we can differentiate two neighbor areas. */ /* background: linear-gradient(to left top, rgba(0, 255, 100, 0.2), rgba(200, 100, 255, 0.2)); */\n height: 36px;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(1)\n th:nth-of-type(n + 2)\n div.remirror-table-controller-mark-row-corner {\n display: none;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(1)\n th:nth-of-type(n + 2)\n div.remirror-table-controller-mark-column-corner {\n position: absolute;\n width: 0px;\n height: 0px;\n border-radius: 50%;\n border-style: solid;\n border-color: var(--rmr-color-table-mark);\n border-width: 2px;\n right: -2px;\n top: -12px;\n}\n/* Second and more rows containes row controllers */\n/* First controller cell in each row is a row controller */\n.remirror-table-tbody-with-controllers > tr:nth-of-type(n + 2) th {\n overflow: visible;\n padding: 0;\n cursor: pointer;\n z-index: 15;\n position: relative;\n width: 12px;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(n + 2)\n th\n div.remirror-table-controller-wrapper {\n overflow: visible;\n display: flex;\n justify-content: flex-end;\n align-items: flex-end;\n height: 100%;\n width: 12px;\n flex-direction: column;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(n + 2)\n th\n div.remirror-table-controller-trigger-area {\n flex: 1;\n position: relative;\n z-index: 10; /* Style for debug. Use linear-gradient as background so that we can differentiate two neighbor areas. */ /* background: linear-gradient(to left top, rgba(0, 255, 100, 0.2), rgba(200, 100, 255, 0.2)); */\n width: 36px;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(n + 2)\n th\n div.remirror-table-controller-mark-row-corner {\n bottom: -2px;\n left: -12px;\n position: absolute;\n width: 0px;\n height: 0px;\n border-radius: 50%;\n border-style: solid;\n border-color: var(--rmr-color-table-mark);\n border-width: 2px;\n}\n.remirror-table-tbody-with-controllers\n > tr:nth-of-type(n + 2)\n th\n div.remirror-table-controller-mark-column-corner {\n display: none;\n}\n/* Styles for default */\n.remirror-table-tbody-with-controllers th.remirror-table-controller {\n background-color: var(--rmr-color-table-default-controller);\n}\n/* Styles for selected */\n.remirror-table-tbody-with-controllers th.selectedCell.remirror-table-controller {\n background-color: var(--rmr-color-table-selected-controller);\n}\n.remirror-table-preselect-all {\n}\n/* Styles for predelete */\n.remirror-table-show-predelete th.selectedCell.remirror-table-controller,\n.remirror-table-show-predelete td.selectedCell {\n border-color: var(--rmr-color-table-predelete-border) !important;\n background-color: var(--rmr-color-table-predelete-cell) !important;\n}\n.remirror-table-show-predelete th.selectedCell.remirror-table-controller {\n background-color: var(--rmr-color-table-predelete-controller) !important;\n}\n.remirror-table-show-predelete.remirror-table-preselect-all th.remirror-table-controller,\n.remirror-table-show-predelete.remirror-table-preselect-all td {\n border-color: var(--rmr-color-table-predelete-border) !important;\n background-color: var(--rmr-color-table-predelete-cell) !important;\n}\n.remirror-table-show-predelete.remirror-table-preselect-all th.remirror-table-controller {\n background-color: var(--rmr-color-table-predelete-controller) !important;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-whitespace-theme.ts\n */\n.remirror-editor.ProseMirror .whitespace {\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.remirror-editor.ProseMirror .whitespace:before {\n caret-color: inherit;\n color: gray;\n display: inline-block;\n font-weight: 400;\n font-style: normal;\n line-height: 1em;\n width: 0;\n}\n.remirror-editor.ProseMirror .whitespace--s:before {\n content: '·';\n}\n.remirror-editor.ProseMirror .whitespace--br:before {\n content: '¬';\n}\n.remirror-editor.ProseMirror .whitespace--p:before {\n content: '¶';\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/extension-yjs-theme.ts\n */\n.remirror-editor.ProseMirror .ProseMirror-yjs-cursor {\n position: absolute;\n border-left: black;\n border-left-style: solid;\n border-left-width: 2px;\n border-color: orange;\n height: 1em;\n word-break: normal;\n pointer-events: none;\n}\n.remirror-editor.ProseMirror .ProseMirror-yjs-cursor > div {\n position: relative;\n top: -1.05em;\n font-size: 13px;\n background-color: rgb(250, 129, 0);\n font-family: serif;\n font-style: normal;\n font-weight: normal;\n line-height: normal;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n color: white;\n padding-left: 2px;\n padding-right: 2px;\n}\n.remirror-editor.ProseMirror > .ProseMirror-yjs-cursor:first-child {\n margin-top: 16px;\n}\n.remirror-editor #y-functions {\n position: absolute;\n top: 20px;\n right: 20px;\n}\n.remirror-editor #y-functions > * {\n display: inline-block;\n}\n/**\n * Styles extracted from: packages/remirror__theme/src/theme.ts\n */\n.remirror-theme {\n /* The following makes it easier to measure components within the editor. */\n box-sizing: border-box;\n}\n.remirror-theme *,\n.remirror-theme *:before,\n.remirror-theme *:after {\n /** Preserve box-sizing when override exists:\n * https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/\n * */\n box-sizing: inherit;\n}\n.remirror-theme {\n --rmr-color-background: #ffffff;\n --rmr-color-border: rgba(0, 0, 0, 0.25);\n --rmr-color-foreground: #000000;\n --rmr-color-muted: #f1f3f5;\n --rmr-color-primary: #7963d2;\n --rmr-color-secondary: #bcd263;\n --rmr-color-primary-text: #fff;\n --rmr-color-secondary-text: #fff;\n --rmr-color-text: #252103;\n --rmr-color-faded: hsla(0, 0%, 13%, 0.9);\n --rmr-color-active-background: hsla(0, 0%, 85%, 1);\n --rmr-color-active-border: hsla(0, 0%, 0%, 0.25);\n --rmr-color-active-foreground: hsla(0, 0%, 0%, 1);\n --rmr-color-active-muted: hsla(210, 17%, 80%, 1);\n --rmr-color-active-primary: hsla(252, 55%, 46%, 1);\n --rmr-color-active-secondary: hsla(72, 55%, 46%, 1);\n --rmr-color-active-primary-text: #fff;\n --rmr-color-active-secondary-text: #000;\n --rmr-color-active-text: #000;\n --rmr-color-active-faded: hsla(0, 0%, 13%, 0.9);\n --rmr-color-hover-background: hsla(0, 0%, 93%, 1);\n --rmr-color-hover-border: hsla(0, 0%, 0%, 0.25);\n --rmr-color-hover-foreground: hsla(0, 0%, 0%, 1);\n --rmr-color-hover-muted: hsla(210, 17%, 88%, 1);\n --rmr-color-hover-primary: hsla(252, 55%, 53%, 1);\n --rmr-color-hover-secondary: hsla(72, 55%, 53%, 1);\n --rmr-color-hover-primary-text: #fff;\n --rmr-color-hover-secondary-text: #000;\n --rmr-color-hover-text: #000;\n --rmr-color-hover-faded: hsla(0, 0%, 13%, 0.9);\n --rmr-color-shadow-1: rgba(10, 31, 68, 0.08);\n --rmr-color-shadow-2: rgba(10, 31, 68, 0.1);\n --rmr-color-shadow-3: rgba(10, 31, 68, 0.12);\n --rmr-color-backdrop: rgba(0, 0, 0, 0.9);\n --rmr-color-outline: rgba(121, 99, 210, 0.4);\n --rmr-color-table-default-border: hsla(0, 0%, 80%, 1);\n --rmr-color-table-default-cell: hsla(0, 0%, 40%, 1);\n --rmr-color-table-default-controller: #dee2e6;\n --rmr-color-table-selected-border: #1c7ed6;\n --rmr-color-table-selected-cell: #d0ebff;\n --rmr-color-table-selected-controller: #339af0;\n --rmr-color-table-preselect-border: #1c7ed6;\n --rmr-color-table-preselect-cell: hsla(0, 0%, 40%, 1);\n --rmr-color-table-preselect-controller: #339af0;\n --rmr-color-table-predelete-border: #f03e3e;\n --rmr-color-table-predelete-cell: #ffe3e3;\n --rmr-color-table-predelete-controller: #ff6b6b;\n --rmr-color-table-mark: #91919196;\n --rmr-hue-gray-0: #f8f9fa;\n --rmr-hue-gray-1: #f1f3f5;\n --rmr-hue-gray-2: #e9ecef;\n --rmr-hue-gray-3: #dee2e6;\n --rmr-hue-gray-4: #ced4da;\n --rmr-hue-gray-5: #adb5bd;\n --rmr-hue-gray-6: #868e96;\n --rmr-hue-gray-7: #495057;\n --rmr-hue-gray-8: #343a40;\n --rmr-hue-gray-9: #212529;\n --rmr-hue-red-0: #fff5f5;\n --rmr-hue-red-1: #ffe3e3;\n --rmr-hue-red-2: #ffc9c9;\n --rmr-hue-red-3: #ffa8a8;\n --rmr-hue-red-4: #ff8787;\n --rmr-hue-red-5: #ff6b6b;\n --rmr-hue-red-6: #fa5252;\n --rmr-hue-red-7: #f03e3e;\n --rmr-hue-red-8: #e03131;\n --rmr-hue-red-9: #c92a2a;\n --rmr-hue-pink-0: #fff0f6;\n --rmr-hue-pink-1: #ffdeeb;\n --rmr-hue-pink-2: #fcc2d7;\n --rmr-hue-pink-3: #faa2c1;\n --rmr-hue-pink-4: #f783ac;\n --rmr-hue-pink-5: #f06595;\n --rmr-hue-pink-6: #e64980;\n --rmr-hue-pink-7: #d6336c;\n --rmr-hue-pink-8: #c2255c;\n --rmr-hue-pink-9: #a61e4d;\n --rmr-hue-grape-0: #f8f0fc;\n --rmr-hue-grape-1: #f3d9fa;\n --rmr-hue-grape-2: #eebefa;\n --rmr-hue-grape-3: #e599f7;\n --rmr-hue-grape-4: #da77f2;\n --rmr-hue-grape-5: #cc5de8;\n --rmr-hue-grape-6: #be4bdb;\n --rmr-hue-grape-7: #ae3ec9;\n --rmr-hue-grape-8: #9c36b5;\n --rmr-hue-grape-9: #862e9c;\n --rmr-hue-violet-0: #f3f0ff;\n --rmr-hue-violet-1: #e5dbff;\n --rmr-hue-violet-2: #d0bfff;\n --rmr-hue-violet-3: #b197fc;\n --rmr-hue-violet-4: #9775fa;\n --rmr-hue-violet-5: #845ef7;\n --rmr-hue-violet-6: #7950f2;\n --rmr-hue-violet-7: #7048e8;\n --rmr-hue-violet-8: #6741d9;\n --rmr-hue-violet-9: #5f3dc4;\n --rmr-hue-indigo-0: #edf2ff;\n --rmr-hue-indigo-1: #dbe4ff;\n --rmr-hue-indigo-2: #bac8ff;\n --rmr-hue-indigo-3: #91a7ff;\n --rmr-hue-indigo-4: #748ffc;\n --rmr-hue-indigo-5: #5c7cfa;\n --rmr-hue-indigo-6: #4c6ef5;\n --rmr-hue-indigo-7: #4263eb;\n --rmr-hue-indigo-8: #3b5bdb;\n --rmr-hue-indigo-9: #364fc7;\n --rmr-hue-blue-0: #e7f5ff;\n --rmr-hue-blue-1: #d0ebff;\n --rmr-hue-blue-2: #a5d8ff;\n --rmr-hue-blue-3: #74c0fc;\n --rmr-hue-blue-4: #4dabf7;\n --rmr-hue-blue-5: #339af0;\n --rmr-hue-blue-6: #228be6;\n --rmr-hue-blue-7: #1c7ed6;\n --rmr-hue-blue-8: #1971c2;\n --rmr-hue-blue-9: #1864ab;\n --rmr-hue-cyan-0: #e3fafc;\n --rmr-hue-cyan-1: #c5f6fa;\n --rmr-hue-cyan-2: #99e9f2;\n --rmr-hue-cyan-3: #66d9e8;\n --rmr-hue-cyan-4: #3bc9db;\n --rmr-hue-cyan-5: #22b8cf;\n --rmr-hue-cyan-6: #15aabf;\n --rmr-hue-cyan-7: #1098ad;\n --rmr-hue-cyan-8: #0c8599;\n --rmr-hue-cyan-9: #0b7285;\n --rmr-hue-teal-0: #e6fcf5;\n --rmr-hue-teal-1: #c3fae8;\n --rmr-hue-teal-2: #96f2d7;\n --rmr-hue-teal-3: #63e6be;\n --rmr-hue-teal-4: #38d9a9;\n --rmr-hue-teal-5: #20c997;\n --rmr-hue-teal-6: #12b886;\n --rmr-hue-teal-7: #0ca678;\n --rmr-hue-teal-8: #099268;\n --rmr-hue-teal-9: #087f5b;\n --rmr-hue-green-0: #ebfbee;\n --rmr-hue-green-1: #d3f9d8;\n --rmr-hue-green-2: #b2f2bb;\n --rmr-hue-green-3: #8ce99a;\n --rmr-hue-green-4: #69db7c;\n --rmr-hue-green-5: #51cf66;\n --rmr-hue-green-6: #40c057;\n --rmr-hue-green-7: #37b24d;\n --rmr-hue-green-8: #2f9e44;\n --rmr-hue-green-9: #2b8a3e;\n --rmr-hue-lime-0: #f4fce3;\n --rmr-hue-lime-1: #e9fac8;\n --rmr-hue-lime-2: #d8f5a2;\n --rmr-hue-lime-3: #c0eb75;\n --rmr-hue-lime-4: #a9e34b;\n --rmr-hue-lime-5: #94d82d;\n --rmr-hue-lime-6: #82c91e;\n --rmr-hue-lime-7: #74b816;\n --rmr-hue-lime-8: #66a80f;\n --rmr-hue-lime-9: #5c940d;\n --rmr-hue-yellow-0: #fff9db;\n --rmr-hue-yellow-1: #fff3bf;\n --rmr-hue-yellow-2: #ffec99;\n --rmr-hue-yellow-3: #ffe066;\n --rmr-hue-yellow-4: #ffd43b;\n --rmr-hue-yellow-5: #fcc419;\n --rmr-hue-yellow-6: #fab005;\n --rmr-hue-yellow-7: #f59f00;\n --rmr-hue-yellow-8: #f08c00;\n --rmr-hue-yellow-9: #e67700;\n --rmr-hue-orange-0: #fff4e6;\n --rmr-hue-orange-1: #ffe8cc;\n --rmr-hue-orange-2: #ffd8a8;\n --rmr-hue-orange-3: #ffc078;\n --rmr-hue-orange-4: #ffa94d;\n --rmr-hue-orange-5: #ff922b;\n --rmr-hue-orange-6: #fd7e14;\n --rmr-hue-orange-7: #f76707;\n --rmr-hue-orange-8: #e8590c;\n --rmr-hue-orange-9: #d9480f;\n --rmr-radius-border: 0.25rem;\n --rmr-radius-extra: 0.5rem;\n --rmr-radius-circle: 50%;\n --rmr-font-family-default: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,\n 'Helvetica Neue', sans-serif;\n --rmr-font-family-heading: inherit;\n --rmr-font-family-mono: Menlo, monospace;\n --rmr-font-size-0: 12px;\n --rmr-font-size-1: 14px;\n --rmr-font-size-2: 16px;\n --rmr-font-size-3: 20px;\n --rmr-font-size-4: 24px;\n --rmr-font-size-5: 32px;\n --rmr-font-size-6: 48px;\n --rmr-font-size-7: 64px;\n --rmr-font-size-8: 96px;\n --rmr-font-size-default: 16px;\n --rmr-space-1: 4px;\n --rmr-space-2: 8px;\n --rmr-space-3: 16px;\n --rmr-space-4: 32px;\n --rmr-space-5: 64px;\n --rmr-space-6: 128px;\n --rmr-space-7: 256px;\n --rmr-space-8: 512px;\n --rmr-font-weight-bold: 700;\n --rmr-font-weight-default: 400;\n --rmr-font-weight-heading: 700;\n --rmr-letter-spacing-tight: -1px;\n --rmr-letter-spacing-default: normal;\n --rmr-letter-spacing-loose: 1px;\n --rmr-letter-spacing-wide: 3px;\n --rmr-line-height-heading: 1.25em;\n --rmr-line-height-default: 1.5em;\n --rmr-box-shadow-1: 0 1px 1px rgba(10, 31, 68, 0.08);\n --rmr-box-shadow-2: 0 1px 1px rgba(10, 31, 68, 0.1);\n --rmr-box-shadow-3: 0 1px 1px rgba(10, 31, 68, 0.12);\n\n font-family: var(--rmr-font-family-default);\n line-height: var(--rmr-line-height-default);\n font-weight: var(--rmr-font-weight-default);\n}\n.remirror-theme h1,\n.remirror-theme h2,\n.remirror-theme h3,\n.remirror-theme h4,\n.remirror-theme h5,\n.remirror-theme h6 {\n color: var(--rmr-color-text);\n font-family: var(--rmr-font-family-heading);\n line-height: var(--rmr-line-height-heading);\n font-weight: var(--rmr-font-weight-heading);\n}\n.remirror-theme h1 {\n font-size: var(--rmr-font-size-5);\n}\n.remirror-theme h2 {\n font-size: var(--rmr-font-size-4);\n}\n.remirror-theme h3 {\n font-size: var(--rmr-font-size-3);\n}\n.remirror-theme h4 {\n font-size: var(--rmr-font-size-2);\n}\n.remirror-theme h5 {\n font-size: var(--rmr-font-size-1);\n}\n.remirror-theme h6 {\n font-size: var(--rmr-font-size-0);\n}\n.remirror-theme .ProseMirror {\n min-height: var(--rmr-space-6);\n box-shadow: var(--rmr-color-border) 0px 0px 0px 0.1em;\n padding: var(--rmr-space-3);\n border-radius: var(--rmr-radius-border);\n outline: none;\n}\n.remirror-theme .ProseMirror:active,\n.remirror-theme .ProseMirror:focus {\n box-shadow: var(--rmr-color-outline) 0px 0px 0px 0.2em;\n}\n.remirror-theme .ProseMirror p,\n.remirror-theme .ProseMirror h1,\n.remirror-theme .ProseMirror h2,\n.remirror-theme .ProseMirror h3,\n.remirror-theme .ProseMirror h4,\n.remirror-theme .ProseMirror h4,\n.remirror-theme .ProseMirror h5,\n.remirror-theme .ProseMirror h6,\n.remirror-theme .ProseMirror span {\n margin: 0;\n /* margin-bottom: var(--rmr-space-2); */\n}\n/*\n Need to explicitly set config path, otherwise it may fail to resolve when\n built from outside packages/ui.\n*/\n/*! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com\n */\n/*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n::before,\n::after {\n --tw-content: '';\n}\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n5. Use the user's configured `sans` font-feature-settings by default.\n6. Use the user's configured `sans` font-variation-settings by default.\n7. Disable tap highlights on iOS\n*/\nhtml,\n:host {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: 'Roboto', sans-serif; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n -webkit-tap-highlight-color: transparent; /* 7 */\n}\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n/*\nRemove the default font size and weight for headings.\n*/\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\na {\n color: inherit;\n text-decoration: inherit;\n}\n/*\nAdd the correct font weight in Edge and Safari.\n*/\nb,\nstrong {\n font-weight: bolder;\n}\n/*\n1. Use the user's configured `mono` font-family by default.\n2. Use the user's configured `mono` font-feature-settings by default.\n3. Use the user's configured `mono` font-variation-settings by default.\n4. Correct the odd `em` font sizing in all browsers.\n*/\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-feature-settings: normal; /* 2 */\n font-variation-settings: normal; /* 3 */\n font-size: 1em; /* 4 */\n}\n/*\nAdd the correct font size in all browsers.\n*/\nsmall {\n font-size: 80%;\n}\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsub {\n bottom: -0.25em;\n}\nsup {\n top: -0.5em;\n}\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-feature-settings: inherit; /* 1 */\n font-variation-settings: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\nbutton,\nselect {\n text-transform: none;\n}\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n:-moz-focusring {\n outline: auto;\n}\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n:-moz-ui-invalid {\n box-shadow: none;\n}\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\nprogress {\n vertical-align: baseline;\n}\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n/*\nAdd the correct display in Chrome and Safari.\n*/\nsummary {\n display: list-item;\n}\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\nfieldset {\n margin: 0;\n padding: 0;\n}\nlegend {\n padding: 0;\n}\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n/*\nReset default styling for dialogs.\n*/\ndialog {\n padding: 0;\n}\n/*\nPrevent resizing textareas horizontally by default.\n*/\ntextarea {\n resize: vertical;\n}\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n/*\nSet the default cursor for buttons.\n*/\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n/* :host for use with Shadow DOM, copied from the TailwindCSS prelude */\n:host {\n --background: 0 0% 100%;\n --foreground: 222.2 84% 4.9%;\n\n --card: 0 0% 100%;\n --card-foreground: 222.2 84% 4.9%;\n\n --popover: 0 0% 100%;\n --popover-foreground: 222.2 84% 4.9%;\n\n --primary: 222.2 47.4% 11.2%;\n --primary-foreground: 210 40% 98%;\n\n --secondary: 210 40% 96.1%;\n --secondary-foreground: 222.2 47.4% 11.2%;\n\n --muted: 0 0% 57.3%;\n --muted-foreground: 215.4 16.3% 46.9%;\n\n --accent: 273 60% 51%;\n --accent-foreground: 110 10% 94%;\n\n --destructive: 0 84.2% 60.2%;\n --destructive-foreground: 210 40% 98%;\n\n --border: 214.3 31.8% 91.4%;\n --input: 214.3 31.8% 91.4%;\n --ring: 222.2 84% 4.9%;\n\n --radius: 0.5rem;\n }\n:root {\n --background: 110 10% 94%;\n --foreground: 222.2 84% 4.9%;\n\n --card: 0 0% 100%;\n --card-foreground: 222.2 84% 4.9%;\n\n --popover: 0 0% 100%;\n --popover-foreground: 222.2 84% 4.9%;\n\n --primary: 222.2 47.4% 11.2%;\n --primary-foreground: 210 40% 98%;\n\n --secondary: 210 40% 96.1%;\n --secondary-foreground: 222.2 47.4% 11.2%;\n\n --muted: 0 0% 57.3%;\n --muted-foreground: 215.4 16.3% 46.9%;\n\n --accent: 273 60% 51%;\n --accent-foreground: 110 10% 94%;\n\n --destructive: 0 84.2% 60.2%;\n --destructive-foreground: 210 40% 98%;\n\n --border: 214.3 31.8% 91.4%;\n --input: 212.7 9.1% 76.3%;\n --ring: 222.2 84% 4.9%;\n\n --radius: 0.5rem;\n }\n/* dark theme */\n*[data-mode=\"dark\"] {\n --background: 0 0% 4%;\n --foreground: 210 40% 98%;\n\n --card: 222.2 84% 4.9%;\n --card-foreground: 210 40% 98%;\n\n --popover: 222.2 84% 4.9%;\n --popover-foreground: 210 40% 98%;\n\n --primary: 210 40% 98%;\n --primary-foreground: 222.2 47.4% 11.2%;\n\n --secondary: 217.2 32.6% 17.5%;\n --secondary-foreground: 210 40% 98%;\n\n --muted: 178 23% 76%;\n --muted-foreground: 215 20.2% 65.1%;\n\n --accent: 159 60% 51%;\n --accent-foreground: 210 40% 98%;\n\n --destructive: 0 62.8% 30.6%;\n --destructive-foreground: 210 40% 98%;\n\n --border: 217.2 32.6% 17.5%;\n --input: 217.2 32.6% 17.5%;\n --ring: 212.7 26.8% 83.9%;\n }\n* {\n border-color: hsl(var(--border));\n}\nbody {\n background-color: hsl(var(--background));\n color: hsl(var(--foreground));\n}\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.val-rich-text-editor {\n white-space: break-spaces;\n }\n.val-rich-text-editor h1 {\n font-size: 1.5rem;\n line-height: 2rem;\n font-weight: 700;\n}\n.val-rich-text-editor h2 {\n font-size: 1.25rem;\n line-height: 1.75rem;\n font-weight: 700;\n}\n.val-rich-text-editor h3 {\n font-size: 1.125rem;\n line-height: 1.75rem;\n font-weight: 700;\n}\n.val-rich-text-editor h4 {\n font-size: 1rem;\n line-height: 1.5rem;\n font-weight: 700;\n}\n.val-rich-text-editor h5 {\n font-size: 0.875rem;\n line-height: 1.25rem;\n font-weight: 700;\n}\n.val-rich-text-editor h6 {\n font-size: 0.75rem;\n line-height: 1rem;\n font-weight: 700;\n}\n.val-rich-text-editor p {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.val-rich-text-editor ul {\n list-style-type: disc;\n}\n.val-rich-text-editor ol {\n list-style-type: decimal;\n}\n.val-rich-text-editor li {\n margin-left: 20px;\n}\n.val-rich-text-editor a {\n color: hsl(var(--accent));\n text-decoration-line: underline;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.invisible {\n visibility: hidden;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.sticky {\n position: sticky;\n}\n.inset-0 {\n inset: 0px;\n}\n.inset-y-0 {\n top: 0px;\n bottom: 0px;\n}\n.-left-2 {\n left: -0.5rem;\n}\n.-right-\\[10px\\] {\n right: -10px;\n}\n.-top-\\[10px\\] {\n top: -10px;\n}\n.-top-\\[4px\\] {\n top: -4px;\n}\n.bottom-0 {\n bottom: 0px;\n}\n.left-0 {\n left: 0px;\n}\n.left-1 {\n left: 0.25rem;\n}\n.left-2 {\n left: 0.5rem;\n}\n.left-\\[16px\\] {\n left: 16px;\n}\n.left-\\[17px\\] {\n left: 17px;\n}\n.left-\\[1px\\] {\n left: 1px;\n}\n.left-\\[50\\%\\] {\n left: 50%;\n}\n.right-0 {\n right: 0px;\n}\n.right-1 {\n right: 0.25rem;\n}\n.right-4 {\n right: 1rem;\n}\n.top-0 {\n top: 0px;\n}\n.top-1\\/2 {\n top: 50%;\n}\n.top-4 {\n top: 1rem;\n}\n.top-\\[16px\\] {\n top: 16px;\n}\n.top-\\[4px\\] {\n top: 4px;\n}\n.top-\\[50\\%\\] {\n top: 50%;\n}\n.z-5 {\n z-index: 5;\n}\n.z-50 {\n z-index: 50;\n}\n.z-\\[1\\] {\n z-index: 1;\n}\n.z-\\[5\\] {\n z-index: 5;\n}\n.z-overlay {\n z-index: 4;\n}\n.m-4 {\n margin: 1rem;\n}\n.-mx-1 {\n margin-left: -0.25rem;\n margin-right: -0.25rem;\n}\n.my-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n}\n.ml-0 {\n margin-left: 0px;\n}\n.ml-auto {\n margin-left: auto;\n}\n.mr-2 {\n margin-right: 0.5rem;\n}\n.mt-2 {\n margin-top: 0.5rem;\n}\n.block {\n display: block;\n}\n.inline {\n display: inline;\n}\n.flex {\n display: flex;\n}\n.inline-flex {\n display: inline-flex;\n}\n.table {\n display: table;\n}\n.grid {\n display: grid;\n}\n.hidden {\n display: none;\n}\n.aspect-square {\n aspect-ratio: 1 / 1;\n}\n.h-10 {\n height: 2.5rem;\n}\n.h-11 {\n height: 2.75rem;\n}\n.h-2 {\n height: 0.5rem;\n}\n.h-2\\.5 {\n height: 0.625rem;\n}\n.h-3 {\n height: 0.75rem;\n}\n.h-3\\.5 {\n height: 0.875rem;\n}\n.h-4 {\n height: 1rem;\n}\n.h-7 {\n height: 1.75rem;\n}\n.h-9 {\n height: 2.25rem;\n}\n.h-\\[100\\] {\n height: 100;\n}\n.h-\\[12px\\] {\n height: 12px;\n}\n.h-\\[14px\\] {\n height: 14px;\n}\n.h-\\[16px\\] {\n height: 16px;\n}\n.h-\\[18px\\] {\n height: 18px;\n}\n.h-\\[1px\\] {\n height: 1px;\n}\n.h-\\[20px\\] {\n height: 20px;\n}\n.h-\\[22px\\] {\n height: 22px;\n}\n.h-\\[24px\\] {\n height: 24px;\n}\n.h-\\[32px\\] {\n height: 32px;\n}\n.h-\\[34px\\] {\n height: 34px;\n}\n.h-\\[50px\\] {\n height: 50px;\n}\n.h-\\[calc\\(100svh-32px\\)\\] {\n height: calc(100svh - 32px);\n}\n.h-\\[var\\(--radix-select-trigger-height\\)\\] {\n height: var(--radix-select-trigger-height);\n}\n.h-full {\n height: 100%;\n}\n.h-px {\n height: 1px;\n}\n.h-screen {\n height: 100vh;\n}\n.max-h-\\[300px\\] {\n max-height: 300px;\n}\n.max-h-\\[500px\\] {\n max-height: 500px;\n}\n.min-h-\\[100px\\] {\n min-height: 100px;\n}\n.w-0 {\n width: 0px;\n}\n.w-10 {\n width: 2.5rem;\n}\n.w-2 {\n width: 0.5rem;\n}\n.w-2\\.5 {\n width: 0.625rem;\n}\n.w-3 {\n width: 0.75rem;\n}\n.w-3\\.5 {\n width: 0.875rem;\n}\n.w-4 {\n width: 1rem;\n}\n.w-5 {\n width: 1.25rem;\n}\n.w-7 {\n width: 1.75rem;\n}\n.w-72 {\n width: 18rem;\n}\n.w-9 {\n width: 2.25rem;\n}\n.w-\\[12px\\] {\n width: 12px;\n}\n.w-\\[14px\\] {\n width: 14px;\n}\n.w-\\[16px\\] {\n width: 16px;\n}\n.w-\\[1px\\] {\n width: 1px;\n}\n.w-\\[24px\\] {\n width: 24px;\n}\n.w-\\[300px\\] {\n width: 300px;\n}\n.w-\\[32px\\] {\n width: 32px;\n}\n.w-\\[34px\\] {\n width: 34px;\n}\n.w-\\[44px\\] {\n width: 44px;\n}\n.w-\\[calc\\(100\\%-32px-50px-16px\\)\\] {\n width: calc(100% - 32px - 50px - 16px);\n}\n.w-fit {\n width: -moz-fit-content;\n width: fit-content;\n}\n.w-full {\n width: 100%;\n}\n.w-screen {\n width: 100vw;\n}\n.min-w-\\[200px\\] {\n min-width: 200px;\n}\n.min-w-\\[320px\\] {\n min-width: 320px;\n}\n.min-w-\\[8rem\\] {\n min-width: 8rem;\n}\n.min-w-\\[var\\(--radix-select-trigger-width\\)\\] {\n min-width: var(--radix-select-trigger-width);\n}\n.max-w-\\[10vw\\] {\n max-width: 10vw;\n}\n.max-w-\\[300px\\] {\n max-width: 300px;\n}\n.max-w-lg {\n max-width: 32rem;\n}\n.max-w-xl {\n max-width: 36rem;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.flex-shrink-0 {\n flex-shrink: 0;\n}\n.shrink-0 {\n flex-shrink: 0;\n}\n.border-collapse {\n border-collapse: collapse;\n}\n.-translate-y-1\\/2 {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.translate-x-\\[-50\\%\\] {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.translate-y-\\[-50\\%\\] {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.animate-spin {\n animation: spin 1s linear infinite;\n}\n.cursor-col-resize {\n cursor: col-resize;\n}\n.cursor-default {\n cursor: default;\n}\n.cursor-grab {\n cursor: grab;\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.cursor-se-resize {\n cursor: se-resize;\n}\n.touch-none {\n touch-action: none;\n}\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.resize {\n resize: both;\n}\n.appearance-none {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.grid-cols-\\[1fr_min-content\\] {\n grid-template-columns: 1fr min-content;\n}\n.grid-cols-\\[min-content_1fr\\] {\n grid-template-columns: min-content 1fr;\n}\n.grid-rows-\\[1fr\\2c _min-content\\] {\n grid-template-rows: 1fr min-content;\n}\n.flex-row {\n flex-direction: row;\n}\n.flex-col {\n flex-direction: column;\n}\n.flex-col-reverse {\n flex-direction: column-reverse;\n}\n.items-start {\n align-items: flex-start;\n}\n.items-end {\n align-items: flex-end;\n}\n.items-center {\n align-items: center;\n}\n.justify-start {\n justify-content: flex-start;\n}\n.justify-end {\n justify-content: flex-end;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.gap-1 {\n gap: 0.25rem;\n}\n.gap-2 {\n gap: 0.5rem;\n}\n.gap-3 {\n gap: 0.75rem;\n}\n.gap-4 {\n gap: 1rem;\n}\n.gap-\\[0\\.5em\\] {\n gap: 0.5em;\n}\n.gap-x-1 {\n -moz-column-gap: 0.25rem;\n column-gap: 0.25rem;\n}\n.gap-x-2 {\n -moz-column-gap: 0.5rem;\n column-gap: 0.5rem;\n}\n.gap-x-4 {\n -moz-column-gap: 1rem;\n column-gap: 1rem;\n}\n.gap-x-5 {\n -moz-column-gap: 1.25rem;\n column-gap: 1.25rem;\n}\n.gap-y-1 {\n row-gap: 0.25rem;\n}\n.gap-y-2 {\n row-gap: 0.5rem;\n}\n.gap-y-4 {\n row-gap: 1rem;\n}\n.gap-y-5 {\n row-gap: 1.25rem;\n}\n.space-x-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.25rem * var(--tw-space-x-reverse));\n margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.space-y-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));\n}\n.space-y-1\\.5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));\n}\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n.divide-y > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-y-reverse: 0;\n border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));\n border-bottom-width: calc(1px * var(--tw-divide-y-reverse));\n}\n.divide-input > :not([hidden]) ~ :not([hidden]) {\n border-color: hsl(var(--input));\n}\n.overflow-hidden {\n overflow: hidden;\n}\n.overflow-scroll {\n overflow: scroll;\n}\n.overflow-y-auto {\n overflow-y: auto;\n}\n.overflow-x-hidden {\n overflow-x: hidden;\n}\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.whitespace-nowrap {\n white-space: nowrap;\n}\n.rounded-\\[inherit\\] {\n border-radius: inherit;\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-lg {\n border-radius: var(--radius);\n}\n.rounded-md {\n border-radius: calc(var(--radius) - 2px);\n}\n.rounded-sm {\n border-radius: calc(var(--radius) - 4px);\n}\n.rounded-b-none {\n border-bottom-right-radius: 0px;\n border-bottom-left-radius: 0px;\n}\n.rounded-b-sm {\n border-bottom-right-radius: calc(var(--radius) - 4px);\n border-bottom-left-radius: calc(var(--radius) - 4px);\n}\n.rounded-t-none {\n border-top-left-radius: 0px;\n border-top-right-radius: 0px;\n}\n.border {\n border-width: 1px;\n}\n.border-2 {\n border-width: 2px;\n}\n.border-\\[2px\\] {\n border-width: 2px;\n}\n.border-b {\n border-bottom-width: 1px;\n}\n.border-b-0 {\n border-bottom-width: 0px;\n}\n.border-b-2 {\n border-bottom-width: 2px;\n}\n.border-l {\n border-left-width: 1px;\n}\n.border-l-2 {\n border-left-width: 2px;\n}\n.border-r {\n border-right-width: 1px;\n}\n.border-t {\n border-top-width: 1px;\n}\n.border-t-0 {\n border-top-width: 0px;\n}\n.border-accent {\n border-color: hsl(var(--accent));\n}\n.border-border {\n border-color: hsl(var(--border));\n}\n.border-input {\n border-color: hsl(var(--input));\n}\n.border-primary {\n border-color: hsl(var(--primary));\n}\n.border-transparent {\n border-color: transparent;\n}\n.border-l-transparent {\n border-left-color: transparent;\n}\n.border-t-transparent {\n border-top-color: transparent;\n}\n.bg-accent {\n background-color: hsl(var(--accent));\n}\n.bg-background {\n background-color: hsl(var(--background));\n}\n.bg-background\\/80 {\n background-color: hsl(var(--background) / 0.8);\n}\n.bg-border {\n background-color: hsl(var(--border));\n}\n.bg-card {\n background-color: hsl(var(--card));\n}\n.bg-card-foreground {\n background-color: hsl(var(--card-foreground));\n}\n.bg-destructive {\n background-color: hsl(var(--destructive));\n}\n.bg-muted {\n background-color: hsl(var(--muted));\n}\n.bg-popover {\n background-color: hsl(var(--popover));\n}\n.bg-primary {\n background-color: hsl(var(--primary));\n}\n.bg-secondary {\n background-color: hsl(var(--secondary));\n}\n.bg-transparent {\n background-color: transparent;\n}\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n.bg-gradient-to-b {\n background-image: linear-gradient(to bottom, var(--tw-gradient-stops));\n}\n.bg-gradient-to-br {\n background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));\n}\n.from-background\\/90 {\n --tw-gradient-from: hsl(var(--background) / 0.9) var(--tw-gradient-from-position);\n --tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-card {\n --tw-gradient-from: hsl(var(--card)) var(--tw-gradient-from-position);\n --tw-gradient-to: hsl(var(--card) / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-transparent {\n --tw-gradient-from: transparent var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-40\\% {\n --tw-gradient-from-position: 40%;\n}\n.from-50\\% {\n --tw-gradient-from-position: 50%;\n}\n.to-background {\n --tw-gradient-to: hsl(var(--background)) var(--tw-gradient-to-position);\n}\n.fill-current {\n fill: currentColor;\n}\n.stroke-\\[2px\\] {\n stroke-width: 2px;\n}\n.stroke-\\[3px\\] {\n stroke-width: 3px;\n}\n.object-contain {\n -o-object-fit: contain;\n object-fit: contain;\n}\n.p-0 {\n padding: 0px;\n}\n.p-1 {\n padding: 0.25rem;\n}\n.p-10 {\n padding: 2.5rem;\n}\n.p-2 {\n padding: 0.5rem;\n}\n.p-3 {\n padding: 0.75rem;\n}\n.p-4 {\n padding: 1rem;\n}\n.p-6 {\n padding: 1.5rem;\n}\n.p-8 {\n padding: 2rem;\n}\n.p-\\[1px\\] {\n padding: 1px;\n}\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n.px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n.px-\\[24px\\] {\n padding-left: 24px;\n padding-right: 24px;\n}\n.px-\\[2px\\] {\n padding-left: 2px;\n padding-right: 2px;\n}\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n.py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n.py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n.py-6 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n.pb-0 {\n padding-bottom: 0px;\n}\n.pb-4 {\n padding-bottom: 1rem;\n}\n.pb-8 {\n padding-bottom: 2rem;\n}\n.pl-0 {\n padding-left: 0px;\n}\n.pl-6 {\n padding-left: 1.5rem;\n}\n.pl-8 {\n padding-left: 2rem;\n}\n.pl-\\[300px\\] {\n padding-left: 300px;\n}\n.pr-2 {\n padding-right: 0.5rem;\n}\n.pr-4 {\n padding-right: 1rem;\n}\n.pt-0 {\n padding-top: 0px;\n}\n.pt-1 {\n padding-top: 0.25rem;\n}\n.pt-2 {\n padding-top: 0.5rem;\n}\n.pt-4 {\n padding-top: 1rem;\n}\n.text-left {\n text-align: left;\n}\n.text-center {\n text-align: center;\n}\n.font-sans {\n font-family: 'Roboto', sans-serif;\n}\n.font-serif {\n font-family: 'Space Mono', monospace;\n}\n.text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n.text-\\[0\\.8rem\\] {\n font-size: 0.8rem;\n}\n.text-\\[12px\\] {\n font-size: 12px;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.font-bold {\n font-weight: 700;\n}\n.font-medium {\n font-weight: 500;\n}\n.font-normal {\n font-weight: 400;\n}\n.font-semibold {\n font-weight: 600;\n}\n.uppercase {\n text-transform: uppercase;\n}\n.italic {\n font-style: italic;\n}\n.leading-none {\n line-height: 1;\n}\n.tracking-tight {\n letter-spacing: -0.025em;\n}\n.tracking-widest {\n letter-spacing: 0.1em;\n}\n.text-accent {\n color: hsl(var(--accent));\n}\n.text-accent-foreground {\n color: hsl(var(--accent-foreground));\n}\n.text-background {\n color: hsl(var(--background));\n}\n.text-card-foreground {\n color: hsl(var(--card-foreground));\n}\n.text-current {\n color: currentColor;\n}\n.text-destructive {\n color: hsl(var(--destructive));\n}\n.text-destructive-foreground {\n color: hsl(var(--destructive-foreground));\n}\n.text-foreground {\n color: hsl(var(--foreground));\n}\n.text-muted {\n color: hsl(var(--muted));\n}\n.text-muted-foreground {\n color: hsl(var(--muted-foreground));\n}\n.text-popover-foreground {\n color: hsl(var(--popover-foreground));\n}\n.text-primary {\n color: hsl(var(--primary));\n}\n.text-primary-foreground {\n color: hsl(var(--primary-foreground));\n}\n.text-secondary-foreground {\n color: hsl(var(--secondary-foreground));\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.underline {\n text-decoration-line: underline;\n}\n.line-through {\n text-decoration-line: line-through;\n}\n.underline-offset-4 {\n text-underline-offset: 4px;\n}\n.antialiased {\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.opacity-0 {\n opacity: 0;\n}\n.opacity-100 {\n opacity: 1;\n}\n.opacity-50 {\n opacity: 0.5;\n}\n.opacity-60 {\n opacity: 0.6;\n}\n.opacity-70 {\n opacity: 0.7;\n}\n.mix-blend-difference {\n mix-blend-mode: difference;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.outline {\n outline-style: solid;\n}\n.ring-0 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.ring-offset-background {\n --tw-ring-offset-color: hsl(var(--background));\n}\n.drop-shadow-2xl {\n --tw-drop-shadow: drop-shadow(0 25px 25px rgb(0 0 0 / 0.15));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.drop-shadow-\\[0px_0px_12px_hsl\\(var\\(--accent\\)\\)\\] {\n --tw-drop-shadow: drop-shadow(0px 0px 12px hsl(var(--accent)));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.backdrop-blur-lg {\n --tw-backdrop-blur: blur(16px);\n -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n.backdrop-blur-sm {\n --tw-backdrop-blur: blur(4px);\n -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-colors {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.duration-200 {\n transition-duration: 200ms;\n}\n@keyframes enter {\n from {\n opacity: var(--tw-enter-opacity, 1);\n transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));\n }\n}\n@keyframes exit {\n to {\n opacity: var(--tw-exit-opacity, 1);\n transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));\n }\n}\n.animate-in {\n animation-name: enter;\n animation-duration: 150ms;\n --tw-enter-opacity: initial;\n --tw-enter-scale: initial;\n --tw-enter-rotate: initial;\n --tw-enter-translate-x: initial;\n --tw-enter-translate-y: initial;\n}\n.fade-in-0 {\n --tw-enter-opacity: 0;\n}\n.zoom-in-95 {\n --tw-enter-scale: .95;\n}\n.duration-200 {\n animation-duration: 200ms;\n}\n.file\\:border-0::file-selector-button {\n border-width: 0px;\n}\n.file\\:bg-transparent::file-selector-button {\n background-color: transparent;\n}\n.file\\:text-sm::file-selector-button {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.file\\:font-medium::file-selector-button {\n font-weight: 500;\n}\n.placeholder\\:text-muted-foreground::-moz-placeholder {\n color: hsl(var(--muted-foreground));\n}\n.placeholder\\:text-muted-foreground::placeholder {\n color: hsl(var(--muted-foreground));\n}\n.focus-within\\:relative:focus-within {\n position: relative;\n}\n.hover\\:w-\\[3px\\]:hover {\n width: 3px;\n}\n.hover\\:bg-accent:hover {\n background-color: hsl(var(--accent));\n}\n.hover\\:bg-border:hover {\n background-color: hsl(var(--border));\n}\n.hover\\:bg-destructive\\/90:hover {\n background-color: hsl(var(--destructive) / 0.9);\n}\n.hover\\:bg-muted:hover {\n background-color: hsl(var(--muted));\n}\n.hover\\:bg-primary:hover {\n background-color: hsl(var(--primary));\n}\n.hover\\:bg-primary\\/90:hover {\n background-color: hsl(var(--primary) / 0.9);\n}\n.hover\\:bg-secondary\\/80:hover {\n background-color: hsl(var(--secondary) / 0.8);\n}\n.hover\\:text-accent-foreground:hover {\n color: hsl(var(--accent-foreground));\n}\n.hover\\:text-muted-foreground:hover {\n color: hsl(var(--muted-foreground));\n}\n.hover\\:text-primary-foreground:hover {\n color: hsl(var(--primary-foreground));\n}\n.hover\\:underline:hover {\n text-decoration-line: underline;\n}\n.hover\\:opacity-100:hover {\n opacity: 1;\n}\n.focus\\:bg-accent:focus {\n background-color: hsl(var(--accent));\n}\n.focus\\:bg-primary:focus {\n background-color: hsl(var(--primary));\n}\n.focus\\:text-accent-foreground:focus {\n color: hsl(var(--accent-foreground));\n}\n.focus\\:text-primary-foreground:focus {\n color: hsl(var(--primary-foreground));\n}\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus\\:ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:ring-ring:focus {\n --tw-ring-color: hsl(var(--ring));\n}\n.focus\\:ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:outline-none:focus-visible {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus-visible\\:outline-accent:focus-visible {\n outline-color: hsl(var(--accent));\n}\n.focus-visible\\:ring-2:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:ring-ring:focus-visible {\n --tw-ring-color: hsl(var(--ring));\n}\n.focus-visible\\:ring-offset-2:focus-visible {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:ring-offset-background:focus-visible {\n --tw-ring-offset-color: hsl(var(--background));\n}\n.disabled\\:pointer-events-none:disabled {\n pointer-events: none;\n}\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n.disabled\\:opacity-50:disabled {\n opacity: 0.5;\n}\n.peer:disabled ~ .peer-disabled\\:cursor-not-allowed {\n cursor: not-allowed;\n}\n.peer:disabled ~ .peer-disabled\\:opacity-70 {\n opacity: 0.7;\n}\n.aria-selected\\:bg-accent[aria-selected=\"true\"] {\n background-color: hsl(var(--accent));\n}\n.aria-selected\\:text-accent-foreground[aria-selected=\"true\"] {\n color: hsl(var(--accent-foreground));\n}\n.aria-selected\\:opacity-100[aria-selected=\"true\"] {\n opacity: 1;\n}\n.data-\\[disabled\\]\\:pointer-events-none[data-disabled] {\n pointer-events: none;\n}\n.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom] {\n --tw-translate-y: 0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left] {\n --tw-translate-x: -0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[side\\=right\\]\\:translate-x-1[data-side=right] {\n --tw-translate-x: 0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top] {\n --tw-translate-y: -0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:translate-x-5[data-state=checked] {\n --tw-translate-x: 1.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:translate-x-\\[15px\\][data-state=checked] {\n --tw-translate-x: 15px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked] {\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n@keyframes accordion-up {\n from {\n height: var(--radix-accordion-content-height);\n }\n to {\n height: 0;\n }\n}\n.data-\\[state\\=closed\\]\\:animate-accordion-up[data-state=closed] {\n animation: accordion-up 0.2s ease-out;\n}\n@keyframes accordion-down {\n from {\n height: 0;\n }\n to {\n height: var(--radix-accordion-content-height);\n }\n}\n.data-\\[state\\=open\\]\\:animate-accordion-down[data-state=open] {\n animation: accordion-down 0.2s ease-out;\n}\n.data-\\[state\\=active\\]\\:bg-background[data-state=active] {\n background-color: hsl(var(--background));\n}\n.data-\\[state\\=checked\\]\\:bg-accent[data-state=checked] {\n background-color: hsl(var(--accent));\n}\n.data-\\[state\\=checked\\]\\:bg-primary[data-state=checked] {\n background-color: hsl(var(--primary));\n}\n.data-\\[state\\=checked\\]\\:bg-slate-800[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity));\n}\n.data-\\[state\\=on\\]\\:bg-accent[data-state=on] {\n background-color: hsl(var(--accent));\n}\n.data-\\[state\\=open\\]\\:bg-accent[data-state=open] {\n background-color: hsl(var(--accent));\n}\n.data-\\[state\\=unchecked\\]\\:bg-primary[data-state=unchecked] {\n background-color: hsl(var(--primary));\n}\n.data-\\[state\\=unchecked\\]\\:bg-slate-800[data-state=unchecked] {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity));\n}\n.data-\\[state\\=active\\]\\:text-foreground[data-state=active] {\n color: hsl(var(--foreground));\n}\n.data-\\[state\\=checked\\]\\:text-primary-foreground[data-state=checked] {\n color: hsl(var(--primary-foreground));\n}\n.data-\\[state\\=on\\]\\:text-accent-foreground[data-state=on] {\n color: hsl(var(--accent-foreground));\n}\n.data-\\[state\\=open\\]\\:text-muted-foreground[data-state=open] {\n color: hsl(var(--muted-foreground));\n}\n.data-\\[disabled\\]\\:opacity-50[data-disabled] {\n opacity: 0.5;\n}\n.data-\\[state\\=active\\]\\:shadow-sm[data-state=active] {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.data-\\[state\\=open\\]\\:animate-in[data-state=open] {\n animation-name: enter;\n animation-duration: 150ms;\n --tw-enter-opacity: initial;\n --tw-enter-scale: initial;\n --tw-enter-rotate: initial;\n --tw-enter-translate-x: initial;\n --tw-enter-translate-y: initial;\n}\n.data-\\[state\\=closed\\]\\:animate-out[data-state=closed] {\n animation-name: exit;\n animation-duration: 150ms;\n --tw-exit-opacity: initial;\n --tw-exit-scale: initial;\n --tw-exit-rotate: initial;\n --tw-exit-translate-x: initial;\n --tw-exit-translate-y: initial;\n}\n.data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed] {\n --tw-exit-opacity: 0;\n}\n.data-\\[state\\=open\\]\\:fade-in-0[data-state=open] {\n --tw-enter-opacity: 0;\n}\n.data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed] {\n --tw-exit-scale: .95;\n}\n.data-\\[state\\=open\\]\\:zoom-in-95[data-state=open] {\n --tw-enter-scale: .95;\n}\n.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom] {\n --tw-enter-translate-y: -0.5rem;\n}\n.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left] {\n --tw-enter-translate-x: 0.5rem;\n}\n.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right] {\n --tw-enter-translate-x: -0.5rem;\n}\n.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top] {\n --tw-enter-translate-y: 0.5rem;\n}\n.data-\\[state\\=closed\\]\\:slide-out-to-left-1\\/2[data-state=closed] {\n --tw-exit-translate-x: -50%;\n}\n.data-\\[state\\=closed\\]\\:slide-out-to-top-\\[48\\%\\][data-state=closed] {\n --tw-exit-translate-y: -48%;\n}\n.data-\\[state\\=open\\]\\:slide-in-from-left-1\\/2[data-state=open] {\n --tw-enter-translate-x: -50%;\n}\n.data-\\[state\\=open\\]\\:slide-in-from-top-\\[48\\%\\][data-state=open] {\n --tw-enter-translate-y: -48%;\n}\n:is([data-mode=\"dark\"] .dark\\:border-white) {\n --tw-border-opacity: 1;\n border-color: rgb(255 255 255 / var(--tw-border-opacity));\n}\n@media (min-width: 640px) {\n .sm\\:mt-0 {\n margin-top: 0px;\n }\n .sm\\:flex-row {\n flex-direction: row;\n }\n .sm\\:justify-start {\n justify-content: flex-start;\n }\n .sm\\:justify-end {\n justify-content: flex-end;\n }\n .sm\\:space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n }\n .sm\\:space-x-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(1rem * var(--tw-space-x-reverse));\n margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));\n }\n .sm\\:space-y-0 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0px * var(--tw-space-y-reverse));\n }\n .sm\\:rounded-lg {\n border-radius: var(--radius);\n }\n .sm\\:text-left {\n text-align: left;\n }\n}\n@media (min-width: 768px) {\n .md\\:relative {\n position: relative;\n }\n .md\\:flex {\n display: flex;\n }\n .md\\:hidden {\n display: none;\n }\n .md\\:w-\\[300px\\] {\n width: 300px;\n }\n .md\\:w-full {\n width: 100%;\n }\n .md\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n .md\\:pl-0 {\n padding-left: 0px;\n }\n}\n.\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:bg-accent:has([aria-selected]) {\n background-color: hsl(var(--accent));\n}\n.first\\:\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:rounded-l-md:has([aria-selected]):first-child {\n border-top-left-radius: calc(var(--radius) - 2px);\n border-bottom-left-radius: calc(var(--radius) - 2px);\n}\n.last\\:\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:rounded-r-md:has([aria-selected]):last-child {\n border-top-right-radius: calc(var(--radius) - 2px);\n border-bottom-right-radius: calc(var(--radius) - 2px);\n}\n.\\[\\&\\[data-state\\=open\\]\\>svg\\]\\:rotate-180[data-state=open]>svg {\n --tw-rotate: 180deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.\\[\\&_\\[cmdk-group-heading\\]\\]\\:px-2 [cmdk-group-heading] {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.\\[\\&_\\[cmdk-group-heading\\]\\]\\:py-1\\.5 [cmdk-group-heading] {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n.\\[\\&_\\[cmdk-group-heading\\]\\]\\:text-xs [cmdk-group-heading] {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.\\[\\&_\\[cmdk-group-heading\\]\\]\\:font-medium [cmdk-group-heading] {\n font-weight: 500;\n}\n.\\[\\&_\\[cmdk-group-heading\\]\\]\\:text-muted-foreground [cmdk-group-heading] {\n color: hsl(var(--muted-foreground));\n}\n.\\[\\&_\\[cmdk-group\\]\\:not\\(\\[hidden\\]\\)_\\~\\[cmdk-group\\]\\]\\:pt-0 [cmdk-group]:not([hidden]) ~[cmdk-group] {\n padding-top: 0px;\n}\n.\\[\\&_\\[cmdk-group\\]\\]\\:px-2 [cmdk-group] {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.\\[\\&_\\[cmdk-input-wrapper\\]_svg\\]\\:h-5 [cmdk-input-wrapper] svg {\n height: 1.25rem;\n}\n.\\[\\&_\\[cmdk-input-wrapper\\]_svg\\]\\:w-5 [cmdk-input-wrapper] svg {\n width: 1.25rem;\n}\n.\\[\\&_\\[cmdk-input\\]\\]\\:h-12 [cmdk-input] {\n height: 3rem;\n}\n.\\[\\&_\\[cmdk-item\\]\\]\\:px-2 [cmdk-item] {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.\\[\\&_\\[cmdk-item\\]\\]\\:py-3 [cmdk-item] {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n.\\[\\&_\\[cmdk-item\\]_svg\\]\\:h-5 [cmdk-item] svg {\n height: 1.25rem;\n}\n.\\[\\&_\\[cmdk-item\\]_svg\\]\\:w-5 [cmdk-item] svg {\n width: 1.25rem;\n}\n";
|
|
88003
|
-
|
|
88004
|
-
|
|
88005
|
-
|
|
87425
|
+
const VAL_CSS_PATH = "/src/index.css";
|
|
87426
|
+
const VAL_APP_PATH = "/app";
|
|
87427
|
+
const VAL_APP_ID = "val-app";
|
|
87428
|
+
const IS_DEV = false;
|
|
88006
87429
|
export {
|
|
88007
|
-
|
|
88008
|
-
|
|
87430
|
+
IS_DEV,
|
|
87431
|
+
VAL_APP_ID,
|
|
87432
|
+
VAL_APP_PATH,
|
|
87433
|
+
VAL_CSS_PATH,
|
|
88009
87434
|
ValOverlay
|
|
88010
87435
|
};
|