/* Chatbot Audit horizontal layout. It inherits the unified typography and
 * interface palette from aix-explainer.css; green is reserved for semantic
 * success inside the scenes, never for global navigation state. */
.ns-aix-audit{
  --ns-aix-audit-success:#30ce7c;
  --ns-aix-audit-warning:#f2b263;
  --ns-aix-audit-panel:color-mix(in srgb,var(--ns-aix-secondary) 10%,transparent);
  --ns-aix-audit-line:color-mix(in srgb,var(--ns-aix-ink) 16%,transparent);
  --ns-aix-audit-copy:color-mix(in srgb,var(--ns-aix-ink) 86%,transparent);
  container-type:inline-size;
  overflow:visible;
}
.ns-aix-audit svg{display:block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.ns-aix-audit-head{margin-bottom:clamp(10px,1.5vw,18px)}

/* Horizontal stage rail: one row at every width. At full desktop/tablet
 * widths all six stages fit without an overflow region. Narrow hosts retain
 * horizontal scrolling, but the browser scrollbar itself is deliberately
 * hidden; touch, trackpad, wheel, keyboard and active-step auto-scrolling
 * continue to work. */
.ns-aix-audit-navwrap{
  width:100%;max-width:1180px;min-width:0;margin:0 auto;overflow:hidden;
  scroll-snap-type:x proximity;overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;padding:2px 1px 6px;
  scrollbar-width:none;
}
.ns-aix-audit-navwrap::-webkit-scrollbar{display:none;width:0;height:0}
.ns-aix-audit-steps{
  list-style:none!important;margin:0!important;padding:0 0 12px!important;
  display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(4px,.72vw,10px);
  width:100%!important;max-width:100%!important;min-width:0!important;position:relative;
}
.ns-aix-audit-steps::before{
  content:"";position:absolute;left:6%;right:6%;bottom:35px;height:1px;
  background-image:linear-gradient(90deg,var(--ns-aix-audit-line) 0,var(--ns-aix-audit-line) 48%,transparent 48%);background-size:10px 1px;pointer-events:none;
}
.ns-aix-audit-steps li{list-style:none!important;margin:0!important;padding:0!important;min-width:0!important;max-width:100%;scroll-snap-align:center}
.ns-aix-audit-step{
  appearance:none;border:0;background:transparent;color:var(--ns-aix-faint);width:100%;min-width:0;max-width:100%;min-height:106px;
  display:grid;grid-template-rows:auto minmax(2.3em,auto) 38px;justify-items:center;align-items:center;text-align:center;
  gap:5px;padding:2px 7px 8px;cursor:pointer;font-family:var(--ns-body);position:relative;
  transition:color .75s ease,background .75s ease,transform .75s ease;
}
.ns-aix-audit-step:hover{color:var(--ns-aix-ink)}
.ns-aix-audit-step:focus-visible{outline:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ns-aix-accent) 62%,transparent),0 0 16px color-mix(in srgb,var(--ns-aix-accent) 20%,transparent)}
.ns-aix-audit-step.ns-on{color:var(--ns-aix-ink);background:linear-gradient(180deg,color-mix(in srgb,var(--ns-aix-accent) 6%,transparent),transparent 78%);transform:translateY(-1px)}
.ns-aix-audit-step-num{font-family:var(--ns-tw);font-size:14px;letter-spacing:.08em;color:var(--ns-aix-faint);transition:color .7s ease,text-shadow .7s ease}
.ns-aix-audit-step.ns-on .ns-aix-audit-step-num{color:var(--ns-aix-accent);text-shadow:0 0 12px color-mix(in srgb,var(--ns-aix-accent) 38%,transparent)}
.ns-aix-audit-step-label{font-family:var(--ns-tw);font-size:clamp(11.5px,.92vw,14.5px);line-height:1.18;letter-spacing:.02em;display:grid;place-items:center;min-width:0;max-width:100%;color:inherit;overflow-wrap:normal;word-break:normal;hyphens:auto}
.ns-aix-audit-step.ns-on .ns-aix-audit-step-label{color:var(--ns-aix-ink);opacity:1}
.ns-aix-audit-step-icon{
  position:relative;z-index:1;width:38px;height:38px;display:grid;place-items:center;font-size:19px;
  border:1px solid var(--ns-aix-audit-line);color:var(--ns-aix-muted);background:color-mix(in srgb,var(--ns-aix-secondary) 5%,transparent);
  transition:color .75s ease,border-color .75s ease,box-shadow .75s ease,background .75s ease;
}
.ns-aix-audit-step.ns-on .ns-aix-audit-step-icon{color:var(--ns-aix-ink);opacity:1;border-color:color-mix(in srgb,var(--ns-aix-accent) 66%,transparent);background:color-mix(in srgb,var(--ns-aix-accent) 8%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--ns-aix-accent) 22%,transparent)}
.ns-aix-audit-step-icon::after{content:"";position:absolute;left:50%;bottom:-13px;transform:translateX(-50%);width:7px;height:7px;opacity:0;background:var(--ns-aix-accent);box-shadow:0 0 12px color-mix(in srgb,var(--ns-aix-accent) 55%,transparent);transition:opacity .7s ease}
.ns-aix-audit-step.ns-on .ns-aix-audit-step-icon::after{opacity:1}
.ns-aix-audit-progress{width:100%;max-width:1180px;height:2px;margin:0 auto clamp(16px,2vw,24px);background:var(--ns-aix-audit-line);overflow:hidden}
.ns-aix-audit-progress span{display:block;width:16.666%;height:100%;background:linear-gradient(90deg,var(--ns-aix-accent),var(--ns-aix-secondary));transition:width 1.1s cubic-bezier(.16,.72,.18,1)}

