.pr{--bg:#f5f7f6;--surface:#fff;--surface-2:#f4f7f5;--ink:#142019;--muted:#5f6d66;--line:#e4ebe7;--cell:#edf2ef;--dev:#e8912d;--dev-rgb:232, 145, 45;--alarm:#ee5450;--warn:#f59e0b;--ok:#16a34a;--select:#0b2b22;--brand:#06ad73;--brand-dark:#0d5c3b;--brand-soft:#e7f6ee;--insight:#12895a;--insight-soft:#53d79b;--radius-s:8px;--radius-m:14px;--shadow:0 1px 2px #1018280a, 0 2px 8px #1018280d;--shadow-hover:0 8px 28px #0d4f331f;--font:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-cond:var(--font);--font-head:Manrope, Inter, -apple-system, sans-serif;background:var(--bg);min-height:100%;color:var(--ink);font:400 14px/1.5 var(--font);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}.pr *,.pr :before,.pr :after{box-sizing:border-box}:where(.pr) :where(button,select,input,textarea){font:inherit;color:inherit}.pr :focus-visible{outline:2px solid var(--select);outline-offset:2px}:where(.pr) :where(h1,h2,h3,p){margin:0}.pr-diagram{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);box-shadow:var(--shadow);position:relative;overflow:hidden}.pr-diagram svg{width:100%;height:auto;max-height:max(480px,100vh - 250px);margin:0 auto;display:block}.pr-stream{fill:none;stroke:#8a959c;stroke-width:2.2px;stroke-linejoin:round}.pr-stream.utility{stroke:#b0b5bb;stroke-width:1.8px}.pr-shape-detail{fill:none;stroke:#8d939a;stroke-width:1.2px}.pr-eq-label{font:400 12px var(--font);fill:var(--muted);pointer-events:none}.pr-eq-label.small{font-size:10.5px}.pr-comp{cursor:pointer;outline:none}.pr-comp .pr-box{fill:#0000;stroke:#8d939a;stroke-width:1.6px;transition:fill .25s,stroke .25s}.pr-comp .pr-box.shade-cyl{fill:url(#pr-shade-cyl)}.pr-comp .pr-box.shade-drum{fill:url(#pr-shade-drum)}.pr-comp .pr-box.shade-flat{fill:url(#pr-shade-flat)}.pr-comp .pr-box.shade-round{fill:url(#pr-shade-round)}.pr-comp .pr-box.shade-light{fill:#f7f8f9}.pr-comp:hover .pr-box,.pr-comp:focus-visible .pr-box{stroke:var(--ink);stroke-width:2.5px}.pr-comp.dev .pr-box{fill:rgba(var(--dev-rgb), var(--sev));stroke:var(--dev);stroke-width:3px}.pr-comp.nuis .pr-box{stroke:var(--alarm);stroke-opacity:.55;stroke-dasharray:7 6;stroke-width:2px}.pr-comp.nuis.dev .pr-box{stroke:var(--dev);stroke-opacity:1;stroke-dasharray:none;stroke-width:3px}.pr-comp.alarm .pr-box{fill:color-mix(in srgb, var(--alarm) 62%, transparent);stroke:var(--alarm);stroke-width:4px;stroke-dasharray:none;stroke-opacity:1;animation:1.2s ease-in-out infinite pr-pulse}.pr-comp.selected .pr-box{stroke:var(--select);stroke-width:4px;stroke-dasharray:none;stroke-opacity:1}@keyframes pr-pulse{50%{stroke-opacity:.35}}.pr-pid-image{filter:grayscale()contrast(.9)opacity(.55)}.pr-box.pid{fill:#0000;stroke:#0000;stroke-width:2px;vector-effect:non-scaling-stroke}.pr-comp.nosensor{cursor:default}.pr-comp.nosensor .pr-box.pid{stroke:#9aa0a7;stroke-dasharray:5 4;stroke-width:1.2px}.pr-comp:hover .pr-box.pid{stroke:var(--ink);stroke-width:2px}.pr-comp.nosensor:hover .pr-box.pid{stroke:#9aa0a7;stroke-width:1.2px}.pr-comp.dev .pr-box.pid{stroke-width:2.5px}.pr-comp.alarm .pr-box.pid,.pr-comp.selected .pr-box.pid{stroke-width:3.5px}.pr-pdf iframe{border:0;width:100%;height:max(520px,100vh - 250px);display:block}.pr-ref rect{fill:#18a86b14;stroke:var(--insight);stroke-width:1.5px;vector-effect:non-scaling-stroke}.pr-ref.nosensor rect{fill:none;stroke-dasharray:4 3;stroke:#6b7280}.pr-ref text{font-family:var(--font);fill:var(--insight);paint-order:stroke;stroke:#fff;stroke-linejoin:round;font-weight:600}.pr-ref.nosensor text{fill:#6b7280}.pr-sw.nosensor{background:repeating-linear-gradient(45deg,#b4b9bf 0 2px,#0000 2px 5px);border:1px dashed #9aa0a7}.pr-badge{font:700 13px var(--font-cond);fill:var(--ink);paint-order:stroke;stroke:var(--surface);stroke-width:4px;stroke-linejoin:round;pointer-events:none}.pr-badge .chg{fill:var(--muted);font-weight:600}.pr-badge-card{fill:#fff;stroke:#e1e8e4;stroke-width:1px;filter:drop-shadow(0 1px 1.5px #1018280f);pointer-events:none}.pr-badge.out{fill:#d4501f}.pr-comp.alarm .pr-badge,.pr-badge.alarm{fill:var(--alarm)}.pr-marker circle{fill:var(--ink);stroke:var(--surface);stroke-width:2.5px}.pr-marker text{font:700 11px var(--font-cond);fill:var(--surface);text-anchor:middle}.pr-marker.root circle{fill:var(--insight)}.pr-marker.unmeasured circle{fill:var(--surface);stroke:var(--insight);stroke-dasharray:3 2;stroke-width:2px}.pr-marker.unmeasured text{fill:var(--insight)}
