/* Custom styles for RoseRadiance Design Showcase */ /* Import Google Font */ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap'); /* CSS Variables */ :root { --color-rose-50: #fff1f2; --color-rose-100: #ffe4e6; --color-rose-200: #fecdd3; --color-rose-300: #fda4af; --color-rose-400: #fb7185; --color-rose-500: #f43f5e; --color-rose-600: #e11d48; --color-rose-700: #be123c; --color-rose-800: #9f1239; --color-rose-900: #881337; } /* Base Styles */ body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; } /* Grid background pattern */ .bg-grid-rose-200\/20 { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' width='32' height='32' fill='none' stroke='rgb(251 207 232 / 0.2)'%3e%3cpath d='M0 .5H31.5V32'/%3e%3c/svg%3e"); } /* Custom animations */ @keyframes float { 0%, 100% { transform: translateY(0px); } 50% { transform: translateY(-10px); } } .float-animation { animation: float 3s ease-in-out infinite; } /* Custom scrollbar */ ::-webkit-scrollbar { width: 10px; } ::-webkit-scrollbar-track { background: var(--color-rose-50); } ::-webkit-scrollbar-thumb { background: var(--color-rose-300); border-radius: 5px; } ::-webkit-scrollbar-thumb:hover { background: var(--color-rose-400); } /* Image hover effects */ .hover-lift { transition: transform 0.3s ease, box-shadow 0.3s ease; } .hover-lift:hover { transform: translateY(-5px); box-shadow: 0 20px 40px rgba(244, 63, 94, 0.15); } /* Gradient text */ .gradient-text { background: linear-gradient(135deg, var(--color-rose-500), var(--color-rose-700)); -webkit-background-clip: text; background-clip: text; color: transparent; } /* Card hover effect */ .hover-card { transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); } .hover-card:hover { transform: translateY(-8px); box-shadow: 0 25px 50px -12px rgba(244, 63, 94, 0.25); } /* Loading skeleton */ .skeleton { background: linear-gradient(90deg, var(--color-rose-50) 25%, var(--color-rose-100) 50%, var(--color-rose-50) 75%); background-size: 200% 100%; animation: loading 1.5s ease-in-out infinite; } @keyframes loading { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } } /* Mobile menu animation */ .mobile-menu-enter { opacity: 0; transform: translateY(-10px); } .mobile-menu-enter-active { opacity: 1; transform: translateY(0); transition: opacity 300ms, transform 300ms; } .mobile-menu-exit { opacity: 1; transform: translateY(0); } .mobile-menu-exit-active { opacity: 0; transform: translateY(-10px); transition: opacity 300ms, transform 300ms; } /* Responsive container */ .container-responsive { @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8; } /* Focus styles for accessibility */ .focus-visible { @apply focus:outline-none focus:ring-2 focus:ring-rose-500 focus:ring-offset-2; } /* Print styles */ @media print { .no-print { display: none !important; } }