.teardrop-marker-container{position:relative!important;z-index:1000}.teardrop-marker{position:relative;display:flex;align-items:center;justify-content:center;transform-origin:center bottom;transition:transform .2s cubic-bezier(.2,.8,.2,1);will-change:transform}.teardrop-marker.selected{transform:scale(1.15);z-index:1001}.teardrop-marker:hover{transform:scale(1.08)}.teardrop-marker.selected:hover{transform:scale(1.2)}.teardrop-marker svg{display:block;transition:filter .2s ease}.teardrop-marker:hover svg{filter:brightness(1.05) saturate(1.1)}.marker-pulse-ring{position:absolute;top:50%;left:50%;width:calc(var(--marker-size) * 1.8);height:calc(var(--marker-size) * 1.8);border:2px solid var(--marker-color);border-radius:50%;transform:translate(-50%,-50%);opacity:.6;animation:pulse-ring 2s infinite}@keyframes pulse-ring{0%{transform:translate(-50%,-50%) scale(.8);opacity:.8}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.3}to{transform:translate(-50%,-50%) scale(1.4);opacity:0}}.teardrop-marker.entering{animation:markerDrop .6s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes markerDrop{0%{transform:translateY(-100px) scale(.8);opacity:0}60%{transform:translateY(8px) scale(1.1);opacity:1}80%{transform:translateY(-4px) scale(.95)}to{transform:translateY(0) scale(1);opacity:1}}.leaflet-popup{margin-bottom:20px}.leaflet-popup-content-wrapper{border-radius:12px!important;box-shadow:0 8px 32px rgba(0,0,0,.15)!important;border:1px solid rgba(255,255,255,.2)!important;backdrop-filter:blur(10px);background:rgba(255,255,255,.95)!important;transform-origin:center bottom;animation:bubblePopIn .35s cubic-bezier(.34,1.56,.64,1) forwards}.leaflet-popup-content{margin:0!important;padding:0!important}.leaflet-popup-tip{background:transparent!important;border:none!important;width:20px!important;height:12px!important;transform-origin:center top;animation:tipBubbleIn .35s cubic-bezier(.34,1.56,.64,1) forwards}.leaflet-popup-tip:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:16px;height:12px;background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.2);border-radius:50% 50% 50% 50%/60% 60% 40% 40%;box-shadow:0 2px 8px rgba(0,0,0,.1)}@keyframes bubblePopIn{0%{opacity:0;transform:translateY(20px) scale(.3)}50%{opacity:.8;transform:translateY(-3px) scale(1.05)}70%{opacity:1;transform:translateY(1px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tipBubbleIn{0%{opacity:0;transform:scale(.3)}60%{opacity:.7;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.leaflet-popup.popup-closing .leaflet-popup-content-wrapper{animation:bubblePopOut .25s cubic-bezier(.36,0,.66,-.56) forwards}.leaflet-popup.popup-closing .leaflet-popup-tip{animation:tipBubbleOut .25s cubic-bezier(.36,0,.66,-.56) forwards}@keyframes bubblePopOut{0%{opacity:1;transform:translateY(0) scale(1)}30%{opacity:.7;transform:translateY(-2px) scale(1.02)}to{opacity:0;transform:translateY(15px) scale(.8)}}@keyframes tipBubbleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.airbnb-popup-container .leaflet-popup-content-wrapper{background:white!important;border-radius:16px!important;box-shadow:0 8px 32px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.08)!important;border:1px solid rgba(0,0,0,.08)!important;overflow:hidden}.airbnb-popup-container .leaflet-popup-tip:before{background:white;border:1px solid rgba(0,0,0,.08);box-shadow:0 2px 8px rgba(0,0,0,.08)}.airbnb-popup{position:relative;transform-origin:center bottom}.popup-content{display:flex;flex-direction:column;gap:0}.popup-image{position:relative;width:100%;height:120px;overflow:hidden}.popup-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.popup-image:hover img{transform:scale(1.05)}.popup-info{padding:16px;background:white}.category-badge{display:inline-block;background:var(--category-color,#9E9E9E);color:white;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.popup-title{font-size:16px;font-weight:700;color:#1a1a1a;margin:0 0 8px;line-height:1.3}.popup-summary{font-size:14px;color:#666;margin:0 0 12px;line-height:1.4}.popup-metadata{gap:12px;margin-bottom:16px}.popup-metadata,.rating{display:flex;align-items:center}.rating{gap:4px;font-size:14px;color:#1a1a1a;font-weight:600}.star{color:#FFD700;font-size:16px}.price{color:#1a1a1a}.popup-cta,.price{font-size:14px;font-weight:600}.popup-cta{background:linear-gradient(135deg,var(--primary-400),var(--primary-700));color:white;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px rgba(110,72,236,.3);width:100%}.popup-cta:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(236,72,153,.4);background:linear-gradient(135deg,var(--primary-700),var(--primary-900))}.popup-cta:active{transform:translateY(0);box-shadow:0 2px 8px var(--primary-900)}@media (max-width:768px){.teardrop-marker{touch-action:manipulation}.popup-cta{padding:8px 12px;font-size:.8rem;min-height:48px}.category-badge{font-size:12px;padding:6px 12px}}@media (min-resolution:192dpi){.teardrop-marker svg{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}.popup-cta:focus,.teardrop-marker:focus{outline:3px solid #4A90E2;outline-offset:2px}@media (prefers-reduced-motion:reduce){.leaflet-popup-content-wrapper,.popup-cta,.popup-image img,.teardrop-marker{animation:none!important;transition:none!important}.marker-pulse-ring{animation:none!important}}