/* NIV / Signal Graphs — consistent product-preview sizing and restrained chart color.
   Marketing-only styling, no data calculations. Colors are meaningfully keyed to
   scenario/production categories; not confidence or probability estimates. */
#niv-marketing-site.ns-public{
 --niv-signal-green:#b7cfaa;
 --niv-signal-amber:#d5ac87;
 --niv-signal-violet:#beb2cb;
 --niv-signal-ink:#efefec;
}
/* All six horizontal capability cards share the same four-row internal grid.
   The preview must span the FULL available width, regardless of its content. */
#niv-marketing-site.ns-public .nch-path-grid .nch-path{
 display:grid!important;
 grid-template-columns:minmax(0,1fr)!important;
 grid-template-rows:23px 91px minmax(0,1fr) 19px!important;
 align-content:start;
 align-items:stretch;
 box-sizing:border-box;
 height:380px!important;
 min-height:380px!important;
 max-height:380px!important;
 padding:20px 17px 18px!important;
 gap:0!important;
 overflow:hidden;
}
#niv-marketing-site.ns-public .nch-path-grid .nch-path-index{
 display:block;
 align-self:start;
 margin:0!important;
 padding:0!important;
 line-height:1.4;
}
#niv-marketing-site.ns-public .nch-path-grid .nch-path-copy{
 display:grid!important;
 grid-template-rows:43px minmax(0,1fr);
 gap:4px;
 height:91px;
 min-width:0;
 overflow:hidden;
 align-items:start;
}
#niv-marketing-site.ns-public .nch-path-grid .nch-path-copy strong{
 display:block;
 margin:0!important;
 min-width:0;
 font-size:17px!important;
 line-height:1.22!important;
 letter-spacing:-.025em!important;
}
#niv-marketing-site.ns-public .nch-path-grid .nch-path-copy small{
 display:-webkit-box;
 -webkit-box-orient:vertical;
 -webkit-line-clamp:3;
 line-clamp:3;
 overflow:hidden;
 min-width:0;
 min-height:0!important;
 max-width:none;
 margin:0!important;
 font-size:12px!important;
 line-height:1.55!important;
}
#niv-marketing-site.ns-public .nch-path-grid .nch-card-screen{
 display:flex!important;
 flex-direction:column;
 box-sizing:border-box;
 align-self:stretch!important;
 justify-self:stretch!important;
 width:100%!important;
 max-width:100%!important;
 height:100%!important;
 min-width:0!important;
 min-height:0!important;
 max-height:100%;
 margin:0!important;
 padding:14px 12px!important;
 border-radius:3px;
 overflow:hidden;
}
#niv-marketing-site.ns-public .nch-path-grid .nch-mini-head{
 flex:0 0 auto;
 min-width:0;
 justify-content:space-between;
 margin:0 0 11px!important;
 padding-bottom:9px!important;
}
#niv-marketing-site.ns-public .nch-path-grid .nch-mini-head>span{
 min-width:0;
 overflow-wrap:break-word;
}
#niv-marketing-site.ns-public .nch-path-grid .nch-mini-bottom{
 margin-top:auto!important;
 padding-top:7px;
}
#niv-marketing-site.ns-public .nch-path-grid .nch-path-tag{
 align-self:end!important;
 margin:0!important;
 padding:0!important;
 line-height:1.45;
}
/* Universal signal palette for real bar/graph UI elements, not ordinary body text. */
#niv-marketing-site.ns-public .nch-home .nch-track .nch-bar-original{
 background:var(--niv-signal-green)!important;
}
#niv-marketing-site.ns-public .nch-home .nch-track .nch-bar-scenario{
 background:var(--niv-signal-violet)!important;
}
#niv-marketing-site.ns-public .nch-home .nch-console-metrics>div:nth-child(1){border-top:2px solid var(--niv-signal-violet)}
#niv-marketing-site.ns-public .nch-home .nch-console-metrics>div:nth-child(2){border-top:2px solid var(--niv-signal-amber)}
#niv-marketing-site.ns-public .nch-home .nch-console-metrics>div:nth-child(3){border-top:2px solid var(--niv-signal-green)}
/* Mini scenario: green baseline, amber disruption, violet alternative response. */
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-line:nth-child(2)>i::after{
 background:var(--niv-signal-green)!important;
}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-line:nth-child(3)>i::after{
 background:var(--niv-signal-amber)!important;
}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-line:nth-child(4)>i::after{
 background:var(--niv-signal-violet)!important;
}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-progress i{
 background:var(--niv-signal-green)!important;
}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-board>div:nth-child(1) b{color:var(--niv-signal-amber)!important}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-board>div:nth-child(2) b{color:var(--niv-signal-violet)!important}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-board>div:nth-child(3) b{color:var(--niv-signal-green)!important}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-response>span:nth-child(3n+1){border-left:2px solid var(--niv-signal-green);padding-left:7px}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-response>span:nth-child(3n+2){border-left:2px solid var(--niv-signal-violet);padding-left:7px}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-response>span:nth-child(3n){border-left:2px solid var(--niv-signal-amber);padding-left:7px}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-status>span:nth-child(1){border-left-color:var(--niv-signal-amber)!important}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-status>span:nth-child(2){border-left-color:var(--niv-signal-violet)!important}
#niv-marketing-site.ns-public .nch-card-screen .nch-mini-status>span:nth-child(3){border-left-color:var(--niv-signal-green)!important}
/* Predictions: three named scenario rows with repeatable and legible colored
   marks; the existing dashed target stays a neutral reference marker. */
