/* V37: continuous terminal and packets registered to the photographed racks. */
#custom-software .terminal-viewport{flex:1;min-height:0;overflow:hidden;scroll-behavior:smooth;position:relative;overscroll-behavior:contain}
#custom-software .terminal-static{height:auto;min-height:0}
.terminal-feed{display:none;padding:12px 14px 16px}
.terminal-enhanced .terminal-static{display:none}
.terminal-enhanced .terminal-feed{display:block}
.stream-row{display:grid;grid-template-columns:20px minmax(0,1fr);min-height:22px;line-height:1.8;align-items:start}
.stream-row code{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}
.stream-row .line-number{font-size:.9em;color:#7f8a9a}
.stream-code b{font-weight:400;color:#91bcff}
.stream-code em{font-style:normal;color:#a1dfb0}
.stream-tool code{color:#7ccad8}.stream-tool .line-number{color:#6bc5d9}
.stream-think code{color:#c0a1ed}.stream-think .line-number{color:#b58ae7}
.stream-done code{color:#a1dfb0}
.stream-command code{color:#f6f6f6}
.stream-add{background:linear-gradient(90deg,#80ce9b22,#80ce9b08)}
.stream-active code:after{content:'';display:inline-block;width:5px;height:1.05em;background:#bad7ff;vertical-align:-.12em;margin-left:1px;animation:terminal-caret .7s steps(1) infinite}
#custom-software .terminal-caption{align-items:center;min-height:32px;color:#b9c6dc}
.terminal-current-status{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.terminal-status-dot{width:5px;height:5px;border-radius:50%;background:#83b7ff;flex-shrink:0;box-shadow:0 0 7px #71b1ff66;animation:terminal-breathe 1s ease-in-out infinite}
@keyframes terminal-caret{50%{opacity:0}}
@keyframes terminal-breathe{50%{opacity:.35}}
.cloud-photo .service-photo{object-position:center}
.service-tile:hover .cloud-photo .service-photo{transform:none}
.cloud-energy{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen;opacity:.95}
.cloud-data-head,.cloud-data-tail{fill:none;stroke-linecap:round;stroke-linejoin:round;animation:cloud-packet-transit var(--packet-speed,1.9s) linear var(--packet-delay,0s) infinite}
.cloud-data-head{stroke:#d6fbff;stroke-width:2;stroke-dasharray:1.2 98.8}
.cloud-data-tail{stroke:#21c5ff;stroke-width:7;stroke-dasharray:5 95;filter:url(#cloud-packet-glow);opacity:.7}
@keyframes cloud-packet-transit{from{stroke-dashoffset:105}to{stroke-dashoffset:-5}}
.cloud-server-signals{fill:#beffff}
.cloud-server-signals circle{animation:cloud-server-ack 1.7s ease-out infinite;filter:drop-shadow(0 0 5px #26bfff)}
.cloud-server-signals circle:nth-child(2n){animation-delay:-.55s}
.cloud-server-signals circle:nth-child(3n){animation-delay:-1.15s}
@keyframes cloud-server-ack{0%,65%,100%{opacity:.1}18%{opacity:1}35%{opacity:.35}46%{opacity:.75}}
.gpu-memory-bank,.gpu-package-energy,.gpu-silicon-return,.gpu-silicon-charge,.gpu-silicon-lanes,.gpu-silicon-sweep,.gpu-silicon-rim,.gpu-contact-pins circle{animation-duration:3.2s}
.gpu-die-surface-1{--die-phase:-1.6s!important}
.connected-input-sweep,.connected-core-charge,.connected-output-sweep,.connected-result{animation-duration:3.6s}
.connected-input-sweep.input-echo{animation-delay:.24s}
.connected-result.result-chart{animation-delay:.175s}
.connected-result.result-table{animation-delay:.35s}
@media(max-width:640px){.terminal-feed{padding:10px 10px 12px}.stream-row{grid-template-columns:16px minmax(0,1fr);min-height:19px}}
@media(prefers-reduced-motion:reduce){
 .terminal-enhanced .terminal-static{display:grid}.terminal-enhanced .terminal-feed{display:none}
 .terminal-status-dot{animation:none!important}.cloud-energy{display:none}
 .cloud-data-head,.cloud-data-tail,.cloud-server-signals circle{animation:none!important}
}
