*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#0084ff;--primary-dark:#06c;--primary-hover:#06c;--success-color:#10b981;--error-color:#ef4444;--warning-color:#f59e0b;--text-primary:#111b21;--text-secondary:#667781;--bg-primary:#fff;--bg-secondary:#f0f2f5;--border-color:#e4e6eb;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--transition:all 0.2s cubic-bezier(0.4,0,0.2,1)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f0f2f5;background-color:var(--bg-secondary);color:#111b21;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app{background:#e5e7eb;height:100vh}.app,.sidebar{display:flex;overflow:hidden;position:relative}.sidebar{border-right:1px solid #e4e6eb;border-right:1px solid var(--border-color);flex-direction:column;width:350px;z-index:1}.sidebar,.sidebar-header{background:#fff;background:var(--bg-primary)}.sidebar-header{border-bottom:1px solid #e4e6eb;border-bottom:1px solid var(--border-color);padding:20px 24px}.sidebar-header,.sidebar-header h1{color:#111b21;color:var(--text-primary)}.sidebar-header h1{font-size:20px;font-weight:600;margin-bottom:4px}.sidebar-header p{color:#667781;color:var(--text-secondary);font-size:13px}.search-container{background:#fff;background:var(--bg-primary);border-bottom:1px solid #e4e6eb;border-bottom:1px solid var(--border-color);padding:10px 16px}.search-input{background:#f0f2f5;background:var(--bg-secondary);border:1px solid #e4e6eb;border:1px solid var(--border-color);border-radius:24px;font-size:14px;padding:10px 16px 10px 44px;transition:all .2s;width:100%}.search-input:focus{background:#fff;background:var(--bg-primary);border-color:#0084ff;border-color:var(--primary-color);outline:none}.contacts-list{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:8px 0}.contact-item{align-items:center;border-bottom:1px solid #f1f5f9;border-left:3px solid #0000;cursor:pointer;display:flex;min-height:64px;padding:12px 16px;transition:all .2s}.contact-item:hover{background:#f0f2f5;background:var(--bg-secondary)}.contact-item.active{background:#e4e6eb;border-left-color:#0084ff;border-left-color:var(--primary-color)}.contact-avatar{align-items:center;background:#0084ff;background:var(--primary-color);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:600;height:48px;justify-content:center;margin-right:12px;width:48px}.contact-info{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.contact-name{align-items:center;color:#1e293b;display:flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-details{color:#64748b;display:flex;flex-direction:column;font-size:14px;gap:2px}.contact-details>div{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-contact-btn{background:#0084ff;background:var(--primary-color);border:none;border-radius:8px;font-size:14px;font-weight:500}.add-contact-btn,.logout-btn{align-items:center;color:#fff;cursor:pointer;display:flex;gap:8px;justify-content:center;margin:16px 24px;padding:12px 24px;transition:all .2s}.logout-btn{background:linear-gradient(135deg,#ea6666,#a24b4b);border:none;border-radius:12px;font-weight:600}.add-contact-btn:hover{background:#06c;background:var(--primary-hover)}.main-content{flex:1 1;flex-direction:column;overflow:hidden;position:relative;z-index:1}.chat-header,.main-content{background:#fff;background:var(--bg-primary);display:flex}.chat-header{align-items:center;border-bottom:1px solid #e4e6eb;border-bottom:1px solid var(--border-color);justify-content:space-between;padding:12px 20px}.chat-avatar,.chat-header-left{align-items:center;display:flex}.chat-avatar{background:#0084ff;background:var(--primary-color);border-radius:50%;color:#fff;flex-shrink:0;height:40px;justify-content:center;margin-right:12px;width:40px}.chat-avatar,.chat-info h2{font-size:16px;font-weight:600}.chat-info h2{color:#111b21;color:var(--text-primary);margin-bottom:2px}.chat-info p{color:#667781;color:var(--text-secondary);font-size:13px}.chat-actions{display:flex;gap:12px}.action-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:#667781;color:var(--text-secondary);cursor:pointer;display:flex;height:40px;justify-content:center;padding:8px;transition:all .2s;width:40px}.action-btn:hover{background:#f0f2f5;background:var(--bg-secondary);color:#111b21;color:var(--text-primary)}.messages-container{background:#e5e7eb;display:flex;flex:1 1;flex-direction:column;gap:4px;overflow-y:auto;padding:20px}.message-wrapper{align-items:flex-end;display:flex;gap:8px;max-width:100%;padding:2px 0;position:relative}.message-wrapper.in{justify-content:flex-start}.message-wrapper.out{justify-content:flex-end}.message-wrapper.grouped{margin-top:-4px}.message-wrapper.grouped .message-avatar,.message-wrapper.grouped .message-avatar-spacer{opacity:0}.message-avatar{align-items:center;background:#0084ff;background:var(--primary-color);border-radius:50%;box-shadow:0 1px 2px #0000001a;color:#fff;display:flex;font-size:14px;font-weight:600;height:36px;justify-content:center;margin-bottom:2px}.message-avatar,.message-avatar-spacer{flex-shrink:0;width:36px}.message-content-wrapper{align-items:flex-start;display:flex;flex-direction:column;max-width:65%;min-width:120px}.message-wrapper.out .message-content-wrapper{align-items:flex-end}.message-bubble{word-wrap:break-word;border-radius:7.5px;box-shadow:0 1px 2px #0000001a;font-size:14.2px;line-height:1.4;padding:8px 12px;position:relative;transition:box-shadow .2s ease}.message-wrapper:hover .message-bubble{box-shadow:0 2px 4px #00000026}.message-wrapper.in .message-bubble{background:#fff;border-top-left-radius:0;color:#111b21}.message-wrapper.out .message-bubble{background:#0084ff;border-top-right-radius:0;color:#fff}.message-wrapper.in.grouped .message-bubble{border-top-left-radius:7.5px}.message-wrapper.out.grouped .message-bubble{border-top-right-radius:7.5px}.message-body{margin-bottom:4px}.message-text{color:inherit;white-space:pre-wrap;word-break:break-word}.message-attachment{align-items:center;background:#00000008;border-radius:6px;display:flex;gap:8px;margin-top:8px;padding:8px 10px;transition:all .2s ease}.message-wrapper.out .message-attachment{background:#0000000d}.message-wrapper.in .message-attachment{background:#00000005}.attachment-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center}.attachment-info{flex:1 1;min-width:0}.attachment-name{display:block;font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-download-btn{align-items:center;background:#0000000d;border:none;border-radius:4px;color:inherit;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:4px 6px;transition:all .2s ease}.attachment-download-btn:hover{background:#0000001a}.message-footer{align-items:center;display:flex;gap:4px;justify-content:flex-end;margin-top:2px;padding-top:2px}.message-time{color:#00000080;font-size:11px;font-weight:400;line-height:1;white-space:nowrap}.message-wrapper.out .message-time{color:#fffc}.message-meta-icons{align-items:center;display:flex;gap:3px;margin-left:4px}.message-channel-icon{align-items:center;display:flex;font-size:11px;opacity:.6}.message-status-icon{align-items:center;display:flex;opacity:.7}.message-input-container{background:#fff;background:var(--bg-primary);border-top:1px solid #e4e6eb;border-top:1px solid var(--border-color);padding:16px 20px;z-index:1}.message-form{align-items:flex-end;display:flex;gap:12px;margin-top:12px}.message-input{background:#fff;background:var(--bg-primary);border:1px solid #e4e6eb;border:1px solid var(--border-color);border-radius:24px;flex:1 1;font-family:inherit;font-size:15px;max-height:300px;min-height:48px;overflow-y:auto;padding:12px 20px;resize:none;scrollbar-color:#94a3b880 #0000;scrollbar-width:thin;transition:height .2s ease-out}.message-input::-webkit-scrollbar{width:6px}.message-input::-webkit-scrollbar-track{background:#0000}.message-input::-webkit-scrollbar-thumb{background:#94a3b880;border-radius:3px}.message-input::-webkit-scrollbar-thumb:hover{background:#94a3b8b3}.message-input:focus{background:#fff;background:var(--bg-primary);border-color:#0084ff;border-color:var(--primary-color);outline:none}.send-btn{align-items:center;background:#0084ff;background:var(--primary-color);border:none;border-radius:50%;box-shadow:0 2px 8px #0084ff4d;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:52px;justify-content:center;padding:10px 20px;transition:all .2s;width:52px}.send-btn:hover{background:#06c;background:var(--primary-hover);box-shadow:0 4px 12px #0084ff66;transform:scale(1.05)}.send-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.empty-state{color:#64748b}.empty-state h3{color:#475569}.empty-state p{max-width:300px}.modal-overlay{align-items:center;animation:overlayFadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.modal{animation:modalFadeIn .3s ease-out;background:#fff;background:var(--bg-primary);border-radius:16px;border-radius:var(--radius-xl);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-xl);max-height:90vh;max-width:500px;overflow-y:auto;padding:32px;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal h2{color:#1e293b;font-size:24px;font-weight:700;margin-bottom:24px}.form-group{margin-bottom:20px}.form-group label{color:#374151;display:block;font-weight:600;margin-bottom:8px}.form-group input{border:2px solid #e2e8f0;border-radius:8px;font-size:15px;padding:12px 16px;transition:all .2s;width:100%}.form-group input:focus{border-color:#0084ff;border-color:var(--primary-color);box-shadow:0 0 0 3px #0084ff1a;outline:none}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:32px}.btn{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s}.btn-secondary{background:#e2e8f0;color:#64748b}.btn-secondary:hover{background:#cbd5e1}.btn-primary:hover{box-shadow:0 8px 25px #0084ff4d;transform:translateY(-2px)}.btn-danger{background:#ef4444}.btn-danger:hover{background:#dc2626}.loading{align-items:center;bottom:0;color:#667781;color:var(--text-secondary);display:flex;flex-direction:column;gap:16px;height:100vh;justify-content:center;left:0;min-height:100vh;padding:40px;position:fixed;right:0;top:0;width:100%}.loading-spinner{animation:spin .8s linear infinite;border:4px solid #e4e6eb;border-top-color:#0084ff;border:4px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:40px;width:40px}.loading-text{color:#667781;color:var(--text-secondary);font-size:14px;font-weight:500}.error{align-items:center;animation:slideDown .3s ease-out;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;border-radius:var(--radius-md);color:#dc2626;display:flex;font-size:14px;gap:8px}.error,.success{margin:16px 24px;padding:12px 16px}.success{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#16a34a}.channel-tabs{background:#fff;background:var(--bg-primary);border-bottom:1px solid #e4e6eb;border-bottom:1px solid var(--border-color);display:flex;overflow-x:auto;padding:0 20px}.channel-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:500;gap:8px;padding:12px 16px;transition:all .2s ease;white-space:nowrap}.channel-tab:hover{background:#64748b1a;color:#475569}.channel-tab.active{background:#0084ff1a;border-bottom-color:#0084ff;border-bottom-color:var(--primary-color);color:#0084ff;color:var(--primary-color)}.channel-tab svg{flex-shrink:0}.channel-selector{background:#f0f2f5;background:var(--bg-secondary);border-bottom:1px solid #e4e6eb;border-bottom:1px solid var(--border-color);padding:10px 20px}.channel-buttons{display:flex;flex-wrap:wrap;gap:8px}.channel-button{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:6px;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.channel-button:hover:not(:disabled){background:#0084ff0d;border-color:#0084ff;border-color:var(--primary-color);color:#0084ff;color:var(--primary-color)}.channel-button.active{background:#0084ff;background:var(--primary-color);border-color:#0084ff;border-color:var(--primary-color);color:#fff}.channel-button:disabled{cursor:not-allowed;opacity:.5}.channel-button svg{flex-shrink:0}.message.in .message-bubble{background:#fff;border:none;color:#111b21}.message.out .message-bubble{background:#0084ff;background:var(--primary-color);color:#fff}.new-contact-notification{animation:slideIn .3s ease-out;background:#10b981;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#fff;position:fixed;right:20px;top:20px;z-index:1000}.notification-content{align-items:center;display:flex;gap:12px;padding:12px 16px}.notification-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:4px 8px;transition:background .2s ease}.notification-btn:hover{background:#ffffff4d}.notification-close{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:4px;transition:background .2s ease}.notification-close:hover{background:#fff3}.login-container{align-items:center;background:#f0f2f5;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px;position:relative;width:100%}.login-container h1{color:#111b21;color:var(--text-primary);font-size:2rem;font-weight:600;margin-bottom:40px;text-align:center;width:100%}.auth-form{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;margin:0 auto;max-width:420px;padding:40px;width:100%}.auth-form .form-group{margin-bottom:20px}.auth-form label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.auth-form input{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .2s;width:100%}.auth-form input:focus{border-color:#0084ff;border-color:var(--primary-color);outline:none}.auth-buttons{display:flex;gap:12px;margin-top:24px}.auth-buttons .btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:12px 20px;transition:all .2s}.btn-primary{background:#0084ff;background:var(--primary-color);color:#fff}.btn-primary:hover{background:#06c;background:var(--primary-hover);transform:translateY(-1px)}.btn-secondary{background:#f3f4f6;border:2px solid #e5e7eb;color:#374151}.btn-secondary:hover{background:#e5e7eb;transform:translateY(-1px)}.auth-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-top:16px;padding:12px 16px}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@media (max-width:1024px){.sidebar{width:300px}.main-content{margin:16px}}@media (max-width:768px){.app{flex-direction:column}.sidebar{border-radius:0;box-shadow:0 -4px 6px -1px #0000001a;height:40vh;width:100%}.main-content{border-radius:0;box-shadow:none;height:60vh;margin:0}.sidebar-header{padding:16px}.sidebar-header h1{font-size:20px}.user-profile-section{margin:12px;padding:12px}.contact-item{min-height:64px;padding:12px 16px}.chat-header,.message-input-container{padding:16px}.modal{margin:20px;max-width:none;padding:24px;width:95%}.toast-container{left:10px;max-width:none;right:10px;top:10px}.toast{min-width:auto;width:100%}}@media (max-width:480px){.sidebar-header h1{font-size:18px}.sidebar-header p{font-size:12px}.chat-avatar,.contact-avatar{font-size:16px;height:40px;width:40px}.message-bubble{font-size:14px;max-width:85%;padding:10px 14px}.channel-tabs{overflow-x:auto;padding:0 12px}.channel-tab{font-size:13px;padding:10px 12px}.empty-state-icon{font-size:48px}.empty-state h3{font-size:20px}.empty-state p{font-size:14px}}.user-profile-section{background:#f0f2f5;background:var(--bg-secondary);border-bottom:1px solid #e4e6eb;border-bottom:1px solid var(--border-color);justify-content:space-between;padding:12px 16px}.user-info,.user-profile-section{align-items:center;display:flex;gap:12px}.user-info{flex:1 1;min-width:0}.user-avatar{align-items:center;background:#0084ff;background:var(--primary-color);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.user-details{flex:1 1;min-width:0}.user-name{color:#111b21;color:var(--text-primary);font-size:15px;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-status{font-size:11px}.status-badge{align-items:center;display:inline-flex;gap:4px;padding:3px 8px}.status-badge.connected{background:#10b98133;color:#d1fae5}.status-badge.disconnected{background:#ffffff26;color:#fffc}.user-actions{display:flex;flex-shrink:0;gap:8px}.icon-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:#667781;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;transition:all .2s}.icon-btn,.icon-btn.settings-btn{height:40px;width:40px}.icon-btn:hover{background:#f0f2f5;background:var(--bg-secondary);color:#111b21;color:var(--text-primary)}.icon-btn:active{transform:scale(.95)}.unread-badge{background:#3b82f6;border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:600;margin-left:8px;overflow:hidden;padding:2px 8px}.contact-item.active .unread-badge{background:#1e40af}.email-html-content{font-family:inherit;line-height:1.5}.email-html-content img{height:auto;max-width:100%}.email-html-content table{border-collapse:collapse;max-width:100%}.email-html-content a{color:#3b82f6;text-decoration:underline}.email-html-content *{word-wrap:break-word;max-width:100%}.message-wrapper.out .email-html-content{background:#fff;border-radius:6px;color:#111b21;padding:12px}.message-wrapper.out .email-html-content a{color:#3b82f6}.message.out .message-time{align-items:center;display:flex;gap:4px}.message-status{font-size:12px}.message-status.pending{color:#fbbf24}.message-status.delivered{color:#10b981}.message-status.failed{color:#ef4444}.btn-google{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 1px 3px #0000000d;color:#333;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.75rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease;width:100%}.btn-google:hover{background:#f8f9fa;border-color:#c6c6c6;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.btn-google:active{background:#f1f3f4;box-shadow:0 1px 3px #0000000d;transform:translateY(0)}.btn-google svg{flex-shrink:0}.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;margin:2px;padding:4px 8px}.user-status{display:flex;flex-wrap:wrap;gap:4px}.connection-summary,.user-status{margin-top:4px}.status-text{font-size:13px;font-weight:500}.status-text.connected{color:#25d366;font-size:12px}.status-text.disconnected{color:#64748b;font-size:12px}.btn-microsoft{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 1px 3px #0000000d;color:#333;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.75rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease;width:100%}.btn-microsoft:hover{background:#f8f9fa;border-color:#c6c6c6;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.btn-microsoft:active{background:#f1f3f4;box-shadow:0 1px 3px #0000000d;transform:translateY(0)}.btn-microsoft svg{flex-shrink:0}.EmojiPickerReact{border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.message-form,.message-input-container{overflow:visible;position:relative}.message-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.reaction-bubble{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:12px;cursor:pointer;display:flex;font-size:14px;gap:4px;padding:2px 8px;transition:all .2s}.reaction-bubble:hover{background:#fff3;transform:scale(1.1)}.reaction-bubble.user-reacted{background:#3b82f64d;border-color:#3b82f680}.reaction-count{opacity:.8}.message-actions{margin-top:4px;position:relative}.reaction-trigger{background:none;border:none;border-radius:4px;cursor:pointer;opacity:.5;padding:4px;transition:all .2s}.reaction-trigger:hover{background:#ffffff1a;opacity:1}.reaction-picker{background:#fff;border:1px solid #e2e8f0;border-radius:8px;bottom:100%;box-shadow:0 4px 6px #0000001a;display:flex;gap:4px;left:0;padding:8px;position:absolute;z-index:10}.reaction-option{background:none;border:none;border-radius:4px;cursor:pointer;font-size:20px;padding:4px;transition:all .2s}.reaction-option:hover{background:#f1f5f9;transform:scale(1.2)}.message-reactions-container{align-items:center;display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;min-height:24px;opacity:0;padding:0;transition:opacity .15s ease}.message-reactions-container.visible{opacity:1}.reactions-list{display:flex;flex-wrap:wrap;gap:4px}.reaction-pill{align-items:center;background:#ffffffe6;border:1px solid #00000014;border-radius:11px;box-shadow:0 1px 2px #0000001a;cursor:pointer;display:inline-flex;font-size:13px;gap:3px;min-height:22px;padding:2px 6px;transition:all .15s ease}.reaction-pill:hover{background:#fff;box-shadow:0 2px 4px #00000026;transform:translateY(-1px)}.reaction-pill.user-reacted{background:#3b82f626;border-color:#3b82f64d}.reaction-pill.user-reacted:hover{background:#3b82f633;border-color:#3b82f666}.reaction-emoji{align-items:center;display:flex;font-size:16px;line-height:1}.reaction-count{color:#0009;font-size:11px;font-weight:600;line-height:1;min-width:12px;text-align:center}.reaction-pill.user-reacted .reaction-count{color:#2563eb}.add-reaction-wrapper{display:inline-flex;position:relative}.add-reaction-trigger{align-items:center;background:#ffffffe6;border:1px solid #0000001a;border-radius:11px;box-shadow:0 1px 2px #0000001a;color:#00000080;cursor:pointer;display:inline-flex;height:22px;justify-content:center;opacity:0;padding:0;transform:scale(.8);transition:all .15s ease;width:22px}.add-reaction-trigger.visible{opacity:1;transform:scale(1)}.add-reaction-trigger:hover{background:#fff;border-color:#00000026;box-shadow:0 2px 4px #00000026;color:#000000b3;transform:scale(1.05)}.add-reaction-trigger:active{transform:scale(.95)}.emoji-picker-popup{animation:emojiPickerSlideUp .2s cubic-bezier(.4,0,.2,1);border-radius:12px;bottom:28px;box-shadow:0 8px 24px #0003;left:0;overflow:hidden;position:absolute;z-index:1000}@keyframes emojiPickerSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message-wrapper.out .emoji-picker-popup{left:auto;right:0}.contact-item.broadcast-selected{background-color:#dbeafe!important;border-left:3px solid #3b82f6}.contact-item.broadcast-selected:hover{background-color:#bfdbfe!important}.new-group-container{background:#fff;background:var(--bg-primary);border-bottom:1px solid #e4e6eb;border-bottom:1px solid var(--border-color);padding:10px 16px}.new-group-btn{align-items:center;background:#f0f2f5;background:var(--bg-secondary);border:none;border-radius:8px;color:#111b21;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:10px 16px;transition:all .2s ease;width:100%}.new-group-btn:hover{background:#e4e6eb}.group-checkbox{align-items:center;background:#0000;border:2px solid #cbd5e1;border-radius:4px;color:#fff;display:flex;flex-shrink:0;font-size:12px;height:20px;justify-content:center;width:20px}.contact-item.group-selected .group-checkbox{background:#3b82f6;border-color:#3b82f6}.group-header{background:#fff;border-bottom:1px solid #e9ecef;padding:16px 20px}.group-header .chat-header-left{flex:1 1}.group-avatar{align-items:center;background:#0084ff;background:var(--primary-color);color:#fff;display:flex;justify-content:center}.group-recipients-bar{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;flex-wrap:wrap;gap:10px;max-height:140px;overflow-y:auto;padding:16px 20px}.recipient-chip{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:20px;box-shadow:0 1px 3px #0000001a;display:inline-flex;font-size:13px;gap:8px;padding:8px 12px;transition:all .2s ease}.recipient-chip:hover{box-shadow:0 2px 6px #00000026;transform:translateY(-1px)}.recipient-chip-avatar{align-items:center;background:#0084ff;background:var(--primary-color);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:600;height:24px;justify-content:center;width:24px}.recipient-chip-name{color:#000;font-weight:500}.recipient-chip-remove{align-items:center;background:none;border:none;border-radius:50%;color:#8e8e93;cursor:pointer;display:flex;font-size:14px;height:18px;justify-content:center;line-height:1;padding:2px;transition:all .15s ease;width:18px}.recipient-chip-remove:hover{background:#e9ecef;color:#000;transform:scale(1.1)}.group-empty-state{align-items:center;background:#f0f2f5;color:#8e8e93;display:flex;flex:1 1;flex-direction:column;justify-content:center;min-height:400px;padding:60px 20px;text-align:center}.group-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.group-empty-state h3{color:#000;font-size:17px;font-weight:500;margin-bottom:8px}.group-empty-state p{font-size:14px;line-height:1.5}.broadcast-header{background:#fff;border-bottom:1px solid #e9ecef}.broadcast-avatar{align-items:center;background:#0084ff;background:var(--primary-color);color:#fff;display:flex;font-size:20px;justify-content:center}.broadcast-recipients-container{align-items:flex-start;background:#f0f2f5;display:flex;flex:1 1;justify-content:center;overflow-y:auto;padding:20px}.broadcast-empty-state{color:#8e8e93;max-width:400px;padding:60px 20px;text-align:center}.broadcast-empty-icon{font-size:64px;margin-bottom:20px;opacity:.5}.broadcast-empty-state h3{color:#000;font-size:17px;font-weight:500;margin-bottom:8px}.broadcast-empty-state p{color:#8e8e93;font-size:14px;line-height:1.5}.broadcast-recipients-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;max-width:500px;overflow:hidden;padding:0;width:100%}.broadcast-recipients-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:16px 20px}.broadcast-recipients-header h3{color:#000;font-size:15px;font-weight:500;margin:0}.broadcast-recipients-list{display:flex;flex-direction:column;max-height:400px;overflow-y:auto}.broadcast-recipient-chip{align-items:center;background:#fff;border-bottom:1px solid #f0f0f0;cursor:default;display:flex;gap:12px;padding:12px 20px;transition:background .15s ease}.broadcast-recipient-chip:last-child{border-bottom:none}.broadcast-recipient-chip:hover{background:#f8f9fa}.recipient-avatar-small{align-items:center;background:#0084ff;background:var(--primary-color);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:600;height:40px;justify-content:center;width:40px}.recipient-info{flex:1 1;min-width:0}.recipient-name{color:#000;font-size:15px;font-weight:500;margin-bottom:2px}.recipient-contact,.recipient-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipient-contact{color:#8e8e93;font-size:13px}.broadcast-indicator{align-items:center;background:#0084ff1a;border-bottom:2px solid #0084ff;border-bottom:2px solid var(--primary-color);color:#06c;color:var(--primary-dark);display:flex;font-size:14px;font-weight:500;gap:10px;padding:12px 16px}.broadcast-indicator-icon{flex-shrink:0;font-size:18px}.broadcast-indicator-text{flex:1 1}.broadcast-indicator strong{color:#1e3a8a;font-weight:700}.delete-modal{max-width:550px}.delete-modal-header h2{align-items:center;display:flex;gap:8px}.delete-modal-content{color:#475569}.delete-modal-content ul{list-style-type:disc}.delete-modal-content ul li{margin-bottom:4px}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c;box-shadow:0 4px 12px #dc26264d;transform:translateY(-1px)}.btn-danger:disabled{cursor:not-allowed;opacity:.5;transform:none}.toast-container{display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none;position:fixed;right:20px;top:20px;z-index:10000}.toast{align-items:center;animation:toastSlideIn .3s cubic-bezier(.68,-.55,.265,1.55);background:#fff;background:var(--bg-primary);border-left:4px solid;border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-xl);display:flex;gap:12px;min-width:300px;overflow:hidden;padding:16px 20px;pointer-events:auto;position:relative}.toast:before{animation:toastProgress 3s linear;animation:toastProgress var(--duration,3s) linear;background:currentColor;bottom:0;content:"";height:3px;left:0;position:absolute;right:0;transform-origin:left}.toast.success{border-left-color:#10b981;border-left-color:var(--success-color);color:#10b981;color:var(--success-color)}.toast.error{border-left-color:#ef4444;border-left-color:var(--error-color);color:#ef4444;color:var(--error-color)}.toast.warning{border-left-color:#f59e0b;border-left-color:var(--warning-color);color:#f59e0b;color:var(--warning-color)}.toast.info{border-left-color:#0084ff;border-left-color:var(--primary-color);color:#0084ff;color:var(--primary-color)}.toast-icon{flex-shrink:0;font-size:20px}.toast-content{color:#111b21;color:var(--text-primary);flex:1 1;font-size:14px;font-weight:500}.toast-close{align-items:center;background:none;border:none;border-radius:6px;border-radius:var(--radius-sm);color:#667781;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:4px;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.toast-close:hover{background:#f0f2f5;background:var(--bg-secondary);color:#111b21;color:var(--text-primary)}@keyframes toastSlideIn{0%{opacity:0;transform:translateX(100%) scale(.9)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes toastProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.empty-state{align-items:center;color:#667781;color:var(--text-secondary);display:flex;flex-direction:column;height:100%;justify-content:center;padding:40px;text-align:center}.empty-state-icon{font-size:64px;margin-bottom:16px;opacity:.5}.empty-state h3{color:#111b21;color:var(--text-primary);font-size:24px;font-weight:600;margin-bottom:12px}.empty-state p{font-size:16px;line-height:1.6;max-width:400px}.contacts-list::-webkit-scrollbar,.messages-container::-webkit-scrollbar{width:6px}.contacts-list::-webkit-scrollbar-track,.messages-container::-webkit-scrollbar-track{background:#0000}.contacts-list::-webkit-scrollbar-thumb,.messages-container::-webkit-scrollbar-thumb{background:#e4e6eb;background:var(--border-color);border-radius:3px}.contacts-list::-webkit-scrollbar-thumb:hover,.messages-container::-webkit-scrollbar-thumb:hover{background:#667781;background:var(--text-secondary)}:focus-visible{outline:2px solid #0084ff;outline:2px solid var(--primary-color);outline-offset:2px}.btn:active{transform:translateY(0)!important}a,button,input,select,textarea{transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.attachment-preview{border-radius:6px;cursor:pointer;max-height:200px;max-width:200px;object-fit:cover;transition:opacity .2s ease}.attachment-preview:hover{opacity:.8}.suggestions-container{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:8px;padding:12px}.suggestions-header{color:#666;font-size:12px;margin-bottom:8px}.close-suggestions{background:none;color:#999;font-size:20px}.suggestions-list{gap:6px}.suggestion-button{border:1px solid #ddd;border-radius:6px;padding:8px 12px}.suggestion-button:hover{background:#e3f2fd;border-color:#2196f3}.suggestions-container{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:0 24px 16px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.suggestions-title{color:#fff;letter-spacing:.3px}.close-suggestions{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:24px}.close-suggestions:hover{background:#ffffff4d;transform:scale(1.1)}.suggestions-list{display:flex;flex-direction:column;gap:8px}.suggestion-button{border:none;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a;color:#111b21;color:var(--text-primary);font-weight:500;transition:all .2s}.suggestion-button:hover{background:#f0f0f0;box-shadow:0 4px 8px #00000026;transform:translateX(4px)}.suggestion-button:active{transform:translateX(2px)}.suggestions-error{background:#fee2e2;border:1px solid #fecaca;border-radius:8px;border-radius:var(--radius-md);color:#991b1b;font-size:13px;margin:0 24px 12px;padding:12px 16px;text-align:center}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.suggestions-container{animation:slideDown .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin:0 24px 12px;padding:16px;position:relative}.suggestions-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.suggestions-header-left{align-items:center;display:flex;gap:8px}.suggestions-title{color:#1e293b;font-size:13px;font-weight:600;letter-spacing:.2px}.regenerate-btn{align-items:center;background:#0084ff1a;border:none;border-radius:6px;color:#0084ff;cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .2s;width:24px}.regenerate-btn:hover{background:#0084ff33;transform:rotate(180deg)}.suggestion-item{margin-bottom:8px}.suggestion-button{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#1e293b;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;overflow:hidden;padding:12px 16px;position:relative;text-align:left;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.suggestion-button:before{background:#0084ff;bottom:0;content:"";left:0;position:absolute;top:0;transform:scaleY(0);transition:transform .2s;width:3px}.suggestion-button.selected,.suggestion-button:hover{background:#f0f7ff;border-color:#0084ff;box-shadow:0 4px 12px #0084ff26;transform:translateX(4px)}.suggestion-button.selected:before,.suggestion-button:hover:before{transform:scaleY(1)}.suggestion-text{flex:1 1;line-height:1.5}.suggestion-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.suggestion-button:hover .suggestion-actions{opacity:1}.suggestion-edit-btn{align-items:center;background:#0084ff1a;border:none;border-radius:4px;color:#0084ff;cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .2s;width:28px}.suggestion-edit-btn:hover{background:#0084ff33}.action-btn.ai-suggestions-btn{position:relative}.action-btn.ai-suggestions-btn.active{background:#0084ff1a;color:#0084ff}.action-btn.ai-suggestions-btn:after{background:#10b981;border:2px solid #fff;border-radius:50%;content:"";height:8px;opacity:0;position:absolute;right:-2px;top:-2px;transition:opacity .2s;width:8px}.action-btn.ai-suggestions-btn.has-suggestions:after{opacity:1}:root{--PhoneInput-color--focus:#03b2cb;--PhoneInputInternationalIconPhone-opacity:0.8;--PhoneInputInternationalIconGlobe-opacity:0.65;--PhoneInputCountrySelect-marginRight:0.35em;--PhoneInputCountrySelectArrow-width:0.3em;--PhoneInputCountrySelectArrow-marginLeft:var(--PhoneInputCountrySelect-marginRight);--PhoneInputCountrySelectArrow-borderWidth:1px;--PhoneInputCountrySelectArrow-opacity:0.45;--PhoneInputCountrySelectArrow-color:currentColor;--PhoneInputCountrySelectArrow-color--focus:var(--PhoneInput-color--focus);--PhoneInputCountrySelectArrow-transform:rotate(45deg);--PhoneInputCountryFlag-aspectRatio:1.5;--PhoneInputCountryFlag-height:1em;--PhoneInputCountryFlag-borderWidth:1px;--PhoneInputCountryFlag-borderColor:#00000080;--PhoneInputCountryFlag-borderColor--focus:var(--PhoneInput-color--focus);--PhoneInputCountryFlag-backgroundColor--loading:#0000001a}.PhoneInput{align-items:center;display:flex}.PhoneInputInput{flex:1 1;min-width:0}.PhoneInputCountryIcon{height:1em;height:var(--PhoneInputCountryFlag-height);width:1.5em;width:calc(var(--PhoneInputCountryFlag-height)*var(--PhoneInputCountryFlag-aspectRatio))}.PhoneInputCountryIcon--square{width:1em;width:var(--PhoneInputCountryFlag-height)}.PhoneInputCountryIcon--border{background-color:#0000001a;background-color:var(--PhoneInputCountryFlag-backgroundColor--loading);box-shadow:0 0 0 1px #00000080,inset 0 0 0 1px #00000080;box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor),inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor)}.PhoneInputCountryIconImg{display:block;height:100%;width:100%}.PhoneInputInternationalIconPhone{opacity:.8;opacity:var(--PhoneInputInternationalIconPhone-opacity)}.PhoneInputInternationalIconGlobe{opacity:.65;opacity:var(--PhoneInputInternationalIconGlobe-opacity)}.PhoneInputCountry{align-items:center;align-self:stretch;display:flex;margin-right:.35em;margin-right:var(--PhoneInputCountrySelect-marginRight);position:relative}.PhoneInputCountrySelect{border:0;cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;z-index:1}.PhoneInputCountrySelect[disabled],.PhoneInputCountrySelect[readonly]{cursor:default}.PhoneInputCountrySelectArrow{border-bottom-width:1px;border-bottom-width:var(--PhoneInputCountrySelectArrow-borderWidth);border-color:currentColor;border-color:var(--PhoneInputCountrySelectArrow-color);border-left-width:0;border-right-width:1px;border-right-width:var(--PhoneInputCountrySelectArrow-borderWidth);border-style:solid;border-top-width:0;content:"";display:block;height:.3em;height:var(--PhoneInputCountrySelectArrow-width);margin-left:.35em;margin-left:var(--PhoneInputCountrySelectArrow-marginLeft);opacity:.45;opacity:var(--PhoneInputCountrySelectArrow-opacity);transform:rotate(45deg);transform:var(--PhoneInputCountrySelectArrow-transform);width:.3em;width:var(--PhoneInputCountrySelectArrow-width)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon+.PhoneInputCountrySelectArrow{color:#03b2cb;color:var(--PhoneInputCountrySelectArrow-color--focus);opacity:1}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon--border{box-shadow:0 0 0 1px #03b2cb,inset 0 0 0 1px #03b2cb;box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus),inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon .PhoneInputInternationalIconGlobe{color:#03b2cb;color:var(--PhoneInputCountrySelectArrow-color--focus);opacity:1}
/*# sourceMappingURL=main.ab5347d9.css.map*/