/* Main body follows the fifth explainer's original animation-left / copy-right
 * composition, but with the same restrained typography as the other four. */
.ns-aix-audit-body{width:100%;max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(270px,.88fr);gap:clamp(20px,3.2vw,44px);align-items:start}
.ns-aix-audit-stage{position:relative;height:clamp(350px,32vw,410px);min-width:0;overflow:hidden}
.ns-aix-audit-canvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;pointer-events:none;opacity:.82}
.ns-aix-audit-scene{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .52s ease,transform .52s ease,visibility 0s linear .52s}
.ns-aix-audit-scene.ns-on{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition:opacity .62s ease,transform .62s ease,visibility 0s}
.ns-aix-audit-pad{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-start;gap:clamp(10px,1.7vw,17px);padding:4px}

/* Shared scene modules. */
.ns-aix-audit-card,.ns-aix-audit-target,.ns-aix-audit-source,.ns-aix-audit-msg,.ns-aix-audit-probe,.ns-aix-audit-metrics span,.ns-aix-audit-recs,.ns-aix-audit-score,.ns-aix-audit-review-step,.ns-aix-audit-chip span{
  border:1px solid var(--ns-aix-audit-line);background:color-mix(in srgb,var(--ns-aix-secondary) 5%,transparent);box-shadow:0 0 18px rgba(0,0,0,.08);
}
.ns-aix-audit-card{min-height:47px;min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr) 16px;gap:8px;align-items:center;padding:7px 9px;color:var(--ns-aix-ink);position:relative}
.ns-aix-audit-card-icon{width:29px;height:29px;display:grid;place-items:center;font-size:18px;color:var(--ns-aix-muted);border:1px solid var(--ns-aix-audit-line)}
.ns-aix-audit-card strong{min-width:0;font-family:var(--ns-body);font-size:12.2px;line-height:1.22;font-weight:600;overflow-wrap:anywhere;hyphens:auto}
.ns-aix-audit-card-check{font-size:15px;color:var(--ns-aix-audit-success)}
@keyframes nsAixAuditFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.ns-aix-audit-float{animation:nsAixAuditFloat 7s ease-in-out infinite;animation-delay:var(--d,0s)}
.ns-aix-paused .ns-aix-audit-float,.ns-aix-paused .ns-aix-audit-radar i,.ns-aix-paused .ns-aix-audit-rc-rings{animation-play-state:paused!important}

