.npc-scanner-shell{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,1fr);gap:14px}
.npc-monitor{min-width:0;border:1px solid var(--line);border-radius:9px;padding:15px;background:color-mix(in srgb,var(--bg) 85%,var(--signal))}
.npc-monitor h3{margin:0 0 4px;color:var(--ink);overflow-wrap:anywhere}
.npc-wave{display:block;width:100%;height:100px;margin:8px 0;background:var(--bg);border:1px solid var(--line);border-radius:6px}
.npc-wave path[data-ecg]{stroke:var(--signal);fill:none;stroke-width:1.3;vector-effect:non-scaling-stroke}
.npc-wave .npc-grid{stroke:var(--line);fill:none;opacity:.8}
.npc-vital-numbers{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px}
.npc-reading{border:1px solid var(--line);border-radius:5px;padding:8px}
.npc-reading strong{display:block;margin-top:5px;font:700 19px monospace;color:var(--signal)}
.npc-scan-form{display:grid;gap:8px;margin:0}
.npc-scan-form label{display:grid;gap:4px}
.npc-scan-form input,.npc-scan-form select{width:100%}
.npc-form-vitals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.npc-scan-form .bar{margin:2px 0 0}
.walk-layer{position:absolute;inset:0;pointer-events:none;border-radius:inherit;background-repeat:no-repeat}
@media(max-width:700px){.npc-scanner-shell{grid-template-columns:minmax(0,1fr)}}
