#waind-chat-inline-wrapper {
    box-sizing: border-box;
}

#waind-chat-toggle-btn {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 1000 !important;
    border-radius: 20px !important; /* UPDATED: Rounded toggle button */
}

#waind-chat-toggle-btn:focus {
    outline: none !important;
    box-shadow: none !important;
}

/* FIXED: Forces the user's data entry input box to expand 100% horizontally to fit container edges */
#waind-chat-input-field {
    width: 100% !important;
    box-sizing: border-box !important;
    display: block !important;
    border-radius: 8px !important; /* UPDATED: Smooth rounded edges for text entry area */
}

#waind-chat-input-field:focus {
    outline: none !important;
    border: 1px solid #000000 !important;
    box-shadow: none !important;
}

#waind-chat-send-btn:active, 
#waind-chat-send-btn:focus {
    outline: none !important;
    background: #000000 !important;
    border: 1px solid #000000 !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

/* FIXED: Converted to Flex Column to prevent side-by-side bubble layout issues */
#waind-chat-conversation-log {
    background-color: #ffffff;
    border: 1px solid #eeeeee;
    border-radius: 12px; /* UPDATED: Changed from 4px to 12px for a smoother log container box border */
    padding: 12px;
    max-height: 300px;
    overflow-y: auto;
    margin-bottom: 15px;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

/* FIXED: Configured message bubbles to horizontally span 100% of the chat container log width */
.user-msg {
    align-self: flex-end;
    background: #eeeeee;
    color: #000000;
    padding: 12px 16px !important; /* Balanced internal breathing room */
    border-radius: 12px;
    width: 100% !important;        /* Forces full horizontal width expansion */
    max-width: 100% !important;    /* Overrides previous bounds restrictions */
    border: 1px solid #dddddd;
    word-wrap: break-word;
    text-align: start; 
    box-sizing: border-box !important;
}

.ai-msg {
    align-self: flex-start;
    background: #f9f9f9;
    color: #000000;
    padding: 14px 16px !important; /* Increased padding slightly for an elegant block layout */
    border-radius: 12px;
    width: 100% !important;        /* Forces full horizontal width expansion */
    max-width: 100% !important;    /* Overrides previous bounds restrictions */
    border: 1px solid #eeeeee;
    word-wrap: break-word;
    text-align: start;
    box-sizing: border-box !important;
}

.error-msg {
    font-weight: bold;
    color: #cc0000 !important;
    align-self: flex-start; /* Ensures errors match AI alignment flow */
    text-align: start;
}

/* FIXED: Prevented jQuery .show() overrides from corrupting flex spaces */
#waind-chat-loading-indicator {
    display: none; 
    align-items: center; 
    gap: 8px; 
    margin: 5px 0 !important; 
    color: #666; 
    font-size: 13px;
    font-style: italic;
    align-self: flex-start;
}

#waind-chat-loading-indicator[style*="display: block"],
#waind-chat-loading-indicator[style*="display:block"],
#waind-chat-loading-indicator[style*="display: flex"],
#waind-chat-loading-indicator[style*="display:flex"] {
    display: flex !important; 
}

@keyframes waind-pulse-blink {
    0%   { opacity: 0.3; }
    50%  { opacity: 1.0; }
    100% { opacity: 0.3; }
}

.waind-processing-logo {
    width: 32px !important;
    height: 32px !important;
    background-image: url('image_708de1.png') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    display: inline-block !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    animation: waind-pulse-blink 1.4s ease-in-out infinite;
    border-radius: 50%; /* UPDATED: Ensures the pulsing logo frame stays perfectly circular if it has edges */
}

.waind-loading-text {
    font-size: 13px;
    color: #555555;
    font-style: italic;
    line-height: 32px;
}

#waind-chat-container-box .waind-quick-action-btn.button-primary {
    border-radius: 20px !important; 
    padding: 6px 14px !important;
    font-size: inherit !important;
    font-family: inherit !important;
    line-height: normal !important;
    height: auto !important;
    cursor: pointer !important;
    display: inline-block !important;
    box-shadow: none !important;
    text-shadow: none !important;
    text-decoration: none !important;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
    background: #000000 !important;
    border: 1px solid #000000 !important;
    color: #ffffff !important;
    min-width: 110px; /* OPTIMIZED: Prevents layout stuttering during JS string swap */
    text-align: center;
}

#waind-chat-container-box .waind-quick-action-btn.button-primary:hover,
#waind-chat-container-box .waind-quick-action-btn.button-primary:focus {
    background: #222222 !important;
    border-color: #222222 !important;
    color: #ffffff !important;
}

#waind-chat-container-box .waind-quick-action-btn.button-primary:active {
    background: #111111 !important;
    border-color: #111111 !important;
    color: #ffffff !important;
}

#waind-chat-container-box .waind-quick-action-btn.button-primary:disabled {
    background: #777777 !important;
    border-color: #777777 !important;
    color: #dddddd !important;
    opacity: 0.6 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}

/* ADDED: Extra defense layer to make the entire core container panel layout rounded */
#waind-chat-container-box {
    border-radius: 12px !important;
    overflow: hidden;
}