.camp-video { margin: 0 0 10px; }
/* 가로 영상: 화면 끝까지(스크린처럼) */
.camp-video .frame { position: relative; overflow: hidden; background: #000; aspect-ratio: 16 / 9; }
.camp-video video { width: 100%; height: 100%; display: block; object-fit: cover; }
/* 세로 영상: 세로 칸, 화면 높이의 80% 안에서 가운데 */
.camp-video.is-vertical { margin-top: 40px; }
.camp-video.is-vertical .frame { border-radius: 14px; aspect-ratio: 9 / 16; width: min(100%, calc(80vh * 9 / 16)); margin: 0 auto; }
#mv-admin-panel .mv-help { font-size: 13px; line-height: 1.6; opacity: .8; margin-bottom: 12px; }
#mv-admin-panel video { display: none; width: 100%; margin-top: 12px; border-radius: 8px; background: #000; }
#mv-admin-panel .mv-msg { font-size: 13px; margin: 10px 0; min-height: 1em; }
#mv-admin-panel .mv-bar { height: 6px; background: rgba(127,127,127,.25); border-radius: 3px; overflow: hidden; display: none; margin-bottom: 10px; }
#mv-admin-panel .mv-bar i { display: block; height: 100%; width: 0; background: #c0392b; }
#mv-admin-panel button { padding: 8px 18px; margin-right: 6px; cursor: pointer; }
@media (max-width: 768px) {
  .camp-video.is-vertical { margin-top: 0; }
  .camp-video.is-vertical .frame { width: 100%; border-radius: 0; }
}
