/* AI动画容器 */
.ai-animation-container {
    position: relative;
    width: 100%;
    height: 400px;
    background: rgba(0, 0, 0, 0.05);
    border-radius: 20px;
    overflow: hidden;
}

/* 粒子效果 */
.particle {
    position: absolute;
    background: var(--ai-accent-color);
    border-radius: 50%;
    opacity: 0.6;
    animation: float 3s infinite ease-in-out;
}

/* 连接线效果 */
.connection-line {
    position: absolute;
    background: linear-gradient(90deg, var(--primary-color), var(--ai-accent-color));
    height: 2px;
    animation: pulse 2s infinite;
}

/* 波浪效果 */
.wave {
    position: absolute;
    border: 2px solid var(--ai-accent-color);
    border-radius: 50%;
    animation: wave 3s infinite;
}

/* 打字效果 */
.typing-effect {
    overflow: hidden;
    border-right: 2px solid var(--primary-color);
    white-space: nowrap;
    animation: typing 3.5s steps(40, end), blink-caret 0.75s step-end infinite;
}

/* 悬浮效果 */
.floating {
    animation: floating 3s ease-in-out infinite;
}

/* 渐变背景 */
.gradient-bg {
    background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
    background-size: 400% 400%;
    animation: gradient 15s ease infinite;
}

/* 动画关键帧 */
@keyframes float {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-20px);
    }
}

@keyframes pulse {
    0% {
        opacity: 0.4;
        transform: scale(1);
    }
    50% {
        opacity: 1;
        transform: scale(1.1);
    }
    100% {
        opacity: 0.4;
        transform: scale(1);
    }
}

@keyframes wave {
    0% {
        width: 0;
        height: 0;
        opacity: 0.5;
    }
    100% {
        width: 200px;
        height: 200px;
        opacity: 0;
    }
}

@keyframes typing {
    from {
        width: 0;
    }
    to {
        width: 100%;
    }
}

@keyframes blink-caret {
    from, to {
        border-color: transparent;
    }
    50% {
        border-color: var(--primary-color);
    }
}

@keyframes floating {
    0% {
        transform: translate(0, 0px);
    }
    50% {
        transform: translate(0, 15px);
    }
    100% {
        transform: translate(0, -0px);
    }
}

/* AI助手图标动画 */
.ai-assistant-pulse {
    animation: assistant-pulse 2s infinite;
}

@keyframes assistant-pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 123, 255, 0.4);
    }
    70% {
        box-shadow: 0 0 0 10px rgba(0, 123, 255, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(0, 123, 255, 0);
    }
}
