/* Deployment-specific mobile refinements. The film remains uncropped while
   narration stays inside the same visual frame. */
.music-control {
  width: 2.75rem;
  height: 2.75rem;
  min-width: 2.75rem;
  min-height: 2.75rem;
}

@media (max-width: 900px) and (orientation: portrait) {
  .film-frame {
    width: 100vw;
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .lead-layer {
    padding: 0.75rem 1rem;
  }

  .lead-copy {
    font-size: clamp(1.55rem, 7vw, 3.25rem);
  }

  .scene-anchor {
    top: 5.5%;
    left: max(0.8rem, env(safe-area-inset-left));
    font-size: 0.62rem;
  }

  .cue-caption {
    right: max(0.8rem, env(safe-area-inset-right));
    bottom: 5.5%;
    left: max(0.8rem, env(safe-area-inset-left));
    width: auto;
    min-height: 0;
  }

  .cue-caption p {
    font-size: clamp(0.82rem, 3.7vw, 1.08rem);
    line-height: 1.25;
  }
}

@media (max-height: 590px) and (orientation: landscape) {
  .music-control {
    width: 2.75rem;
    height: 2.75rem;
  }
}
