.chat-layout{display:flex;height:100vh;background-color:#fff;transition:background-color .3s ease}.chat-layout.dark-mode{background-color:#1a1a1a}.users-sidebar{width:300px;background-color:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:all .3s ease}.chat-layout.dark-mode .users-sidebar{background-color:#1f1f1f;border-right-color:#404040}.sidebar-header{padding:16px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.chat-layout.dark-mode .sidebar-header{border-bottom-color:#404040}.sidebar-header h2{margin:0;color:#2c3e50;font-size:20px}.chat-layout.dark-mode .sidebar-header h2{color:#ecf0f1}.close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:#7f8c8d;display:none}.search-box{padding:12px;display:flex;gap:8px;border-bottom:1px solid #e0e0e0}.chat-layout.dark-mode .search-box{border-bottom-color:#404040}.search-input{flex:1;padding:8px 12px;border:1px solid #e0e0e0;border-radius:20px;font-size:14px;outline:none}.search-input:focus{border-color:#3498db}.search-input.dark-mode{background-color:#2a2a2a;border-color:#404040;color:#ecf0f1}.create-group-btn{background-color:#3498db;color:#fff;border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:18px;transition:all .2s}.create-group-btn:hover{background-color:#2980b9;transform:scale(1.05)}.users-section{flex:1;overflow-y:auto;padding:12px 0;border-bottom:1px solid #e0e0e0}.chat-layout.dark-mode .users-section{border-bottom-color:#404040}.users-section h3{padding:8px 16px;color:#7f8c8d;font-size:12px;font-weight:600;text-transform:uppercase;margin:0}.chat-layout.dark-mode .users-section h3{color:#95a5a6}.users-list,.rooms-list{display:flex;flex-direction:column}.user-item,.room-item{padding:12px;margin:0 8px;display:flex;align-items:center;gap:12px;border-radius:8px;cursor:pointer;transition:all .2s;color:#2c3e50}.user-item:hover,.room-item:hover{background-color:#f5f5f5}.user-item.dark-mode,.room-item.dark-mode{color:#ecf0f1}.user-item.dark-mode:hover,.room-item.dark-mode:hover{background-color:#2a2a2a}.user-item.active,.room-item.active{background-color:#3498db1a;border-left:3px solid #3498db;padding-left:9px}.user-avatar,.room-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0}.user-info,.room-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.user-name,.room-name{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.online-badge{font-size:10px;color:#2ecc71}.member-count{font-size:12px;color:#95a5a6}.chat-area{flex:1;display:flex;flex-direction:column;background-color:#fff;min-height:100%}.chat-layout.dark-mode .chat-area{background-color:#1a1a1a}.messages-list{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px}@media(max-width:767px){.users-sidebar{position:absolute;left:0;top:0;height:100%;z-index:100;width:100%}.users-sidebar.hidden{display:none}.close-btn{display:block}.chat-area{width:100%;height:100%}}.message{display:flex;flex-direction:column;max-width:70%;animation:fadeIn .3s ease-in;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;white-space:pre-wrap}.message.sent{align-self:flex-end}.message.received{align-self:flex-start}.message-header{display:flex;gap:10px;font-size:12px;color:#7f8c8d;margin-bottom:4px;transition:color .3s ease}.message-header.dark-mode{color:#95a5a6}.message.sent .message-header{justify-content:flex-end}.sender-name{font-weight:600}.message-content{padding:12px 16px;border-radius:12px;word-wrap:break-word;line-height:1.4;transition:background-color .3s ease,color .3s ease;position:relative}.message.sent .message-content{background-color:#3498db;color:#fff;border-bottom-right-radius:4px}.message.sent .message-content.dark-mode{background-color:#2980b9}.message.received .message-content{background-color:#fff;color:#2c3e50;border-bottom-left-radius:4px;box-shadow:0 1px 2px #0000001a}.message.received .message-content.dark-mode{background-color:#2a2a2a;color:#ecf0f1;box-shadow:0 1px 4px #0000004d}.context-menu{position:fixed;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:150px;overflow:hidden;animation:popIn .15s ease-out}.context-menu.dark-mode{background-color:#2a2a2a;border-color:#404040;box-shadow:0 4px 12px #0006}.context-menu-item{width:100%;padding:10px 16px;border:none;background:none;text-align:left;cursor:pointer;font-size:14px;transition:background-color .15s;color:#2c3e50}.context-menu.dark-mode .context-menu-item{color:#ecf0f1}.context-menu-item:hover{background-color:#f5f5f5}.context-menu.dark-mode .context-menu-item:hover{background-color:#3a3a3a}.context-menu-item.delete:hover{background-color:#ffebee;color:#e74c3c}.context-menu.dark-mode .context-menu-item.delete:hover{background-color:#3a1f1f;color:#f7b5a1}.context-menu-item.download:hover{background-color:#f0f7ff}.context-menu.dark-mode .context-menu-item.download:hover{background-color:#1f3a4a}.context-menu-item.copy:hover{background-color:#f0f9ff}.context-menu.dark-mode .context-menu-item.copy:hover{background-color:#1f3a4a}.context-menu-item:not(:last-child){border-bottom:1px solid #f0f0f0}.context-menu.dark-mode .context-menu-item:not(:last-child){border-bottom-color:#404040}.text-message{word-break:break-word}.media-message{display:flex;flex-direction:column;gap:8px;padding:0;background:none!important;box-shadow:none!important}.message.sent .media-message{background-color:transparent!important}.message.received .media-message{background-color:transparent!important;box-shadow:none!important}.audio-player{display:flex;align-items:center;gap:12px;padding:8px 0;background-color:transparent}.play-button{background:none;border:none;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;transition:background-color .2s;flex-shrink:0}.message.sent .play-button{background-color:#fff3}.message.received .play-button{background-color:#3498db33}.audio-player audio{display:none}.audio-info{flex:1;display:flex;flex-direction:column;gap:4px;padding:8px 12px;background-color:#0000000d;border-radius:8px}.message.sent .audio-info{background-color:#ffffff26}.message.received.dark-mode .audio-info{background-color:#ffffff1a}.audio-duration{font-size:12px;opacity:.8;font-weight:600}.circular-video-message-container{display:flex;flex-direction:column;gap:8px;padding:0;background:none!important;box-shadow:none!important;align-items:center}.message.sent .circular-video-message-container{background-color:transparent!important}.message.received .circular-video-message-container{background-color:transparent!important;box-shadow:none!important}.circular-video-wrapper{position:relative;width:100%;height:auto;border-radius:50%;overflow:hidden;background-color:#000;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000004d;flex-shrink:0;cursor:pointer}.message.received.dark-mode .circular-video-wrapper{box-shadow:0 4px 12px #0009}.circular-video{width:100%;height:100%;transform:scaleX(-1);object-fit:cover}.play-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;pointer-events:none;z-index:10}.video-progress-ring{position:absolute;top:0;left:0;width:100%;height:100%;z-index:5}.video-progress-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.progress-background{fill:none;stroke:#0003;stroke-width:3}.progress-fill{fill:none;stroke:#3498db;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .1s linear;stroke-dasharray:283;stroke-dashoffset:283}.video-duration{font-size:12px;opacity:.8;font-weight:600;padding:0 4px}.message.sent .video-duration{color:#fff}.message.received .video-duration{color:#2c3e50}.message.received.dark-mode .video-duration{color:#ecf0f1}.image-message-container{display:flex;flex-direction:column;gap:8px;padding:0;background:none!important;box-shadow:none!important}.message.sent .image-message-container{background-color:transparent!important}.message.received .image-message-container{background-color:transparent!important;box-shadow:none!important}.image-message{width:100%;max-width:420px;max-height:420px;border-radius:12px;cursor:pointer;transition:transform .2s;object-fit:cover;box-shadow:0 2px 8px #0003;display:block}.message.received.dark-mode .image-message{box-shadow:0 2px 8px #00000080}.image-message:hover{transform:scale(1.02)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media(min-width:768px)and (max-width:1024px){.message{max-width:75%}.circular-video-wrapper{width:100%;height:auto}.image-message{max-width:420px;max-height:420px}}@media(max-width:767px){.message{max-width:85%}.circular-video-wrapper{width:180%;height:auto}.image-message{max-width:350px;max-height:350px}.file-link{max-width:200px}}.messages-wrapper{flex:1;display:flex;flex-direction:column;min-height:0;background-color:#f5f5f5;transition:background-color .3s ease}.messages-wrapper.dark-mode{background-color:#1a1a1a}.messages-container{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:10px;transition:background-color .3s ease}.messages-container.dark-mode{background-color:#1a1a1a}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:#bdc3c7;border-radius:4px}.messages-container::-webkit-scrollbar-thumb:hover{background:#95a5a6}.messages-container.dark-mode::-webkit-scrollbar-thumb{background:#404040}.messages-container.dark-mode::-webkit-scrollbar-thumb:hover{background:#555}@media(max-width:767px){.messages-container{padding:12px;gap:8px}}@media(min-width:768px)and (max-width:1024px){.messages-container{padding:16px}}.input-container{display:flex;gap:10px;padding:20px;background-color:#fff;border-top:1px solid #e0e0e0;transition:background-color .3s ease,border-color .3s ease;flex-wrap:wrap;flex-shrink:0}.input-container.dark-mode{background-color:#1f1f1f;border-top-color:#404040}.input-wrapper{display:flex;gap:10px;flex:1;min-width:250px}.message-input{flex:1;padding:12px 16px;border:1px solid #ddd;border-radius:24px;font-size:14px;outline:none;transition:border-color .2s,background-color .3s ease,color .3s ease}.scrollable{width:100%;height:100%;overflow-y:hidden;overflow-x:hidden;max-height:100%;transform:translateZ(0);inset:0;-webkit-overflow-scrolling:touch}.message-input:focus{border-color:#3498db}.message-input.dark-mode{background-color:#2a2a2a;border-color:#404040;color:#ecf0f1}.message-input.dark-mode:focus{border-color:#3498db;background-color:#333}.message-input.dark-mode::placeholder{color:#7f8c8d}.input-actions{display:flex;gap:8px;align-items:center}.action-button{background:none;border:2px solid #ddd;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all .2s;flex-shrink:0}.action-button:hover{border-color:#3498db;background-color:#3498db1a;transform:scale(1.05)}.action-button:active{transform:scale(.95)}.action-button.dark-mode{border-color:#404040;color:#ecf0f1!important}.action-button.dark-mode:hover{border-color:#3498db;background-color:#3498db26}.send-button{padding:12px 24px;background-color:#3498db;color:#fff;border:none;border-radius:24px;font-size:14px;font-weight:600;height:40px;cursor:pointer;transition:background-color .2s,transform .2s;white-space:nowrap;flex-shrink:0}.send-button:hover{background-color:#2980b9}.send-button.dark-mode:hover{background-color:#1f618d}.send-button:active{transform:scale(.98)}.video-preview-modal{position:fixed;inset:0;background-color:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.video-preview-container{width:90%;max-width:450px;background-color:#fff;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d;animation:slideUp .3s ease}.video-preview-container.dark-mode{background-color:#1f1f1f}.video-preview-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #e0e0e0}.video-preview-container.dark-mode .video-preview-header{border-bottom-color:#404040}.video-preview-header h3{margin:0;color:#2c3e50;font-size:18px}.video-preview-container.dark-mode .video-preview-header h3{color:#ecf0f1}.close-button{background:none;border:none;font-size:24px;color:#7f8c8d;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.close-button:hover{background-color:#f0f0f0;color:#e74c3c}.close-button.dark-mode:hover{background-color:#2a2a2a}.video-preview-content{position:relative;padding:16px;background-color:#000;display:flex;flex-direction:column;align-items:center;gap:16px;min-height:400px}.circular-video-wrapper{width:420px;height:420px;border-radius:50%;overflow:hidden;background-color:#000;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px #00000080,inset 0 0 20px #0000004d}.circular-video{width:100%;height:100%;object-fit:cover}.status-text{color:#7f8c8d;font-size:14px;text-align:center;padding:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.status-text.dark-mode{color:#95a5a6}.recording-badge{position:absolute;top:24px;right:24px;background-color:#e74c3ce6;color:#fff;padding:8px 12px;border-radius:20px;display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600}.recording-dot{width:8px;height:8px;background-color:#fff;border-radius:50%;animation:pulse 1s infinite}.video-preview-controls{display:flex;gap:12px;padding:16px;background-color:#fff;border-top:1px solid #e0e0e0;flex-wrap:wrap;justify-content:center;width:100%}.video-preview-container.dark-mode .video-preview-controls{background-color:#1a1a1a;border-top-color:#404040}.record-button,.stop-button,.cancel-button{padding:8px 16px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;transition:all .2s}.record-button{background-color:#2ecc71;color:#fff}.record-button:hover:not(:disabled){background-color:#27ae60}.record-button:disabled{opacity:.5;cursor:not-allowed}.stop-button{background-color:#e74c3c;color:#fff}.stop-button:hover{background-color:#c0392b}.cancel-button{background-color:#95a5a6;color:#fff}.cancel-button:hover{background-color:#7f8c8d}.video-preview-container.dark-mode .record-button{background-color:#27ae60}.video-preview-container.dark-mode .stop-button{background-color:#c0392b}.video-preview-container.dark-mode .cancel-button{background-color:#7f8c8d}.recording-controls{display:flex;gap:12px}.audio-preview-modal{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.audio-preview-container{width:90%;max-width:400px;background-color:#fff;border-radius:16px;padding:24px;box-shadow:0 10px 40px #0000004d;animation:slideUp .3s ease}.audio-preview-container.dark-mode{background-color:#1f1f1f}.audio-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.audio-preview-header h3{margin:0;color:#2c3e50;font-size:18px}.audio-preview-container.dark-mode .audio-preview-header h3{color:#ecf0f1}.waveform-container{position:relative;height:120px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;margin:20px 0;overflow:hidden}.waveform-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.waveform-bars{display:flex;align-items:center;justify-content:space-around;width:80%;height:60%;gap:4px}.waveform-bar{flex:1;height:10%;background-color:#ffffff4d;border-radius:2px;transition:all .1s}.waveform-bar.active{height:100%;background-color:#fff;box-shadow:0 0 10px #fff9}.recording-time{text-align:center;font-size:24px;font-weight:700;color:#2c3e50;display:flex;align-items:center;justify-content:center;gap:10px;margin:20px 0}.recording-time.dark-mode{color:#ecf0f1}.audio-preview-controls{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.play-button,.audio-preview-controls .stop-button,.audio-preview-controls .send-button,.audio-preview-controls .cancel-button{padding:10px 16px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;transition:all .2s}.play-button{background-color:#3498db;color:#fff}.play-button:hover{background-color:#2980b9}.audio-preview-controls .send-button{background-color:#2ecc71;color:#fff}.audio-preview-controls .send-button:hover{background-color:#27ae60}.audio-preview-controls .stop-button{background-color:#e74c3c;color:#fff}.audio-preview-controls .stop-button:hover{background-color:#c0392b}.audio-preview-controls .cancel-button{background-color:#95a5a6;color:#fff}.audio-preview-controls .cancel-button:hover{background-color:#7f8c8d}.audio-preview-container.dark-mode .play-button{background-color:#2980b9}.audio-preview-container.dark-mode .audio-preview-controls .send-button{background-color:#27ae60}.audio-preview-container.dark-mode .audio-preview-controls .stop-button{background-color:#c0392b}.audio-preview-container.dark-mode .audio-preview-controls .cancel-button{background-color:#7f8c8d}.label{display:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media(max-width:767px){.input-container{padding:8px 12px;gap:6px}.input-wrapper{min-width:180px;gap:6px}.message-input{padding:10px 12px;font-size:16px;border-radius:20px}.action-button{width:34px;height:34px;font-size:16px;border-width:1.5px}.send-button{padding:10px 16px;font-size:12px}.label{display:inline}.video-preview-modal,.audio-preview-modal{z-index:1001}.video-preview-container,.audio-preview-container{width:95%;max-width:100%;border-radius:12px}.circular-video-wrapper{width:350px;height:350px}.record-button,.stop-button,.cancel-button,.play-button,.audio-preview-controls .stop-button,.audio-preview-controls .send-button,.audio-preview-controls .cancel-button{flex:1;justify-content:center;min-width:70px;font-size:12px}.video-preview-controls{flex-direction:column}.recording-controls{width:100%;flex-direction:column}.recording-controls button{width:100%}.audio-preview-controls{flex-direction:column}.audio-preview-controls button{width:100%}}.debug-toggle{position:fixed;bottom:80px;right:20px;width:50px;height:50px;border-radius:50%;background-color:#e74c3c;border:none;color:#fff;font-size:24px;cursor:pointer;z-index:999;box-shadow:0 2px 8px #0000004d}.debug-toggle.dark-mode{background-color:#c0392b}.debug-panel{position:fixed;bottom:0;left:0;right:0;background-color:#fff;border-top:2px solid #e74c3c;border-radius:16px 16px 0 0;box-shadow:0 -4px 12px #0003;z-index:1002;max-height:300px;display:flex;flex-direction:column;animation:slideUp .3s ease}.debug-panel.dark-mode{background-color:#1f1f1f;border-top-color:#c0392b}.debug-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #e0e0e0;flex-shrink:0}.debug-panel.dark-mode .debug-header{border-bottom-color:#404040}.debug-header h4{margin:0;color:#e74c3c;font-size:14px}.debug-panel.dark-mode .debug-header h4{color:#f7b5a1}.debug-close{background:none;border:none;color:#e74c3c;font-size:18px;cursor:pointer;padding:4px 8px}.debug-content{flex:1;overflow-y:auto;padding:8px;font-size:11px;font-family:monospace}.debug-log-item{padding:4px;color:#2c3e50;border-bottom:1px solid #ecf0f1;word-break:break-all}.debug-panel.dark-mode .debug-log-item{color:#ecf0f1;border-bottom-color:#404040}.debug-clear{padding:8px;background-color:#e74c3c;color:#fff;border:none;cursor:pointer;font-size:12px;font-weight:600;flex-shrink:0}.debug-clear:hover{background-color:#c0392b}input[type=file]{cursor:pointer}.file-message{padding:0;background:none!important;box-shadow:none!important}.message.sent .file-message{background-color:transparent!important}.message.received .file-message{background-color:transparent!important;box-shadow:none!important}.file-link{display:flex;align-items:center;gap:12px;padding:12px 16px;background-color:#3498db1a;border-radius:8px;text-decoration:none;transition:all .2s;max-width:280px;border-left:4px solid #3498db}.message.sent .file-link{background-color:#fff3;border-left-color:#fff}.message.received .file-link{background-color:#3498db26;border-left-color:#3498db}.message.received.dark-mode .file-link{background-color:#3498db33}.file-link:hover{background-color:#3498db33;transform:translate(4px)}.message.sent .file-link:hover{background-color:#ffffff4d}.file-icon{font-size:24px;flex-shrink:0}.file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-name{font-size:13px;font-weight:600;color:#2c3e50;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message.sent .file-name{color:#fff}.message.received.dark-mode .file-name{color:#ecf0f1}.file-size{font-size:11px;color:#95a5a6;opacity:.8}.message.sent .file-size{color:#ffffffb3}.file-download{font-size:16px;flex-shrink:0}.pdf-link{border-left-color:#e74c3c}.document-link{border-left-color:#3498db}.text-link{border-left-color:#2ecc71}.spreadsheet-link{border-left-color:#f39c12}.presentation-link{border-left-color:#9b59b6}.archive-link{border-left-color:#1abc9c}.code-link{border-left-color:#34495e}.generic-link{border-left-color:#95a5a6}.input-message-input{background:none;width:100%;padding:.5rem .5625rem;margin-top:-1px;max-height:27.5rem;overflow-y:none;resize:none;border:none;outline:none;font-size:16px;font-size:var(--messages-text-size);line-height:1.3125;line-height:var(--line-height)}.scrollable.scrollable-y{overflow-y:auto;overflow-y:overlay;scrollbar-width:thin;-ms-overflow-style:none}.scrollable-x::-webkit-scrollbar,.no-scrollbar::-webkit-scrollbar{display:none}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.auth-container[data-v-31c7ab2c]{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;transition:background .3s ease}.auth-container.dark-mode[data-v-31c7ab2c]{background:linear-gradient(135deg,#2c3e50,#1a1a1a)}.auth-card[data-v-31c7ab2c]{background-color:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;padding:40px;width:100%;max-width:400px;animation:slideUp-31c7ab2c .4s ease}.auth-container.dark-mode .auth-card[data-v-31c7ab2c]{background-color:#1f1f1f;box-shadow:0 10px 40px #00000080}.auth-header[data-v-31c7ab2c]{text-align:center;margin-bottom:30px}.auth-header h1[data-v-31c7ab2c]{margin:0;color:#2c3e50;font-size:28px;font-weight:700}.auth-container.dark-mode .auth-header h1[data-v-31c7ab2c]{color:#ecf0f1}.auth-header p[data-v-31c7ab2c]{margin:10px 0 0;color:#7f8c8d;font-size:14px}.auth-container.dark-mode .auth-header p[data-v-31c7ab2c]{color:#95a5a6}.auth-form[data-v-31c7ab2c]{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.form-group[data-v-31c7ab2c]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-31c7ab2c]{color:#2c3e50;font-weight:600;font-size:14px}.auth-container.dark-mode .form-group label[data-v-31c7ab2c]{color:#ecf0f1}.form-input[data-v-31c7ab2c]{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;transition:all .2s;outline:none;color:#2c3e50}.form-input[data-v-31c7ab2c]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input.dark-mode[data-v-31c7ab2c]{background-color:#2a2a2a;border-color:#404040;color:#ecf0f1}.form-input.dark-mode[data-v-31c7ab2c]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.form-input[data-v-31c7ab2c]::placeholder{color:#95a5a6}.form-input[data-v-31c7ab2c]:disabled{opacity:.6;cursor:not-allowed}.error-message[data-v-31c7ab2c]{background-color:#ffebee;color:#e74c3c;padding:12px 16px;border-radius:8px;font-size:14px;border-left:4px solid #e74c3c;animation:shake-31c7ab2c .3s ease}.auth-container.dark-mode .error-message[data-v-31c7ab2c]{background-color:#3a1f1f;color:#f7b5a1}.auth-button[data-v-31c7ab2c]{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:8px}.auth-button[data-v-31c7ab2c]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea4d}.auth-button[data-v-31c7ab2c]:active:not(:disabled){transform:translateY(0)}.auth-button[data-v-31c7ab2c]:disabled,.auth-button.loading[data-v-31c7ab2c]{opacity:.7;cursor:not-allowed}.spinner[data-v-31c7ab2c]{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-31c7ab2c .6s linear infinite}.auth-footer[data-v-31c7ab2c]{text-align:center;color:#7f8c8d;font-size:14px}.auth-container.dark-mode .auth-footer[data-v-31c7ab2c]{color:#95a5a6}.auth-link[data-v-31c7ab2c]{color:#667eea;text-decoration:none;font-weight:600;transition:color .2s}.auth-link[data-v-31c7ab2c]:hover{color:#764ba2}@keyframes slideUp-31c7ab2c{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes shake-31c7ab2c{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes spin-31c7ab2c{to{transform:rotate(360deg)}}@media(max-width:480px){.auth-card[data-v-31c7ab2c]{padding:30px 20px}.auth-header h1[data-v-31c7ab2c]{font-size:24px}.auth-button[data-v-31c7ab2c]{font-size:14px;padding:10px 20px}}.auth-container[data-v-506db5d4]{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;transition:background .3s ease;padding:20px}.auth-container.dark-mode[data-v-506db5d4]{background:linear-gradient(135deg,#2c3e50,#1a1a1a)}.auth-card[data-v-506db5d4]{background-color:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;padding:40px;width:100%;max-width:450px;animation:slideUp-506db5d4 .4s ease}.auth-container.dark-mode .auth-card[data-v-506db5d4]{background-color:#1f1f1f;box-shadow:0 10px 40px #00000080}.auth-header[data-v-506db5d4]{text-align:center;margin-bottom:30px}.auth-header h1[data-v-506db5d4]{margin:0;color:#2c3e50;font-size:28px;font-weight:700}.auth-container.dark-mode .auth-header h1[data-v-506db5d4]{color:#ecf0f1}.auth-header p[data-v-506db5d4]{margin:10px 0 0;color:#7f8c8d;font-size:14px}.auth-container.dark-mode .auth-header p[data-v-506db5d4]{color:#95a5a6}.auth-form[data-v-506db5d4]{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.form-group[data-v-506db5d4]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-506db5d4]{color:#2c3e50;font-weight:600;font-size:14px}.auth-container.dark-mode .form-group label[data-v-506db5d4]{color:#ecf0f1}.form-input[data-v-506db5d4]{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;transition:all .2s;outline:none;color:#2c3e50}.form-input[data-v-506db5d4]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input.dark-mode[data-v-506db5d4]{background-color:#2a2a2a;border-color:#404040;color:#ecf0f1}.form-input.dark-mode[data-v-506db5d4]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.form-input[data-v-506db5d4]::placeholder{color:#95a5a6}.form-input[data-v-506db5d4]:disabled{opacity:.6;cursor:not-allowed}.password-strength[data-v-506db5d4]{display:flex;align-items:center;gap:8px}.strength-bar[data-v-506db5d4]{flex:1;height:4px;background-color:#e0e0e0;border-radius:2px;overflow:hidden}.strength-bar[data-v-506db5d4]:after{content:"";display:block;height:100%;width:33%;background-color:#e74c3c;transition:all .3s}.strength-bar.medium[data-v-506db5d4]:after{width:66%;background-color:#f39c12}.strength-bar.strong[data-v-506db5d4]:after{width:100%;background-color:#2ecc71}.strength-text[data-v-506db5d4]{font-size:12px;font-weight:600;color:#e74c3c;min-width:50px}.strength-bar.medium~.strength-text[data-v-506db5d4]{color:#f39c12}.strength-bar.strong~.strength-text[data-v-506db5d4]{color:#2ecc71}.checkbox-group[data-v-506db5d4]{display:flex;align-items:flex-start;gap:12px;padding:12px;background-color:#f8f9ff;border-radius:8px}.auth-container.dark-mode .checkbox-group[data-v-506db5d4]{background-color:#2a2a2a}.checkbox[data-v-506db5d4]{width:20px;height:20px;margin-top:2px;cursor:pointer;accent-color:#667eea}.checkbox[data-v-506db5d4]:disabled{opacity:.6;cursor:not-allowed}.checkbox-label[data-v-506db5d4]{font-size:14px;color:#2c3e50;cursor:pointer;flex:1}.auth-container.dark-mode .checkbox-label[data-v-506db5d4]{color:#ecf0f1}.error-message[data-v-506db5d4]{background-color:#ffebee;color:#e74c3c;padding:12px 16px;border-radius:8px;font-size:14px;border-left:4px solid #e74c3c;animation:shake-506db5d4 .3s ease}.auth-container.dark-mode .error-message[data-v-506db5d4]{background-color:#3a1f1f;color:#f7b5a1}.success-message[data-v-506db5d4]{background-color:#e8f5e9;color:#2ecc71;padding:12px 16px;border-radius:8px;font-size:14px;border-left:4px solid #2ecc71}.auth-container.dark-mode .success-message[data-v-506db5d4]{background-color:#1f3a1f;color:#81c784}.auth-button[data-v-506db5d4]{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:8px}.auth-button[data-v-506db5d4]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea4d}.auth-button[data-v-506db5d4]:active:not(:disabled){transform:translateY(0)}.auth-button[data-v-506db5d4]:disabled,.auth-button.loading[data-v-506db5d4]{opacity:.7;cursor:not-allowed}.spinner[data-v-506db5d4]{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-506db5d4 .6s linear infinite}.auth-footer[data-v-506db5d4]{text-align:center;color:#7f8c8d;font-size:14px}.auth-container.dark-mode .auth-footer[data-v-506db5d4]{color:#95a5a6}.auth-link[data-v-506db5d4]{color:#667eea;text-decoration:none;font-weight:600;transition:color .2s}.auth-link[data-v-506db5d4]:hover{color:#764ba2}@keyframes slideUp-506db5d4{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes shake-506db5d4{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes spin-506db5d4{to{transform:rotate(360deg)}}@media(max-width:480px){.auth-card[data-v-506db5d4]{padding:30px 20px}.auth-header h1[data-v-506db5d4]{font-size:24px}.auth-button[data-v-506db5d4]{font-size:14px;padding:10px 20px}.checkbox-group[data-v-506db5d4]{flex-direction:column;gap:8px}.checkbox[data-v-506db5d4]{margin-top:0}}.chat-header[data-v-c0e46d81]{background-color:#2c3e50;color:#fff;padding:20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a;transition:background-color .3s ease;flex-shrink:0}.chat-header.dark-mode[data-v-c0e46d81]{background-color:#0f0f0f;box-shadow:0 2px 8px #00000080}.chat-header h1[data-v-c0e46d81]{margin:0;font-size:24px}.header-controls[data-v-c0e46d81]{display:flex;align-items:center;gap:16px}.users-toggle[data-v-c0e46d81],.dark-mode-toggle[data-v-c0e46d81]{background:none;border:2px solid rgba(255,255,255,.3);color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;transition:all .3s ease;position:relative;flex-shrink:0}.users-toggle[data-v-c0e46d81]:hover,.dark-mode-toggle[data-v-c0e46d81]:hover{border-color:#fff;background-color:#ffffff1a;transform:scale(1.05)}.users-toggle[data-v-c0e46d81]:active,.dark-mode-toggle[data-v-c0e46d81]:active{transform:scale(.95)}.users-toggle.active[data-v-c0e46d81]{background-color:#3498db4d;border-color:#3498db}.badge[data-v-c0e46d81]{position:absolute;top:-8px;right:-8px;background-color:#e74c3c;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;border:2px solid #2c3e50}.chat-header.dark-mode .badge[data-v-c0e46d81]{border-color:#0f0f0f}.user-count[data-v-c0e46d81]{background-color:#fff3;padding:4px 12px;border-radius:20px;font-size:12px;transition:background-color .3s ease;white-space:nowrap}.chat-header.dark-mode .user-count[data-v-c0e46d81]{background-color:#ffffff26}@media(max-width:767px){.chat-header[data-v-c0e46d81]{padding:12px 16px;gap:8px}.chat-header h1[data-v-c0e46d81]{font-size:18px;flex:1}.header-controls[data-v-c0e46d81]{gap:8px}.users-toggle[data-v-c0e46d81],.dark-mode-toggle[data-v-c0e46d81]{width:36px;height:36px;font-size:16px}.badge[data-v-c0e46d81]{width:18px;height:18px;font-size:8px;top:-6px;right:-6px}.user-count[data-v-c0e46d81]{font-size:11px;padding:2px 8px}}.modal-overlay[data-v-565acc9d]{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-565acc9d]{background-color:#fff;border-radius:12px;width:90%;max-width:450px;max-height:80vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-content.dark-mode[data-v-565acc9d]{background-color:#1f1f1f}.modal-header[data-v-565acc9d]{padding:20px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.modal-content.dark-mode .modal-header[data-v-565acc9d]{border-bottom-color:#404040}.modal-header h2[data-v-565acc9d]{margin:0;color:#2c3e50;font-size:18px}.modal-content.dark-mode .modal-header h2[data-v-565acc9d]{color:#ecf0f1}.close-btn[data-v-565acc9d]{background:none;border:none;font-size:24px;cursor:pointer;color:#7f8c8d}.modal-form[data-v-565acc9d]{padding:20px;display:flex;flex-direction:column;gap:16px}.form-group[data-v-565acc9d]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-565acc9d]{color:#2c3e50;font-weight:600;font-size:14px}.modal-content.dark-mode .form-group label[data-v-565acc9d]{color:#ecf0f1}.form-input[data-v-565acc9d]{padding:10px 12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;outline:none;color:#2c3e50}.form-input[data-v-565acc9d]:focus{border-color:#3498db}.form-input.dark-mode[data-v-565acc9d]{background-color:#2a2a2a;border-color:#404040;color:#ecf0f1}.members-list[data-v-565acc9d]{display:flex;flex-direction:column;gap:10px;max-height:200px;overflow-y:auto}.member-checkbox[data-v-565acc9d]{display:flex;align-items:center;gap:8px}.member-checkbox input[data-v-565acc9d]{cursor:pointer;width:18px;height:18px;accent-color:#3498db}.member-checkbox label[data-v-565acc9d]{cursor:pointer;color:#2c3e50;font-weight:400}.modal-content.dark-mode .member-checkbox label[data-v-565acc9d]{color:#ecf0f1}.modal-footer[data-v-565acc9d]{padding:16px 20px;border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end}.modal-content.dark-mode .modal-footer[data-v-565acc9d]{border-top-color:#404040}.cancel-btn[data-v-565acc9d],.submit-btn[data-v-565acc9d]{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s}.cancel-btn[data-v-565acc9d]{background-color:#ecf0f1;color:#2c3e50}.cancel-btn[data-v-565acc9d]:hover{background-color:#bdc3c7}.submit-btn[data-v-565acc9d]{background-color:#3498db;color:#fff}.submit-btn[data-v-565acc9d]:hover{background-color:#2980b9}.modal-content.dark-mode .cancel-btn[data-v-565acc9d]{background-color:#404040;color:#ecf0f1}@media(max-width:480px){.modal-content[data-v-565acc9d]{width:95%}}
