@tailwind base; @tailwind components; @tailwind utilities; /* Blade Knight Font */ @font-face { font-family: 'Blade Knight'; src: url('/assets/fonts/Blade Knight Regular.otf') format('opentype'); font-weight: normal; font-style: normal; font-display: swap; } /* Coligra Font */ @font-face { font-family: 'Coligra'; src: url('/assets/fonts/Coligra.otf') format('opentype'); font-weight: normal; font-style: normal; font-display: swap; } * { box-sizing: border-box; margin: 0; padding: 0; } html { background-color: #0a0a0a; color: white; } body { font-family: 'Inter', 'Avenir Next', system-ui, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; background-color: #0a0a0a; color: white; min-height: 100vh; } #app { min-height: 100vh; background-color: #0a0a0a; } /* Glass Morphism Styles from neode-ui */ .glass-card { background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 16px; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45); } .glass-button { background: rgba(255, 255, 255, 0.08); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border: 1px solid rgba(255, 255, 255, 0.18); color: white; transition: all 0.2s ease; } .glass-button:hover { background: rgba(255, 255, 255, 0.12); border-color: rgba(255, 255, 255, 0.3); transform: translateY(-2px); box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5); } .glass-button:active { transform: translateY(0); } /* Content Card Styles */ .content-card { position: relative; border-radius: 8px; overflow: hidden; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); cursor: pointer; } .content-card:hover { transform: scale(1.05); z-index: 10; box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5); } .content-card img { width: 100%; height: 100%; object-fit: cover; } /* Hide scrollbars but keep scrolling */ html { overflow-y: scroll; scrollbar-width: none; /* Firefox */ } ::-webkit-scrollbar { width: 0; height: 0; display: none; } /* Netflix-style hero gradient */ .hero-gradient { background: linear-gradient( to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.7) 50%, rgba(0, 0, 0, 0.4) 75%, rgba(0, 0, 0, 0) 100% ); } /* Loading Animation */ @keyframes shimmer { 0% { background-position: -1000px 0; } 100% { background-position: 1000px 0; } } .loading-shimmer { background: linear-gradient( 90deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.05) 100% ); background-size: 1000px 100%; animation: shimmer 2s infinite; } /* Profile Avatar with Gradient Border */ .profile-avatar { position: relative; width: 32px; height: 32px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 600; color: white; background: linear-gradient(to bottom right, #f97316, #ec4899); } .profile-avatar span { position: relative; z-index: 1; } .profile-avatar::before { content: ''; position: absolute; inset: 0; border-radius: inherit; padding: 2px; background: linear-gradient(135deg, rgba(255, 255, 255, 0.8), rgba(245, 37, 50, 0.6)); -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; }