/* Configure */
.ns-aix-audit-config{width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,.82fr) minmax(180px,1.08fr) minmax(0,.82fr);gap:14px;align-items:center}
.ns-aix-audit-config-side{display:grid;min-width:0;gap:9px}
.ns-aix-audit-hub{height:190px;border:1px solid color-mix(in srgb,var(--ns-aix-accent) 45%,transparent);background:color-mix(in srgb,var(--ns-aix-secondary) 6%,transparent);box-shadow:0 0 25px color-mix(in srgb,var(--ns-aix-accent) 9%,transparent),inset 0 0 30px color-mix(in srgb,var(--ns-aix-accent) 5%,transparent);position:relative}
.ns-aix-audit-hub::before,.ns-aix-audit-hub::after{content:"";position:absolute;top:50%;width:16px;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--ns-aix-accent) 58%,transparent))}
.ns-aix-audit-hub::before{left:-17px}.ns-aix-audit-hub::after{right:-17px;transform:scaleX(-1)}
.ns-aix-audit-hub-head{height:33px;display:flex;align-items:center;padding:0 11px;border-bottom:1px solid var(--ns-aix-audit-line);font-family:var(--ns-tw);font-size:12px;color:var(--ns-aix-ink)}
.ns-aix-audit-hub-head span{margin-right:auto}.ns-aix-audit-hub-head em{display:block;width:5px;height:5px;background:var(--ns-aix-accent);margin-left:6px;box-shadow:0 0 8px color-mix(in srgb,var(--ns-aix-accent) 45%,transparent)}
.ns-aix-audit-hub-title{text-align:center;padding-top:12px;font-family:var(--ns-tw);font-size:18px;color:var(--ns-aix-accent)}
.ns-aix-audit-radar{position:absolute;left:50%;top:59%;transform:translate(-50%,-50%);width:126px;height:126px}
.ns-aix-audit-radar i{position:absolute;inset:0;border:1px solid color-mix(in srgb,var(--ns-aix-accent) 16%,transparent);animation:nsAixAuditSpin 28s linear infinite}.ns-aix-audit-radar i:nth-child(2){inset:16%;animation-duration:21s;animation-direction:reverse}.ns-aix-audit-radar i:nth-child(3){inset:32%;animation-duration:15s}
.ns-aix-audit-radar b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:45px;height:45px;display:grid;place-items:center;font-size:22px;color:var(--ns-aix-ink);border:1px solid color-mix(in srgb,var(--ns-aix-accent) 60%,transparent);background:color-mix(in srgb,var(--ns-aix-secondary) 16%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--ns-aix-accent) 16%,transparent)}
@keyframes nsAixAuditSpin{to{transform:rotate(360deg)}}
.ns-aix-audit-chip{display:flex;justify-content:center}.ns-aix-audit-chip span{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;font-size:12px;color:var(--ns-aix-audit-copy)}.ns-aix-audit-chip svg{font-size:18px;color:var(--ns-aix-accent)}

/* Briefing */
.ns-aix-audit-brief{display:grid;grid-template-columns:minmax(210px,.95fr) minmax(180px,.75fr);gap:22px;align-items:center}
.ns-aix-audit-stack{display:grid;gap:9px}.ns-aix-audit-stack .ns-aix-audit-card{grid-template-columns:30px 1fr}
.ns-aix-audit-target{height:184px;display:grid;place-items:center;align-content:center;text-align:center;gap:10px;padding:18px;border-color:color-mix(in srgb,var(--ns-aix-accent) 38%,transparent)}
.ns-aix-audit-target span{font-size:42px;color:var(--ns-aix-accent)}.ns-aix-audit-target b{font-family:var(--ns-tw);font-size:19px;font-weight:400;color:var(--ns-aix-ink);line-height:1.2}

