/* Easter egg styles: mjolnir. Moved verbatim out of static/app.css (egg rebuild); linked right after app.css in index.html. */
/* ================================================================
   Mythos pack — Mjolnir celebrate + cursor share one SVG art.
   Celebrate: upright dead-center; glow + lightning only (no fly/spin/rotate).
   ================================================================ */
.cmjolnir-wrap {
  position: fixed;
  inset: 0;
  z-index: 8100;
  pointer-events: none;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.4s ease;
}

.cmjolnir {
  width: 320px;
  height: 320px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  transform: none;
  animation: none;
}

.cmjolnir-fly-svg {
  display: block;
  width: 175px;
  height: 245px;
  overflow: visible; /* thunder bolts draw outside the viewBox */
  transform: none; /* upright — handle down; do not rotate */
  /* no CSS filter here — filter() clips overflow and kills the bolts */
}

/* Auto-charge while celebrating (same glow language as cursor). */
.cmjolnir-fly-svg.is-charging .cmjolnir-shadow {
  opacity: 0.9;
  animation: cmjolnir-glow 0.8s linear infinite alternate;
}

.cmjolnir-fly-svg .cmjolnir-thunder,
.cmjolnir-fly-svg .cmjolnir-thunder-shadow {
  fill: none;
  stroke: #94BDFF;
  stroke-width: 6;
  stroke-dashoffset: 3000;
  stroke-dasharray: 3000;
}

.cmjolnir-fly-svg .cmjolnir-thunder-shadow { stroke: #4089FF; filter: blur(20px); }

.cmjolnir-cursor-svg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100px;
  height: 140px;
  display: block;
  opacity: 0;
  pointer-events: none;
  overflow: visible; /* same as celebrate — CSS filter would clip thunder */
  transform-origin: 50% 80%;
  will-change: transform, left, top;
}

/* Shared glow / thunder (celebrate + cursor) */
.cmjolnir-shadow { opacity: 0; }

.cmjolnir-shadow.charged {
  transition: opacity 300ms ease;
  transform-origin: 50% 50%;
  animation: cmjolnir-glow 0.8s linear infinite alternate;
}

.cmjolnir-thunder,
.cmjolnir-thunder-shadow {
  fill: none;
  stroke: #94BDFF;
  stroke-width: 6;
  stroke-dashoffset: 3000;
  stroke-dasharray: 3000;
}

.cmjolnir-thunder-shadow { stroke: #4089FF; filter: blur(20px); }

@keyframes cmjolnir-glow { from { opacity: 1; } to { opacity: 0.4; } }
