| @import "tailwindcss"; | |
| :root { | |
| --background: #000000; | |
| --foreground: #ffffff; | |
| } | |
| body { | |
| background: var(--background); | |
| color: var(--foreground); | |
| } | |
| /* Base Grain Animation */ | |
| @keyframes noise { | |
| 0%, 100% { transform: translate(0, 0); } | |
| 10% { transform: translate(-5%, -5%); } | |
| 20% { transform: translate(-10%, 5%); } | |
| 30% { transform: translate(5%, -10%); } | |
| 40% { transform: translate(-5%, 15%); } | |
| 50% { transform: translate(-10%, 5%); } | |
| 60% { transform: translate(15%, 0); } | |
| 70% { transform: translate(0, 10%); } | |
| 80% { transform: translate(-15%, 0); } | |
| 90% { transform: translate(10%, 5%); } | |
| } | |
| .bg-noise { | |
| position: fixed; | |
| top: -50%; | |
| left: -50%; | |
| right: -50%; | |
| bottom: -50%; | |
| width: 200%; | |
| height: 200vh; | |
| background: transparent url('data:image/svg+xml,%3Csvg viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="noiseFilter"%3E%3CfeTurbulence type="fractalNoise" baseFrequency="0.85" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="100%25" height="100%25" filter="url(%23noiseFilter)"/%3E%3C/svg%3E'); | |
| opacity: 0.05; | |
| pointer-events: none; | |
| animation: noise 8s steps(10) infinite; | |
| z-index: 50; | |
| } | |
| .no-scrollbar::-webkit-scrollbar { | |
| display: none; | |
| } | |
| .no-scrollbar { | |
| -ms-overflow-style: none; | |
| scrollbar-width: none; | |
| } | |