@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-app: #0e1621;--bg-sidebar: #17212b;--bg-sidebar-hover: #202b36;--bg-sidebar-active: #2b394a;--bg-chat: #0e1621;--bg-chat-bubble-sent: #2b5278;--bg-chat-bubble-recv: #182533;--text-primary: #f5f5f5;--text-secondary: #7f91a4;--text-sent: #ffffff;--text-recv: #f5f5f5;--accent: #5288c1;--accent-hover: #6197d0;--border-color: #101921;--danger: #ec3b3b;--success: #4ebd60;--unread-badge: #5288c1;--unread-text: #ffffff;--online-status: #40a7e3;--offline-status: #7f91a4;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .12);--shadow-md: 0 4px 12px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .35);--glass-bg: rgba(23, 33, 43, .75);--glass-border: rgba(255, 255, 255, .05);--chat-pattern-opacity: .06}.light-theme{--bg-app: #eef2f5;--bg-sidebar: #ffffff;--bg-sidebar-hover: #f1f5f9;--bg-sidebar-active: #e2e8f0;--bg-chat: #f4f6f8;--bg-chat-bubble-sent: #eeffde;--bg-chat-bubble-recv: #ffffff;--text-primary: #1c1c1e;--text-secondary: #8e8e93;--text-sent: #000000;--text-recv: #1c1c1e;--accent: #3390ec;--accent-hover: #267fd3;--border-color: #e4e7eb;--danger: #ff3b30;--success: #34c759;--unread-badge: #3390ec;--unread-text: #ffffff;--online-status: #34c759;--offline-status: #8e8e93;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 4px 8px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 20px rgba(0, 0, 0, .08);--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(0, 0, 0, .05);--chat-pattern-opacity: .12}*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}body,html,#root{width:100%;height:100vh;overflow:hidden;background-color:var(--bg-app);color:var(--text-primary);transition:background-color .25s ease,color .25s ease}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.light-theme ::-webkit-scrollbar-thumb{background:#0000001f}::-webkit-scrollbar-thumb:hover{background:#fff3}.auth-container{display:flex;align-items:center;justify-content:center;width:100%;height:100vh;background:linear-gradient(135deg,#0f2027,#203a43,#2c5364);position:relative;overflow:hidden}.light-theme .auth-container{background:linear-gradient(135deg,#e0eafc,#cfdef3)}.auth-background-shapes{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.auth-background-shapes div{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(82,136,193,.15) 0%,transparent 70%);animation:float-shapes 12s infinite ease-in-out}.auth-background-shapes div:nth-child(1){width:500px;height:500px;top:-100px;left:-100px}.auth-background-shapes div:nth-child(2){width:400px;height:400px;bottom:-50px;right:-50px;animation-delay:-3s}.auth-card{position:relative;z-index:10;width:420px;padding:40px;background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:24px;box-shadow:var(--shadow-lg);text-align:center;animation:slide-up .5s cubic-bezier(.19,1,.22,1) forwards}.auth-logo{display:inline-flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:20px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);color:#fff;margin-bottom:24px;box-shadow:0 8px 16px #5288c14d}.auth-title{font-size:24px;font-weight:700;margin-bottom:8px;color:var(--text-primary)}.auth-subtitle{font-size:14px;color:var(--text-secondary);margin-bottom:32px}.auth-form{display:flex;flex-direction:column;gap:20px;text-align:left}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.form-input{width:100%;padding:12px 16px;font-size:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:12px;color:var(--text-primary);outline:none;transition:all .2s ease}.light-theme .form-input{background:#f8fafc;border:1px solid #e2e8f0}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #5288c140;background:#ffffff14}.light-theme .form-input:focus{background:#fff}.auth-btn{width:100%;padding:14px;margin-top:10px;font-size:15px;font-weight:600;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);border:none;border-radius:12px;color:#fff;cursor:pointer;box-shadow:var(--shadow-sm);transition:all .25s cubic-bezier(.175,.885,.32,1.275)}.auth-btn:hover{transform:translateY(-2px);box-shadow:0 6px 12px #5288c14d}.auth-btn:active{transform:translateY(0)}.auth-footer{margin-top:24px;font-size:14px;color:var(--text-secondary)}.auth-footer span{color:var(--accent);cursor:pointer;font-weight:500}.auth-footer span:hover{text-decoration:underline}.auth-error{padding:12px;background:#ec3b3b26;border:1px solid rgba(236,59,59,.25);color:#ff6b6b;border-radius:12px;font-size:13px;line-height:1.4;margin-bottom:12px}.light-theme .auth-error{color:#c53030;background:#fff5f5;border-color:#feb2b2}.app-container{display:flex;width:100vw;height:100vh;position:relative;background-color:var(--bg-app)}.sidebar{width:380px;min-width:320px;height:100%;background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;z-index:20;transition:background-color .25s ease}.sidebar-header{padding:16px;display:flex;align-items:center;gap:12px}.sidebar-search-container{flex-grow:1;position:relative}.sidebar-search-input{width:100%;padding:10px 16px 10px 40px;font-size:14px;background-color:var(--bg-app);border:1px solid transparent;border-radius:10px;color:var(--text-primary);outline:none;transition:all .25s ease}.sidebar-search-input:focus{border-color:var(--accent);background-color:var(--bg-sidebar-hover)}.sidebar-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.profile-trigger-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.profile-trigger-btn:hover{background-color:var(--bg-sidebar-hover);color:var(--text-primary)}.sidebar-tabs{display:flex;padding:0 16px;border-bottom:1px solid var(--border-color);gap:4px}.sidebar-tab{padding:12px 10px;font-size:13px;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all .2s;flex-grow:1;text-align:center}.sidebar-tab:hover{color:var(--text-primary)}.sidebar-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.chats-list{flex-grow:1;overflow-y:auto;padding:8px 0}.chat-item{display:flex;align-items:center;padding:10px 16px;gap:12px;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.chat-item:hover{background-color:var(--bg-sidebar-hover)}.chat-item.active{background-color:var(--bg-sidebar-active)}.avatar-wrapper{position:relative;flex-shrink:0}.avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;color:#fff;background-color:var(--accent);box-shadow:var(--shadow-sm)}.status-dot{position:absolute;bottom:2px;right:2px;width:10px;height:10px;border-radius:50%;background-color:var(--online-status);border:2px solid var(--bg-sidebar)}.chat-item.active .status-dot{border-color:var(--bg-sidebar-active)}.chat-item-details{flex-grow:1;min-width:0}.chat-item-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.chat-item-name{font-weight:600;font-size:14.5px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item-time{font-size:11px;color:var(--text-secondary);flex-shrink:0}.chat-item-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px}.chat-item-msg{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-grow:1}.chat-item.active .chat-item-msg{color:#cfd8dc}.light-theme .chat-item.active .chat-item-msg{color:#555}.chat-item-typing{color:var(--online-status);font-weight:500;display:flex;align-items:center;gap:2px}.unread-badge{background-color:var(--unread-badge);color:var(--unread-text);font-size:11px;font-weight:600;padding:2px 7px;border-radius:10px;min-width:18px;text-align:center}.new-chat-floating-btn{position:absolute;bottom:24px;left:300px;width:52px;height:52px;border-radius:50%;background:var(--accent);color:#fff;border:none;box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:25;transition:all .25s cubic-bezier(.175,.885,.32,1.275)}.new-chat-floating-btn:hover{background:var(--accent-hover);transform:translateY(-3px) rotate(90deg)}.chat-window{flex-grow:1;height:100%;display:flex;flex-direction:column;position:relative;background-color:var(--bg-chat);transition:background-color .25s ease}.chat-window-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-grow:1;color:var(--text-secondary);gap:16px;background-color:var(--bg-chat)}.chat-window-empty-bubble{background-color:#ffffff08;padding:10px 18px;border-radius:20px;border:1px solid var(--border-color);font-size:14px}.chat-header{height:60px;padding:0 20px;background-color:var(--bg-sidebar);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;z-index:10;transition:background-color .25s ease}.chat-header-info{display:flex;align-items:center;gap:12px;cursor:pointer;min-width:0}.chat-header-title{font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header-subtitle{font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header-subtitle.online{color:var(--online-status)}.chat-header-actions{display:flex;align-items:center;gap:8px}.chat-header-action-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;transition:all .2s}.chat-header-action-btn:hover{background-color:var(--bg-sidebar-hover);color:var(--text-primary)}.messages-feed{flex-grow:1;overflow-y:auto;padding:20px 4% 10px;display:flex;flex-direction:column;gap:8px;position:relative;background-image:radial-gradient(rgba(255,255,255,.15) 1px,transparent 0);background-size:24px 24px;background-repeat:repeat;background-color:var(--bg-chat)}.light-theme .messages-feed{background-image:radial-gradient(rgba(0,0,0,.06) 1px,transparent 0)}.messages-date-header{align-self:center;margin:12px 0;font-size:11px;font-weight:600;background-color:#0006;color:#fff;padding:4px 12px;border-radius:12px;box-shadow:var(--shadow-sm)}.message-bubble-wrapper{display:flex;flex-direction:column;max-width:65%;animation:slide-in-bubble .15s cubic-bezier(.175,.885,.32,1.1) forwards}.message-bubble-wrapper.sent{align-self:flex-end}.message-bubble-wrapper.recv{align-self:flex-start}.message-sender-name{font-size:11.5px;font-weight:600;color:var(--online-status);margin-bottom:2px;margin-left:6px}.message-bubble{padding:8px 12px;border-radius:15px;position:relative;word-break:break-word;box-shadow:0 1px 2px #00000026}.message-bubble-wrapper.sent .message-bubble{background-color:var(--bg-chat-bubble-sent);color:var(--text-sent);border-bottom-right-radius:4px}.message-bubble-wrapper.recv .message-bubble{background-color:var(--bg-chat-bubble-recv);color:var(--text-recv);border-bottom-left-radius:4px}.message-text{font-size:14px;line-height:1.45;padding-right:50px}.message-image{max-width:100%;max-height:280px;border-radius:10px;object-fit:cover;margin-bottom:4px;cursor:pointer;display:block}.message-file-attachment{display:flex;align-items:center;gap:12px;background-color:#00000026;padding:8px 12px;border-radius:8px;margin-bottom:4px;text-decoration:none;color:inherit}.message-file-icon{width:36px;height:36px;border-radius:8px;background-color:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center}.message-file-info{display:flex;flex-direction:column;min-width:0}.message-file-name{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-file-size{font-size:11px;opacity:.7}.message-meta-overlay{position:absolute;bottom:4px;right:8px;display:flex;align-items:center;gap:4px}.message-time{font-size:9.5px;color:#ffffff80;-webkit-user-select:none;user-select:none}.message-bubble-wrapper.recv .message-time{color:var(--text-secondary)}.message-checkmarks{display:flex;color:#fff9;align-items:center}.message-checkmarks.read{color:var(--online-status)}.message-edited-label{font-size:9px;font-style:italic;opacity:.6;margin-right:2px}.chat-input-bar{background-color:var(--bg-sidebar);border-top:1px solid var(--border-color);padding:12px 18px;display:flex;flex-direction:column;gap:8px;transition:background-color .25s ease}.chat-input-row{display:flex;align-items:flex-end;gap:12px}.chat-input-actions{display:flex;align-items:center}.chat-input-action-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;transition:all .2s}.chat-input-action-btn:hover{background-color:var(--bg-sidebar-hover);color:var(--text-primary)}.chat-input-wrapper{flex-grow:1;position:relative}.chat-input-textarea{width:100%;max-height:120px;min-height:38px;height:38px;border:none;background-color:var(--bg-app);border-radius:12px;color:var(--text-primary);padding:10px 16px;font-size:14px;outline:none;resize:none;overflow-y:auto;line-height:1.35;transition:background-color .25s ease}.chat-input-textarea:focus{background-color:var(--bg-sidebar-hover)}.chat-input-send-btn{width:38px;height:38px;border-radius:50%;background-color:var(--accent);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.chat-input-send-btn:hover{background-color:var(--accent-hover);transform:scale(1.1)}.attachment-preview-bar{display:flex;align-items:center;justify-content:space-between;background-color:var(--bg-sidebar-hover);padding:6px 12px;border-radius:8px;border:1px dashed var(--accent);animation:fade-in .2s ease}.attachment-preview-info{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-primary)}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;animation:fade-in .25s ease}.modal-content{background-color:var(--bg-sidebar);width:440px;max-width:90%;border-radius:20px;border:1px solid var(--border-color);box-shadow:var(--shadow-lg);overflow:hidden;display:flex;flex-direction:column;animation:zoom-in .25s cubic-bezier(.175,.885,.32,1.2) forwards}.modal-header{padding:16px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3{font-weight:600;font-size:16px}.modal-close-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:50%;display:flex}.modal-close-btn:hover{background-color:var(--bg-sidebar-hover);color:var(--text-primary)}.modal-body{padding:20px;overflow-y:auto;max-height:400px;display:flex;flex-direction:column;gap:16px}.modal-footer{padding:12px 20px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:12px}.modal-btn{padding:10px 18px;border-radius:10px;font-size:13.5px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.modal-btn.secondary{background-color:transparent;color:var(--text-secondary)}.modal-btn.secondary:hover{background-color:var(--bg-sidebar-hover);color:var(--text-primary)}.modal-btn.primary{background-color:var(--accent);color:#fff}.modal-btn.primary:hover{background-color:var(--accent-hover)}.user-search-item{display:flex;align-items:center;padding:8px 12px;gap:12px;border-radius:10px;cursor:pointer;transition:all .2s}.user-search-item:hover{background-color:var(--bg-sidebar-hover)}.user-search-item.selected{background-color:var(--bg-sidebar-active)}.details-drawer{width:320px;height:100%;background-color:var(--bg-sidebar);border-left:1px solid var(--border-color);display:flex;flex-direction:column;animation:slide-in-right .25s cubic-bezier(.19,1,.22,1) forwards;z-index:15}.drawer-header{padding:16px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.drawer-header h3{font-weight:600;font-size:15px}.drawer-body{flex-grow:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;align-items:center;gap:20px}.drawer-avatar-section{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.drawer-name{font-weight:700;font-size:16.5px}.drawer-subtitle{font-size:12px;color:var(--text-secondary)}.drawer-info-card{width:100%;background-color:var(--bg-app);padding:14px;border-radius:12px;display:flex;flex-direction:column;gap:12px}.drawer-info-item{display:flex;flex-direction:column;gap:2px}.drawer-info-label{font-size:11px;font-weight:500;text-transform:uppercase;color:var(--text-secondary)}.drawer-info-val{font-size:13.5px;color:var(--text-primary)}.member-list-title{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-secondary);align-self:flex-start;margin-top:10px}.member-list{width:100%;display:flex;flex-direction:column;gap:8px}.member-item{display:flex;align-items:center;gap:10px;padding:6px 0}.member-name{flex-grow:1;font-size:13.5px;font-weight:500}.member-role{font-size:10px;background-color:var(--bg-sidebar-active);color:var(--text-secondary);padding:2px 6px;border-radius:4px;text-transform:uppercase}.profile-drawer{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--bg-sidebar);z-index:30;display:flex;flex-direction:column;animation:slide-in-left .25s cubic-bezier(.19,1,.22,1) forwards}.profile-avatar-upload{position:relative;cursor:pointer}.profile-avatar-upload:hover .avatar{filter:brightness(.7)}.profile-avatar-camera-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;opacity:0;transition:opacity .2s;pointer-events:none}.profile-avatar-upload:hover .profile-avatar-camera-icon{opacity:1}@keyframes float-shapes{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-30px) scale(1.1)}}@keyframes slide-up{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes zoom-in{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@keyframes slide-in-bubble{0%{transform:translateY(15px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}.typing-dots{display:flex;gap:3px;align-items:center}.typing-dot{width:4px;height:4px;border-radius:50%;background-color:var(--online-status);animation:typing-bounce 1.4s infinite ease-in-out both}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typing-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.hover-reactions-bar{display:flex;gap:6px;background-color:var(--bg-sidebar);border:1px solid var(--border-color);padding:4px 8px;border-radius:20px;position:absolute;top:-34px;right:10px;box-shadow:var(--shadow-md);z-index:50;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s cubic-bezier(.175,.885,.32,1.275);transform:translateY(5px) scale(.95)}.message-bubble-wrapper:hover .hover-reactions-bar{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.hover-reaction-emoji{font-size:16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .15s}.hover-reaction-emoji:hover{transform:scale(1.35) translateY(-2px)}.message-reactions-container{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.reaction-pill{display:flex;align-items:center;gap:4px;background-color:#ffffff14;border:1px solid rgba(255,255,255,.04);padding:2px 6px;border-radius:10px;font-size:11px;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s}.light-theme .reaction-pill{background-color:#0000000d;border-color:#00000005}.reaction-pill:hover{background-color:#ffffff26;transform:scale(1.05)}.light-theme .reaction-pill:hover{background-color:#0000001a}.reaction-pill.user-reacted{background-color:#5288c140;border-color:var(--accent);color:var(--accent)}.light-theme .reaction-pill.user-reacted{background-color:#3390ec1f}.drawer-tabs{display:flex;width:100%;border-bottom:1px solid var(--border-color);margin-bottom:12px}.drawer-tab{flex-grow:1;padding:10px;font-size:12.5px;font-weight:600;color:var(--text-secondary);background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;text-align:center;transition:all .2s}.drawer-tab:hover{color:var(--text-primary)}.drawer-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.shared-media-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;width:100%}.shared-media-photo-item{width:100%;aspect-ratio:1;border-radius:8px;object-fit:cover;cursor:pointer;transition:transform .2s,filter .2s}.shared-media-photo-item:hover{transform:scale(1.05);filter:brightness(.9)}.shared-media-docs{display:flex;flex-direction:column;gap:8px;width:100%}.shared-media-doc-item{display:flex;align-items:center;gap:10px;padding:8px;background-color:var(--bg-app);border-radius:8px;text-decoration:none;color:inherit;font-size:12px;border:1px solid transparent;transition:border-color .2s}.shared-media-doc-item:hover{border-color:var(--accent)}.pinned-message-banner{display:flex;align-items:center;justify-content:space-between;background-color:var(--bg-sidebar-active);border-bottom:1px solid var(--border-color);padding:8px 18px;cursor:pointer;z-index:10;gap:12px;animation:slide-up .2s ease-out}.pinned-message-content{display:flex;align-items:center;gap:8px;font-size:12.5px;min-width:0;flex-grow:1}.pinned-message-title{font-size:11px;font-weight:700;color:var(--accent);text-transform:uppercase}.pinned-message-text{color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-grow:1}.reply-quote-preview-bar{display:flex;align-items:center;justify-content:space-between;background-color:var(--bg-sidebar);border-top:1px solid var(--border-color);padding:6px 18px;gap:10px;animation:slide-up .2s ease-out}.reply-quote-info{display:flex;flex-direction:column;border-left:3px solid var(--accent);padding-left:8px;font-size:12px;min-width:0}.reply-quote-sender{font-weight:700;color:var(--accent);font-size:11px}.reply-quote-text{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-reply-quote{background-color:#ffffff0d;border-left:3px solid var(--accent);padding:4px 8px;border-radius:4px;margin-bottom:6px;font-size:11.5px;cursor:pointer;transition:background-color .2s}.light-theme .message-reply-quote{background-color:#00000008}.message-reply-quote:hover{background-color:#ffffff1a}.light-theme .message-reply-quote:hover{background-color:#0000000f}.message-reply-quote-sender{font-weight:700;font-size:10.5px;color:var(--accent);margin-bottom:2px}.message-reply-quote-text{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-bubble-highlight{animation:pulse-yellow-highlight 1.5s ease-out}@keyframes pulse-yellow-highlight{0%{background-color:#f1c40f66;box-shadow:0 0 12px #f1c40f4d}to{background-color:transparent;box-shadow:none}}.recording-overlay-bar{display:flex;align-items:center;flex-grow:1;background-color:var(--bg-sidebar-active);padding:8px 16px;border-radius:12px;gap:12px;font-size:13.5px;color:var(--text-primary)}.recording-dot{width:10px;height:10px;border-radius:50%;background-color:var(--danger);animation:blink-dot 1s infinite alternate}@keyframes blink-dot{0%{opacity:.2;transform:scale(.9)}to{opacity:1;transform:scale(1.15)}}.recording-timer{font-family:monospace;font-weight:600}.voice-note-bubble{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;background-color:#ffffff0d;min-width:200px;max-width:280px}.light-theme .voice-note-bubble{background-color:#00000008}.voice-btn{width:32px;height:32px;border-radius:50%;background-color:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;transition:transform .1s}.voice-btn:hover{transform:scale(1.05)}.voice-timeline{display:flex;flex-direction:column;flex-grow:1;gap:4px}.voice-slider{width:100%;height:4px;-webkit-appearance:none;background:#fff3;border-radius:2px;outline:none;cursor:pointer}.light-theme .voice-slider{background:#0000001a}.voice-slider::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:10px;border-radius:50%;background:var(--accent)}.voice-meta{display:flex;justify-content:space-between;font-size:10px;color:var(--text-secondary)}.sidebar-context-menu{position:absolute;background-color:var(--bg-sidebar);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);border-radius:8px;padding:4px;z-index:1000;display:flex;flex-direction:column;gap:2px;min-width:130px}.sidebar-context-item{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:12.5px;color:var(--text-primary);background:transparent;border:none;cursor:pointer;text-align:left;border-radius:4px;width:100%}.sidebar-context-item:hover{background-color:var(--bg-sidebar-active)}.sidebar-context-item.danger{color:var(--danger)}.sidebar-context-item.danger:hover{background-color:#e539351a}.chat-item-badge-row{display:flex;align-items:center;gap:4px}.message-context-menu{position:absolute;background-color:var(--bg-sidebar);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);border-radius:8px;padding:4px;z-index:1000;display:flex;flex-direction:column;gap:2px;min-width:140px}.photo-lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:fade-in .2s ease-out}.lightbox-image-container{position:relative;display:flex;align-items:center;justify-content:center;width:80%;height:80%}.lightbox-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px;transition:transform .2s cubic-bezier(.19,1,.22,1);box-shadow:var(--shadow-lg)}.lightbox-toolbar{position:absolute;top:20px;right:20px;display:flex;gap:12px;z-index:10001}.lightbox-tool-btn{background-color:#ffffff1a;border:none;width:40px;height:40px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s,transform .2s}.lightbox-tool-btn:hover{background-color:#fff3;transform:scale(1.05)}.gif-drawer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-height:180px;overflow-y:auto;width:100%;padding:4px}.gif-drawer-item{width:100%;aspect-ratio:1.3;object-fit:cover;border-radius:6px;cursor:pointer;transition:transform .2s}.gif-drawer-item:hover{transform:scale(1.05);box-shadow:var(--shadow-md)}.wallpaper-settings-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.wallpaper-preset-tile{aspect-ratio:.7;border-radius:6px;cursor:pointer;border:2px solid transparent;transition:border-color .2s,transform .2s;box-shadow:var(--shadow-sm)}.wallpaper-preset-tile:hover{transform:scale(1.05)}.wallpaper-preset-tile.active{border-color:var(--accent)}.chat-search-bar{display:flex;align-items:center;background-color:var(--bg-sidebar-active);border-bottom:1px solid var(--border-color);padding:8px 18px;gap:12px;animation:slide-up .2s ease-out}.chat-search-input{flex-grow:1;background-color:var(--bg-app);border:1px solid var(--border-color);border-radius:8px;padding:6px 12px;font-size:13px;color:var(--text-primary);outline:none}.chat-search-input:focus{border-color:var(--accent)}.forwarding-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fade-in .2s}.forwarding-modal{background-color:var(--bg-sidebar);border:1px solid var(--border-color);width:320px;max-height:400px;border-radius:14px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:zoom-in .2s}.forwarding-header{padding:14px 18px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.forwarding-header h4{margin:0;font-size:15px;font-weight:600}.forwarding-list{flex-grow:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:4px}.forwarding-item{display:flex;align-items:center;gap:10px;padding:8px;border-radius:8px;cursor:pointer;transition:background-color .2s}.forwarding-item:hover{background-color:var(--bg-sidebar-active)}.forwarded-message-header{font-size:10.5px;color:var(--accent);font-style:italic;font-weight:500;margin-bottom:4px;border-left:2px solid var(--accent);padding-left:6px}.poll-bubble-container{padding:4px;min-width:240px;max-width:320px}.poll-question-header{font-size:14px;font-weight:600;color:var(--text-primary);line-height:1.45}.poll-option-row{position:relative;display:flex;flex-direction:column;padding:8px 12px;border-radius:8px;cursor:pointer;background-color:#ffffff0a;transition:background-color .2s,transform .15s;overflow:hidden;border:1px solid rgba(255,255,255,.06);margin-top:6px}.light-theme .poll-option-row{background-color:#00000005;border:1px solid rgba(0,0,0,.04)}.poll-option-row:hover{background-color:#ffffff14;transform:translateY(-1px)}.light-theme .poll-option-row:hover{background-color:#0000000a}.poll-radio-circle{width:14px;height:14px;border-radius:50%;border:2px solid var(--text-secondary);position:relative;transition:border-color .2s,background-color .2s;flex-shrink:0}.poll-radio-circle.checked{border-color:var(--accent);background-color:var(--accent)}.poll-radio-circle.checked:after{content:"";position:absolute;top:3px;left:3px;width:4px;height:4px;border-radius:50%;background-color:#fff}.poll-progress-container{display:flex;align-items:center;margin-top:6px;height:16px;position:relative;width:100%}.poll-progress-fill{height:100%;background-color:#5288c138;border-radius:4px;position:absolute;top:0;left:0;transition:width .35s cubic-bezier(.4,0,.2,1)}.poll-percentage-label{font-size:11px;color:var(--text-secondary);margin-left:auto;font-weight:550;z-index:2}.poll-total-votes-footer{font-size:11px;color:var(--text-secondary);margin-top:10px;border-top:1px solid var(--border-color);padding-top:8px;text-align:right;font-style:italic}
