body{background-color:#F7F7F7;color:#333}.chat-list-enter-active,.chat-list-move{transition:all 0.6s cubic-bezier(.18,.89,.32,1.28)}.chat-list-enter-from{opacity:0;transform:translateX(-20px)}.input-wrapper{position:relative;display:flex;align-items:center;width:100%}.chat-input{flex:1;width:100%;padding-right:60px!important;transition:all 0.3s ease}.send-btn-absolute{position:absolute;right:5px;z-index:5}.send-btn-enter-active,.send-btn-leave-active{transition:all 0.2s ease-out}.send-btn-enter-from,.send-btn-leave-to{opacity:0;transform:scale(.8)}.system-message{font-size:.75rem;opacity:.8}.system-message span{background-color:rgba(0,0,0,.03);color:#888;padding:2px 10px}[v-cloak]{display:none}.main-wrapper{height:100vh;display:flex;flex-direction:column}#chat-scroll-area{flex-grow:1;overflow-y:auto;background-color:#f8f9fa}.message-item{background-color:#fff;border-radius:8px;margin-bottom:8px;padding:10px;box-shadow:0 1px 2px rgba(0,0,0,.05)}@media (max-width:767px){.message-body{font-size:.9rem}.message-item strong{font-size:.85rem}}.message-dot{font-size:.5rem;opacity:.7}.message-sender{font-size:.9rem;letter-spacing:.02rem;color:#6c757d}.message-time{font-size:.65rem;opacity:.6;color:#6c757d}.message-body{font-size:1.1rem;line-height:1.4;color:#212529;padding-left:.5rem;word-wrap:break-word}.is-me{background-color:#ddd}.is-pm-relevant{background-color:#ffead6!important}.chat-input.is-pm-mode{background-color:#ffead6!important;border-color:#ffead6!important;box-shadow:0 0 0 .25rem rgba(255,105,180,.25);color:#d63384!important;font-weight:700}.chat-input.is-pm-mode::placeholder{color:#ff69b4;opacity:.7}.user-dot{font-size:.9rem;opacity:.7}.is-male{background-color:#0d6efd}.is-female{background-color:#dc3545}.is-other{background-color:#198754}.user-list-item{transition:background-color 0.2s;border-radius:4px}.user-list-item:hover{background-color:rgba(13,110,253,.08);color:#0b5ed7}.cursor-pointer{cursor:pointer}.upload-label:hover{transform:scale(1.1)}.preview-container{position:absolute;bottom:100%;left:10px;margin-bottom:10px;background:#fff;padding:4px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);display:flex;align-items:center}.preview-thumb{max-width:80px;max-height:80px;border-radius:4px;object-fit:cover}.upload-label{cursor:pointer;transition:color 0.2s,transform 0.1s;display:flex;align-items:center;justify-content:center}.upload-label:hover{color:#198754!important;transform:scale(1.1)}.upload-label i{vertical-align:middle}.input-wrapper{flex-direction:column;align-items:flex-start!important}.preview-container-bottom{display:flex;align-items:center;padding-left:40px}.preview-thumb{width:40px;height:40px;object-fit:cover;border-radius:4px;border:1px solid #ddd}.preview-remove-btn{position:absolute;top:-5px;right:-5px;width:16px;height:16px;background:#dc3545;color:#fff;border:none;border-radius:50%;font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center}.image-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.9);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;cursor:zoom-out}.modal-inner{max-width:95%;max-height:90vh}.full-image-content{width:auto;height:auto;max-width:100%;max-height:85vh;object-fit:contain;border-radius:4px;box-shadow:0 0 30px rgba(0,0,0,.5)}.idle-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.7);display:flex;justify-content:center;align-items:center;z-index:9999}.idle-modal{width:90%;max-width:900px;background:#fff}.user-list-item{position:relative}.user-action-popover{position:absolute;top:0;left:20%;width:200px;z-index:1000;animation:popIn 0.15s ease-out}@keyframes popIn{from{opacity:0;transform:scale(.9) translateX(-10px)}to{opacity:1;transform:scale(1) translateX(0)}}.comment-content a{color:#0d6efd;text-decoration:underline;word-break:break-all}.btn-outline-primary{--bs-btn-color:#ff4d8d;--bs-btn-border-color:#ff4d8d;--bs-btn-hover-bg:#ff4d8d;--bs-btn-hover-border-color:#ff4d8d;--bs-btn-active-bg:#d43f75}.comment-content a{color:#ff4d8d!important;font-weight:700}.card.transition{position:relative;overflow:hidden;transition:all 0.4s cubic-bezier(.25,.8,.25,1);border:1px solid rgba(255,77,141,.1);background:#fff}