/* 自定义工具类 */
.text-shadow {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

.text-shadow-gold {
    text-shadow: 0 0 5px rgba(212, 175, 55, 0.7);
}

.bg-glow {
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.5);
}

.gold-gradient {
    background: linear-gradient(135deg, #f8e6b3 0%, #d4af37 50%, #b8860b 100%);
}

.silver-gradient {
    background: linear-gradient(135deg, #e6e6e6 0%, #c0c0c0 50%, #999999 100%);
}

.golden-border {
    border-image: linear-gradient(to right, #f8e6b3, #d4af37, #b8860b) 1;
}

/* 页面加载动画 */
body {
    transition: opacity 1s ease-in-out;
}

body.opacity-0 {
    opacity: 0;
}

body.opacity-100 {
    opacity: 1;
}

/* FAQ 动画 */
.faq-icon {
    transition: transform 0.3s ease;
}

.faq-icon.rotate-180 {
    transform: rotate(180deg);
}

/* 弹窗动画 */
#modal {
    transition: opacity 0.3s ease;
}

#modal:not(.hidden) {
    animation: fadeIn 0.3s ease;
}

#modal .bg-gray-900 {
    animation: slideIn 0.3s ease;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes slideIn {
    from {
        transform: translateY(-50px) scale(0.9);
        opacity: 0;
    }
    to {
        transform: translateY(0) scale(1);
        opacity: 1;
    }
}