/* ===========================
   Ask Arsalan AI
=========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Inter',sans-serif;
}

body{
    background:transparent;
}

/* Floating Button */

#chatButton{

    position:fixed;

    bottom:10px;

    right:10px;

    width:60px;

    height:60px;

    border:none;

    border-radius:50%;

    background:#2563EB;

    color:white;

    font-size:28px;

    cursor:pointer;

    box-shadow:0 10px 35px rgba(0,0,0,.35);

    transition:.3s;

    z-index:9998;

}

#chatButton:hover{

    transform:scale(1.08);

}

/* Overlay */

#overlay{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.45);

    opacity:0;

    visibility:hidden;

    transition:.3s;

    z-index:9997;

}

/* Side Panel */

#chatPanel{

    position:fixed;

    top:20px;

    right:-450px;

    width:420px;

    height:calc(100vh - 40px);

    background:#0F172A;

    color:white;

    display:flex;

    flex-direction:column;

    border-radius:24px;

    overflow:hidden;

    transition:.45s ease;

    z-index:9999;

    box-shadow:0 20px 60px rgba(0,0,0,.45);

}

/* Open State */

#chatPanel.active{

    right:0px;

}

#overlay.active{

    opacity:1;

    visibility:visible;

}

/* Header */

.chat-header{

    padding:20px;

    background:#111827;

    display:flex;

    justify-content:space-between;

    align-items:center;

    border-bottom:1px solid rgba(255,255,255,.08);

}

.profile{

    display:flex;

    align-items:center;

    gap:15px;

}

.profile img{

    width:58px;

    height:58px;

    border-radius:50%;

    object-fit:cover;

}

.profile h2{

    font-size:19px;

    margin-bottom:4px;

}

.profile p{

    color:#94A3B8;

    font-size:13px;

}

.status{

    display:flex;

    align-items:center;

    gap:6px;

    color:#22C55E;

    font-size:13px;

    margin-top:4px;

}

.dot{

    width:8px;

    height:8px;

    background:#22C55E;

    border-radius:50%;

}

/* Close Button */

#closeChat{

    background:none;

    border:none;

    color:white;

    font-size:22px;

    cursor:pointer;

}

/* Chat Area */

#chatMessages{

    flex:1;

    overflow-y:auto;

    padding:25px;

}

/* Message */

.bot-message{

    background:#1E293B;

    border-radius:18px;

    padding:18px;

}

.bot-message h3{

    margin-bottom:12px;

}

.bot-message p{

    line-height:1.7;

    color:#CBD5E1;

}

/* Quick Buttons */

.quickQuestions{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin-top:20px;

}

.quickQuestions button{

    background:#2563EB;

    color:white;

    border:none;

    padding:10px 16px;

    border-radius:999px;

    cursor:pointer;

    transition:.25s;

}

.quickQuestions button:hover{

    transform:translateY(-2px);

}

/* Typing */

#typing{

    display:none;

}

.typing-dots span{

    width:10px;

    height:10px;

    background:#94A3B8;

    border-radius:50%;

    animation:bounce 1.2s infinite;

}

.typing-dots span:nth-child(2){

    animation-delay:.2s;

}

.typing-dots span:nth-child(3){

    animation-delay:.4s;

}

@keyframes bounce{

    0%,80%,100%{

        transform:translateY(0);

        opacity:.5;

    }

    40%{

        transform:translateY(-8px);

        opacity:1;

    }

}

/* Input */

.chat-input{

    display:flex;

    padding:20px;

    gap:12px;

    border-top:1px solid rgba(255,255,255,.08);

}

.chat-input textarea{

    flex:1;

    resize:none;

    border:none;

    border-radius:14px;

    background:#1E293B;

    color:white;

    padding:14px;

    outline:none;

    max-height:120px;

}

.chat-input button{

    width:55px;

    border:none;

    border-radius:14px;

    background:#2563EB;

    color:white;

    cursor:pointer;

    font-size:20px;

}

/* Footer */

.chat-footer{

    text-align:center;

    padding:15px;

    font-size:12px;

    color:#94A3B8;

    border-top:1px solid rgba(255,255,255,.08);

}

/* Mobile */

@media(max-width:600px){

#chatPanel{

width:100%;

}

}
/* User Messages */

.user-message{

display:flex;

justify-content:flex-end;

margin-top:18px;

}

.user-message p{

background:#2563EB;

padding:14px 18px;

border-radius:18px 18px 4px 18px;

max-width:80%;

color:white;

line-height:1.6;

}

/* AI Messages */

.bot-message{

margin-top:18px;

}

.bot-message p{

margin-top:8px;

}
.typing-dots{

    display:flex;

    gap:6px;

    align-items:center;

}