.cdsa-map-shell{position:relative;z-index:99999}
.cdsa-map-wrap{max-width:none;margin:0 auto;position:relative;z-index:99999}
.cdsa-map{border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.12);border:1px solid rgba(0,0,0,.08)}
.cdsa-map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:10px 0 12px}
.cdsa-map-toolbar__left,.cdsa-map-toolbar__right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.cdsa-map-toolbar__label{font-weight:700}
.cdsa-map-filter{padding:10px 12px;border-radius:12px;border:1px solid rgba(0,0,0,.15);background:#fff;min-width:180px}
.cdsa-map-locate{padding:10px 12px;border-radius:12px;border:1px solid rgba(0,0,0,.15);background:#fff;cursor:pointer;font-weight:700}
.cdsa-map-locate:disabled{opacity:.6;cursor:not-allowed}
.cdsa-map-legend{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1px solid rgba(0,0,0,.10);background:rgba(255,255,255,.8);backdrop-filter:blur(6px)}
.cdsa-legend-item{display:flex;align-items:center;gap:6px;font-weight:700;font-size:13px}
.cdsa-legend-dot{width:12px;height:12px;border-radius:999px;display:inline-block}
.cdsa-legend-dot--club{background:#2563eb}
.cdsa-legend-dot--structure{background:linear-gradient(135deg,#ef4444,#f59e0b)}

.cdsa-pin{background:transparent}
.cdsa-pin__dot{display:block;width:14px;height:14px;border-radius:999px;box-shadow:0 6px 18px rgba(0,0,0,.25);border:3px solid #fff}
.cdsa-pin--club .cdsa-pin__dot{background:#2563eb}
.cdsa-pin--structure .cdsa-pin__dot{background:linear-gradient(135deg,#ef4444,#f59e0b)}

.leaflet-popup-content{margin:10px 12px}
.cdsa-popup{min-width:240px;max-width:320px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif}
.cdsa-popup__head{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.cdsa-popup__logo{width:44px;height:44px;border-radius:12px;object-fit:cover;border:1px solid rgba(0,0,0,.10)}
.cdsa-popup__titlewrap{display:flex;flex-direction:column;gap:6px}
.cdsa-popup__title{font-weight:900;font-size:15px;line-height:1.2}
.cdsa-popup__badge{align-self:flex-start;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:900}
.cdsa-popup__badge--club{background:rgba(37,99,235,.12);color:#1d4ed8}
.cdsa-popup__badge--structure{background:linear-gradient(135deg,rgba(239,68,68,.15),rgba(245,158,11,.15));color:#b45309}
.cdsa-popup__row{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px dashed rgba(0,0,0,.12)}
.cdsa-popup__row:first-child{border-top:none;padding-top:0}
.cdsa-popup__k{opacity:.7;font-weight:700;font-size:12px;min-width:80px}
.cdsa-popup__v{font-weight:800;font-size:12.5px;text-align:right}
.cdsa-popup__v a{text-decoration:none}
.cdsa-popup__v a:hover{text-decoration:underline}


/* Marker icons */
.cdsa-marker{width:34px;height:34px;display:flex;align-items:center;justify-content:center}
.cdsa-marker svg{width:34px;height:34px;filter:drop-shadow(0 6px 10px rgba(0,0,0,.25))}
.cdsa-marker--me svg{width:30px;height:30px}
