.hotspot{width:32px;height:32px;border-radius:50%;background-color:hsla(0,0%,100%,.7);box-shadow:0 0 0 2px rgba(0,0,0,.2);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;position:relative}.hotspot:hover{transform:scale(1.1);background-color:hsla(0,0%,100%,.9)}.hotspot:after{content:"";width:8px;height:8px;background-color:#fff;box-shadow:0 0 0 2px rgba(0,0,0,.3)}.hotspot-pulse,.hotspot:after{position:absolute;border-radius:50%}.hotspot-pulse{width:100%;height:100%;background-color:hsla(0,0%,100%,.4);animation:pulse 2s infinite}.tour-transition{transition:opacity .5s ease-in-out}.tour-fade-in{opacity:1}.tour-fade-out{opacity:0}.panorama-container{position:relative;width:100%;height:100%;overflow:hidden}.panorama-loading{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:rgba(0,0,0,.7);z-index:10}.panorama-controls{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:5}.panorama-info{position:absolute;top:20px;left:20px;max-width:300px;background-color:rgba(0,0,0,.7);color:#fff;padding:10px;border-radius:8px;z-index:5}.page-content-static{animation:none!important;visibility:visible!important;position:relative;will-change:auto}.fade-transition,.page-content-static,.scale-transition,.slide-down-transition,.slide-left-transition,.slide-right-transition,.slide-transition,.slide-up-transition{transform:none!important;transition:none!important;opacity:1!important}@keyframes slideUp{0%,to{transform:translateY(0)}}@keyframes slideDown{0%,to{transform:translateY(0)}}@keyframes slideLeft{0%,to{transform:translateX(0)}}@keyframes slideRight{0%,to{transform:translateX(0)}}@keyframes scaleIn{0%,to{transform:scale(1)}}@keyframes scaleOut{0%,to{transform:scale(1)}}.page-enter,.page-enter-active,.page-exit,.page-exit-active{transition:none!important;transform:none!important;opacity:1!important}@keyframes flyToSearchField{0%{transform:translate(100px,100px) rotate(0deg) scale(1);opacity:0}20%{opacity:1}80%{transform:translate(0) rotate(1turn) scale(.8);opacity:1}to{transform:translate(0) rotate(2turn) scale(0);opacity:0}}@keyframes glowEffect{0%{box-shadow:0 0 0 rgba(139,92,246,0)}50%{box-shadow:0 0 20px rgba(139,92,246,.5)}to{box-shadow:0 0 0 rgba(139,92,246,0)}}.filter-flying{position:absolute;padding:2px 8px;background-color:#8b5cf6;color:#fff;border-radius:9999px;font-size:12px;z-index:50;transform-origin:center;animation:flyToSearchField 1.5s forwards}.search-highlight{animation:glowEffect .5s ease-in-out}@keyframes capture-pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.animate-capture-pulse{animation:capture-pulse .5s ease-in-out}.filter-transition{transition:filter .3s ease-in-out}.camera-grid{background-image:linear-gradient(90deg,hsla(0,0%,100%,.1) 1px,transparent 0),linear-gradient(180deg,hsla(0,0%,100%,.1) 1px,transparent 0);background-size:33.33% 33.33%}.sepia{filter:sepia(.7)}.grayscale{filter:grayscale(1)}@keyframes flash{0%{opacity:0}50%{opacity:1}to{opacity:0}}.animate-flash{animation:flash .3s ease-out}.search-highlight{transition:background-color .3s ease}.search-highlight-active{background-color:rgba(255,230,0,.2);border-left:3px solid rgba(255,230,0,.7)}[dir=rtl] .search-highlight-active{border-left:none;border-right:3px solid rgba(255,230,0,.7)}@keyframes pulse-highlight{0%{background-color:rgba(255,230,0,0)}50%{background-color:rgba(255,230,0,.3)}to{background-color:rgba(255,230,0,0)}}.search-pulse{animation:pulse-highlight 2s ease-in-out}.dark .search-highlight-active{background-color:rgba(255,230,0,.1);border-color:rgba(255,230,0,.5)}.dark .search-pulse{animation:pulse-highlight 2s ease-in-out}@keyframes dark-pulse-highlight{0%{background-color:rgba(255,230,0,0)}50%{background-color:rgba(255,230,0,.15)}to{background-color:rgba(255,230,0,0)}}.dark .search-pulse{animation:dark-pulse-highlight 2s ease-in-out}.bg-grid-white{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' width='32' height='32' fill='none' stroke='rgb(255 255 255 / 0.05)'%3e%3cpath d='M0 .5H31.5V32'/%3e%3c/svg%3e")}@keyframes slideInFromBottom{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-in{animation-duration:.3s;animation-timing-function:ease-out;animation-fill-mode:both}.fade-in{animation-name:fadeIn}.slide-in{animation-name:slideInFromBottom}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.card-hover-effect{transition:all .2s ease}.card-hover-effect:hover{transform:translateY(-2px);box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1)}.notification-badge-pulse{animation:notification-badge-pulse 2s infinite}@keyframes notification-badge-pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.notification-badge{transition:background-color .3s ease,transform .2s ease}.notification-badge:hover{transform:scale(1.1)}.bottom-nav-appear{animation:fadeIn .3s ease-out forwards}@supports (backdrop-filter:blur(10px)){.bottom-nav-glass{background-color:hsla(0,0%,100%,.8);backdrop-filter:blur(10px)}.dark .bottom-nav-glass{background-color:rgba(17,24,39,.8);backdrop-filter:blur(10px)}}.bottom-nav-shadow{box-shadow:0 -2px 10px rgba(0,0,0,.05)}.dark .bottom-nav-shadow{box-shadow:0 -2px 10px rgba(0,0,0,.2)}.bottom-nav-icon{transition:all .2s ease;display:flex;align-items:center;justify-content:center}.bottom-nav-label{font-weight:500;letter-spacing:-.01em;transition:all .2s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@media (max-width:360px){.bottom-nav-label{font-size:8px}.bottom-nav-icon{transform:scale(.9)}}@media (min-width:768px){.bottom-nav{display:none}}[dir=rtl] .bottom-nav-label{letter-spacing:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin-slow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-fade-in{animation:fade-in .3s ease-in-out}.animate-slide-up{animation:slide-up .5s ease-out}.animate-spin-slow{animation:spin-slow 3s linear infinite}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.float-animation{animation:float 3s ease-in-out infinite}.pulse-animation{animation:pulse 2s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.shimmer-effect{background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.2) 25%,hsla(0,0%,100%,.2) 50%,hsla(0,0%,100%,0));background-size:200% 100%;animation:shimmer 2s infinite}.text-shadow{text-shadow:0 0 3px rgba(0,0,0,.8),0 0 5px rgba(0,0,0,.6)}@keyframes pulse-slow{0%{opacity:.5;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}to{opacity:.5;transform:scale(1)}}.animate-pulse-slow{animation:pulse-slow 3s infinite}@keyframes glow{0%{box-shadow:0 0 5px rgba(79,70,229,.2)}50%{box-shadow:0 0 15px rgba(79,70,229,.4)}to{box-shadow:0 0 5px rgba(79,70,229,.2)}}.glow-effect{animation:glow 3s infinite}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-3px);box-shadow:0 10px 25px -5px rgba(79,70,229,.1),0 8px 10px -6px rgba(79,70,229,.1)}.icon-pulse{animation:pulse 2s infinite}.slide-in{animation:slideIn .5s forwards;opacity:0;transform:translateY(20px)}@keyframes slideIn{to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s forwards;opacity:0}@keyframes fadeIn{to{opacity:1}}.arrow-bounce{animation:arrowBounce 1s infinite alternate}@keyframes arrowBounce{0%{transform:translateX(0)}to{transform:translateX(3px)}}.lucide{width:1em;height:1em}h1{font-size:1.5rem!important}h2{font-size:1.25rem!important}h3{font-size:1.1rem!important}h4,h5,h6{font-size:1rem!important}.gap-1{gap:.15rem!important}.gap-2{gap:.35rem!important}.gap-3{gap:.5rem!important}.gap-4{gap:.75rem!important}.rounded-lg{border-radius:.35rem!important}.rounded-md{border-radius:.25rem!important}.shadow-md{box-shadow:0 2px 3px -1px rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.05)!important}.shadow-lg{box-shadow:0 5px 10px -3px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.05)!important}.border,.border-2{border-width:1px!important}.scan-animation{position:relative;overflow:hidden}.scan-animation:after{content:"";position:absolute;top:-100%;left:0;width:100%;height:200%;background:linear-gradient(180deg,rgba(0,123,255,0),rgba(0,123,255,.2),rgba(0,123,255,0));animation:scan 2s linear infinite}@keyframes scan{0%{top:-100%}to{top:100%}}.pulse{animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 0 0 rgba(255,82,82,.7)}70%{transform:scale(1);box-shadow:0 0 0 10px rgba(255,82,82,0)}to{transform:scale(.95);box-shadow:0 0 0 0 rgba(255,82,82,0)}}.feature-card{transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,.1)}.parallax-container{perspective:1000px}.parallax-card{transition:transform .3s ease}.parallax-card:hover{transform:rotateX(5deg) rotateY(5deg)}.glow-button{position:relative;overflow:hidden}.glow-button:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,hsla(0,0%,100%,.3) 0,hsla(0,0%,100%,0) 70%);opacity:0;transition:opacity .3s ease}.glow-button:hover:after{opacity:1}.page-transition-enter{opacity:0;transform:translateY(10px)}.page-transition-enter-active{transition:opacity .3s ease,transform .3s ease}.page-transition-enter-active,.page-transition-exit{opacity:1;transform:translateY(0)}.page-transition-exit-active{opacity:0;transform:translateY(-10px);transition:opacity .3s ease,transform .3s ease}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)}.dark .custom-scrollbar::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2)}.dark .custom-scrollbar::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}.prevent-overscroll{overscroll-behavior:contain}.smooth-scroll{scroll-behavior:smooth}.optimized-scrolling{scroll-behavior:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:none;overflow-anchor:auto}.low-performance-scroll{scroll-behavior:auto!important;-webkit-overflow-scrolling:auto!important;will-change:auto!important}.is-scrolling{will-change:transform;transform:translateZ(0);backface-visibility:hidden}.virtualized-item{contain:layout style}.virtualized-content{content-visibility:auto;contain:layout style paint}.virtualized-list{position:relative;contain:strict}.scroll-item,.scroll-item.fixed{transform:translateZ(0);backface-visibility:hidden}.scroll-item.fixed{will-change:transform}.scroll-view img,.virtualized-list img{content-visibility:auto;contain:layout style paint size}.optimized-scrolling .blur,.optimized-scrolling .filter,.optimized-scrolling .shadow,.optimized-scrolling [style*=backdrop-filter],.optimized-scrolling [style*=box-shadow],.optimized-scrolling [style*=filter]{box-shadow:none!important;filter:none!important;backdrop-filter:none!important}.optimized-scrolling *{transition:none!important;animation:none!important}@media (max-width:768px),(pointer:coarse){.scroll-view,.virtualized-list{scroll-behavior:auto!important;-webkit-overflow-scrolling:touch}.scroll-item,.virtualized-item{contain:layout style}}@media (max-width:480px){.scroll-view,.virtualized-list{scroll-padding:.5rem}.scroll-item,.virtualized-item{content-visibility:auto}}