@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animation-delay-200{animation-delay:.2s}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@import "https://api.mapbox.com/mapbox-gl-js/v2.15.0/mapbox-gl.css";*{margin:0;padding:0;box-sizing:border-box}body{overflow:hidden}.property-search-container,body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.property-search-container{display:flex;height:100vh;width:100vw;position:relative}#map{position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;z-index:1!important}.main-content{flex:1;position:relative;background:#f8f9fa}.map-container{width:100%;height:100%}.map-loading{display:flex;align-items:center;justify-content:center;height:100%;font-size:18px;color:#666}.workspace-view{display:flex;height:100%;background:#f8f9fa}.property-list{flex:1;padding:30px;overflow-y:auto}.property-list h2{margin:0 0 20px;color:#121c42}.property-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.property-details-panel{width:400px;background:white;border-left:1px solid #e0e0e0;padding:30px;overflow-y:auto}.property-card{background:white;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:all .3s ease;position:relative}.property-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.property-card.comparing{border:2px solid #667eea}.property-image{position:relative;height:200px;overflow:hidden}.property-image img{width:100%;height:100%;object-fit:cover}.featured-badge{position:absolute;top:10px;left:10px;background:#10b981;color:white;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.favorite-btn{position:absolute;top:10px;right:10px;background:white;border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all .3s ease}.favorite-btn.active{background:#ef4444;color:white}.property-info{padding:16px}.property-price{font-size:24px;font-weight:700;color:#121c42;margin-bottom:8px}.property-details{color:#666;font-size:14px;margin-bottom:8px}.property-address{color:#999;font-size:14px;margin-bottom:16px}.property-actions{display:flex;gap:10px}.property-detail-content{position:relative}.property-detail-content img{width:100%;height:250px;object-fit:cover;border-radius:8px;margin-bottom:20px}.property-detail-content h2{color:#121c42;margin-bottom:10px}.property-detail-content p{color:#666;margin-bottom:10px}.amenities{display:flex;gap:15px;margin:20px 0}.amenities span{padding:8px 12px;background:#f0f0f0;border-radius:20px;font-size:14px}.detail-actions{display:flex;gap:10px;margin-top:20px}.close-btn{position:absolute;top:0;right:0;background:white;border:1px solid #e0e0e0;width:32px;height:32px;border-radius:50%;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10}.btn-primary{background:#667eea;color:white;border:none;padding:10px 20px;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-primary:hover{background:#5a67d8}.btn-secondary{background:white;color:#121c42;border:1px solid #121c42;padding:10px 20px;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#f0f4ff;color:#667eea;border-color:#667eea}.chat-container{width:100%;height:100%;background:white;display:flex;flex-direction:column;transition:transform .3s ease,width .3s ease}.chat-container.minimized{display:none}.chat-container.expanded{width:100%}.toggle-btn{display:none}.chat-container.minimized .toggle-btn svg{transform:rotate(180deg)}.status-indicator{width:8px;height:8px;background:#10b981;border-radius:50%;animation:status-pulse 2s infinite}@keyframes status-pulse{0%{box-shadow:0 0 0 0 rgba(16,185,129,.7)}70%{box-shadow:0 0 0 10px rgba(16,185,129,0)}to{box-shadow:0 0 0 0 rgba(16,185,129,0)}}.comparison-bar{padding:12px 16px;background:#f3f4f6;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;display:none}.comparison-bar.active{display:flex}.compare-btn{padding:6px 12px;background:#121c42;color:white;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.compare-btn:hover{background:#667eea}.filter-chip{padding:8px 16px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;font-size:14px;cursor:pointer;transition:all .2s ease}.filter-chip.active,.filter-chip:hover{background:#667eea;color:white;border-color:#667eea}.chat-header{padding:16px 20px;background:#121c42;color:white;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7eb}.chat-header h2{font-size:16px;font-weight:600;margin:0 0 0 12px;flex:1}.chat-title{gap:10px}.chat-avatar,.chat-title{display:flex;align-items:center}.chat-avatar{width:32px;height:32px;background:white;color:#667eea;border-radius:50%;justify-content:center;font-weight:600}.chat-controls{display:flex;gap:10px}.chat-controls button{background:rgba(255,255,255,.2);border:none;color:white;width:24px;height:24px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.chat-messages{flex:1!important;overflow-y:auto!important;padding:20px 12px 20px 20px!important;display:flex!important;flex-direction:column!important;gap:16px!important;background:transparent!important}.message{display:flex!important;gap:12px!important;animation:slideIn .3s ease-out!important;margin-right:0!important;margin-bottom:0!important}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{flex-direction:row-reverse}.message-avatar{width:32px!important;height:32px!important;border-radius:50%!important;background:linear-gradient(135deg,#667eea,#764ba2)!important;color:white!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:14px!important;font-weight:600!important;flex-shrink:0!important}.message.bot .message-avatar{background:linear-gradient(135deg,#121c42,#1e3a8a)!important}.message.user .message-avatar{background:linear-gradient(135deg,#667eea,#764ba2)!important}.message-content{max-width:85%!important}.message .message-text{background:#f3f4f6!important;padding:12px 16px!important;border-radius:12px!important;font-size:14px!important;line-height:1.5!important;color:#1f2937!important}.message.user .message-text{background:#667eea!important;color:white!important}.suggestions-container{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.suggestion-chip{display:inline-flex;align-items:center;padding:8px 16px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.suggestion-chip:hover{background:#667eea;border-color:#667eea;color:white;transform:translateY(-1px);box-shadow:0 2px 8px rgba(102,126,234,.2)}.suggestion-chip:active{transform:translateY(0);box-shadow:0 1px 4px rgba(102,126,234,.3)}.property-list{margin-top:12px;display:flex;flex-direction:column;gap:12px}.message-content .property-card{background:white!important;border:1px solid #e5e7eb!important;border-radius:12px!important;padding:12px 20px 12px 12px!important;display:flex!important;gap:12px!important;cursor:pointer!important;transition:all .2s ease!important;position:relative!important;overflow:hidden!important}.message-content .property-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)!important;transform:translateY(-2px)!important}.message-content .property-card.active{border-color:#667eea!important;box-shadow:0 0 0 3px rgba(102,126,234,.1)!important}.message-content .property-card.favorited{border-color:#f59e0b!important}.message-content .property-card.favorited:before{content:"❤️"!important;position:absolute!important;top:8px!important;right:8px!important;font-size:16px!important;animation:heartBeat .3s ease!important}@keyframes heartBeat{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.message-content .property-card.comparing{border-color:#10b981;background:#f0fdf4}.property-thumb{width:80px!important;height:60px!important;background:linear-gradient(135deg,#667eea,#764ba2)!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;color:white!important;font-size:18px!important;font-weight:600!important;flex-shrink:0!important}.message-content .property-info{flex:1!important;display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0!important;margin-right:4px!important;padding:0!important}.message-content .property-price{font-size:18px;font-weight:600;color:#1f2937;margin-bottom:4px}.message-content .property-details{font-size:13px;color:#6b7280;margin-bottom:4px}.message-content .property-address{font-size:13px;color:#9ca3af}.message-content .property-actions{display:flex;gap:8px;align-items:center}.action-btn{width:32px;height:32px;border-radius:6px;border:1px solid #e5e7eb;background:white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;color:#6b7280}.action-btn:hover{border-color:#667eea;color:#667eea}.action-btn.active{background:#667eea;border-color:#667eea;color:white}.favorite-btn.active{background:#f59e0b;border-color:#f59e0b}.typing-indicator{display:flex;gap:4px;padding:8px 0}.typing-dot{width:8px;height:8px;background:#9ca3af;border-radius:50%;animation:typing 1.4s infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}.progress-status{display:flex;align-items:center;gap:8px;padding:8px 0}.progress-text{color:#6b7280;font-size:14px;font-style:italic}.progress-dots{display:flex;gap:4px}.progress-dot{width:6px;height:6px;background:#6b7280;border-radius:50%;animation:progress-pulse 1.5s infinite}.progress-dot:nth-child(2){animation-delay:.3s}.progress-dot:nth-child(3){animation-delay:.6s}@keyframes progress-pulse{0%,60%,to{opacity:.3;transform:scale(1)}30%{opacity:1;transform:scale(1.2)}}.quick-filters{padding:12px 16px;background:white}.chat-input-container{padding:16px;background:white;border-radius:0 0 16px 16px}.chat-input-wrapper{display:flex;align-items:center;gap:8px}.chat-input{flex:1;padding:12px 16px;background:#f9fafb!important;border:1px solid #e5e7eb;border-radius:24px;font-size:14px;color:#111827!important;outline:none;transition:all .2s ease}.chat-input::placeholder{color:#9ca3af!important}.chat-input:focus{background:white!important;color:#111827!important;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1)}.voice-btn{width:44px;height:44px;background:white;border:1px solid #e5e7eb;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#6b7280}.voice-btn:hover{background:#f3f4f6}.voice-btn.recording{background:#ef4444;border-color:#ef4444;animation:voice-pulse 1.5s infinite}.chat-send-btn,.send-btn{width:44px;height:44px;background:#121c42;color:white;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,transform .1s}.chat-send-btn:hover,.send-btn:hover{background:#5a67d8}.chat-send-btn:active,.send-btn:active{transform:scale(.95)}@keyframes voice-pulse{0%{box-shadow:0 0 0 0 rgba(239,68,68,.7)}70%{box-shadow:0 0 0 10px rgba(239,68,68,0)}to{box-shadow:0 0 0 0 rgba(239,68,68,0)}}@keyframes gentle-fade{0%,to{opacity:.7}50%{opacity:1}}.suggestions{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;padding:0 16px}.suggestion-btn{padding:8px 16px;background:#667eea!important;color:#000000!important;border:1px solid #667eea!important;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.suggestion-btn:hover{background:#5a67d8!important;border-color:#5a67d8!important;color:#000000!important;transform:translateY(-1px)}.quick-filters{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;padding:0 16px}.filter-chip{padding:8px 16px!important;background:#121c42!important;color:#ffffff!important;border:1px solid #121c42!important;border-radius:20px!important;font-size:13px!important;font-weight:500!important;cursor:pointer!important;transition:all .2s!important}.filter-chip:hover{background:#5a67d8!important;border-color:#5a67d8!important;color:#000000!important;transform:translateY(-1px)!important}.chat-input button{padding:10px 20px;background:#121c42;color:white;border:none;border-radius:24px;font-weight:500;cursor:pointer;transition:all .3s ease}.chat-input button:hover{background:#667eea}.mapboxgl-popup{max-width:none!important}.mapboxgl-popup-content{background:#121c42!important;color:white!important;padding:8px 12px!important;border-radius:20px!important;font-size:13px!important;font-weight:500!important;box-shadow:0 2px 8px rgba(0,0,0,.2)!important;cursor:pointer!important;transition:all .2s!important;min-width:auto!important;border:none!important}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{border-top-color:#121c42!important;transition:all .2s!important}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{border-bottom-color:#121c42!important;transition:all .2s!important}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{border-right-color:#121c42!important;transition:all .2s!important}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{border-left-color:#121c42!important;transition:all .2s!important}.popup-bubble.hover .mapboxgl-popup-content{background:#667eea!important;transform:scale(1.1)}.popup-bubble.hover.mapboxgl-popup .mapboxgl-popup-tip{transform:scale(1.1)!important;transform-origin:center top!important}.popup-bubble.hover.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{border-top-color:#667eea!important}.popup-bubble.hover.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{border-bottom-color:#667eea!important}.popup-bubble.hover.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{border-right-color:#667eea!important}.popup-bubble.hover.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{border-left-color:#667eea!important}.popup-bubble.selected .mapboxgl-popup-content{background:#10b981!important}.popup-bubble.selected .mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{border-top-color:#10b981!important}.popup-bubble.selected .mapboxgl-popup-anchor-top .mapboxgl-popup-tip{border-bottom-color:#10b981!important}.popup-bubble.selected .mapboxgl-popup-anchor-left .mapboxgl-popup-tip{border-right-color:#10b981!important}.popup-bubble.selected .mapboxgl-popup-anchor-right .mapboxgl-popup-tip{border-left-color:#10b981!important}.popup-bubble.animate{animation:bounce_pin .5s ease-out}@keyframes bounce_pin{0%{transform:translateY(-20px);opacity:0}50%{transform:translateY(5px)}to{transform:translateY(0);opacity:1}}.property-detail-popup .mapboxgl-popup-content{background:white!important;color:#1f2937!important;padding:16px!important;border-radius:12px!important;box-shadow:0 4px 12px rgba(0,0,0,.15)!important}.property-detail-popup .mapboxgl-popup-close-button{padding:8px 8px 0 0!important;font-size:20px!important;color:#6b7280!important}.property-detail-popup .mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{border-top-color:white!important}.property-detail-popup .mapboxgl-popup-anchor-top .mapboxgl-popup-tip{border-bottom-color:white!important}.property-detail-popup .mapboxgl-popup-anchor-left .mapboxgl-popup-tip{border-right-color:white!important}.property-detail-popup .mapboxgl-popup-anchor-right .mapboxgl-popup-tip{border-left-color:white!important}.popup-property-detail{overflow:hidden}.popup-property-detail img{width:100%;height:150px;object-fit:cover}.popup-content{padding:16px}.popup-price{font-size:20px;font-weight:700;color:#121c42;margin-bottom:8px}.popup-details{color:#666;font-size:13px;margin-bottom:6px}.popup-address{color:#999;font-size:13px;margin-bottom:12px}.popup-amenities{display:flex;gap:10px;margin-bottom:12px}.popup-amenities span{font-size:12px;padding:4px 8px;background:#f0f0f0;border-radius:12px}.popup-actions{display:flex;gap:8px}.popup-actions button{flex:1;padding:8px 16px;background:#121c42;color:white;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.popup-actions button:hover{background:#667eea}.analysis-loading{display:flex;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(135deg,#121c42,#1e3a8a);color:white;border-radius:12px;margin:16px;box-shadow:0 4px 12px rgba(18,28,66,.2);animation:shimmer 2s infinite}.analysis-loading-text{font-size:14px;font-weight:500}.analysis-loading-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:white;border-radius:50%;animation:spin 1s linear infinite}@keyframes shimmer{0%,to{opacity:1}50%{opacity:.7}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.analysis-recommendations-compact{margin:8px 16px;padding:12px;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 6px rgba(0,0,0,.05);animation:fadeIn .5s ease-out}.recommendations-header-compact{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.recommendations-header-compact h4{font-size:14px;font-weight:600;color:#121c42;display:flex;align-items:center;gap:6px;margin:0}.confidence-badge-compact{background:linear-gradient(135deg,#10b981,#059669);color:white;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;box-shadow:0 1px 3px rgba(16,185,129,.2)}.recommendations-list-compact{display:flex;flex-direction:column;gap:8px}.recommendation-item-compact{background:white;border-radius:8px;padding:10px;display:flex;align-items:center;gap:10px;box-shadow:0 1px 4px rgba(0,0,0,.08);transition:all .2s ease;cursor:pointer;border:1px solid #e2e8f0}.recommendation-item-compact:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.12);border-color:#667eea}.rank-badge-compact{background:linear-gradient(135deg,#667eea,#764ba2);color:white;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0;box-shadow:0 1px 3px rgba(102,126,234,.3)}.property-info-compact{flex:1;min-width:0}.property-header-compact{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.property-price-compact{font-size:14px;font-weight:600;color:#121c42}.score-compact{color:white;padding:2px 6px;border-radius:8px;font-size:10px;font-weight:600;min-width:28px;text-align:center}.property-details-compact{margin-bottom:6px}.address-compact{font-size:12px;color:#64748b;display:block;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.specs-compact{display:flex;gap:8px;flex-wrap:wrap}.specs-compact span{color:#64748b;font-size:11px;background:#f1f5f9;padding:2px 6px;border-radius:4px;font-weight:500}.reasons-compact{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.reason-tag-compact{background:linear-gradient(135deg,#667eea,#764ba2);color:white;padding:2px 6px;border-radius:8px;font-size:10px;font-weight:500;box-shadow:0 1px 2px rgba(102,126,234,.2)}.more-reasons{color:#64748b;font-size:10px;font-style:italic}.property-type-compact{display:inline-block;color:#8b5cf6;font-size:10px;background:#ede9fe;padding:2px 6px;border-radius:4px;font-weight:500;margin-left:8px}.search-suggestions{margin:16px;padding:20px;background:linear-gradient(135deg,#fefefe,#f8fafc);border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 4px 12px rgba(0,0,0,.08);animation:fadeIn .5s ease-out}.suggestions-header{margin-bottom:20px}.suggestions-header h3{font-size:18px;font-weight:600;color:#121c42;margin:0 0 4px;display:flex;align-items:center;gap:8px}.suggestions-subtitle{color:#64748b;font-size:14px;margin:0}.suggestions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.suggestion-card{background:white;border-radius:12px;padding:16px;border-left:4px solid #e2e8f0;box-shadow:0 2px 8px rgba(0,0,0,.06);transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden}.suggestion-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent,rgba(102,126,234,.02));opacity:0;transition:opacity .3s ease}.suggestion-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.12);border-left-width:6px}.suggestion-card:hover:before{opacity:1}.suggestion-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.type-icon{font-size:20px;flex-shrink:0;margin-top:2px}.suggestion-content{flex:1;min-width:0}.suggestion-text{font-size:15px;font-weight:600;color:#121c42;line-height:1.4;display:block;margin-bottom:4px}.suggestion-type{font-size:11px;font-weight:700;padding:2px 6px;border-radius:8px;background:#f1f5f9;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.rationale{color:#64748b;font-size:13px;line-height:1.5;margin:0 0 12px}.query-preview{background:#f8fafc;border-radius:8px;padding:10px;margin-bottom:12px;border-left:3px solid #e2e8f0}.query-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.query-text{font-size:13px;color:#121c42;font-weight:500;font-style:italic}.try-suggestion{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.try-suggestion:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .3s ease}.try-suggestion:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.3)}.try-suggestion:hover:before{left:100%}.try-suggestion:active{transform:translateY(0)}.suggestion-card.location{border-left-color:#10b981}.suggestion-card.location .suggestion-type{background:#d1fae5;color:#065f46}.suggestion-card.price{border-left-color:#f59e0b}.suggestion-card.price .suggestion-type{background:#fef3c7;color:#92400e}.suggestion-card.size{border-left-color:#06b6d4}.suggestion-card.size .suggestion-type{background:#cffafe;color:#0e7490}.suggestion-card.amenities{border-left-color:#8b5cf6}.suggestion-card.amenities .suggestion-type{background:#ede9fe;color:#5b21b6}.suggestion-card.timing{border-left-color:#f97316}.suggestion-card.timing .suggestion-type{background:#fed7aa;color:#9a3412}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.collection-marker .mapboxgl-popup-content{background:#15803d!important}.collection-marker .mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{border-top-color:#15803d!important;transition:all .2s!important}.collection-marker .mapboxgl-popup-anchor-top .mapboxgl-popup-tip{border-bottom-color:#15803d!important;transition:all .2s!important}.collection-marker .mapboxgl-popup-anchor-left .mapboxgl-popup-tip{border-right-color:#15803d!important;transition:all .2s!important}.collection-marker .mapboxgl-popup-anchor-right .mapboxgl-popup-tip{border-left-color:#15803d!important;transition:all .2s!important}.collection-marker.hover .mapboxgl-popup-content{background:#166534!important;transform:scale(1.1)}.collection-marker.hover.mapboxgl-popup .mapboxgl-popup-tip{transform:scale(1.1)!important;transform-origin:center top!important}.collection-marker.hover.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{border-top-color:#166534!important}.collection-marker.hover.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{border-bottom-color:#166534!important}.collection-marker.hover.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{border-right-color:#166534!important}.collection-marker.hover.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{border-left-color:#166534!important}@media (max-width:768px){.recommendations-grid,.suggestions-grid{grid-template-columns:1fr}.analysis-recommendations,.search-suggestions{margin:12px;padding:16px}.recommendation-card,.suggestion-card{min-height:auto}}.checkpoint-message{padding:0;background:transparent;margin:0;animation:slideIn .3s ease-out}.checkpoint-content{margin-bottom:12px;color:#2c3e50;font-size:14px;line-height:1.6}.checkpoint-content strong{font-weight:600;color:#1a202c}.checkpoint-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.checkpoint-action-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;outline:none}.checkpoint-action-chip:hover{background:#667eea;border-color:#667eea;color:white;transform:translateY(-1px);box-shadow:0 2px 8px rgba(102,126,234,.2)}.checkpoint-action-chip:active{transform:translateY(0);box-shadow:0 1px 4px rgba(102,126,234,.3)}.checkpoint-action-primary{background:#667eea;border-color:#667eea;color:white;font-weight:600}.checkpoint-action-primary:hover{background:#5a67d8;border-color:#5a67d8;transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.3)}.checkpoint-action-confirm.checkpoint-action-primary{background:#667eea;border-color:#667eea;color:white}.checkpoint-action-confirm:not(.checkpoint-action-primary){background:#f3f4f6;border-color:#e5e7eb;color:#374151}.checkpoint-action-confirm:not(.checkpoint-action-primary):hover{background:#10b981;border-color:#10b981;color:white}.checkpoint-action-info{background:#f3f4f6;border-color:#e5e7eb;color:#374151}.checkpoint-action-info:hover{background:#3b82f6;border-color:#3b82f6;color:white}.checkpoint-action-cancel{background:#f3f4f6;border-color:#e5e7eb;color:#374151}.checkpoint-action-cancel:hover{background:#ef4444;border-color:#ef4444;color:white}.pin-verification .pin-input-container{margin:16px 0}.pin-input{width:200px;padding:10px 16px;border:2px solid #e1e4e8;border-radius:8px;font-size:18px;font-family:monospace;letter-spacing:4px;text-align:center;transition:border-color .2s ease}.pin-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px rgba(0,123,255,.1)}.listing-preview{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:white;border:1px solid #e1e4e8;border-radius:8px;margin:8px 0}.listing-address{font-size:13px;color:#586069;flex:1}.listing-price{font-size:14px;font-weight:600;color:#0969da}@media (max-width:640px){.checkpoint-actions{flex-direction:column}.checkpoint-action-chip{width:100%;justify-content:center}}