﻿@keyframes imorPulse {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.6;
        transform: scale(0.85);
    }
}

@keyframes imorFadeUp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes imorTypingBounce {
    0%, 60%, 100% {
        transform: translateY(0);
        opacity: 0.4;
    }

    30% {
        transform: translateY(-5px);
        opacity: 1;
    }
}

#imora-chatbot-messages::-webkit-scrollbar {
    width: 4px;
}

#imora-chatbot-messages::-webkit-scrollbar-track {
    background: transparent;
}

#imora-chatbot-messages::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,0.12);
    border-radius: 4px;
}

#imora-chatbot-input::placeholder {
    color: #6b7280;
}

.imor-row {
    display: flex;
    gap: 8px;
    animation: imorFadeUp 0.28s cubic-bezier(0.22,1,0.36,1) forwards;
}

.imor-row-bot {
    justify-content: flex-start;
    align-items: flex-end;
}

.imor-row-user {
    justify-content: flex-end;
}

.imor-avatar {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: linear-gradient(135deg,#767DFF,#767DFF);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
    margin-bottom: 2px;
}

.imor-bubble {
    padding: 10px 14px;
    border-radius: 18px;
    max-width: 82%;
    font-size: 13.5px;
    line-height: 1.55;
    word-break: break-word;
    overflow-wrap: anywhere;
}

.imor-bubble-bot {
    background-color: #1e2025;
    color: #dde1e8;
    border-bottom-left-radius: 5px;
    border: 1px solid rgba(255,255,255,0.06);
}

.imor-bubble-user {
    background: linear-gradient(135deg,#767DFF,#767DFF);
    color: #ffffff;
    border-bottom-right-radius: 5px;
}

.imor-typing {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 10px 14px;
}

    .imor-typing span {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: rgba(255,255,255,0.4);
        animation: imorTypingBounce 1.2s infinite;
    }

        .imor-typing span:nth-child(2) {
            animation-delay: 0.2s;
        }

        .imor-typing span:nth-child(3) {
            animation-delay: 0.4s;
        }