.room-swap-panel{margin:20px 0;padding:18px;border:1px solid #d4e2e7;border-radius:16px;background:#fff;overflow:hidden}
.room-swap-panel h2{margin:0 0 10px;font-size:20px}.room-swap-panel button,.room-swap-panel select{min-height:46px;max-width:100%;white-space:normal}
.room-swap-controls{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.room-swap-controls>*{flex:1 1 140px}.room-swap-controls label{display:grid;gap:6px;min-width:0}.room-swap-controls select{width:100%;min-width:0}
.room-swap-canvas{border:1px solid #dce7e9;border-radius:10px;margin:12px 0;background:#fff;user-select:none;-webkit-user-select:none}
.room-swap-canvas svg{width:100%;height:auto;display:block;max-height:none!important}
.room-swap-hit{cursor:grab;touch-action:pan-y;fill:transparent;stroke:transparent;stroke-width:60;pointer-events:all}
.room-swap-hit:focus{outline:none;stroke:#186d84;stroke-dasharray:130 80}.room-swap-hit[data-selected="true"]{fill:#e86828;fill-opacity:.22;stroke:#e86828}.room-swap-hit[data-target="true"]{fill:#168777;fill-opacity:.2;stroke:#168777}
.room-swap-preview{padding:14px;border-radius:10px;background:#fff5e9;border:1px solid #e6b782;margin:12px 0}.room-swap-preview ul{padding-left:22px}.room-swap-preview p{margin:8px 0}.room-swap-note{font-size:14px;line-height:1.7;color:#536a78}.room-swap-status{line-height:1.7;overflow-wrap:anywhere}.room-swap-panel [hidden]{display:none!important}
@media(min-width:800px){.room-swap-canvas{max-width:640px;margin:12px auto}}

#roomSwapStatus{scroll-margin-top:180px;padding:12px;border-radius:10px;background:#eef6f8;margin:12px 0}#roomSwapStatus:empty{display:none}#roomSwapResolve{margin-bottom:12px;width:100%}.room-swap-preview{scroll-margin-top:180px}
