Spaces:
Running
Running
| /* Animations and visual effects */ | |
| @keyframes float { | |
| 0%, 100% { transform: translateY(0); } | |
| 50% { transform: translateY(-10px); } | |
| } | |
| @keyframes shimmer { | |
| 0% { background-position: -200% 0; } | |
| 100% { background-position: 200% 0; } | |
| } | |
| /* Balance card glow effect */ | |
| .balance-glow { | |
| position: relative; | |
| overflow: hidden; | |
| } | |
| .balance-glow::after { | |
| content: ''; | |
| position: absolute; | |
| top: -50%; | |
| left: -50%; | |
| width: 200%; | |
| height: 200%; | |
| background: linear-gradient( | |
| to bottom right, | |
| rgba(255, 255, 255, 0) 0%, | |
| rgba(255, 255, 255, 0.3) 50%, | |
| rgba(255, 255, 255, 0) 100% | |
| ); | |
| transform: rotate(30deg); | |
| animation: shimmer 3s infinite linear; | |
| } | |
| /* Enhanced transaction items */ | |
| .transaction-item { | |
| transition: all 0.3s ease; | |
| transform-origin: center; | |
| opacity: 0; | |
| animation: fadeIn 0.5s forwards; | |
| } | |
| @keyframes fadeIn { | |
| to { opacity: 1; } | |
| } | |
| .transaction-item:hover { | |
| transform: scale(1.02) translateY(-4px); | |
| box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); | |
| z-index: 10; | |
| } | |
| /* Floating quick actions */ | |
| .quick-action { | |
| transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); | |
| } | |
| .quick-action:hover { | |
| transform: translateY(-8px) scale(1.05); | |
| box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1); | |
| } | |
| /* Dark mode enhancements */ | |
| html.dark { | |
| background: linear-gradient(135deg, #111827 0%, #1f2937 100%); | |
| } | |
| /* Custom scrollbar with gradient */ | |
| ::-webkit-scrollbar { | |
| width: 8px; | |
| } | |
| ::-webkit-scrollbar-thumb { | |
| background: linear-gradient(to bottom, #0ea5e9, #7dd3fc); | |
| border-radius: 10px; | |
| } | |
| /* Pulse animation for important elements */ | |
| @keyframes pulse { | |
| 0% { transform: scale(1); } | |
| 50% { transform: scale(1.05); } | |
| 100% { transform: scale(1); } | |
| } | |
| .pulse { | |
| animation: pulse 2s infinite; | |
| } | |
| /* Sparkle effect */ | |
| .sparkle { | |
| position: relative; | |
| } | |
| .sparkle::after { | |
| content: '✨'; | |
| position: absolute; | |
| top: -10px; | |
| right: -5px; | |
| font-size: 12px; | |
| animation: float 3s ease-in-out infinite; | |
| } | |