/* Territory overview map (js/territory-map.js), shared by the admin panel and
   the agent desk. These rules draw the map; each page sizes it. The zoom
   buttons reuse each shell's .ra-pinmap-zoom from the pin picker. */
.admin-omap{margin-top:10px;border:1px solid rgba(28,25,23,.12);border-radius:10px;overflow:hidden;background:#e6e1d8}
.admin-omap-canvas{position:relative;height:380px;cursor:grab;overflow:hidden;touch-action:none}
.admin-omap-canvas.is-panning{cursor:grabbing}
.admin-omap-canvas img{position:absolute;display:block;max-width:none;pointer-events:none;-webkit-user-drag:none}
.admin-omap-dot{position:absolute;z-index:2;width:14px;height:14px;margin:-7px 0 0 -7px;border:2px solid #fff;
  border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.35);cursor:pointer;padding:0}
.admin-omap-dot[aria-pressed=true]{outline:3px solid #172f24;outline-offset:3px;z-index:5}
/* A lead: the layer's colour as a ring. */
.admin-omap-dot.is-hollow{border-width:3px;box-shadow:0 0 0 1px #fff,0 1px 4px rgba(0,0,0,.35)}
/* Not picked out by the layer: smaller, fainter, drawn underneath. */
.admin-omap-dot.is-dim{width:10px;height:10px;margin:-5px 0 0 -5px;opacity:.6;z-index:1}
.admin-omap-dot.is-dim.is-hollow{border-width:2px}
.admin-omap-badge{position:absolute;left:8px;top:-11px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;
  background:#1c1917;color:#fff;font:700 10px/16px system-ui,-apple-system,sans-serif;text-align:center;pointer-events:none}
.admin-omap-empty{padding:28px 16px;text-align:center}
.tr-map-fit{position:absolute;top:12px;left:12px;z-index:4;background:white;border:1px solid #e1ddd4;border-radius:7px;
  padding:9px 12px;font-size:12px;cursor:pointer}

/* Owner-coloured operational footprints over the mapped records. */
.admin-omap-regions{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none;overflow:visible}
.admin-omap-region{pointer-events:auto;cursor:pointer;fill-opacity:.16;stroke-opacity:.72;stroke-width:2;
  vector-effect:non-scaling-stroke;transition:fill-opacity .16s ease,stroke-width .16s ease}
.admin-omap-region:hover,.admin-omap-region:focus,.admin-omap-region[aria-pressed=true]{fill-opacity:.3;stroke-width:3;outline:none}
.admin-omap-region-tip{position:absolute;z-index:7;width:255px;padding:12px 14px;border:1px solid rgba(34,31,32,.14);
  border-radius:12px;background:rgba(34,31,32,.94);box-shadow:0 14px 36px rgba(34,31,32,.22);color:#fff;pointer-events:none}
.admin-omap-region-tip b,.admin-omap-region-tip span,.admin-omap-region-tip small{display:block}
.admin-omap-region-tip b{font-size:13px}
.admin-omap-region-tip span{margin-top:2px;color:#d8d3d1;font-size:10.5px}
.admin-omap-region-tip div{display:flex;gap:9px;margin-top:9px;color:#e9e5e2;font-size:10px}
.admin-omap-region-tip strong{color:#fff}
.admin-omap-region-tip small{margin-top:7px;color:#f1b28f;font-size:10px;line-height:1.35}

/* Layer legend, shared by both shells' map toolbars. */
.tm-legend{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:12px;color:#57534e}
.tm-legend span{display:inline-flex;align-items:center;gap:6px}
.tm-legend i{display:inline-block;width:11px;height:11px;border-radius:50%;border:2px solid transparent;flex:none}
.tm-legend i.is-hollow{background:#fff!important}
.tm-legend i.is-dim{opacity:.6}
.tm-legend b{font-weight:700;color:#1c1917}
