.thread-bubble{animation:qg-rise .45s var(--ease-reveal) both}.thread-typing{animation:.2s 1.4s forwards thread-leave}.thread-dots span{animation:1s ease-in-out infinite thread-dot}.thread-dots span:nth-child(2){animation-delay:.15s}.thread-dots span:nth-child(3){animation-delay:.3s}.thread-reply{animation:qg-rise .5s var(--ease-reveal) both 1.5s}@keyframes thread-dot{0%,60%,to{opacity:.35;transform:none}30%{opacity:1;transform:translateY(-3px)}}@keyframes thread-leave{to{opacity:0;visibility:hidden}}
