.rms-map-shell{--rms-block-bg:#fff;--rms-map-bg:#fff;--rms-region-fill:#d9ecfb;--rms-region-stroke:#69aeea;--rms-region-stroke-width:1.25;--rms-region-hover:#bfe2fb;--rms-region-active:#2563eb;--rms-radius:12px;--rms-padding:12px;--rms-height-desktop:560px;--rms-height-tablet:460px;--rms-height-mobile:360px;--rms-label-size:10;--rms-label-weight:650;--rms-label-color:#1f2937;--rms-popup-width:320px;--rms-popup-radius:14px;--rms-popup-bg:#fff;--rms-popup-color:#111827;--rms-popup-border:#d7e3f2;position:relative;background:var(--rms-block-bg)!important;border:1px solid #d7e3f2!important;border-radius:var(--rms-radius)!important;padding:var(--rms-padding)!important;box-sizing:border-box!important;overflow:hidden!important;max-width:100%!important}.rms-map-canvas{position:relative;background:var(--rms-map-bg);border-radius:max(0px,calc(var(--rms-radius) - 4px));height:var(--rms-height-desktop);min-height:220px;overflow:hidden}.rms-map-svg{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;overflow:visible!important}.rms-map-svg,.rms-map-svg *{box-sizing:content-box!important}.rms-map-bg{fill:var(--rms-map-bg)}.rms-region{fill:var(--rms-region-fill);stroke:var(--rms-region-stroke);stroke-width:var(--rms-region-stroke-width);vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .16s ease,opacity .16s ease;transform:none!important}.rms-region:hover{fill:var(--rms-region-hover)}.rms-region.is-selected{fill:var(--rms-region-active);opacity:.95}.rms-marker{cursor:pointer}.rms-marker-dot{vector-effect:non-scaling-stroke;filter:drop-shadow(0 4px 8px rgba(37,99,235,.2))}.rms-marker-text{font:800 15px/1 system-ui,-apple-system,Segoe UI,sans-serif;text-anchor:middle;pointer-events:none;dominant-baseline:auto}.rms-label{font-size:calc(var(--rms-label-size)*1px);font-weight:var(--rms-label-weight);fill:var(--rms-label-color);paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;text-anchor:middle;dominant-baseline:middle;pointer-events:auto;cursor:pointer}.rms-popup{position:absolute;z-index:30;width:var(--rms-popup-width);max-width:calc(100% - 20px);background:var(--rms-popup-bg);color:var(--rms-popup-color);border:1px solid var(--rms-popup-border);border-radius:var(--rms-popup-radius);box-shadow:0 18px 46px rgba(15,23,42,.18);padding:14px 16px;line-height:1.45}.rms-popup[hidden]{display:none!important}.rms-popup strong{font-weight:800}.rms-popup ul{margin:8px 0 0 18px;padding:0}.rms-popup a{color:#1d4ed8}.rms-popup.is-bottom-sheet{position:fixed;left:10px!important;right:10px!important;bottom:10px!important;top:auto!important;width:auto;max-width:none;border-radius:18px;max-height:55vh;overflow:auto}.rms-filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}.rms-filter-chips button{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:7px 11px;cursor:pointer;font-weight:700}.rms-results{margin-top:14px;display:grid;gap:12px}.rms-results-cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.rms-result-card{border:1px solid #e2e8f0;border-radius:14px;padding:14px;background:#fff}.rms-result-card a{font-weight:800;text-decoration:none;color:#0f172a}.rms-result-card time{display:block;color:#64748b;font-size:12px;margin:6px 0}.rms-result-card p{margin:0;color:#334155}.rms-results-loading,.rms-results-empty,.rms-results-error{padding:14px;border-radius:12px;background:#f8fafc;color:#475569}.rms-error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b;border-radius:12px;padding:12px}@media (max-width:900px){.rms-map-canvas{height:var(--rms-height-tablet)}}@media (max-width:640px){.rms-map-shell{padding:8px!important}.rms-map-canvas{height:var(--rms-height-mobile)}}@media (prefers-reduced-motion:reduce){.rms-region,.rms-marker-dot{transition:none!important;animation:none!important}}

/* v3.1 frontend overrides: no theme transforms, global labels, marker text colors and safe animations */
.rms-map-shell .rms-label{cursor:pointer}.rms-map-shell .rms-label-bg{fill:var(--rms-label-bg,#ffffff);fill-opacity:var(--rms-label-bg-opacity,.72);stroke:#dbeafe;stroke-width:.75;vector-effect:non-scaling-stroke}.rms-map-shell .rms-label-text{font-size:calc(var(--rms-label-size)*1px);font-weight:var(--rms-label-weight);fill:var(--rms-label-color);paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.rms-map-shell .rms-marker-dot{transform-box:fill-box;transform-origin:center;transition:filter .16s ease,opacity .16s ease}.rms-map-shell .rms-marker-text{font:800 15px/1 system-ui,-apple-system,Segoe UI,sans-serif;text-anchor:middle;pointer-events:none;dominant-baseline:auto}.rms-map-shell .rms-marker-anim-halo .rms-marker-dot{animation:rmsFrontHalo 2.4s ease-in-out infinite}.rms-map-shell .rms-marker-anim-pulse .rms-marker-dot{animation:rmsFrontPulseOpacity 1.8s ease-in-out infinite}.rms-map-shell .rms-marker-anim-ring .rms-marker-dot{animation:rmsFrontRingStroke 2s ease-in-out infinite}.rms-map-shell .rms-marker-anim-breathe .rms-marker-dot{animation:rmsFrontBreatheFilter 2.6s ease-in-out infinite}@keyframes rmsFrontHalo{0%,100%{filter:drop-shadow(0 4px 8px rgba(37,99,235,.18))}50%{filter:drop-shadow(0 0 13px rgba(37,99,235,.35))}}@keyframes rmsFrontPulseOpacity{0%,100%{opacity:1}50%{opacity:.72}}@keyframes rmsFrontRingStroke{0%,100%{stroke-opacity:.95}50%{stroke-opacity:.45}}@keyframes rmsFrontBreatheFilter{0%,100%{filter:drop-shadow(0 3px 6px rgba(37,99,235,.16))}50%{filter:drop-shadow(0 7px 16px rgba(37,99,235,.26))}}@media (prefers-reduced-motion:reduce){.rms-map-shell .rms-marker-dot{animation:none!important}}

/* v3.2.4: news counts are part of region labels, not standalone bubbles */
.rms-map-shell .rms-region-counts{display:none!important}
.rms-map-shell .rms-label-count{pointer-events:none}
.rms-map-shell .rms-label-count-bg{fill:var(--rms-region-active,#2563eb);stroke:#fff;stroke-width:1.25;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px rgba(15,23,42,.18))}
.rms-map-shell .rms-label-count-text{font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:calc(var(--rms-label-size)*0.86px);font-weight:800;line-height:1;fill:#fff;text-anchor:middle;dominant-baseline:middle;stroke:none;paint-order:normal}
.rms-map-shell .rms-label .rms-label-text{dominant-baseline:middle}

/* v3.2.6: title above map and counts next to every regional label, including zero */
.rms-map-title{margin:0 0 12px!important;color:var(--rms-title-color,#111827)!important;font-size:var(--rms-title-size,24px)!important;font-weight:800!important;line-height:1.2!important;text-align:var(--rms-title-align,left)!important;letter-spacing:-.02em!important}
.rms-label-count{display:inline!important}


/* v3.2.7: cleaner title, text counts, styled markers and richer animations */
.rms-map-title{margin:4px 0 18px!important;color:var(--rms-title-color,#63a6da)!important;font-size:var(--rms-title-size,44px)!important;font-weight:500!important;line-height:1.04!important;text-align:var(--rms-title-align,center)!important;letter-spacing:.06em!important;text-transform:uppercase!important}.rms-map-shell .rms-label .rms-label-text{stroke:#f8fafc;stroke-width:3.2px;fill:var(--rms-label-color,#2f3540)}.rms-map-shell .rms-label-count-text{font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:calc(var(--rms-label-size)*1px);font-weight:var(--rms-label-weight,650);fill:var(--rms-label-color,#2f3540);text-anchor:start;dominant-baseline:middle;stroke:#f8fafc;stroke-width:3.2px;stroke-linejoin:round;paint-order:stroke;pointer-events:none}.rms-marker{cursor:pointer}.rms-marker-ripple{opacity:0;transform-origin:center;transform-box:fill-box;pointer-events:none}.rms-marker-halo{pointer-events:none}.rms-marker-ring{pointer-events:none;filter:drop-shadow(0 7px 16px rgba(93,168,222,.16))}.rms-marker-core{vector-effect:non-scaling-stroke;filter:drop-shadow(0 6px 15px rgba(93,168,222,.24));transform-origin:center;transform-box:fill-box;transition:transform .18s ease,filter .18s ease}.rms-marker:hover .rms-marker-core,.rms-marker.rms-marker-anim-hover:hover .rms-marker-core{transform:scale(1.12)}.rms-marker:hover .rms-marker-halo,.rms-marker.rms-marker-anim-hover:hover .rms-marker-halo{opacity:.3}.rms-marker.rms-marker-anim-pulse .rms-marker-core,.rms-marker.rms-marker-anim-pulse-ripple .rms-marker-core{animation:rmsMarkerPulseFront 1.9s ease-in-out infinite}.rms-marker.rms-marker-anim-ripple .rms-marker-ripple,.rms-marker.rms-marker-anim-pulse-ripple .rms-marker-ripple{animation:rmsMarkerRippleFront 2.4s ease-out infinite}.rms-marker.rms-marker-anim-ripple .rms-marker-ripple-2,.rms-marker.rms-marker-anim-pulse-ripple .rms-marker-ripple-2{animation-delay:1.2s}.rms-marker.rms-marker-anim-halo .rms-marker-halo{animation:rmsMarkerHaloGlowFront 2.2s ease-in-out infinite}.rms-marker.rms-marker-anim-breathe .rms-marker-core{animation:rmsFrontBreatheFilter 2.6s ease-in-out infinite}@keyframes rmsMarkerPulseFront{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes rmsMarkerRippleFront{0%{opacity:.48;transform:scale(1)}100%{opacity:0;transform:scale(2.35)}}@keyframes rmsMarkerHaloGlowFront{0%,100%{opacity:.18}50%{opacity:.32}}@media (prefers-reduced-motion:reduce){.rms-marker .rms-marker-core,.rms-marker .rms-marker-ripple,.rms-marker .rms-marker-halo{animation:none!important;transition:none!important}}


/* =========================================================
   Denys Sobol Unified Frontend Patch for Map Studio UA
   Visual layer only. Map behavior is unchanged.
   ========================================================= */
.rms-map-shell {
  --ds-blue: #283380;
  --ds-orange: #f39321;
  --ds-ink: #172033;
  --ds-line: #d7deea;
  --ds-bg: #f5f7fb;
  font-family: "Open Sans", "PT Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  border-radius: var(--rms-radius, 22px);
  border: 1px solid var(--ds-line);
  background: var(--rms-block-bg, #fff);
  box-shadow: 0 18px 45px rgba(23,32,51,.12);
  overflow: hidden;
}
.rms-map-title {
  color: var(--rms-title-color, var(--ds-blue));
  letter-spacing: -.035em;
  font-weight: 900;
}
.rms-map-canvas {
  border-radius: calc(var(--rms-radius, 22px) - 6px);
  background: #fff;
}
.rms-popup {
  border-radius: var(--rms-popup-radius, 14px);
  border-color: var(--rms-popup-border, var(--ds-line));
  box-shadow: 0 18px 45px rgba(23,32,51,.14);
}
.rms-filter-chips button,
.rms-results a,
.rms-results button {
  border-radius: 12px;
}
@media print {
  .rms-map-shell { box-shadow:none; border-color:#ddd; }
}

/* v3.3.1: no-tile frontend layout.
   Removes the card/tile frame around the map while keeping map behavior unchanged. */
.rms-map-shell {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  overflow: visible !important;
}
.rms-map-canvas {
  background: transparent !important;
  border-radius: 0 !important;
}
.rms-map-bg {
  fill: transparent !important;
}

/* v3.4: marker shapes and uploaded marker graphics */
.rms-marker-core{transform-box:fill-box;transform-origin:center}.rms-marker-image{pointer-events:auto;filter:drop-shadow(0 7px 15px rgba(15,23,42,.22))}.rms-marker-shape-image .rms-marker-ripple,.rms-marker-shape-image .rms-marker-halo,.rms-marker-shape-image .rms-marker-ring,.rms-marker-shape-image .rms-marker-text{display:none!important}

/* v3.4.1: cleaner pin marker visuals */
.rms-marker-shape-pin .rms-marker-text{dominant-baseline:middle}.rms-marker-shape-pin .rms-marker-ring{filter:drop-shadow(0 5px 10px rgba(15,23,42,.12))}.rms-marker-shape-pin .rms-marker-core{filter:drop-shadow(0 8px 14px rgba(15,23,42,.18))}

/* v3.4.2: rounded contour joins for softer/cartoon map edges */
.rms-region{stroke-linejoin:round;stroke-linecap:round}
