#docs-mermaid-2 { font-family: Rajdhani, system-ui, sans-serif; font-size: 15px; fill: rgb(244, 244, 245); }
@keyframes edge-animation-frame { 
  0% { stroke-dashoffset: 0; }
}
@keyframes dash { 
  100% { stroke-dashoffset: 0; }
}
#docs-mermaid-2 .edge-animation-slow { stroke-dashoffset: 900; animation: 50s linear 0s infinite normal none running dash; stroke-linecap: round; stroke-dasharray: 9, 5 !important; }
#docs-mermaid-2 .edge-animation-fast { stroke-dashoffset: 900; animation: 20s linear 0s infinite normal none running dash; stroke-linecap: round; stroke-dasharray: 9, 5 !important; }
#docs-mermaid-2 .error-icon { fill: rgb(17, 17, 21); }
#docs-mermaid-2 .error-text { fill: rgb(161, 161, 170); stroke: rgb(161, 161, 170); }
#docs-mermaid-2 .edge-thickness-normal { stroke-width: 1px; }
#docs-mermaid-2 .edge-thickness-thick { stroke-width: 3.5px; }
#docs-mermaid-2 .edge-pattern-solid { stroke-dasharray: 0; }
#docs-mermaid-2 .edge-thickness-invisible { stroke-width: 0; fill: none; }
#docs-mermaid-2 .edge-pattern-dashed { stroke-dasharray: 3; }
#docs-mermaid-2 .edge-pattern-dotted { stroke-dasharray: 2; }
#docs-mermaid-2 .marker { fill: rgb(161, 161, 170); stroke: rgb(161, 161, 170); }
#docs-mermaid-2 .marker.cross { stroke: rgb(161, 161, 170); }
#docs-mermaid-2 svg { font-family: Rajdhani, system-ui, sans-serif; font-size: 15px; }
#docs-mermaid-2 p { margin: 0px; }
#docs-mermaid-2 .label { font-family: Rajdhani, system-ui, sans-serif; color: rgb(244, 244, 245); }
#docs-mermaid-2 .cluster-label text { fill: rgb(244, 244, 245); }
#docs-mermaid-2 .cluster-label span { color: rgb(244, 244, 245); }
#docs-mermaid-2 .cluster-label span p { background-color: transparent; }
#docs-mermaid-2 .label text, #docs-mermaid-2 span { fill: rgb(244, 244, 245); color: rgb(244, 244, 245); }
#docs-mermaid-2 .node rect, #docs-mermaid-2 .node circle, #docs-mermaid-2 .node ellipse, #docs-mermaid-2 .node polygon, #docs-mermaid-2 .node path { fill: rgb(24, 24, 27); stroke: rgb(167, 139, 250); stroke-width: 1px; }
#docs-mermaid-2 .rough-node .label text, #docs-mermaid-2 .node .label text, #docs-mermaid-2 .image-shape .label, #docs-mermaid-2 .icon-shape .label { text-anchor: middle; }
#docs-mermaid-2 .node .katex path { fill: rgb(0, 0, 0); stroke: rgb(0, 0, 0); stroke-width: 1px; }
#docs-mermaid-2 .rough-node .label, #docs-mermaid-2 .node .label, #docs-mermaid-2 .image-shape .label, #docs-mermaid-2 .icon-shape .label { text-align: center; }
#docs-mermaid-2 .node.clickable { cursor: pointer; }
#docs-mermaid-2 .root .anchor path { stroke-width: 0; stroke: rgb(161, 161, 170); fill: rgb(161, 161, 170) !important; }
#docs-mermaid-2 .arrowheadPath { fill: rgba(255, 255, 255, 0); }
#docs-mermaid-2 .edgePath .path { stroke: rgb(161, 161, 170); stroke-width: 1px; }
#docs-mermaid-2 .flowchart-link { stroke: rgb(161, 161, 170); fill: none; }
#docs-mermaid-2 .edgeLabel { background-color: rgb(17, 17, 21); text-align: center; }
#docs-mermaid-2 .edgeLabel p { background-color: rgb(17, 17, 21); }
#docs-mermaid-2 .edgeLabel rect { opacity: 0.5; background-color: rgb(17, 17, 21); fill: rgb(17, 17, 21); }
#docs-mermaid-2 .labelBkg { background-color: rgba(17, 17, 21, 0.5); }
#docs-mermaid-2 .cluster rect { fill: transparent; stroke: rgb(39, 39, 42); stroke-width: 1px; }
#docs-mermaid-2 .cluster text { fill: rgb(244, 244, 245); }
#docs-mermaid-2 .cluster span { color: rgb(244, 244, 245); }
#docs-mermaid-2 div.mermaidTooltip { position: absolute; text-align: center; max-width: 200px; padding: 2px; font-family: Rajdhani, system-ui, sans-serif; font-size: 12px; background: rgb(17, 17, 21); border: 1px solid rgb(39, 39, 42); border-radius: 2px; pointer-events: none; z-index: 100; }
#docs-mermaid-2 .flowchartTitleText { text-anchor: middle; font-size: 18px; fill: rgb(244, 244, 245); }
#docs-mermaid-2 rect.text { fill: none; stroke-width: 0; }
#docs-mermaid-2 .icon-shape, #docs-mermaid-2 .image-shape { background-color: rgb(17, 17, 21); text-align: center; }
#docs-mermaid-2 .icon-shape p, #docs-mermaid-2 .image-shape p { background-color: rgb(17, 17, 21); padding: 2px; }
#docs-mermaid-2 .icon-shape .label rect, #docs-mermaid-2 .image-shape .label rect { opacity: 0.5; background-color: rgb(17, 17, 21); fill: rgb(17, 17, 21); }
#docs-mermaid-2 .label-icon { display: inline-block; height: 1em; overflow: visible; vertical-align: -0.125em; }
#docs-mermaid-2 .node .label-icon path { fill: currentcolor; stroke: revert; stroke-width: revert; }
#docs-mermaid-2 .node .neo-node { stroke: rgb(167, 139, 250); }
#docs-mermaid-2 [data-look="neo"].node rect, #docs-mermaid-2 [data-look="neo"].cluster rect, #docs-mermaid-2 [data-look="neo"].node polygon { stroke: url("#docs-mermaid-2-gradient"); filter: drop-shadow(rgb(185, 185, 185) 1px 2px 2px); }
#docs-mermaid-2 [data-look="neo"].swimlane.cluster rect { filter: none; }
#docs-mermaid-2 [data-look="neo"].node path { stroke: url("#docs-mermaid-2-gradient"); stroke-width: 1px; }
#docs-mermaid-2 [data-look="neo"].node .outer-path { filter: drop-shadow(rgb(185, 185, 185) 1px 2px 2px); }
#docs-mermaid-2 [data-look="neo"].node .neo-line path { stroke: rgb(167, 139, 250); filter: none; }
#docs-mermaid-2 [data-look="neo"].node circle { stroke: url("#docs-mermaid-2-gradient"); filter: drop-shadow(rgb(185, 185, 185) 1px 2px 2px); }
#docs-mermaid-2 [data-look="neo"].node circle .state-start { fill: rgb(0, 0, 0); }
#docs-mermaid-2 [data-look="neo"].icon-shape .icon { fill: url("#docs-mermaid-2-gradient"); filter: drop-shadow(rgb(185, 185, 185) 1px 2px 2px); }
#docs-mermaid-2 [data-look="neo"].icon-shape .icon-neo path { stroke: url("#docs-mermaid-2-gradient"); filter: drop-shadow(rgb(185, 185, 185) 1px 2px 2px); }
#docs-mermaid-2 :root { --mermaid-font-family: 'Rajdhani',system-ui,sans-serif; }
