@tailwind base; @tailwind components; @tailwind utilities; @layer base { :root { --font-inter: 'Inter', system-ui, sans-serif; --font-poppins: 'Poppins', system-ui, sans-serif; --background: 0 0% 100%; --foreground: 0 0% 3.9%; --card: 0 0% 100%; --card-foreground: 0 0% 3.9%; --popover: 0 0% 100%; --popover-foreground: 0 0% 3.9%; /* Brand pink (Tailwind pink-500) drives every primary action across the app */ --primary: 330 81% 60%; --primary-foreground: 0 0% 100%; --secondary: 0 0% 96.1%; --secondary-foreground: 0 0% 9%; --muted: 0 0% 96.1%; --muted-foreground: 0 0% 45.1%; --accent: 330 81% 96%; --accent-foreground: 330 81% 30%; --destructive: 0 84.2% 60.2%; --destructive-foreground: 0 0% 98%; --border: 0 0% 89.8%; --input: 0 0% 89.8%; --ring: 330 81% 60%; --radius: 0.75rem; } .dark { --background: 0 0% 3.9%; --foreground: 0 0% 98%; --card: 0 0% 3.9%; --card-foreground: 0 0% 98%; --popover: 0 0% 3.9%; --popover-foreground: 0 0% 98%; --primary: 330 81% 60%; --primary-foreground: 0 0% 100%; --secondary: 0 0% 14.9%; --secondary-foreground: 0 0% 98%; --muted: 0 0% 14.9%; --muted-foreground: 0 0% 63.9%; --accent: 330 40% 20%; --accent-foreground: 0 0% 98%; --destructive: 0 62.8% 30.6%; --destructive-foreground: 0 0% 98%; --border: 0 0% 14.9%; --input: 0 0% 14.9%; --ring: 330 81% 60%; } html { scroll-behavior: smooth; } body { @apply antialiased bg-background text-foreground; } * { @apply border-border; } @media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; } } } @layer utilities { .text-balance { text-wrap: balance; } .gradient-text { @apply bg-clip-text text-transparent; } /* iOS/Android safe-area padding for the sticky mobile action bar */ .pb-safe { padding-bottom: max(env(safe-area-inset-bottom), 0.75rem); } }