@haklex/rich-editor-ui 0.17.1 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"QuoteAttributionPlugin.d.ts","sourceRoot":"","sources":["../../../src/components/quote-attribution/QuoteAttributionPlugin.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EASV,YAAY,EAEb,MAAM,OAAO,CAAC;AAkCf,wBAAgB,sBAAsB,IAAI,YAAY,GAAG,IAAI,CA0J5D"}
1
+ {"version":3,"file":"QuoteAttributionPlugin.d.ts","sourceRoot":"","sources":["../../../src/components/quote-attribution/QuoteAttributionPlugin.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EASV,YAAY,EAEb,MAAM,OAAO,CAAC;AAyDf,wBAAgB,sBAAsB,IAAI,YAAY,GAAG,IAAI,CA2C5D"}
@@ -1,7 +1,9 @@
1
1
  export declare const semanticClassNames: {
2
- readonly editor: "rich-quote-attribution-editor";
2
+ readonly overlay: "rich-quote-attribution-overlay";
3
+ readonly panel: "rich-quote-attribution-panel";
3
4
  readonly input: "rich-quote-attribution-input";
4
5
  };
5
- export declare const editor: string;
6
+ export declare const overlay: string;
7
+ export declare const panel: string;
6
8
  export declare const input: string;
7
9
  //# sourceMappingURL=styles.css.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/quote-attribution/styles.css.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB;;;CAGrB,CAAC;AAEX,eAAO,MAAM,MAAM,QAQjB,CAAC;AAEH,eAAO,MAAM,KAAK,QA6BhB,CAAC"}
1
+ {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/quote-attribution/styles.css.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAKX,eAAO,MAAM,OAAO,QAIlB,CAAC;AAEH,eAAO,MAAM,KAAK,QAQhB,CAAC;AAEH,eAAO,MAAM,KAAK,QA6BhB,CAAC"}
package/dist/index.mjs CHANGED
@@ -1,14 +1,14 @@
1
1
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
2
  import { AlertCircle, AlertTriangle, ArrowLeft, Check, ChevronDown, ChevronRight, ChevronUp, Copy, Info, Pipette, Plus, X } from "lucide-react";
3
- import { createContext, createElement, forwardRef, use, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState, useSyncExternalStore } from "react";
3
+ import { createContext, createElement, forwardRef, use, useCallback, useEffect, useImperativeHandle, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore } from "react";
4
4
  import { Collapsible as Collapsible$1 } from "@base-ui/react/collapsible";
5
5
  import { Popover as Popover$1 } from "@base-ui/react/popover";
6
- import { PortalThemeProvider, PortalThemeProvider as PortalThemeProvider$1, PortalThemeWrapper, PortalThemeWrapper as PortalThemeWrapper$1, usePortalTheme } from "@haklex/rich-style-token";
6
+ import { PortalThemeProvider, PortalThemeProvider as PortalThemeProvider$1, PortalThemeWrapper, PortalThemeWrapper as PortalThemeWrapper$1, usePortalContainer, usePortalTheme } from "@haklex/rich-style-token";
7
7
  import { Combobox as Combobox$1 } from "@base-ui/react/combobox";
8
8
  import { Dialog as Dialog$1 } from "@base-ui/react/dialog";
9
9
  import { Menu } from "@base-ui/react/menu";
10
10
  import { useLexicalComposerContext } from "@lexical/react/LexicalComposerContext";
11
- import { $getNodeByKey, $getSelection, $isRangeSelection, COMMAND_PRIORITY_LOW, SELECTION_CHANGE_COMMAND } from "lexical";
11
+ import { $getNodeByKey, $getRoot } from "lexical";
12
12
  import { createPortal } from "react-dom";
13
13
  import { Select as Select$1 } from "@base-ui/react/select";
14
14
  import { Tooltip } from "@base-ui/react/tooltip";
@@ -663,7 +663,7 @@ function CodeBlock({ className, collapsible = true, code, language, showCopyButt
663
663
  //#endregion
664
664
  //#region src/components/collapsible/styles.css.ts
665
665
  var trigger$1 = "_1hdi6a90";
666
- var panel$1 = "_1hdi6a92";
666
+ var panel$2 = "_1hdi6a92";
667
667
  //#endregion
668
668
  //#region src/components/collapsible/index.tsx
669
669
  function Collapsible(props) {
@@ -679,7 +679,7 @@ function CollapsibleTrigger({ children, className, hideChevron, ...props }) {
679
679
  function CollapsiblePanel({ children, className, ...props }) {
680
680
  return /* @__PURE__ */ jsx(Collapsible$1.Panel, {
681
681
  ...props,
682
- className: `${panel$1}${className ? ` ${className}` : ""}`,
682
+ className: `${panel$2}${className ? ` ${className}` : ""}`,
683
683
  children
684
684
  });
685
685
  }
@@ -889,7 +889,7 @@ var triggerLabel = "_17r50hf2";
889
889
  var triggerLetter = "_17r50hf3";
890
890
  var triggerBar = "_17r50hf4";
891
891
  var triggerChevron = "_17r50hf5";
892
- var panel = "_17r50hf6";
892
+ var panel$1 = "_17r50hf6";
893
893
  var grid = "_17r50hf7";
894
894
  var swatch = "_17r50hf8";
895
895
  var swatchDot = "_17r50hf9";
@@ -1221,7 +1221,7 @@ function ColorPicker({ currentColor, onSelect, className }) {
1221
1221
  })]
1222
1222
  }), /* @__PURE__ */ jsx(ChevronDown, { className: triggerChevron })]
1223
1223
  }), /* @__PURE__ */ jsx(PopoverPanel, {
1224
- className: panel,
1224
+ className: panel$1,
1225
1225
  side: "bottom",
1226
1226
  sideOffset: 6,
1227
1227
  children: view === "preset" ? /* @__PURE__ */ jsxs("div", {
@@ -1755,11 +1755,13 @@ function CheckIcon() {
1755
1755
  //#endregion
1756
1756
  //#region src/components/quote-attribution/styles.css.ts
1757
1757
  var semanticClassNames = {
1758
- editor: "rich-quote-attribution-editor",
1758
+ overlay: "rich-quote-attribution-overlay",
1759
+ panel: "rich-quote-attribution-panel",
1759
1760
  input: "rich-quote-attribution-input"
1760
1761
  };
1761
- var editor = "_1dj5lvb0";
1762
- var input = "_1dj5lvb1";
1762
+ var overlay = "_1dj5lvb0";
1763
+ var panel = "_1dj5lvb1";
1764
+ var input = "_1dj5lvb2";
1763
1765
  //#endregion
1764
1766
  //#region src/components/quote-attribution/QuoteAttributionPlugin.tsx
1765
1767
  var RICH_QUOTE_TYPE = "rich-quote";
@@ -1768,138 +1770,163 @@ function $isRichQuoteLike(node) {
1768
1770
  const ctor = node.constructor;
1769
1771
  return typeof ctor.getType === "function" && ctor.getType() === RICH_QUOTE_TYPE;
1770
1772
  }
1771
- function $findRichQuoteAncestor(node) {
1772
- let current = node;
1773
- while (current) {
1774
- if ($isRichQuoteLike(current)) return current;
1775
- current = current.getParent();
1776
- }
1777
- return null;
1773
+ function $collectQuotes() {
1774
+ const out = [];
1775
+ const visit = (node) => {
1776
+ if ($isRichQuoteLike(node)) out.push(node);
1777
+ if ("getChildren" in node && typeof node.getChildren === "function") for (const child of node.getChildren()) visit(child);
1778
+ };
1779
+ for (const child of $getRoot().getChildren()) visit(child);
1780
+ return out;
1781
+ }
1782
+ function readRect(dom) {
1783
+ const r = dom.getBoundingClientRect();
1784
+ return {
1785
+ top: r.top,
1786
+ left: r.left,
1787
+ width: r.width,
1788
+ height: r.height
1789
+ };
1790
+ }
1791
+ function rectsEqual(a, b) {
1792
+ if (a === b) return true;
1793
+ if (!a || !b) return false;
1794
+ return a.top === b.top && a.left === b.left && a.width === b.width && a.height === b.height;
1778
1795
  }
1779
1796
  function QuoteAttributionPlugin() {
1780
- const [editor$1] = useLexicalComposerContext();
1781
- const inputRef = useRef(null);
1782
- const panelFocusedRef = useRef(false);
1783
- const [visible, setVisible] = useState(false);
1784
- const [quoteState, setQuoteState] = useState({
1785
- attribution: "",
1786
- quoteKey: "",
1787
- quoteDom: null
1788
- });
1789
- const [inputValue, setInputValue] = useState("");
1790
- const updateQuote = useCallback(() => {
1791
- if (panelFocusedRef.current) return;
1792
- const selection = $getSelection();
1793
- if (!$isRangeSelection(selection)) {
1794
- setVisible(false);
1795
- return;
1796
- }
1797
- const quoteNode = $findRichQuoteAncestor(selection.anchor.getNode());
1798
- if (!quoteNode) {
1799
- setVisible(false);
1800
- return;
1801
- }
1802
- const attribution = quoteNode.getAttribution() ?? "";
1803
- const key = quoteNode.getKey();
1804
- setQuoteState({
1805
- attribution,
1806
- quoteKey: key,
1807
- quoteDom: editor$1.getElementByKey(key)
1808
- });
1809
- setInputValue(attribution);
1810
- setVisible(true);
1811
- }, [editor$1]);
1797
+ const [editor] = useLexicalComposerContext();
1798
+ const portalContainer = usePortalContainer();
1799
+ const [quotes, setQuotes] = useState([]);
1812
1800
  useEffect(() => {
1813
- const unregisterCommand = editor$1.registerCommand(SELECTION_CHANGE_COMMAND, () => {
1814
- updateQuote();
1815
- return false;
1816
- }, COMMAND_PRIORITY_LOW);
1817
- const unregisterUpdate = editor$1.registerUpdateListener(({ editorState }) => {
1818
- editorState.read(() => {
1819
- updateQuote();
1801
+ const collect = () => {
1802
+ editor.getEditorState().read(() => {
1803
+ const list = [];
1804
+ for (const node of $collectQuotes()) {
1805
+ const dom = editor.getElementByKey(node.getKey());
1806
+ if (dom) list.push({
1807
+ key: node.getKey(),
1808
+ attribution: node.getAttribution() ?? "",
1809
+ dom
1810
+ });
1811
+ }
1812
+ setQuotes(list);
1820
1813
  });
1821
- });
1814
+ };
1815
+ collect();
1816
+ return editor.registerUpdateListener(() => collect());
1817
+ }, [editor]);
1818
+ if (!editor.isEditable()) return null;
1819
+ if (quotes.length === 0) return null;
1820
+ return createPortal(/* @__PURE__ */ jsx(PortalThemeWrapper$1, { children: quotes.map((q) => /* @__PURE__ */ jsx(QuotePanel, {
1821
+ attribution: q.attribution,
1822
+ editor,
1823
+ quoteDom: q.dom,
1824
+ quoteKey: q.key
1825
+ }, q.key)) }), portalContainer);
1826
+ }
1827
+ function QuotePanel({ attribution, editor, quoteDom, quoteKey }) {
1828
+ const [rect, setRect] = useState(null);
1829
+ const [value, setValue] = useState(attribution);
1830
+ const [focused, setFocused] = useState(false);
1831
+ useEffect(() => {
1832
+ if (!focused) setValue(attribution);
1833
+ }, [attribution, focused]);
1834
+ useLayoutEffect(() => {
1835
+ quoteDom.setAttribute("data-attribution-panel", "");
1836
+ let next = null;
1837
+ const sync = () => {
1838
+ const r = readRect(quoteDom);
1839
+ if (!rectsEqual(next, r)) {
1840
+ next = r;
1841
+ setRect(r);
1842
+ }
1843
+ };
1844
+ sync();
1845
+ const ro = new ResizeObserver(sync);
1846
+ ro.observe(quoteDom);
1847
+ window.addEventListener("scroll", sync, true);
1848
+ window.addEventListener("resize", sync);
1822
1849
  return () => {
1823
- unregisterCommand();
1824
- unregisterUpdate();
1850
+ quoteDom.removeAttribute("data-attribution-panel");
1851
+ ro.disconnect();
1852
+ window.removeEventListener("scroll", sync, true);
1853
+ window.removeEventListener("resize", sync);
1825
1854
  };
1826
- }, [editor$1, updateQuote]);
1827
- const commitAttribution = useCallback((value) => {
1828
- editor$1.update(() => {
1829
- const node = $getNodeByKey(quoteState.quoteKey);
1830
- if ($isRichQuoteLike(node)) node.setAttribution(value);
1855
+ }, [quoteDom]);
1856
+ const commit = useCallback((raw) => {
1857
+ const trimmed = raw.trim();
1858
+ editor.update(() => {
1859
+ const node = $getNodeByKey(quoteKey);
1860
+ if ($isRichQuoteLike(node)) node.setAttribution(trimmed || null);
1831
1861
  });
1832
- }, [editor$1, quoteState.quoteKey]);
1833
- const handleSave = useCallback(() => {
1834
- commitAttribution(inputValue.trim() || null);
1835
- }, [commitAttribution, inputValue]);
1862
+ }, [editor, quoteKey]);
1836
1863
  const handleKeyDown = useCallback((e) => {
1864
+ e.stopPropagation();
1837
1865
  if (e.key === "Enter") {
1838
1866
  e.preventDefault();
1839
- handleSave();
1840
- editor$1.focus();
1867
+ commit(value);
1868
+ e.currentTarget.blur();
1869
+ editor.focus();
1841
1870
  } else if (e.key === "Escape") {
1842
1871
  e.preventDefault();
1843
- setInputValue(quoteState.attribution);
1844
- editor$1.focus();
1872
+ setValue(attribution);
1873
+ e.currentTarget.blur();
1874
+ editor.focus();
1845
1875
  }
1846
- e.stopPropagation();
1847
1876
  }, [
1848
- editor$1,
1849
- handleSave,
1850
- quoteState.attribution
1877
+ attribution,
1878
+ commit,
1879
+ editor,
1880
+ value
1851
1881
  ]);
1852
1882
  const stop = useCallback((e) => {
1853
1883
  e.stopPropagation();
1854
1884
  }, []);
1855
- const handlePanelFocusIn = useCallback(() => {
1856
- panelFocusedRef.current = true;
1857
- }, []);
1858
- const handlePanelFocusOut = useCallback((e) => {
1859
- if (!e.currentTarget.contains(e.relatedTarget)) {
1860
- panelFocusedRef.current = false;
1861
- handleSave();
1862
- }
1863
- }, [handleSave]);
1864
- if (!editor$1.isEditable()) return null;
1865
- if (!visible || !quoteState.quoteDom) return null;
1866
- return createPortal(/* @__PURE__ */ jsx("div", {
1867
- suppressContentEditableWarning: true,
1868
- className: `${editor} ${semanticClassNames.editor}`,
1869
- contentEditable: false,
1870
- "data-lexical-editor": "false",
1871
- onBlur: handlePanelFocusOut,
1872
- onClick: stop,
1873
- onFocus: handlePanelFocusIn,
1874
- onMouseDown: stop,
1875
- onPointerDown: stop,
1876
- children: /* @__PURE__ */ jsx("input", {
1877
- className: `${input} ${semanticClassNames.input}`,
1878
- placeholder: "— Author, Work",
1879
- ref: inputRef,
1880
- type: "text",
1881
- value: inputValue,
1882
- onBeforeInput: stop,
1883
- onClick: stop,
1884
- onCompositionEnd: stop,
1885
- onCompositionStart: stop,
1886
- onCompositionUpdate: stop,
1887
- onCopy: stop,
1888
- onCut: stop,
1889
- onDragStart: stop,
1890
- onDrop: stop,
1891
- onInput: stop,
1892
- onKeyDown: handleKeyDown,
1893
- onKeyUp: stop,
1894
- onMouseDown: stop,
1895
- onPaste: stop,
1896
- onPointerDown: stop,
1897
- onChange: (e) => {
1898
- e.stopPropagation();
1899
- setInputValue(e.target.value);
1900
- }
1885
+ if (!rect) return null;
1886
+ return /* @__PURE__ */ jsx("div", {
1887
+ className: overlay,
1888
+ style: {
1889
+ top: `${rect.top}px`,
1890
+ left: `${rect.left}px`,
1891
+ width: `${rect.width}px`,
1892
+ height: `${rect.height}px`
1893
+ },
1894
+ children: /* @__PURE__ */ jsx("div", {
1895
+ className: `${panel} ${semanticClassNames.panel}`,
1896
+ contentEditable: false,
1897
+ "data-lexical-editor": "false",
1898
+ children: /* @__PURE__ */ jsx("input", {
1899
+ className: `${input} ${semanticClassNames.input}`,
1900
+ placeholder: "— Author, Work",
1901
+ type: "text",
1902
+ value,
1903
+ onBeforeInput: stop,
1904
+ onClick: stop,
1905
+ onCompositionEnd: stop,
1906
+ onCompositionStart: stop,
1907
+ onCompositionUpdate: stop,
1908
+ onCopy: stop,
1909
+ onCut: stop,
1910
+ onDragStart: stop,
1911
+ onDrop: stop,
1912
+ onFocus: () => setFocused(true),
1913
+ onInput: stop,
1914
+ onKeyDown: handleKeyDown,
1915
+ onKeyUp: stop,
1916
+ onMouseDown: stop,
1917
+ onPaste: stop,
1918
+ onPointerDown: stop,
1919
+ onBlur: (e) => {
1920
+ setFocused(false);
1921
+ commit(e.currentTarget.value);
1922
+ },
1923
+ onChange: (e) => {
1924
+ e.stopPropagation();
1925
+ setValue(e.target.value);
1926
+ }
1927
+ })
1901
1928
  })
1902
- }), quoteState.quoteDom);
1929
+ });
1903
1930
  }
1904
1931
  //#endregion
1905
1932
  //#region src/components/scroll-area/styles.css.ts
@@ -1,2 +1,2 @@
1
- :root{--rc-text:#000;--rc-text-secondary:#262626;--rc-text-tertiary:#737373;--rc-text-quaternary:#a3a3a3;--rc-bg:#fff;--rc-bg-secondary:#fafafa;--rc-bg-tertiary:#f5f5f5;--rc-fill:#e8e8e8;--rc-fill-secondary:#eee;--rc-fill-tertiary:#f5f5f5;--rc-fill-quaternary:#fafafa;--rc-border:#f5f5f5;--rc-accent:#2563eb;--rc-accent-light:#2563eb20;--rc-link:#2563eb;--rc-code-text:#404040;--rc-code-bg:#f5f5f5;--rc-hr-border:#e5e5e5;--rc-quote-border:#2563eb;--rc-quote-bg:#f5f5f5;--rc-alert-info:#006bb7;--rc-alert-warning:#c50;--rc-alert-tip:#1c0;--rc-alert-caution:#c01;--rc-alert-important:#50c;--rc-max-width:700px;--rc-shadow-top-bar:0 8px 30px #0000001f, 0 2px 8px #0000000f;--rc-shadow-modal:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--rc-shadow-menu:0 1px 4px #0000000a, 0 4px 16px #00000014;--rc-space-xs:4px;--rc-space-sm:8px;--rc-space-md:16px;--rc-space-lg:24px;--rc-space-xl:32px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:16px;--rc-font-size-small:14px;--rc-line-height:1.7;--rc-line-height-tight:1.4;--rc-font-family:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-radius-sm:4px;--rc-radius-md:8px;--rc-radius-lg:12px}:root.dark,[data-theme=dark]{--rc-text:#fafafa;--rc-text-secondary:#a3a3a3;--rc-text-tertiary:#737373;--rc-text-quaternary:#525252;--rc-bg:#0a0a0a;--rc-bg-secondary:#171717;--rc-bg-tertiary:#262626;--rc-fill:#2a2a2a;--rc-fill-secondary:#222;--rc-fill-tertiary:#1a1a1a;--rc-fill-quaternary:#141414;--rc-border:#262626;--rc-accent:#60a5fa;--rc-accent-light:#60a5fa20;--rc-link:#60a5fa;--rc-code-text:#d4d4d4;--rc-code-bg:#262626;--rc-hr-border:#262626;--rc-quote-border:#60a5fa;--rc-quote-bg:#262626;--rc-alert-info:#7db9e5;--rc-alert-warning:#da864a;--rc-alert-tip:#54da48;--rc-alert-caution:#e16973;--rc-alert-important:#9966e0;--rc-max-width:700px;--rc-shadow-top-bar:0 8px 30px #00000073, 0 2px 8px #0000004d;--rc-shadow-modal:0 10px 15px -3px #0006, 0 4px 6px -4px #00000059;--rc-shadow-menu:0 1px 4px #00000040, 0 4px 16px #0006;--rc-space-xs:4px;--rc-space-sm:8px;--rc-space-md:16px;--rc-space-lg:24px;--rc-space-xl:32px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:16px;--rc-font-size-small:14px;--rc-line-height:1.7;--rc-line-height-tight:1.4;--rc-font-family:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-radius-sm:4px;--rc-radius-md:8px;--rc-radius-lg:12px}._4yrh350{--rc-text:#000;--rc-text-secondary:#262626;--rc-text-tertiary:#737373;--rc-text-quaternary:#a3a3a3;--rc-bg:#fff;--rc-bg-secondary:#fafafa;--rc-bg-tertiary:#f5f5f5;--rc-fill:#e8e8e8;--rc-fill-secondary:#eee;--rc-fill-tertiary:#f5f5f5;--rc-fill-quaternary:#fafafa;--rc-border:#f5f5f5;--rc-accent:#2563eb;--rc-accent-light:#2563eb20;--rc-link:#2563eb;--rc-code-text:#404040;--rc-code-bg:#f5f5f5;--rc-hr-border:#e5e5e5;--rc-quote-border:#2563eb;--rc-quote-bg:#f5f5f5;--rc-alert-info:#006bb7;--rc-alert-warning:#c50;--rc-alert-tip:#1c0;--rc-alert-caution:#c01;--rc-alert-important:#50c;--rc-max-width:700px;--rc-shadow-top-bar:0 8px 30px #0000001f, 0 2px 8px #0000000f;--rc-shadow-modal:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--rc-shadow-menu:0 1px 4px #0000000a, 0 4px 16px #00000014;--rc-space-xs:4px;--rc-space-sm:8px;--rc-space-md:16px;--rc-space-lg:24px;--rc-space-xl:32px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:16px;--rc-font-size-small:14px;--rc-line-height:1.7;--rc-line-height-tight:1.4;--rc-font-family:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-radius-sm:4px;--rc-radius-md:8px;--rc-radius-lg:12px}._4yrh351{--rc-text:#000;--rc-text-secondary:#262626;--rc-text-tertiary:#737373;--rc-text-quaternary:#a3a3a3;--rc-bg:#fff;--rc-bg-secondary:#fafafa;--rc-bg-tertiary:#f5f5f5;--rc-fill:#e8e8e8;--rc-fill-secondary:#eee;--rc-fill-tertiary:#f5f5f5;--rc-fill-quaternary:#fafafa;--rc-border:#f5f5f5;--rc-accent:#2563eb;--rc-accent-light:#2563eb20;--rc-link:#2563eb;--rc-code-text:#404040;--rc-code-bg:#f5f5f5;--rc-hr-border:#e5e5e5;--rc-quote-border:#2563eb;--rc-quote-bg:#f5f5f5;--rc-alert-info:#006bb7;--rc-alert-warning:#c50;--rc-alert-tip:#1c0;--rc-alert-caution:#c01;--rc-alert-important:#50c;--rc-max-width:700px;--rc-shadow-top-bar:0 8px 30px #0000001f, 0 2px 8px #0000000f;--rc-shadow-modal:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--rc-shadow-menu:0 1px 4px #0000000a, 0 4px 16px #00000014;--rc-space-xs:4px;--rc-space-sm:8px;--rc-space-md:16px;--rc-space-lg:24px;--rc-space-xl:32px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:16px;--rc-font-size-small:14px;--rc-line-height:1.8;--rc-line-height-tight:1.4;--rc-font-family:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-radius-sm:4px;--rc-radius-md:8px;--rc-radius-lg:12px}._4yrh352{--rc-text:#000;--rc-text-secondary:#262626;--rc-text-tertiary:#737373;--rc-text-quaternary:#a3a3a3;--rc-bg:#fff;--rc-bg-secondary:#fafafa;--rc-bg-tertiary:#f5f5f5;--rc-fill:#e8e8e8;--rc-fill-secondary:#eee;--rc-fill-tertiary:#f5f5f5;--rc-fill-quaternary:#fafafa;--rc-border:#f5f5f5;--rc-accent:#2563eb;--rc-accent-light:#2563eb20;--rc-link:#2563eb;--rc-code-text:#404040;--rc-code-bg:#f5f5f5;--rc-hr-border:#e5e5e5;--rc-quote-border:#a3a3a3;--rc-quote-bg:#fafafa;--rc-alert-info:#006bb7;--rc-alert-warning:#c50;--rc-alert-tip:#1c0;--rc-alert-caution:#c01;--rc-alert-important:#50c;--rc-max-width:none;--rc-shadow-top-bar:0 8px 30px #0000001f, 0 2px 8px #0000000f;--rc-shadow-modal:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--rc-shadow-menu:0 1px 4px #0000000a, 0 4px 16px #00000014;--rc-space-xs:2px;--rc-space-sm:4px;--rc-space-md:10px;--rc-space-lg:16px;--rc-space-xl:20px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:14px;--rc-font-size-small:12px;--rc-line-height:1.5;--rc-line-height-tight:1.3;--rc-font-family:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-radius-sm:3px;--rc-radius-md:6px;--rc-radius-lg:12px}.dark ._4yrh350,[data-theme=dark] ._4yrh350,.dark._4yrh350,[data-theme=dark]._4yrh350,.dark ._4yrh351,[data-theme=dark] ._4yrh351,.dark._4yrh351,[data-theme=dark]._4yrh351,.dark ._4yrh352,[data-theme=dark] ._4yrh352,.dark._4yrh352,[data-theme=dark]._4yrh352{--rc-text:#fafafa;--rc-text-secondary:#a3a3a3;--rc-text-tertiary:#737373;--rc-text-quaternary:#525252;--rc-bg:#0a0a0a;--rc-bg-secondary:#171717;--rc-bg-tertiary:#262626;--rc-fill:#2a2a2a;--rc-fill-secondary:#222;--rc-fill-tertiary:#1a1a1a;--rc-fill-quaternary:#141414;--rc-border:#262626;--rc-accent:#60a5fa;--rc-accent-light:#60a5fa20;--rc-link:#60a5fa;--rc-code-text:#d4d4d4;--rc-code-bg:#262626;--rc-hr-border:#262626;--rc-quote-border:#60a5fa;--rc-quote-bg:#262626;--rc-alert-info:#7db9e5;--rc-alert-warning:#da864a;--rc-alert-tip:#54da48;--rc-alert-caution:#e16973;--rc-alert-important:#9966e0;--rc-shadow-top-bar:0 8px 30px #00000073, 0 2px 8px #0000004d;--rc-shadow-modal:0 10px 15px -3px #0006, 0 4px 6px -4px #00000059;--rc-shadow-menu:0 1px 4px #00000040, 0 4px 16px #0006}._73ej2i0{justify-content:flex-end;align-items:center;gap:4px;display:flex}._73ej2i1{-webkit-appearance:none;appearance:none;cursor:pointer;background:0 0;border:none;outline:none;justify-content:center;align-items:center;font-family:inherit;transition:color .15s,background-color .15s;display:inline-flex}._73ej2i1:focus-visible{box-shadow:0 0 0 2px var(--rc-accent-light)}._73ej2i1:disabled{opacity:.45;cursor:not-allowed}._73ej2i2{color:inherit}._73ej2i2:hover:not(:disabled){background-color:var(--rc-fill-secondary)}._73ej2i3{background-color:var(--rc-text);color:var(--rc-bg);transition:background-color .15s,border-color .15s,color .15s}._73ej2i3:hover:not(:disabled){background-color:color-mix(in srgb, var(--rc-text) 86%, transparent)}._73ej2i4{background:var(--rc-bg);color:var(--rc-text-secondary);border:1px solid var(--rc-border);transition:background-color .15s,border-color .15s,color .15s}._73ej2i4:hover:not(:disabled){background:var(--rc-fill-secondary);color:var(--rc-text)}._73ej2i5{background-color:var(--rc-accent);color:#fff}._73ej2i5:hover:not(:disabled){filter:brightness(.9)}._73ej2i5:disabled{opacity:.5;cursor:default;pointer-events:none}._73ej2i6{font-size:var(--rc-font-size-sm);border-radius:var(--rc-radius-sm);white-space:nowrap;gap:6px;height:24px;padding:4px 8px;font-weight:500}._73ej2i7{font-size:var(--rc-font-size-sm);border-radius:var(--rc-radius-md);white-space:nowrap;gap:6px;height:28px;padding:4px 10px;font-weight:500;line-height:1.4}._73ej2i8{font-size:var(--rc-font-size-small);border-radius:var(--rc-radius-md);white-space:nowrap;gap:8px;height:36px;padding:0 14px;font-weight:600}._73ej2ib{margin-left:auto}._73ej2ih{font-size:var(--rc-font-size-small);width:24px;height:24px;color:color-mix(in srgb, var(--rc-text-secondary) 60%, transparent);gap:0;padding:0}._73ej2ih:hover:not(:disabled){color:var(--rc-text);background-color:var(--rc-fill-secondary)}._73ej2ih:disabled{opacity:.3;pointer-events:none}._73ej2ii{font-size:var(--rc-font-size-base);border-radius:var(--rc-radius-md);width:auto;height:auto;color:var(--rc-text-secondary);gap:0;padding:6px}._73ej2ii:hover:not(:disabled){color:var(--rc-text);background-color:color-mix(in srgb, var(--rc-text) 8%, transparent)}._73ej2ii:disabled{opacity:.3;cursor:default}._73ej2ii:disabled:hover{color:var(--rc-text-secondary);background:0 0}._73ej2ij{border-radius:var(--rc-radius-md);width:auto;height:auto;color:var(--rc-text-secondary);gap:0;padding:8px;font-size:20px}._73ej2ij:hover:not(:disabled){color:var(--rc-text);background-color:color-mix(in srgb, var(--rc-text) 8%, transparent)}._73ej2ij:disabled{opacity:.3;cursor:default}._73ej2ij:disabled:hover{color:var(--rc-text-secondary);background:0 0}._73ej2ik{border-radius:50%}._73ej2il:hover:not(:disabled){color:var(--rc-alert-caution);background-color:color-mix(in srgb, var(--rc-alert-caution) 10%, transparent)}.re-ui-action-btn--icon svg{width:1em;height:1em}._15r7gwx0{border:1px solid #0000;border-radius:8px;align-items:flex-start;gap:8px;padding:8px 12px;font-size:13px;line-height:1.5;display:flex}._15r7gwx1{color:#1e40af;background-color:#3b82f60f;border-color:#3b82f63d}._15r7gwx2{color:#92400e;background-color:#f59e0b0f;border-color:#f59e0b3d}._15r7gwx3{color:#991b1b;background-color:#ef44440f;border-color:#ef44443d}._15r7gwx4{flex:1;min-width:0}._15r7gwx5{flex-shrink:0;width:16px;height:16px;margin-top:2px}._15r7gwx6{flex-shrink:0;margin-left:auto}.iryuae0{position:relative}.iryuae1{display:flex}.iryuae2{font-size:var(--rc-font-size-md);cursor:pointer;color:var(--rc-text-secondary);background:0 0;border:none;outline:none;padding:.625rem 1rem;font-weight:500;transition:color .2s;position:relative}.iryuae2:hover{color:color-mix(in srgb, currentColor 80%, transparent)}.iryuae2:focus-visible{outline:2px solid var(--rc-accent);outline-offset:2px}.iryuae3{color:var(--rc-text)}.iryuae4{background-color:var(--rc-border);height:1px;position:absolute;bottom:0;left:0;right:0}.iryuae5{background-color:var(--rc-text);height:2px;transition:left .3s ease-in-out,width .3s ease-in-out;position:absolute;bottom:0}._1b25hgb0{resize:none;border:1px solid var(--rc-border);border-radius:var(--rc-radius-md);background:var(--rc-bg);width:100%;color:var(--rc-text);outline:none;padding:8px 12px;font-family:inherit;font-size:14px;line-height:1.5;overflow:hidden}._1b25hgb0:focus{border-color:var(--rc-text-quaternary)}._1b25hgb0::placeholder{color:var(--rc-text-quaternary)}._1b25hgb1{overflow-y:auto}._1vt0sm10{white-space:nowrap;border-radius:9999px;align-items:center;font-weight:500;line-height:1;display:inline-flex}._1vt0sm11{background-color:var(--rc-fill-tertiary);color:var(--rc-text-tertiary)}._1vt0sm12{color:#16a34a;background-color:#22c55e1a}._1vt0sm13{color:#dc2626;background-color:#ef44441a}._1vt0sm14{color:#d97706;background-color:#f59e0b1a}._1vt0sm15{color:#2563eb;background-color:#3b82f61a}._1vt0sm16{gap:3px;padding:2px 6px;font-size:11px}._1vt0sm17{gap:4px;padding:3px 8px;font-size:12px}@keyframes _10muorc0{0%{transform:scale(1)}40%{transform:scale(.85)}to{transform:scale(1)}}@keyframes _10muorc1{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--rc-accent) 40%, transparent)}to{box-shadow:0 0 0 6px #0000}}._10muorc2{text-align:left;cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;border-radius:.5rem;align-items:flex-start;gap:.75rem;padding:.25rem;display:inline-flex}._10muorc2:focus-visible{outline:2px solid var(--rc-accent);outline-offset:2px}._10muorc3{cursor:not-allowed;opacity:.5}._10muorc4{box-sizing:border-box;border-style:solid;border-width:2px;border-radius:.3rem;flex-shrink:0;justify-content:center;align-items:center;width:1.125rem;height:1.125rem;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative}._10muorc5{border-color:color-mix(in srgb, var(--rc-text-secondary) 50%, transparent);background-color:#0000}._10muorc6{border-color:var(--rc-accent);background-color:var(--rc-accent)}._10muorc7{animation:.4s ease-out _10muorc0}._10muorc8{width:.75rem;height:.75rem;transition:all .3s cubic-bezier(.34,1.56,.64,1)}._10muorc9{opacity:1;transform:scale(1)}._10muorca{opacity:0;transform:scale(.5)}._10muorcb{pointer-events:none;border-radius:.3rem;position:absolute;top:0;bottom:0;left:0;right:0}._10muorcc{animation:.4s ease-out _10muorc1}._10muorcd{flex-direction:column;gap:.125rem;display:flex}._10muorce{font-size:var(--rc-font-size-md);color:var(--rc-text);font-weight:500;line-height:1.25;transition:color .2s}._10muorcf{color:var(--rc-text-secondary)}._10muorcg{font-size:var(--rc-font-size-xs);color:var(--rc-text-secondary);line-height:1.25}._1gq8hf90{--rr-code-accent:#737373;font-size:var(--rc-font-size-md);font-family:var(--rc-font-mono);border-radius:.5rem;margin:1.5rem 0;line-height:1.65;position:relative;overflow:hidden}._1gq8hf91{z-index:1;font-size:var(--rc-font-size-md);opacity:.6;pointer-events:none;align-items:center;gap:.375rem;display:flex;position:absolute;bottom:.75rem;right:.75rem}._1gq8hf92{-webkit-appearance:none;appearance:none;z-index:3;border:1px solid color-mix(in srgb, var(--rr-code-accent) 5%, transparent);background:color-mix(in srgb, var(--rr-code-accent) 80%, transparent);color:#fff;cursor:pointer;opacity:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:.375rem;justify-content:center;align-items:center;padding:.375rem;transition:opacity .2s;display:flex;position:absolute;top:.5rem;right:.5rem}._1gq8hf90:hover ._1gq8hf92{opacity:1}._1gq8hf93{background:color-mix(in srgb, var(--rr-code-accent) 5%, transparent);padding:0;position:relative}._1gq8hf94{padding-block-start:12px;padding-block-end:12px}._1gq8hf95{width:100%;position:relative;overflow:auto}._1gq8hf96{max-height:50vh;overflow:hidden}._1gq8hf97{background:linear-gradient(to bottom, transparent 0%, var(--bg,var(--rc-bg-secondary)) 80%);pointer-events:none;justify-content:center;padding:.5rem 0 .75rem;display:flex;position:absolute;bottom:0;left:0;right:0}._1gq8hf98{-webkit-appearance:none;appearance:none;cursor:pointer;font-size:var(--rc-font-size-xs);color:inherit;opacity:.7;pointer-events:auto;background:0 0;border:none;align-items:center;gap:.5rem;display:flex}._1gq8hf98:hover{opacity:1}._1gq8hf99{counter-reset:shiki-line 0}._1gq8hf99 .line{counter-increment:shiki-line 1}._1gq8hf99 .line:before{content:counter(shiki-line);color:#0000;text-align:right;box-sizing:border-box;width:2em;display:inline-block;position:sticky;left:0}._1gq8hf9a .line:before{color:inherit;opacity:.4;width:5em;padding-right:2em}._1gq8hf90 pre{border-radius:0;font-size:1em;overflow-x:auto;margin:0!important;padding:0!important}._1gq8hf90 pre code{line-height:inherit;flex-direction:column;display:flex;font-family:var(--rc-font-mono)!important}._1gq8hf90 .shiki,._1gq8hf90 code,._1gq8hf90 pre{line-height:inherit;background:0 0!important}[data-theme=dark] ._1gq8hf90 .shiki-themes,[data-theme=dark] ._1gq8hf90 .shiki-themes span{color:var(--shiki-dark)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;-webkit-text-decoration:var(--shiki-dark-text-decoration)!important;text-decoration:var(--shiki-dark-text-decoration)!important}._1gq8hf90 .line{padding:0 1.25rem;display:block}._1gq8hf90 .line>span:last-child{margin-right:1.25rem}._1gq8hf90 .line:after{content:" "}._1hdi6a90{cursor:pointer;color:var(--rc-text-tertiary);font-size:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:6px;width:100%;padding:0;font-family:inherit;display:flex}._1hdi6a90:hover{color:var(--rc-text-secondary)}._1hdi6a91{flex-shrink:0;width:14px;height:14px;transition:transform .2s}[data-panel-open] ._1hdi6a91{transform:rotate(90deg)}._1hdi6a92{interpolate-size:allow-keywords;height:var(--collapsible-panel-height);transition:height .2s cubic-bezier(.4,0,.2,1);overflow:hidden}._1hdi6a92[data-closed],._1hdi6a92[data-starting-style],._1hdi6a92[data-ending-style]{height:0}@keyframes f2q44l0{0%{opacity:0;transform:translateY(2px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes f2q44l1{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(2px)scale(.96)}}.f2q44l2{z-index:50;border:1px solid var(--rc-border);background-color:var(--rc-bg);width:288px;box-shadow:var(--rc-shadow-modal);font-family:var(--rc-font-family-sans);border-radius:.5rem;outline:none;padding:1rem;transition:opacity .15s ease-out,transform .15s ease-out}.f2q44l2[data-open]{animation:.15s ease-out f2q44l0}.f2q44l2[data-ending-style]{opacity:0;transform:translateY(2px)scale(.96)}.f2q44l2[data-closed]{animation:.15s ease-in f2q44l1}.f2q44l3{transform-origin:50%;width:10px;height:10px}.f2q44l3>polygon{fill:var(--rc-bg)}.f2q44l3>polyline{stroke:var(--rc-border);fill:none}.f2q44l4{font-size:var(--rc-font-size-md);color:var(--rc-text);font-weight:600;line-height:1}.f2q44l5{font-size:var(--rc-font-size-md);color:var(--rc-text-secondary);margin-top:.25rem;line-height:1.25rem}@keyframes _17r50hf0{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}._17r50hf1{cursor:pointer;height:32px;color:var(--rc-text-secondary);background:0 0;border:none;border-radius:8px;align-items:center;gap:2px;padding:0 6px;transition:color .1s,background-color .1s;display:flex}._17r50hf1:hover{color:var(--rc-text);background-color:color-mix(in srgb, var(--rc-text) 4%, transparent)}._17r50hf2{flex-direction:column;align-items:center;display:flex}._17r50hf3{font-size:var(--rc-font-size-xs);font-weight:600;line-height:1}._17r50hf4{border-radius:1px;width:14px;height:2px;margin-top:2px}._17r50hf5{width:12px;height:12px;transition:transform .15s}._17r50hf6{width:220px;padding:8px}._17r50hf6[data-open]{animation:.12s ease-out _17r50hf0}._17r50hf7{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}._17r50hf8{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background-color .1s;display:flex;position:relative}._17r50hf8:hover{background-color:color-mix(in srgb, var(--rc-text) 4%, transparent)}._17r50hf9{border:1px solid color-mix(in srgb, var(--rc-text) 10%, transparent);border-radius:50%;width:16px;height:16px}._17r50hfa{width:10px;height:10px;color:var(--rc-bg);position:absolute}._17r50hfb{color:#fff;background:conic-gradient(#ef4444,#f59e0b,#22c55e,#3b82f6,#6366f1,#ec4899,#ef4444);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex}._17r50hfc{stroke-width:3px;width:10px;height:10px}._17r50hfd{flex-direction:column;gap:8px;display:flex}._17r50hfe{cursor:pointer;font-size:var(--rc-font-size-xs);color:var(--rc-text-tertiary);background:0 0;border:none;border-radius:6px;align-self:flex-start;align-items:center;gap:4px;margin-bottom:2px;padding:2px 6px;transition:color .1s,background-color .1s;display:flex}._17r50hfe:hover{color:var(--rc-text);background-color:color-mix(in srgb, var(--rc-text) 4%, transparent)}._17r50hff{width:12px;height:12px}._17r50hfg{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:6px;width:100%;height:140px;position:relative;overflow:hidden}._17r50hfh{pointer-events:none;background:linear-gradient(90deg,#fff,#0000);position:absolute;top:0;bottom:0;left:0;right:0}._17r50hfi{pointer-events:none;background:linear-gradient(#0000,#000);position:absolute;top:0;bottom:0;left:0;right:0}._17r50hfj{pointer-events:none;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000004d}._17r50hfk{cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);border-radius:5px;width:100%;height:10px;position:relative}._17r50hfl{cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:repeating-conic-gradient(#ddd 0% 25%,#fff 0% 50%) 0/8px 8px;border-radius:5px;width:100%;height:10px;position:relative;overflow:hidden}._17r50hfm{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}._17r50hfn{pointer-events:none;border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000004d}._17r50hfo{align-items:center;gap:4px;display:flex}._17r50hfp{min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,Courier New,monospace;font-size:var(--rc-font-size-xs);border:1px solid var(--rc-border);background:var(--rc-bg-secondary);color:var(--rc-text);text-transform:uppercase;border-radius:6px;outline:none;flex:1;padding:4px 6px}._17r50hfp:focus{border-color:var(--rc-accent)}._17r50hfq,._17r50hfq:focus{border-color:#ef4444}._17r50hfr{border:1px solid var(--rc-border);background:var(--rc-bg);width:24px;height:24px;color:var(--rc-text-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background-color .1s,color .1s;display:flex}._17r50hfr:hover{color:var(--rc-text);background-color:var(--rc-fill-tertiary)}._17r50hfs{width:12px;height:12px}._17r50hft{border:1px solid var(--rc-border);background:repeating-conic-gradient(#ddd 0% 25%,#fff 0% 50%) 0/6px 6px;border-radius:6px;width:40px;height:24px;display:flex;overflow:hidden}._17r50hfu{flex:1}._17r50hfv{gap:6px;margin-top:2px;display:flex}._17r50hfw{height:28px;font-size:var(--rc-font-size-xs);border:1px solid var(--rc-border);background:var(--rc-bg);color:var(--rc-text);cursor:pointer;border-radius:6px;flex:1;transition:background-color .1s}._17r50hfw:hover{background-color:var(--rc-fill-tertiary)}._17r50hfx{background:var(--rc-text);color:var(--rc-bg);border-color:var(--rc-text)}._17r50hfx:hover{background-color:color-mix(in srgb, var(--rc-text) 85%, transparent)}@keyframes _1sxaacb0{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes _1sxaacb1{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}._1sxaacb2{background-color:var(--rc-hr-border);height:1px;margin:.25rem -.25rem}._1sxaacb3{font-size:var(--rc-font-size-xs);color:var(--rc-text-tertiary);padding:.25rem .375rem;font-weight:500;line-height:1.4}._2buwsh0{border-radius:var(--rc-radius-lg);min-width:8rem;padding:var(--rc-space-xs);background-color:var(--rc-bg);box-shadow:0 0 0 1px color-mix(in srgb, var(--rc-text) 10%, transparent), var(--rc-shadow-menu);color:var(--rc-text);font-family:var(--rc-font-family-sans);font-size:var(--rc-font-size-small);z-index:50;max-height:min(var(--available-height), 16rem);transform-origin:var(--transform-origin);outline:none;transition:opacity .1s ease-out,transform .1s ease-out;overflow:hidden auto}._2buwsh0[data-open]{animation:.1s ease-out _1sxaacb0}._2buwsh0[data-starting-style],._2buwsh0[data-ending-style]{opacity:0;transform:scale(.95)}._2buwsh0[data-closed]{animation:.1s ease-in _1sxaacb1;overflow:hidden}._2buwsh1{border-radius:var(--rc-radius-md);padding:var(--rc-space-xs) var(--rc-space-md) var(--rc-space-xs) var(--rc-space-sm);font-size:var(--rc-font-size-small);-webkit-user-select:none;user-select:none;cursor:default;color:var(--rc-text);outline:none;align-items:center;gap:.375rem;line-height:1.35;transition:background-color .1s,color .1s;display:flex;position:relative}._2buwsh1[data-highlighted]{background-color:var(--rc-fill-secondary);color:var(--rc-text)}._2buwsh1[data-disabled]{opacity:.5;pointer-events:none}._2buwsh1 svg{pointer-events:none;width:1rem;height:1rem;color:var(--rc-text-secondary);flex-shrink:0;transition:color .1s}._2buwsh1[data-highlighted] svg{color:var(--rc-text)}._2buwsh2{font-size:var(--rc-font-size-small);color:var(--rc-text-secondary);text-align:center}@keyframes vwlngv0{0%{opacity:0}to{opacity:1}}@keyframes vwlngv1{0%{opacity:1}to{opacity:0}}@keyframes vwlngv2{0%{opacity:0;transform:translate(-50%,-48%)scale(.95)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes vwlngv3{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-48%)scale(.95)}}@keyframes vwlngvd{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes vwlngve{0%{transform:translateY(0)}to{transform:translateY(100%)}}.vwlngv4{z-index:50;background-color:#000c;position:fixed;top:0;bottom:0;left:0;right:0}.vwlngv4[data-open]{animation:.25s ease-out vwlngv0}.vwlngv4[data-closed]{animation:.2s ease-in vwlngv1}.vwlngv5{z-index:50;border-radius:var(--rc-radius-lg);border:1px solid var(--rc-border);width:100%;max-width:calc(100% - 2rem);font-family:var(--rc-font-family-sans);color:var(--rc-text);background-color:var(--rc-bg);box-shadow:var(--rc-shadow-modal);outline:none;gap:0;padding:0;line-height:1.43;display:grid;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.vwlngv5[data-open]{animation:.15s ease-out vwlngv2}.vwlngv5[data-closed]{animation:.1s ease-in vwlngv3}.vwlngv6{cursor:pointer;opacity:.7;width:24px;height:24px;color:var(--rc-text-secondary);background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;transition:opacity .2s,color .2s;display:inline-flex;position:absolute;top:1.25rem;right:1.5rem}.vwlngv6:hover{opacity:1;color:var(--rc-text)}.vwlngv6:focus-visible{box-shadow:0 0 0 2px var(--rc-bg), 0 0 0 4px var(--rc-text-secondary);outline:none}.vwlngv6:disabled{pointer-events:none;opacity:.5}.vwlngv6 svg{pointer-events:none;flex-shrink:0;width:16px;height:16px}.vwlngv7{align-items:flex-start;gap:.75rem;padding:1.25rem 1.5rem .75rem;display:flex}.vwlngv8{text-align:center;flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.vwlngv9{cursor:pointer;opacity:.7;width:24px;height:24px;color:var(--rc-text-secondary);background:0 0;border:none;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .2s,color .2s;display:inline-flex}.vwlngv9:hover{opacity:1;color:var(--rc-text)}.vwlngv9:focus-visible{box-shadow:0 0 0 2px var(--rc-bg), 0 0 0 4px var(--rc-text-secondary);outline:none}.vwlngv9 svg{pointer-events:none;flex-shrink:0;width:16px;height:16px}.vwlngva{flex-direction:column-reverse;gap:.5rem;padding:.75rem 1.5rem 1.25rem;display:flex}.vwlngvb{font-family:var(--rc-font-family);letter-spacing:-.015em;color:var(--rc-text);font-size:1.125em;font-weight:600;line-height:1.33}.vwlngvc{font-family:var(--rc-font-family);font-size:var(--rc-font-size-md);color:var(--rc-text-secondary);line-height:1.43}.vwlngvf{z-index:50;background-color:#00000080;transition:opacity .2s;position:fixed;top:0;bottom:0;left:0;right:0}.vwlngvg{z-index:50;background-color:var(--rc-bg);max-height:85vh;color:var(--rc-text);font-family:var(--rc-font-family-sans);will-change:transform;border-top-left-radius:12px;border-top-right-radius:12px;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #00000026}.vwlngvg[data-open]{animation:.3s cubic-bezier(.32,.72,0,1) vwlngvd}.vwlngvg[data-closed]{animation:.2s ease-in vwlngve}.vwlngvh{cursor:grab;touch-action:none;flex-shrink:0;justify-content:center;align-items:center;padding:12px 0 4px;display:flex}.vwlngvh:active{cursor:grabbing}.vwlngvi{background-color:var(--rc-text-tertiary);opacity:.5;border-radius:2px;width:36px;height:4px}.vwlngvj{-webkit-overflow-scrolling:touch;flex:1;padding:0 1.5rem 1.5rem;overflow:hidden auto}.vwlngvk{text-align:center;flex-direction:column;gap:.375rem;padding:0 1.5rem .5rem;display:flex}@media (min-width:640px){.vwlngv5{max-width:28rem}.vwlngv8{text-align:left}.vwlngva{flex-direction:row;justify-content:flex-end}}.oih0op0{border-radius:var(--rc-radius-lg);min-width:8rem;padding:var(--rc-space-xs);background-color:var(--rc-bg);box-shadow:0 0 0 1px color-mix(in srgb, var(--rc-text) 10%, transparent), var(--rc-shadow-menu);color:var(--rc-text);font-family:var(--rc-font-family-sans);font-size:var(--rc-font-size-small);z-index:50;max-height:var(--available-height);transform-origin:var(--transform-origin);outline:none;max-width:min(20rem,100vw - .75rem);transition:opacity .1s ease-out,transform .1s ease-out;overflow:hidden auto}.oih0op0[data-open]{animation:.1s ease-out _1sxaacb0}.oih0op0[data-starting-style],.oih0op0[data-ending-style]{opacity:0;transform:scale(.95)}.oih0op0[data-closed]{animation:.1s ease-in _1sxaacb1;overflow:hidden}.oih0op1{z-index:50;isolation:isolate;outline:none}.oih0op1[data-side=bottom]{transform:translateY(2px)}.oih0op1[data-side=top]{transform:translateY(-2px)}.oih0op1[data-side=left]{transform:translate(-2px)}.oih0op1[data-side=right]{transform:translate(2px)}.oih0op2{border-radius:var(--rc-radius-md);padding:var(--rc-space-xs) var(--rc-space-md) var(--rc-space-xs) var(--rc-space-sm);font-size:var(--rc-font-size-small);-webkit-user-select:none;user-select:none;cursor:default;color:var(--rc-text);outline:none;align-items:center;gap:.375rem;line-height:1.35;transition:background-color .1s,color .1s;display:flex;position:relative}.oih0op2[data-highlighted]{background-color:var(--rc-fill-secondary);color:var(--rc-text)}.oih0op2[data-disabled]{opacity:.5;pointer-events:none}.oih0op2 svg{pointer-events:none;width:1rem;height:1rem;color:var(--rc-text-secondary);flex-shrink:0;transition:color .1s}.oih0op2[data-highlighted] svg{color:var(--rc-text)}.oih0op3{padding-right:2rem}.oih0op4,.oih0op5{pointer-events:none;width:1rem;height:1rem;color:var(--rc-text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:absolute;right:.5rem}._1dj5lvb0{pointer-events:auto;justify-content:flex-end;max-width:60%;display:flex;position:absolute;bottom:4px;right:8px}._1dj5lvb1{-webkit-appearance:none;appearance:none;text-align:right;width:100%;min-width:0;font-style:italic;font-family:var(--rc-font-family);color:var(--rc-text-secondary);background:0 0;border:none;border-bottom:1px dotted #0000;border-radius:0;outline:none;margin:0;padding:0 2px;font-size:12px;transition:border-color .12s,background-color .12s}._1dj5lvb1::placeholder{color:var(--rc-text-quaternary);font-style:italic}._1dj5lvb1:hover{border-bottom-color:var(--rc-text-quaternary)}._1dj5lvb1:focus{border-bottom-color:var(--rc-text-tertiary)}._1y5k2ih0{scrollbar-width:thin;scrollbar-color:#00000026 transparent;overflow:auto}._1y5k2ih0::-webkit-scrollbar{width:6px}._1y5k2ih0::-webkit-scrollbar-track{background:0 0}._1y5k2ih0::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}._6d8tz20{background-color:var(--rc-bg-tertiary);border-radius:.5rem;align-items:center;padding:.25rem;display:inline-flex;position:relative}._6d8tz21{height:2rem;font-size:var(--rc-font-size-xs)}._6d8tz22{height:2.5rem;font-size:var(--rc-font-size-md)}._6d8tz23{width:100%}._6d8tz25{background-color:var(--rc-bg);pointer-events:none;border-radius:.375rem;transition:all .3s cubic-bezier(.25,1,.5,1);position:absolute;top:.25rem;bottom:.25rem;box-shadow:0 1px 2px #0000000d}._6d8tz27{opacity:0}._6d8tz28{z-index:10;white-space:nowrap;cursor:pointer;color:var(--rc-text-secondary);background:0 0;border:none;border-radius:.375rem;outline:none;justify-content:center;align-items:center;font-weight:500;transition:color .2s;display:flex;position:relative}._6d8tz28:focus-visible{outline:2px solid var(--rc-accent);outline-offset:1px}._6d8tz29{padding:0 .75rem}._6d8tz2a{padding:0 1rem}._6d8tz2b{color:var(--rc-text)}._6d8tz2d{pointer-events:none;opacity:.4}._6d8tz2f{flex:1}@keyframes p74a620{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes p74a621{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.p74a622{height:36px;font-size:var(--rc-font-size-small);line-height:1.35;font-family:var(--rc-font-family-sans);border:1px solid var(--rc-border);border-radius:var(--rc-radius-md);color:var(--rc-text);cursor:pointer;white-space:nowrap;background:0 0;outline:none;justify-content:space-between;align-items:center;gap:6px;padding:8px 8px 8px 10px;transition:color .15s,box-shadow .15s,border-color .15s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.p74a622:hover{background:var(--rc-fill-quaternary)}.p74a622:focus-visible{border-color:var(--rc-accent);box-shadow:0 0 0 3px var(--rc-accent-light)}.p74a622[data-popup-open]{background:var(--rc-fill-quaternary)}.p74a622[data-disabled]{opacity:.5;cursor:not-allowed}.p74a623{width:16px;height:16px;color:var(--rc-text-tertiary);pointer-events:none;flex-shrink:0}.p74a624{z-index:50;isolation:isolate;outline:none}.p74a625{background:var(--rc-bg);color:var(--rc-text);font-family:var(--rc-font-family-sans);font-size:var(--rc-font-size-small);border-radius:var(--rc-radius-md);box-shadow:0 0 0 1px color-mix(in srgb, var(--rc-text) 10%, transparent), var(--rc-shadow-menu);width:min(var(--anchor-width), calc(100vw - .75rem));max-width:calc(100vw - .75rem);max-height:var(--available-height);transform-origin:var(--transform-origin);outline:none;transition:opacity .1s ease-out,transform .1s ease-out;overflow:hidden auto}.p74a625[data-open]{animation:.1s ease-out p74a620}.p74a625[data-starting-style],.p74a625[data-ending-style]{opacity:0;transform:scale(.95)}.p74a625[data-closed]{animation:.1s ease-in p74a621;overflow:hidden}.p74a626{padding:4px}.p74a626+.p74a626{border-top:1px solid var(--rc-hr-border)}.p74a627{border-radius:var(--rc-radius-sm);font-size:var(--rc-font-size-small);-webkit-user-select:none;user-select:none;cursor:default;color:var(--rc-text);outline:none;align-items:center;gap:8px;padding:6px 32px 6px 8px;line-height:1.35;transition:background-color .1s,color .1s;display:flex;position:relative}.p74a627[data-highlighted]{background-color:var(--rc-fill-secondary);color:var(--rc-text)}.p74a627[data-disabled]{opacity:.5;pointer-events:none}.p74a627 svg{pointer-events:none;flex-shrink:0;width:16px;height:16px}.p74a628{pointer-events:none;width:16px;height:16px;color:var(--rc-text-secondary);justify-content:center;align-items:center;display:flex;position:absolute;right:8px}.p74a627[data-highlighted] .p74a628{color:var(--rc-text)}.p74a629{font-size:var(--rc-font-size-xs);color:var(--rc-text-tertiary);padding:6px 8px;font-weight:500;line-height:1.4}.p74a62a{background-color:var(--rc-hr-border);height:1px;margin:4px -4px}.p74a62b{cursor:default;width:100%;color:var(--rc-text-tertiary);background:var(--rc-bg);z-index:10;justify-content:center;align-items:center;padding:4px 0;display:flex}.p74a62b svg{width:16px;height:16px}@keyframes _131cfek0{to{transform:rotate(360deg)}}._131cfek1{border:2px solid;border-top-color:#0000;border-radius:50%;flex-shrink:0;animation:.6s linear infinite _131cfek0;display:inline-block}._131cfek2{width:14px;height:14px}._131cfek3{width:20px;height:20px}@keyframes _73cmpa0{0%{opacity:1;transform:scale(1)}50%{opacity:0;transform:scale(1.8)}to{opacity:0;transform:scale(1.8)}}._73cmpa1{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}._73cmpa2{border-radius:50%;flex-shrink:0}._73cmpa3{background-color:#a3a3a3}._73cmpa4{background-color:#3b82f6}._73cmpa5{background-color:#22c55e}._73cmpa6{background-color:#ef4444}._73cmpa7{background-color:#f59e0b}._73cmpa8{width:8px;height:8px}._73cmpa9{width:12px;height:12px}._73cmpaa{border-radius:50%;animation:1.5s ease-in-out infinite _73cmpa0;position:absolute}._73cmpab{background-color:#a3a3a3}._73cmpac{background-color:#3b82f6}._73cmpad{background-color:#22c55e}._73cmpae{background-color:#ef4444}._73cmpaf{background-color:#f59e0b}._73cmpag{width:8px;height:8px}._73cmpah{width:12px;height:12px}@keyframes _1cspf2m0{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes _1cspf2m1{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(2px)}}._1cspf2m2{z-index:50;outline:none}._1cspf2m3{max-width:320px;padding:var(--rc-space-xs) var(--rc-space-sm);font-size:var(--rc-font-size-xs);color:var(--rc-text);background-color:var(--rc-bg);border:1px solid var(--rc-border);border-radius:var(--rc-radius-md);box-shadow:var(--rc-shadow-menu);white-space:normal;word-break:break-word;pointer-events:none;outline:none;line-height:1.4;transition:opacity .12s ease-out,transform .12s ease-out}._1cspf2m3[data-open]{animation:.12s ease-out _1cspf2m0}._1cspf2m3[data-ending-style]{opacity:0;transform:translateY(2px)}._1cspf2m3[data-closed]{animation:.12s ease-in _1cspf2m1}
1
+ :root{--rc-text:#000;--rc-text-secondary:#262626;--rc-text-tertiary:#737373;--rc-text-quaternary:#a3a3a3;--rc-bg:#fff;--rc-bg-secondary:#fafafa;--rc-bg-tertiary:#f5f5f5;--rc-fill:#e8e8e8;--rc-fill-secondary:#eee;--rc-fill-tertiary:#f5f5f5;--rc-fill-quaternary:#fafafa;--rc-border:#f5f5f5;--rc-accent:#2563eb;--rc-accent-light:#2563eb20;--rc-link:#2563eb;--rc-code-text:#404040;--rc-code-bg:#f5f5f5;--rc-hr-border:#e5e5e5;--rc-quote-border:#2563eb;--rc-quote-bg:#f5f5f5;--rc-alert-info:#006bb7;--rc-alert-warning:#c50;--rc-alert-tip:#1c0;--rc-alert-caution:#c01;--rc-alert-important:#50c;--rc-max-width:700px;--rc-shadow-top-bar:0 8px 30px #0000001f, 0 2px 8px #0000000f;--rc-shadow-modal:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--rc-shadow-menu:0 1px 4px #0000000a, 0 4px 16px #00000014;--rc-space-xs:4px;--rc-space-sm:8px;--rc-space-md:16px;--rc-space-lg:24px;--rc-space-xl:32px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:16px;--rc-font-size-small:14px;--rc-line-height:1.7;--rc-line-height-tight:1.4;--rc-font-family:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-radius-sm:4px;--rc-radius-md:8px;--rc-radius-lg:12px}:root.dark,[data-theme=dark]{--rc-text:#fafafa;--rc-text-secondary:#a3a3a3;--rc-text-tertiary:#737373;--rc-text-quaternary:#525252;--rc-bg:#0a0a0a;--rc-bg-secondary:#171717;--rc-bg-tertiary:#262626;--rc-fill:#2a2a2a;--rc-fill-secondary:#222;--rc-fill-tertiary:#1a1a1a;--rc-fill-quaternary:#141414;--rc-border:#262626;--rc-accent:#60a5fa;--rc-accent-light:#60a5fa20;--rc-link:#60a5fa;--rc-code-text:#d4d4d4;--rc-code-bg:#262626;--rc-hr-border:#262626;--rc-quote-border:#60a5fa;--rc-quote-bg:#262626;--rc-alert-info:#7db9e5;--rc-alert-warning:#da864a;--rc-alert-tip:#54da48;--rc-alert-caution:#e16973;--rc-alert-important:#9966e0;--rc-max-width:700px;--rc-shadow-top-bar:0 8px 30px #00000073, 0 2px 8px #0000004d;--rc-shadow-modal:0 10px 15px -3px #0006, 0 4px 6px -4px #00000059;--rc-shadow-menu:0 1px 4px #00000040, 0 4px 16px #0006;--rc-space-xs:4px;--rc-space-sm:8px;--rc-space-md:16px;--rc-space-lg:24px;--rc-space-xl:32px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:16px;--rc-font-size-small:14px;--rc-line-height:1.7;--rc-line-height-tight:1.4;--rc-font-family:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-radius-sm:4px;--rc-radius-md:8px;--rc-radius-lg:12px}._4yrh350{--rc-text:#000;--rc-text-secondary:#262626;--rc-text-tertiary:#737373;--rc-text-quaternary:#a3a3a3;--rc-bg:#fff;--rc-bg-secondary:#fafafa;--rc-bg-tertiary:#f5f5f5;--rc-fill:#e8e8e8;--rc-fill-secondary:#eee;--rc-fill-tertiary:#f5f5f5;--rc-fill-quaternary:#fafafa;--rc-border:#f5f5f5;--rc-accent:#2563eb;--rc-accent-light:#2563eb20;--rc-link:#2563eb;--rc-code-text:#404040;--rc-code-bg:#f5f5f5;--rc-hr-border:#e5e5e5;--rc-quote-border:#2563eb;--rc-quote-bg:#f5f5f5;--rc-alert-info:#006bb7;--rc-alert-warning:#c50;--rc-alert-tip:#1c0;--rc-alert-caution:#c01;--rc-alert-important:#50c;--rc-max-width:700px;--rc-shadow-top-bar:0 8px 30px #0000001f, 0 2px 8px #0000000f;--rc-shadow-modal:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--rc-shadow-menu:0 1px 4px #0000000a, 0 4px 16px #00000014;--rc-space-xs:4px;--rc-space-sm:8px;--rc-space-md:16px;--rc-space-lg:24px;--rc-space-xl:32px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:16px;--rc-font-size-small:14px;--rc-line-height:1.7;--rc-line-height-tight:1.4;--rc-font-family:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-radius-sm:4px;--rc-radius-md:8px;--rc-radius-lg:12px}._4yrh351{--rc-text:#000;--rc-text-secondary:#262626;--rc-text-tertiary:#737373;--rc-text-quaternary:#a3a3a3;--rc-bg:#fff;--rc-bg-secondary:#fafafa;--rc-bg-tertiary:#f5f5f5;--rc-fill:#e8e8e8;--rc-fill-secondary:#eee;--rc-fill-tertiary:#f5f5f5;--rc-fill-quaternary:#fafafa;--rc-border:#f5f5f5;--rc-accent:#2563eb;--rc-accent-light:#2563eb20;--rc-link:#2563eb;--rc-code-text:#404040;--rc-code-bg:#f5f5f5;--rc-hr-border:#e5e5e5;--rc-quote-border:#2563eb;--rc-quote-bg:#f5f5f5;--rc-alert-info:#006bb7;--rc-alert-warning:#c50;--rc-alert-tip:#1c0;--rc-alert-caution:#c01;--rc-alert-important:#50c;--rc-max-width:700px;--rc-shadow-top-bar:0 8px 30px #0000001f, 0 2px 8px #0000000f;--rc-shadow-modal:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--rc-shadow-menu:0 1px 4px #0000000a, 0 4px 16px #00000014;--rc-space-xs:4px;--rc-space-sm:8px;--rc-space-md:16px;--rc-space-lg:24px;--rc-space-xl:32px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:16px;--rc-font-size-small:14px;--rc-line-height:1.8;--rc-line-height-tight:1.4;--rc-font-family:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-radius-sm:4px;--rc-radius-md:8px;--rc-radius-lg:12px}._4yrh352{--rc-text:#000;--rc-text-secondary:#262626;--rc-text-tertiary:#737373;--rc-text-quaternary:#a3a3a3;--rc-bg:#fff;--rc-bg-secondary:#fafafa;--rc-bg-tertiary:#f5f5f5;--rc-fill:#e8e8e8;--rc-fill-secondary:#eee;--rc-fill-tertiary:#f5f5f5;--rc-fill-quaternary:#fafafa;--rc-border:#f5f5f5;--rc-accent:#2563eb;--rc-accent-light:#2563eb20;--rc-link:#2563eb;--rc-code-text:#404040;--rc-code-bg:#f5f5f5;--rc-hr-border:#e5e5e5;--rc-quote-border:#a3a3a3;--rc-quote-bg:#fafafa;--rc-alert-info:#006bb7;--rc-alert-warning:#c50;--rc-alert-tip:#1c0;--rc-alert-caution:#c01;--rc-alert-important:#50c;--rc-max-width:none;--rc-shadow-top-bar:0 8px 30px #0000001f, 0 2px 8px #0000000f;--rc-shadow-modal:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--rc-shadow-menu:0 1px 4px #0000000a, 0 4px 16px #00000014;--rc-space-xs:2px;--rc-space-sm:4px;--rc-space-md:10px;--rc-space-lg:16px;--rc-space-xl:20px;--rc-font-family-sans:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-font-family-serif:"Noto Serif CJK SC", "Source Han Serif SC", "Source Han Serif", "source-han-serif-sc", "Songti SC", STSong, "华文宋体", serif;--rc-font-family-kai:"楷体", KaiTi, STKaiti, "Kaiti SC", "LXGW WenKai", "霞鹜文楷", "Noto Serif CJK SC", serif;--rc-font-mono:"SF Mono", SFMono-Regular, ui-monospace, "DejaVu Sans Mono", Menlo, Consolas, monospace;--rc-font-size-2xs:.625em;--rc-font-size-xs:.75em;--rc-font-size-sm:.8125em;--rc-font-size-md:.875em;--rc-font-size-lg:1.25em;--rc-font-size-base:14px;--rc-font-size-small:12px;--rc-line-height:1.5;--rc-line-height-tight:1.3;--rc-font-family:"PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, "noto sans sc", "hiragino sans gb", -apple-system, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Not Color Emoji;--rc-radius-sm:3px;--rc-radius-md:6px;--rc-radius-lg:12px}.dark ._4yrh350,[data-theme=dark] ._4yrh350,.dark._4yrh350,[data-theme=dark]._4yrh350,.dark ._4yrh351,[data-theme=dark] ._4yrh351,.dark._4yrh351,[data-theme=dark]._4yrh351,.dark ._4yrh352,[data-theme=dark] ._4yrh352,.dark._4yrh352,[data-theme=dark]._4yrh352{--rc-text:#fafafa;--rc-text-secondary:#a3a3a3;--rc-text-tertiary:#737373;--rc-text-quaternary:#525252;--rc-bg:#0a0a0a;--rc-bg-secondary:#171717;--rc-bg-tertiary:#262626;--rc-fill:#2a2a2a;--rc-fill-secondary:#222;--rc-fill-tertiary:#1a1a1a;--rc-fill-quaternary:#141414;--rc-border:#262626;--rc-accent:#60a5fa;--rc-accent-light:#60a5fa20;--rc-link:#60a5fa;--rc-code-text:#d4d4d4;--rc-code-bg:#262626;--rc-hr-border:#262626;--rc-quote-border:#60a5fa;--rc-quote-bg:#262626;--rc-alert-info:#7db9e5;--rc-alert-warning:#da864a;--rc-alert-tip:#54da48;--rc-alert-caution:#e16973;--rc-alert-important:#9966e0;--rc-shadow-top-bar:0 8px 30px #00000073, 0 2px 8px #0000004d;--rc-shadow-modal:0 10px 15px -3px #0006, 0 4px 6px -4px #00000059;--rc-shadow-menu:0 1px 4px #00000040, 0 4px 16px #0006}._73ej2i0{justify-content:flex-end;align-items:center;gap:4px;display:flex}._73ej2i1{-webkit-appearance:none;appearance:none;cursor:pointer;background:0 0;border:none;outline:none;justify-content:center;align-items:center;font-family:inherit;transition:color .15s,background-color .15s;display:inline-flex}._73ej2i1:focus-visible{box-shadow:0 0 0 2px var(--rc-accent-light)}._73ej2i1:disabled{opacity:.45;cursor:not-allowed}._73ej2i2{color:inherit}._73ej2i2:hover:not(:disabled){background-color:var(--rc-fill-secondary)}._73ej2i3{background-color:var(--rc-text);color:var(--rc-bg);transition:background-color .15s,border-color .15s,color .15s}._73ej2i3:hover:not(:disabled){background-color:color-mix(in srgb, var(--rc-text) 86%, transparent)}._73ej2i4{background:var(--rc-bg);color:var(--rc-text-secondary);border:1px solid var(--rc-border);transition:background-color .15s,border-color .15s,color .15s}._73ej2i4:hover:not(:disabled){background:var(--rc-fill-secondary);color:var(--rc-text)}._73ej2i5{background-color:var(--rc-accent);color:#fff}._73ej2i5:hover:not(:disabled){filter:brightness(.9)}._73ej2i5:disabled{opacity:.5;cursor:default;pointer-events:none}._73ej2i6{font-size:var(--rc-font-size-sm);border-radius:var(--rc-radius-sm);white-space:nowrap;gap:6px;height:24px;padding:4px 8px;font-weight:500}._73ej2i7{font-size:var(--rc-font-size-sm);border-radius:var(--rc-radius-md);white-space:nowrap;gap:6px;height:28px;padding:4px 10px;font-weight:500;line-height:1.4}._73ej2i8{font-size:var(--rc-font-size-small);border-radius:var(--rc-radius-md);white-space:nowrap;gap:8px;height:36px;padding:0 14px;font-weight:600}._73ej2ib{margin-left:auto}._73ej2ih{font-size:var(--rc-font-size-small);width:24px;height:24px;color:color-mix(in srgb, var(--rc-text-secondary) 60%, transparent);gap:0;padding:0}._73ej2ih:hover:not(:disabled){color:var(--rc-text);background-color:var(--rc-fill-secondary)}._73ej2ih:disabled{opacity:.3;pointer-events:none}._73ej2ii{font-size:var(--rc-font-size-base);border-radius:var(--rc-radius-md);width:auto;height:auto;color:var(--rc-text-secondary);gap:0;padding:6px}._73ej2ii:hover:not(:disabled){color:var(--rc-text);background-color:color-mix(in srgb, var(--rc-text) 8%, transparent)}._73ej2ii:disabled{opacity:.3;cursor:default}._73ej2ii:disabled:hover{color:var(--rc-text-secondary);background:0 0}._73ej2ij{border-radius:var(--rc-radius-md);width:auto;height:auto;color:var(--rc-text-secondary);gap:0;padding:8px;font-size:20px}._73ej2ij:hover:not(:disabled){color:var(--rc-text);background-color:color-mix(in srgb, var(--rc-text) 8%, transparent)}._73ej2ij:disabled{opacity:.3;cursor:default}._73ej2ij:disabled:hover{color:var(--rc-text-secondary);background:0 0}._73ej2ik{border-radius:50%}._73ej2il:hover:not(:disabled){color:var(--rc-alert-caution);background-color:color-mix(in srgb, var(--rc-alert-caution) 10%, transparent)}.re-ui-action-btn--icon svg{width:1em;height:1em}._15r7gwx0{border:1px solid #0000;border-radius:8px;align-items:flex-start;gap:8px;padding:8px 12px;font-size:13px;line-height:1.5;display:flex}._15r7gwx1{color:#1e40af;background-color:#3b82f60f;border-color:#3b82f63d}._15r7gwx2{color:#92400e;background-color:#f59e0b0f;border-color:#f59e0b3d}._15r7gwx3{color:#991b1b;background-color:#ef44440f;border-color:#ef44443d}._15r7gwx4{flex:1;min-width:0}._15r7gwx5{flex-shrink:0;width:16px;height:16px;margin-top:2px}._15r7gwx6{flex-shrink:0;margin-left:auto}.iryuae0{position:relative}.iryuae1{display:flex}.iryuae2{font-size:var(--rc-font-size-md);cursor:pointer;color:var(--rc-text-secondary);background:0 0;border:none;outline:none;padding:.625rem 1rem;font-weight:500;transition:color .2s;position:relative}.iryuae2:hover{color:color-mix(in srgb, currentColor 80%, transparent)}.iryuae2:focus-visible{outline:2px solid var(--rc-accent);outline-offset:2px}.iryuae3{color:var(--rc-text)}.iryuae4{background-color:var(--rc-border);height:1px;position:absolute;bottom:0;left:0;right:0}.iryuae5{background-color:var(--rc-text);height:2px;transition:left .3s ease-in-out,width .3s ease-in-out;position:absolute;bottom:0}._1b25hgb0{resize:none;border:1px solid var(--rc-border);border-radius:var(--rc-radius-md);background:var(--rc-bg);width:100%;color:var(--rc-text);outline:none;padding:8px 12px;font-family:inherit;font-size:14px;line-height:1.5;overflow:hidden}._1b25hgb0:focus{border-color:var(--rc-text-quaternary)}._1b25hgb0::placeholder{color:var(--rc-text-quaternary)}._1b25hgb1{overflow-y:auto}._1vt0sm10{white-space:nowrap;border-radius:9999px;align-items:center;font-weight:500;line-height:1;display:inline-flex}._1vt0sm11{background-color:var(--rc-fill-tertiary);color:var(--rc-text-tertiary)}._1vt0sm12{color:#16a34a;background-color:#22c55e1a}._1vt0sm13{color:#dc2626;background-color:#ef44441a}._1vt0sm14{color:#d97706;background-color:#f59e0b1a}._1vt0sm15{color:#2563eb;background-color:#3b82f61a}._1vt0sm16{gap:3px;padding:2px 6px;font-size:11px}._1vt0sm17{gap:4px;padding:3px 8px;font-size:12px}@keyframes _10muorc0{0%{transform:scale(1)}40%{transform:scale(.85)}to{transform:scale(1)}}@keyframes _10muorc1{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--rc-accent) 40%, transparent)}to{box-shadow:0 0 0 6px #0000}}._10muorc2{text-align:left;cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;border-radius:.5rem;align-items:flex-start;gap:.75rem;padding:.25rem;display:inline-flex}._10muorc2:focus-visible{outline:2px solid var(--rc-accent);outline-offset:2px}._10muorc3{cursor:not-allowed;opacity:.5}._10muorc4{box-sizing:border-box;border-style:solid;border-width:2px;border-radius:.3rem;flex-shrink:0;justify-content:center;align-items:center;width:1.125rem;height:1.125rem;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative}._10muorc5{border-color:color-mix(in srgb, var(--rc-text-secondary) 50%, transparent);background-color:#0000}._10muorc6{border-color:var(--rc-accent);background-color:var(--rc-accent)}._10muorc7{animation:.4s ease-out _10muorc0}._10muorc8{width:.75rem;height:.75rem;transition:all .3s cubic-bezier(.34,1.56,.64,1)}._10muorc9{opacity:1;transform:scale(1)}._10muorca{opacity:0;transform:scale(.5)}._10muorcb{pointer-events:none;border-radius:.3rem;position:absolute;top:0;bottom:0;left:0;right:0}._10muorcc{animation:.4s ease-out _10muorc1}._10muorcd{flex-direction:column;gap:.125rem;display:flex}._10muorce{font-size:var(--rc-font-size-md);color:var(--rc-text);font-weight:500;line-height:1.25;transition:color .2s}._10muorcf{color:var(--rc-text-secondary)}._10muorcg{font-size:var(--rc-font-size-xs);color:var(--rc-text-secondary);line-height:1.25}._1gq8hf90{--rr-code-accent:#737373;font-size:var(--rc-font-size-md);font-family:var(--rc-font-mono);border-radius:.5rem;margin:1.5rem 0;line-height:1.65;position:relative;overflow:hidden}._1gq8hf91{z-index:1;font-size:var(--rc-font-size-md);opacity:.6;pointer-events:none;align-items:center;gap:.375rem;display:flex;position:absolute;bottom:.75rem;right:.75rem}._1gq8hf92{-webkit-appearance:none;appearance:none;z-index:3;border:1px solid color-mix(in srgb, var(--rr-code-accent) 5%, transparent);background:color-mix(in srgb, var(--rr-code-accent) 80%, transparent);color:#fff;cursor:pointer;opacity:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:.375rem;justify-content:center;align-items:center;padding:.375rem;transition:opacity .2s;display:flex;position:absolute;top:.5rem;right:.5rem}._1gq8hf90:hover ._1gq8hf92{opacity:1}._1gq8hf93{background:color-mix(in srgb, var(--rr-code-accent) 5%, transparent);padding:0;position:relative}._1gq8hf94{padding-block-start:12px;padding-block-end:12px}._1gq8hf95{width:100%;position:relative;overflow:auto}._1gq8hf96{max-height:50vh;overflow:hidden}._1gq8hf97{background:linear-gradient(to bottom, transparent 0%, var(--bg,var(--rc-bg-secondary)) 80%);pointer-events:none;justify-content:center;padding:.5rem 0 .75rem;display:flex;position:absolute;bottom:0;left:0;right:0}._1gq8hf98{-webkit-appearance:none;appearance:none;cursor:pointer;font-size:var(--rc-font-size-xs);color:inherit;opacity:.7;pointer-events:auto;background:0 0;border:none;align-items:center;gap:.5rem;display:flex}._1gq8hf98:hover{opacity:1}._1gq8hf99{counter-reset:shiki-line 0}._1gq8hf99 .line{counter-increment:shiki-line 1}._1gq8hf99 .line:before{content:counter(shiki-line);color:#0000;text-align:right;box-sizing:border-box;width:2em;display:inline-block;position:sticky;left:0}._1gq8hf9a .line:before{color:inherit;opacity:.4;width:5em;padding-right:2em}._1gq8hf90 pre{border-radius:0;font-size:1em;overflow-x:auto;margin:0!important;padding:0!important}._1gq8hf90 pre code{line-height:inherit;flex-direction:column;display:flex;font-family:var(--rc-font-mono)!important}._1gq8hf90 .shiki,._1gq8hf90 code,._1gq8hf90 pre{line-height:inherit;background:0 0!important}[data-theme=dark] ._1gq8hf90 .shiki-themes,[data-theme=dark] ._1gq8hf90 .shiki-themes span{color:var(--shiki-dark)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;-webkit-text-decoration:var(--shiki-dark-text-decoration)!important;text-decoration:var(--shiki-dark-text-decoration)!important}._1gq8hf90 .line{padding:0 1.25rem;display:block}._1gq8hf90 .line>span:last-child{margin-right:1.25rem}._1gq8hf90 .line:after{content:" "}._1hdi6a90{cursor:pointer;color:var(--rc-text-tertiary);font-size:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:6px;width:100%;padding:0;font-family:inherit;display:flex}._1hdi6a90:hover{color:var(--rc-text-secondary)}._1hdi6a91{flex-shrink:0;width:14px;height:14px;transition:transform .2s}[data-panel-open] ._1hdi6a91{transform:rotate(90deg)}._1hdi6a92{interpolate-size:allow-keywords;height:var(--collapsible-panel-height);transition:height .2s cubic-bezier(.4,0,.2,1);overflow:hidden}._1hdi6a92[data-closed],._1hdi6a92[data-starting-style],._1hdi6a92[data-ending-style]{height:0}@keyframes f2q44l0{0%{opacity:0;transform:translateY(2px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes f2q44l1{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(2px)scale(.96)}}.f2q44l2{z-index:50;border:1px solid var(--rc-border);background-color:var(--rc-bg);width:288px;box-shadow:var(--rc-shadow-modal);font-family:var(--rc-font-family-sans);border-radius:.5rem;outline:none;padding:1rem;transition:opacity .15s ease-out,transform .15s ease-out}.f2q44l2[data-open]{animation:.15s ease-out f2q44l0}.f2q44l2[data-ending-style]{opacity:0;transform:translateY(2px)scale(.96)}.f2q44l2[data-closed]{animation:.15s ease-in f2q44l1}.f2q44l3{transform-origin:50%;width:10px;height:10px}.f2q44l3>polygon{fill:var(--rc-bg)}.f2q44l3>polyline{stroke:var(--rc-border);fill:none}.f2q44l4{font-size:var(--rc-font-size-md);color:var(--rc-text);font-weight:600;line-height:1}.f2q44l5{font-size:var(--rc-font-size-md);color:var(--rc-text-secondary);margin-top:.25rem;line-height:1.25rem}@keyframes _17r50hf0{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}._17r50hf1{cursor:pointer;height:32px;color:var(--rc-text-secondary);background:0 0;border:none;border-radius:8px;align-items:center;gap:2px;padding:0 6px;transition:color .1s,background-color .1s;display:flex}._17r50hf1:hover{color:var(--rc-text);background-color:color-mix(in srgb, var(--rc-text) 4%, transparent)}._17r50hf2{flex-direction:column;align-items:center;display:flex}._17r50hf3{font-size:var(--rc-font-size-xs);font-weight:600;line-height:1}._17r50hf4{border-radius:1px;width:14px;height:2px;margin-top:2px}._17r50hf5{width:12px;height:12px;transition:transform .15s}._17r50hf6{width:220px;padding:8px}._17r50hf6[data-open]{animation:.12s ease-out _17r50hf0}._17r50hf7{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}._17r50hf8{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background-color .1s;display:flex;position:relative}._17r50hf8:hover{background-color:color-mix(in srgb, var(--rc-text) 4%, transparent)}._17r50hf9{border:1px solid color-mix(in srgb, var(--rc-text) 10%, transparent);border-radius:50%;width:16px;height:16px}._17r50hfa{width:10px;height:10px;color:var(--rc-bg);position:absolute}._17r50hfb{color:#fff;background:conic-gradient(#ef4444,#f59e0b,#22c55e,#3b82f6,#6366f1,#ec4899,#ef4444);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex}._17r50hfc{stroke-width:3px;width:10px;height:10px}._17r50hfd{flex-direction:column;gap:8px;display:flex}._17r50hfe{cursor:pointer;font-size:var(--rc-font-size-xs);color:var(--rc-text-tertiary);background:0 0;border:none;border-radius:6px;align-self:flex-start;align-items:center;gap:4px;margin-bottom:2px;padding:2px 6px;transition:color .1s,background-color .1s;display:flex}._17r50hfe:hover{color:var(--rc-text);background-color:color-mix(in srgb, var(--rc-text) 4%, transparent)}._17r50hff{width:12px;height:12px}._17r50hfg{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:6px;width:100%;height:140px;position:relative;overflow:hidden}._17r50hfh{pointer-events:none;background:linear-gradient(90deg,#fff,#0000);position:absolute;top:0;bottom:0;left:0;right:0}._17r50hfi{pointer-events:none;background:linear-gradient(#0000,#000);position:absolute;top:0;bottom:0;left:0;right:0}._17r50hfj{pointer-events:none;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000004d}._17r50hfk{cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);border-radius:5px;width:100%;height:10px;position:relative}._17r50hfl{cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:repeating-conic-gradient(#ddd 0% 25%,#fff 0% 50%) 0/8px 8px;border-radius:5px;width:100%;height:10px;position:relative;overflow:hidden}._17r50hfm{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}._17r50hfn{pointer-events:none;border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000004d}._17r50hfo{align-items:center;gap:4px;display:flex}._17r50hfp{min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,Courier New,monospace;font-size:var(--rc-font-size-xs);border:1px solid var(--rc-border);background:var(--rc-bg-secondary);color:var(--rc-text);text-transform:uppercase;border-radius:6px;outline:none;flex:1;padding:4px 6px}._17r50hfp:focus{border-color:var(--rc-accent)}._17r50hfq,._17r50hfq:focus{border-color:#ef4444}._17r50hfr{border:1px solid var(--rc-border);background:var(--rc-bg);width:24px;height:24px;color:var(--rc-text-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background-color .1s,color .1s;display:flex}._17r50hfr:hover{color:var(--rc-text);background-color:var(--rc-fill-tertiary)}._17r50hfs{width:12px;height:12px}._17r50hft{border:1px solid var(--rc-border);background:repeating-conic-gradient(#ddd 0% 25%,#fff 0% 50%) 0/6px 6px;border-radius:6px;width:40px;height:24px;display:flex;overflow:hidden}._17r50hfu{flex:1}._17r50hfv{gap:6px;margin-top:2px;display:flex}._17r50hfw{height:28px;font-size:var(--rc-font-size-xs);border:1px solid var(--rc-border);background:var(--rc-bg);color:var(--rc-text);cursor:pointer;border-radius:6px;flex:1;transition:background-color .1s}._17r50hfw:hover{background-color:var(--rc-fill-tertiary)}._17r50hfx{background:var(--rc-text);color:var(--rc-bg);border-color:var(--rc-text)}._17r50hfx:hover{background-color:color-mix(in srgb, var(--rc-text) 85%, transparent)}@keyframes _1sxaacb0{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes _1sxaacb1{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}._1sxaacb2{background-color:var(--rc-hr-border);height:1px;margin:.25rem -.25rem}._1sxaacb3{font-size:var(--rc-font-size-xs);color:var(--rc-text-tertiary);padding:.25rem .375rem;font-weight:500;line-height:1.4}._2buwsh0{border-radius:var(--rc-radius-lg);min-width:8rem;padding:var(--rc-space-xs);background-color:var(--rc-bg);box-shadow:0 0 0 1px color-mix(in srgb, var(--rc-text) 10%, transparent), var(--rc-shadow-menu);color:var(--rc-text);font-family:var(--rc-font-family-sans);font-size:var(--rc-font-size-small);z-index:50;max-height:min(var(--available-height), 16rem);transform-origin:var(--transform-origin);outline:none;transition:opacity .1s ease-out,transform .1s ease-out;overflow:hidden auto}._2buwsh0[data-open]{animation:.1s ease-out _1sxaacb0}._2buwsh0[data-starting-style],._2buwsh0[data-ending-style]{opacity:0;transform:scale(.95)}._2buwsh0[data-closed]{animation:.1s ease-in _1sxaacb1;overflow:hidden}._2buwsh1{border-radius:var(--rc-radius-md);padding:var(--rc-space-xs) var(--rc-space-md) var(--rc-space-xs) var(--rc-space-sm);font-size:var(--rc-font-size-small);-webkit-user-select:none;user-select:none;cursor:default;color:var(--rc-text);outline:none;align-items:center;gap:.375rem;line-height:1.35;transition:background-color .1s,color .1s;display:flex;position:relative}._2buwsh1[data-highlighted]{background-color:var(--rc-fill-secondary);color:var(--rc-text)}._2buwsh1[data-disabled]{opacity:.5;pointer-events:none}._2buwsh1 svg{pointer-events:none;width:1rem;height:1rem;color:var(--rc-text-secondary);flex-shrink:0;transition:color .1s}._2buwsh1[data-highlighted] svg{color:var(--rc-text)}._2buwsh2{font-size:var(--rc-font-size-small);color:var(--rc-text-secondary);text-align:center}@keyframes vwlngv0{0%{opacity:0}to{opacity:1}}@keyframes vwlngv1{0%{opacity:1}to{opacity:0}}@keyframes vwlngv2{0%{opacity:0;transform:translate(-50%,-48%)scale(.95)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes vwlngv3{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-48%)scale(.95)}}@keyframes vwlngvd{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes vwlngve{0%{transform:translateY(0)}to{transform:translateY(100%)}}.vwlngv4{z-index:50;background-color:#000c;position:fixed;top:0;bottom:0;left:0;right:0}.vwlngv4[data-open]{animation:.25s ease-out vwlngv0}.vwlngv4[data-closed]{animation:.2s ease-in vwlngv1}.vwlngv5{z-index:50;border-radius:var(--rc-radius-lg);border:1px solid var(--rc-border);width:100%;max-width:calc(100% - 2rem);font-family:var(--rc-font-family-sans);color:var(--rc-text);background-color:var(--rc-bg);box-shadow:var(--rc-shadow-modal);outline:none;gap:0;padding:0;line-height:1.43;display:grid;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.vwlngv5[data-open]{animation:.15s ease-out vwlngv2}.vwlngv5[data-closed]{animation:.1s ease-in vwlngv3}.vwlngv6{cursor:pointer;opacity:.7;width:24px;height:24px;color:var(--rc-text-secondary);background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;transition:opacity .2s,color .2s;display:inline-flex;position:absolute;top:1.25rem;right:1.5rem}.vwlngv6:hover{opacity:1;color:var(--rc-text)}.vwlngv6:focus-visible{box-shadow:0 0 0 2px var(--rc-bg), 0 0 0 4px var(--rc-text-secondary);outline:none}.vwlngv6:disabled{pointer-events:none;opacity:.5}.vwlngv6 svg{pointer-events:none;flex-shrink:0;width:16px;height:16px}.vwlngv7{align-items:flex-start;gap:.75rem;padding:1.25rem 1.5rem .75rem;display:flex}.vwlngv8{text-align:center;flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.vwlngv9{cursor:pointer;opacity:.7;width:24px;height:24px;color:var(--rc-text-secondary);background:0 0;border:none;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .2s,color .2s;display:inline-flex}.vwlngv9:hover{opacity:1;color:var(--rc-text)}.vwlngv9:focus-visible{box-shadow:0 0 0 2px var(--rc-bg), 0 0 0 4px var(--rc-text-secondary);outline:none}.vwlngv9 svg{pointer-events:none;flex-shrink:0;width:16px;height:16px}.vwlngva{flex-direction:column-reverse;gap:.5rem;padding:.75rem 1.5rem 1.25rem;display:flex}.vwlngvb{font-family:var(--rc-font-family);letter-spacing:-.015em;color:var(--rc-text);font-size:1.125em;font-weight:600;line-height:1.33}.vwlngvc{font-family:var(--rc-font-family);font-size:var(--rc-font-size-md);color:var(--rc-text-secondary);line-height:1.43}.vwlngvf{z-index:50;background-color:#00000080;transition:opacity .2s;position:fixed;top:0;bottom:0;left:0;right:0}.vwlngvg{z-index:50;background-color:var(--rc-bg);max-height:85vh;color:var(--rc-text);font-family:var(--rc-font-family-sans);will-change:transform;border-top-left-radius:12px;border-top-right-radius:12px;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #00000026}.vwlngvg[data-open]{animation:.3s cubic-bezier(.32,.72,0,1) vwlngvd}.vwlngvg[data-closed]{animation:.2s ease-in vwlngve}.vwlngvh{cursor:grab;touch-action:none;flex-shrink:0;justify-content:center;align-items:center;padding:12px 0 4px;display:flex}.vwlngvh:active{cursor:grabbing}.vwlngvi{background-color:var(--rc-text-tertiary);opacity:.5;border-radius:2px;width:36px;height:4px}.vwlngvj{-webkit-overflow-scrolling:touch;flex:1;padding:0 1.5rem 1.5rem;overflow:hidden auto}.vwlngvk{text-align:center;flex-direction:column;gap:.375rem;padding:0 1.5rem .5rem;display:flex}@media (min-width:640px){.vwlngv5{max-width:28rem}.vwlngv8{text-align:left}.vwlngva{flex-direction:row;justify-content:flex-end}}.oih0op0{border-radius:var(--rc-radius-lg);min-width:8rem;padding:var(--rc-space-xs);background-color:var(--rc-bg);box-shadow:0 0 0 1px color-mix(in srgb, var(--rc-text) 10%, transparent), var(--rc-shadow-menu);color:var(--rc-text);font-family:var(--rc-font-family-sans);font-size:var(--rc-font-size-small);z-index:50;max-height:var(--available-height);transform-origin:var(--transform-origin);outline:none;max-width:min(20rem,100vw - .75rem);transition:opacity .1s ease-out,transform .1s ease-out;overflow:hidden auto}.oih0op0[data-open]{animation:.1s ease-out _1sxaacb0}.oih0op0[data-starting-style],.oih0op0[data-ending-style]{opacity:0;transform:scale(.95)}.oih0op0[data-closed]{animation:.1s ease-in _1sxaacb1;overflow:hidden}.oih0op1{z-index:50;isolation:isolate;outline:none}.oih0op1[data-side=bottom]{transform:translateY(2px)}.oih0op1[data-side=top]{transform:translateY(-2px)}.oih0op1[data-side=left]{transform:translate(-2px)}.oih0op1[data-side=right]{transform:translate(2px)}.oih0op2{border-radius:var(--rc-radius-md);padding:var(--rc-space-xs) var(--rc-space-md) var(--rc-space-xs) var(--rc-space-sm);font-size:var(--rc-font-size-small);-webkit-user-select:none;user-select:none;cursor:default;color:var(--rc-text);outline:none;align-items:center;gap:.375rem;line-height:1.35;transition:background-color .1s,color .1s;display:flex;position:relative}.oih0op2[data-highlighted]{background-color:var(--rc-fill-secondary);color:var(--rc-text)}.oih0op2[data-disabled]{opacity:.5;pointer-events:none}.oih0op2 svg{pointer-events:none;width:1rem;height:1rem;color:var(--rc-text-secondary);flex-shrink:0;transition:color .1s}.oih0op2[data-highlighted] svg{color:var(--rc-text)}.oih0op3{padding-right:2rem}.oih0op4,.oih0op5{pointer-events:none;width:1rem;height:1rem;color:var(--rc-text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:absolute;right:.5rem}._1dj5lvb0{z-index:50;pointer-events:none;position:fixed}._1dj5lvb1{pointer-events:auto;justify-content:flex-end;max-width:60%;display:flex;position:absolute;bottom:4px;right:8px}._1dj5lvb2{-webkit-appearance:none;appearance:none;text-align:right;width:100%;min-width:0;font-style:italic;font-family:var(--rc-font-family);color:var(--rc-text-secondary);background:0 0;border:none;border-bottom:1px dotted #0000;border-radius:0;outline:none;margin:0;padding:0 2px;font-size:12px;transition:border-color .12s,background-color .12s}._1dj5lvb2::placeholder{color:var(--rc-text-quaternary);font-style:italic}._1dj5lvb2:hover{border-bottom-color:var(--rc-text-quaternary)}._1dj5lvb2:focus{border-bottom-color:var(--rc-text-tertiary)}._1y5k2ih0{scrollbar-width:thin;scrollbar-color:#00000026 transparent;overflow:auto}._1y5k2ih0::-webkit-scrollbar{width:6px}._1y5k2ih0::-webkit-scrollbar-track{background:0 0}._1y5k2ih0::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}._6d8tz20{background-color:var(--rc-bg-tertiary);border-radius:.5rem;align-items:center;padding:.25rem;display:inline-flex;position:relative}._6d8tz21{height:2rem;font-size:var(--rc-font-size-xs)}._6d8tz22{height:2.5rem;font-size:var(--rc-font-size-md)}._6d8tz23{width:100%}._6d8tz25{background-color:var(--rc-bg);pointer-events:none;border-radius:.375rem;transition:all .3s cubic-bezier(.25,1,.5,1);position:absolute;top:.25rem;bottom:.25rem;box-shadow:0 1px 2px #0000000d}._6d8tz27{opacity:0}._6d8tz28{z-index:10;white-space:nowrap;cursor:pointer;color:var(--rc-text-secondary);background:0 0;border:none;border-radius:.375rem;outline:none;justify-content:center;align-items:center;font-weight:500;transition:color .2s;display:flex;position:relative}._6d8tz28:focus-visible{outline:2px solid var(--rc-accent);outline-offset:1px}._6d8tz29{padding:0 .75rem}._6d8tz2a{padding:0 1rem}._6d8tz2b{color:var(--rc-text)}._6d8tz2d{pointer-events:none;opacity:.4}._6d8tz2f{flex:1}@keyframes p74a620{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes p74a621{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.p74a622{height:36px;font-size:var(--rc-font-size-small);line-height:1.35;font-family:var(--rc-font-family-sans);border:1px solid var(--rc-border);border-radius:var(--rc-radius-md);color:var(--rc-text);cursor:pointer;white-space:nowrap;background:0 0;outline:none;justify-content:space-between;align-items:center;gap:6px;padding:8px 8px 8px 10px;transition:color .15s,box-shadow .15s,border-color .15s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.p74a622:hover{background:var(--rc-fill-quaternary)}.p74a622:focus-visible{border-color:var(--rc-accent);box-shadow:0 0 0 3px var(--rc-accent-light)}.p74a622[data-popup-open]{background:var(--rc-fill-quaternary)}.p74a622[data-disabled]{opacity:.5;cursor:not-allowed}.p74a623{width:16px;height:16px;color:var(--rc-text-tertiary);pointer-events:none;flex-shrink:0}.p74a624{z-index:50;isolation:isolate;outline:none}.p74a625{background:var(--rc-bg);color:var(--rc-text);font-family:var(--rc-font-family-sans);font-size:var(--rc-font-size-small);border-radius:var(--rc-radius-md);box-shadow:0 0 0 1px color-mix(in srgb, var(--rc-text) 10%, transparent), var(--rc-shadow-menu);width:min(var(--anchor-width), calc(100vw - .75rem));max-width:calc(100vw - .75rem);max-height:var(--available-height);transform-origin:var(--transform-origin);outline:none;transition:opacity .1s ease-out,transform .1s ease-out;overflow:hidden auto}.p74a625[data-open]{animation:.1s ease-out p74a620}.p74a625[data-starting-style],.p74a625[data-ending-style]{opacity:0;transform:scale(.95)}.p74a625[data-closed]{animation:.1s ease-in p74a621;overflow:hidden}.p74a626{padding:4px}.p74a626+.p74a626{border-top:1px solid var(--rc-hr-border)}.p74a627{border-radius:var(--rc-radius-sm);font-size:var(--rc-font-size-small);-webkit-user-select:none;user-select:none;cursor:default;color:var(--rc-text);outline:none;align-items:center;gap:8px;padding:6px 32px 6px 8px;line-height:1.35;transition:background-color .1s,color .1s;display:flex;position:relative}.p74a627[data-highlighted]{background-color:var(--rc-fill-secondary);color:var(--rc-text)}.p74a627[data-disabled]{opacity:.5;pointer-events:none}.p74a627 svg{pointer-events:none;flex-shrink:0;width:16px;height:16px}.p74a628{pointer-events:none;width:16px;height:16px;color:var(--rc-text-secondary);justify-content:center;align-items:center;display:flex;position:absolute;right:8px}.p74a627[data-highlighted] .p74a628{color:var(--rc-text)}.p74a629{font-size:var(--rc-font-size-xs);color:var(--rc-text-tertiary);padding:6px 8px;font-weight:500;line-height:1.4}.p74a62a{background-color:var(--rc-hr-border);height:1px;margin:4px -4px}.p74a62b{cursor:default;width:100%;color:var(--rc-text-tertiary);background:var(--rc-bg);z-index:10;justify-content:center;align-items:center;padding:4px 0;display:flex}.p74a62b svg{width:16px;height:16px}@keyframes _131cfek0{to{transform:rotate(360deg)}}._131cfek1{border:2px solid;border-top-color:#0000;border-radius:50%;flex-shrink:0;animation:.6s linear infinite _131cfek0;display:inline-block}._131cfek2{width:14px;height:14px}._131cfek3{width:20px;height:20px}@keyframes _73cmpa0{0%{opacity:1;transform:scale(1)}50%{opacity:0;transform:scale(1.8)}to{opacity:0;transform:scale(1.8)}}._73cmpa1{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}._73cmpa2{border-radius:50%;flex-shrink:0}._73cmpa3{background-color:#a3a3a3}._73cmpa4{background-color:#3b82f6}._73cmpa5{background-color:#22c55e}._73cmpa6{background-color:#ef4444}._73cmpa7{background-color:#f59e0b}._73cmpa8{width:8px;height:8px}._73cmpa9{width:12px;height:12px}._73cmpaa{border-radius:50%;animation:1.5s ease-in-out infinite _73cmpa0;position:absolute}._73cmpab{background-color:#a3a3a3}._73cmpac{background-color:#3b82f6}._73cmpad{background-color:#22c55e}._73cmpae{background-color:#ef4444}._73cmpaf{background-color:#f59e0b}._73cmpag{width:8px;height:8px}._73cmpah{width:12px;height:12px}@keyframes _1cspf2m0{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes _1cspf2m1{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(2px)}}._1cspf2m2{z-index:50;outline:none}._1cspf2m3{max-width:320px;padding:var(--rc-space-xs) var(--rc-space-sm);font-size:var(--rc-font-size-xs);color:var(--rc-text);background-color:var(--rc-bg);border:1px solid var(--rc-border);border-radius:var(--rc-radius-md);box-shadow:var(--rc-shadow-menu);white-space:normal;word-break:break-word;pointer-events:none;outline:none;line-height:1.4;transition:opacity .12s ease-out,transform .12s ease-out}._1cspf2m3[data-open]{animation:.12s ease-out _1cspf2m0}._1cspf2m3[data-ending-style]{opacity:0;transform:translateY(2px)}._1cspf2m3[data-closed]{animation:.12s ease-in _1cspf2m1}
2
2
  /*$vite$:1*/
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@haklex/rich-editor-ui",
3
- "version": "0.17.1",
3
+ "version": "0.19.0",
4
4
  "description": "UI components for haklex rich editor",
5
5
  "repository": {
6
6
  "type": "git",
@@ -21,24 +21,24 @@
21
21
  "dist"
22
22
  ],
23
23
  "dependencies": {
24
- "@base-ui/react": "^1.5.0",
25
- "@haklex/rich-style-token": "0.17.1"
24
+ "@haklex/rich-style-token": "0.19.0"
26
25
  },
27
26
  "devDependencies": {
28
- "@lexical/react": "^0.44.0",
27
+ "@lexical/react": "^0.45.0",
29
28
  "@types/react": "^19.2.15",
30
29
  "@types/react-dom": "^19.2.3",
31
30
  "@vanilla-extract/css": "^1.20.1",
32
31
  "@vanilla-extract/recipes": "^0.5.7",
33
32
  "@vanilla-extract/vite-plugin": "^5.2.2",
34
- "lexical": "^0.44.0",
33
+ "lexical": "^0.45.0",
35
34
  "react": "19.2.6",
36
35
  "react-dom": "19.2.6",
37
36
  "typescript": "^5.9.3",
38
37
  "unplugin-dts": "^1.0.1",
39
- "vite": "^8.0.13"
38
+ "vite": "^8.0.14"
40
39
  },
41
40
  "peerDependencies": {
41
+ "@base-ui/react": ">=1.5.0",
42
42
  "@lexical/react": "^0.44.0",
43
43
  "lexical": "^0.44.0",
44
44
  "lucide-react": "^1.0.0",