.location-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:fadeIn .3s ease-out}.location-popup-content{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:480px;width:100%;padding:2rem;position:relative;animation:slideUp .3s ease-out}.location-popup-overlay.fade-out{animation:fadeOut .3s ease-out}.location-popup-overlay.fade-out .location-popup-content{animation:slideDown .3s ease-out}.location-popup-header{text-align:center;margin-bottom:1.5rem}.location-icon{display:flex;justify-content:center;margin-bottom:1rem}.location-icon svg{width:3rem;height:3rem;color:#4f46e5}.location-popup-header h2{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.location-popup-header p{color:#6b7280;font-size:.95rem;line-height:1.6}.location-popup-benefits{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1rem;background:#f9fafb;border-radius:12px}.benefit-item{display:flex;align-items:center;gap:.75rem;color:#374151;font-size:.9rem}.benefit-item svg{flex-shrink:0}.location-popup-actions{display:flex;flex-direction:column;gap:.75rem}.btn-allow-location,.btn-deny-location{padding:.875rem 1.5rem;border-radius:10px;font-weight:600;font-size:.95rem;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer}.btn-allow-location{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border:none}.btn-allow-location:hover{background:linear-gradient(135deg,#4338ca,#6d28d9);transform:translateY(-2px);box-shadow:0 10px 20px #4f46e54d}.btn-deny-location{background:transparent;color:#6b7280;border:2px solid #E5E7EB}.btn-deny-location:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.location-popup-privacy{margin-top:1rem;text-align:center;font-size:.75rem;color:#9ca3af;line-height:1.5}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(30px);opacity:0}}@media (max-width: 640px){.location-popup-content{padding:1.5rem;max-width:95%}.location-popup-header h2{font-size:1.25rem}.location-popup-header p{font-size:.875rem}.location-icon svg{width:2.5rem;height:2.5rem}}
