.cposm-map{width:100%;min-height:240px;border-radius:12px;overflow:hidden;background:#eef0f2;position:relative}
.cposm-map.cposm-placeholder{display:flex;align-items:center;justify-content:center;background:#f3f4f6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M0 20h40M20 0v40' stroke='%23e3e5e8'/%3E%3C/svg%3E")}
.cposm-show{padding:10px 18px;border:0;border-radius:8px;background:#111;color:#fff;font:600 14px/1 inherit;cursor:pointer}
.cposm-pin{background:none;border:0}
.cposm-pin svg{filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}
.cposm-popimg{display:block;width:220px;height:130px;object-fit:cover;border-radius:6px;margin-bottom:6px}
.leaflet-popup-content{margin:10px 12px;font-size:14px}
.leaflet-popup-content a{color:#111;text-decoration:none}

/* autocomplete */
.cposm-input{position:relative}
.cposm-ac{position:absolute;z-index:1000;background:#fff;border:1px solid #e3e5e8;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.12);margin-top:4px;min-width:280px;max-width:420px;overflow:hidden}
.cposm-ac-item{padding:9px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px}
.cposm-ac-item:hover,.cposm-ac-item.is-active{background:#faf6ea}
.cposm-ac-main{font-weight:600;font-size:14px;color:#111}
.cposm-ac-sub{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* draw area */
.cposm-drawbar a{display:inline-block;padding:6px 10px;background:#fff;color:#111;font:600 13px/1 inherit;text-decoration:none;white-space:nowrap;width:auto;height:auto}
.cposm-drawbar a + a{border-left:1px solid #e3e5e8;font-weight:500;color:#6b7280}
.cposm-drawbar a:hover{background:#faf6ea}
.leaflet-draw-toolbar a{background-color:#fff}
.leaflet-container{font-family:inherit}

/* Estatik integration */
.cposm-pin--active svg path{fill:#111}
.cposm-price-marker{background:none;border:0}
.cposm-price-marker .es-price-marker{display:inline-block;transform:translate(-50%,-100%);white-space:nowrap;background:#fff;border:1px solid #ddd;border-radius:18px;padding:4px 10px;font-weight:600;font-size:13px;box-shadow:0 2px 6px rgba(0,0,0,.18);cursor:pointer}
.cposm-price-marker .es-price-marker--active,.cposm-price-marker .es-price-marker:hover{background:#111;color:#fff;border-color:#111}
.cposm-es-popup .leaflet-popup-content{margin:0;width:300px!important}
.cposm-es-popup .es-map-popup{padding:0}
.cposm-loading{padding:16px;text-align:center;color:#888}
.es-form-map.cposm-map,.js-es-form-map{min-height:340px}
