.chat-window { 
    max-height: 60vh; 
    overflow-y: auto; 
}

.chat-messages { 
    display: flex; 
    flex-direction: column; 
    gap: 0.5rem; 
}

.bubble { 
    display: inline-block; 
    padding: 0.5rem 0.75rem; 
    border-radius: 0.75rem; 
    max-width: 100%;
    border: 1px solid transparent;
}

.bubble-user { 
    align-self: flex-end; 
    background: #e7f1ff;
    border-color: #c8defc;
    color: #1f3a5f;
}

.bubble-assistant { 
    align-self: flex-start; 
    background: #f1f3f5;
    border-color: #d7dde2;
    color: #212529;
}

.bubble-system { 
    align-self: center; 
    background: #e9ecef; 
    color: #495057; 
    font-size: 0.9rem; 
}

/* small image thumb inside a chat bubble */
.bubble .thumb {
    display: block;
    max-width: 180px;
    max-height: 120px;
    width: auto;
    height: auto;
    border-radius: 8px;
    margin-top: 6px;
    box-shadow: 0 1px 3px rgba(0,0,0,.15);
}
