/* Focused mobile refinements and selection feedback; no source SVG geometry changes. */
#show-route:disabled { color:#68727a; background:#f4f6f8; border:1px solid #dce3e8; box-shadow:none; cursor:not-allowed; }
#show-route:disabled svg { color:inherit; stroke:currentColor; }
#room-search { text-align:left; }
.selected-room > div { flex:1; min-width:0; }
#selected-label, #room-options strong { direction:ltr; unicode-bidi:isolate; text-align:left; }
html[dir="rtl"] #room-search,
html[dir="rtl"] #selected-label,
html[dir="rtl"] #room-options strong { text-align:right; }
.map-heading { padding:16px 16px 10px; }
.map-heading h2 { margin:0; font-size:18px; }
.floor-view { min-height:0; padding:8px 10px; gap:6px 10px; margin:0 12px 12px; }
.floor-view label { flex:1 1 auto; flex-wrap:nowrap; gap:8px; }
.floor-view select { min-height:44px; padding:8px 10px; flex:1 1 130px; }
.floor-guidance { flex-basis:100%; font-size:12px; line-height:1.5; }
.floor-guidance[hidden] { display:none; }
.map-controls { padding:2px; gap:0; border-radius:10px; bottom:10px; right:10px; }
.map-controls button { width:44px; height:44px; min-height:44px; padding:0; font-size:21px; }
.map-controls button svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; }
.map-controls span { margin:7px 2px; }
.map-room > polygon { cursor:pointer; pointer-events:fill; }
.map-room > text, .map-room > text tspan { cursor:pointer; pointer-events:all; }
.map-room[aria-pressed="true"] > polygon:not(.destination-highlight) { fill:#cbe8f8; }
.map-room:focus-visible { outline:none; }
.map-room:focus-visible > polygon { stroke:#006b99; stroke-width:2px; vector-effect:non-scaling-stroke; }
#route-overlay { pointer-events:none; }
@media(max-width:760px) {
  .workspace { gap:16px; }
  .journey-panel { padding:18px 16px; }
  .map-panel { width:100%; margin-inline:0; }
  .selected-room { margin-bottom:14px; }
  .primary { margin-top:16px; }
  .map-heading { padding:14px 14px 10px; }
  .floor-view { margin:0 10px 10px; padding:8px; }
}