#niv-marketing-site.ns-public .ns-home .np-chart-row[data-np-scenario="wait"] .np-bar{
 background:var(--niv-signal-amber)!important;
}
#niv-marketing-site.ns-public .ns-home .np-chart-row[data-np-scenario="alternative"] .np-bar{
 background:var(--niv-signal-green)!important;
}
#niv-marketing-site.ns-public .ns-home .np-chart-row[data-np-scenario="expedite"] .np-bar{
 background:var(--niv-signal-violet)!important;
}
#niv-marketing-site.ns-public .ns-home .np-chart-row[data-np-scenario="wait"] .np-point{background:var(--niv-signal-amber)!important}
#niv-marketing-site.ns-public .ns-home .np-chart-row[data-np-scenario="alternative"] .np-point{background:var(--niv-signal-green)!important}
#niv-marketing-site.ns-public .ns-home .np-chart-row[data-np-scenario="expedite"] .np-point{background:var(--niv-signal-violet)!important}
#niv-marketing-site.ns-public .ns-home .np-chart-row[data-np-scenario="wait"] .np-band{background:#d5ac8736!important;border-color:#d5ac8788!important}
#niv-marketing-site.ns-public .ns-home .np-chart-row[data-np-scenario="alternative"] .np-band{background:#b7cfaa36!important;border-color:#b7cfaa88!important}
#niv-marketing-site.ns-public .ns-home .np-chart-row[data-np-scenario="expedite"] .np-band{background:#beb2cb36!important;border-color:#beb2cb88!important}
#niv-marketing-site.ns-public .ns-home .np-response-key{
 display:flex;gap:8px 18px;flex-wrap:wrap;
 padding:8px 0 2px;font-size:11px;line-height:1.5;color:#d4d4cf;
}
#niv-marketing-site.ns-public .ns-home .np-response-key span{display:inline-flex;align-items:center;gap:7px}
#niv-marketing-site.ns-public .ns-home .np-response-key i{
 display:block;flex:0 0 13px;width:13px;height:4px;border-radius:1px;
}
#niv-marketing-site.ns-public .ns-home .np-response-key [data-np-legend="wait"] i{background:var(--niv-signal-amber)}
#niv-marketing-site.ns-public .ns-home .np-response-key [data-np-legend="alternative"] i{background:var(--niv-signal-green)}
#niv-marketing-site.ns-public .ns-home .np-response-key [data-np-legend="expedite"] i{background:var(--niv-signal-violet)}
/* Production: measured progress, shortage/hold and review stages retain
   distinct accents, but all quantities are still labeled sample data. */
