.ump-map{--f:#dac1a7;--b:#fff;--t:#333;--ic:#2271b1;position:relative;max-width:100%;margin:0 auto}
.ump-map svg{display:block;width:100%;height:auto;overflow:visible}
.ump-map .ump-rg>path,.ump-map .ump-rg>a>path{fill:var(--c,var(--f));stroke:var(--b);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:fill .4s linear}
.ump-map .ump-rg>a>path{cursor:pointer}
.ump-map .ump-rg>path:hover,.ump-map .ump-rg>a>path:hover{filter:brightness(.88)}
.ump-map--hc .ump-rg>path:hover,.ump-map--hc .ump-rg>a>path:hover{fill:var(--h);filter:none}
.ump-map text{text-anchor:middle;dominant-baseline:central;pointer-events:none;user-select:none}
.ump-n{fill:var(--t);stroke:none}
.ump-i{cursor:pointer;outline:0}
.ump-i circle{fill:var(--ic);stroke:#fff;stroke-width:1.5}
.ump-i .ump-hit,.ump-mk .ump-hit{fill:transparent;stroke:none}
.ump-i:focus-visible circle:not(.ump-hit){stroke:#000}
.ump-i .ump-bg{fill:#fff;stroke:none}
.ump-i .ump-gl{transition:transform .15s}
.ump-pop{position:absolute;z-index:5;width:max-content;max-width:min(280px,90%);margin-top:-10px;padding:12px 30px 12px 14px;background:#fff;color:#222;border-radius:6px;box-shadow:0 4px 18px rgba(0,0,0,.25);font-size:14px;line-height:1.45;text-align:left;transform:translate(-50%,-100%)}
.ump-pop[hidden]{display:none}
.ump-pop.ump-below{margin-top:10px;transform:translateX(-50%)}
.ump-pop strong{display:block;margin-bottom:4px}
.ump-pop p{margin:0 0 .6em}
.ump-pop p:last-child{margin:0}
.ump-x{position:absolute;top:2px;right:6px;padding:2px;border:0;background:none;color:#666;font-size:20px;line-height:1;cursor:pointer}
.ump-w{pointer-events:none}
.ump-tt{font-weight:700}
.ump-mk .ump-tt{fill:var(--t)}
.ump-pop img,.ump-pop iframe{max-width:100%;height:auto}
.ump-ep,.ump-ep *{pointer-events:none}
.ump-ei{fill:#fff;font-weight:700}
.ump-el-title{margin-bottom:8px;font-weight:700;text-align:center}
.ump-el-leg{display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center;margin:12px 0 0;padding:0;list-style:none}
.ump-el-leg li,.ump-el-n{display:flex;align-items:center;gap:6px;margin:0}
.ump-el-sw{flex:none;width:14px;height:14px;border-radius:50%}
.ump-el-ph{flex:none;width:24px;height:24px;border-radius:50%;object-fit:cover}
.ump-el-rs{margin:6px 0;padding:0;list-style:none}
.ump-el-rs li{display:grid;grid-template-columns:1fr auto;gap:3px 10px;align-items:center;margin:0 0 8px}
.ump-el-bar{grid-column:1/-1;height:6px;overflow:hidden;border-radius:3px;background:#e5e5e5}
.ump-el-bar i{display:block;height:100%}
.ump-ch{margin:18px 0 0}
.ump-ch-r{display:flex;align-items:flex-end;margin:0 0 12px}
.ump-ch-ph{flex:none;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:calc(var(--bh) + 10px);height:calc(var(--bh) + 10px);margin-right:-24px;border:3px solid #fff;border-radius:50%;box-shadow:0 1px 5px rgba(0,0,0,.3);object-fit:cover;font-weight:700;z-index:2}
.ump-ch-c{flex:1;min-width:0}
.ump-ch-n{display:block;padding:0 0 3px 32px;font-size:13px;line-height:1.2}
.ump-ch-t{height:var(--bh);overflow:hidden;border-radius:calc(var(--bh) / 2);background:rgba(0,0,0,.09)}
.ump-ch-f{display:flex;align-items:center;justify-content:flex-end;box-sizing:border-box;width:var(--w);min-width:96px;height:100%;padding:0 14px 0 32px;border-radius:inherit;background:var(--c);color:var(--tc);font-size:14px;font-weight:700;transition:width 1.2s cubic-bezier(.22,1,.36,1) calc(var(--i,0) * .14s),min-width 1.2s cubic-bezier(.22,1,.36,1) calc(var(--i,0) * .14s)}
.ump-ch.ump-pre .ump-ch-f{width:0;min-width:0}
@media (prefers-reduced-motion:reduce){.ump-ch-f{transition:none}}
.ump-map .ump-pt{text-anchor:start}
.ump-mk[data-k],.ump-map a .ump-mk{cursor:pointer}
.ump-mk path{transition:filter .2s}
.ump-mk:hover path{filter:brightness(1.15)}
.ump-mk:focus-visible{outline:2px solid #000}
.ump-pl{display:inline-block;padding:4px 12px;border-radius:4px;background:var(--ic);color:#fff;text-decoration:none;font-weight:600}
.ump-pl:hover{filter:brightness(1.1)}

/* ---- 1.1.0: map styles, zoom, search, data legend, animations ---- */
.ump-map{--sea:transparent}
.ump-stage{position:relative}
.ump-map.ump-st-relief svg,.ump-map.ump-st-terrain svg,.ump-map.ump-st-dark svg,.ump-map.ump-st-vintage svg,.ump-map[style*="--sea"] svg{background:var(--sea);border-radius:10px}
.ump-st-relief .ump-rg>path,.ump-st-relief .ump-rg>a>path{stroke-width:1.6}
.ump-st-terrain{--sea:#a9d4e8;--f:#bccb98;--b:#f6f3e6;--t:#3a3a2a}
.ump-st-terrain:not(.ump-cf) .ump-rg>:nth-child(4n+2){--f:#cdc08f}
.ump-st-terrain:not(.ump-cf) .ump-rg>:nth-child(4n+3){--f:#a9bf8c}
.ump-st-terrain:not(.ump-cf) .ump-rg>:nth-child(4n+4){--f:#d6cba3}
.ump-st-terrain .ump-rg>path,.ump-st-terrain .ump-rg>a>path{stroke-width:1.4}
.ump-st-dark{--sea:#0e1a26;--f:#35495d;--b:#0e1a26;--t:#e9eff5}
.ump-st-dark .ump-rg>path,.ump-st-dark .ump-rg>a>path{stroke-width:1.4}
.ump-st-dark .ump-rg>path:hover,.ump-st-dark .ump-rg>a>path:hover{filter:brightness(1.3)}
.ump-st-vintage{--sea:#f1e7cd;--f:#e6d6ae;--b:#8a7350;--t:#5a4630}
.ump-st-vintage .ump-rg>path,.ump-st-vintage .ump-rg>a>path{stroke-width:1.3}
.ump-st-vintage svg{box-shadow:inset 0 0 40px rgba(120,90,40,.28)}
.ump-st-dark .ump-i circle{stroke:#0e1a26}
.ump-mph{filter:drop-shadow(0 2px 3px rgba(0,0,0,.4))}
.ump-mk:hover .ump-mph{filter:drop-shadow(0 3px 5px rgba(0,0,0,.5)) brightness(1.05)}
.ump-rg .ump-hl{filter:brightness(1.12) drop-shadow(0 0 5px rgba(0,0,0,.55))}
.ump-rg .ump-off{opacity:.22}
.ump-rg .ump-flash{animation:ump-flash 1.1s ease-in-out 2}
@keyframes ump-flash{50%{filter:brightness(1.45) drop-shadow(0 0 8px rgba(255,255,255,.9))}}
.ump-zc{position:absolute;top:8px;right:8px;display:flex;flex-direction:column;gap:4px;z-index:3}
.ump-zc button{width:32px;height:32px;padding:0;border:0;border-radius:6px;background:#fff;color:#222;box-shadow:0 1px 5px rgba(0,0,0,.35);font-size:19px;line-height:1;cursor:pointer}
.ump-zc button:hover{background:#f0f0f0}
.ump-zoomed .ump-stage svg{cursor:grab;touch-action:none}
.ump-zoomed .ump-stage svg.ump-drag{cursor:grabbing}
.ump-find{margin:0 0 10px}
.ump-find input{box-sizing:border-box;width:100%;max-width:420px;padding:9px 14px;border:1px solid #c3c4c7;border-radius:20px;font-size:15px;display:block;margin:0 auto}
.ump-list{display:flex;flex-wrap:wrap;gap:6px 8px;justify-content:center;margin:12px 0 0;padding:0;list-style:none}
.ump-list li{margin:0}
.ump-list li[hidden]{display:none}
.ump-list a,.ump-list button{display:inline-block;padding:5px 12px;border:1px solid rgba(0,0,0,.15);border-radius:16px;background:#fff;color:#222;font-size:13px;line-height:1.3;text-decoration:none;cursor:pointer}
.ump-list a:hover,.ump-list button:hover,.ump-list a:focus,.ump-list button:focus{border-color:var(--ic);color:var(--ic)}
.ump-list small{opacity:.65;margin-left:3px}
.ump-dl{max-width:420px;margin:14px auto 0;font-size:13px}
.ump-dl-t{margin-bottom:5px;font-weight:700;text-align:center}
.ump-dl-bar{height:12px;border-radius:6px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.ump-dl-v{display:flex;justify-content:space-between;margin-top:3px}
.ump-dl-s{display:flex;flex-wrap:wrap;gap:4px 14px;justify-content:center;margin:0;padding:0;list-style:none}
.ump-dl-s li{display:flex;align-items:center;gap:6px;margin:0}
.ump-dl-s i{width:14px;height:14px;border-radius:3px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.ump-anim.ump-pre .ump-rg>*{opacity:0}
.ump-anim:not(.ump-pre) .ump-rg>*{animation:ump-in .6s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--d,0ms)}
@keyframes ump-in{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
.ump-anim .ump-rg path{transition:transform .2s,filter .2s,fill .4s linear}
.ump-anim .ump-rg path:hover{transform:translateY(-3px)}
.ump-anim .ump-mk>:not(.ump-hit):not(title){transform-box:fill-box;transform-origin:50% 100%;animation:ump-bob 2.6s ease-in-out infinite}
@keyframes ump-bob{50%{transform:translateY(-3px)}}
@media (prefers-reduced-motion:reduce){.ump-anim .ump-rg>*,.ump-anim .ump-mk>*{animation:none!important}.ump-anim.ump-pre .ump-rg>*{opacity:1}}
.wp-admin .ump-zc{display:none}

/* ---- layers: cities, roads, railways, rivers, peaks, airports; Streets style ---- */
.ump-st-streets{--sea:#aadaff;--f:#f2efe9;--b:#c9c3b3;--t:#5f6368}
.ump-map.ump-st-streets svg{background:var(--sea);border-radius:10px}
.ump-st-streets .ump-rg>path,.ump-st-streets .ump-rg>a>path{stroke-width:1.3;stroke-dasharray:6 3;vector-effect:non-scaling-stroke}
.ump-ly{pointer-events:none;--rd:#fff;--rdc:#a8a191;--hw:#f9b233;--hwc:#d99100;--rl:#8f949a;--rv:#6fb3ea;--cd:#3c4043;--ct:#202124;--ch:#fff}
.ump-st-dark .ump-ly{--rd:#4a5d70;--rdc:#0e1a26;--hw:#c98a1f;--hwc:#0e1a26;--rl:#6f8296;--rv:#2f6c9e;--cd:#e9eff5;--ct:#e9eff5;--ch:#0e1a26}
.ump-lg,.ump-cy{display:none}
.ump-ly-on-cities .ump-lg-cities,.ump-ly-on-roads .ump-lg-roads,.ump-ly-on-rails .ump-lg-rails,.ump-ly-on-rivers .ump-lg-rivers,.ump-ly-on-peaks .ump-lg-peaks,.ump-ly-on-airports .ump-lg-airports{display:inline}
.ump-lr-1 .ump-c1,.ump-lr-2 .ump-c1,.ump-lr-2 .ump-c2,.ump-lr-3 .ump-c1,.ump-lr-3 .ump-c2,.ump-lr-3 .ump-c3,.ump-lr-4 .ump-cy{display:inline}
.ump-ly path{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.ump-l-rv{stroke:var(--rv);stroke-width:2}
.ump-l-rl{stroke:var(--rl);stroke-width:2.6}
.ump-l-rl2{stroke:#fff;stroke-width:1.2;stroke-dasharray:6 6}
.ump-st-dark .ump-l-rl2{stroke:#0e1a26}
.ump-l-ca.ump-l-r{stroke:var(--rdc);stroke-width:3}
.ump-l-co.ump-l-r{stroke:var(--rd);stroke-width:1.7}
.ump-l-ca.ump-l-s{stroke:var(--rdc);stroke-width:4.8}
.ump-l-co.ump-l-s{stroke:var(--rd);stroke-width:3.2}
.ump-l-ca.ump-l-m{stroke:var(--hwc);stroke-width:5.8}
.ump-l-co.ump-l-m{stroke:var(--hw);stroke-width:4}
.ump-s{transform:scale(var(--zs,1))}
.ump-cy circle{fill:var(--cd);stroke:var(--ch);stroke-width:1.2}
.ump-cy.ump-c1 circle{fill:#d93025}
.ump-ly .ump-ap{fill:#5f6368;stroke:none;vector-effect:none}
.ump-ly .ump-pk{fill:#8d6e63;stroke:#fff;stroke-width:.8;vector-effect:none}
.ump-ly text{font-size:12px;font-weight:500;fill:var(--ct);paint-order:stroke fill;stroke:var(--ch);stroke-width:.16em;stroke-linejoin:round;text-anchor:start;dominant-baseline:auto}
.ump-c1 text{font-size:14px;font-weight:700}
.ump-lyc{position:absolute;left:10px;bottom:10px;z-index:4;display:flex;flex-direction:column;gap:3px;padding:8px 11px;background:rgba(255,255,255,.95);color:#202124;border-radius:8px;box-shadow:0 1px 6px rgba(0,0,0,.28);font:12px/1.4 system-ui,sans-serif}
.ump-lyc label{display:flex;align-items:center;gap:6px;margin:0;cursor:pointer}
.ump-lyc input{margin:0}
.ump-st-dark .ump-lyc{background:rgba(20,32,45,.94);color:#e9eff5}
