[data-v-337ffbcb]{margin:0;padding:0;box-sizing:border-box}.chat-container[data-v-337ffbcb]{display:flex;height:100vh;max-width:1200px;margin:0 auto;background:#fff;box-shadow:0 0 20px rgba(0,0,0,.1)}.sidebar[data-v-337ffbcb]{width:300px;background:#2c3e50;color:#fff;display:flex;flex-direction:column}.sidebar-header[data-v-337ffbcb]{padding:20px;background:#34495e;border-bottom:1px solid #3d566e;display:flex;justify-content:space-between;align-items:center}.new-chat-btn[data-v-337ffbcb]{background:#3498db;color:#fff;border:none;border-radius:50%;width:36px;height:36px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.new-chat-btn[data-v-337ffbcb]:hover{background:#2980b9}.user-info[data-v-337ffbcb]{display:flex;align-items:center;gap:10px}.avatar[data-v-337ffbcb]{width:40px;height:40px;border-radius:50%;background:#3498db;display:flex;align-items:center;justify-content:center;font-weight:700;background-size:cover;background-position:50%;overflow:hidden}.avatar span[data-v-337ffbcb]{background:rgba(0,0,0,.3);width:100%;height:100%;display:flex;align-items:center;justify-content:center}.chat-sessions[data-v-337ffbcb]{padding-bottom:10px;border-bottom:1px solid #3d566e;max-height:300px;overflow-y:auto}.chat-sessions h3[data-v-337ffbcb]{padding:15px 20px;background:#34495e;margin:0;font-size:14px}.session-item[data-v-337ffbcb]{padding:12px 20px;border-bottom:1px solid #3d566e;cursor:pointer;transition:background .2s;display:flex;align-items:center;gap:10px}.session-item[data-v-337ffbcb]:hover{background:#34495e}.session-item.active[data-v-337ffbcb]{background:#3498db}.session-info[data-v-337ffbcb]{flex:1;min-width:0}.session-name[data-v-337ffbcb]{font-weight:500;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;justify-content:space-between;align-items:center}.last-message[data-v-337ffbcb]{font-size:12px;color:#bdc3c7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-time[data-v-337ffbcb]{font-size:11px;color:#bdc3c7;white-space:nowrap}.unread-count[data-v-337ffbcb]{background:#e74c3c;color:#fff;border-radius:10px;padding:1px 6px;font-size:11px;margin-left:5px}.empty-sessions[data-v-337ffbcb]{padding:20px;text-align:center;color:#bdc3c7;font-size:14px}.online-users[data-v-337ffbcb]{flex:1;overflow-y:auto}.online-users h3[data-v-337ffbcb]{padding:15px 20px;background:#3498db;margin:0;font-size:14px}.user-item[data-v-337ffbcb]{padding:15px 20px;border-bottom:1px solid #3d566e;cursor:pointer;transition:background .2s}.user-item[data-v-337ffbcb]:hover{background:#34495e}.user-item.active[data-v-337ffbcb]{background:#3498db}.user-item .name[data-v-337ffbcb]{font-weight:500;margin-bottom:5px}.user-item .company[data-v-337ffbcb]{font-size:12px;color:#bdc3c7}.online-indicator[data-v-337ffbcb]{width:8px;height:8px;background:#2ecc71;border-radius:50%;display:inline-block;margin-right:8px}.chat-main[data-v-337ffbcb]{flex:1;display:flex;flex-direction:column}.chat-header[data-v-337ffbcb]{padding:20px;background:#fff;border-bottom:1px solid #ecf0f1;display:flex;align-items:center;gap:10px}.chat-messages[data-v-337ffbcb]{flex:1;padding:20px;overflow-y:auto;background:#f8f9fa}.message[data-v-337ffbcb]{margin-bottom:15px;display:flex;align-items:flex-start;gap:10px}.message.own[data-v-337ffbcb]{flex-direction:row-reverse}.message .avatar[data-v-337ffbcb]{width:35px;height:35px;font-size:12px;background-size:cover;background-position:50%}.message-content[data-v-337ffbcb]{max-width:60%;background:#fff;padding:10px 15px;border-radius:18px;box-shadow:0 1px 2px rgba(0,0,0,.1)}.message.own .message-content[data-v-337ffbcb]{background:#3498db;color:#fff}.message-time[data-v-337ffbcb]{font-size:11px;color:#7f8c8d;margin-top:5px}.chat-input-container[data-v-337ffbcb]{padding:15px 20px;background:#fff;border-top:1px solid #ecf0f1}.chat-input-tools[data-v-337ffbcb]{display:flex;gap:10px;margin-bottom:10px}.tool-btn[data-v-337ffbcb]{width:36px;height:36px;border-radius:50%;border:none;background:#f1f1f1;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:background .2s}.tool-btn[data-v-337ffbcb]:hover{background:#e0e0e0}.file-input-label[data-v-337ffbcb]{position:relative;overflow:hidden}.file-input[data-v-337ffbcb]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.emoji-panel[data-v-337ffbcb]{display:flex;flex-wrap:wrap;gap:10px;padding:10px;background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1);margin-bottom:10px;max-height:150px;overflow-y:auto}.emoji-item[data-v-337ffbcb]{font-size:20px;cursor:pointer;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.emoji-item[data-v-337ffbcb]:hover{background:#f1f1f1}.file-content[data-v-337ffbcb]{display:flex;align-items:center;gap:10px}.file-icon-container[data-v-337ffbcb]{width:30px;height:30px;background:#f0f0f0;border-radius:50%;display:flex;align-items:center;justify-content:center}.file-icon[data-v-337ffbcb]{font-size:16px}.file-info[data-v-337ffbcb]{flex:1}.file-name[data-v-337ffbcb]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;color:#3498db;text-decoration:underline}.own .file-name[data-v-337ffbcb]{color:#e6f2ff}.file-size[data-v-337ffbcb]{font-size:12px;color:#999;margin-top:2px}.uploading-progress[data-v-337ffbcb]{margin:10px auto;width:80%;padding:10px}.progress-bar[data-v-337ffbcb]{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden}.progress[data-v-337ffbcb]{height:100%;background:#3498db;transition:width .3s}.progress-text[data-v-337ffbcb]{text-align:center;font-size:12px;color:#666;margin-top:5px}.text-content[data-v-337ffbcb]{white-space:pre-wrap;word-break:break-all}.image-content[data-v-337ffbcb]{max-width:100%}.message-image[data-v-337ffbcb]{max-width:100%;max-height:200px;border-radius:8px;cursor:pointer;transition:transform .2s}.message-image[data-v-337ffbcb]:hover{transform:scale(1.02)}.image-preview[data-v-337ffbcb]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;cursor:pointer}.preview-container[data-v-337ffbcb]{position:relative;max-width:90%;max-height:90%}.preview-image[data-v-337ffbcb]{max-width:100%;max-height:80vh;border-radius:8px}.close-preview[data-v-337ffbcb]{position:absolute;top:-30px;right:0;background:transparent;border:none;color:#fff;font-size:24px;cursor:pointer}.chat-input[data-v-337ffbcb]{display:flex;gap:10px}.chat-input input[data-v-337ffbcb]{flex:1;padding:10px 15px;border:1px solid #ecf0f1;border-radius:20px;outline:none;transition:border-color .2s}.chat-input input[data-v-337ffbcb]:focus{border-color:#3498db}.chat-input button[data-v-337ffbcb]{background:#3498db;color:#fff;border:none;border-radius:20px;padding:10px 20px;cursor:pointer;transition:background .2s}.chat-input button[data-v-337ffbcb]:hover{background:#2980b9}.chat-input button[data-v-337ffbcb]:disabled{background:#bdc3c7;cursor:not-allowed}.typing-status[data-v-337ffbcb]{font-size:12px;color:#7f8c8d;margin-left:10px}.message.failed .message-content[data-v-337ffbcb],.message.sending .message-content[data-v-337ffbcb]{opacity:.7}.message.failed .message-status span[data-v-337ffbcb]{color:#e74c3c}.empty-chat[data-v-337ffbcb]{display:flex;align-items:center;justify-content:center;height:100%;color:#bdc3c7;font-size:16px}.date-divider[data-v-337ffbcb]{text-align:center;margin:20px 0;position:relative}.date-divider span[data-v-337ffbcb]{background:#f8f9fa;padding:0 10px;position:relative;z-index:1;font-size:12px;color:#7f8c8d}.date-divider[data-v-337ffbcb]:before{content:"";position:absolute;top:50%;left:0;width:100%;height:1px;background:#e0e0e0;z-index:0}.connection-status[data-v-337ffbcb]{padding:10px 20px;font-size:12px;display:flex;align-items:center}.connection-status.connected[data-v-337ffbcb]{color:#2ecc71}.connection-status.disconnected[data-v-337ffbcb]{color:#e74c3c}.connection-status span[data-v-337ffbcb]:before{content:"●";margin-right:5px}[data-v-337ffbcb]::-webkit-scrollbar{width:6px;height:6px}[data-v-337ffbcb]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}[data-v-337ffbcb]::-webkit-scrollbar-thumb{background:#bdc3c7;border-radius:3px}[data-v-337ffbcb]::-webkit-scrollbar-thumb:hover{background:#95a5a6}.notification[data-v-337ffbcb]{position:fixed;top:20px;right:20px;background:#fff;border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,.1);padding:15px;max-width:300px;z-index:100;transform:translateX(150%);transition:transform .3s ease-in-out}.notification.show[data-v-337ffbcb]{transform:translateX(0)}.notification-title[data-v-337ffbcb]{font-weight:700;margin-bottom:5px}.notification-message[data-v-337ffbcb]{font-size:14px;color:#333}