Spaces:
Build error
Build error
| @tailwind base; | |
| @tailwind components; | |
| @tailwind utilities; | |
| @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap'); | |
| @layer base { | |
| html { | |
| font-family: 'Inter', system-ui, -apple-system, sans-serif; | |
| -webkit-font-smoothing: antialiased; | |
| -moz-osx-font-smoothing: grayscale; | |
| } | |
| body { | |
| @apply bg-neutral-50 text-neutral-800; | |
| } | |
| } | |
| @layer components { | |
| .btn-primary { | |
| @apply px-4 py-2 bg-primary-600 text-white rounded-lg font-medium | |
| hover:bg-primary-700 transition-all duration-200 | |
| focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2 | |
| disabled:opacity-50 disabled:cursor-not-allowed; | |
| } | |
| .btn-secondary { | |
| @apply px-4 py-2 bg-neutral-100 text-neutral-700 rounded-lg font-medium | |
| hover:bg-neutral-200 transition-all duration-200 | |
| focus:outline-none focus:ring-2 focus:ring-neutral-400 focus:ring-offset-2 | |
| disabled:opacity-50 disabled:cursor-not-allowed; | |
| } | |
| .btn-success { | |
| @apply px-4 py-2 bg-income-light text-income-dark rounded-lg font-medium | |
| border border-income-DEFAULT/30 | |
| hover:bg-income-DEFAULT hover:text-white transition-all duration-200 | |
| focus:outline-none focus:ring-2 focus:ring-income-DEFAULT focus:ring-offset-2; | |
| } | |
| .btn-danger { | |
| @apply px-4 py-2 bg-expense-light text-expense-dark rounded-lg font-medium | |
| border border-expense-DEFAULT/30 | |
| hover:bg-expense-DEFAULT hover:text-white transition-all duration-200 | |
| focus:outline-none focus:ring-2 focus:ring-expense-DEFAULT focus:ring-offset-2; | |
| } | |
| .card { | |
| @apply bg-white rounded-xl shadow-sm border border-neutral-100 | |
| transition-shadow duration-200 hover:shadow-md; | |
| } | |
| .input-field { | |
| @apply w-full px-4 py-2.5 border border-neutral-200 rounded-lg | |
| text-neutral-800 placeholder-neutral-400 | |
| focus:outline-none focus:ring-2 focus:ring-primary-500 focus:border-transparent | |
| transition-all duration-200; | |
| } | |
| .label { | |
| @apply block text-sm font-medium text-neutral-700 mb-1.5; | |
| } | |
| .stat-card { | |
| @apply card p-6 flex flex-col; | |
| } | |
| .stat-value { | |
| @apply text-2xl font-semibold text-neutral-900; | |
| } | |
| .stat-label { | |
| @apply text-sm text-neutral-500 mt-1; | |
| } | |
| .table-header { | |
| @apply px-4 py-3 text-left text-xs font-semibold text-neutral-500 uppercase tracking-wider; | |
| } | |
| .table-cell { | |
| @apply px-4 py-3 text-sm text-neutral-700; | |
| } | |
| } | |
| @layer utilities { | |
| .text-balance { | |
| text-wrap: balance; | |
| } | |
| } | |
| /* Smooth scroll behavior */ | |
| html { | |
| scroll-behavior: smooth; | |
| } | |
| /* Custom scrollbar */ | |
| ::-webkit-scrollbar { | |
| width: 8px; | |
| height: 8px; | |
| } | |
| ::-webkit-scrollbar-track { | |
| @apply bg-neutral-100 rounded-full; | |
| } | |
| ::-webkit-scrollbar-thumb { | |
| @apply bg-neutral-300 rounded-full hover:bg-neutral-400; | |
| } | |
| /* Animation keyframes */ | |
| @keyframes fadeIn { | |
| from { | |
| opacity: 0; | |
| transform: translateY(10px); | |
| } | |
| to { | |
| opacity: 1; | |
| transform: translateY(0); | |
| } | |
| } | |
| @keyframes slideIn { | |
| from { | |
| opacity: 0; | |
| transform: translateX(-10px); | |
| } | |
| to { | |
| opacity: 1; | |
| transform: translateX(0); | |
| } | |
| } | |
| .animate-fadeIn { | |
| animation: fadeIn 0.3s ease-out forwards; | |
| } | |
| .animate-slideIn { | |
| animation: slideIn 0.3s ease-out forwards; | |
| } |