.sp-interactive-map{border:1px solid #b9c9bd;border-radius:18px;background:#faf9f1;margin:24px 0;overflow:hidden}.sp-map-top{padding:18px 20px 12px}.sp-map-top h3{margin:0 0 7px;font-size:23px}.sp-map-top p{font-size:14px;line-height:1.5;margin:6px 0}.sp-map-search-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.sp-map-search-row label{flex:1;min-width:200px;font-size:12px;font-weight:650}.sp-map-search-row input,.sp-map-search-row select{display:block;width:100%;box-sizing:border-box;min-height:44px;margin-top:5px;border:1px solid #b4c3b7;border-radius:8px;background:#fff;color:#123d37;padding:10px;font:inherit;font-size:15px}.sp-map-results{list-style:none;margin:0;padding:0;max-height:250px;overflow:auto}.sp-map-results button,.sp-map-choice{display:block;width:100%;text-align:left;padding:10px;background:#fff;border:1px solid #d6dfd4;color:#123d37;cursor:pointer}.sp-map-layout{display:grid;grid-template-columns:245px minmax(0,1fr);border-top:1px solid #d3ddd3}.sp-map-sidebar{padding:14px;background:#f3f3e8}.sp-map-sidebar summary{font-weight:700;cursor:pointer;padding:6px}.sp-map-options{display:grid;gap:4px;margin:8px 0}.sp-map-options label{display:flex;align-items:center;gap:9px;font-size:13px;line-height:1.4;padding:7px 0;cursor:pointer}.sp-map-options input{width:18px;height:18px;accent-color:#126458;flex-shrink:0}.sp-map-actions{display:flex;gap:6px;flex-wrap:wrap}.sp-interactive-map button{font:inherit;cursor:pointer}.sp-map-actions button,.sp-map-view-actions button{font-size:12px;border:1px solid #a9bfb1;border-radius:6px;background:#fffef7;padding:9px;color:#123d37}.sp-map-sidebar p{font-size:12px;line-height:1.6}.sp-map-canvas{height:650px;width:100%;min-width:0;background:#e5eeeb;isolation:isolate}.sp-map-view-actions{display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px}.sp-map-status{font-size:12px;margin:0;padding:8px 16px;color:#53665e}.sp-map-credit{font-size:11px;line-height:1.5;padding:10px 16px;margin:0;border-top:1px solid #d3ddd3}.sp-map-pin{border:1.5px solid #fff;border-radius:8px;background:#123d37;color:#fff;box-shadow:0 1px 4px #0004;text-align:center;box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex-direction:column;font-family:Segoe UI,Arial,sans-serif;font-size:11px;line-height:1}.sp-map-pin b{font-size:12px}.sp-map-pin small{font-size:8px;margin-top:1px}.sp-map-pin-hospitals{background:#c62828;border-radius:4px;width:26px!important;height:26px!important;margin-left:-13px!important;margin-top:-13px!important}.sp-map-pin-hospitals b{font-size:17px}.sp-map-pin-industry{background:#743e65}.sp-map-pin-conventions{background:#3f4f9a}.sp-map-pin-jetties{background:#087f9a}.sp-map-pin-jetties b{font-size:20px}.sp-map-pin-towns{width:18px!important;height:18px!important;margin-left:-9px!important;margin-top:-9px!important;border-radius:50%;background:#123d37}.sp-map-pin-towns b{font-size:18px}.sp-map-pin-cluster{border-radius:50%;background:#fffef8;color:#123d37;border:2px solid #126458;box-shadow:0 0 0 4px #ffffff88}.sp-map-pin-cluster b{font-size:15px}.sp-map-canvas .leaflet-popup-content{font:14px/1.5 Segoe UI,Arial,sans-serif;max-height:290px;overflow:auto}.sp-map-canvas .leaflet-popup-content strong{display:block}.sp-map-canvas .leaflet-popup-content p{margin:7px 0}.sp-map-canvas .leaflet-popup-content a{color:#006358}.sp-map-canvas .leaflet-control-zoom a{color:#123d37}.sp-map-canvas:focus-visible,.sp-map-pin:focus-visible{outline:3px solid #d37d20;outline-offset:3px}.sp-map-expanded{position:fixed;inset:10px;z-index:10000;margin:0;overflow:auto;box-shadow:0 0 0 40px #123d3799}.sp-map-expanded .sp-map-canvas{height:calc(100vh - 280px);min-height:360px}.map-download-panel{margin:18px 0}.map-download-panel>summary{font-weight:650;padding:12px;cursor:pointer;border:1px solid #b9c9bd;border-radius:10px}.sp-interactive-map[data-ready="error"] .sp-map-layout{display:none}@media(max-width:700px){.sp-map-layout{grid-template-columns:1fr}.sp-map-sidebar{padding:8px 14px}.sp-map-options{grid-template-columns:1fr 1fr;gap:4px 14px}.sp-map-options label{font-size:12px}.sp-map-canvas{height:520px}.sp-map-top{padding:14px}.sp-map-search-row{gap:8px}.sp-map-search-row label{min-width:130px}.sp-map-expanded{inset:0;border-radius:0}.sp-map-expanded .sp-map-canvas{height:500px}.sp-map-sidebar p{margin:7px 0}}

.sp-map-pin-cluster-hospital{background:#c62828;color:#fff;border-color:#fff;border-radius:6px}.sp-map-pin-cluster-hospital b{font-size:17px}.sp-map-pin-cluster-hospital small{font-size:9px}
.sp-map-sidebar{max-height:650px;overflow-y:auto;overscroll-behavior:contain}.sp-map-expanded .sp-map-sidebar{max-height:calc(100vh - 280px)}.sp-map-place-note{font-size:11px!important;color:#53665e}.sp-map-pin-schools{background:#245580}.sp-map-pin-police{background:#182b68}.sp-map-pin-police b,.sp-map-pin-jpj b,.sp-map-pin-jpn b,.sp-map-pin-immigration b,.sp-map-pin-utc b,.sp-map-pin-post b,.sp-map-pin-government b{font-size:10px}.sp-map-pin-malls{background:#a33275}.sp-map-pin-tourism{background:#2d7047}.sp-map-pin-tourism b{font-size:21px}.sp-map-pin-jpj{background:#99591a}.sp-map-pin-jpn{background:#126f70}.sp-map-pin-immigration{background:#6c3b83}.sp-map-pin-utc{background:#4b516e}.sp-map-pin-post{background:#e2b428;color:#292b1d}.sp-map-pin-bomba{background:#d6471d}.sp-map-pin-bomba b{font-size:19px}.sp-map-pin-government{background:#596258}@media(max-width:700px){.sp-map-sidebar,.sp-map-expanded .sp-map-sidebar{max-height:320px}.sp-map-options{max-height:210px;overflow-y:auto;overscroll-behavior:contain}}

.sp-map-layer-key{display:inline-flex;align-items:center;justify-content:center;width:29px;height:24px;border-radius:5px;flex-shrink:0;background:#123d37;color:white;font-size:10px;font-weight:700}.sp-map-key-hospitals{background:#c62828;font-size:17px}.sp-map-key-industry{background:#743e65}.sp-map-key-conventions{background:#3f4f9a}.sp-map-key-jetties{background:#087f9a}.sp-map-key-schools{background:#245580}.sp-map-key-police{background:#182b68}.sp-map-key-malls{background:#a33275}.sp-map-key-tourism{background:#2d7047}.sp-map-key-jpj{background:#99591a}.sp-map-key-jpn{background:#126f70}.sp-map-key-immigration{background:#6c3b83}.sp-map-key-utc{background:#4b516e}.sp-map-key-post{background:#e2b428;color:#292b1d}.sp-map-key-bomba{background:#d6471d}.sp-map-key-government{background:#596258}@media(max-width:700px){.sp-map-layer-key{width:23px;height:22px;font-size:9px}.sp-map-options label{gap:5px;font-size:11px}}

.sp-map-layer-filter{display:block;font-size:12px;margin:8px 0}.sp-map-layer-filter input{display:block;box-sizing:border-box;width:100%;min-height:38px;background:#fff;border:1px solid #a9bfb1;border-radius:6px;padding:8px;color:#123d37;font:inherit}.sp-map-options label[hidden]{display:none}.sp-map-pin-heritage,.sp-map-key-heritage{background:#8c5f2c}.sp-map-pin-mosques,.sp-map-key-mosques{background:#1e7254}.sp-map-pin-churches,.sp-map-key-churches{background:#5c5485}.sp-map-pin-temples,.sp-map-key-temples{background:#a44424}.sp-map-pin-worship,.sp-map-key-worship{background:#6c6770}.sp-map-pin-courts,.sp-map-key-courts{background:#4c4054}.sp-map-pin-tax,.sp-map-key-tax{background:#78501d}.sp-map-pin-land,.sp-map-key-land{background:#326858}.sp-map-pin-council,.sp-map-key-council{background:#263b6e}.sp-map-pin-mosques b,.sp-map-pin-churches b,.sp-map-pin-courts b,.sp-map-pin-tax b,.sp-map-pin-land b{font-size:10px}.sp-map-pin-council b{font-size:8px}
