/* ===== 动画效果 ===== */

/* 文字发光 */
.glow-text {
    text-shadow: 0 0 10px rgba(212, 175, 55, 0.6),
                 0 0 20px rgba(212, 175, 55, 0.3),
                 0 0 40px rgba(212, 175, 55, 0.1);
}

/* 脉冲发光按钮 */
.pulse-glow {
    animation: pulseGlow 2s ease-in-out infinite;
}

@keyframes pulseGlow {
    0%, 100% {
        box-shadow: 0 0 5px rgba(212, 175, 55, 0.2);
    }
    50% {
        box-shadow: 0 0 20px rgba(212, 175, 55, 0.4),
                    0 0 40px rgba(212, 175, 55, 0.1);
    }
}

/* 浮动动画 */
@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

/* 淡入 */
.fade-in {
    animation: fadeIn 0.8s ease-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

/* 云雾效果 */
.mist-layer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
    overflow: hidden;
}

.mist {
    position: absolute;
    width: 200%;
    height: 200px;
    background: linear-gradient(90deg,
        transparent,
        rgba(74, 240, 224, 0.02),
        rgba(212, 175, 55, 0.03),
        rgba(74, 240, 224, 0.02),
        transparent);
    filter: blur(60px);
}

.mist-1 {
    top: 10%;
    animation: mistMove 25s linear infinite;
}

.mist-2 {
    top: 50%;
    animation: mistMove 35s linear infinite reverse;
    opacity: 0.7;
}

.mist-3 {
    top: 80%;
    animation: mistMove 30s linear infinite;
    opacity: 0.5;
}

@keyframes mistMove {
    from { transform: translateX(-50%); }
    to { transform: translateX(0); }
}

/* 打字机光标 */
.typing-cursor::after {
    content: '▌';
    color: var(--gold);
    animation: blink 0.8s step-end infinite;
}

@keyframes blink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0; }
}

/* 星光闪烁 */
@keyframes twinkle {
    0%, 100% { opacity: 0.3; }
    50% { opacity: 1; }
}
