/* RadioIntel process illustration. All values shown by the module are synthetic. */
#pipeline-demo [data-pipeline-viewport] {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-color: #6882a5 #10213a;
  scrollbar-width: thin;
  border-radius: 16px;
}
#pipeline-demo [data-pipeline-viewport]:focus-visible {
  outline: 3px solid #f0bb37;
  outline-offset: -3px;
}
#pipeline-svg { display: block; width: 100%; height: auto; aspect-ratio: 1440 / 760; stroke: none; stroke-width: 1; fill: none; }
#pipeline-demo [data-pipeline-viewport] #pipeline-svg { min-width: 1040px; }
#pipeline-svg text { font-family: Onest, Arial, sans-serif; text-rendering: optimizeLegibility; stroke: none; }
#pipeline-svg .rip-background { fill: #08172a; }
#pipeline-svg .rip-diagram-title { fill: #f3f6fb; font-size: 21px; font-weight: 550; letter-spacing: -.4px; }
#pipeline-svg .rip-text { fill: #b6c7dd; font-size: 13px; }
#pipeline-svg .rip-small { fill: #a9bdd7; font-size: 12px; }
#pipeline-svg .rip-footer { fill: #9fb5d0; font-size: 13px; }
#pipeline-svg .rip-heading { fill: #f3f6fb; font-size: 15px; font-weight: 550; }
#pipeline-svg .rip-panel { fill: #10213a; stroke: #3d526e; stroke-width: 1; transition: stroke .25s, fill .25s; }
#pipeline-svg .rip-node.rip-active > .rip-panel { stroke: #e9ef9b; stroke-width: 2; fill: #152b46; }
#pipeline-svg .rip-node.rip-complete > .rip-panel { stroke: #5377a8; }
#pipeline-svg .rip-step-ring { fill: #1b3556; stroke: #647e9d; }
#pipeline-svg .rip-step-label { fill: #e3ecf8; font-size: 11px; font-variant-numeric: tabular-nums; }
#pipeline-svg .rip-active .rip-step-ring { fill: #e9ef9b; stroke: #e9ef9b; }
#pipeline-svg .rip-active .rip-step-label { fill: #08172a; }
#pipeline-svg .rip-source-path { fill: none; stroke: #234367; stroke-width: 1; opacity: .42; }
#pipeline-svg .rip-selected-source { stroke: #e9ef9b; stroke-width: 1.8; opacity: .85; }
#pipeline-svg .rip-main-path { fill: none; stroke: #527ba8; stroke-width: 2; }
#pipeline-svg .rip-arrowhead { fill: none; stroke: #729cd0; stroke-width: 1.6; }
#pipeline-svg .rip-source-box { fill: #142a46; stroke: #436184; stroke-width: .8; }
#pipeline-svg .rip-source-label { fill: #b7cbe4; font-size: 10px; font-variant-numeric: tabular-nums; }
#pipeline-svg .rip-source-icon { fill: none; stroke: #729bce; stroke-width: 1.3; stroke-linecap: round; }
#pipeline-svg .rip-source-selected .rip-source-box { fill: #263f4c; stroke: #e9ef9b; stroke-width: 1.2; }
#pipeline-svg .rip-source-selected .rip-source-label, #pipeline-svg .rip-source-selected .rip-source-icon { fill: #f3f6c7; stroke: none; }
#pipeline-svg .rip-source-selected .rip-source-icon { fill: none; stroke: #e9ef9b; }
#pipeline-svg .rip-waveform { stroke: #6498ff; stroke-width: 2.4; stroke-linecap: round; }
#pipeline-svg .rip-waveform:nth-child(5n) { stroke: #e9ef9b; }
#pipeline-svg .rip-meter-track { fill: #294260; }
#pipeline-svg .rip-meter-fill { fill: #e9ef9b; }
#pipeline-svg .rip-value { fill: #e5effd; font-size: 13px; font-variant-numeric: tabular-nums; }
#pipeline-svg .rip-transcript-highlight { fill: #e9ef9b16; stroke: #e9ef9b40; }
#pipeline-svg .rip-transcript-first { fill: #eff5b9; font-size: 13px; font-weight: 500; }
#pipeline-svg .rip-transcript-line { fill: #c9d8ed; font-size: 12px; }
#pipeline-svg .rip-type-cursor { fill: #e9ef9b; }
#pipeline-svg .rip-candidate-badge { fill: #3977ff22; stroke: #507daf; }
#pipeline-svg .rip-badge-text { fill: #bcd5ff; font-size: 11px; }
#pipeline-svg .rip-divider { stroke: #385371; stroke-width: .7; }
#pipeline-svg .rip-database-cylinder { fill: #183958; stroke: #6184b2; stroke-width: 1; }
#pipeline-svg .rip-database-top { fill: #244565; stroke: #6184b2; stroke-width: 1; }
#pipeline-svg .rip-db-row-box { fill: #192e48; stroke: #486487; stroke-width: .6; }
#pipeline-svg .rip-db-label { fill: #c4d5ec; font-size: 11px; font-variant-numeric: tabular-nums; }
#pipeline-svg .rip-group-box { fill: #18304c; stroke: #4e6d91; stroke-width: .9; }
#pipeline-svg .rip-brand-a-dot { fill: #e9ef9b; }
#pipeline-svg .rip-brand-b-dot { fill: #729fff; }
#pipeline-svg .rip-group-title { fill: #edf3fb; font-size: 14px; font-weight: 500; }
#pipeline-svg .rip-group-stations { fill: #b8ccec; font-size: 12px; }
#pipeline-svg .rip-report-track { fill: #294260; }
#pipeline-svg .rip-report-bar { fill: #6498ff; }
#pipeline-svg .rip-report-bar-1 { fill: #88adf7; }
#pipeline-svg .rip-report-bar-2 { fill: #adc6f5; }
#pipeline-svg .rip-confirmation-mark { fill: none; stroke: #e9ef9b; stroke-width: 2; stroke-linecap: round; }
#pipeline-svg .rip-evidence-box { fill: #0c1d32; stroke: #435b78; stroke-width: 1; stroke-dasharray: 4 5; }
#pipeline-svg .rip-evidence-dot { fill: #89a8d0; }
#pipeline-svg .rip-source-packet { fill: #95baff; }
#pipeline-svg .rip-main-packet { fill: #e9ef9b; stroke: #e9ef9b; stroke-width: 3; stroke-opacity: .12; }
#pipeline-demo [data-pipeline-stage], #pipeline-demo [data-pipeline-play] { min-height: 44px; }
#pipeline-demo [data-pipeline-stage].is-active { border-color: #e9ef9b; }
#pipeline-demo [data-pipeline-play][aria-disabled="true"] { cursor: default; }
@media (prefers-reduced-motion: reduce) {
  #pipeline-svg *, #pipeline-svg *::before, #pipeline-svg *::after { animation: none !important; transition: none !important; }
}
@media (forced-colors: active) {
  #pipeline-svg .rip-panel, #pipeline-svg .rip-source-box { fill: Canvas; stroke: CanvasText; }
  #pipeline-svg text { fill: CanvasText; }
  #pipeline-svg .rip-active > .rip-panel { stroke: Highlight; }
}
@media (max-width: 650px) {
  /* Preserve readable stage labels; the viewport alone scrolls, never the page. */
  #pipeline-demo [data-pipeline-viewport] #pipeline-svg { min-width: 1440px; }
}
#pipeline-demo:not([data-playing="true"]) #pipeline-svg * {
  animation: none !important;
  transition: none !important;
}

