.mm{--mm-fondo:var(--neutral-0);--mm-ctx:#F1EEE8;--mm-ctx-linea:#E2DDD3;--mm-agua:#D9ECF5;--mm-agua-linea:#BFDDEB;--mm-agua-texto:var(--info);--mm-linea:var(--neutral-0);--mm-etiqueta:var(--neutral-900);--mm-halo-texto:rgba(255,255,255,0.92);--mm-anillo:var(--neutral-400);--mm-sel:var(--neutral-950);--mm-rayas:rgba(20,18,15,0.2);--mm-soft-a:#F3E7CC;--mm-soft-b:#E9D8B6;--mm-soft-c:#F7EDD6;--mm-soft-d:#EEDDBE;--mm-soft-r1:#D6E9ED;--mm-soft-r2:#C8E0E5;--mm-pueblo:#E8743C;--mm-balneario:#1593C2;--mm-tequila:#2A9171;position:relative;background:var(--mm-fondo);border:1px solid var(--border);border-radius:var(--radius-lg,8px);overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}.dark .mm,.ds-soft.dark .mm,[data-theme=dark] .mm{--mm-fondo:var(--neutral-950);--mm-ctx:#1E1B17;--mm-ctx-linea:#2A2620;--mm-agua:#10232D;--mm-agua-linea:#1B3B4A;--mm-linea:var(--neutral-950);--mm-etiqueta:var(--neutral-50);--mm-halo-texto:rgba(20,18,15,0.85);--mm-anillo:var(--neutral-600);--mm-sel:var(--neutral-50);--mm-rayas:rgba(255,255,255,0.22);--mm-soft-a:#3D3427;--mm-soft-b:#4A3E2D;--mm-soft-c:#433929;--mm-soft-d:#504331;--mm-soft-r1:#22363C;--mm-soft-r2:#2A4349;--mm-pueblo:#FF9A66;--mm-balneario:#4CC3EE;--mm-tequila:#5ED1A8}.mm--densidad .mm__f{--mm-d:var(--mm-d-claro)}.dark .mm--densidad .mm__f,.ds-soft.dark .mm--densidad .mm__f,[data-theme=dark] .mm--densidad .mm__f{--mm-d:var(--mm-d-oscuro)}.mm__capa{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}.mm__lienzo{display:block;width:100%;height:100%;cursor:grab}.mm__lienzo.is-arrastrando{cursor:grabbing}.mm__ctx path{fill:var(--mm-ctx);stroke:var(--mm-ctx-linea);stroke-width:1;vector-effect:non-scaling-stroke}.mm--soft .mm__ctx path{fill:var(--mm-fondo)}.mm__lago path{fill:var(--mm-agua);stroke:var(--mm-agua-linea);stroke-width:1;vector-effect:non-scaling-stroke}.mm__lago text{fill:var(--mm-agua-texto);font-family:var(--font-mono);font-style:italic;letter-spacing:.06em}.mm__mun .mm__f{stroke:var(--mm-linea);stroke-width:1.5;vector-effect:non-scaling-stroke;cursor:pointer;transition:opacity var(--dur,.18s) var(--ease,ease)}.mm__mun .mm__r{pointer-events:none}.mm__mun g:focus{outline:none}.mm__mun g.is-hover .mm__f,.mm__mun g:focus-visible .mm__f{stroke:var(--mm-sel);stroke-width:2;stroke-dasharray:5 3}.mm__mun g.is-sel .mm__f{stroke:var(--mm-sel);stroke-width:2.5;stroke-dasharray:none}.mm--aurora.hay-sel .mm__mun g:not(.is-sel) .mm__f{opacity:.32}.mm__halo path{opacity:.55;transition:opacity var(--dur,.18s) var(--ease,ease)}.mm--aurora.hay-sel .mm__halo path{opacity:.18}.mm--aurora.hay-sel .mm__halo path.is-sel{opacity:.75}.mm__eti text{fill:var(--mm-etiqueta);paint-order:stroke;stroke:var(--mm-halo-texto);stroke-linejoin:round;pointer-events:none;text-anchor:middle}.mm--soft .mm__eti g.is-sel text{fill:var(--neutral-950);stroke:rgba(255,255,255,.55)}.mm__eti .mm__n{font-family:var(--font-sans);font-weight:600}.mm__eti .mm__c{font-family:var(--font-mono);font-weight:500}.mm__dist circle{fill:none;stroke:var(--mm-anillo);stroke-dasharray:4 4;stroke-width:1;vector-effect:non-scaling-stroke}.mm__dist text{fill:var(--text-muted);font-family:var(--font-mono);text-anchor:middle;paint-order:stroke;stroke:var(--mm-fondo)}.mm__ref{fill:var(--mm-etiqueta)}.mm__pin1{fill:var(--info);stroke:var(--neutral-0)}.mm__pin2{fill:var(--info);opacity:.25;animation:mmPulso 1.8s var(--ease,ease) infinite;transform-box:fill-box;transform-origin:center}@keyframes mmPulso{0%{transform:scale(.6);opacity:.45}to{transform:scale(1.6);opacity:0}}.mm__dest>g{cursor:pointer}.mm__dest>g:focus{outline:none}.mm__dest .mm__dp{stroke:var(--mm-fondo)}.mm__dest>g.is-sel .mm__dp,.mm__dest>g:focus-visible .mm__dp{stroke:var(--mm-sel)}.mm__dest .mm__dt{fill:var(--mm-etiqueta);font-family:var(--font-mono);font-weight:500;paint-order:stroke;stroke:var(--mm-halo-texto);stroke-linejoin:round}.mm__dest>g.is-sel .mm__dt{font-weight:700}.mm__dest .t-pueblo .mm__dp{fill:var(--mm-pueblo)}.mm__dest .t-balneario .mm__dp{fill:var(--mm-balneario)}.mm__dest .t-tequila .mm__dp{fill:var(--mm-tequila)}.mm__vistas{position:absolute;left:8px;top:8px;display:flex;gap:6px;flex-wrap:wrap}.mm--compacto .mm__vistas{top:auto;bottom:8px}.mm__vistas button{min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);font:600 12px var(--font-sans);cursor:pointer}.mm__vistas button[aria-pressed=true]{background:var(--primary);color:var(--primary-fg);border-color:transparent}.mm__ctrl{position:absolute;right:8px;top:8px;display:flex;flex-direction:column;gap:6px}.mm__ctrl button{width:40px;height:40px;border-radius:var(--radius,6px);border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);display:grid;place-items:center;cursor:pointer}.mm__ctrl button[aria-pressed=true]{background:var(--primary);color:var(--primary-fg)}.mm__pie{position:absolute;right:8px;bottom:10px;display:flex;gap:8px;align-items:flex-end;pointer-events:none}.mm--compacto .mm__pie{bottom:12px}.mm__fuente{font-family:var(--font-mono);font-size:9px;color:var(--text-muted);padding:2px 6px;border-radius:var(--radius-sm,4px);opacity:.9;pointer-events:auto}.mm__fuente,.mm__leyenda{background:var(--surface)}.mm__leyenda{position:absolute;left:8px;bottom:8px;border:1px solid var(--border);border-radius:var(--radius,6px);padding:6px 8px;font:11px var(--font-sans);color:var(--text-secondary);box-shadow:var(--shadow-sm);display:flex;gap:10px;align-items:center}.mm--compacto .mm__leyenda{display:none}.mm__leyenda i{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-2px;margin-right:4px}.mm__tip{position:absolute;z-index:5;pointer-events:none;min-width:170px;max-width:250px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg,8px);box-shadow:var(--shadow-lg);padding:10px 12px;font:13px var(--font-sans);color:var(--text)}.mm__tip b{display:block;font-size:14px}.mm__tip small{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.mm__tip .mm__fila{display:flex;justify-content:space-between;gap:12px;color:var(--text-secondary)}.mm__tip .mm__fila span:last-child{font-family:var(--font-mono);color:var(--text)}.mm__cargando{position:absolute;inset:0;display:grid;place-items:center;color:var(--text-muted);font:13px var(--font-sans)}.mm-lista{display:flex;flex-direction:column;gap:2px;border:0;padding:0;margin:0}.mm-lista__grupo{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:12px 4px 4px}.mm-lista label{display:flex;align-items:center;gap:12px;min-height:48px;padding:6px 10px;border-radius:var(--radius,6px);cursor:pointer;color:var(--text)}.mm-lista label:hover{background:var(--surface-sunken)}.mm-lista input{width:20px;height:20px;accent-color:var(--neutral-950);flex:none}.dark .mm-lista input,.ds-soft.dark .mm-lista input{accent-color:var(--brand-400)}.mm-lista__muestra{width:14px;height:14px;border-radius:4px;flex:none}.mm-lista__nom{flex:1;min-width:0;font:15px var(--font-sans)}.mm-lista__nom small{display:block;color:var(--text-muted);font-size:12px}.mm-lista__cnt{font-family:var(--font-mono);font-size:13px;color:var(--text-secondary);text-align:right;white-space:nowrap}.mm-prox{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font:500 11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:var(--info-subtle);color:var(--info)}.mm-chips{display:flex;gap:8px;flex-wrap:wrap}.mm-chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 6px 0 12px;border-radius:999px;background:var(--accent);color:var(--accent-fg);font:500 13px var(--font-sans);border:0}.mm-chip button{display:inline-grid;place-items:center;width:28px;height:28px;border:0;border-radius:999px;background:transparent;color:inherit;cursor:pointer}.mm-seg{display:inline-flex;padding:3px;border-radius:var(--radius-lg,8px);background:var(--surface-sunken);border:1px solid var(--border);gap:2px}.mm-seg button{min-height:36px;padding:0 12px;border:0;border-radius:var(--radius,6px);background:transparent;font:500 13px var(--font-sans);cursor:pointer;color:var(--text-secondary);display:inline-flex;align-items:center;gap:6px}.mm-seg button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}@media (prefers-reduced-motion:reduce){.mm *,.mm-lista *{transition:none!important;animation:none!important}}