/* Use cases */
.ns-aix-audit-ucd{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:stretch}
.ns-aix-audit-source{padding:13px 14px 15px;display:flex;flex-direction:column;gap:11px}
.ns-aix-audit-source.ns-success{border-color:color-mix(in srgb,var(--ns-aix-audit-success) 40%,transparent);box-shadow:0 0 20px color-mix(in srgb,var(--ns-aix-audit-success) 7%,transparent)}
.ns-aix-audit-source-head{display:flex;align-items:center;gap:9px;font-family:var(--ns-tw);font-size:15px;color:var(--ns-aix-ink);padding-bottom:8px;border-bottom:1px solid var(--ns-aix-audit-line)}
.ns-aix-audit-source-head svg{font-size:21px;color:var(--ns-aix-accent);flex:0 0 auto}.ns-aix-audit-source.ns-success .ns-aix-audit-source-head svg{color:var(--ns-aix-audit-success)}
.ns-aix-audit-source small{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ns-aix-faint);font-family:var(--ns-body)}
.ns-aix-audit-source ul{list-style:none!important;margin:0!important;padding:0!important;display:grid;row-gap:10px;align-content:start}.ns-aix-audit-source li{position:relative;padding:1px 0 1px 22px;margin:0!important;font-size:11.8px;line-height:1.46;color:var(--ns-aix-muted)}.ns-aix-audit-source li svg{position:absolute;left:0;top:.22em;font-size:15px;color:var(--ns-aix-audit-success)}
.ns-aix-audit-merge{margin:0 auto;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;font-size:11.6px;color:var(--ns-aix-muted);border:1px solid color-mix(in srgb,var(--ns-aix-audit-success) 32%,transparent);background:color-mix(in srgb,var(--ns-aix-audit-success) 3%,transparent)}.ns-aix-audit-merge svg{font-size:16px;color:var(--ns-aix-audit-success)}

