/* —— easter eggs —— */
.egg-toast{
  position:fixed; left:50%; bottom:1.6rem; z-index:10000;
  transform:translate(-50%, 20px); opacity:0; pointer-events:none;
  font-family:var(--mono); font-size:.78rem; font-weight:700;
  background:var(--tinta); color:var(--papel);
  padding:.7rem 1.2rem; border-radius:999px;
  box-shadow:0 12px 40px rgba(0,0,0,.25);
  transition:opacity .3s, transform .35s cubic-bezier(.22,1.15,.36,1);
}
.egg-toast.on{ opacity:1; transform:translate(-50%,0); }

.egg-particula{
  position:fixed; width:8px; height:8px; border-radius:2px; z-index:9998; pointer-events:none;
  animation:eggPart .65s ease-out forwards;
}
@keyframes eggPart{
  to{ transform:translate(var(--tx), var(--ty)) scale(0); opacity:0; }
}

body.egg-konami{ animation:eggShake .4s ease; }
@keyframes eggShake{
  0%,100%{ transform:translateX(0); }
  25%{ transform:translateX(-4px); }
  75%{ transform:translateX(4px); }
}

#mascota.egg-baila{
  animation:eggBaila 1.5s cubic-bezier(.22,1.15,.36,1);
}
@keyframes eggBaila{
  0%,100%{ transform:rotate(0) translateY(0); }
  20%{ transform:rotate(-8deg) translateY(-10px); }
  40%{ transform:rotate(8deg) translateY(-4px); }
  60%{ transform:rotate(-6deg) translateY(-12px); }
  80%{ transform:rotate(4deg) translateY(-2px); }
}

#mascota.egg-neon #pupilaIzq,
#mascota.egg-neon #pupilaDer{
  fill:#39ffb6; filter:drop-shadow(0 0 6px #39ffb6);
}
#mascota.egg-neon circle[fill="#fff"]{
  filter:drop-shadow(0 0 8px #17a2b8);
}

body.egg-mono, body.egg-mono *{
  font-family:var(--mono) !important;
  letter-spacing:-0.02em;
}

body.egg-glitch{
  animation:eggGlitch .9s steps(2) forwards;
}
@keyframes eggGlitch{
  0%,100%{ filter:none; transform:none; }
  20%{ filter:hue-rotate(90deg); transform:translate(2px,-1px); }
  40%{ filter:hue-rotate(-40deg); transform:translate(-3px,1px); }
  60%{ filter:saturate(2); transform:translate(1px,2px); }
  80%{ filter:contrast(1.2); transform:translate(-1px,-2px); }
}

body.egg-disco{
  --acento:#f0662f;
  animation:eggDisco 2.4s linear infinite;
}
@keyframes eggDisco{
  0%{ filter:hue-rotate(0deg); }
  100%{ filter:hue-rotate(360deg); }
}

.lang-toggle{
  font-family:var(--mono); font-size:.72rem; font-weight:700;
  padding:.45rem .7rem; border-radius:var(--radio-sm);
  border:1px solid var(--linea); color:var(--tinta-suave);
  transition:var(--transicion);
}
.lang-toggle:hover{ color:var(--tinta); border-color:var(--tinta-suave); }
.lang-toggle:focus-visible{ outline:2px solid var(--acento); outline-offset:2px; }

@media (prefers-reduced-motion:reduce){
  .egg-toast, .egg-particula, body.egg-konami, #mascota.egg-baila, body.egg-disco{ animation:none !important; }
}