/* White signal diagram: the process remains rich without dark surfaces. */
#pipeline-svg .rip-background{fill:#fff}
#pipeline-svg text{fill:#526880;stroke:none!important}
#pipeline-svg .rip-diagram-title,#pipeline-svg .rip-heading,#pipeline-svg .rip-value,#pipeline-svg .rip-group-title,#pipeline-svg .rip-mobile-title,#pipeline-svg .rip-mobile-value{fill:#152537}
#pipeline-svg .rip-panel{fill:#fff;stroke:#c7d5e8}
#pipeline-svg .rip-node.rip-active>.rip-panel{fill:#f5f9ed;stroke:#628834}
#pipeline-svg .rip-node.rip-complete>.rip-panel{stroke:#98b6df}
#pipeline-svg .rip-step-ring{fill:#edf3ff;stroke:#97b6e2}
#pipeline-svg .rip-step-label{fill:#174fbe}
#pipeline-svg .rip-active .rip-step-ring{fill:#dceab4;stroke:#86a85a}
#pipeline-svg .rip-active .rip-step-label{fill:#365c21}
#pipeline-svg .rip-source-box,#pipeline-svg .rip-db-row-box,#pipeline-svg .rip-group-box,#pipeline-svg .rip-evidence-box{fill:#f7f9fc;stroke:#bdcfe6}
#pipeline-svg .rip-source-selected .rip-source-box{fill:#edf5df;stroke:#628834}
#pipeline-svg .rip-source-selected .rip-source-label{fill:#365c21;stroke:none}
#pipeline-svg .rip-source-selected .rip-source-icon{stroke:#628834}
#pipeline-svg .rip-transcript-highlight{fill:#edf5df;stroke:#b7cf92}
#pipeline-svg .rip-transcript-first{fill:#365c21}
#pipeline-svg .rip-transcript-line{fill:#526880}
#pipeline-svg .rip-meter-track,#pipeline-svg .rip-report-track{fill:#e8eff9}
#pipeline-svg .rip-meter-fill,#pipeline-svg .rip-main-packet{fill:#3977ff;stroke:#3977ff}
#pipeline-svg .rip-candidate-badge{fill:#edf3ff;stroke:#abc3e6}
#pipeline-svg .rip-database-cylinder{fill:#edf3ff;stroke:#8badde}
#pipeline-svg .rip-database-top{fill:#dce8fa;stroke:#8badde}
#pipeline-svg .rip-divider{stroke:#d2deed}
#pipeline-svg .rip-confirmation-mark{stroke:#628834}
#pipeline-svg .rip-mobile-title{font-size:19px;font-weight:550;letter-spacing:-.4px}
#pipeline-svg .rip-mobile-small{font-size:14px}
#pipeline-svg .rip-mobile-value{font-size:15px;font-weight:500;font-variant-numeric:tabular-nums}
@media(max-width:760px){
 #pipeline-demo [data-pipeline-viewport]{overflow-x:hidden;scrollbar-width:none}
 #pipeline-demo [data-pipeline-viewport] #pipeline-svg{min-width:0;width:100%;aspect-ratio:360 / 1640}
 #pipeline-svg .rip-heading{font-size:17px}
 #pipeline-svg .rip-small,#pipeline-svg .rip-transcript-first,#pipeline-svg .rip-transcript-line{font-size:14px}
 #pipeline-svg .rip-step-label{font-size:13px}
}
@media(max-width:760px){#pipeline-svg .rip-step-label{font-size:14px}}
#pipeline-svg .rip-selected-source{stroke:#628834}
#pipeline-svg .rip-brand-a-dot{fill:#628834}
#pipeline-svg .rip-waveform:nth-child(5n){stroke:#628834}
#pipeline-svg .rip-evidence-dot{fill:#527ba8}
#pipeline-svg .rip-type-cursor{fill:#3977ff}
/* Existing SVG class specificity must not retain the old pale-on-navy text colors. */
#pipeline-svg .rip-small,#pipeline-svg .rip-source-label,#pipeline-svg .rip-footer,
#pipeline-svg .rip-db-label,#pipeline-svg .rip-group-stations,#pipeline-svg .rip-badge-text{fill:#526880;stroke:none!important}
#pipeline-svg .rip-source-label{font-size:12px}