/* Audit */
.ns-aix-audit-audit{display:grid;grid-template-columns:1fr .78fr;grid-template-areas:"q probe" "m m";gap:13px 16px;align-items:stretch}
.ns-aix-audit-msgs{grid-area:q;display:grid;gap:8px;align-content:start}.ns-aix-audit-msg{display:flex;align-items:center;gap:8px;padding:9px 11px;color:var(--ns-aix-ink);font-size:11.8px;line-height:1.3;border-radius:2px 10px 10px 10px}.ns-aix-audit-msg svg{font-size:17px;color:var(--ns-aix-accent);flex:0 0 auto}.ns-aix-audit-msg b{font-family:var(--ns-body);font-weight:400}.ns-aix-audit-msg em{margin-left:auto;font-style:normal;font-size:9px;letter-spacing:.08em;color:#07132c;background:var(--ns-aix-audit-warning);padding:2px 6px;flex:0 0 auto}
.ns-aix-audit-probe{grid-area:probe;display:grid;place-items:center;align-content:center;text-align:center;gap:7px;padding:14px;border-color:color-mix(in srgb,var(--ns-aix-accent) 36%,transparent)}.ns-aix-audit-probe svg{font-size:38px;color:var(--ns-aix-accent)}.ns-aix-audit-probe b{font-family:var(--ns-tw);font-size:17px;font-weight:400;color:var(--ns-aix-ink)}.ns-aix-audit-probe small{font-size:10.5px;color:var(--ns-aix-faint)}
.ns-aix-audit-metrics{grid-area:m;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.ns-aix-audit-metrics span{padding:9px 10px;display:grid;gap:2px;color:var(--ns-aix-muted);font-size:10.8px}.ns-aix-audit-metrics b{font-family:var(--ns-tw);font-weight:400;font-size:16px;color:var(--ns-aix-accent)}

/* Report */
.ns-aix-audit-report{display:grid;grid-template-columns:minmax(210px,1fr) minmax(180px,.85fr);gap:20px;align-items:center}.ns-aix-audit-radarwrap{position:relative;display:grid;place-items:center;height:235px}.ns-aix-audit .ns-aix-audit-radarchart{width:315px;height:235px;max-width:100%}.ns-aix-audit-rc-grid line,.ns-aix-audit-rc-grid circle{fill:none;stroke:var(--ns-aix-audit-line);stroke-width:1}.ns-aix-audit-rc-rings{transform-box:view-box;transform-origin:120px 120px;animation:nsAixAuditSpin 65s linear infinite}.ns-aix-audit-radarchart text{font-family:var(--ns-body);font-size:10px;fill:var(--ns-aix-muted);stroke:none;opacity:0;transition:opacity .55s ease}.ns-aix-audit-radarchart text.r{text-anchor:start}.ns-aix-audit-radarchart text.l{text-anchor:end}.ns-aix-audit-radarchart text.m{text-anchor:middle}.ns-aix-audit-rc-data{transform-box:view-box;transform-origin:120px 120px;transform:scale(.15);opacity:0;transition:transform 1s cubic-bezier(.16,.72,.18,1),opacity .6s ease}.ns-aix-audit-rc-data polygon{fill:color-mix(in srgb,var(--ns-aix-accent) 22%,transparent);stroke:var(--ns-aix-accent);stroke-width:2;filter:drop-shadow(0 0 7px color-mix(in srgb,var(--ns-aix-accent) 38%,transparent))}.ns-aix-audit-rc-data circle{fill:color-mix(in srgb,var(--ns-aix-accent) 55%,white 30%);stroke:var(--ns-aix-accent);stroke-width:1.5}.ns-aix-audit-scene.ns-on .ns-aix-audit-rc-data{transform:scale(1);opacity:1}.ns-aix-audit-scene.ns-on .ns-aix-audit-radarchart text{opacity:1}
.ns-aix-audit-score{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:67px;height:67px;border-radius:50%;display:grid;place-content:center;text-align:center;border-color:color-mix(in srgb,var(--ns-aix-audit-success) 46%,transparent);background:rgba(5,12,24,.46);box-shadow:0 0 20px color-mix(in srgb,var(--ns-aix-audit-success) 15%,transparent)}.ns-aix-audit-score b{font-family:var(--ns-tw);font-size:23px;font-weight:400;color:var(--ns-aix-audit-success);line-height:1}.ns-aix-audit-score span{font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ns-aix-faint)}
.ns-aix-audit-recs{padding:12px 14px}.ns-aix-audit-recs h4{font-size:17px!important;margin:0 0 9px!important;color:var(--ns-aix-accent)!important}.ns-aix-audit-recs span{display:block;margin-top:7px;padding:8px 9px;border:1px solid var(--ns-aix-audit-line);font-size:11.4px;color:var(--ns-aix-muted)}

/* Optional review */
.ns-aix-audit-review{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:100%;padding-top:12px}.ns-aix-audit-review-track{position:absolute;left:10%;right:10%;top:39px;height:1px;background:linear-gradient(90deg,var(--ns-aix-accent),var(--ns-aix-secondary));opacity:.55}.ns-aix-audit-review-step{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;padding:14px 12px 15px}.ns-aix-audit-review-node{width:51px;height:51px;border-radius:50%;display:grid;place-items:center;font-size:22px;color:#07132c;background:linear-gradient(135deg,color-mix(in srgb,var(--ns-aix-accent) 60%,white 28%),var(--ns-aix-accent));box-shadow:0 0 18px color-mix(in srgb,var(--ns-aix-accent) 26%,transparent);position:relative;z-index:1}.ns-aix-audit-review-node svg{stroke:#07132c;stroke-width:1.9}.ns-aix-audit-review-step em{font-style:normal;font-family:var(--ns-tw);font-size:11px;letter-spacing:.1em;color:var(--ns-aix-accent)}.ns-aix-audit-review-step b{font-family:var(--ns-tw);font-weight:400;font-size:15px;color:var(--ns-aix-ink)}.ns-aix-audit-review-step p{margin:0!important;font-size:10.8px;line-height:1.42;color:var(--ns-aix-muted)}

/* All currently visible Audit copy uses the same two typography tones as
 * the established explainers: ink for labels/headings and one shared body
 * tone for supporting copy. Semantic blue/green/amber remains unchanged. */
.ns-aix-audit-scene.ns-on .ns-aix-audit-card strong,
.ns-aix-audit-scene.ns-on .ns-aix-audit-hub-head,
.ns-aix-audit-scene.ns-on .ns-aix-audit-target b,
.ns-aix-audit-scene.ns-on .ns-aix-audit-source-head,
.ns-aix-audit-scene.ns-on .ns-aix-audit-msg,
.ns-aix-audit-scene.ns-on .ns-aix-audit-probe b,
.ns-aix-audit-scene.ns-on .ns-aix-audit-review-step b{color:var(--ns-aix-ink)}
.ns-aix-audit-scene.ns-on .ns-aix-audit-chip span,
.ns-aix-audit-scene.ns-on .ns-aix-audit-source small,
.ns-aix-audit-scene.ns-on .ns-aix-audit-source li,
.ns-aix-audit-scene.ns-on .ns-aix-audit-merge,
.ns-aix-audit-scene.ns-on .ns-aix-audit-probe small,
.ns-aix-audit-scene.ns-on .ns-aix-audit-metrics span,
.ns-aix-audit-scene.ns-on .ns-aix-audit-score span,
.ns-aix-audit-scene.ns-on .ns-aix-audit-recs span,
.ns-aix-audit-scene.ns-on .ns-aix-audit-review-step p{color:var(--ns-aix-audit-copy)}
.ns-aix-audit-scene.ns-on .ns-aix-audit-radarchart text{fill:var(--ns-aix-audit-copy)}

/* Explanation panel */
.ns-aix-audit-detail{position:relative;min-width:0;padding-left:24px}.ns-aix-audit-detail-rail{position:absolute;left:0;top:2px;bottom:4px;width:2px;background:linear-gradient(180deg,var(--ns-aix-accent),var(--ns-aix-secondary));box-shadow:0 0 14px color-mix(in srgb,var(--ns-aix-accent) 35%,transparent)}.ns-aix-audit-detail-rail::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);width:8px;height:8px;background:var(--ns-aix-accent);box-shadow:0 0 10px color-mix(in srgb,var(--ns-aix-accent) 45%,transparent)}
.ns-aix-audit-detail-viewport{position:relative;display:grid;overflow:hidden}.ns-aix-audit-panel{grid-area:1/1;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease,visibility 0s linear .55s;padding:4px 0 12px}.ns-aix-audit-panel.ns-on{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition:opacity .65s ease,transform .65s ease,visibility 0s}
.ns-aix-audit-panel h4{font-size:clamp(20px,1.7vw,27px);line-height:1.16!important;color:var(--ns-aix-ink)!important;margin:0 0 11px!important}.ns-aix-audit-panel h4 span{color:var(--ns-aix-accent);margin-right:9px;text-shadow:0 0 12px color-mix(in srgb,var(--ns-aix-accent) 35%,transparent)}.ns-aix-audit-panel p{margin:0 0 14px!important;font-family:var(--ns-body);font-size:14.5px;line-height:1.62;color:var(--ns-aix-audit-copy)}.ns-aix-audit-panel ul{list-style:none!important;margin:0!important;padding:0!important;display:grid;gap:8px}.ns-aix-audit-panel li{position:relative;padding-left:18px;margin:0!important;font-size:12.8px;line-height:1.43;color:var(--ns-aix-audit-copy)}.ns-aix-audit-panel li::before{content:"";position:absolute;left:0;top:.48em;width:7px;height:7px;border:1px solid color-mix(in srgb,var(--ns-aix-accent) 64%,transparent)}

