:root {--notif-primary:#0ea5e9;--notif-primary-dark:#0284c7;--notif-secondary:#8b5cf6;--notif-success:#10b981;--notif-warning:#f59e0b;--notif-error:#ef4444;--notif-gray-50:#f8fafc;--notif-gray-100:#f1f5f9;--notif-gray-600:#475569;--notif-gray-700:#334155;--notif-gray-800:#1e293b;--notif-gray-900:#0f172a;}.welcome-overlay {position:fixed;bottom:20px;right:20px;left:auto;top:auto;z-index:100000;background:transparent;display:block;opacity:0;visibility:hidden;transition:all 0.4s cubic-bezier(0.16, 1, 0.3, 1);}.welcome-overlay.visible {opacity:1;visibility:visible;}.welcome-modal {position:relative;background:linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);border-radius:18px;padding:0;max-width:340px;width:100%;box-shadow:0 15px 40px -10px rgba(0, 0, 0, 0.2),0 0 0 1px rgba(0, 0, 0, 0.05);transform:translateX(100%) scale(0.95);opacity:0;transition:all 0.5s cubic-bezier(0.16, 1, 0.3, 1);overflow:hidden;}.welcome-modal.visible {transform:translateX(0) scale(1);opacity:1;}.welcome-modal::before {content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg, #0ea5e9, #8b5cf6, #f59e0b);background-size:200% 100%;animation:gradientSlide 3s ease infinite;}@keyframes gradientSlide {0%,100% {background-position:0% 50%;}50% {background-position:100% 50%;}}.welcome-close {position:absolute;top:10px;left:10px;width:24px;height:24px;border-radius:50%;background:var(--notif-gray-100);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--notif-gray-600);font-size:12px;transition:all 0.2s ease;z-index:10;}.welcome-close:hover {background:var(--notif-gray-800);color:#fff;transform:rotate(90deg);}.welcome-content-wrapper {padding:16px 12px 16px 40px;text-align:right;display:flex;align-items:flex-start;gap:12px;position:relative;z-index:1;}.welcome-icon {width:40px;height:40px;flex-shrink:0;background:linear-gradient(135deg, var(--notif-primary) 0%, var(--notif-primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0;font-size:18px;color:#fff;box-shadow:0 8px 20px -8px rgba(14, 165, 233, 0.5);}.welcome-modal.first-visit .welcome-icon {background:linear-gradient(135deg, #10b981 0%, #059669 100%);box-shadow:0 8px 20px -8px rgba(16, 185, 129, 0.5);}.welcome-modal.returning .welcome-icon {background:linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);box-shadow:0 8px 20px -8px rgba(139, 92, 246, 0.5);}.welcome-text-group {flex:1;}.welcome-title {font-size:0.95rem;font-weight:800;color:var(--notif-gray-900);margin-bottom:4px;line-height:1.4;}.welcome-body {font-size:0.8rem;color:var(--notif-gray-600);line-height:1.5;font-weight:500;}.welcome-progress {position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--notif-gray-100);overflow:hidden;}.welcome-progress-bar {height:100%;background:linear-gradient(90deg, var(--notif-primary), var(--notif-secondary));width:100%;animation:progressShrink 5s linear forwards;}@keyframes progressShrink {from {width:100%;}to {width:0%;}}.smart-bubble {position:fixed;bottom:90px;left:18px;z-index:99999;max-width:320px;width:calc(100vw - 36px);background:#fff;border-radius:20px;box-shadow:0 20px 50px -15px rgba(0, 0, 0, 0.2),0 10px 20px -10px rgba(0, 0, 0, 0.1),0 0 0 1px rgba(0, 0, 0, 0.05);padding:20px;opacity:0;visibility:hidden;transform:translateY(20px) scale(0.9);transform-origin:bottom left;transition:all 0.4s cubic-bezier(0.16, 1, 0.3, 1);}.smart-bubble.visible {opacity:1;visibility:visible;transform:translateY(0) scale(1);}.smart-bubble::after {content:'';position:absolute;bottom:-10px;left:24px;width:20px;height:20px;background:#fff;transform:rotate(45deg);box-shadow:4px 4px 8px rgba(0, 0, 0, 0.1);}.smart-bubble-close {position:absolute;top:12px;left:12px;width:28px;height:28px;border-radius:50%;background:var(--notif-gray-100);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--notif-gray-600);font-size:14px;transition:all 0.2s ease;}.smart-bubble-close:hover {background:var(--notif-error);color:#fff;}.smart-bubble-header {display:flex;align-items:center;gap:12px;margin-bottom:14px;padding-left:36px;}.smart-bubble-icon {width:44px;height:44px;min-width:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;}.smart-bubble-icon.sold {background:linear-gradient(135deg, var(--notif-error), #dc2626);}.smart-bubble-icon.villa {background:linear-gradient(135deg, var(--notif-secondary), #7c3aed);}.smart-bubble-icon.apartment {background:linear-gradient(135deg, var(--notif-primary), var(--notif-primary-dark));}.smart-bubble-icon.land {background:linear-gradient(135deg, var(--notif-success), #059669);}.smart-bubble-icon.browse {background:linear-gradient(135deg, var(--notif-warning), #d97706);}.smart-bubble-title {font-size:1rem;font-weight:800;color:var(--notif-gray-900);line-height:1.4;}.smart-bubble-body {font-size:0.95rem;color:var(--notif-gray-600);line-height:1.6;margin-bottom:16px;font-weight:500;}.smart-bubble-actions {display:flex;gap:10px;}.smart-bubble-btn {flex:1;padding:12px 16px;border-radius:12px;font-size:0.9rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all 0.2s ease;border:none;}.smart-bubble-btn.primary {background:linear-gradient(135deg, var(--notif-gray-900), var(--notif-gray-800));color:#fff;}.smart-bubble-btn.primary:hover {transform:translateY(-2px);box-shadow:0 8px 20px -8px rgba(15, 23, 42, 0.4);}.smart-bubble-btn.secondary {background:var(--notif-gray-100);color:var(--notif-gray-700);}.smart-bubble-btn.secondary:hover {background:var(--notif-gray-800);color:#fff;}.finder-fab.has-notification {animation:fabPulse 1.5s ease-in-out infinite;}@keyframes fabPulse {0%,100% {box-shadow:0 4px 15px rgba(14, 165, 233, 0.4);}50% {box-shadow:0 4px 25px rgba(14, 165, 233, 0.7), 0 0 0 8px rgba(14, 165, 233, 0.1);}}@media (max-width:480px) {.welcome-overlay {right:15px;bottom:20px;left:15px;top:auto;display:flex;align-items:flex-end;justify-content:center;background:transparent;pointer-events:none;}.welcome-modal {max-width:100%;border-radius:12px;margin-bottom:0;transform:translateY(100%) scale(0.95);pointer-events:auto;}.welcome-modal.visible {transform:translateY(0) scale(1);}.welcome-content-wrapper {padding:12px 10px 12px 36px;gap:10px;}.welcome-title {font-size:0.9rem;}.welcome-body {font-size:0.75rem;}.smart-bubble {left:10px;right:10px;width:auto;max-width:none;bottom:80px;}.smart-bubble::after {left:20px;}.smart-bubble-actions {flex-direction:column;}}