/* ===========================================================
   SERVICE BHAIYA
   Virtual Receptionist Widget
   Production CSS
=========================================================== */

#receptionist-widget{

    position:fixed !important;

    bottom:20px;

    right:20px;

    width:280px;

    max-width:calc(100vw - 24px);

    background:#fff;

    border-radius:18px;

    border:1px solid #e5e7eb;

    overflow:hidden;

    z-index:999999;

    box-shadow:0 15px 45px rgba(0,0,0,.22);

    opacity:0;

    transform:translateY(20px) scale(.95);

    pointer-events:none;

    transition:.35s ease;

    font-family:Inter,sans-serif;

}

#receptionist-widget.show{

    opacity:1;

    transform:translateY(0) scale(1);

    pointer-events:auto;

}

.widget-header{

    background:linear-gradient(135deg,#dc2626,#991b1b);

    color:#fff;

    padding:12px 14px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    cursor:move;

}

.widget-title{

    display:flex;

    align-items:center;

    gap:10px;

}

.widget-logo{

    width:40px;

    height:40px;

    border-radius:50%;

    background:rgba(255,255,255,.18);

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:22px;

}

.widget-title h4{

    margin:0;

    font-size:15px;

    font-weight:700;

}

.widget-title small{

    display:block;

    opacity:.85;

    font-size:11px;

}

#minimize-btn{

    width:34px;

    height:34px;

    border:none;

    background:rgba(255,255,255,.15);

    color:#fff;

    border-radius:8px;

    cursor:pointer;

    font-size:18px;

}

#minimize-btn:hover{

    background:rgba(255,255,255,.25);

}

#widget-content{

    padding:12px;

}

#welcome-video{

    width:100%;

    height:145px;

    background:#000;

    border-radius:12px;

    object-fit:contain;

    display:block;

    cursor:pointer;

    user-select:none;

}

#chat-progress{

    margin:12px 0;

}

.progress-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    font-size:11px;

    font-weight:600;

    margin-bottom:6px;

}

.progress-line{

    width:100%;

    height:7px;

    background:#ececec;

    border-radius:20px;

    overflow:hidden;

}

#progress-fill{

    width:25%;

    height:100%;

    background:linear-gradient(90deg,#dc2626,#ff6b35);

    transition:.35s ease;

}

/* ===========================================================
   CHAT AREA
=========================================================== */

#chat-box{

    height:180px;

    overflow-y:auto;

    background:#f8fafc;

    border:1px solid #e5e7eb;

    border-radius:12px;

    padding:10px;

    margin-bottom:12px;

    scroll-behavior:smooth;

}

#chat-box::-webkit-scrollbar{

    width:5px;

}

#chat-box::-webkit-scrollbar-thumb{

    background:#d1d5db;

    border-radius:20px;

}

/* BOT MESSAGE */

.bot-message{

    background:#ffffff;

    border-left:4px solid #dc2626;

    padding:10px 12px;

    border-radius:10px;

    margin-bottom:10px;

    color:#374151;

    font-size:13px;

    line-height:1.6;

    box-shadow:0 3px 10px rgba(0,0,0,.05);

}

/* USER MESSAGE */

.user-message{

    background:#dc2626;

    color:#fff;

    padding:10px 12px;

    border-radius:10px;

    margin:10px 0;

    margin-left:35px;

    font-size:13px;

    line-height:1.5;

    text-align:right;

}

/* ===========================================================
   BUTTONS
=========================================================== */

.chat-options{

    display:grid;

    gap:8px;

    margin-top:10px;

}

.btn-chat{

    width:100%;

    border:none;

    background:#dc2626;

    color:#fff;

    padding:10px;

    border-radius:10px;

    cursor:pointer;

    font-size:13px;

    font-weight:600;

    transition:.25s;

}

.btn-chat:hover{

    background:#b91c1c;

    transform:translateY(-2px);

}

.btn-chat:active{

    transform:scale(.98);

}

.btn-support{

    background:#16a34a !important;

}

.btn-support:hover{

    background:#15803d !important;

}

/* ===========================================================
   FOOTER
=========================================================== */

.chat-footer{

    margin-bottom:10px;

}

#restart-chat{

    width:100%;

    background:#111827;

}

#restart-chat:hover{

    background:#000;

}

/* ===========================================================
   CONTROLS
=========================================================== */

.controls{

    margin-top:10px;

}

#unmute-btn{

    width:100%;

    border:none;

    padding:10px;

    border-radius:10px;

    cursor:pointer;

    background:#f59e0b;

    color:#fff;

    font-size:13px;

    font-weight:600;

    transition:.25s;

}

#unmute-btn:hover{

    background:#d97706;

}

/* ===========================================================
   MOBILE
=========================================================== */

@media(max-width:768px){

    #receptionist-widget{

        right:12px;

        bottom:12px;

        width:320px;

        max-width:calc(100vw - 24px);

    }

}

@media(max-width:420px){

    #receptionist-widget{

        left:10px;

        right:10px;

        width:auto;

        bottom:10px;

    }

}

/* ===========================================================
   ANIMATION
=========================================================== */

@keyframes chatFade{

    from{

        opacity:0;

        transform:translateY(8px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

.bot-message,
.user-message{

    animation:chatFade .25s ease;

}