/* VigVag: цветовые типы меток — WEB и PWA.
   Работы = оранжевый; услуги = зелёный; техника = синий;
   материалы = янтарный; компании = фиолетовый.
   У маркера и легенды один и тот же CSS-токен. */
:root{
 --vv-map-works:#f97316;
 --vv-map-services:#22c55e;
 --vv-map-equipment:#3b82f6;
 --vv-map-materials:#eab308;
 --vv-map-company:#a78bfa;
 --vv-map-other:#94a3b8;
}
.vv-native-map .vv-native-map__marker.category-works,
.vvm-map-panel .vv-native-map__marker.category-works{background:var(--vv-map-works);color:#1b150c;}
.vv-native-map .vv-native-map__marker.category-services,
.vvm-map-panel .vv-native-map__marker.category-services{background:var(--vv-map-services);color:#073719;}
.vv-native-map .vv-native-map__marker.category-equipment,
.vvm-map-panel .vv-native-map__marker.category-equipment{background:var(--vv-map-equipment);color:white;}
.vv-native-map .vv-native-map__marker.category-materials,
.vvm-map-panel .vv-native-map__marker.category-materials{background:var(--vv-map-materials);color:#312300;}
.vv-native-map .vv-native-map__marker.category-company,
.vvm-map-panel .vv-native-map__marker.category-company{background:var(--vv-map-company);color:#231444;}
.vv-native-map .vv-native-map__marker.category-other,
.vvm-map-panel .vv-native-map__marker.category-other{background:var(--vv-map-other);color:#142338;}
.vv-native-map .vv-native-map__marker.is-approximate {
 outline:2px dashed #345477;outline-offset:3px;
}
.vvm-map-legend{flex-wrap:wrap;gap:8px 12px}
.vvm-map-legend i.category-works,
.vv-map-type-legend i.category-works{background:var(--vv-map-works)}
.vvm-map-legend i.category-services,
.vv-map-type-legend i.category-services{background:var(--vv-map-services)}
.vvm-map-legend i.category-equipment,
.vv-map-type-legend i.category-equipment{background:var(--vv-map-equipment)}
.vvm-map-legend i.category-materials,
.vv-map-type-legend i.category-materials{background:var(--vv-map-materials)}
.vvm-map-legend i.category-company,
.vv-map-type-legend i.category-company{background:var(--vv-map-company)}
.vvm-result-icon.category-works,.vv-map-result-icon.category-works{background:#ffedd5;color:#a63b06}
.vvm-result-icon.category-services,.vv-map-result-icon.category-services{background:#dcfce7;color:#166534}
.vvm-result-icon.category-equipment,.vv-map-result-icon.category-equipment{background:#dbeafe;color:#1d4ed8}
.vvm-result-icon.category-materials,.vv-map-result-icon.category-materials{background:#fef9c3;color:#854d0e}
.vvm-result-icon.category-company,.vv-map-result-icon.category-company{background:#ede9fe;color:#6d28d9}
.vv-map-type-legend{
 display:flex;flex-wrap:wrap;gap:7px 13px;
 padding:11px 12px;margin:0 0 12px;
 border:1px solid #e2e8f0;border-radius:14px;background:white;
}
.vv-map-type-legend span{display:inline-flex;align-items:center;gap:6px;font:700 12px/1.35 system-ui,sans-serif;color:#475467}
.vv-map-type-legend i{width:11px;height:11px;border-radius:50%;display:block;flex:0 0 11px}
/* Category filter shared by web and PWA */
.vv-map-category-filter{display:flex;flex-direction:column;gap:7px;margin:12px 0;padding:0 2px}.vv-map-category-filter label{font-size:13px;font-weight:700}.vv-map-category-filter select{width:100%;min-height:44px;padding:9px 12px;border:1px solid #aab4bc;border-radius:11px;background:var(--vv-surface,#fff);color:var(--vv-text,#20242a);font:inherit}.vv-map-category-filter select:focus-visible{outline:2px solid #ff8a24;outline-offset:2px}