/* Constrained desktop hosts still have enough width for all six stages.
 * Force the rail to the host width (some themes give lists an intrinsic
 * max-content width), compact the labels slightly, and simplify Configure
 * cards before allowing any horizontal scrolling. */
@container (max-width:1080px){
  .ns-aix-audit-steps{grid-template-columns:repeat(6,minmax(0,1fr));width:100%!important;max-width:100%!important;min-width:0!important;gap:4px}
  .ns-aix-audit-step{padding-inline:3px}
  .ns-aix-audit-step-label{font-size:12.5px;letter-spacing:.01em}
  .ns-aix-audit-body{grid-template-columns:minmax(0,1.15fr) minmax(285px,.85fr);gap:24px}
  .ns-aix-audit-config{grid-template-columns:minmax(0,.86fr) minmax(176px,1.08fr) minmax(0,.86fr);gap:9px}
  .ns-aix-audit-config .ns-aix-audit-card{grid-template-columns:25px minmax(0,1fr) 14px;gap:5px;padding-inline:7px}
  .ns-aix-audit-config .ns-aix-audit-card-icon{display:grid;width:25px;height:25px;font-size:16px}
  .ns-aix-audit-config .ns-aix-audit-card-check{font-size:14px}
  .ns-aix-audit-hub::before,.ns-aix-audit-hub::after{display:none}
}
/* The side-card icons are removed only when the complete three-column
 * Configure scene is genuinely constrained. Wider desktop/tablet hosts keep
 * the original visual cues. */
