Spaces:
Running
Running
| /* Custom styles for enhanced UI */ | |
| * { | |
| scrollbar-width: thin; | |
| scrollbar-color: #cbd5e1 #f1f5f9; | |
| } | |
| *::-webkit-scrollbar { | |
| width: 8px; | |
| } | |
| *::-webkit-scrollbar-track { | |
| background: #f1f5f9; | |
| border-radius: 4px; | |
| } | |
| *::-webkit-scrollbar-thumb { | |
| background-color: #cbd5e1; | |
| border-radius: 4px; | |
| } | |
| *::-webkit-scrollbar-thumb:hover { | |
| background-color: #94a3b8; | |
| } | |
| /* Smooth transitions */ | |
| .transition-all { | |
| transition-property: all; | |
| transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); | |
| } | |
| /* Message animations */ | |
| @keyframes fadeIn { | |
| from { | |
| opacity: 0; | |
| transform: translateY(10px); | |
| } | |
| to { | |
| opacity: 1; | |
| transform: translateY(0); | |
| } | |
| } | |
| #messagesArea > div { | |
| animation: fadeIn 0.3s ease-out; | |
| } | |
| /* Typing indicator animation */ | |
| @keyframes pulse { | |
| 0%, 100% { | |
| opacity: 1; | |
| } | |
| 50% { | |
| opacity: 0.5; | |
| } | |
| } | |
| .animate-pulse { | |
| animation: pulse 1s cubic-bezier(0.4, 0, 0.6, 1) infinite; | |
| } | |
| /* Enhanced button styles */ | |
| button:focus { | |
| outline: none; | |
| box-shadow: 0 0 0 3px rgba(147, 51, 234, 0.1); | |
| } | |
| /* Textarea styles */ | |
| textarea:focus { | |
| box-shadow: 0 0 0 3px rgba(147, 51, 234, 0.1); | |
| } | |
| /* Loading animation */ | |
| @keyframes spin { | |
| to { | |
| transform: rotate(360deg); | |
| } | |
| } | |
| .animate-spin { | |
| animation: spin 1s linear infinite; | |
| } | |
| /* Responsive adjustments */ | |
| @media (max-width: 640px) { | |
| .max-w-md { | |
| max-width: calc(100% - 3rem); | |
| } | |
| } | |
| /* Gradient text effect */ | |
| .gradient-text { | |
| background: linear-gradient(to right, #a855f7, #ec4899); | |
| -webkit-background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| background-clip: text; | |
| } |