/* Eye Bleach Theme - Maximum chaos and pain for eyes */

:root[data-theme="eyebleach"] {
  /* Background */
  --bg-primary: 255 254 98;     /* #FFFE62 Acid Yellow */
  --bg-secondary: 255 255 120;  /* Slightly lighter */

  /* Text */
  --text-primary: 0 0 0;        /* #000000 Pure Black */
  --text-secondary: 0 0 255;    /* #0000FF Electric Blue */

  /* Border */
  --border: 0 255 0;            /* #00FF00 Pure Lime Green */

  /* Accent */
  --accent-from: 255 0 255;     /* #FF00FF Fuchsia */
  --accent-to: 0 255 0;         /* #00FF00 Lime */
  --accent-blue: 0 0 255;       /* #0000FF Electric Blue */
}

[data-theme="eyebleach"] {
  background: rgb(255 254 98);
  color: rgb(0 0 0);
  animation: eyehurt 5s infinite;
}

@keyframes eyehurt {
  0%, 100% {
    background: rgb(255 254 98);
  }
  50% {
    background: rgb(255 255 120);
  }
}

[data-theme="eyebleach"] header {
  background: linear-gradient(90deg, #FF00FF 0%, #00FF00 50%, #0000FF 100%);
  border-bottom: 5px solid rgb(0 0 0);
  animation: rainbow-shift 3s infinite;
}

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

[data-theme="eyebleach"] header a,
[data-theme="eyebleach"] header .text-gray-700 {
  color: rgb(0 0 0) !important;
  font-weight: 900;
  text-shadow:
    2px 2px 0 #FF00FF,
    -2px -2px 0 #00FF00,
    2px -2px 0 #0000FF;
  animation: text-glitch 1s infinite;
}

@keyframes text-glitch {
  0%, 100% {
    text-shadow:
      2px 2px 0 #FF00FF,
      -2px -2px 0 #00FF00;
  }
  50% {
    text-shadow:
      -2px -2px 0 #00FF00,
      2px 2px 0 #FF00FF;
  }
}

[data-theme="eyebleach"] .text-2xl.font-bold a {
  color: rgb(0 0 0) !important;
  text-shadow:
    3px 3px 0 #FF00FF,
    -3px -3px 0 #00FF00,
    3px -3px 0 #0000FF,
    -3px 3px 0 #FF00FF;
  animation: logo-spin 2s linear infinite;
}

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

[data-theme="eyebleach"] select {
  background: rgb(255 0 255);
  border: 4px solid rgb(0 255 0);
  color: rgb(0 0 0);
  font-weight: 900;
}

[data-theme="eyebleach"] select:hover {
  background: rgb(0 255 0);
  border-color: rgb(255 0 255);
  animation: pulse-chaos 0.3s infinite;
}

@keyframes pulse-chaos {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
}

[data-theme="eyebleach"] input {
  background: white;
  border: 5px solid rgb(0 255 0);
  color: rgb(0 0 0);
  font-weight: 700;
}

[data-theme="eyebleach"] input:focus {
  border-color: rgb(255 0 255);
  box-shadow:
    0 0 20px rgb(255 0 255),
    0 0 40px rgb(0 255 0),
    0 0 60px rgb(0 0 255);
  outline: none;
  animation: border-rave 0.5s infinite;
}

@keyframes border-rave {
  0% {
    border-color: rgb(255 0 255);
  }
  33% {
    border-color: rgb(0 255 0);
  }
  66% {
    border-color: rgb(0 0 255);
  }
  100% {
    border-color: rgb(255 0 255);
  }
}

[data-theme="eyebleach"] .generator-card,
[data-theme="eyebleach"] .rounded-lg.shadow-lg,
[data-theme="eyebleach"] .bg-white {
  background: white !important;
  border: 5px solid rgb(255 0 255);
  box-shadow:
    10px 10px 0 rgb(0 255 0),
    20px 20px 0 rgb(0 0 255);
}

[data-theme="eyebleach"] .bg-gray-50 {
  background: rgb(255 255 120) !important;
  border: 3px solid rgb(0 255 0);
  animation: bg-blink 1s infinite;
}

@keyframes bg-blink {
  0%, 100% {
    background: rgb(255 255 120);
  }
  50% {
    background: rgb(255 254 98);
  }
}

[data-theme="eyebleach"] button,
[data-theme="eyebleach"] .text-blue-600 {
  color: rgb(0 0 255) !important;
  font-weight: 900;
  text-shadow:
    1px 1px 0 #FF00FF,
    -1px -1px 0 #00FF00;
}

[data-theme="eyebleach"] button:hover,
[data-theme="eyebleach"] .text-blue-600:hover {
  color: rgb(255 0 255) !important;
  animation: shake 0.2s infinite;
}

@keyframes shake {
  0%, 100% {
    transform: translateX(-2px);
  }
  50% {
    transform: translateX(2px);
  }
}

[data-theme="eyebleach"] h1 {
  color: rgb(0 0 0);
  text-shadow:
    4px 4px 0 #FF00FF,
    -4px -4px 0 #00FF00,
    4px -4px 0 #0000FF;
  font-weight: 900;
  animation: heading-chaos 2s infinite;
}

@keyframes heading-chaos {
  0% {
    transform: skew(0deg);
  }
  25% {
    transform: skew(2deg);
  }
  75% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0deg);
  }
}

[data-theme="eyebleach"] .text-gray-500,
[data-theme="eyebleach"] .text-gray-600 {
  color: rgb(0 0 255) !important;
}

[data-theme="eyebleach"] .text-gray-700,
[data-theme="eyebleach"] .text-gray-900 {
  color: rgb(0 0 0) !important;
}

[data-theme="eyebleach"] footer {
  background: linear-gradient(90deg, #0000FF 0%, #FF00FF 50%, #00FF00 100%);
  border-top: 5px solid rgb(0 0 0);
  animation: rainbow-shift 3s infinite reverse;
}

[data-theme="eyebleach"] footer,
[data-theme="eyebleach"] footer a,
[data-theme="eyebleach"] footer .text-gray-400 {
  color: rgb(0 0 0) !important;
  font-weight: 700;
}

/* Maximum pain on copy */
[data-theme="eyebleach"] .copied,
[data-theme="eyebleach"] .success {
  color: rgb(0 255 0) !important;
  animation: copy-explosion 0.5s ease;
  text-shadow:
    0 0 20px rgb(0 255 0),
    0 0 40px rgb(255 0 255),
    0 0 60px rgb(0 0 255);
}

@keyframes copy-explosion {
  0% {
    transform: scale(1) rotate(0deg);
  }
  50% {
    transform: scale(2) rotate(180deg);
  }
  100% {
    transform: scale(1) rotate(360deg);
  }
}

/* Chaos on hover */
[data-theme="eyebleach"] .generator-card:hover {
  animation: card-wobble 0.3s infinite;
  box-shadow:
    15px 15px 0 rgb(0 255 0),
    30px 30px 0 rgb(0 0 255),
    45px 45px 0 rgb(255 0 255);
}

@keyframes card-wobble {
  0%, 100% {
    transform: rotate(-1deg);
  }
  50% {
    transform: rotate(1deg);
  }
}

/* WARNING TEXT */
[data-theme="eyebleach"]::before {
  content: "⚠️ EYE PROTECTION RECOMMENDED ⚠️";
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background: rgb(255 0 255);
  color: rgb(0 0 0);
  padding: 5px 20px;
  font-weight: 900;
  z-index: 9999;
  animation: warning-blink 0.5s infinite;
}

@keyframes warning-blink {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
