body {
  font-family: "Comic Neue", cursive;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%20width%3D%2264%22%20height%3D%2264%22%3E%3Cpath%20fill%3D%22%23f0f0f0%22%20d%3D%22M8%2016l-8%208h8v8l8-8v-8h-8zm24%200l-8%208h8v8l8-8v-8h-8zm24%200l-8%208h8v8l8-8v-8h-8zm-48%2024l-8%208h8v8l8-8v-8h-8zm24%200l-8%208h8v8l8-8v-8h-8zm24%200l-8%208h8v8l8-8v-8h-8z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  cursor: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='40' height='48' viewport='0 0 100 100' style='fill:black;font-size:24px;'><text y='50%'>🤪</text></svg>")
    16 0, auto;
}

.propeller {
  animation: spin 2s linear infinite;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.rainbow-text {
  background-image: linear-gradient(to right, #ff0000, #ff7f00, #ffff00, #00ff00, #0000ff, #4b0082, #8b00ff);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: rainbow 4s linear infinite;
}

@keyframes rainbow {
  0% {
    filter: hue-rotate(0deg);
  }
  100% {
    filter: hue-rotate(360deg);
  }
}

.token-card {
  transition: all 0.3s ease;
}

.token-card:hover {
  transform: translateY(-10px) rotate(3deg);
}

.crazy-button {
  transition: all 0.2s;
}

.crazy-button:hover {
  transform: scale(1.1) rotate(3deg);
}

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

@keyframes float {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20px);
  }
}

.jello-horizontal {
  animation: jello-horizontal 0.9s both;
}

@keyframes jello-horizontal {
  0% {
    transform: scale3d(1, 1, 1);
  }
  30% {
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    transform: scale3d(1.05, 0.95, 1);
  }
  100% {
    transform: scale3d(1, 1, 1);
  }
}

.confetti {
  position: fixed;
  width: 10px;
  height: 10px;
  background-color: #f00;
  opacity: 0;
  z-index: 1000;
  pointer-events: none;
}

.emoji-rain {
  position: fixed;
  font-size: 24px;
  z-index: 1000;
  pointer-events: none;
  animation: emoji-fall 5s linear forwards;
}

@keyframes emoji-fall {
  0% {
    transform: translateY(-100vh);
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    transform: translateY(100vh);
    opacity: 0;
  }
}

.glitch {
  position: relative;
}

.glitch::before,
.glitch::after {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.glitch::before {
  left: 2px;
  text-shadow: -1px 0 red;
  animation: glitch-anim 2s infinite linear alternate-reverse;
}

.glitch::after {
  left: -2px;
  text-shadow: 1px 0 blue;
  animation: glitch-anim 3s infinite linear alternate-reverse;
}

@keyframes glitch-anim {
  0% {
    clip-path: inset(71% 0 10% 0);
  }
  20% {
    clip-path: inset(29% 0 71% 0);
  }
  40% {
    clip-path: inset(83% 0 1% 0);
  }
  60% {
    clip-path: inset(23% 0 61% 0);
  }
  80% {
    clip-path: inset(13% 0 82% 0);
  }
  100% {
    clip-path: inset(1% 0 33% 0);
  }
}

.spin-hover:hover {
  animation: spin 0.5s linear;
}

.disco {
  animation: disco 2s infinite;
}

@keyframes disco {
  0% {
    background-color: red;
  }
  25% {
    background-color: yellow;
  }
  50% {
    background-color: blue;
  }
  75% {
    background-color: green;
  }
  100% {
    background-color: red;
  }
}

.marquee {
  white-space: nowrap;
  overflow: hidden;
  box-sizing: border-box;
}

.marquee span {
  display: inline-block;
  padding-left: 100%;
  animation: marquee 15s linear infinite;
}

@keyframes marquee {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-100%, 0);
  }
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

.modal-content {
  background-color: white;
  padding: 2rem;
  border-radius: 1rem;
  max-width: 90%;
  max-height: 90%;
  overflow: auto;
}

.frens-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1rem;
  margin-top: 2rem;
}

.frens-gallery img {
  width: 100%;
  height: auto;
  border-radius: 0.5rem;
  transition: all 0.3s ease;
}

.frens-gallery img:hover {
  transform: scale(1.05);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

/* Add these styles at the end of the file */

.floating-warning {
  position: fixed;
  z-index: 9999;
  padding: 15px 25px;
  background-color: #ff0000;
  color: white;
  font-size: 24px;
  font-weight: bold;
  border-radius: 10px;
  box-shadow: 0 0 20px rgba(255, 0, 0, 0.7);
  cursor: pointer;
  user-select: none;
  animation: float-around 10s infinite ease-in-out, pulse 1s infinite alternate;
  transition: transform 0.3s ease;
}

.floating-warning:hover {
  transform: scale(1.1);
}

@keyframes float-around {
  0% {
    top: 20%;
    left: 20%;
  }
  25% {
    top: 20%;
    left: 70%;
  }
  50% {
    top: 70%;
    left: 70%;
  }
  75% {
    top: 70%;
    left: 20%;
  }
  100% {
    top: 20%;
    left: 20%;
  }
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 20px rgba(255, 0, 0, 0.7);
  }
  100% {
    box-shadow: 0 0 40px rgba(255, 0, 0, 1);
  }
}

