.monitoring-map-summary{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.monitoring-map-stat{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:7px 11px;background:#fff;font-size:13px}
.monitoring-map-stat strong{color:var(--red);font-size:16px}
.monitoring-map-controls{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:0 0 14px}
.monitoring-map-field{display:grid;gap:5px;min-width:min(320px,100%)}
.monitoring-map-field label{font-size:12px;font-weight:800}
.monitoring-map-field select,.monitoring-map-field input{width:100%;border:1px solid var(--line);border-radius:6px;background:#fff;padding:10px 11px;color:var(--ink);font:inherit}
.monitoring-map-field select{padding-right:34px}
.monitoring-map-reset{border:1px solid var(--red);border-radius:6px;background:var(--red);color:#fff;font-weight:700;padding:10px 14px;cursor:pointer}
.monitoring-map-reset:hover{background:var(--red-dark)}
.monitoring-map-reset:focus-visible,.monitoring-legend-button:focus-visible,.monitoring-map-field input:focus-visible,.monitoring-map-field select:focus-visible{outline:3px solid #b85a10;outline-offset:3px}
.monitoring-map-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px;align-items:stretch}
.monitoring-map{height:clamp(480px,62vw,680px);min-height:480px;border:1px solid var(--line);border-radius:8px;background:#e8efe3;overflow:hidden;z-index:0}
.monitoring-map-fallback{height:100%;display:grid;place-items:center;padding:28px;text-align:center;background:#f4f7f1;color:#000}
.monitoring-map-key{border:1px solid var(--line);border-radius:8px;background:#fff;padding:15px;overflow:auto;max-height:680px}
.monitoring-map-key h4{font:700 15px Arial,Helvetica,sans-serif;margin:0 0 10px}
.monitoring-legend{display:grid;gap:7px}
.monitoring-legend-button,.monitoring-legend-row{width:100%;display:grid;grid-template-columns:15px 1fr;gap:9px;align-items:start;border:0;border-radius:6px;background:#fff;color:#000;text-align:left;padding:7px 6px;font:inherit}
.monitoring-legend-button{cursor:pointer}
.monitoring-legend-button:hover,.monitoring-legend-button[aria-pressed="true"]{background:#eef3eb}
.monitoring-legend-row{opacity:.62}
.monitoring-swatch{width:13px;height:13px;border-radius:50%;border:2px solid #111;margin-top:3px}
.monitoring-legend-name{display:block;font-size:12px;line-height:1.25}
.monitoring-legend-code{display:block;font-weight:800;font-size:12px}
.monitoring-awaiting{display:inline-block;margin-top:3px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.monitoring-map-caption{margin:13px 0 0;font-size:12px;color:var(--muted)}
.monitoring-map .leaflet-popup-content-wrapper{border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.18)}
.monitoring-map .leaflet-popup-content{margin:14px 16px;min-width:240px;max-width:310px}
.monitoring-map .leaflet-control-zoom{border:1px solid #5e6b59;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.monitoring-map .leaflet-control-zoom a{width:44px;height:44px;line-height:44px;color:#111;font-size:26px}
.monitoring-map .leaflet-control-zoom a:hover{background:#edf3e9;color:#111}
.monitoring-map .leaflet-control-zoom a:focus-visible{outline:3px solid #b85a10;outline-offset:-3px}
.monitoring-popup-title{font:700 17px/1.25 Arial,Helvetica,sans-serif;margin:0 0 9px;color:#193214}
.monitoring-popup-list{display:grid;gap:6px;margin:0}
.monitoring-popup-list div{display:grid;grid-template-columns:88px 1fr;gap:8px;border-bottom:1px solid #e2e6df;padding-bottom:5px}
.monitoring-popup-list div:last-child{border-bottom:0;padding-bottom:0}
.monitoring-popup-list dt{font-size:11px;font-weight:800;color:#000}
.monitoring-popup-list dd{font-size:12px;line-height:1.35;margin:0;color:#000}
.monitoring-popup-privacy{margin:10px 0 0;border-top:1px solid #cbd5c5;padding-top:8px;font-size:11px;line-height:1.35;color:#333}
@media(max-width:900px){.monitoring-map-layout{grid-template-columns:1fr}.monitoring-map-key{max-height:none}.monitoring-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.monitoring-map{height:520px;min-height:420px}.monitoring-map-field{min-width:100%}.monitoring-map-reset{width:100%}.monitoring-legend{grid-template-columns:1fr}}
