Spaces:
Running
Running
@tailwind base; | |
@tailwind components; | |
@tailwind utilities; | |
:root { | |
--primary: #1E3A8A; | |
--secondary: #7E22CE; | |
--accent: #0D9488; | |
--background: #F9FAFB; | |
--foreground: #111827; | |
} | |
.dark { | |
--primary: #3B82F6; | |
--secondary: #8B5CF6; | |
--accent: #10B981; | |
--background: #111827; | |
--foreground: #F9FAFB; | |
} | |
body { | |
font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; | |
margin: 0; | |
padding: 0; | |
box-sizing: border-box; | |
} | |
/* Animation for neural pulses */ | |
@keyframes pulse { | |
0% { | |
transform: scale(1); | |
opacity: 1; | |
} | |
50% { | |
transform: scale(1.2); | |
opacity: 0.8; | |
} | |
100% { | |
transform: scale(1); | |
opacity: 1; | |
} | |
} | |
/* Animation for typing indicators */ | |
@keyframes bounce { | |
0%, 100% { | |
transform: translateY(0); | |
} | |
50% { | |
transform: translateY(-4px); | |
} | |
} | |
.typing-dot { | |
animation: bounce 1s infinite; | |
} | |
/* Custom scrollbar */ | |
::-webkit-scrollbar { | |
width: 8px; | |
height: 8px; | |
} | |
::-webkit-scrollbar-track { | |
background: transparent; | |
} | |
::-webkit-scrollbar-thumb { | |
background: rgba(156, 163, 175, 0.5); | |
border-radius: 4px; | |
} | |
::-webkit-scrollbar-thumb:hover { | |
background: rgba(156, 163, 175, 0.7); | |
} | |
/* Transitions */ | |
.transition-all { | |
transition-property: all; | |
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); | |
transition-duration: 300ms; | |
} | |
.transition-opacity { | |
transition-property: opacity; | |
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); | |
transition-duration: 150ms; | |
} | |
.transition-transform { | |
transition-property: transform; | |
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); | |
transition-duration: 150ms; | |
} |