.destruction-level-1 {
  filter: hue-rotate(90deg);
}

.destruction-level-2 {
  filter: hue-rotate(180deg) contrast(1.5);
  animation: shake 0.5s infinite;
}

.destruction-level-3 {
  filter: hue-rotate(270deg) contrast(2) brightness(0.7);
  animation: shake 0.3s infinite;
}

.destruction-level-4 {
  background-color: #000 !important;
  color: #ff0000 !important;
  filter: contrast(1.2) brightness(0.4);
}

@keyframes shake {
  0%,
  100% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-5px) rotate(-1deg);
  }
  50% {
    transform: translateX(5px) rotate(1deg);
  }
  75% {
    transform: translateX(-5px) rotate(-1deg);
  }
}

.glitch-text {
  position: relative;
  animation: glitch-text 0.4s infinite;
}

@keyframes glitch-text {
  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);
  }
}

.jumpscare-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: black;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transition: none;
  pointer-events: all;
}

.jumpscare-image {
  max-width: 90%;
  max-height: 90%;
  animation: pulse-scary 0.5s infinite alternate;
}

@keyframes pulse-scary {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.05);
  }
}

.destruction-warning {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: rgba(0, 0, 0, 0.8);
  color: #ff0000;
  padding: 20px;
  border-radius: 10px;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  z-index: 9998;
  animation: fade-out 2s forwards;
  pointer-events: none;
}

@keyframes fade-out {
  0% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/* Contract address styles */
.contract-address {
  font-family: monospace;
  transition: all 0.3s ease;
}

.copy-button {
  transition: all 0.2s ease;
}

.copy-button:hover {
  transform: scale(1.1);
}

.copy-success {
  animation: pulse-green 1s;
}

@keyframes pulse-green {
  0% {
    box-shadow: 0 0 0 0 rgba(72, 187, 120, 0.7);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(72, 187, 120, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(72, 187, 120, 0);
  }
}

/* Add these styles for the retro popup spam windows */
.retro-popup {
  position: fixed;
  background: linear-gradient(to bottom, #0078d7, #0053a6);
  border: 3px solid #0078d7;
  border-top-color: #00a2ff;
  border-left-color: #00a2ff;
  color: white;
  padding: 2px;
  z-index: 9998;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5);
  width: 300px;
  max-width: 80vw;
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  animation: popup-appear 0.3s ease-out;
  overflow: hidden;
}

.retro-popup-header {
  background: #0078d7;
  padding: 5px 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: move;
}

.retro-popup-title {
  font-weight: bold;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.retro-popup-close {
  background: #ff3333;
  color: white;
  border: 1px solid white;
  width: 16px;
  height: 16px;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.retro-popup-content {
  background: #f0f0f0;
  color: #000;
  padding: 15px;
  font-size: 14px;
}

.retro-popup-buttons {
  background: #f0f0f0;
  padding: 10px;
  display: flex;
  justify-content: center;
  gap: 10px;
}

.retro-popup-button {
  background: #e1e1e1;
  border: 2px solid #999;
  border-top-color: #fff;
  border-left-color: #fff;
  padding: 5px 15px;
  cursor: pointer;
  font-size: 12px;
  min-width: 80px;
  text-align: center;
}

.retro-popup-button:hover {
  background: #d1d1d1;
}

.retro-popup-button.primary {
  background: #0078d7;
  color: white;
  border-color: #005999;
  border-top-color: #00a2ff;
  border-left-color: #00a2ff;
}

.retro-popup-button.primary:hover {
  background: #0053a6;
}

.retro-popup-blink {
  animation: blink 1s infinite;
}

@keyframes blink {
  0%,
  49% {
    color: red;
  }
  50%,
  100% {
    color: yellow;
  }
}

@keyframes popup-appear {
  0% {
    transform: scale(0.5);
    opacity: 0;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

/* Windows 98 style popup */
.retro-popup.win98 {
  background: #c0c0c0;
  border: 2px solid #000;
  border-top-color: #dfdfdf;
  border-left-color: #dfdfdf;
}

.retro-popup.win98 .retro-popup-header {
  background: linear-gradient(to right, #000080, #1084d0);
  color: white;
  padding: 3px 5px;
}

.retro-popup.win98 .retro-popup-close {
  background: #c0c0c0;
  color: black;
  border: 1px outset #fff;
  font-weight: bold;
}

/* Hot pink popup */
.retro-popup.hot-pink {
  background: #ff69b4;
  border: 3px solid #ff1493;
}

.retro-popup.hot-pink .retro-popup-header {
  background: #ff1493;
}

/* Green popup */
.retro-popup.green {
  background: #00ff00;
  border: 3px solid #008000;
}

.retro-popup.green .retro-popup-header {
  background: #008000;
}

/* Yellow popup */
.retro-popup.yellow {
  background: #ffff00;
  border: 3px solid #ffd700;
}

.retro-popup.yellow .retro-popup-header {
  background: #ffd700;
  color: black;
}

.retro-popup.yellow .retro-popup-close {
  color: black;
  background: #ff6347;
}
