/* Zibll Video Player Styles */

.zibll-vp-container {
    margin: 20px auto;
    position: relative;
    background: #000;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.zibll-vp-native,
.zibll-vp-iframe {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 16 / 9;
    border: none;
}

/* 响应式设计 */
@media (max-width: 768px) {
    .zibll-vp-container {
        margin: 15px 0;
        border-radius: 4px;
    }
}

/* 错误提示 */
.zibll-vp-error {
    color: #ff4d4f;
    background: #fff1f0;
    padding: 15px;
    border-radius: 4px;
    border-left: 4px solid #ff4d4f;
}

/* 加载动画 */
.zibll-vp-loading {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 50px;
    height: 50px;
    border: 4px solid rgba(255, 255, 255, 0.3);
    border-top-color: #fff;
    border-radius: 50%;
    animation: zibll-vp-spin 1s linear infinite;
}

@keyframes zibll-vp-spin {
    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

/* 视频容器悬停效果 */
.zibll-vp-container:hover {
    box-shadow: 0 6px 30px rgba(0, 0, 0, 0.25);
}

/* 针对子比主题的适配 */
.zibll-article-content .zibll-vp-container {
    margin: 25px 0;
}

.zibll-article-content .zibll-vp-container iframe {
    border-radius: 6px;
}

/* 暗色主题适配 */
body.dark-theme .zibll-vp-container {
    box-shadow: 0 4px 20px rgba(255, 255, 255, 0.1);
}

body.dark-theme .zibll-vp-container:hover {
    box-shadow: 0 6px 30px rgba(255, 255, 255, 0.15);
}
