.placement-panel{display:flex;align-items:center;gap:18px;padding:16px 18px;background:var(--paper);border:1px solid var(--line);border-radius:9px;margin-bottom:12px;min-height:132px;color:var(--ink)}.placement-panel strong{font-size:16px}.placement-panel p{font-size:11px;line-height:1.7;margin:5px 0;color:var(--muted)}.placement-panel small{font-size:10px;line-height:1.6;color:var(--muted);display:block}.placement-preview{flex:0 0 125px;height:127px;cursor:grab;touch-action:none;display:grid;place-items:center}.placement-preview svg{width:100%;height:100%;max-height:127px}.placement-buttons{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.inventory-card figure{width:60px!important;height:53px!important;flex:none;touch-action:none}.inventory-card figure svg{width:100%;height:100%}.inventory-card{touch-action:pan-y;user-select:none}.inventory-card.selected{outline:2px solid var(--accent,#7e9866);outline-offset:-2px}.inventory-card .cable-mini{touch-action:none}.loose-part{cursor:grab;touch-action:none;outline:none}.loose-part>rect{fill:var(--paper);fill-opacity:.85;stroke:var(--line);stroke-dasharray:4 3}.loose-part.picked>rect,.loose-part:focus>rect{stroke:#e09d50;stroke-width:2}.loose-part>text{fill:var(--ink);font-size:10px;font-family:var(--mono);paint-order:stroke;stroke:var(--paper);stroke-width:3px}.loose-part .part-anchor{fill:#efaa4c;stroke:white;stroke-width:1}.loose-part>g,.loose-part>text,.part-anchor{pointer-events:none}.placement-guide circle:first-child{fill:#e8ad5422;stroke:#d49745;stroke-width:2;stroke-dasharray:5 4}.placement-guide circle{fill:#d49745}.placement-guide text{fill:var(--ink);font:10px var(--mono);paint-order:stroke;stroke:var(--paper);stroke-width:3px}.config-part-preview{display:flex;align-items:center;gap:12px;padding:10px;background:var(--bg);border:1px solid var(--line);border-radius:7px;margin-bottom:9px;font-size:11px}.config-part-preview svg{width:95px;height:83px;flex:none}#part-ghost{position:fixed;z-index:10000;pointer-events:none;width:140px;height:115px;transform:translate(-50%,-50%);opacity:.9;filter:drop-shadow(0 8px 9px #0004)}#part-ghost svg{width:100%;height:100%}@media(max-width:640px){.placement-preview{flex-basis:90px;height:110px}.placement-panel{gap:11px;padding:12px}.placement-panel strong{font-size:13px}.inventory-card{min-width:177px}.inventory-list{max-height:106px}.main-nav button span{font-size:10px!important}}
