/* Event duration inherits from each sequence; the hero is configurable. */
.data-label{}.data-label-content{min-width:0}.data-category{display:block}.data-event{display:block}.data-state{display:flex;align-items:center;gap:6px}.data-state i{font-style:normal}
.technical-tag .data-category{font-size:10px;letter-spacing:.65px}.technical-tag .data-event{font-size:14px;color:#fff;line-height:1.4;margin-top:5px}.technical-tag .data-state{font-size:10px;color:#b9f6ff;margin-top:5px}.technical-tag .data-state i{display:inline;width:auto;height:auto;margin:0;background:none;box-shadow:none;font-size:11px}
.hero-data-receiver{position:absolute;left:4%;bottom:1%;width:160px;padding:10px 12px;border:1px solid #63d5e550;border-radius:5px;background:#071c36b8;color:white}.hero-data-receiver strong{display:block;font-size:20px;color:#63d5e5;letter-spacing:-1px}.hero-data-receiver strong span{color:white}.hero-data-receiver>.receiver-message{display:block;font-size:9px;color:#c8dbe7;margin-top:3px}
.sequence-controls{display:flex;justify-content:flex-end;gap:8px;margin-top:10px;pointer-events:auto}.sequence-controls button{font:inherit;font-size:10px;border:1px solid #8baebf70;border-radius:3px;padding:6px 9px;background:transparent;color:inherit;cursor:pointer}.sequence-controls button:hover{border-color:var(--teal-light)}.sequence-controls button:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.sequence-controls button[hidden]{display:none}
.motion-enabled .technical-tag,.motion-enabled .connection,.motion-enabled .network-node,.motion-enabled .network-node circle:first-child,.technical-tag>.icon,.technical-tag i{animation:none}.technical-tag:after{display:none}
.sequence-enhanced .technical-tag{opacity:0;pointer-events:none}
.sequence-enhanced .hero-network .connection,.sequence-enhanced .hero-network .network-node,.sequence-enhanced .data-return{opacity:0}
.sequence-enhanced .technical-tag.event-active{animation:data-card var(--event-duration) both;pointer-events:auto}
.sequence-enhanced .event-active .data-event{animation:data-value var(--event-duration) both}
.sequence-enhanced .event-active .data-state{animation:data-state var(--event-duration) both}
.sequence-enhanced .hero-network .network-node.event-active{animation:data-node var(--event-duration,2.5s) both}
.sequence-enhanced .hero-network .network-node.event-active circle:first-child{animation:data-origin-pulse var(--event-duration,2.5s) both;transform-box:fill-box;transform-origin:center}
.sequence-enhanced .hero-network .connection.event-active{animation:data-line var(--event-duration,2.5s) both}
.data-return{fill:none;stroke:#b9f6ff;stroke-width:1.7;stroke-linecap:round;stroke-dasharray:.045 .955}
.sequence-enhanced .data-return.event-active,.sequence-enhanced .information-pulse.event-active{animation:data-travel var(--event-duration,2.5s) both linear}
.sequence-enhanced:not(.sequence-running) .event-active,.sequence-enhanced:not(.sequence-running) .event-active .data-event,.sequence-enhanced:not(.sequence-running) .event-active .data-state,.sequence-enhanced:not(.sequence-running) .network-node.event-active circle:first-child{animation-play-state:paused}
.technical-tag.event-active:hover{border-color:#b9f6ff;background:#23475fcc}.network-node.event-active circle:last-child{pointer-events:auto}.network-node.event-active circle:last-child:hover{fill:white;stroke:#63d5e5;stroke-width:3}
.ecosystem-story,.motion-enabled .ecosystem-story{height:auto;min-height:0}.ecosystem-stage,.motion-enabled .ecosystem-stage{position:relative;top:auto}.motion-enabled .ecosystem-map{transform:none}
.ecosystem-node.data-label{width:220px;gap:12px;padding:15px}.ecosystem-node .data-category{font-size:10px;letter-spacing:.2px}.ecosystem-node .data-event{font-size:12px;font-weight:400;margin-top:4px;color:var(--teal)}
.motion-enabled .ecosystem-node{transform:translate(-50%,-50%);opacity:1}.sequence-enhanced .ecosystem-node{border-color:var(--line);box-shadow:none}.sequence-enhanced .ecosystem-node .data-event{opacity:0}.sequence-enhanced .ecosystem-node.event-active{border-color:var(--teal);box-shadow:0 8px 20px #087f9512}.sequence-enhanced .ecosystem-node.event-active .data-event{animation:data-value var(--event-duration,2.5s) both}
.ecosystem-lines .information-line{stroke:#a2c5ce;stroke-dashoffset:0}.sequence-enhanced .ecosystem-lines .information-line{opacity:.22;stroke-dashoffset:0}.sequence-enhanced .ecosystem-lines .information-line.event-active{animation:data-line var(--event-duration,2.5s) both}
.ecosystem-lines .information-pulse{stroke:var(--teal);stroke-width:2;stroke-dasharray:.06 .94;opacity:0}
.ecosystem-core{padding:14px;text-align:center}.ecosystem-core .receiver-message{font-size:8px;letter-spacing:.6px;line-height:1.7;min-height:28px;margin-top:7px}.receiver-outcome{font-size:11px;color:#c8dbe7;margin-top:5px}
.ecosystem-results{display:flex;justify-content:center;gap:22px;list-style:none;padding:20px 0 0;margin:0;border-top:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.7px;color:var(--teal)}.sequence-enhanced .ecosystem-results li{opacity:.2;transition:opacity .4s,transform .4s;transform:translateY(5px)}.sequence-enhanced .ecosystem-results li.result-visible{opacity:1;transform:none}.sequence-complete .ecosystem-node .data-event{opacity:1}.sequence-complete .ecosystem-lines .information-line{opacity:.55}
.concept-control{font:inherit;color:inherit;border:0;background:none;padding:0;display:flex;gap:17px;text-align:left;width:100%;cursor:pointer}.concept-control:focus-visible{outline:2px solid var(--teal);outline-offset:6px}.concept-active strong{color:var(--teal)}.concept-active{border-left:2px solid var(--teal);padding-left:12px}
.preview-records>div.record-highlight,.preview-equipment.record-highlight{background:#e4f5f7;border-color:#087f95;box-shadow:0 0 0 2px #087f9515;transition:background .3s,border-color .3s}.preview-history{display:none;grid-column:1/-1;align-items:center;gap:5px;font-size:8px;color:var(--teal);margin-top:10px}.show-history .preview-history{display:flex}.show-history .preview-history span{animation:history-entry .6s both}.show-history .preview-history span:nth-of-type(2){animation-delay:.15s}.show-history .preview-history span:nth-of-type(3){animation-delay:.3s}.preview-outcome{margin:0;padding:13px 20px;background:#eaf4f7;border-top:1px solid var(--line);font-size:10px;line-height:1.7;color:var(--teal)}
.benefit-list li.is-visible>.icon,.motion-enabled .operations-preview.is-built .preview-dot{animation:none}
@keyframes data-node{0%{opacity:0}8%,85%{opacity:1}100%{opacity:0}}
@keyframes data-origin-pulse{0%,8%{transform:scale(.7);opacity:0}15%{opacity:1}28%{transform:scale(1.7);opacity:0}100%{opacity:0}}
@keyframes data-line{0%,15%{opacity:0;stroke-dashoffset:1}35%,80%{opacity:.7;stroke-dashoffset:0}100%{opacity:.15;stroke-dashoffset:0}}
@keyframes data-card{0%,18%{opacity:0;transform:translateY(6px)}28%,92%{opacity:1;transform:none}100%{opacity:0;transform:none}}
@keyframes data-value{0%,28%{opacity:0}36%,92%{opacity:1}100%{opacity:.3}}
@keyframes data-state{0%,38%{opacity:0}48%,92%{opacity:1}100%{opacity:.3}}
@keyframes data-travel{0%,60%{opacity:0;stroke-dashoffset:1}65%{opacity:1;stroke-dashoffset:1}88%{opacity:1;stroke-dashoffset:0}100%{opacity:0;stroke-dashoffset:0}}
@keyframes history-entry{from{opacity:.35;transform:translateX(-4px)}to{opacity:1;transform:none}}
@media(max-width:1150px){.ecosystem-node.data-label{width:180px}.technical-tag .data-event{font-size:12px}}
@media(max-width:900px){.ecosystem-node.data-label{width:160px;padding:12px}.ecosystem-node .data-event{font-size:10px}.hero-data-receiver{width:140px}.technical-tag .data-category{font-size:8px}.technical-tag .data-state{font-size:8px}.hero-network-note{font-size:6px}}
@media(max-width:760px){.hero-connections{display:block;min-height:180px;padding:0 24px 70px}.sequence-enhanced .technical-tag{position:absolute;left:24px;right:24px;top:0;bottom:auto;max-width:none}.sequence-enhanced .technical-tag.event-active{animation-name:data-card}.hero-data-receiver{left:auto;right:24px;bottom:50px;padding:0;border:0;background:none;width:auto;text-align:right}.hero-data-receiver strong{font-size:16px}.hero-data-receiver>.receiver-message{font-size:8px}.hero-network-note{bottom:12px;right:24px}.technical-tag .data-event{font-size:13px}.technical-tag .data-state{font-size:10px}.ecosystem-node.data-label{width:34%;padding:10px 6px;gap:5px}.ecosystem-node .data-category{font-size:8px}.ecosystem-node .data-event{font-size:8px;line-height:1.5}.ecosystem-core{width:28%;padding:5px}.ecosystem-core .receiver-message{font-size:6px;letter-spacing:0}.receiver-outcome{font-size:8px}.ecosystem-results{flex-wrap:wrap;gap:12px;font-size:8px}.ecosystem-stage>.sequence-controls{justify-content:center}.sequence-controls button{font-size:9px}}
@media(max-width:360px){.ecosystem-node .data-category,.ecosystem-node .data-event{font-size:7px}.ecosystem-core .receiver-message{font-size:5px}.receiver-outcome{font-size:7px}}
@media(prefers-reduced-motion:reduce){.sequence-enhanced .technical-tag.event-active,.sequence-enhanced .event-active .data-event,.sequence-enhanced .event-active .data-state{animation:none;opacity:1;transform:none}.sequence-enhanced .ecosystem-node .data-event{opacity:1}.sequence-enhanced .ecosystem-results li{opacity:1;transform:none}.sequence-enhanced .hero-network .network-node.event-active,.sequence-enhanced .hero-network .connection.event-active{opacity:1;stroke-dashoffset:0}.information-pulse,.data-return{display:none}}
.sequence-enhanced:not(.sequence-running) .event-active,.sequence-enhanced:not(.sequence-running) .event-active *{animation-play-state:paused!important}
.technical-tag .data-label-content>.data-event{font-size:14px;color:white}.technical-tag .data-label-content>.data-state{display:flex;gap:6px;color:#b9f6ff;font-size:10px}.technical-tag .data-state i{margin-left:3px}
.sequence-paused .event-active .data-event,.sequence-paused .event-active .data-state,.sequence-paused .technical-tag.event-active{animation:none!important;opacity:1!important;transform:none!important}.sequence-paused .connection.event-active,.sequence-paused .information-line.event-active,.sequence-paused .network-node.event-active{animation:none!important;opacity:.8;stroke-dashoffset:0}
@media(max-width:760px){.hero-connections{min-height:225px;padding-bottom:110px}.hero-data-receiver{bottom:82px}.technical-tag .data-label-content>.data-event{font-size:13px}.hero-network-note{bottom:22px}.hero-network-note p{font-size:6px}}
.hero-network{visibility:hidden}.sequence-enhanced .hero-network{visibility:visible}.hero-connections:not(.sequence-enhanced) .hero-data-receiver{display:none}
.data-return-track{fill:none;stroke:#63d5e5;stroke-width:1.2;opacity:0}
.sequence-enhanced .data-return-track.event-active{animation:receiver-route var(--event-duration,2.5s) both}
.data-return{stroke:#e0fbff;stroke-width:3.2;stroke-dasharray:.11 .89;filter:drop-shadow(0 0 4px #63d5e5)}
.sequence-enhanced .data-return.event-active{animation-name:receiver-transmission}
@keyframes receiver-route{0%,48%{opacity:0}60%,94%{opacity:.6}100%{opacity:0}}
@keyframes receiver-transmission{0%,55%{opacity:0;stroke-dashoffset:1}60%{opacity:1;stroke-dashoffset:1}94%{opacity:1;stroke-dashoffset:0}100%{opacity:0;stroke-dashoffset:0}}
@media(min-width:761px){.hero-data-receiver{top:43%;bottom:auto;left:4%;width:180px;padding:14px 16px;background:#0b2c44e6;border-color:#63d5e599;box-shadow:0 8px 24px #071c3633}.hero-data-receiver strong{font-size:25px}.hero-data-receiver>.receiver-message{font-size:10px}}
@media(prefers-reduced-motion:reduce){.data-return-track{display:none}}
.sequence-paused .data-return-track.event-active{animation:none;opacity:.6}