#niv-marketing-site.ns-public .ns-production .nsp-meter>i{
 background:var(--niv-signal-green)!important;
}
#niv-marketing-site.ns-public .ns-production .nsp-stats>div:nth-child(1){border-top:3px solid var(--niv-signal-green)}
#niv-marketing-site.ns-public .ns-production .nsp-stats>div:nth-child(2){border-top:3px solid var(--niv-signal-violet)}
#niv-marketing-site.ns-public .ns-production .nsp-stats>div:nth-child(3){border-top:3px solid var(--niv-signal-amber)}
#niv-marketing-site.ns-public .ns-production .nsp-stats>div:nth-child(4){border-top:3px solid var(--niv-signal-violet)}
#niv-marketing-site.ns-public .ns-production .nsp-flow li:nth-child(3n+1){border-left:3px solid var(--niv-signal-green)}
#niv-marketing-site.ns-public .ns-production .nsp-flow li:nth-child(3n+2){border-left:3px solid var(--niv-signal-amber)}
#niv-marketing-site.ns-public .ns-production .nsp-flow li:nth-child(3n){border-left:3px solid var(--niv-signal-violet)}
#niv-marketing-site.ns-public .ns-production .nsp-pillars article:nth-child(3n+1){border-top:2px solid var(--niv-signal-green)}
#niv-marketing-site.ns-public .ns-production .nsp-pillars article:nth-child(3n+2){border-top:2px solid var(--niv-signal-amber)}
#niv-marketing-site.ns-public .ns-production .nsp-pillars article:nth-child(3n){border-top:2px solid var(--niv-signal-violet)}
/* Industries existing black chart becomes the shared green/amber/violet visual
   reference. Maintain dark graph contrast, with repeatable colors on ALL bars. */
#niv-marketing-site.ns-public main.ni-detail .nix-example-plot b:nth-child(3n+1){background:var(--niv-signal-green)!important}
#niv-marketing-site.ns-public main.ni-detail .nix-example-plot b:nth-child(3n+2){background:var(--niv-signal-amber)!important}
#niv-marketing-site.ns-public main.ni-detail .nix-example-plot b:nth-child(3n){background:var(--niv-signal-violet)!important}
/* Older public marketing feature illustrations use the same palette if present,
   never adding fake financial charts to product pages that have none. */
#niv-marketing-site.ns-public main .mini-bars i:nth-child(3n+1){background:var(--niv-signal-green)!important}
#niv-marketing-site.ns-public main .mini-bars i:nth-child(3n+2){background:var(--niv-signal-amber)!important}
#niv-marketing-site.ns-public main .mini-bars i:nth-child(3n){background:var(--niv-signal-violet)!important}
#niv-marketing-site.ns-public main .display-track:before{background:var(--niv-signal-green)!important}
/* Also fix inherited dark-on-dark text on the dedicated Production introduction;
   this is present in screenshots but not part of the published data model. */
#niv-marketing-site.ns-public main.ni-detail .nch-production-intro :is(h1,p,span){
 color:#f4f4f1!important;
}
#niv-marketing-site.ns-public main.ni-detail .nch-production-intro>div>p{
 color:#bfbfbb!important;
}
#niv-marketing-site.ns-public main.ni-detail .nch-production-back a{
 color:#f4f4f1!important;
}
@media(max-width:1040px){
 #niv-marketing-site.ns-public .nch-path-grid .nch-path{
  height:376px!important;min-height:376px!important;max-height:376px!important;
 }
}
@media(max-width:640px){
 #niv-marketing-site.ns-public .nch-path-grid .nch-path{
  height:375px!important;min-height:375px!important;max-height:375px!important;
  padding:18px 15px 17px!important;
  grid-template-rows:22px 91px minmax(0,1fr) 18px!important;
 }
 #niv-marketing-site.ns-public .nch-path-grid .nch-path-copy strong{font-size:17px!important}
 #niv-marketing-site.ns-public .nch-path-grid .nch-card-screen{padding:13px 11px!important}
 #niv-marketing-site.ns-public .nch-mini-line{grid-template-columns:60px minmax(0,1fr) 27px}
}
@media(prefers-reduced-motion:reduce){
 #niv-marketing-site.ns-public .nch-card-screen *,
 #niv-marketing-site.ns-public .nch-track i,
 #niv-marketing-site.ns-public .ns-home .np-bar{transition:none!important}
}
