.csf{--csf-accent:#408d4c;--csf-ink:#1d1d1b;--csf-mute:#6b6b6b;--csf-line:#e3e3e0;--csf-bg:#fafaf7;display:grid;grid-template-columns:340px minmax(0,1fr);gap:0;border:1px solid var(--csf-line);border-radius:10px;overflow:hidden;background:#fff;color:var(--csf-ink);font:inherit;line-height:1.4;height:var(--csf-map-height,600px)}.csf *{box-sizing:border-box}.csf-side{display:flex;flex-direction:column;min-height:0;overflow-y:auto;background:var(--csf-bg);border-right:1px solid var(--csf-line);padding:14px}.csf-mapwrap,.csf-map{height:100%;min-height:0}.csf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.csf-search{display:flex;gap:6px;margin-bottom:10px}.csf-search input{flex:1;min-width:0;padding:9px 11px;border:1px solid #cfcfca;border-radius:6px;font:inherit;background:#fff}.csf input:focus,.csf select:focus,.csf button:focus-visible{outline:2px solid var(--csf-accent);outline-offset:1px}.csf-btn{padding:8px 12px;border:1px solid var(--csf-accent);background:#fff;color:var(--csf-accent);border-radius:6px;font:inherit;font-size:.9em;font-weight:600;cursor:pointer;white-space:nowrap}.csf-btn:hover{background:var(--csf-accent);color:#fff}.csf-btn:disabled{opacity:.5;cursor:wait}.csf-banner{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:.92em}.csf-banner select{flex:1;padding:7px 9px;border:1px solid #cfcfca;border-radius:6px;font:inherit;background:#fff}.csf-filters{border:1px solid var(--csf-line);border-radius:8px;background:#fff;padding:4px 10px 10px;margin-bottom:8px;font-size:.92em}.csf-filters summary{cursor:pointer;font-weight:700;padding:6px 0;color:var(--csf-ink)}.csf-group{border:0;margin:6px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:8px}.csf-group legend{grid-column:1/-1}.csf-group legend{font-size:.78em;text-transform:uppercase;letter-spacing:.06em;color:var(--csf-mute);font-weight:700;padding:0;margin-bottom:2px}.csf-check{display:flex;align-items:center;gap:5px;margin:2px 0;cursor:pointer;font-size:.95em}.csf-check input,.csf-mode input{accent-color:var(--csf-accent);width:16px;height:16px;margin:0}.csf-mode{display:flex;gap:14px;margin:8px 0 6px;color:var(--csf-mute)}.csf-mode label{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.csf-clear{padding:4px 10px;font-size:.85em}.csf-count{margin:6px 0;font-weight:700;font-size:.9em}.csf-list{list-style:none;margin:0;padding:0}.csf-list li{margin:0;padding:0}.csf-item{display:flex;align-items:flex-start;gap:9px;width:100%;text-align:left;padding:8px 6px;border:0;border-bottom:1px solid var(--csf-line);background:0 0;font:inherit;color:inherit;cursor:pointer}.csf-item:hover{background:#f0f4ee}.csf-dot{flex:none;width:11px;height:11px;margin-top:5px;border-radius:50%;background:var(--csf-pin)}.csf-item-txt{display:flex;flex-direction:column}.csf-item-name{font-weight:600;font-size:.93em}.csf-item-meta{color:var(--csf-mute);font-size:.82em}.csf-more,.csf-updated{color:var(--csf-mute);font-size:.8em;padding:8px 4px}.csf-updated{margin:6px 0 0}.csf-pin{border-radius:50%;background:var(--csf-pin,#408d4c);border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.35)}.csf .marker-cluster-small,.csf .marker-cluster-medium,.csf .marker-cluster-large{background:rgba(64,141,76,.25)}.csf .marker-cluster-small div,.csf .marker-cluster-medium div,.csf .marker-cluster-large div{background:rgba(64,141,76,.9);color:#fff;font-weight:700}.csf-pop{font-size:13px;line-height:1.4}.csf-pop-name{display:block;font-size:14px;margin-bottom:3px}.csf-tag{display:inline-block;font-size:11px;font-weight:700;color:#fff;background:var(--csf-tag);border-radius:3px;padding:1px 6px;margin-bottom:5px}.csf-pop-addr{color:#555}.csf-pop-tel{display:inline-block;margin-top:2px}.csf-pop-h{font-weight:700;margin-top:8px}.csf-pop-v{margin:3px 0 0;padding-left:18px}.csf-pop-v li{margin:0}.csf-pop-v li.csf-hit{font-weight:700;color:var(--csf-accent)}.csf-pop-dir{display:inline-block;margin-top:8px;font-weight:700;color:var(--csf-accent)}.csf-unavailable{padding:1em;border:1px solid #e3e3e0;border-radius:8px}@media (max-width:799px){.csf{grid-template-columns:minmax(0,1fr);height:auto}.csf-side,.csf-mapwrap{min-width:0}.csf-side{border-right:0;border-bottom:1px solid var(--csf-line);order:1}.csf-mapwrap{order:2;height:min(70vh,var(--csf-map-height,600px))}.csf-side{overflow:visible}.csf-list{max-height:320px;overflow-y:auto}}.leaflet-container img.leaflet-tile{max-width:none !important;max-height:none !important;width:256px;height:256px;opacity:1}.leaflet-container .leaflet-marker-icon,.leaflet-container .leaflet-marker-shadow{max-width:none !important}