.mermaid{contain:layout paint style;content-visibility:auto;contain-intrinsic-size:auto 500px;background:var(--color-surface)!important;border:1px solid var(--color-border)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-strong)!important;justify-content:center!important;width:100%!important;max-width:100%!important;margin-block:3rem!important;padding:2.5rem!important;display:flex!important;& svg{font-family:var(--font-title)!important;width:100%!important;max-width:100%!important;height:auto!important;font-size:17px!important;overflow:visible!important}& .label foreignObject,& foreignObject{width:100%!important;overflow:visible!important;& div,& span,& p,& .nodeLabel,& .edgeLabel{color:var(--color-text)!important;background-color:#0000!important;font-weight:600!important}}& g.node rect,& g.node circle,& g.node polygon,& g.node path,& .node .main-gradient-element{fill:var(--color-bg)!important;stroke:var(--color-accent)!important;stroke-width:1.5px!important;rx:8px!important;ry:8px!important;filter:drop-shadow(0 4px 6px #0000001a)!important}& .cluster rect,& rect.cluster,& .subgraph-border{fill:var(--tint-05)!important;stroke:var(--tint-14)!important;stroke-width:1px!important;rx:12px!important;ry:12px!important;filter:none!important}& text,& tspan,& .label,& .cluster-label text{color:var(--color-text)!important;fill:var(--color-text)!important;letter-spacing:-.01em!important;font-size:16px!important;font-weight:600!important}& .cluster-label text,& .cluster-label span{letter-spacing:.02em!important;color:var(--color-muted)!important;fill:var(--color-muted)!important;font-size:18px!important;& div,& p{color:var(--color-muted)!important}}& .edgePath .path,& .flowchart-link,& path.link,& path.connection,& .transition{stroke:var(--tint-30)!important;stroke-width:1.5px!important;opacity:1!important}& [id^=mermaid-] .edgeArrowMarker,& marker,& marker path,& .arrowheadPath,& #arrowhead,& [class*=arrowhead]{fill:var(--tint-30)!important;stroke:var(--tint-30)!important;stroke-width:1px!important}& .edgeLabel{& rect,& .labelBox{fill:var(--color-surface)!important;stroke:var(--color-border)!important;stroke-width:1px!important;rx:4px!important;ry:4px!important}& text,& tspan,& div,& span{fill:var(--color-text)!important;color:var(--color-text)!important;background-color:#0000!important;font-size:14px!important;font-weight:500!important}}}html[data-theme=light] .mermaid{& g.node rect,& g.node circle,& g.node polygon,& g.node path,& .node .main-gradient-element{fill:var(--color-surface)!important;stroke:var(--color-accent)!important;filter:drop-shadow(0 2px 4px #0000000d)!important}& .edgeLabel{opacity:1!important;& rect,& .labelBox{fill:var(--color-surface)!important;opacity:1!important}& text,& tspan,& div,& span{color:var(--color-text)!important;fill:var(--color-text)!important}}& foreignObject{& div,& span,& p,& .nodeLabel,& .edgeLabel{color:var(--color-text)!important}}}@media (prefers-color-scheme:light){html:not([data-theme]) .mermaid{& g.node rect,& g.node circle,& g.node polygon,& g.node path,& .node .main-gradient-element{fill:var(--color-surface)!important;stroke:var(--color-accent)!important;filter:drop-shadow(0 2px 4px #0000000d)!important}& .edgeLabel{opacity:1!important;& rect,& .labelBox{fill:var(--color-surface)!important;opacity:1!important}& text,& tspan,& div,& span{color:var(--color-text)!important;fill:var(--color-text)!important}}& foreignObject{& div,& span,& p,& .nodeLabel,& .edgeLabel{color:var(--color-text)!important}}}}
