/* Custom animations for rageguy.wtf */

@keyframes earthquake-shake {
  0%, 100% { transform: translateX(0) rotate(0deg); }
  10% { transform: translateX(-2px) rotate(-1deg); }
  20% { transform: translateX(2px) rotate(1deg); }
  30% { transform: translateX(-2px) rotate(-1deg); }
  40% { transform: translateX(2px) rotate(1deg); }
  50% { transform: translateX(-1px) rotate(-0.5deg); }
  60% { transform: translateX(1px) rotate(0.5deg); }
  70% { transform: translateX(-1px) rotate(-0.5deg); }
  80% { transform: translateX(1px) rotate(0.5deg); }
  90% { transform: translateX(-1px) rotate(-0.5deg); }
}

@keyframes earthquake-intense {
  0%, 100% { transform: scale(1) rotate(0deg); }
  10% { transform: scale(1.05) rotate(-2deg); }
  20% { transform: scale(1.1) rotate(2deg); }
  30% { transform: scale(1.05) rotate(-2deg); }
  40% { transform: scale(1.1) rotate(2deg); }
  50% { transform: scale(1.05) rotate(-1deg); }
  60% { transform: scale(1.1) rotate(1deg); }
  70% { transform: scale(1.05) rotate(-1deg); }
  80% { transform: scale(1.1) rotate(1deg); }
  90% { transform: scale(1.05) rotate(-1deg); }
}

@keyframes floating {
  0%, 100% { transform: translateY(0px) rotate(0deg); }
  25% { transform: translateY(-10px) rotate(5deg); }
  50% { transform: translateY(-5px) rotate(-5deg); }
  75% { transform: translateY(-15px) rotate(3deg); }
}

.floating-element {
  animation: floating 3s ease-in-out infinite;
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 12px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
  border: 2px solid #000;
}

::-webkit-scrollbar-thumb {
  background: #ff0000;
  border: 2px solid #000;
}

::-webkit-scrollbar-thumb:hover {
  background: #cc0000;
}

/* Pixelated image rendering */
.pixelated {
  image-rendering: pixelated;
  image-rendering: -moz-crisp-edges;
  image-rendering: crisp-edges;
}

/* Custom hover effects */
.hover-rage:hover {
  animation: earthquake-shake 0.5s ease-in-out;
}

/* Responsive text adjustments */
@media (max-width: 768px) {
  .text-9xl {
    font-size: 4rem;
  }
  
  .text-8xl {
    font-size: 3.5rem;
  }
  
  .text-6xl {
    font-size: 2.5rem;
  }
}

/* Loading animation */
@keyframes rage-loading {
  0% { transform: scale(1) rotate(0deg); }
  50% { transform: scale(1.2) rotate(180deg); }
  100% { transform: scale(1) rotate(360deg); }
}

.rage-loading {
  animation: rage-loading 2s ease-in-out infinite;
}

/* Glitch effect */
@keyframes glitch {
  0% { transform: translate(0); }
  20% { transform: translate(-2px, 2px); }
  40% { transform: translate(-2px, -2px); }
  60% { transform: translate(2px, 2px); }
  80% { transform: translate(2px, -2px); }
  100% { transform: translate(0); }
}

.glitch {
  animation: glitch 0.3s ease-in-out infinite;
}

/* Rage pulse */
@keyframes rage-pulse {
  0%, 100% { 
    box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.7);
    transform: scale(1);
  }
  50% { 
    box-shadow: 0 0 0 20px rgba(255, 0, 0, 0);
    transform: scale(1.05);
  }
}

.rage-pulse {
  animation: rage-pulse 2s infinite;
}

/* Ensure consistent font across desktop and mobile */
body, h1, h2, h3, h4, h5, h6, p, a, button, input, textarea {
  font-family: 'Comic Neue', 'Comic Sans MS', 'Comic Sans', Arial, Helvetica, sans-serif !important;
}