.ar-page { position: absolute; inset: 0; overflow: hidden; } .loading-mask { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, 0.55); } .loading-card { width: 360rpx; padding: 32rpx 28rpx; border-radius: 16rpx; background: rgba(0, 0, 0, 0.6); color: #fff; display: flex; flex-direction: column; align-items: center; } .loading-spinner { width: 64rpx; height: 64rpx; border-radius: 50%; border: 6rpx solid rgba(255, 255, 255, 0.35); border-top-color: #fff; animation: arSpin 0.9s linear infinite; } .loading-text { margin-top: 18rpx; font-size: 28rpx; line-height: 40rpx; text-align: center; } .loading-progress { margin-top: 6rpx; font-size: 24rpx; opacity: 0.8; } @keyframes arSpin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }