
/* Isso faz o container do tour surgir suavemente em vez de aparecer do nada */ #panorama { opacity: 0; transition: opacity 1.5s ease-in-out; } /* Esta classe deve ser adicionada via JS quando o tour carregar */ .loaded { opacity: 1; } /* ========================================== RESET & BASE ========================================== */ html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: #000; font-family: Arial, Helvetica, sans-serif; touch-action: none; } /* ========================================== LITTLE PLANET (PSV) ========================================== */ #planet-view { position: fixed; inset: 0; width: 100%; height: 100%; z-index: 2; /* Fica por cima do Pannellum no início */ background: #000; opacity: 1; transition: opacity 0.4s ease; } /* ========================================== PANNELLUM CONTAINER ========================================== */ #panorama { position: fixed; inset: 0; width: 100%; height: 100%; display: none; opacity: 1; /* Já nasce aceso por trás do planeta para evitar piscada */ z-index: 1; background: #000; transition: filter 1s ease-in-out; will-change: filter; transform: translate3d(0, 0, 0); } /* Remove a caixa padrão de carregamento do Pannellum */ .pnlm-load-box { display: none !important; } /* ========================================== INTERFACE OVERLAY ========================================== */ #intro-overlay { position: fixed; inset: 0; z-index: 9999; display: flex; justify-content: center; align-items: center; background: transparent; pointer-events: none; } #playButton { pointer-events: auto; width: 95px; height: 95px; border: none; border-radius: 50%; background: rgba(255, 255, 255, 0.15); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); color: white; font-size: 38px; cursor: pointer; box-shadow: 0 0 30px rgba(0, 0, 0, 0.35); transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), background 0.3s ease, opacity 0.3s ease; } #playButton:hover { transform: scale(1.08); background: rgba(255, 255, 255, 0.25); } #playButton.fade-out { opacity: 0; transform: scale(0.8); } /* ========================================== HOTSPOTS ANIMATION ========================================== */ .hotspot-pulse { width: 20px !important; height: 20px !important; border-radius: 50%; background: white !important; border: 2px solid #000000 !important; box-sizing: border-box; animation: hotspotPulse 1.4s infinite; } @keyframes hotspotPulse { 0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7); } 70% { box-shadow: 0 0 0 15px rgba(255, 255, 255, 0); } 100% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); } }