

/* ═══ STREAMING MESSAGE INDICATOR ═══ */
.message.streaming .message-bubble {
    border-left: 2px solid var(--accent-color);
    animation: streamingPulse 1.5s ease-in-out infinite;
}

@keyframes streamingPulse {
    0%, 100% { border-left-color: var(--accent-color); opacity: 1; }
    50% { border-left-color: rgba(0, 168, 232, 0.3); opacity: 0.7; }
}

.message.streaming .message-text::after {
    content: '';
    display: inline-block;
    width: 2px;
    height: 1.2em;
    background: var(--accent-color);
    margin-left: 2px;
    vertical-align: middle;
    animation: cursorBlink 0.8s step-end infinite;
}

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