.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.mermaid-container{position:relative;width:100%;margin:28px auto;border-radius:1.5rem;overflow:hidden;background:linear-gradient(135deg,#ffffffe6,#ffffffb3);backdrop-filter:blur(16px) saturate(120%);box-shadow:0 8px 32px #6a8b821f,0 2px 8px #6a8b8214,inset 0 1px #ffffffe6;border:1px solid;-o-border-image:linear-gradient(135deg,rgba(106,139,130,.2) 0%,rgba(163,177,138,.15) 50%,rgba(106,139,130,.1) 100%) 1;border-image:linear-gradient(135deg,#6a8b8233,#a3b18a26,#6a8b821a) 1;transition:all .4s cubic-bezier(.4,0,.2,1)}.dark .mermaid-container{background:linear-gradient(135deg,#3c444cf2,#2c333ae6);box-shadow:0 8px 32px #0000004d,0 2px 8px #0003,inset 0 1px #7fb0a21a;-o-border-image:linear-gradient(135deg,rgba(127,176,162,.25) 0%,rgba(242,200,107,.15) 50%,rgba(127,176,162,.1) 100%) 1;border-image:linear-gradient(135deg,#7fb0a240,#f2c86b26,#7fb0a21a) 1}.mermaid-container:hover{transform:translateY(-2px);box-shadow:0 16px 48px #6a8b8226,0 4px 12px #6a8b821a,inset 0 1px #fffffff2}.dark .mermaid-container:hover{box-shadow:0 16px 48px #0006,0 4px 12px #00000040,inset 0 1px #7fb0a226}.mermaid{display:flex;justify-content:center;align-items:center;min-height:120px;padding:16px;position:relative}.mermaid svg{max-width:100%;height:auto;font-family:MononoMori-Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:"kern","liga";shape-rendering:geometricPrecision;text-rendering:optimizeLegibility}.mermaid .node rect,.mermaid .node circle,.mermaid .node polygon,.mermaid .node path{stroke-width:1.5px!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.mermaid .node text,.mermaid .edgeLabel text{font-family:MononoMori-Sans,-apple-system,BlinkMacSystemFont,sans-serif!important;font-weight:500!important;letter-spacing:.2px!important;text-rendering:optimizeLegibility!important;font-feature-settings:"kern","liga"!important}.mermaid .edgePath .path{stroke-width:2px!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;filter:drop-shadow(0 0 1px rgba(0,0,0,.1))}.mermaid .node:hover rect,.mermaid .node:hover circle,.mermaid .node:hover polygon,.mermaid .node:hover path{transform:scale(1.02) translateY(-1px)!important;filter:drop-shadow(0 4px 12px rgba(0,0,0,.15)) brightness(1.05)!important}.mermaid .edgePath:hover .path{stroke-width:2.5px!important;filter:drop-shadow(0 0 3px rgba(0,0,0,.2))!important}.mermaid .edgeLabel{background:#ffffffe6!important;backdrop-filter:blur(8px)!important;border-radius:8px!important;padding:4px 8px!important;border:1px solid rgba(106,139,130,.2)!important;box-shadow:0 2px 8px #0000001a!important}.dark .mermaid .edgeLabel{background:#3c444ce6!important;border-color:#7fb0a233!important;box-shadow:0 2px 8px #0003!important}@media (max-width: 1024px){.mermaid-container{margin:20px auto;border-radius:1.25rem}.mermaid{padding:12px}.mermaid svg{font-size:13px}.mermaid .node text{font-size:12px!important}}@media (max-width: 768px){.mermaid-container{margin:16px auto;border-radius:1rem}.mermaid{padding:8px;min-height:100px}.mermaid svg{font-size:11px}.mermaid .node text{font-size:10px!important;font-weight:600!important}.mermaid .edgeLabel text{font-size:9px!important}.mermaid .node:hover rect,.mermaid .node:hover circle,.mermaid .node:hover polygon,.mermaid .node:hover path{transform:scale(1.01)!important}}@media (max-width: 480px){.mermaid-container{margin:12px auto;border-radius:.75rem}.mermaid{padding:6px;min-height:80px}.mermaid svg{font-size:10px}.mermaid .node text{font-size:9px!important}.mermaid .edgeLabel text{font-size:8px!important}}.mermaid-container:focus-within{outline:2px solid;outline-color:#6a8b82;outline-offset:4px;border-radius:1.5rem}.dark .mermaid-container:focus-within{outline-color:#7fb0a2}.mermaid svg:focus{outline:none}.mermaid .node[tabindex]:focus,.mermaid .node[role=button]:focus{outline:2px solid #6a8b82;outline-offset:2px;border-radius:4px}.dark .mermaid .node[tabindex]:focus,.dark .mermaid .node[role=button]:focus{outline-color:#7fb0a2}.mermaid-container .zen-pulse{animation:zen-pulse 2s ease-in-out infinite}@keyframes zen-pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.1);opacity:1}}.mermaid-error{position:relative;overflow:hidden}.mermaid-error:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(239,68,68,.1),transparent);animation:error-shimmer 2s infinite}@keyframes error-shimmer{0%{left:-100%}to{left:100%}}@media print{.mermaid-container{background:#fff!important;box-shadow:none!important;border:1px solid #ddd!important;backdrop-filter:none!important;margin:16px 0!important}.mermaid svg{max-width:none!important;width:100%!important;height:auto!important}.mermaid .node text,.mermaid .edgeLabel text{fill:#000!important}.mermaid .node:hover rect,.mermaid .node:hover circle,.mermaid .node:hover polygon,.mermaid .node:hover path{transform:none!important;filter:none!important}}.mermaid[data-type=flowchart] svg{margin:8px 0}.mermaid[data-type=graph] .node rect{rx:8px!important;ry:8px!important}.mermaid[data-type=sequenceDiagram]{min-height:200px}.mermaid-container,.mermaid svg,.mermaid .node,.mermaid .edgePath{will-change:transform;backface-visibility:hidden;perspective:1000px}.mermaid .node rect,.mermaid .node circle,.mermaid .node polygon,.mermaid .edgePath .path{transform-origin:center;transform-style:preserve-3d}.no-transition[data-astro-cid-37fxchfa] [data-astro-cid-37fxchfa]{transition:none!important}:root{color-scheme:light}:root.dark{color-scheme:dark}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}html[lang^=zh]{font-family:Yuanti SC,STYuanti,PingFang SC,Hiragino Sans GB,Microsoft YaHei,-apple-system,BlinkMacSystemFont,sans-serif}html[lang^=ja]{font-family:Hiragino Maru Gothic ProN,BIZ UDPGothic,BIZ UPGothic,HGMaruGothicMPRO,MotoyaLMaru,Kosugi Maru,Hiragino Kaku Gothic ProN,Hiragino Sans,-apple-system,BlinkMacSystemFont,sans-serif}html[lang^=en]{font-family:Avenir Next Rounded,Nunito,Quicksand,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}html.font-loaded{font-family:MononoMori-Sans,Avenir Next Rounded,Nunito,Quicksand,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html.font-loaded[lang^=zh]{font-family:MononoMori-Sans,Yuanti SC,STYuanti,PingFang SC,Hiragino Sans GB,Microsoft YaHei,-apple-system,BlinkMacSystemFont,sans-serif}html.font-loaded[lang^=ja]{font-family:MononoMori-Sans,Hiragino Maru Gothic ProN,BIZ UDPGothic,BIZ UPGothic,HGMaruGothicMPRO,MotoyaLMaru,Kosugi Maru,Hiragino Kaku Gothic ProN,Hiragino Sans,-apple-system,BlinkMacSystemFont,sans-serif}html.font-loaded[lang^=en]{font-family:MononoMori-Sans,Avenir Next Rounded,Nunito,Quicksand,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}[data-astro-cid-37fxchfa][data-cta-button]{background-color:#6a8b82!important;color:#fff!important;box-shadow:0 20px 40px #6a8b824d!important}:root.dark [data-astro-cid-37fxchfa][data-cta-button]{background-color:#7fb0a2!important;color:#2c333a!important;box-shadow:0 20px 40px #8ba99e4d!important}
