/* Animasi Loading */
.typing-animation {
    width: 1em;
    height: 1em;
    border-radius: 50%;
    border: 3px solid #4c51bf;
    border-top: 3px solid transparent;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Animasi Fade In */
.chat-box {
    animation: fadeIn 0.3s ease-out;
}

@keyframes fadeIn {
    0% { opacity: 0; transform: translateY(10px); }
    100% { opacity: 1; transform: translateY(0); }
}

/* Style Code Block */
.code-block {
    background-color: #2d2d2d;
    color: #f8f8f2;
    padding: 10px;
    border-radius: 6px;
    font-family: monospace;
    font-size: 14px;
    overflow-x: auto;
    white-space: pre-wrap;
}

.code-container {
    margin-bottom: 15px;
}

/* Styling Pesan */
.message {
    padding: 10px;
    border-radius: 8px;
    margin-bottom: 10px;
    max-width: 75%;
    word-wrap: break-word;
}

.message.user {
    background-color: #dbeafe;
    color: #1e3a8a;
    align-self: flex-end;
}

.message.bot {
    background-color: #e5e7eb;
    color: #1f2937;
    align-self: flex-start;
}

/* Style Markdown */
.bold {
    font-weight: bold;
}

.heading {
    font-size: 1.25rem;
    font-weight: bold;
}

.sub-heading {
    font-size: 1.125rem;
    font-weight: bold;
}

ul {
    list-style-type: disc;
    margin-left: 20px;
}
