.sv-visual{--sv-duration:16s;--sv-green:#36b77f;width:100%;margin:0}.sv-scene{padding-top:9px}.sv-source-label{justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.sv-source-label svg{color:var(--primary)}.sv-diagram{width:100%;height:auto;margin-top:-4px;display:block}.sv-shadow{fill:var(--foreground);opacity:.035}.sv-cylinder-edge{stroke:var(--infra-edge);stroke-width:1px}.sv-drive-slot{fill:none;stroke:var(--infra-edge);stroke-width:1.8px;stroke-linecap:round}.sv-storage-ring{fill:none;stroke:var(--infra-accent-light);stroke-width:1px;stroke-opacity:.5}.sv-led{fill:var(--infra-accent-light)}.sv-led-green{fill:var(--sv-green);animation:1.6s ease-in-out infinite sv-breathe}.sv-storage-node:nth-last-child(2) .sv-led-green{animation-delay:-.4s}.sv-storage-node:last-child .sv-led-green{animation-delay:-.8s}.sv-source-icon{fill:none;stroke:#fff;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.sv-connection{fill:none;stroke:var(--infra-edge);stroke-width:1.4px;stroke-linecap:round}.sv-write-flow{fill:none;stroke:var(--infra-accent-light);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:12 112;stroke-dashoffset:12px;opacity:0;animation:sv-write var(--sv-duration)linear infinite}.sv-data-copy{opacity:0;animation:sv-copy var(--sv-duration)ease-in-out infinite;transform:translateY(-9px)scale(.7)}.sv-data-mark{fill:none;stroke:#fff;stroke-width:1.4px;stroke-linecap:round}.sv-node-labels{text-align:center;grid-template-columns:repeat(3,minmax(0,1fr));margin:-9px 11% 0;display:grid}.sv-node-labels strong{font-size:14px;font-weight:600}.sv-node-status{color:var(--muted-foreground);margin-top:5px;font-size:13px;display:grid}.sv-node-status>span{grid-area:1/1;justify-content:center;align-items:center;gap:4px;display:flex}.sv-ready,.sv-stage-0{animation:sv-receive var(--sv-duration)steps(1,end)infinite}.sv-writing,.sv-stage-1{opacity:0;animation:sv-replicate var(--sv-duration)steps(1,end)infinite}.sv-stored,.sv-stage-2{opacity:0;animation:sv-confirm var(--sv-duration)steps(1,end)infinite}.sv-writing{color:var(--primary)}.sv-stored svg{color:var(--sv-green)}.sv-cluster-label{color:var(--muted-foreground);flex-wrap:wrap;justify-content:center;gap:6px;margin-block:19px 24px;font-size:13px;display:flex}.sv-cluster-label>span{color:var(--infra-accent-light)}.sv-caption{border-top:1px solid var(--brand-soft-line);padding-top:19px;display:grid}.sv-stage{grid-area:1/1}.sv-stage strong{font-size:15px;font-weight:600;line-height:1.5;display:block}.sv-visual .sv-stage p{color:var(--muted-foreground);margin-top:5px;font-size:14px;line-height:1.75}.sv-footer{color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:12px;margin-top:16px;font-size:13px;display:flex}@keyframes sv-breathe{50%{opacity:.35}}@keyframes sv-write{0%,19%{opacity:0;stroke-dashoffset:12px}20%{opacity:1;stroke-dashoffset:12px}46%{opacity:1;stroke-dashoffset:-100px}47%,to{opacity:0;stroke-dashoffset:-100px}}@keyframes sv-copy{0%,40%,to{opacity:0;transform:translateY(-9px)scale(.7)}50%,93.75%{opacity:1;transform:translateY(0)scale(1)}}@keyframes sv-receive{0%,93.75%,to{opacity:1}18.75%{opacity:0}}@keyframes sv-replicate{0%,50%,to{opacity:0}18.75%{opacity:1}}@keyframes sv-confirm{0%,93.75%,to{opacity:0}50%{opacity:1}}@media (max-width:540px){.sv-scene{padding-top:6px}.sv-node-labels{margin-inline:8%}.sv-cluster-label{margin-block:16px 20px}}@media (prefers-reduced-motion:reduce){.sv-visual *{transition:none!important;animation:none!important}.sv-write-flow,.sv-ready,.sv-writing,.sv-stage{opacity:0}.sv-data-copy{opacity:1;transform:none}.sv-stored,.sv-stage-2{opacity:1}}
