Spaces:
Running
Running
| /* Custom animations and effects beyond Tailwind */ | |
| @keyframes gradientShift { | |
| 0%, 100% { background-position: 0% 50%; } | |
| 50% { background-position: 100% 50%; } | |
| } | |
| .animate-gradient-shift { | |
| background-size: 200% 200%; | |
| animation: gradientShift 8s ease-in-out infinite; | |
| } | |
| .animate-gradient { | |
| background-size: 200% 200%; | |
| animation: gradientShift 3s ease-in-out infinite; | |
| } | |
| /* Generation buttons */ | |
| .generation-btn { | |
| @apply p-6 bg-white/10 backdrop-blur-lg rounded-2xl border border-white/20 text-center | |
| hover:bg-white/20 hover:border-purple-400/50 transition-all duration-300 transform | |
| hover:-translate-y-2 hover:scale-105 active:scale-95 shadow-lg; | |
| } | |
| /* Term cards */ | |
| .term-card { | |
| @apply bg-white/10 backdrop-blur-lg rounded-2xl p-6 border border-white/10 | |
| hover:border-white/30 hover:bg-white/20 transition-all duration-300 | |
| transform hover:-translate-y-1 shadow-lg; | |
| } | |
| /* Scrollbar styling */ | |
| ::-webkit-scrollbar { | |
| width: 10px; | |
| } | |
| ::-webkit-scrollbar-track { | |
| background: rgba(255, 255, 255, 0.05); | |
| } | |
| ::-webkit-scrollbar-thumb { | |
| background: rgba(168, 85, 247, 0.5); | |
| border-radius: 5px; | |
| } | |
| ::-webkit-scrollbar-thumb:hover { | |
| background: rgba(168, 85, 247, 0.8); | |
| } | |
| /* Loading animation */ | |
| .loading-skeleton { | |
| background: linear-gradient(90deg, rgba(255,255,255,0.1) 25%, rgba(255,255,255,0.2) 50%, rgba(255,255,255,0.1) 75%); | |
| background-size: 200% 100%; | |
| animation: loading 1.5s infinite; | |
| } | |
| @keyframes loading { | |
| 0% { background-position: 200% 0; } | |
| 100% { background-position: -200% 0; } | |
| } | |
| /* Custom selection color */ | |
| ::selection { | |
| background: rgba(168, 85, 247, 0.5); | |
| color: white; | |
| } | |
| /* Smooth scrolling */ | |
| html { | |
| scroll-behavior: smooth; | |
| } | |
| /* Glass morphism enhancements */ | |
| .glass { | |
| background: rgba(255, 255, 255, 0.1); | |
| backdrop-filter: blur(10px); | |
| border: 1px solid rgba(255, 255, 255, 0.2); | |
| } | |
| /* Pulse animation for live indicators */ | |
| .pulse-dot { | |
| animation: pulse 2s infinite; | |
| } | |
| @keyframes pulse { | |
| 0% { transform: scale(1); opacity: 1; } | |
| 50% { transform: scale(1.2); opacity: 0.7; } | |
| 100% { transform: scale(1); opacity: 1; } | |
| } |