anycoder-eaa02c37 / styles /globals.css
Madmmike477's picture
Upload styles/globals.css with huggingface_hub
c0daa89 verified
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@300;400;500;600;700&family=Space+Grotesk:wght@300;400;500;600;700&display=swap');
@tailwind base;
@tailwind components;
@tailwind utilities;
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
html {
scroll-behavior: smooth;
}
body {
background-color: #0a0a0f;
color: #e8e8f5;
font-family: 'Space Grotesk', system-ui, sans-serif;
overflow-x: hidden;
}
::selection {
background: rgba(0, 240, 255, 0.3);
color: #ffffff;
}
/* Custom scrollbar */
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: #0a0a0f;
}
::-webkit-scrollbar-thumb {
background: #3d3d5c;
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: #5a5a8a;
}
/* Grid background pattern */
.grid-pattern {
background-image:
linear-gradient(rgba(0, 240, 255, 0.03) 1px, transparent 1px),
linear-gradient(90deg, rgba(0, 240, 255, 0.03) 1px, transparent 1px);
background-size: 50px 50px;
}
/* Noise texture */
.noise-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
opacity: 0.03;
z-index: 1000;
background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
}
/* Glitch effect */
.glitch {
position: relative;
}
.glitch::before,
.glitch::after {
content: attr(data-text);
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.glitch::before {
animation: glitch-1 2s infinite linear alternate-reverse;
clip-path: polygon(0 0, 100% 0, 100% 35%, 0 35%);
transform: translate(-2px, -2px);
color: #ff3366;
}
.glitch::after {
animation: glitch-2 2s infinite linear alternate-reverse;
clip-path: polygon(0 65%, 100% 65%, 100% 100%, 0 100%);
transform: translate(2px, 2px);
color: #00f0ff;
}
@keyframes glitch-1 {
0%, 100% { transform: translate(0); }
20% { transform: translate(-3px, 3px); }
40% { transform: translate(-3px, -3px); }
60% { transform: translate(3px, 3px); }
80% { transform: translate(3px, -3px); }
}
@keyframes glitch-2 {
0%, 100% { transform: translate(0); }
20% { transform: translate(3px, -3px); }
40% { transform: translate(3px, 3px); }
60% { transform: translate(-3px, -3px); }
80% { transform: translate(-3px, 3px); }
}
/* Terminal cursor */
.terminal-cursor::after {
content: '▋';
animation: blink 1s step-end infinite;
color: #00f0ff;
}
@keyframes blink {
50% { opacity: 0; }
}
/* Magnetic button effect */
.magnetic-btn {
transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
}
/* Card hover glow */
.card-glow {
transition: all 0.3s ease;
}
.card-glow:hover {
box-shadow: 0 0 30px rgba(0, 240, 255, 0.15);
}
/* Text gradient */
.text-gradient {
background: linear-gradient(135deg, #00f0ff 0%, #ff3366 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
/* Binary rain canvas */
#binary-canvas {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
opacity: 0.05;
z-index: 1;
}