.resonance-stage-label { position: absolute; z-index: 6; top: 13%; left: 8%; display: grid; gap: 7px; opacity: 0; transform: translateY(12px); transition: opacity .35s, transform .6s var(--ease); }
.resonance-stage-label.is-visible { opacity: 1; transform: translateY(0); }
.resonance-stage-label span { color: var(--coral); font: 11px var(--mono); letter-spacing: .2em; }
.resonance-stage-label b { color: var(--paper); font: 24px var(--serif); font-weight: 400; }
.poster-ritual { position: fixed; z-index: 150; inset: 0; display: grid; place-items: center; color: var(--paper); background: rgba(10,16,17,.94); opacity: 0; visibility: hidden; transition: opacity .45s, visibility .45s; }
.poster-ritual.is-open { opacity: 1; visibility: visible; }
.poster-ritual-inner { width: min(420px, 82vw); display: grid; gap: 18px; text-align: center; }
.poster-ritual-inner strong { font: 29px var(--serif); font-weight: 400; }
.poster-ritual-inner small { color: var(--gold); font: 9px var(--mono); letter-spacing: .15em; }
.poster-ritual-line { height: 1px; background: rgba(242,238,231,.18); }
.poster-ritual-line i { display: block; width: 0; height: 1px; background: linear-gradient(90deg, var(--jade), var(--coral)); transition: width .6s var(--ease); }
.archive-live-wave { display: block; width: 100%; height: 46px; margin: 14px 0 5px; border-top: 1px solid rgba(121,181,165,.15); border-bottom: 1px solid rgba(121,181,165,.15); }
.morph-transition { position: fixed; z-index: 5; inset: 0; width: 100%; height: 100%; pointer-events: none; }
#saveFinalEcho:disabled { opacity: .4; cursor: wait; }

@media (max-width: 680px) {
  .resonance-stage-label { top: 19%; left: 18px; }
  .resonance-stage-label b { font-size: 18px; }
  .archive-live-wave { height: 38px; }
}
