| @import "tailwindcss"; |
|
|
| |
| |
| |
| |
|
|
| @layer utilities { |
| .text-neon-cyan { |
| color: hsl(185, 95%, 48%); |
| text-shadow: 0 0 10px hsla(185, 95%, 48%, 0.4); |
| } |
| |
| .text-neon-purple { |
| color: hsl(265, 88%, 64%); |
| text-shadow: 0 0 10px hsla(265, 88%, 64%, 0.4); |
| } |
| |
| .text-neon-pink { |
| color: hsl(330, 92%, 60%); |
| text-shadow: 0 0 10px hsla(330, 92%, 60%, 0.4); |
| } |
| |
| .bg-glass { |
| background: rgba(13, 17, 28, 0.45); |
| border: 1px solid rgba(255, 255, 255, 0.08); |
| backdrop-filter: blur(24px); |
| box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3); |
| } |
| |
| .bg-glass-card { |
| background: rgba(255, 255, 255, 0.02); |
| border: 1px solid rgba(255, 255, 255, 0.04); |
| } |
| |
| .bg-glass-card:hover { |
| background: rgba(255, 255, 255, 0.03); |
| border-color: rgba(255, 255, 255, 0.08); |
| } |
| } |
|
|
| |
| @keyframes orbPulse { |
| 0% { transform: scale(1); } |
| 50% { transform: scale(1.08); } |
| 100% { transform: scale(1); } |
| } |
|
|
| @keyframes orbSpin { |
| 0% { transform: rotate(0deg); } |
| 100% { transform: rotate(360deg); } |
| } |
|
|
| @keyframes orbGlowScale { |
| 0% { transform: scale(0.95); opacity: 0.4; } |
| 100% { transform: scale(1.2); opacity: 0.75; } |
| } |
|
|
| @keyframes waveExpand { |
| 0% { transform: scale(0.9); opacity: 0.9; } |
| 100% { transform: scale(1.8); opacity: 0; } |
| } |
|
|
| @keyframes floatGlow { |
| 0% { transform: translate(0, 0) scale(1); } |
| 50% { transform: translate(100px, 80px) scale(1.15); } |
| 100% { transform: translate(-50px, 150px) scale(0.9); } |
| } |
|
|
| |
| .animate-float-glow-1 { |
| animation: floatGlow 25s infinite alternate ease-in-out; |
| } |
|
|
| .animate-float-glow-2 { |
| animation: floatGlow 30s infinite alternate-reverse ease-in-out; |
| } |
|
|
| |
| .orb-state-idle { |
| background: radial-gradient(circle, #00f2fe 0%, rgba(0, 150, 255, 0.3) 100%); |
| box-shadow: 0 0 20px rgba(0, 242, 254, 0.35); |
| animation: orbPulse 4s infinite ease-in-out; |
| } |
|
|
| .orb-state-thinking { |
| background: radial-gradient(circle, #fff 0%, #a259ff 70%, #00f2fe 100%); |
| box-shadow: 0 0 35px rgba(162, 89, 255, 0.35); |
| animation: orbSpin 2s infinite linear, orbPulse 1s infinite ease-in-out; |
| } |
|
|
| .orb-state-speaking { |
| background: radial-gradient(circle, #fff 0%, #ff5c8d 60%, #a259ff 100%); |
| box-shadow: 0 0 30px rgba(255, 92, 141, 0.35); |
| animation: orbPulse 0.4s infinite ease-in-out; |
| } |
|
|
| .orb-state-listening { |
| background: radial-gradient(circle, #fff 0%, #00e673 70%); |
| box-shadow: 0 0 25px rgba(0, 230, 115, 0.4); |
| animation: orbPulse 1.2s infinite ease-in-out; |
| } |
|
|
| |
| ::-webkit-scrollbar { |
| width: 5px; |
| height: 5px; |
| } |
|
|
| ::-webkit-scrollbar-track { |
| background: transparent; |
| } |
|
|
| ::-webkit-scrollbar-thumb { |
| background: rgba(255, 255, 255, 0.08); |
| border-radius: 10px; |
| } |
|
|
| ::-webkit-scrollbar-thumb:hover { |
| background: rgba(255, 255, 255, 0.15); |
| } |
|
|
| |
| @keyframes fadeIn { |
| from { opacity: 0; } |
| to { opacity: 1; } |
| } |
|
|
| @keyframes scaleUp { |
| from { transform: scale(0.95); opacity: 0; } |
| to { transform: scale(1); opacity: 1; } |
| } |
|
|
| .animate-fade-in { |
| animation: fadeIn 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards; |
| } |
|
|
| .animate-scale-up { |
| animation: scaleUp 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; |
| } |
|
|