/* ============ TRANSITIONS ============ */
.transition-overlay {
  position: fixed;
  inset: 0;
  z-index: 300;
  pointer-events: none;
  display: none;
}

.transition-overlay.active { display: block; }

.trans-curtain {
  position: absolute;
  inset: 0;
  background: var(--ink-black);
  opacity: 0;
}

.trans-flame {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at center bottom, #ff5500 0%, #aa1100 40%, transparent 70%);
  opacity: 0;
  mix-blend-mode: screen;
}

.trans-paper {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, var(--parchment-light), var(--parchment-aged));
  transform: scaleY(0);
  transform-origin: top;
}

.trans-silhouette {
  position: absolute;
  bottom: 0;
  left: -40%;
  width: 60%;
  height: 60%;
  display: grid;
  place-items: end center;
  opacity: 0;
}

.slide-enter {
  animation: slideEnter 0.7s ease-out;
}
@keyframes slideEnter {
  from { opacity: 0; transform: scale(1.04); }
  to { opacity: 1; transform: scale(1); }
}
