/* VISQO Messages — conversation loading state */
#visqoChatLoading{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:360px;
    z-index:120;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:28px;
    box-sizing:border-box;
    background:
        radial-gradient(circle at 50% 42%,rgba(139,92,246,.11),transparent 28%),
        linear-gradient(180deg,rgba(9,17,29,.985),rgba(8,15,26,.995));
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .22s ease,visibility .22s ease;
}
#visqoChatLoading.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}
.vq-chat-loading-card{
    width:min(330px,100%);
    text-align:center;
}
.vq-chat-loading-mark{
    position:relative;
    width:68px;
    height:68px;
    margin:0 auto 18px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.vq-chat-loading-ring,
.vq-chat-loading-ring::before{
    position:absolute;
    inset:0;
    content:"";
    border-radius:50%;
    border:2px solid rgba(168,85,247,.12);
    border-top-color:#a855f7;
    border-right-color:#7c3aed;
    animation:vqChatLoaderSpin .9s linear infinite;
    box-shadow:0 0 25px rgba(124,58,237,.12);
}
.vq-chat-loading-ring::before{
    inset:7px;
    border-width:1px;
    border-top-color:#c4b5fd;
    border-right-color:transparent;
    animation-duration:1.35s;
    animation-direction:reverse;
}
.vq-chat-loading-logo{
    position:relative;
    z-index:2;
    font-size:15px;
    line-height:1;
    font-weight:950;
    letter-spacing:-.5px;
    color:#f7f5ff;
    text-shadow:0 0 18px rgba(168,85,247,.34);
}
.vq-chat-loading-title{
    color:#f4f0ff;
    font-size:14px;
    font-weight:900;
    letter-spacing:.1px;
}
.vq-chat-loading-sub{
    margin-top:6px;
    color:#74839b;
    font-size:10px;
    line-height:1.5;
}
.vq-chat-loading-lines{
    width:min(250px,80%);
    margin:20px auto 0;
    display:flex;
    flex-direction:column;
    gap:8px;
}
.vq-chat-loading-line{
    position:relative;
    height:8px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(148,163,184,.075);
}
.vq-chat-loading-line:nth-child(1){width:82%;align-self:flex-start}
.vq-chat-loading-line:nth-child(2){width:62%;align-self:flex-end}
.vq-chat-loading-line:nth-child(3){width:74%;align-self:flex-start}
.vq-chat-loading-line::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    width:45%;
    left:-50%;
    border-radius:inherit;
    background:linear-gradient(90deg,transparent,rgba(168,85,247,.24),transparent);
    animation:vqChatLoaderShimmer 1.25s ease-in-out infinite;
}
.vq-chat-loading-line:nth-child(2)::after{animation-delay:.12s}
.vq-chat-loading-line:nth-child(3)::after{animation-delay:.24s}
@keyframes vqChatLoaderSpin{to{transform:rotate(360deg)}}
@keyframes vqChatLoaderShimmer{to{left:110%}}
@media(max-width:900px) and (min-width:701px){
    #visqoChatLoading{left:300px}
}
@media(max-width:700px){
    #visqoChatLoading{
        position:absolute;
        inset:0;
        left:0;
        padding:20px;
        border-radius:0;
        background:
            radial-gradient(circle at 50% 38%,rgba(139,92,246,.12),transparent 30%),
            #09111d;
    }
    .vq-chat-loading-mark{width:64px;height:64px}
}
@media(prefers-reduced-motion:reduce){
    .vq-chat-loading-ring,
    .vq-chat-loading-ring::before,
    .vq-chat-loading-line::after{animation:none}
}
