@import"https://fonts.googleapis.com/css2?family=Crimson+Text:wght@400;600&family=Fira+Code:wght@400;500;600&display=swap";:root{--diagram-bg:linear-gradient(135deg, #0a0e14 0%, #0d1a18 100%);--diagram-border:#1a4d3e;--header-bg:linear-gradient(135deg, #0d1a18 0%, #0f2420 100%);--text-primary:#e0f2f1;--text-secondary:#80cbc4;--accent:#26a69a;--accent-light:#4db8b0;--accent-dark:#1b7a6f;--accent-glow:rgba(38, 166, 154, .25);--shadow:rgba(0, 0, 0, .4)}.diagram-wrapper.svelte-1r12yil.svelte-1r12yil{width:100%;max-width:var(--diagram-width);margin:2rem auto;font-family:Crimson Text,serif}.diagram-container.svelte-1r12yil.svelte-1r12yil{background:var(--diagram-bg);border:1.5px solid var(--diagram-border);border-radius:12px;overflow:hidden;box-shadow:0 0 40px var(--accent-glow),0 8px 32px var(--shadow),inset 0 1px #ffffff0d;backdrop-filter:blur(10px)}.diagram-header.svelte-1r12yil.svelte-1r12yil{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;background:var(--header-bg);border-bottom:1px solid var(--diagram-border);gap:2rem}.diagram-title.svelte-1r12yil.svelte-1r12yil{margin:0;font-size:1.5rem;font-weight:400;color:var(--text-primary);letter-spacing:.02em;font-family:Crimson Text,serif}.controls.svelte-1r12yil.svelte-1r12yil{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.control-btn.svelte-1r12yil.svelte-1r12yil{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1.5px solid var(--diagram-border);border-radius:8px;background:rgba(26,166,154,.1);color:var(--text-secondary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:Fira Code,monospace;font-size:.75rem}.control-btn.svelte-1r12yil.svelte-1r12yil:hover:not(:disabled){background:rgba(26,166,154,.2);border-color:var(--accent);color:var(--accent-light);transform:translateY(-2px);box-shadow:0 4px 12px var(--accent-glow)}.control-btn.svelte-1r12yil.svelte-1r12yil:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.control-btn.svelte-1r12yil.svelte-1r12yil:disabled{opacity:.35;cursor:not-allowed}.control-btn.primary.svelte-1r12yil.svelte-1r12yil{background:linear-gradient(135deg,var(--accent),var(--accent-light));border-color:var(--accent);color:#0a0e14;font-weight:600}.control-btn.primary.svelte-1r12yil.svelte-1r12yil:hover{background:linear-gradient(135deg,var(--accent-light),var(--accent));box-shadow:0 6px 16px var(--accent-glow)}.step-indicator.svelte-1r12yil.svelte-1r12yil{font-family:Fira Code,monospace;font-size:.8125rem;font-weight:600;color:var(--text-secondary);padding:.375rem .75rem;background:rgba(26,166,154,.08);border-radius:6px;border:1px solid var(--diagram-border)}.diagram-svg.svelte-1r12yil.svelte-1r12yil{width:100%;height:var(--diagram-height);display:block;background:rgba(0,0,0,.1)}.node.svelte-1r12yil.svelte-1r12yil{transition:all .3s ease}.node.draggable.svelte-1r12yil.svelte-1r12yil{cursor:grab}.node.draggable.svelte-1r12yil.svelte-1r12yil:active{cursor:grabbing}.node.svelte-1r12yil:hover .node-shape.svelte-1r12yil{filter:brightness(1.15) drop-shadow(0 0 8px var(--accent-glow))}.node.highlighted.svelte-1r12yil .node-shape.svelte-1r12yil{filter:drop-shadow(0 0 12px var(--accent)) brightness(1.2);animation:svelte-1r12yil-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.node-shape.svelte-1r12yil.svelte-1r12yil{transition:all .3s ease}.node-label.svelte-1r12yil.svelte-1r12yil{font-family:Fira Code,monospace;font-size:22px;font-weight:400;fill:var(--text-primary);pointer-events:none;user-select:none;letter-spacing:.02em}.connection-label.svelte-1r12yil.svelte-1r12yil{font-family:Fira Code,monospace;font-size:20px;font-weight:400;fill:var(--text-secondary);pointer-events:none;letter-spacing:.05em}.connection.svelte-1r12yil.svelte-1r12yil{transition:all .3s ease}.connection.active.svelte-1r12yil path.svelte-1r12yil{stroke:var(--accent-light);stroke-width:3.5;filter:drop-shadow(0 0 8px var(--accent-glow))}.connection.active.svelte-1r12yil polygon.svelte-1r12yil{fill:var(--accent-light);filter:drop-shadow(0 0 8px var(--accent-glow))}.animated-path.svelte-1r12yil.svelte-1r12yil{stroke-dasharray:10;animation:svelte-1r12yil-dash 1.5s linear infinite}.animated-arrow.svelte-1r12yil.svelte-1r12yil{animation:svelte-1r12yil-pulse 1.2s ease-in-out infinite}.step-description.svelte-1r12yil.svelte-1r12yil{padding:1.25rem 1.75rem;background:rgba(13,26,24,.6);border-top:1px solid var(--diagram-border);font-size:1.0625rem;font-weight:400;line-height:1.7;color:var(--text-primary);font-family:Crimson Text,serif;letter-spacing:.01em}@keyframes svelte-1r12yil-dash{to{stroke-dashoffset:-20}}@keyframes svelte-1r12yil-pulse{0%,to{opacity:1}50%{opacity:.6}}@media (max-width: 768px){.diagram-header.svelte-1r12yil.svelte-1r12yil{flex-direction:column;gap:1rem;align-items:stretch}.controls.svelte-1r12yil.svelte-1r12yil{justify-content:center}.diagram-title.svelte-1r12yil.svelte-1r12yil{font-size:1.25rem;text-align:center}.step-description.svelte-1r12yil.svelte-1r12yil{font-size:1rem}}@media (max-width: 480px){.diagram-wrapper.svelte-1r12yil.svelte-1r12yil{--diagram-height:250px}.diagram-svg.svelte-1r12yil.svelte-1r12yil{height:250px}}@media (prefers-reduced-motion: reduce){.node.svelte-1r12yil.svelte-1r12yil,.connection.svelte-1r12yil.svelte-1r12yil,.control-btn.svelte-1r12yil.svelte-1r12yil{transition:none}.animated-path.svelte-1r12yil.svelte-1r12yil,.animated-arrow.svelte-1r12yil.svelte-1r12yil,.node.highlighted.svelte-1r12yil .node-shape.svelte-1r12yil{animation:none!important}}
