.lidar-points{--lp-ink:#163f54;--lp-line:#d9e3e8;overflow:hidden;border:1px solid var(--lp-line);border-radius:8px;background:#f5f9fa;color:var(--lp-ink);font:14px/1.5 Avenir,"Avenir Next",Arial,sans-serif}
.lidar-points-stage{position:relative;width:100%;height:clamp(300px,35vw,440px);min-height:300px;overflow:hidden;background:#08131b}
.lidar-points-stage canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:pan-y;outline-offset:-5px}
.lidar-points-stage canvas.is-dragging{cursor:grabbing}
.lidar-points-label{position:absolute;top:18px;left:20px;right:20px;display:flex;justify-content:space-between;gap:20px;pointer-events:none;color:#d0e5ec;font-size:14px;line-height:1.35}
.lidar-points-label strong{font-weight:500}
.lidar-points-label>span{opacity:.75}
.lidar-points-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 18px;border-top:1px solid var(--lp-line)}
.lidar-points-actions{display:flex;gap:8px;flex-shrink:0}
.lidar-points-actions button{font:inherit;font-size:14px;line-height:1.3;min-height:42px;padding:8px 13px;border:1px solid #b8cbd4;background:#fff;color:var(--lp-ink);border-radius:4px;cursor:pointer}
.lidar-points-actions button:hover{background:#e8f1f4}
.lidar-points-actions button:focus-visible,.lidar-points-stage canvas:focus-visible{outline:3px solid #64a8bd}
.lidar-points [data-lidar-status]{font-size:14px;line-height:1.45;margin:0;max-width:440px;color:#587383}
.lidar-points-note{font-size:14px;line-height:1.55;padding:0 18px 15px;margin:0;color:#627b88}
.lidar-points:not(.is-loaded) [data-lidar-count]{visibility:hidden}
.lidar-points.has-error .lidar-points-stage{height:180px;min-height:180px}
.lidar-points.has-error .lidar-points-actions{display:none}
@media(max-width:650px){.lidar-points-stage{height:320px;min-height:320px}.lidar-points-label{top:15px;left:15px;right:15px;gap:10px}.lidar-points-label>span{max-width:115px;text-align:right}.lidar-points-toolbar{padding:13px 14px;align-items:start;flex-direction:column;gap:12px}.lidar-points-actions{width:100%}.lidar-points-actions button{flex:1;padding:10px}.lidar-points-note{padding:0 14px 15px}.lidar-points [data-lidar-status]{max-width:100%}}
@media(prefers-reduced-motion:reduce){.lidar-points *{scroll-behavior:auto}}
