/* AGRIGLANCE_AI_CHAT_CSS_V2 */

.agri-ai-chat{
    position:fixed !important;
    right:0 !important;
    bottom:0 !important;
    width:0 !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
    z-index:2147483000 !important;
    font-family:Arial,sans-serif;
    pointer-events:none !important;
}

.agri-ai-chat-toggle{
    position:fixed !important;
    right:20px !important;
    bottom:calc(20px + env(safe-area-inset-bottom)) !important;

    width:62px !important;
    height:62px !important;

    margin:0 !important;
    padding:0 !important;

    border:none !important;
    border-radius:18px !important;

    background:#176b4b !important;
    color:#fff !important;

    cursor:pointer !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;

    box-shadow:0 10px 30px rgba(0,0,0,.28) !important;

    z-index:2147483001 !important;
    pointer-events:auto !important;

    -webkit-appearance:none !important;
    appearance:none !important;
}

.agri-ai-chat-leaf{
    font-size:20px;
    line-height:1;
}

.agri-ai-chat-ai{
    font-size:13px;
    font-weight:800;
    line-height:1;
}

.agri-ai-chat-panel{
    position:fixed !important;

    right:20px !important;
    bottom:calc(94px + env(safe-area-inset-bottom)) !important;

    width:min(390px, calc(100vw - 24px)) !important;

    height:min(
        600px,
        calc(100dvh - 130px - env(safe-area-inset-bottom))
    ) !important;

    max-height:calc(
        100svh - 130px - env(safe-area-inset-bottom)
    ) !important;

    min-height:320px !important;

    margin:0 !important;
    padding:0 !important;

    background:#fff !important;

    border:1px solid rgba(0,0,0,.14) !important;
    border-radius:20px !important;

    box-shadow:0 16px 50px rgba(0,0,0,.28) !important;

    overflow:hidden !important;

    display:none !important;
    flex-direction:column !important;

    z-index:2147483002 !important;
    pointer-events:auto !important;

    -webkit-overflow-scrolling:touch;
}

.agri-ai-chat.is-open .agri-ai-chat-panel{
    display:flex !important;
}

.agri-ai-chat.is-open .agri-ai-chat-toggle{
    display:none !important;
}

.agri-ai-chat-header{
    flex:0 0 auto !important;

    min-height:66px !important;

    padding:12px 14px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;

    background:#176b4b !important;
    color:#fff !important;
}

.agri-ai-chat-title{
    min-width:0;
}

.agri-ai-chat-title strong{
    display:block;
    font-size:17px;
    line-height:1.25;
}

.agri-ai-chat-title small{
    display:block;
    margin-top:3px;
    font-size:12px;
    opacity:.88;
}

.agri-ai-chat-close{
    width:38px !important;
    height:38px !important;

    margin:0 !important;
    padding:0 !important;

    flex:0 0 38px;

    border:none !important;
    border-radius:10px !important;

    background:rgba(255,255,255,.16) !important;
    color:#fff !important;

    font-size:28px !important;
    line-height:1 !important;

    cursor:pointer !important;

    -webkit-appearance:none !important;
    appearance:none !important;
}

.agri-ai-chat-messages{
    flex:1 1 auto !important;

    min-height:0 !important;

    padding:14px !important;

    overflow-y:auto !important;
    overflow-x:hidden !important;

    background:#f6f8f7 !important;

    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
}

.agri-ai-message{
    display:flex;
    width:100%;
    margin-bottom:10px;
}

.agri-ai-message.user{
    justify-content:flex-end;
}

.agri-ai-message.ai{
    justify-content:flex-start;
}

.agri-ai-bubble{
    max-width:86%;

    padding:10px 13px;

    border-radius:15px;

    font-size:14px;
    line-height:1.5;

    word-break:break-word;
    overflow-wrap:anywhere;
}

.agri-ai-message.ai .agri-ai-bubble{
    background:#fff;
    color:#263238;

    border:1px solid rgba(0,0,0,.08);

    border-bottom-left-radius:4px;
}

.agri-ai-message.user .agri-ai-bubble{
    background:#176b4b;
    color:#fff;

    border-bottom-right-radius:4px;
}

.agri-ai-typing .agri-ai-bubble{
    opacity:.72;
    font-style:italic;
}

.agri-ai-chat-form{
    flex:0 0 auto !important;

    padding:10px !important;

    display:flex !important;
    align-items:flex-end !important;
    gap:8px !important;

    border-top:1px solid rgba(0,0,0,.10) !important;

    background:#fff !important;
}

.agri-ai-chat-form textarea{
    flex:1 1 auto !important;

    min-width:0 !important;

    height:46px !important;
    max-height:110px !important;

    margin:0 !important;
    padding:11px 12px !important;

    resize:none !important;

    border:1px solid #cbd5d1 !important;
    border-radius:12px !important;

    background:#fff !important;
    color:#222 !important;

    font-family:inherit !important;
    font-size:14px !important;
    line-height:1.4 !important;

    outline:none !important;
}

.agri-ai-chat-form textarea:focus{
    border-color:#176b4b !important;
    box-shadow:0 0 0 2px rgba(23,107,75,.12) !important;
}

.agri-ai-chat-form button{
    flex:0 0 auto !important;

    height:46px !important;

    margin:0 !important;
    padding:0 14px !important;

    border:none !important;
    border-radius:12px !important;

    background:#176b4b !important;
    color:#fff !important;

    font-size:13px !important;
    font-weight:700 !important;

    cursor:pointer !important;

    -webkit-appearance:none !important;
    appearance:none !important;
}

.agri-ai-chat-form button:disabled{
    opacity:.6;
    cursor:not-allowed;
}

@media(max-width:600px){

    .agri-ai-chat-toggle{
        right:14px !important;
        bottom:calc(14px + env(safe-area-inset-bottom)) !important;

        width:58px !important;
        height:58px !important;

        border-radius:16px !important;
    }

    .agri-ai-chat-panel{
        right:8px !important;
        left:8px !important;

        width:auto !important;

        bottom:calc(8px + env(safe-area-inset-bottom)) !important;

        height:calc(
            100dvh - 16px - env(safe-area-inset-bottom)
        ) !important;

        max-height:calc(
            100svh - 16px - env(safe-area-inset-bottom)
        ) !important;

        border-radius:16px !important;
    }

    .agri-ai-chat.is-open .agri-ai-chat-panel{
        display:flex !important;
    }

    .agri-ai-bubble{
        max-width:91%;
    }
}

@media(max-width:480px){

    .agri-ai-chat-form{
        padding:8px !important;
    }

    .agri-ai-chat-form button{
        padding:0 11px !important;
    }
}
