.backdrop-blur-sm {
    backdrop-filter: blur(8px);
}

.aspect-video {
    aspect-ratio: 16 / 9;
}

/* 互动场景样式 */
.audio-point {
    position: absolute;
    width: 48px;
    height: 48px;
    cursor: pointer;
    transition: transform 0.2s;
}

.audio-point:hover {
    transform: scale(1.2);
}

.sword {
    position: absolute;
    width: 64px;
    height: 64px;
    background-size: contain;
    background-repeat: no-repeat;
    cursor: grab;
}

.sword:active {
    cursor: grabbing;
}

.song-btn {
    transition: all 0.3s ease;
}

.song-btn:hover {
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
}

.song-btn[style*="opacity: 0"] {
    transition: opacity 0.5s ease;
}

/* 故事提示的淡入淡出效果 */
#storyHint {
    opacity: 1;
    transform: translateY(0);
}

#storyHint.hidden {
    opacity: 0;
    transform: translateY(-20px);
    pointer-events: none;
}

/* 进度条样式优化 */
#progressBar {
    transition: width 0.3s ease;
}

/* 控制栏的悬停效果 */
.control-bar {
    transition: opacity 0.3s ease;
}

/* 视频容器圆角阴影效果 */
.video-container {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

/* 进度条容器的悬停效果 */
#progressContainer {
    transition: height 0.2s ease;
}

#progressContainer:hover {
    height: 0.625rem;
}

/* 播放/暂停按钮悬停效果 */
#playPauseBtn {
    transition: transform 0.2s ease;
}

#playPauseBtn:hover {
    transform: scale(1.1);
}

/* 时间显示的渐变效果 */
.group:hover .group-hover\:opacity-100 {
    transition-delay: 0.2s;
}

/* 继续按钮样式 */
#continueBtn {
    transition: all 0.3s ease;
}

#continueBtn:hover {
    background-color: #f9fafb;
    transform: translateY(-1px);
}

/* 邀请饮酒按钮样式 */
.drink-btn {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.drink-btn:hover {
    text-shadow: 0 2px 8px rgba(255, 255, 255, 0.5);
}

/* 幕章节按钮动画效果 */
@keyframes actButtonAppear {
    0% {
        opacity: 0;
        transform: translate(-50%, 20px);
    }
    50% {
        opacity: 0.5;
        transform: translate(-50%, -60%);
    }
    100% {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
}

.act-btn {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1),
                0 0 20px rgba(255, 255, 255, 0.1);
    min-width: 200px;
    text-align: center;
    animation: actButtonAppear 1s ease-out forwards;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.1));
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.act-btn:hover {
    text-shadow: 0 2px 8px rgba(255, 255, 255, 0.7);
    transform: translateY(-2px) scale(1.05);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2),
                0 0 30px rgba(255, 255, 255, 0.2);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.15));
    border-color: rgba(255, 255, 255, 0.3);
}

.act-btn:active {
    transform: translateY(-1px) scale(1.02);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15),
                0 0 20px rgba(255, 255, 255, 0.15);
} 