@container (max-width:1000px){
  .ns-aix-audit-config .ns-aix-audit-card{grid-template-columns:minmax(0,1fr) 16px;gap:6px;padding-inline:8px}
  .ns-aix-audit-config .ns-aix-audit-card-icon{display:none}
}
@container (max-width:760px){
  .ns-aix-audit-body{grid-template-columns:1fr;gap:18px}
  .ns-aix-audit-stage{height:390px}
  .ns-aix-audit-detail{padding-left:20px}
}
@container (max-width:620px){
  .ns-aix-audit-navwrap{overflow-x:auto;overflow-y:hidden}
  .ns-aix-audit-steps{grid-template-columns:repeat(6,112px);width:672px!important;min-width:672px!important;max-width:none!important;gap:0}
  .ns-aix-audit-step-label{font-size:12px}
}
@container (max-width:560px){
  .ns-aix-audit-stage{height:430px}
  .ns-aix-audit-config{grid-template-columns:1fr 1fr;gap:9px}.ns-aix-audit-hub{grid-column:1/-1;grid-row:1;height:155px}.ns-aix-audit-config-side{gap:7px}.ns-aix-audit-card{min-height:42px}.ns-aix-audit-chip{display:none}
  .ns-aix-audit-brief{grid-template-columns:1fr 1fr;gap:11px}.ns-aix-audit-target{height:170px}
  .ns-aix-audit-ucd{gap:9px}.ns-aix-audit-source{padding:10px}.ns-aix-audit-source-head{font-size:13px}.ns-aix-audit-source li{font-size:10.5px}.ns-aix-audit-merge{white-space:normal;text-align:center}
  .ns-aix-audit-audit{grid-template-columns:1fr .72fr;gap:9px}.ns-aix-audit-msg{font-size:10.5px}.ns-aix-audit-metrics{grid-template-columns:repeat(2,1fr)}
  .ns-aix-audit-report{grid-template-columns:1fr .72fr;gap:8px}.ns-aix-audit .ns-aix-audit-radarchart{width:270px}.ns-aix-audit-recs{padding:9px}.ns-aix-audit-recs span{font-size:10.4px}
  .ns-aix-audit-review{gap:7px}.ns-aix-audit-review-step{padding:11px 7px}.ns-aix-audit-review-step p{font-size:9.8px}
}
@media (max-width:750px){
  .ns-aix-audit-body{grid-template-columns:1fr;gap:18px}.ns-aix-audit-stage{height:430px}.ns-aix-audit-detail{padding-left:20px}
}
@media (max-width:480px){
  .ns-aix-audit-stage{height:470px}
  .ns-aix-audit-ucd{grid-template-columns:1fr}.ns-aix-audit-source{padding:10px 12px}.ns-aix-audit-merge{font-size:10.5px}
  .ns-aix-audit-audit{grid-template-columns:1fr;grid-template-areas:"q" "probe" "m"}.ns-aix-audit-probe{min-height:110px}.ns-aix-audit-msgs{gap:6px}
  .ns-aix-audit-report{grid-template-columns:1fr}.ns-aix-audit-radarwrap{height:250px}.ns-aix-audit-recs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ns-aix-audit-recs h4{grid-column:1/-1}.ns-aix-audit-recs span{margin-top:0}
  .ns-aix-audit-review{grid-template-columns:1fr;gap:8px;padding-top:0}.ns-aix-audit-review-track{display:none}.ns-aix-audit-review-step{display:grid;grid-template-columns:47px auto 1fr;grid-template-areas:"node num title" "node body body";text-align:left;align-items:center;column-gap:9px}.ns-aix-audit-review-node{grid-area:node;width:44px;height:44px}.ns-aix-audit-review-step em{grid-area:num}.ns-aix-audit-review-step b{grid-area:title}.ns-aix-audit-review-step p{grid-area:body}
}
@media (prefers-reduced-motion:reduce){.ns-aix-audit *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
