@import "tailwindcss"; @theme inline { --color-background: #0a0e1a; --color-foreground: #e0e0e0; --font-sans: var(--font-geist-sans), ui-monospace, monospace; --font-mono: var(--font-geist-mono), ui-monospace, monospace; --animate-shake: shake 0.3s ease-in-out; --animate-glow-pulse: glow-pulse 2s ease-in-out; --animate-scan: scan 4s linear infinite; --animate-flicker: flicker 0.15s ease-in-out 3; --animate-float: float 3s ease-in-out infinite; } @keyframes shake { 0%, 100% { transform: translateX(0); } 20% { transform: translateX(-3px) rotate(-1deg); } 40% { transform: translateX(3px) rotate(1deg); } 60% { transform: translateX(-2px); } 80% { transform: translateX(2px); } } @keyframes glow-pulse { 0%, 100% { box-shadow: 0 0 5px rgba(0, 229, 255, 0.2); } 50% { box-shadow: 0 0 20px rgba(0, 229, 255, 0.4), 0 0 40px rgba(0, 229, 255, 0.1); } } @keyframes scan { 0% { transform: translateY(-100%); } 100% { transform: translateY(100vh); } } @keyframes flicker { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } } @keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } } body { background: var(--color-background); color: var(--color-foreground); font-family: var(--font-sans); min-height: 100vh; } /* Scrollbar */ ::-webkit-scrollbar { width: 6px; } ::-webkit-scrollbar-track { background: #0a0e1a; } ::-webkit-scrollbar-thumb { background: #1e293b; border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: #334155; } /* Selection */ ::selection { background: rgba(0, 229, 255, 0.2); color: #e0e0e0; } /* Scanline overlay */ body::after { content: ''; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: repeating-linear-gradient( 0deg, transparent, transparent 2px, rgba(0, 0, 0, 0.03) 2px, rgba(0, 0, 0, 0.03) 4px ); pointer-events: none; z-index: 9999; }