/* Custom Styles for MysticVibe Explorer */ /* Smooth scrolling */ html { scroll-behavior: smooth; } /* Custom scrollbar */ ::-webkit-scrollbar { width: 10px; } ::-webkit-scrollbar-track { background: #0f172a; } ::-webkit-scrollbar-thumb { background: linear-gradient(to bottom, #0ea5e9, #d946ef); border-radius: 5px; } ::-webkit-scrollbar-thumb:hover { background: linear-gradient(to bottom, #0284c7, #c026d3); } /* Gradient text animation */ @keyframes gradientShift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } .animate-gradient { background-size: 200% 200%; animation: gradientShift 3s ease infinite; } /* Card hover effects */ .hover-lift { transition: transform 0.3s ease, box-shadow 0.3s ease; } .hover-lift:hover { transform: translateY(-5px); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3); } /* Glass morphism effect */ .glass { background: rgba(30, 41, 59, 0.7); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); } /* Pulse animation for live elements */ @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.7; } } .pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; } /* Custom focus styles */ *:focus { outline: 2px solid #0ea5e9; outline-offset: 2px; } /* Loading animation */ @keyframes spin { to { transform: rotate(360deg); } } .loading-spinner { animation: spin 1s linear infinite; } /* Responsive typography */ @media (max-width: 640px) { .responsive-text { font-size: 0.875rem; } }