/* Keep this after styles.css. Only the distributor map is affected. */
.map-layout{grid-template-columns:minmax(0,2.05fr) minmax(280px,.9fr);gap:24px;align-items:start}
.map-panel.vm-map{min-height:640px;background:#f0f3f6;border:1px solid #bdc7d1;border-radius:5px;isolation:isolate;overflow:hidden}
.vm-map .map-header{top:20px;left:22px;right:22px;font-size:11px;font-weight:700;letter-spacing:.07em;z-index:5}
.vm-map .map-mode{border-color:#aeb9c3;box-shadow:0 2px 6px #17222e08}
.vm-map .map-mode button{min-height:38px;min-width:70px;font-size:12px;font-weight:600;padding:7px 13px}
.vm-map .map-canvas{inset:78px 0 118px;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;outline-offset:-3px;overscroll-behavior:contain}
.vm-map .map-canvas svg{height:100%;width:100%;display:block;overflow:hidden}
.vm-map .map-canvas.vm-dragging,.vm-map .map-canvas.vm-dragging .country{cursor:grabbing}
.vm-map .map-canvas .country{fill:#d4dce3;stroke:#fff;stroke-width:1.25;transition:fill .12s}
.vm-map .map-canvas .country.has-market{fill:#697684;cursor:pointer}
.vm-map .map-canvas .country.has-market:hover,.vm-map .map-canvas .country.has-market:focus{fill:#3d4b5a;outline:none}
.vm-map .map-canvas .country.is-selected,.vm-map .map-canvas .country.is-selected:hover,.vm-map .map-canvas .country.is-selected:focus{fill:#101218;stroke:#fff;stroke-width:1.5}
.vm-map .map-canvas.vm-dragging .country.has-market:not(.is-selected){fill:#697684}
.vm-map .map-canvas .country.has-market:focus-visible{stroke:#111;stroke-width:3}
.vm-label-layer{pointer-events:none}
.vm-market-label text{pointer-events:auto;cursor:pointer;font-family:'DM Sans',Arial,sans-serif;font-size:11px;font-weight:650;letter-spacing:0;fill:#14202b;stroke:#f7f9fb;stroke-width:3.5px;stroke-linejoin:round;paint-order:stroke fill}
.vm-market-label.is-selected text,.vm-market-label.is-hovered text{font-weight:800;fill:#111116;stroke:#fff;stroke-width:4px}
.vm-market-dot{fill:#283746;stroke:#fff;stroke-width:1.5px}
.vm-market-label.is-selected .vm-market-dot{fill:#fff;stroke:#111;stroke-width:2px}
.vm-label-leader{stroke:#6b7a88;stroke-width:.7px;opacity:.75}
.vm-controls{position:absolute;right:17px;top:90px;z-index:6;display:flex;flex-direction:column;align-items:center;gap:9px}
.vm-controls button{width:44px;min-height:44px;padding:0;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #aebac5;border-radius:3px;color:#111116;box-shadow:0 2px 8px #26384a13;line-height:1;transition:background .14s,box-shadow .14s}
.vm-controls button:hover:not(:disabled){background:#e2e9ef;box-shadow:0 3px 10px #26384a26}
.vm-controls button:disabled{opacity:.36;cursor:default;box-shadow:none}
.vm-controls button:focus-visible,.vm-expanded-close:focus-visible,.vm-partner-details:focus-visible{outline:3px solid #507fa6;outline-offset:3px}
.vm-zoom-controls{display:flex;flex-direction:column;border:1px solid #aebac5;border-radius:4px;overflow:hidden;background:white;box-shadow:0 2px 8px #26384a13}
.vm-zoom-controls button{border:0;box-shadow:none;border-radius:0;font-size:28px;font-family:Arial,sans-serif;font-weight:400;width:42px;min-height:43px}
.vm-zoom-level{display:block;text-align:center;font-size:10px;color:#5a6671;line-height:1;padding:3px 0;border-top:1px solid #edf0f3;border-bottom:1px solid #edf0f3;min-width:42px}
.vm-icon-button svg{height:21px;width:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.vm-controls .vm-expand-control{min-height:57px;flex-direction:column;gap:4px}
.vm-expand-control span{font-size:9px;font-weight:600}
.vm-country-readout{position:absolute;left:22px;bottom:83px;display:flex;align-items:center;gap:8px;max-width:calc(100% - 100px);font-size:12px;font-weight:650;color:#111116;line-height:1.35;min-height:20px;z-index:5}
.vm-readout-dot{height:8px;width:8px;background:#111116;border:1px solid #111116;border-radius:50%;flex:none}
.vm-country-readout.is-previewing .vm-readout-dot{background:#7f8c98;border-color:#7f8c98}
.vm-map .vm-instructions{position:absolute;left:22px;bottom:51px;margin:0;padding:4px 0;line-height:1.4;font-size:11px;color:#536371;max-width:calc(100% - 44px);transition:color .15s,background .15s;z-index:5}
.vm-instructions kbd{font-family:inherit;font-size:10px;font-weight:700;background:#fff;border:1px solid #c4ced7;border-bottom-width:2px;border-radius:3px;padding:1px 4px;color:#263745}
.vm-map .vm-instructions.is-emphasized{color:#111116;background:#fff;box-shadow:0 0 0 6px #fff}
.vm-touch-hint{display:none}
.vm-map .map-legend{bottom:25px;left:22px;right:22px;font-size:10px;color:#475765;justify-content:flex-start;gap:24px;line-height:1.3}
.vm-map .legend-dot{background:#697684;width:9px;height:9px;border-radius:2px;flex:none}
.vm-map .legend-item.selected .legend-dot{background:#111116}
.vm-map .map-attribution{font-size:8px;bottom:6px;right:10px;color:#677887}
.vm-expanded-close,.vm-partner-details{display:none}
.vm-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.map-panel.vm-map.is-expanded{position:fixed;inset:16px;min-height:0;width:auto;height:auto;margin:0;z-index:1002;isolation:auto;border:1px solid #aebbc7;border-radius:7px;box-shadow:0 0 0 200vmax #0d1623b8,0 20px 80px #0005}
.vm-map.is-expanded .map-header{right:175px}
.vm-map.is-expanded .map-canvas{inset:78px 12px 118px}
.vm-map.is-expanded .vm-expanded-close{display:flex;align-items:center;gap:16px;position:absolute;right:20px;top:23px;z-index:8;background:#111116;border:1px solid #111116;border-radius:3px;color:white;min-height:40px;padding:8px 14px;font-size:12px;font-weight:600;line-height:1}
.vm-expanded-close span{font-size:21px;font-weight:400}
.vm-map.is-expanded .vm-partner-details{display:inline-flex;align-items:center;justify-content:center;position:absolute;right:22px;bottom:66px;min-height:42px;border:1px solid #111116;border-radius:3px;background:#111116;color:white;padding:11px 17px;font-size:12px;font-weight:600;z-index:7}
.vm-map.is-expanded .vm-country-readout{max-width:calc(100% - 240px)}
@media (hover:none),(pointer:coarse){.vm-desktop-hint{display:none}.vm-touch-hint{display:inline}.vm-controls button{min-height:46px;width:46px}.vm-zoom-controls button{width:44px}.vm-map .map-mode button{min-height:42px}}
@media(max-width:1050px){.map-layout{grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:18px}.vm-map .map-header{font-size:10px;left:18px;right:18px}.vm-map .map-mode button{min-width:62px;padding:7px 9px}.vm-map .map-legend{font-size:9px;gap:16px;left:18px}.vm-map .vm-instructions{left:18px;font-size:10px}.vm-country-readout{left:18px}.vm-map .map-header>span{max-width:140px;line-height:1.5}}
@media(max-width:820px){.map-layout{grid-template-columns:1fr}.map-panel.vm-map{min-height:620px}.map-layout .country-panel{padding:26px;display:block}.vm-map .map-header>span{max-width:none}.vm-map .map-header{font-size:11px}.vm-map .vm-instructions{font-size:11px}.vm-map .map-legend{font-size:10px}}
@media(max-width:520px){.map-panel.vm-map{min-height:590px}.vm-map .map-header{left:15px;right:15px;top:15px;align-items:center}.vm-map .map-header>span{font-size:9px;max-width:125px;line-height:1.5}.vm-map .map-mode button{min-width:57px;min-height:38px;font-size:11px;padding:7px 9px}.vm-map .map-canvas{inset:73px 0 126px}.vm-controls{right:11px;top:86px;gap:8px}.vm-controls button{width:40px;min-height:40px}.vm-zoom-controls button{width:38px;min-height:40px}.vm-zoom-level{min-width:38px;font-size:9px}.vm-market-label text{font-size:10px;stroke-width:3.2px}.vm-country-readout{left:15px;bottom:89px;font-size:11px;max-width:calc(100% - 35px)}.vm-map .vm-instructions{left:15px;bottom:55px;max-width:calc(100% - 30px);font-size:10px}.vm-map .map-legend{left:15px;right:15px;bottom:29px;gap:15px;font-size:8px}.vm-map .map-attribution{font-size:7px;bottom:7px}.map-panel.vm-map.is-expanded{inset:7px}.vm-map.is-expanded .map-header{top:15px;right:15px;align-items:flex-start}.vm-map.is-expanded .map-header>span{max-width:110px}.vm-map.is-expanded .vm-expanded-close{right:15px;top:68px;min-height:35px;font-size:11px;padding:7px 10px;gap:9px}.vm-map.is-expanded .map-canvas{inset:112px 0 160px}.vm-map.is-expanded .vm-controls{top:119px}.vm-map.is-expanded .vm-country-readout{bottom:130px;max-width:calc(100% - 30px)}.vm-map.is-expanded .vm-partner-details{bottom:78px;left:15px;right:auto;min-height:35px;padding:8px 12px;font-size:10px}.vm-map.is-expanded .vm-instructions{bottom:46px}.vm-map.is-expanded .map-legend{bottom:22px;font-size:7px;gap:12px}.vm-map.is-expanded .map-attribution{bottom:5px;font-size:6px}}
@media(prefers-reduced-motion:reduce){.vm-map *{transition:none!important}}
@media print{.vm-controls,.vm-instructions,.vm-expanded-close,.vm-partner-details{display:none!important}.map-panel.vm-map{min-height:480px}.map-panel.vm-map.is-expanded{position:relative;inset:auto;box-shadow:none}}
