.nectho-safe-map{position:relative;width:100%;margin:12px 0 24px;color:#5c0434;background:transparent;overflow:hidden;font-family:inherit;border-radius:8px}
.nectho-safe-map .nm-toolbar{display:flex;justify-content:flex-end;gap:6px;padding:5px 8px}
.nectho-safe-map .nm-toolbar button{font:inherit;font-size:14px;line-height:1.2;min-width:36px;min-height:36px;padding:7px 11px;border:1px solid #dfd4da;border-radius:5px;background:#fff;color:#5c0434;cursor:pointer}
.nectho-safe-map .nm-toolbar button:hover,.nectho-safe-map .nm-toolbar button:focus-visible{border-color:#d00062;outline:2px solid #d00062;outline-offset:1px}
.nectho-safe-map .nm-svg{display:block;width:100%;height:auto;aspect-ratio:1000/560;touch-action:pan-y;cursor:grab;overflow:hidden}
.nectho-safe-map .nm-svg.nm-dragging{cursor:grabbing}
.nectho-safe-map .nm-region{fill:var(--nm-inactive);stroke:#fff;stroke-width:.7;vector-effect:non-scaling-stroke;transition:fill .12s ease}
.nectho-safe-map .nm-selected{fill:var(--nm-fill)}
.nectho-safe-map .nm-region:hover,.nectho-safe-map .nm-region:focus-visible{fill:var(--nm-hover);outline:none;stroke:#5c0434;stroke-width:1.2}
.nectho-safe-map .nm-caption{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 8px 12px;font-size:12px;line-height:1.5;min-height:48px}
.nectho-safe-map .nm-name{display:inline-flex;align-items:center;gap:11px;max-width:100%;padding:10px 17px;border:1px solid #eddde5;border-radius:999px;background:linear-gradient(135deg,#fff,#fff4f9);box-shadow:0 3px 12px rgba(92,4,52,.07);color:#5c0434;font-size:14px;font-weight:600;letter-spacing:.01em;line-height:1.45;overflow-wrap:anywhere}
.nectho-safe-map .nm-name::before{content:"";flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:#e43b93;box-shadow:0 0 0 4px #fbe0ee}
.nectho-safe-map .nm-tooltip{position:absolute;z-index:20;pointer-events:none;max-width:min(300px,calc(100% - 16px));border-radius:14px;padding:10px 14px;box-shadow:0 5px 22px rgba(70,4,39,.16);background:#fff;gap:10px;white-space:normal}
.nectho-safe-map .nm-tooltip[hidden]{display:none}
.nectho-safe-map .nm-tooltip::before{display:none}
.nectho-safe-map .nm-flag{width:32px;height:22px;object-fit:contain;flex:none;filter:drop-shadow(0 0 1px #aaa);border-radius:2px}
.nectho-safe-map .nm-label-text{min-width:0;overflow-wrap:anywhere}
.nectho-safe-map .nm-hint{color:#887980;font-size:11px}
.nectho-safe-map .nm-caption a{color:#6c6068;font-size:11px;text-decoration:underline;white-space:nowrap}
@media(max-width:600px){.nectho-safe-map{margin:8px 0 18px}.nectho-safe-map .nm-caption{flex-wrap:wrap;font-size:11px}.nectho-safe-map .nm-name{gap:10px;padding:9px 14px;font-size:13px}.nectho-safe-map .nm-toolbar{padding:4px}.nectho-safe-map .nm-svg{touch-action:pan-y}.nectho-safe-map .nm-toolbar button{min-height:40px;min-width:40px}}
@media(prefers-reduced-motion:reduce){.nectho-safe-map .nm-region{transition:none}}
