.event-timer-box {
  position: absolute;
  top: 10px; right: 20px;
  z-index: 160;
  display: flex; align-items: center; gap: 8px;
  background: #0d0a1e;
  border: 1px solid #4338ca;
  border-radius: 10px;
  padding: 6px 18px;
  font-size: 18px; font-weight: 800;
  color: #a5b4fc;
  animation: evtPulse 1s ease-in-out infinite alternate;
}
.event-timer-box.hidden { display: none; }
.event-overlay {
  position: absolute; inset: 0; z-index: 140;
  pointer-events: none; overflow: hidden;
}
.event-overlay.hidden { display: none; }
.event-overlay.active { pointer-events: all; }
.event-qmark {
  position: absolute;
  font-size: 64px; font-weight: 900;
  color: #7c3aed; cursor: pointer;
  text-shadow: 0 0 22px #7c3aed88;
  z-index: 141;
  animation: qIn 0.3s cubic-bezier(0.22,1,0.36,1) both;
  transition: opacity 0.2s;
}
.event-qmark.floating {
  animation: qIn 0.3s cubic-bezier(0.22,1,0.36,1) both,
             qFloat var(--float-dur, 2.5s) ease-in-out infinite alternate;
}
.event-qmark:hover { filter: brightness(1.5); transform: scale(1.25); }
.event-qmark.clicked { opacity: 0 !important; pointer-events: none; }
.event-flash {
  position: absolute; inset: 0; z-index: 139; pointer-events: none;
  animation: evFlash 0.6s ease-out both;
}
.calc-disabled-overlay {
  position: absolute; inset: 0;
  background: rgba(0,0,0,0.65);
  border-radius: 14px; z-index: 10;
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; color: #a5b4fc; font-weight: 800;
  letter-spacing: 2px;
}
