
/* V4.7 mobile map polish; never obstruct map controls or bottom sheet. */
#mapTools{z-index:450;display:flex;align-items:center;justify-content:space-between;gap:8px}
#mapTools .toolbar-right{display:flex;gap:7px;flex-shrink:0}
#mapTools button{min-height:42px;touch-action:manipulation}
#mapTools #searchBtn{min-width:0;flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#v41Layers button{min-height:38px;touch-action:manipulation}
#drawer .drawer-foot{padding-bottom:max(12px,env(safe-area-inset-bottom))}
#courseCard{padding-bottom:max(12px,env(safe-area-inset-bottom))}
@media(max-width:640px){
 #mapTools{left:10px!important;right:10px!important;width:auto!important;max-width:none!important}
 #mapTools .tool.small{width:43px;min-width:43px;padding:0!important}
 #v41Layers{max-width:calc(100vw - 20px);overflow-x:auto;scrollbar-width:none}
 #v41Layers button{white-space:nowrap}
 #legend{max-width:calc(100vw - 20px);flex-wrap:wrap}
 .leaflet-bottom.leaflet-right{margin-bottom:env(safe-area-inset-bottom)}
}
