/* Карта зон (static/map.js): настройки витрины и сайт-витрина. */
.pmap { position: relative; overflow: hidden; height: 380px; background: #e9e5dc; border-radius: 12px; touch-action: none; user-select: none; -webkit-user-select: none; cursor: grab; }
.pmap.editing { cursor: crosshair; }
.pmap-tiles { position: absolute; inset: 0; }
.pmap-tiles img { position: absolute; left: 0; top: 0; width: 256px; height: 256px; pointer-events: none; }
.pmap-svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.pmap-svg path { pointer-events: none; }
.pmap-zone { fill-opacity: .22; stroke-width: 2; }
.pmap-zone.active { fill-opacity: .4; stroke-width: 3; }
.pmap-edit { fill-opacity: .18; stroke-width: 2; stroke-dasharray: 6 4; }
.pmap-label { font: 600 12px/1 system-ui, sans-serif; fill: #222; paint-order: stroke; stroke: #fff; stroke-width: 3px; text-anchor: middle; pointer-events: none; }
.pmap-vertex { fill: #fff; stroke: #d9480f; stroke-width: 2; cursor: move; pointer-events: all; }
.pmap-marker path { fill: #d9480f; stroke: #fff; stroke-width: 1.5; }
.pmap-marker circle { fill: #fff; }
.pmap-ctrl { position: absolute; right: 10px; top: 10px; display: flex; flex-direction: column; gap: 4px; }
.pmap-ctrl button { width: 32px; height: 32px; border-radius: 8px; border: 1px solid #c9c4b8; background: #fff; color: #222; font: 700 18px/1 system-ui, sans-serif; cursor: pointer; padding: 0; }
.pmap-attr { position: absolute; right: 6px; bottom: 4px; font: 11px/1.2 system-ui, sans-serif; color: #444; background: rgba(255,255,255,.75); padding: 2px 5px; border-radius: 4px; }
.pmap-attr a { color: #1b4fa0; }
.map-tools { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 10px; }
.map-tools input { flex: 1 1 220px; min-width: 0; }
.map-draw b { margin-right: 4px; }
.map-pts { display: flex; gap: 8px; align-items: center; }
.map-msg { margin: 6px 0 0; font-size: 13px; }
@media (max-width: 640px) { .pmap { height: 280px; } }
.pmap-sugg { position: absolute; left: 0; right: 0; top: 100%; z-index: 30; margin: 4px 0 0; padding: 4px 0; list-style: none; background: #fff; color: #222; border: 1px solid #d6d1c4; border-radius: 10px; box-shadow: 0 8px 24px rgba(0,0,0,.14); max-height: 280px; overflow-y: auto; font: 400 14px/1.35 system-ui, sans-serif; text-align: left; }
.pmap-sugg[hidden] { display: none; }
.pmap-sugg li { padding: 8px 12px; cursor: pointer; }
.pmap-sugg li:hover, .pmap-sugg li.active { background: #f1eee6; }
