@tailwind base; @tailwind components; @tailwind utilities; @layer base { html { scroll-behavior: smooth; } body { @apply bg-[#f5f5f7] text-black/80 font-serif antialiased selection:bg-black/10 selection:text-black; line-height: 1.6; } h1, h2, h3, h4, h5, h6 { @apply font-sans font-bold text-black tracking-tighter; } p { @apply mb-4 text-base leading-relaxed text-black/50; } a { @apply text-black/50 hover:text-black transition-colors no-underline; } } @layer components { .narrow-container { @apply max-w-4xl mx-auto px-6 py-10; } .btn { @apply inline-flex items-center justify-center px-6 py-3 border border-black/10 bg-white text-black/60 font-sans font-bold text-sm uppercase tracking-widest rounded-full transition-all duration-500 ease-industrial hover:border-black/20 hover:text-black hover:bg-white hover:-translate-y-0.5 hover:shadow-xl hover:shadow-black/5 active:translate-y-0 active:shadow-sm; } .btn-primary { @apply border-black bg-black text-white hover:bg-black/85 hover:text-white; } } /* Custom scrollbar - light theme */ ::-webkit-scrollbar { width: 6px; height: 6px; } ::-webkit-scrollbar-track { background: #f5f5f7; } ::-webkit-scrollbar-thumb { background: #d1d1d6; border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background: #b0b0b8; } /* Animations */ @keyframes fade-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } } @keyframes slide-up { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @keyframes shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } } .animate-fade-in { animation: fade-in 0.8s ease-out forwards; } .animate-slide-up { animation: slide-up 0.8s ease-out 0.2s forwards; opacity: 0; } .animate-shake { animation: shake 0.2s ease-in-out 0s 2; }