.factory-navigator-dialog{width:min(1120px,calc(100vw - 28px));max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px);padding:0;background:#142b36;color:#e8eee8;border:1px solid #547c80;border-radius:16px;overflow:auto;box-shadow:0 24px 90px #0008}
.factory-navigator-dialog::backdrop{background:#06121bd1;backdrop-filter:blur(4px)}
.factory-navigator-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid #375663}
.factory-navigator-dialog h2{font-size:25px;margin:0;color:#e6cf9e}.factory-navigator-dialog h3{font-size:14px;margin:0 0 8px}.factory-navigator-dialog p{font-size:12px;line-height:1.55;overflow-wrap:anywhere}
#factory-navigator-count{margin:5px 0 0;color:#b5cbd0}
.factory-navigator-dialog button,.factory-navigator-dialog input,.factory-navigator-dialog select{min-height:44px;font:inherit;font-size:13px;max-width:100%;border:1px solid #55777e;border-radius:7px;background:#1a3741;color:#e8eee8;padding:9px 11px}
.factory-navigator-dialog button{cursor:pointer;white-space:normal;overflow-wrap:anywhere}.factory-navigator-dialog button:hover{background:#27505a;border-color:#83c9c0}.factory-navigator-dialog :focus-visible{outline:3px solid #a6e9dc;outline-offset:3px}
.navigator-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;padding:18px 20px;align-items:start}.navigator-search-panel,.navigator-map-panel{min-width:0}
.navigator-filters{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:10px;margin-bottom:12px}.navigator-filters label{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:12px;color:#bed1d1}.navigator-filters input,.navigator-filters select{width:100%;box-sizing:border-box}
#factory-navigator-results{max-height:min(550px,calc(100dvh - 230px));overflow:auto;overscroll-behavior:contain;padding:3px;scrollbar-width:thin;scrollbar-color:#68888d #132832}
.navigator-result{padding:13px 12px;border:1px solid #36515c;border-radius:9px;background:#112631;margin-bottom:9px;display:flex;flex-direction:column;gap:9px}.navigator-result h3{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:0;font-size:14px;line-height:1.5}.navigator-result h3 small{font-size:11px;font-weight:400;color:#a9c3c8}.navigator-result p{margin:3px 0;color:#a9c3c8}.navigator-result .navigator-reason{color:#d3e0dd}.navigator-condition{font-family:system-ui,sans-serif;display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;flex:none;font-size:14px;font-weight:800;border:1px solid currentColor;border-radius:50%}.navigator-critical{color:#ff766c}.navigator-attention{color:#ffb35d}.navigator-healthy{color:#83d9ab}.navigator-neutral{color:#95a9b1}
.navigator-result-actions{display:flex;flex-wrap:wrap;gap:8px}.navigator-result-actions button{flex:1;min-width:92px}.navigator-empty{padding:20px 10px;color:#c0d2d3}
#factory-navigator-map{display:block;width:100%;height:260px;border:1px solid #486570;border-radius:9px;background:#10242e;touch-action:manipulation}.navigator-map-node{cursor:pointer;transition:opacity .12s}.navigator-map-node rect{stroke:#0c1e27;stroke-width:2;vector-effect:non-scaling-stroke}.navigator-map-node:hover rect{stroke:#fff;stroke-width:3}.navigator-map-node text{pointer-events:none}.navigator-map-muted{opacity:.2}.navigator-district-outline{fill:#6fa6b60c;stroke:#81abb9;stroke-dasharray:5 4;stroke-width:1;vector-effect:non-scaling-stroke;pointer-events:none}[data-navigator-camera]{fill:#ffffff07;stroke:#f4edce;stroke-width:2;stroke-dasharray:7 4;vector-effect:non-scaling-stroke;pointer-events:none}[data-navigator-background]{cursor:crosshair}
.navigator-map-hint,.navigator-camera-hint{color:#b7ced0;margin:10px 0}.navigator-legend{color:#e0d6b8;border-bottom:1px solid #36535e;padding-bottom:12px}.navigator-camera-hint{padding-top:8px}
#factory-navigator-districts>div{display:flex;flex-wrap:wrap;gap:7px}#factory-navigator-districts button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;flex:1;min-width:150px}#factory-navigator-districts button span{font-size:11px;color:#c2d2d2}#factory-navigator-districts button strong{font-size:13px;overflow-wrap:anywhere}
@media(max-width:700px){.factory-navigator-dialog>header{padding:13px 12px}.factory-navigator-dialog h2{font-size:21px}.navigator-layout{grid-template-columns:minmax(0,1fr);padding:12px;gap:18px}.navigator-filters{grid-template-columns:minmax(0,1fr)}#factory-navigator-results{max-height:330px}#factory-navigator-map{height:210px}.navigator-result{padding:11px 9px}}
@media(prefers-reduced-motion:reduce){.navigator-map-node{transition:none}}
