.cbh-map,#city-portal-map.city-map,#cbh-province-map,.festival-hub__map,.listing-map #map,.listing-map #main-map,#main-map{background:#e8eef4}#cbh-province-map{min-height:320px;height:min(62vh,520px);width:100%;border-radius:12px}@media(min-width:768px){#cbh-province-map{min-height:420px;height:480px}}.cbh-province-map{display:grid;gap:16px;margin-bottom:32px}@media(min-width:768px){.cbh-province-map{grid-template-columns:1fr minmax(240px,320px);align-items:start}}.cbh-province-map__stage{position:relative}.cbh-province-map__panel{background:#fff;border-radius:12px;padding:16px;box-shadow:0 10px 28px #0f3d5614}.cbh-province-map__list{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:280px;overflow:auto}.cbh-province-map__list a{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border-radius:10px;color:#0a2a48;text-decoration:none;background:#f8fbfd}.cbh-province-map__list a:hover,.cbh-province-map__list a:focus-visible{background:#e8f4ee;text-decoration:none}.cbh-province-map__list strong{display:block;font-size:.95rem}.cbh-province-map__list small{color:#64748b}.cbh-province-map__credit{margin:8px 0 0;color:#64748b;font-size:.8rem}.cbh-province-legend{margin:12px 0 0;font-size:.8rem;color:#334155}.cbh-province-legend ol{display:flex;flex-wrap:wrap;gap:8px 12px;list-style:none;margin:8px 0 0;padding:0}.cbh-province-legend li{display:inline-flex;align-items:center;gap:6px}.cbh-province-legend span{width:16px;height:12px;border-radius:3px;display:inline-block}.cbh-map-popup{display:grid;gap:4px;min-width:160px}.cbh-map-popup em{font-style:normal;color:#64748b;font-size:.75rem}.cbh-map-popup strong{color:#0a2a48}.cbh-map-popup a,.cbh-map-popup__btn{text-decoration:none}.cbh-map-popup__btn{display:inline-flex;align-items:center;justify-content:center;margin-top:6px;padding:6px 12px;border-radius:5px;background:#0f766e;color:#fff!important;font-weight:600}.city-map-filters button,.city-map-toolbar .cbh-map-btn,.cbh-map-btn{border-radius:5px!important}.cbh-map-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid #dbe4ee;background:#fff;color:#0a2a48;padding:7px 12px;font-weight:600;text-decoration:none}.cbh-map-btn.is-active{background:#0f766e;border-color:#0f766e;color:#fff}.city-map-place,.city-map-place:hover,.city-map-place:focus{text-decoration:none}.city-map-layout{position:relative}@media(max-width:767.98px){.city-map-layout{display:flex;flex-direction:column;gap:0}.city-map-stage .city-map,#city-portal-map.city-map{min-height:280px;height:52vh}.city-map-list,[data-city-map-sheet]{position:relative;min-height:0;max-height:none;border-radius:16px 16px 12px 12px;margin-top:-18px;z-index:2;box-shadow:0 -8px 24px #0a2a481f}[data-city-map-handle]{display:flex;justify-content:center;padding:10px 0 4px;cursor:pointer}[data-city-map-handle] span{width:42px;height:4px;border-radius:999px;background:#cbd5e1}}@media(min-width:768px){[data-city-map-handle]{display:none}}.leaflet-popup a{text-decoration:none}.cbh-admin-picker{min-height:220px;height:240px;border-radius:10px;background:#e8eef4}
