.planner-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 17px;padding:22px 26px;background:linear-gradient(115deg,var(--rx-emphasis),var(--rx-emphasis) 58%,var(--rx-emphasis));border-radius:16px;color:var(--rx-on-emphasis);box-shadow:0 14px 27px rgba(var(--rx-shadow-color-rgb),0.188)}
.planner-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(var(--rx-surface-rgb),0.071) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--rx-surface-rgb),0.071) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,transparent,#000)}
.planner-hero>div{position:relative;z-index:1}.planner-hero span{font-size:calc((9px) * var(--ui-font-scale,1));font-weight:900;letter-spacing:2px;color:var(--rx-muted)}.planner-hero h2{font-size:calc((21px) * var(--ui-font-scale,1));margin:6px 0 5px;line-height:1.15}.planner-hero p{font-size:calc((11px) * var(--ui-font-scale,1));color:var(--rx-muted);margin:0;max-width:560px;line-height:1.5}
.planner-hero-mark{font-size:calc((67px) * var(--ui-font-scale,1));line-height:.8;opacity:.72;text-align:center;min-width:92px}.planner-hero-mark small{display:block;font-size:calc((9px) * var(--ui-font-scale,1));letter-spacing:1px;margin-top:10px}
.planner-catalog{background:var(--rx-surface);border:1px solid var(--rx-line);border-radius:15px;padding:17px;margin:16px 0;box-shadow:0 4px 18px rgba(var(--rx-shadow-color-rgb),0.047)}
.planner-catalog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.planner-catalog-head h2{font-size:calc((16px) * var(--ui-font-scale,1));color:var(--rx-accent);margin:0}.planner-catalog-head p{font-size:calc((11px) * var(--ui-font-scale,1));color:var(--rx-muted);margin:4px 0 0}.planner-catalog-count{font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800;background:var(--rx-soft);color:var(--rx-accent);padding:7px 9px;border-radius:30px;white-space:nowrap}
.planner-template-strip{display:flex;gap:9px;overflow-x:auto;padding:15px 1px 11px;scroll-snap-type:x mandatory}
.planner-template{display:flex;align-items:flex-start;gap:10px;position:relative;flex:0 0 231px;min-height:109px;border:1px solid var(--rx-line);border-radius:11px;background:linear-gradient(160deg,var(--rx-surface),var(--rx-surface));text-align:left;padding:12px;color:var(--rx-text);scroll-snap-align:start}
.planner-template:hover{border-color:var(--rx-line);box-shadow:0 5px 13px rgba(var(--rx-shadow-color-rgb),0.082)}.planner-template.active{border:2px solid var(--rx-accent);background:var(--rx-surface);box-shadow:0 0 0 3px var(--rx-shadow-color)}
.template-icon{width:33px;height:33px;flex:none;display:grid;place-items:center;border-radius:8px;font-size:calc((23px) * var(--ui-font-scale,1));background:var(--rx-surface);color:var(--rx-accent)}.template-icon.orange{background:var(--rx-soft);color:var(--rx-accent)}.template-icon.teal{background:var(--rx-soft);color:var(--rx-accent)}.template-icon.purple{background:var(--rx-surface);color:var(--rx-muted)}.template-icon.slate{background:var(--rx-soft);color:var(--rx-muted)}
.template-copy{display:grid;gap:3px;min-width:0}.template-copy strong{font-size:calc((11px) * var(--ui-font-scale,1));color:var(--rx-accent)}.template-copy small{font-size:calc((9px) * var(--ui-font-scale,1));color:var(--rx-muted);font-weight:800}.template-copy em{font-style:normal;font-size:calc((9px) * var(--ui-font-scale,1));color:var(--rx-muted);line-height:1.35}.template-measure{position:absolute;bottom:8px;right:9px;font-size:calc((9px) * var(--ui-font-scale,1));font-weight:900;color:var(--rx-text)}
.planner-catalog-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:5px;color:var(--rx-muted);font-size:calc((10px) * var(--ui-font-scale,1))}.planner-catalog-foot .button{flex:none}
.planner-viewbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding:9px;background:var(--rx-soft);border:1px solid var(--rx-line);border-radius:11px}
.planner-view-toggle{display:flex;gap:5px}.planner-view-toggle button{border:0;border-radius:7px;background:transparent;color:var(--rx-muted);padding:8px 13px;font-size:calc((11px) * var(--ui-font-scale,1));font-weight:900}.planner-view-toggle button.active{background:var(--rx-surface);color:var(--rx-accent);box-shadow:0 2px 6px rgba(var(--rx-shadow-color-rgb),0.102)}
.planner-view-actions{display:flex;align-items:center;gap:10px}.planner-view-actions label{font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800;color:var(--rx-muted)}.planner-view-actions select{margin-left:5px;border:1px solid var(--rx-line);background:var(--rx-surface);color:var(--rx-text);border-radius:6px;padding:6px;font-size:calc((10px) * var(--ui-font-scale,1))}
.planner-zoom{display:flex;align-items:center;gap:3px;background:var(--rx-surface);border:1px solid var(--rx-line);border-radius:7px;padding:2px}.planner-zoom button{height:28px;min-width:28px;border:0;background:transparent;color:var(--rx-accent);font-size:calc((17px) * var(--ui-font-scale,1));font-weight:800}.planner-zoom button:hover{background:var(--rx-surface)}.planner-zoom strong{font-size:calc((10px) * var(--ui-font-scale,1));min-width:38px;text-align:center;color:var(--rx-text)}
.planner-workspace{grid-template-columns:minmax(0,1.7fr) minmax(330px,.9fr)}.planner-workspace .map-stage-wrap{padding:17px;background:linear-gradient(var(--rx-surface),var(--rx-surface))}
.map-stage-scroll{width:100%;overflow:auto;border-radius:6px}.planner-workspace .map-stage{max-height:none;background-color:var(--rx-surface);background-image:linear-gradient(rgba(var(--rx-soft-rgb),0.502) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--rx-soft-rgb),0.502) 1px,transparent 1px);background-size:5% 5%;border-color:var(--rx-line);box-shadow:inset 0 0 0 5px var(--rx-shadow-color)}
.plan-north{position:absolute;right:9px;top:8px;color:var(--rx-muted);font-size:calc((11px) * var(--ui-font-scale,1));font-weight:900;pointer-events:none;background:rgba(var(--rx-surface-rgb),0.859);border-radius:4px;padding:4px 6px}
.map-rack-slats{position:absolute;inset:2px;opacity:.28;pointer-events:none}.map-footprint-hu{position:absolute;border:1px solid var(--rx-accent);border-radius:2px;background:rgba(var(--rx-surface-muted-rgb),0.678);pointer-events:none}
.map-area .map-area-code,.map-area .map-area-info,.map-area .map-progress{position:relative;z-index:1}.map-area.rack{background:var(--rx-soft);border-color:var(--rx-accent)}.map-area.rack.partial{background:var(--rx-warning-soft);border-color:var(--rx-warning)}.map-area.rack.full{background:var(--rx-soft);border-color:var(--rx-line)}
.map-area.floor{background:var(--rx-soft);border-color:var(--rx-line)}.map-area.floor.partial{background:var(--rx-warning-soft);border-color:var(--rx-warning)}.map-area.floor.full{background:var(--rx-soft);border-color:var(--rx-line)}
.map-orientation{position:absolute;top:2px;right:4px;font-size:calc((8px) * var(--ui-font-scale,1));color:var(--rx-accent);opacity:.8;pointer-events:none}.map-area.rack .map-area-info{margin-top:2px}
.rack-face-scroll{overflow:auto;border-radius:5px}.rack-face{min-width:0;width:100%}.face-slot{min-width:0;overflow:hidden}.face-slot.busy{background:var(--rx-soft)}.face-slot.free{background:var(--rx-success-soft)}
.planner-spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.planner-spec-grid>div{background:var(--rx-surface);border:1px solid var(--rx-line);border-radius:7px;padding:8px;min-width:0}.planner-spec-grid small,.planner-spec-grid strong{display:block}.planner-spec-grid small{font-size:calc((8px) * var(--ui-font-scale,1));color:var(--rx-muted)}.planner-spec-grid strong{font-size:calc((12px) * var(--ui-font-scale,1));color:var(--rx-text);margin-top:3px}.planner-spec-note{font-size:calc((10px) * var(--ui-font-scale,1));color:var(--rx-muted);line-height:1.4;margin-bottom:10px}
.planner-inspector-actions{margin-top:14px;border-top:1px solid var(--rx-line);padding-top:13px}.rotation-control{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:11px}.rotation-control span{font-size:calc((10px) * var(--ui-font-scale,1));font-weight:900;color:var(--rx-muted);margin-right:auto}.planner-inspector-actions .form-actions{display:flex;flex-wrap:wrap}.planner-inspector-actions .button{white-space:normal;text-align:center}
.iso-wrap{overflow:auto;background:var(--rx-surface);border:1px solid var(--rx-line);border-radius:8px}.iso-scene{display:block;width:100%;min-width:660px;max-height:650px}.iso-object{transition:filter .15s}.iso-object:hover,.iso-object.selected{filter:drop-shadow(0 0 7px #ffca69)}.iso-object:focus{outline:none;filter:drop-shadow(0 0 8px #ffb956)}
.iso-caption{display:flex;gap:10px;align-items:center;background:var(--rx-surface);border-top:1px solid var(--rx-line);padding:9px 13px}.iso-caption strong,.iso-caption small{display:block}.iso-caption strong{font-size:calc((11px) * var(--ui-font-scale,1));color:var(--rx-text)}.iso-caption small{font-size:calc((9px) * var(--ui-font-scale,1));color:var(--rx-muted);margin-top:2px}.iso-orbit{color:var(--rx-accent);font-size:calc((24px) * var(--ui-font-scale,1))}
.planner-modal-intro{display:flex;align-items:center;gap:12px;background:var(--rx-surface);padding:12px;border:1px solid var(--rx-line);border-radius:10px;margin:0 0 16px}.planner-modal-intro b{display:block;color:var(--rx-accent);font-size:calc((12px) * var(--ui-font-scale,1))}.planner-modal-intro small{display:block;color:var(--rx-muted);font-size:calc((10px) * var(--ui-font-scale,1));margin-top:3px}
.planner-form-section{margin:18px 0 0;padding:15px;background:var(--rx-surface);border:1px solid var(--rx-line);border-radius:10px}.planner-form-section h3{font-size:calc((12px) * var(--ui-font-scale,1));color:var(--rx-text);margin:0 0 10px}.planner-form-section p{font-size:calc((10px) * var(--ui-font-scale,1));color:var(--rx-muted);margin:7px 0 0}.planner-form-preview{margin-top:15px;padding:12px;border-radius:9px;background:var(--rx-surface);color:var(--rx-accent);font-size:calc((11px) * var(--ui-font-scale,1));font-weight:800;line-height:1.5}
@media(max-width:1250px){.planner-workspace{grid-template-columns:1fr}.planner-template{flex-basis:205px}}
@media(max-width:740px){.planner-hero{padding:18px}.planner-hero h2{font-size:calc((18px) * var(--ui-font-scale,1))}.planner-hero-mark{display:none}.planner-catalog-head{align-items:flex-start}.planner-catalog-count{display:none}.planner-template{flex-basis:194px}.planner-viewbar{flex-wrap:wrap}.planner-view-actions{width:100%;justify-content:space-between}.planner-workspace .map-stage{min-height:230px}.planner-spec-grid{grid-template-columns:repeat(3,1fr)}.planner-inspector-actions .button{font-size:calc((10px) * var(--ui-font-scale,1));padding:7px}.planner-catalog-foot{align-items:flex-start;flex-direction:column}}

/* Immersive warehouse walkthrough */
.walkthrough{position:relative;overflow:hidden;min-height:560px;border-radius:12px;background:var(--rx-soft);border:1px solid var(--rx-line);box-shadow:inset 0 0 0 1px var(--rx-shadow-color),0 15px 28px rgba(var(--rx-shadow-color-rgb),0.094)}
.warehouse-viewport{display:block;width:100%;height:560px;outline:none;cursor:grab;touch-action:none}.warehouse-viewport:active{cursor:grabbing}.warehouse-viewport:focus-visible{outline:3px solid var(--rx-line);outline-offset:-4px}
.walkthrough:fullscreen{border-radius:0;min-height:100vh}.walkthrough:fullscreen .warehouse-viewport{height:100vh}
.scene-hud{position:absolute;left:15px;right:15px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px;pointer-events:none}.scene-hud button,.scene-minimap{pointer-events:auto}.scene-hud-top{top:15px}.scene-hud-bottom{bottom:16px;align-items:flex-end}
.scene-mode-switch,.scene-control-cluster,.scene-navigation{display:flex;gap:4px;padding:4px;border-radius:10px;background:rgba(var(--rx-emphasis-rgb),0.863);box-shadow:0 6px 18px rgba(var(--rx-shadow-color-rgb),0.322);backdrop-filter:blur(8px)}
.scene-mode-switch button,.scene-control-cluster button,.scene-navigation button{border:0;border-radius:7px;background:transparent;color:var(--rx-on-emphasis);font-size:calc((11px) * var(--ui-font-scale,1));font-weight:800;padding:8px 10px;white-space:nowrap}
.scene-mode-switch button.active{background:var(--rx-surface);color:var(--rx-accent)}.scene-control-cluster button:hover,.scene-navigation button:hover{background:rgba(var(--rx-surface-rgb),0.133)}
.scene-hud-coords{padding:9px 11px;border-radius:8px;background:rgba(var(--rx-emphasis-rgb),0.867);color:var(--rx-on-emphasis);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800;letter-spacing:.4px;backdrop-filter:blur(8px)}
.scene-occupancy{display:flex;align-items:center;gap:6px;margin-right:auto;padding:7px 10px;border-radius:8px;background:rgba(var(--rx-surface-rgb),0.929);color:var(--rx-text);box-shadow:0 3px 12px rgba(var(--rx-shadow-color-rgb),0.2)}.scene-occupancy b{font-size:calc((15px) * var(--ui-font-scale,1));color:var(--rx-accent)}.scene-occupancy span{font-size:calc((9px) * var(--ui-font-scale,1));font-weight:850;white-space:nowrap}
.scene-navigation button{font-size:calc((16px) * var(--ui-font-scale,1));min-width:29px;padding:4px 7px}.scene-minimap{position:absolute;top:65px;right:15px;width:210px;border-radius:9px;overflow:hidden;border:1px solid var(--rx-line);background:var(--rx-sidebar);box-shadow:0 8px 20px rgba(var(--rx-shadow-color-rgb),0.4);cursor:crosshair}
.scene-minimap canvas{display:block;width:100%;height:150px}.scene-minimap span{display:block;padding:5px 8px;background:var(--rx-sidebar);color:var(--rx-muted);font-size:calc((8px) * var(--ui-font-scale,1));letter-spacing:1px;font-weight:900;text-align:center}
.scene-crosshair{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:calc((24px) * var(--ui-font-scale,1));line-height:1;color:var(--rx-on-emphasis);text-shadow:0 1px 4px var(--rx-shadow-color);pointer-events:none}.scene-crosshair[hidden]{display:none}
.scene-pallet-card{position:absolute;left:15px;top:68px;max-width:265px;padding:12px 14px;border:1px solid var(--rx-line);border-radius:10px;background:rgba(var(--rx-surface-rgb),0.933);box-shadow:0 10px 26px rgba(var(--rx-shadow-color-rgb),0.314);backdrop-filter:blur(10px);pointer-events:auto;color:var(--rx-text)}.scene-pallet-card[hidden]{display:none}.scene-pallet-card small{display:block;font-size:calc((8px) * var(--ui-font-scale,1));letter-spacing:1px;font-weight:900;color:var(--rx-muted)}.scene-pallet-card strong{display:block;margin:5px 0;font-size:calc((14px) * var(--ui-font-scale,1));color:var(--rx-accent);overflow-wrap:anywhere}.scene-pallet-card span{display:block;font-size:calc((11px) * var(--ui-font-scale,1));font-weight:800;color:var(--rx-accent)}.scene-pallet-card p{font-size:calc((10px) * var(--ui-font-scale,1));margin:5px 0;color:var(--rx-muted)}.scene-pallet-card em{display:inline-block;font-style:normal;font-size:calc((9px) * var(--ui-font-scale,1));font-weight:800;color:var(--rx-text);background:var(--rx-soft);padding:4px 6px;border-radius:4px}
.scene-pallet-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.scene-pallet-actions button{border:1px solid var(--rx-line);background:var(--rx-soft);border-radius:6px;padding:6px 8px;color:var(--rx-accent);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800}.scene-pallet-actions button:hover{background:var(--rx-soft)}.scene-pallet-plan{margin-top:8px;padding:7px 8px;border-radius:6px;background:var(--rx-soft);color:var(--rx-accent);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800}.scene-pallet-plan[hidden]{display:none}.scene-plan-legend{position:absolute;left:15px;bottom:83px;max-width:360px;display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--rx-line);border-radius:7px;background:rgba(var(--rx-surface-rgb),0.929);color:var(--rx-accent);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800;pointer-events:none}.scene-plan-legend i{width:12px;height:12px;flex:none;border:1px solid var(--rx-accent);background:rgba(var(--rx-accent-soft-rgb),0.4);border-radius:3px}
.scene-caption{display:flex;align-items:flex-start;gap:8px;padding:11px 13px;background:var(--rx-surface);border:1px solid var(--rx-line);border-radius:0 0 10px 10px;color:var(--rx-muted);line-height:1.45}.scene-caption strong{color:var(--rx-accent);white-space:nowrap;font-size:calc((10px) * var(--ui-font-scale,1))}.scene-caption span{font-size:calc((10px) * var(--ui-font-scale,1))}
@media(max-width:800px){.walkthrough,.warehouse-viewport{height:480px;min-height:480px}.scene-minimap{width:150px;top:61px}.scene-minimap canvas{height:110px}.scene-hud-coords{display:none}.scene-occupancy span{display:none}.scene-control-cluster button{font-size:calc((9px) * var(--ui-font-scale,1));padding:7px}.scene-caption{display:block}.scene-caption strong{display:block;margin-bottom:3px}}
@media(max-width:520px){.walkthrough,.warehouse-viewport{height:420px;min-height:420px}.scene-hud{left:8px;right:8px}.scene-hud-top{top:8px}.scene-hud-bottom{bottom:8px;flex-direction:column-reverse;align-items:flex-end}.scene-minimap{top:54px;right:8px;width:116px}.scene-minimap canvas{height:85px}.scene-minimap span{font-size:calc((6px) * var(--ui-font-scale,1))}.scene-mode-switch button{font-size:calc((9px) * var(--ui-font-scale,1));padding:6px}.scene-navigation button{font-size:calc((14px) * var(--ui-font-scale,1))}.scene-control-cluster{max-width:100%;overflow-x:auto}}

/* Continuous measurements and long-row inspector */
.plan-ruler-x,.plan-ruler-y{position:absolute;pointer-events:none;z-index:4;color:var(--rx-muted);font-size:calc((9px) * var(--ui-font-scale,1));font-weight:900}.plan-ruler-x{top:0;left:0;right:0;height:19px;background:rgba(var(--rx-surface-rgb),0.863);border-bottom:1px solid var(--rx-line)}.plan-ruler-y{left:0;top:0;bottom:0;width:21px;background:rgba(var(--rx-surface-rgb),0.863);border-right:1px solid var(--rx-line)}
.plan-ruler-tick{position:absolute;white-space:nowrap}.plan-ruler-x .plan-ruler-tick{top:2px;transform:translateX(-15%)}.plan-ruler-x .plan-ruler-tick:before{content:"";position:absolute;top:14px;left:0;height:5px;border-left:1px solid var(--rx-line-strong)}.plan-ruler-y .plan-ruler-tick{left:2px;transform:translateY(-20%)}.plan-ruler-y .plan-ruler-tick:before{content:"";position:absolute;left:17px;top:1px;width:5px;border-top:1px solid var(--rx-line-strong)}
.plan-measure-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;overflow:visible}.plan-measure-layer line{stroke:var(--rx-accent);stroke-width:.18;stroke-dasharray:.6 .4;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 1px #fff)}
.plan-measure-layer text{fill:var(--rx-accent);stroke:var(--rx-line);stroke-width:.22;paint-order:stroke;font:bold calc(1.45px * var(--ui-font-scale,1)) system-ui,sans-serif}
.map-dimension-strip{display:flex;flex-wrap:wrap;gap:5px;padding:9px 2px 2px}.map-dimension-strip span{display:flex;gap:5px;align-items:center;padding:5px 7px;border-radius:6px;background:var(--rx-surface);color:var(--rx-muted);font-size:calc((9px) * var(--ui-font-scale,1));font-weight:900;letter-spacing:.25px}.map-dimension-strip b{color:var(--rx-accent);font-size:calc((10px) * var(--ui-font-scale,1));letter-spacing:0}.map-dimension-strip [data-map-live-measure]:empty{display:none}.map-dimension-strip [data-map-live-measure]:not(:empty){background:var(--rx-soft);color:var(--rx-accent)}
.large-hall .map-area{min-width:2px;min-height:2px;padding:0;border-width:1px}.large-hall .map-area-code,.large-hall .map-area-info,.large-hall .map-orientation{display:none}.large-hall .map-area.selected{z-index:2}.large-hall .map-rack-slats{opacity:.45}
.rack-page-nav{display:flex;align-items:center;justify-content:center;gap:8px;margin:5px 0 10px}.rack-page-nav button{border:1px solid var(--rx-line);background:var(--rx-surface);border-radius:6px;color:var(--rx-accent);font-size:calc((13px) * var(--ui-font-scale,1));padding:3px 8px}.rack-page-nav button:disabled{opacity:.35}.rack-page-nav strong{font-size:calc((10px) * var(--ui-font-scale,1));color:var(--rx-muted)}
.planner-history-actions{display:flex;gap:5px;margin-left:auto;padding-left:8px;border-left:1px solid var(--rx-line)}.planner-history-actions button{background:var(--rx-soft);color:var(--rx-text)}.planner-history-actions button:disabled{opacity:.38;cursor:not-allowed}

/* Addressable row / column / level selection */
.map-area.rack .map-area-code,.map-area.rack .map-area-info,.map-area.rack .map-progress,.map-area.rack .map-orientation{pointer-events:none}
.rack-bay-hit{position:absolute;z-index:1;box-shadow:inset 1px 0 rgba(var(--rx-shadow-color-rgb),0.349),inset -1px 0 rgba(var(--rx-shadow-color-rgb),0.349);transition:background .12s,box-shadow .12s}
.rack-bay-hit.free{background:rgba(var(--rx-success-soft-rgb),0.314)}.rack-bay-hit.partial{background:rgba(var(--rx-warning-soft-rgb),0.459)}.rack-bay-hit.full{background:rgba(var(--rx-surface-muted-rgb),0.529)}
.rack-bay-hit:hover{z-index:2;background:rgba(var(--rx-accent-soft-rgb),0.722);box-shadow:inset 0 0 0 2px var(--rx-shadow-color)}
.rack-bay-hit.selected{z-index:3;background:rgba(var(--rx-accent-rgb),0.788);box-shadow:inset 0 0 0 2px var(--rx-shadow-color),0 0 0 2px var(--rx-shadow-color)}
.map-area.multi-selected{box-shadow:inset 0 0 0 3px var(--rx-shadow-color),0 0 0 2px var(--rx-shadow-color);z-index:3}
.large-hall .map-area.rack{min-width:8px}
.map-selection-box{position:absolute;z-index:10;border:2px dashed var(--rx-accent);background:rgba(var(--rx-accent-soft-rgb),0.259);box-shadow:0 0 0 1px rgba(var(--rx-shadow-color-rgb),0.533);pointer-events:none}
.map-selection-box[hidden]{display:none}
.map-selection-summary{display:flex;justify-content:space-between;align-items:center;gap:9px;margin-bottom:14px;padding:10px 11px;border:1px solid var(--rx-line);border-radius:9px;background:var(--rx-surface)}
.map-selection-summary strong,.map-selection-summary small{display:block}.map-selection-summary strong{color:var(--rx-accent);font-size:calc((11px) * var(--ui-font-scale,1))}.map-selection-summary small{color:var(--rx-muted);font-size:calc((9px) * var(--ui-font-scale,1));line-height:1.35;margin-top:3px}
.map-selection-summary button{flex:none;border:1px solid var(--rx-line);border-radius:6px;background:var(--rx-surface);color:var(--rx-accent);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800;padding:5px 7px}
.map-column-detail{margin:14px 0 11px;padding:12px;border:1px solid var(--rx-line);border-radius:10px;background:linear-gradient(135deg,var(--rx-surface),var(--rx-surface))}
.map-column-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.map-column-heading small,.map-column-heading strong,.map-column-heading span{display:block}.map-column-heading small{color:var(--rx-accent);font-size:calc((8px) * var(--ui-font-scale,1));font-weight:900;letter-spacing:1.2px}.map-column-heading strong{margin-top:3px;color:var(--rx-accent);font-size:calc((12px) * var(--ui-font-scale,1))}.map-column-heading span{color:var(--rx-muted);font-size:calc((9px) * var(--ui-font-scale,1));margin-top:3px;line-height:1.3}.map-column-heading button{flex:none;border:1px solid var(--rx-line);border-radius:6px;background:var(--rx-surface);color:var(--rx-accent);font-size:calc((9px) * var(--ui-font-scale,1));font-weight:900;padding:6px 8px}
.map-level-strip{display:flex;flex-wrap:wrap;gap:4px;margin-top:11px;padding-bottom:2px}.map-level-strip button{flex:1 0 54px;display:grid;gap:3px;min-width:54px;border:1px solid var(--rx-line);border-radius:6px;background:var(--rx-surface);color:var(--rx-text);font-size:calc((9px) * var(--ui-font-scale,1));font-weight:800;padding:6px 7px}.map-level-strip button.partial{border-color:var(--rx-warning);background:var(--rx-warning-soft);color:var(--rx-warning)}.map-level-strip button.full{border-color:var(--rx-line);background:var(--rx-surface);color:var(--rx-muted)}.map-level-strip button.active{outline:2px solid var(--rx-accent);outline-offset:1px}.map-level-strip b{font-size:calc((10px) * var(--ui-font-scale,1))}
.face-slot.bay-focused{box-shadow:inset 0 0 0 2px var(--rx-shadow-color)}
.scene-navigation-separator{width:1px;margin:4px;background:rgba(var(--rx-surface-rgb),0.333)}

/* Time-based physical inventory view */
.map-history-panel{margin:15px 0;padding:16px 18px;border:1px solid var(--rx-line);border-radius:14px;background:linear-gradient(125deg,var(--rx-surface),var(--rx-surface));box-shadow:0 6px 20px rgba(var(--rx-shadow-color-rgb),0.063)}
.map-history-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.map-history-heading h3{margin:4px 0 2px;color:var(--rx-accent);font-size:calc((17px) * var(--ui-font-scale,1))}.map-history-heading p{margin:0;color:var(--rx-muted);font-size:calc((11px) * var(--ui-font-scale,1))}.map-history-actions{display:flex;gap:7px;flex-wrap:wrap}.map-history-actions button{border:1px solid var(--rx-line);border-radius:8px;background:var(--rx-surface);color:var(--rx-accent);padding:8px 11px;font-size:calc((11px) * var(--ui-font-scale,1));font-weight:800;cursor:pointer}.map-history-actions button:first-child{background:var(--rx-emphasis);color:var(--rx-on-emphasis);border-color:var(--rx-accent)}.map-history-actions button:disabled{opacity:.48;cursor:default}
.map-history-track{display:flex;align-items:center;gap:10px;margin:16px 0 13px;color:var(--rx-muted);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800}.map-history-track input{width:100%;accent-color:var(--rx-accent);cursor:pointer}
.map-history-list{display:flex;gap:6px;overflow-x:auto;padding:1px 0 5px}.map-history-event{min-width:155px;max-width:215px;flex:1;text-align:left;border:1px solid var(--rx-line);border-radius:8px;background:var(--rx-surface);padding:8px 10px;color:var(--rx-text);cursor:pointer}.map-history-event.active{border-color:var(--rx-accent);background:var(--rx-soft);box-shadow:inset 0 0 0 1px var(--rx-shadow-color)}.map-history-event span,.map-history-event strong,.map-history-event small{display:block}.map-history-event span{font-size:calc((9px) * var(--ui-font-scale,1));color:var(--rx-muted)}.map-history-event strong{font-size:calc((10px) * var(--ui-font-scale,1));margin:2px 0}.map-history-event small{font-size:calc((9px) * var(--ui-font-scale,1));line-height:1.3;overflow-wrap:anywhere}.map-history-panel>.help{margin-top:9px}
@media(max-width:600px){.map-history-heading{align-items:flex-start;flex-direction:column}.map-history-actions{width:100%}.map-history-actions button{flex:1}.map-history-event{min-width:145px}}
.rack-pair-link{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:9px 0;padding:8px 10px;border-radius:7px;background:var(--rx-soft);color:var(--rx-text);font-size:calc((10px) * var(--ui-font-scale,1))}.rack-pair-link button{border:1px solid var(--rx-line);border-radius:6px;background:var(--rx-surface);color:var(--rx-accent);padding:5px 7px;font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800;cursor:pointer}.map-area.rack.paired{border-color:var(--rx-accent)}
.plan-history-route{position:absolute;inset:0;width:100%;height:100%;z-index:8;pointer-events:none;overflow:visible;filter:drop-shadow(0 1px 2px #183f6070)}.plan-history-route line{stroke:var(--rx-accent);stroke-width:3;stroke-dasharray:7 5;vector-effect:non-scaling-stroke}.plan-history-route circle{stroke:var(--rx-line);stroke-width:2;vector-effect:non-scaling-stroke}.plan-history-route .origin{fill:var(--rx-accent)}.plan-history-route .destination{fill:var(--rx-accent)}
.map-history-current{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0 2px;color:var(--rx-accent);font-size:calc((10px) * var(--ui-font-scale,1))}.map-history-current span{font-weight:900}.map-history-current b{padding:4px 8px;border-radius:5px;background:var(--rx-soft);color:var(--rx-accent)}.map-history-event strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scene-navigation [data-scene-step="up"],.scene-navigation [data-scene-step="down"]{background:var(--rx-accent);color:var(--rx-on-emphasis)}
.scene-error{position:absolute;inset:45% 15px auto;padding:18px;border-radius:9px;background:var(--rx-surface);color:var(--rx-danger);text-align:center;font-weight:800}
.rack-bay-hit.has-blocked{background-image:repeating-linear-gradient(135deg,transparent,transparent 4px,rgba(var(--rx-danger-soft-rgb),0.439) 4px,rgba(var(--rx-danger-soft-rgb),0.439) 7px)}.map-area.floor.has-blocked{border-color:var(--rx-danger);box-shadow:inset 0 0 0 3px rgba(var(--rx-danger-rgb),0.333)}.map-legend i.blocked{background:var(--rx-danger)}
.underpass-editor{margin-top:16px;padding:14px;border:1px solid var(--rx-line);border-radius:11px;background:linear-gradient(135deg,var(--rx-surface),var(--rx-surface))}
.underpass-editor>div:first-child{margin-bottom:10px}
.underpass-editor p{margin:3px 0 0;font-size:calc((11px) * var(--ui-font-scale,1));line-height:1.5;color:var(--rx-muted)}
.underpass-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 32px;align-items:end;gap:8px;padding:9px;margin:8px 0;border:1px solid var(--rx-line);border-radius:8px;background:var(--rx-surface)}
.underpass-row .field{min-width:0}.underpass-row .field label{font-size:calc((10px) * var(--ui-font-scale,1))}.underpass-row input,.underpass-row select{width:100%}
.underpass-row>button{height:34px;border:0;border-radius:7px;background:var(--rx-soft);color:var(--rx-text);font-size:calc((20px) * var(--ui-font-scale,1));cursor:pointer}
.scene-move-banner{position:absolute;left:15px;right:15px;bottom:75px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:11px 13px;border:1px solid var(--rx-line);border-radius:11px;background:rgba(var(--rx-emphasis-rgb),0.91);color:var(--rx-on-emphasis);box-shadow:0 9px 24px rgba(var(--rx-shadow-color-rgb),0.4);backdrop-filter:blur(8px);pointer-events:auto;z-index:5}
.scene-move-banner strong{color:var(--rx-accent)}.scene-move-banner span{flex:1;min-width:160px;font-size:calc((11px) * var(--ui-font-scale,1))}
.scene-move-banner button{border:1px solid var(--rx-line);border-radius:7px;background:var(--rx-accent);color:var(--rx-accent);padding:8px 10px;font-size:calc((10px) * var(--ui-font-scale,1));font-weight:900;cursor:pointer}
.scene-move-banner button:last-child{background:transparent;color:var(--rx-on-emphasis)}
.scene-picking-target{cursor:crosshair!important}
@media(max-width:660px){.underpass-row{grid-template-columns:1fr 1fr}.underpass-row>button{grid-column:2;justify-self:end;width:34px}.scene-move-banner{bottom:104px;left:8px;right:8px}}
.planner-template{flex-basis:250px;min-height:142px;padding-bottom:43px}
.template-measure{display:grid;gap:2px;text-align:right;line-height:1.1}
.template-measure small{font-size:calc((7px) * var(--ui-font-scale,1));letter-spacing:.55px;color:var(--rx-muted)}
.planner-catalog-foot b{color:var(--rx-text)}
.planner-workflow{margin:16px 0;padding:15px;border:1px solid var(--rx-line);border-radius:14px;background:var(--rx-surface);box-shadow:0 5px 18px rgba(var(--rx-shadow-color-rgb),0.051)}.planner-workflow-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.planner-workflow-steps>div{display:flex;align-items:center;gap:9px;padding:9px;border-radius:9px;background:var(--rx-surface);color:var(--rx-muted)}.planner-workflow-steps>div.current{background:var(--rx-soft);color:var(--rx-accent);box-shadow:inset 0 0 0 1px var(--rx-shadow-color)}.planner-workflow-steps>div.done{background:var(--rx-success-soft);color:var(--rx-success)}.planner-workflow-steps b{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:var(--rx-surface);font-size:calc((11px) * var(--ui-font-scale,1));box-shadow:0 2px 6px rgba(var(--rx-shadow-color-rgb),0.082)}.planner-workflow-steps span,.planner-workflow-steps small{display:block}.planner-workflow-steps span{font-size:calc((11px) * var(--ui-font-scale,1));font-weight:900}.planner-workflow-steps small{margin-top:2px;font-size:calc((8px) * var(--ui-font-scale,1));font-weight:600;opacity:.8}.planner-command-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:11px;padding:12px 14px;border-radius:10px;background:var(--rx-surface);border-left:4px solid var(--rx-accent)}.planner-command-bar.placing{background:var(--rx-soft);border-left-color:var(--rx-accent)}.planner-command-bar>div:first-child{display:grid;gap:3px}.planner-command-bar>div:first-child>span{font-size:calc((8px) * var(--ui-font-scale,1));font-weight:900;letter-spacing:1px;color:var(--rx-muted)}.planner-command-bar>div:first-child>strong{font-size:calc((13px) * var(--ui-font-scale,1));color:var(--rx-accent)}.planner-command-bar>div:first-child>small{font-size:calc((10px) * var(--ui-font-scale,1));color:var(--rx-muted);line-height:1.35}.planner-command-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.draw-tools-wrap{margin-top:11px;padding:12px;border:1px solid var(--rx-line);border-radius:11px;background:var(--rx-surface)}.draw-tools-wrap>div:first-child{display:flex;align-items:baseline;gap:9px;margin-bottom:8px}.draw-tools-wrap .eyebrow{margin:0}.draw-tools-wrap>div:first-child small{font-size:calc((9px) * var(--ui-font-scale,1));color:var(--rx-muted)}.template-choose{position:absolute;left:12px;bottom:9px;color:var(--rx-accent);font-size:calc((8px) * var(--ui-font-scale,1));font-weight:900}.planner-template.active .template-choose{color:var(--rx-accent)}.map-draw-preview.invalid{border-color:var(--rx-danger);background:rgba(var(--rx-danger-soft-rgb),0.169);box-shadow:0 0 0 3px var(--rx-shadow-color)}.map-area.drag-invalid{outline:3px solid var(--rx-danger)!important;box-shadow:0 0 0 5px rgba(var(--rx-danger-rgb),0.208)!important}
@media(max-width:760px){.planner-workflow-steps{grid-template-columns:1fr}.planner-command-bar{align-items:flex-start;flex-direction:column}.planner-command-actions{width:100%;justify-content:flex-start}.planner-command-actions .button{flex:1}.draw-tools-wrap>div:first-child{align-items:flex-start;flex-direction:column}}
.rack-level-editor{margin-top:14px;padding:14px;border:1px solid var(--rx-line);border-radius:10px;background:var(--rx-surface)}.rack-level-editor h3{margin:0 0 3px;font-size:calc((12px) * var(--ui-font-scale,1))}.rack-level-editor p{margin:0 0 12px;color:var(--rx-muted);font-size:calc((10px) * var(--ui-font-scale,1))}.rack-level-editor [data-level-height-list]{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.rack-level-editor label{display:flex;align-items:center;gap:5px;padding:8px;border:1px solid var(--rx-line);border-radius:8px;background:var(--rx-surface);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800}.rack-level-editor input{min-width:0;width:65px;margin-left:auto;padding:6px;border:1px solid var(--rx-line);border-radius:5px;background:var(--rx-surface);color:var(--rx-accent)}.rack-level-editor em{font-style:normal;color:var(--rx-muted)}
.rack-level-control{display:flex;align-items:center;gap:2px;margin-top:3px}.rack-level-control input{width:38px;min-width:0;padding:2px;border:1px solid var(--rx-line);border-radius:4px;background:var(--rx-surface);text-align:center;font-size:calc((9px) * var(--ui-font-scale,1));font-weight:800;color:var(--rx-accent)}.rack-level-control em{font-style:normal;font-size:calc((8px) * var(--ui-font-scale,1))}.rack-face-edit-tip{margin:4px 0 10px;color:var(--rx-muted);font-size:calc((10px) * var(--ui-font-scale,1))}.rack-face-editing .rack-matrix-level{min-height:58px}.rack-face-editing .rack-cell{min-height:58px;height:auto}
.plan-expand-button{padding:7px 10px;border:1px solid var(--rx-line);border-radius:7px;background:var(--rx-surface);color:var(--rx-accent);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800;cursor:pointer}.plan-expanded{position:fixed;inset:0;z-index:119;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:0;background:var(--rx-soft)}.plan-expanded .map-stage-wrap{height:100vh;display:flex;flex-direction:column;min-width:0}.plan-expanded .map-stage-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;background:var(--rx-surface)}.plan-expanded .map-stage-scroll{flex:1;overflow:auto}.plan-expanded .map-stage{max-height:none}.plan-expanded .map-stage-foot{padding:8px 15px;background:var(--rx-surface)}.plan-expanded>section{height:100vh;overflow:auto}.plan-expanded-actions{display:flex;gap:6px;margin-left:auto}.plan-expanded-actions button{padding:7px 9px;border:1px solid var(--rx-line);border-radius:7px;background:var(--rx-surface);color:var(--rx-accent);font-weight:800;cursor:pointer}@media(max-width:800px){.plan-expanded{grid-template-columns:1fr}.plan-expanded>section{display:none}}
.scene-floating-hu{position:absolute;right:15px;top:65px;z-index:8;width:min(260px,42%);display:grid;gap:5px;padding:14px;border:2px solid var(--rx-line);border-radius:13px;background:rgba(var(--rx-emphasis-rgb),0.929);color:var(--rx-on-emphasis);box-shadow:0 12px 30px rgba(var(--rx-shadow-color-rgb),0.467);backdrop-filter:blur(10px);pointer-events:auto}.scene-floating-hu small{color:var(--rx-muted);font-size:calc((8px) * var(--ui-font-scale,1));font-weight:900;letter-spacing:.7px}.scene-floating-hu strong{font-size:calc((17px) * var(--ui-font-scale,1));letter-spacing:.2px}.scene-floating-hu span{font-size:calc((10px) * var(--ui-font-scale,1));line-height:1.3}.scene-floating-hu em{font-size:calc((9px) * var(--ui-font-scale,1));font-style:normal;color:var(--rx-muted)}.scene-floating-hu b{font-size:calc((10px) * var(--ui-font-scale,1));color:var(--rx-accent)}.scene-floating-hu button{margin-top:5px;padding:7px;border:1px solid var(--rx-line);border-radius:7px;background:transparent;color:var(--rx-on-emphasis);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800;cursor:pointer}.scene-floating-hu button:hover{background:var(--rx-emphasis)}@media(max-width:660px){.scene-floating-hu{top:110px;right:7px;width:min(220px,55%);padding:9px}}
.warehouse-task-alert{margin-left:auto;padding:7px 11px;border:1px solid var(--rx-line);border-radius:8px;background:var(--rx-soft);color:var(--rx-accent);font-size:calc((11px) * var(--ui-font-scale,1));font-weight:900;cursor:pointer}.move-task-queue{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:9px}.move-task-card{display:grid;gap:4px;text-align:left;padding:11px;border:1px solid var(--rx-line);border-radius:9px;background:var(--rx-surface);color:var(--rx-accent);cursor:pointer}.move-task-card.selected{outline:2px solid var(--rx-accent)}.move-task-card strong{font-size:calc((12px) * var(--ui-font-scale,1))}.move-task-card span{font-size:calc((11px) * var(--ui-font-scale,1));font-weight:800}.move-task-card small{font-size:calc((9px) * var(--ui-font-scale,1));color:var(--rx-muted)}
.plan-expanded-actions button.active{background:var(--rx-soft);border-color:var(--rx-accent);color:var(--rx-accent)}
.rack-level-control button{padding:2px 3px;border:1px solid var(--rx-accent);border-radius:4px;background:var(--rx-soft);color:var(--rx-accent);font-size:calc((9px) * var(--ui-font-scale,1));font-weight:900;cursor:pointer}.rack-level-control button:hover{background:var(--rx-soft)}
.rack-level-save{margin-top:3px;padding:3px 5px;border:1px solid var(--rx-accent);border-radius:4px;background:var(--rx-soft);color:var(--rx-accent);font-size:calc((9px) * var(--ui-font-scale,1));font-weight:900;cursor:pointer}.rack-level-save:hover{background:var(--rx-soft)}
.map-smart-guide{position:absolute;z-index:8;pointer-events:none;opacity:.95}.map-smart-guide.vertical{top:0;bottom:0;border-left:2px dashed var(--rx-line);box-shadow:0 0 0 1px var(--rx-shadow-color)}.map-smart-guide.horizontal{left:0;right:0;border-top:2px dashed var(--rx-line);box-shadow:0 0 0 1px var(--rx-shadow-color)}
.global-edit-history{display:inline-flex;gap:4px;margin-left:auto}.global-edit-history button{padding:6px 8px;border:1px solid var(--rx-line);border-radius:7px;background:var(--rx-surface);color:var(--rx-accent);font-size:calc((10px) * var(--ui-font-scale,1));font-weight:800;cursor:pointer}.global-edit-history button:disabled{opacity:.45;cursor:default}
.rack-face-editing .rack-face-matrix{grid-template-columns:66px repeat(var(--face-slots),minmax(0,1fr))}.rack-face-fullscreen.rack-face-editing .rack-face-matrix{grid-template-columns:86px repeat(var(--face-slots),minmax(80px,1fr))}.rack-face-editing .rack-level-control input{width:42px}.rack-face-editing .rack-matrix-level{align-content:center}
