:root{--bg-main:#fff;--bg-sidebar:#f8f9fa;--bg-chat:#f0f2f5;--accent:#00a884;--accent-light:#dcf8c6;--accent-hover:#008f6f;--text-primary:#111b21;--text-secondary:#667781;--border:#e9edef;--msg-sent:#dcf8c6;--msg-received:#fff;--hover:#f5f6f6;--shadow:0 2px 5px #0b141a14;--glass:#fffc;--header-height:60px;--sidebar-width:380px}[data-theme=dark]{--bg-main:#111b21;--bg-sidebar:#202c33;--bg-chat:#0b141a;--accent:#00a884;--accent-light:#056162;--text-primary:#e9edef;--text-secondary:#8696a0;--border:#222d34;--msg-sent:#056162;--msg-received:#202c33;--hover:#2a3942;--shadow:0 1px 3px #0006}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{background-color:var(--bg-chat);color:var(--text-primary);overscroll-behavior:none;touch-action:pan-x pan-y manipulation;width:100vw;height:100dvh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex;overflow:hidden}#root{width:100%;height:100%;display:flex}.app-container{background:var(--bg-main);width:100%;height:100%;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);background:var(--bg-main);border-right:1px solid var(--border);z-index:50;flex-direction:column;flex-shrink:0;height:100%;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex}.sidebar-header{height:var(--header-height);background:var(--bg-sidebar);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:0 16px;display:flex}.sidebar-header h1{color:var(--text-primary);font-size:20px;font-weight:700}.header-icons{gap:8px;display:flex}.btn-icon{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.btn-icon:hover:not(:disabled){background:var(--hover);color:var(--text-primary);transform:scale(1.05)}.btn-icon:disabled{opacity:.3;cursor:not-allowed}.search-bar{background:var(--bg-main);padding:8px 12px}.search-wrapper{background:var(--bg-sidebar);border-radius:10px;align-items:center;gap:12px;padding:6px 14px;display:flex}.search-wrapper input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:4px 0;font-size:16px}.chat-list{scrollbar-width:thin;flex:1;overflow-y:auto}.chat-item{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;padding:12px 16px;transition:background .2s;display:flex;position:relative}.unread-badge{color:#fff;background:#25d366;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:19px;height:19px;margin-left:8px;padding:0 4px;font-size:11px;font-weight:700;display:flex}.chat-meta-bottom{justify-content:space-between;align-items:center;display:flex}.chat-preview{color:var(--text-secondary);align-items:center;gap:8px;width:100%;font-size:14px;display:flex;overflow:hidden}.chat-item:hover,.chat-item.active{background:var(--hover)}.avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-weight:600;display:flex;overflow:hidden}.chat-meta{flex:1;margin-left:12px;overflow:hidden}.chat-meta-top{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.chat-name{color:var(--text-primary);font-size:16px;font-weight:600}.chat-time{color:var(--text-secondary);font-size:12px}.chat-preview{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.chat-area{background-image:url(https://user-images.githubusercontent.com/15075759/28719144-86dc0f70-73b1-11e7-911d-60d70fcded21.png);background-color:var(--bg-chat);flex-direction:column;flex:1;display:flex;position:relative}.chat-header{height:var(--header-height);background:var(--bg-sidebar);border-bottom:1px solid var(--border);z-index:10;justify-content:space-between;align-items:center;padding:0 16px;display:flex}.chat-header-info{align-items:center;gap:12px;display:flex}.message-list{flex-direction:column;flex:1;gap:4px;padding:20px;display:flex;overflow-y:auto}.message{max-width:65%;box-shadow:var(--shadow);word-wrap:break-word;border-radius:8px;padding:6px 10px 8px;font-size:14.2px;line-height:1.5;position:relative}.message.sent{background:var(--msg-sent);color:var(--text-primary);border-top-right-radius:0;align-self:flex-end}.message.received{background:var(--msg-received);color:var(--text-primary);border-top-left-radius:0;align-self:flex-start}.message-time{color:var(--text-secondary);float:right;margin-top:4px;margin-left:8px;font-size:11px}.chat-input{background:var(--bg-sidebar);align-items:center;gap:10px;padding:10px 16px;display:flex}.input-container{background:var(--bg-main);border-radius:24px;flex:1;align-items:center;min-width:0;padding:8px 16px;display:flex}.input-container input,.input-container textarea{color:var(--text-primary);resize:none;flex:1;width:100%;min-width:0;margin:0;padding:0;font-family:inherit;font-size:15px;line-height:20px;background:0 0!important;border:none!important;outline:none!important}.input-container textarea{max-height:100px;padding:5px 0;overflow-y:auto}.input-container textarea::placeholder{color:var(--text-secondary);opacity:.8}.loading-skeleton{background:linear-gradient(90deg, var(--bg-sidebar) 25%, var(--hover) 50%, var(--bg-sidebar) 75%);background-size:200% 100%;border-radius:4px;animation:1.5s infinite loading}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.spinning{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.file-attachment{background:#0000000a;border-radius:6px;margin-bottom:4px;overflow:hidden}.image-wrapper{cursor:pointer;width:100%;display:flex;position:relative}.image-wrapper img{object-fit:cover;width:100%;max-width:320px;max-height:400px;display:block}.download-btn-overlay{color:#fff;opacity:0;background:#0006;border-radius:50%;padding:6px;transition:opacity .2s,background .2s;display:flex;position:absolute;top:10px;right:10px}.image-wrapper:hover .download-btn-overlay{opacity:1}.download-btn-overlay:hover{background:#000000b3}.file-btn{background:#00000008;border-radius:8px;transition:background .2s}.file-btn:hover{background:#00000014}.doc-icon{background:var(--accent);color:#fff;border-radius:50%;padding:8px;display:flex}@media (width<=768px){.message{max-width:85%}.sidebar{width:100%;position:absolute}.sidebar.inactive{transform:translate(-100%)}.chat-area{z-index:100;width:100%;transition:transform .3s;position:absolute;inset:0;transform:translate(100%)}.chat-area.active{transform:translate(0)}.mobile-back{display:block!important}.chat-input{gap:6px;padding:8px 10px}.chat-input .btn-icon{padding:8px 4px}.welcome-screen{padding:20px}.welcome-screen h2{font-size:24px!important}.avatar-wrapper{width:150px!important;height:150px!important}.profile-settings-header{height:80px!important}}@media (width<=480px){.chat-header{padding:0 8px}.chat-header-info{gap:8px}.user-details .chat-name{white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:14px;overflow:hidden}.message{max-width:90%;font-size:13px}.chat-input{padding:6px 8px}.avatar{width:40px!important;height:40px!important}}.mobile-back{display:none}.welcome-screen{text-align:center;border-bottom:6px solid var(--accent);background:#f0f2f5;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;display:flex;position:relative;overflow:hidden}.concentric-circles-bg-alt{z-index:1;pointer-events:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.welcome-screen h2{color:var(--text-secondary);margin-top:24px;font-size:32px;font-weight:300}.welcome-screen p{color:var(--text-secondary);max-width:450px;margin-top:16px;line-height:1.5}.sidebar{background:#fff!important}.sidebar-header{background:#f0f2f5!important}.search-bar{background:#fff!important}.search-wrapper{background:#f0f2f5!important}.chat-item:hover{background:#f5f6f6!important}.chat-item.active{background:#f0f2f5!important}.profile-settings-container{width:var(--sidebar-width);background:var(--bg-sidebar);z-index:1000;flex-direction:column;height:100%;animation:.3s slideIn;display:flex;position:absolute;top:0;left:0}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.profile-settings-header{background:var(--accent);color:#fff;align-items:flex-end;gap:20px;height:110px;padding:20px;display:flex}.profile-settings-content{background:var(--bg-main);flex:1;overflow-y:auto}.profile-settings-user{background:#fff;flex-direction:column;align-items:center;gap:16px;padding:28px 20px;display:flex;box-shadow:0 1px 3px #00000014}.profile-username{color:var(--text-primary);font-size:20px;font-weight:600}.profile-status{color:var(--text-secondary);font-size:14px}.settings-section{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;margin-top:12px}.settings-item{cursor:pointer;align-items:center;gap:16px;padding:16px 20px;transition:background .2s;display:flex}.settings-item:hover{background:var(--hover)}.settings-icon-wrapper{color:var(--text-secondary)}.settings-item-text h3{color:var(--text-primary);font-size:16px;font-weight:500}.settings-item-text p{color:var(--text-secondary);font-size:13px}.logout-item{color:#ff4d4d}.msg-dropdown-btn{background:var(--bg-main);color:var(--text-secondary);opacity:0;cursor:pointer;box-shadow:var(--shadow);z-index:10;border-radius:50%;padding:4px;transition:opacity .2s;position:absolute;top:4px;right:4px}.message:hover .msg-dropdown-btn{opacity:1}.msg-context-menu{background:var(--bg-main);border:1px solid var(--border);transform-origin:100% 0;border-radius:8px;flex-direction:column;min-width:120px;animation:.2s scaleIn;display:flex;overflow:hidden;box-shadow:0 4px 12px #00000026}.msg-menu-item{cursor:pointer;color:var(--text-primary);align-items:center;gap:12px;padding:12px 16px;font-size:14px;transition:background .2s;display:flex}.msg-menu-item:hover{background:var(--hover)}.msg-menu-item.delete{color:#ff4d4d}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=768px){.profile-settings-container{width:100%}}.search-results-section{background:#fff}.search-suggestion{transition:all .2s;border-bottom:none!important;padding:8px 16px!important}.search-suggestion:hover{background:#00a8840d!important}.suggestion-action{opacity:0;background:#00a8841a;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:opacity .2s;display:flex}.search-suggestion:hover .suggestion-action{opacity:1}.lightbox-overlay{z-index:9999;background:#000000e6;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.lightbox-content{justify-content:center;align-items:center;max-width:90%;max-height:90%;display:flex;position:relative}.lightbox-content img{object-fit:contain;border-radius:8px;max-width:100%;max-height:90vh;box-shadow:0 10px 30px #00000080}.lightbox-close{color:#fff;cursor:pointer;background:0 0;border:none;padding:10px;font-size:30px;position:absolute;top:-40px;right:-40px}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.lightbox-overlay{animation:.2s fadeInOverlay}@media (width<=768px){.lightbox-close{top:-50px;right:10px}}.message.only-image{max-width:fit-content;position:relative;box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.message.only-image .image-wrapper{border:none;border-radius:8px;position:relative;overflow:hidden;box-shadow:0 1px 1.5px #00000026}.message.only-image .message-time{color:#fff;-webkit-backdrop-filter:blur(4px);background:#0006;border-radius:12px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;position:absolute;bottom:10px;right:10px;display:flex!important}.message.only-image .message-time svg{color:#fff!important}.message.only-image .msg-dropdown-btn{background:#fffc;top:10px;right:10px}@keyframes pulse{0%{opacity:.7;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}to{opacity:.7;transform:scale(.95)}}.recording-dot{animation:1s ease-in-out infinite pulse}
