/* Aerial artwork and path-driven, nozzle-registered demonstrations. */
.equipment-viewer{margin-bottom:28px;border:1px solid var(--hairline);border-radius:14px;overflow:hidden;background:var(--asph)}
.equipment-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:#111418}
.equipment-toolbar .kicker{margin:0}
.equipment-switch{display:flex;gap:6px;flex-wrap:wrap}
.equipment-switch[hidden]{display:none}
.equipment-switch button,.spray-controls button{font:600 14px 'Barlow',sans-serif;border:1px solid #62666b;color:var(--chalk);background:#202429;border-radius:7px;min-height:44px;padding:9px 14px;cursor:pointer}
.equipment-switch button[aria-pressed="true"]{background:var(--amber);color:#111418;border-color:var(--amber)}
.equipment-switch button:focus-visible,.spray-controls button:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.equipment-viewer figure{margin:0;display:grid;grid-template-columns:1.5fr 1fr}
.equipment-viewer figure[hidden]{display:none}
.equipment-viewer img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.equipment-viewer figcaption{align-self:center;padding:clamp(22px,4vw,48px)}
.equipment-viewer figcaption h3{font-size:clamp(28px,3.5vw,42px);line-height:1.05;margin:12px 0 18px}
.equipment-viewer figcaption p{color:var(--muted)}
.equipment-viewer .render-note{font-size:12px;margin-top:24px;color:var(--muted)}
.spray-controls{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#15181c;border-top:1px solid var(--hairline)}
.spray-status{margin-left:auto;font-size:12px;color:var(--muted)}
.spray-controls button:disabled{opacity:.45;cursor:default}
.lot-frame .chip{position:static;display:flex;width:fit-content;margin:0 16px 14px;background:#15181c}
.panel .stage{display:flex;flex-direction:column;justify-content:center;min-width:0}
.panel .spray-controls{margin:12px -4px -4px;border:0;background:transparent;flex-wrap:wrap}
.line{fill:none;stroke-linecap:butt;stroke-dasharray:1 1;stroke-dashoffset:0}
.machine{opacity:0;pointer-events:none}
@media(max-width:700px){
 .equipment-toolbar{align-items:flex-start;flex-direction:column;padding:16px}
 .equipment-viewer figure{grid-template-columns:1fr}
 .equipment-viewer figcaption{padding:22px}
 .equipment-viewer figcaption h3{margin-top:8px}
 .spray-status{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
 .line{stroke-dashoffset:0!important}
 .machine,.spray-controls{display:none!important}
}

/* Material scenes share a stable frame, so controls never cover the markings. */
.marking-scene{background:#37393a;isolation:isolate}
.panel .stage{padding:0;justify-content:flex-start;background:#343637}
.panel .stage .marking-scene{overflow:hidden;flex:1 0 auto}
.panel .spray-controls{margin:0;padding:14px 18px;background:#15181c;border-top:1px solid var(--hairline);flex-wrap:wrap}
.spray-controls{min-height:74px}
.spray-controls .spray-status{font-variant-numeric:tabular-nums;letter-spacing:.01em}
.lot-frame .chip{margin:12px 16px 16px;line-height:1.4;font-size:12px}
.machine{filter:drop-shadow(2px 3px 2px rgb(0 0 0 / .22))}
.nozzle-fan{opacity:0}
.machine.is-spraying .nozzle-fan{opacity:.13}
.stencil-frame{opacity:0;pointer-events:none}
.panel{scroll-margin-top:100px}
.equipment-viewer .render-note{margin-bottom:0}
@media(max-width:700px){
 .lot-frame .chip{font-size:11px;letter-spacing:0;max-width:calc(100% - 32px)}
 .spray-controls{gap:8px;padding:12px}
 .panel .spray-controls{padding:12px}
 .spray-controls .spray-status{flex:1;text-align:right;min-width:90px;max-width:170px;line-height:1.3}
}
@media(prefers-reduced-motion:reduce){.stencil-frame{display:none!important}}
