Spaces:
Sleeping
Sleeping
| @tailwind base; | |
| @tailwind components; | |
| @tailwind utilities; | |
| @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600&family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Roboto+Mono:wght@300;400&display=swap'); | |
| :root { | |
| --font-playfair: 'Playfair Display', serif; | |
| --font-inter: 'Inter', sans-serif; | |
| --font-roboto-mono: 'Roboto Mono', monospace; | |
| } | |
| body { | |
| background-color: #050505; | |
| color: #ffffff; | |
| overflow-x: hidden; | |
| -webkit-font-smoothing: antialiased; | |
| } | |
| /* Custom Scrollbar */ | |
| ::-webkit-scrollbar { | |
| width: 8px; | |
| } | |
| ::-webkit-scrollbar-track { | |
| background: #050505; | |
| } | |
| ::-webkit-scrollbar-thumb { | |
| background: #333; | |
| border-radius: 4px; | |
| } | |
| ::-webkit-scrollbar-thumb:hover { | |
| background: #555; | |
| } | |
| /* Noise Overlay */ | |
| .noise-overlay { | |
| position: fixed; | |
| top: 0; | |
| left: 0; | |
| width: 100%; | |
| height: 100%; | |
| pointer-events: none; | |
| z-index: 50; | |
| opacity: 0.07; | |
| background-image: url('data:image/svg+xml,%3Csvg viewBox=%220 0 200 200%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cfilter id=%22noiseFilter%22%3E%3CfeTurbulence type=%22fractalNoise%22 baseFrequency=%220.8%22 numOctaves=%223%22 stitchTiles=%22stitch%22/%3E%3C/filter%3E%3Crect width=%22100%25%22 height=%22100%25%22 filter=%22url(%23noiseFilter)%22 opacity=%221%22/%3E%3C/svg%3E'); | |
| } | |
| /* Liquid Metal Button Effect */ | |
| .liquid-btn { | |
| position: relative; | |
| overflow: hidden; | |
| transition: all 0.5s ease; | |
| background: #fff; | |
| color: #000; | |
| } | |
| .liquid-btn::before { | |
| content: ''; | |
| position: absolute; | |
| top: 0; | |
| left: -100%; | |
| width: 100%; | |
| height: 100%; | |
| background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent); | |
| transition: 0.5s; | |
| } | |
| .liquid-btn:hover::before { | |
| left: 100%; | |
| } | |
| /* Electric Card Border */ | |
| .electric-border { | |
| position: relative; | |
| background: rgba(10, 10, 10, 0.8); | |
| backdrop-filter: blur(10px); | |
| } | |
| .electric-border::after { | |
| content: ''; | |
| position: absolute; | |
| bottom: -1px; | |
| left: 0; | |
| width: 100%; | |
| height: 1px; | |
| background: linear-gradient(90deg, transparent, #fff, transparent); | |
| opacity: 0.5; | |
| } | |
| .electric-border:hover::after { | |
| opacity: 1; | |
| box-shadow: 0 0 10px #fff; | |
| } | |
| /* Glitch Text Classes */ | |
| .glitch { | |
| position: relative; | |
| } | |
| .glitch::before, | |
| .glitch::after { | |
| content: attr(data-text); | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| width: 100%; | |
| height: 100%; | |
| background: #050505; | |
| } | |
| .glitch::before { | |
| left: 2px; | |
| text-shadow: -1px 0 #00ffff; | |
| clip: rect(24px, 550px, 90px, 0); | |
| animation: glitch-anim-2 3s infinite linear alternate-reverse; | |
| } | |
| .glitch::after { | |
| left: -2px; | |
| text-shadow: -1px 0 #ff00ff; | |
| clip: rect(85px, 550px, 140px, 0); | |
| animation: glitch-anim-1 2.5s infinite linear alternate-reverse; | |
| } | |
| @keyframes glitch-anim-1 { | |
| 0% { clip: rect(20px, 9999px, 80px, 0); } | |
| 20% { clip: rect(130px, 9999px, 160px, 0); } | |
| 40% { clip: rect(60px, 9999px, 100px, 0); } | |
| 60% { clip: rect(10px, 9999px, 40px, 0); } | |
| 80% { clip: rect(120px, 9999px, 150px, 0); } | |
| 100% { clip: rect(40px, 9999px, 90px, 0); } | |
| } | |
| @keyframes glitch-anim-2 { | |
| 0% { clip: rect(120px, 9999px, 150px, 0); } | |
| 20% { clip: rect(10px, 9999px, 50px, 0); } | |
| 40% { clip: rect(90px, 9999px, 110px, 0); } | |
| 60% { clip: rect(30px, 9999px, 70px, 0); } | |
| 80% { clip: rect(60px, 9999px, 100px, 0); } | |
| 100% { clip: rect(140px, 9999px, 170px, 0); } | |
| } |