.video-modal .video-status:not(.is-error) { display: none !important; }
.cloud-video-player.ays-awaiting-first-frame { position: relative; isolation: isolate; background-color: #2f2927; background-image: var(--ays-video-poster, none); background-position: center; background-size: cover; }
.cloud-video-player.ays-awaiting-first-frame::before { position: absolute; z-index: 108; inset: 0; border-radius: inherit; background: linear-gradient(180deg, rgba(36,28,26,.16), rgba(36,28,26,.3)); content: ""; pointer-events: none; }
.cloud-video-player.ays-awaiting-first-frame::after { position: absolute; z-index: 109; top: 50%; left: 50%; width: 26px; height: 26px; margin: -16px 0 0 -16px; border: 3px solid rgba(255,255,255,.42); border-top-color: #fff; border-radius: 50%; box-shadow: 0 4px 18px rgba(35,24,21,.2); content: ""; pointer-events: none; animation: ays-video-loading-spin .8s linear infinite; }
.cloud-video-player.ays-awaiting-first-frame.xgplayer .xgplayer-poster,
.cloud-video-player.ays-awaiting-first-frame.xgplayer-isloading .xgplayer-poster { display: block !important; opacity: 1; }
.cloud-video-player.ays-awaiting-first-frame.xgplayer .xgplayer-loading,
.cloud-video-player.ays-awaiting-first-frame.xgplayer .xgplayer-enter,
.cloud-video-player.ays-awaiting-first-frame.xgplayer .xgplayer-start { display: none !important; }
@keyframes ays-video-loading-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .cloud-video-player.ays-awaiting-first-frame::after { animation-duration: 1.6s; } }
@media (max-width: 640px) {
	.video-modal { align-items: center; padding: max(7px, env(safe-area-inset-top)) max(7px, env(safe-area-inset-right)) max(7px, env(safe-area-inset-bottom)) max(7px, env(safe-area-inset-left)); }
	.video-modal-dialog { width: 100%; max-height: calc(100dvh - 14px); padding: 14px 9px 9px; border-radius: 14px; overflow: auto; }
	.video-modal-dialog h2 { margin: 2px 48px 12px 4px; font-size: clamp(21px, 6vw, 26px); line-height: 1.15; }
	.video-modal-close { top: 10px; right: 10px; width: 36px; height: 36px; }
	.cloud-video-player, .cloud-video-player .xgplayer, .cloud-video-player video { width: 100% !important; max-width: none !important; }
	.cloud-video-player { aspect-ratio: 16 / 9; border-radius: 9px; }
	.video-status { margin: 9px 3px 0; font-size: 13px; }
}
@media (max-height: 520px) and (orientation: landscape) {
	.video-modal { padding: 0; }
	.video-modal-dialog { display: flex; width: 100%; max-width: none; height: 100dvh; max-height: none; flex-direction: column; padding: 7px; border-radius: 0; overflow: hidden; }
	.video-modal-dialog h2 { flex: 0 0 auto; margin: 0 42px 6px 3px; font-size: 18px; line-height: 1.15; }
	.video-modal-close { top: 5px; right: 7px; width: 30px; height: 30px; }
	.cloud-video-player { min-height: 0; flex: 1 1 auto; aspect-ratio: auto; }
	.video-status { flex: 0 0 auto; margin-top: 4px; }
}
