.software-network-section{min-width:0;margin:0;padding:0}
.software-network-figure{position:relative;max-width:800px;margin:0 auto}
.software-network-board{position:relative;isolation:isolate;width:100%;aspect-ratio:1;border:1px solid #a8bcdf28;border-radius:26px;background:radial-gradient(ellipse 40% 43% at 50% 50%,#18306055,transparent 95%),#080b12;overflow:hidden}
.software-network-lines{position:absolute;inset:0;width:100%;height:100%;fill:none;pointer-events:none}
.software-network-orbit{stroke:#51668436;stroke-width:2}
.software-network-ticks{stroke:#8296b95e;stroke-width:1.7}
.software-network-wire{fill:none;stroke:#4e70ad3d;stroke-width:1.4;vector-effect:non-scaling-stroke;transition:stroke .45s,opacity .45s}
.software-network-wire.is-linked{stroke:#5a82d281}
.software-network-wire.is-current{stroke:#8cafff;stroke-width:1.9}
.software-network-flow{display:none;fill:none;stroke:#e3efff;stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:9 91;stroke-dashoffset:100;animation:software-network-flow 1.1s linear infinite;animation-play-state:paused}
.software-network-flow.is-current{display:block}
.software-network-sweep{transform-box:view-box;transform-origin:50% 50%;animation:software-network-sweep 10s linear infinite;animation-play-state:paused;filter:drop-shadow(0 0 5px #729dff70)}
.software-network-sweep>circle:first-child{stroke:#80a6ff;stroke-width:3;stroke-linecap:round;stroke-dasharray:16 84}
.software-network-sweep-point{fill:#e6f0ff;stroke:#94b5ff;stroke-width:2}
.software-network-board.is-running .software-network-flow,.software-network-board.is-running .software-network-sweep{animation-play-state:running}
.motion-paused .software-network-flow,.motion-paused .software-network-sweep,body:has(dialog[open]) .software-network-flow,body:has(dialog[open]) .software-network-sweep{animation-play-state:paused!important}
.software-network-core{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:30%;height:42%;border:1px solid #c1d4ff36;border-radius:23px;background:linear-gradient(145deg,#233759,#0c1526 82%);box-shadow:0 20px 48px #0008,0 0 45px #567edf16;overflow:hidden}
.software-network-sensors{position:absolute;inset:6%;display:grid;place-items:center}
.software-network-sensors img{width:100%;height:100%;max-width:100%;object-fit:contain;pointer-events:none}
.software-network-node{position:absolute;z-index:3;transform:translate(-50%,-50%);width:21%;max-width:150px;min-width:64px;height:10%;min-height:44px;max-height:72px;display:flex;align-items:center;justify-content:center;padding:9px 11px;border:1px solid #8aa4d23d;border-radius:14px;background:#f7f8fb;box-shadow:0 6px 20px #0005;transition:border-color .35s,box-shadow .35s,transform .35s}
.software-network-node img{width:100%;height:100%;object-fit:contain;opacity:.6;transition:opacity .35s;pointer-events:none}
.software-network-node.is-linked{border-color:#6d9aff80}
.software-network-node.is-linked img{opacity:.88}
.software-network-node.is-current{border-color:#9cbfff;transform:translate(-50%,-50%) scale(1.035);box-shadow:0 0 0 3px #759dff1c,0 0 26px #4676da54}
.software-network-node.is-current img{opacity:1}
.software-network-node-name{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.software-network-count{position:absolute;z-index:3;left:26px;bottom:24px;margin:0;border-radius:100px;padding:8px 12px;background:#111824;color:#a7b8d7;font-size:12px;line-height:1.3}
.software-network-count strong{color:#dce8ff;font-weight:600}
.software-network-count-full{display:none}
.software-network-count-short{display:inline}
.software-network-caption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 4px 0;min-height:70px}
.software-network-caption{flex-wrap:wrap}
.software-network-hint{flex:0 0 100%;margin:0;padding-top:2px;color:#a6b5cf;font-size:14px;line-height:1.6}
.software-network-selection-wrap{display:flex;flex-direction:column;gap:4px;min-width:0}
.software-network-selection{color:#e1e9fa;font-size:17px;line-height:1.35;font-weight:500}
.software-network-position{color:#8698b6;font-size:12px;line-height:1.4}
.software-network-controls{display:flex;gap:9px}
.software-network-controls button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #a7bff434;border-radius:50%;background:#111a2a;color:#bacdf4;font-size:22px;line-height:1;transition:background .2s,border-color .2s}
.software-network-controls button:hover{background:#1b2b48;border-color:#8dafe980}
.software-network-noscript{color:#95a5bf;font-size:13px;text-align:center;margin:20px 0 0}
.software-demo-dialog{width:940px;padding:28px;background:linear-gradient(145deg,#121b2c,#080d17);overscroll-behavior:contain}
.software-demo-dialog .dialog-close{top:16px;right:16px;width:44px;height:44px;line-height:1}
.software-demo-header{padding-right:44px;margin-bottom:20px}
.software-demo-header h2{font-size:clamp(22px,3vw,30px);line-height:1.2;letter-spacing:-.03em;margin:0 0 9px}
.software-demo-header p{font-size:14px;line-height:1.5;color:#aab8d0;margin:0}
.software-demo-player{width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000}
.software-demo-player:empty{display:none}
.software-demo-player iframe,.software-demo-player video{width:100%;height:100%;display:block;border:0;object-fit:contain}
.software-demo-options{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.software-demo-options button{max-width:100%;padding:10px 14px;min-height:44px;border-radius:10px;border:1px solid #9ab5e73d;background:#101b2b;font-size:13px;line-height:1.4;text-align:left;white-space:normal}
.software-demo-options button[aria-pressed="true"]{background:#263b61;border-color:#8bacdf;color:#fff}
.software-demo-empty{color:#bdc9dd;font-size:16px;line-height:1.6;padding:22px 0;margin:0}
.software-demo-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:20px;font-size:12px;color:#b8cbed}
.software-demo-links a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.software-demo-dialog{padding:20px 16px;border-radius:18px}.software-demo-header{padding-right:46px;margin-bottom:16px}.software-demo-header p{font-size:13px}.software-demo-player{border-radius:9px}.software-demo-options button{font-size:12px}.software-demo-links{line-height:1.5}}
@keyframes software-network-flow{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@keyframes software-network-sweep{from{transform:rotate(-90deg)}to{transform:rotate(270deg)}}
@media(max-width:760px){.software-network-board{border-radius:19px}.software-network-node{padding:5px 6px;border-radius:9px}.software-network-core{border-radius:14px}.software-network-count{left:12px;bottom:12px;padding:7px 9px;font-size:11px}.software-network-count-full{display:none}.software-network-count-short{display:inline}.software-network-caption{padding:17px 7px 0}.software-network-selection{font-size:15px}.software-network-position{font-size:11px}}
@media(prefers-reduced-motion:reduce){.software-network-flow{display:none!important}.software-network-sweep{animation:none;transform:none;filter:none}.software-network-sweep>circle:first-child{stroke-dasharray:none;stroke:#6f93d770}.software-network-sweep-point{display:none}.software-network-node,.software-network-node img,.software-network-wire{transition:none}}
