.chat-widget__webchat {

    background: #fff;

    border-radius: 14px;

    box-shadow: 0 8px 30px rgba(15, 23, 42, .18);

    border: 1px solid #e5e7eb;

    width: 100%;

    pointer-events: auto;

    overflow: hidden;

}



.chat-widget__webchat-head {

    background: linear-gradient(135deg, var(--primary, #22c55e), var(--primary-d, #16a34a));

    color: #fff;

    padding: 10px 12px;

    font-size: 13px;

    font-weight: 700;

}



.chat-widget__webchat-body {

    max-height: 180px;

    overflow-y: auto;

    padding: 10px;

    background: #f8fafc;

}



.chat-widget__webchat-body.is-empty {

    display: none;

}



.chat-widget__webchat-msg {

    margin-bottom: 8px;

    display: flex;

}



.chat-widget__webchat-msg.is-out { justify-content: flex-end; }



.chat-widget__webchat-bubble {

    max-width: 85%;

    padding: 8px 10px;

    border-radius: 12px;

    font-size: 12px;

    line-height: 1.45;

    word-break: break-word;

}



.chat-widget__webchat-msg.is-in .chat-widget__webchat-bubble {

    background: #fff;

    border: 1px solid #e5e7eb;

    color: #111827;

}



.chat-widget__webchat-msg.is-out .chat-widget__webchat-bubble {

    background: #dcfce7;

    color: #14532d;

}



.chat-widget__webchat-meta {

    font-size: 10px;

    color: #94a3b8;

    margin-top: 2px;

}



.chat-widget__webchat-sender {

    font-size: 10px;

    font-weight: 700;

    color: #64748b;

    margin-bottom: 2px;

    max-width: 85%;

}



.chat-widget__webchat-msg.is-out .chat-widget__webchat-sender {

    text-align: right;

    margin-left: auto;

}



.chat-widget__webchat-intro {

    padding: 12px;

    background: #fff;

}



.chat-widget__webchat-intro-text {

    margin: 0 0 10px;

    font-size: 12px;

    line-height: 1.45;

    color: #475569;

}



.chat-widget__webchat-intro input {

    width: 100%;

    border: 1px solid #e5e7eb;

    border-radius: 10px;

    padding: 10px 11px;

    font-size: 16px;

    margin-bottom: 8px;

    box-sizing: border-box;

}



.chat-widget__webchat-chat[hidden],

.chat-widget__webchat-intro[hidden] {

    display: none !important;

}



.chat-widget__webchat-form {

    padding: 10px;

    border-top: 1px solid #e5e7eb;

    background: #fff;

}



.chat-widget__webchat-form input,

.chat-widget__webchat-form textarea {

    width: 100%;

    border: 1px solid #e5e7eb;

    border-radius: 10px;

    padding: 10px 11px;

    font-size: 16px;

    margin-bottom: 8px;

    box-sizing: border-box;

}



.chat-widget__webchat-form textarea {

    resize: none;

    min-height: 52px;

    line-height: 1.4;

}



.chat-widget__webchat-form input {

    margin-bottom: 8px;

    font-size: 15px;

}



.chat-widget__webchat-send {

    width: 100%;

    border: none;

    border-radius: 999px;

    padding: 11px 12px;

    background: var(--primary, #22c55e);

    color: #fff;

    font-size: 14px;

    font-weight: 700;

}



.chat-widget__webchat-send:disabled { opacity: .6; }



.chat-widget--hide-mobile { display: none !important; }

@media (min-width: 768px) {

    .chat-widget--hide-mobile { display: flex !important; }

    .chat-widget--hide-desktop { display: none !important; }

    .chat-widget__webchat-form input,

    .chat-widget__webchat-form textarea {

        font-size: 13px;

    }

}

