.chat-sidebar{z-index:11;background-color:var(--card);width:100%;height:100%;color:var(--card-foreground);flex-direction:column;display:flex;overflow:hidden}@media (min-width:768px){.chat-sidebar{border-right:1px solid var(--border);flex-shrink:0;width:280px}}.chat-sidebar>div{flex-direction:column;height:100%;display:flex;overflow:hidden}.chat-sidebar>div .overflow-y-auto{-webkit-overflow-scrolling:touch;flex:1}@media (max-width:767px){.chat-sidebar>div .overflow-y-auto{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.participant{touch-action:manipulation;min-height:44px}}
.chat-header{border-bottom:1px solid var(--border);background-color:var(--card);color:var(--card-foreground);z-index:10;flex-shrink:0;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0}.chat-header-back-button{width:36px;height:36px;color:var(--foreground);cursor:pointer;background:0 0;border:none;border-radius:18px;justify-content:center;align-items:center;transition:background-color .2s;display:flex}.chat-header-back-button:hover{background-color:var(--muted)}.chat-header-back-button:active{background-color:var(--muted);transform:scale(.95)}.chat-header-title{flex:1;min-width:0}.chat-header-title h2,.chat-header-title p{white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.chat-header-actions{gap:8px;display:flex}@media (min-width:768px){.chat-header-actions{gap:16px}}.chat-header-actions button{width:32px;height:32px;color:var(--foreground);cursor:pointer;background:0 0;border:none;border-radius:16px;justify-content:center;align-items:center;transition:background-color .2s;display:flex}@media (min-width:768px){.chat-header-actions button{width:40px;height:40px}}.chat-header-actions button:hover{background-color:var(--muted)}.chat-header-actions button:active{background-color:var(--muted);transform:scale(.95)}
.chat-messages{-webkit-overflow-scrolling:touch;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:#0000;-webkit-touch-callout:none;flex:1;padding:20px 12px 12px;overflow-y:auto}@media (min-width:768px){.chat-messages{padding:24px 16px 16px}}.chat-messages .message{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:#0000;-webkit-touch-callout:none;max-width:85%;margin-bottom:12px}@media (min-width:768px){.chat-messages .message{max-width:70%}}.chat-messages .message-bubble{word-break:break-word;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:#0000;-webkit-touch-callout:none;border-radius:18px;padding:8px 12px;transition:all .2s}@media (min-width:768px){.chat-messages .message-bubble{padding:10px 16px}}.chat-messages .message-bubble:hover{transform:translateY(-1px)}.chat-messages .message-bubble.cursor-pointer{cursor:pointer}.chat-messages .message-bubble:active{transition:transform .1s;transform:scale(.98)}.chat-messages .message-image{-webkit-user-select:none;user-select:none;border-radius:12px;max-width:300px;max-height:200px;margin-top:4px;overflow:hidden}.chat-messages .message-image img{object-fit:cover;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:auto;max-height:200px;display:block}.chat-messages .message-avatar{-webkit-user-select:none;user-select:none;border-radius:16px;width:32px;height:32px;overflow:hidden}@media (min-width:768px){.chat-messages .message-avatar{width:40px;height:40px}.chat-messages .message:hover .group-hover\:opacity-100{opacity:1}}@media (max-width:767px){.chat-messages .message:active .message-bubble{transform:scale(.98)}}.message-context-menu{z-index:80;transform-origin:top;-webkit-user-select:none;user-select:none;min-width:160px;padding:6px;animation:.2s cubic-bezier(.16,1,.3,1) context-menu-appear;position:fixed;position:fixed!important}.message-context-menu .context-menu-item{cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;font-weight:500;transition:all .15s;display:flex}@media (max-width:767px){.message-context-menu .context-menu-item{min-height:44px;padding:12px 16px;font-size:16px}}.message-context-menu .context-menu-item svg{flex-shrink:0}.message-context-menu .context-menu-item:hover{transform:translate(2px)}.message-context-menu .context-menu-item:active{transform:scale(.98)}@keyframes context-menu-appear{0%{opacity:0;transform:scale(.8)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes context-menu-disappear{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.8)translateY(-10px)}}.chat-container{flex-direction:column;width:100%;height:calc(100vh - 70px);display:flex;position:relative;overflow:hidden}@media (min-width:768px){.chat-container{flex-direction:row}}.chat-content{flex-direction:column;flex:1;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}@media (max-width:767px){.chat-container{height:100dvh;min-height:100%}.chat-messages{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.message-context-menu{-webkit-backdrop-filter:blur(8px);min-width:180px;padding:8px}.message-bubble:active{transition:transform .1s;transform:scale(.98)}}@media (prefers-reduced-motion:reduce){.message-context-menu{animation:none}.message-bubble,.context-menu-item{transition:none}}@media (prefers-contrast:high){.message-context-menu{border-width:2px}.context-menu-item{border:1px solid #0000}.context-menu-item:focus,.context-menu-item:hover{border:1px solid}}
.message-input{border-top:1px solid var(--border);background-color:var(--card);z-index:5;flex-shrink:0;padding:12px;position:relative}@media (min-width:768px){.message-input{padding:16px}}.message-input .attachments-preview{background-color:var(--muted);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:8px}.message-input .attachments-preview .attachments-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.message-input .attachments-preview .attachments-header .attachments-count{color:var(--muted-foreground);font-size:12px;font-weight:500}.message-input .attachments-preview .attachments-header .clear-all-attachments{color:var(--destructive);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:12px;transition:background-color .2s}.message-input .attachments-preview .attachments-header .clear-all-attachments:hover:not(:disabled){background-color:var(--destructive);color:var(--destructive-foreground)}.message-input .attachments-preview .attachments-header .clear-all-attachments:disabled{opacity:.5;cursor:not-allowed}.message-input .attachments-preview .attachments-grid{flex-direction:column;gap:6px;max-height:200px;display:flex;overflow-y:auto}.message-input .attachment-preview-content{background-color:var(--background);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:6px;display:flex;position:relative}.message-input .attachment-preview .image-preview{flex:1;align-items:center;gap:8px;display:flex}.message-input .attachment-preview .image-preview .preview-image{object-fit:cover;border:1px solid var(--border);border-radius:6px;width:32px;height:32px}.message-input .attachment-preview .image-preview .image-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.message-input .attachment-preview .file-preview{flex:1;align-items:center;gap:8px;display:flex}.message-input .attachment-preview .file-preview .file-icon{color:var(--muted-foreground);flex-shrink:0}.message-input .attachment-preview .file-preview .file-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.message-input .attachment-preview .file-name{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.message-input .attachment-preview .file-size{color:var(--muted-foreground);font-size:10px}.message-input .attachment-preview .remove-attachment{background:var(--destructive);color:var(--destructive-foreground);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:background-color .2s;display:flex}.message-input .attachment-preview .remove-attachment:hover:not(:disabled){background:var(--destructive);opacity:.8}.message-input .attachment-preview .remove-attachment:disabled{opacity:.5;cursor:not-allowed}.message-input-form{background-color:var(--muted);border-radius:24px;align-items:center;padding:4px;display:flex}.message-input-field{min-height:20px;max-height:80px;color:var(--foreground);background:0 0;border:none;flex:1;padding:8px 12px;font-size:16px}.message-input-field:focus{outline:none}.message-input-field:disabled{opacity:.6;cursor:not-allowed}.message-input-field::placeholder{color:var(--muted-foreground)}.message-input-icon{width:36px;height:36px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;border-radius:18px;justify-content:center;align-items:center;transition:all .2s;display:flex}@media (min-width:768px){.message-input-icon{width:40px;height:40px}}.message-input-icon:hover:not(:disabled){background-color:var(--accent);color:var(--foreground)}.message-input-icon:disabled{opacity:.5;cursor:not-allowed}.message-input .send-button{cursor:pointer;background:0 0;border:none;border-radius:18px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}@media (min-width:768px){.message-input .send-button{width:40px;height:40px}}.message-input .send-button.active{background-color:var(--primary);color:var(--primary-foreground)}.message-input .send-button.active:hover{background-color:var(--primary);opacity:.9}.message-input .send-button.disabled{color:var(--muted-foreground);opacity:.5;cursor:not-allowed}.message-input .send-button .spinner{border:2px solid var(--muted-foreground);border-top:2px solid var(--primary);border-radius:50%;width:16px;height:16px;animation:1s linear infinite spin}.mobile-chat-view .message-input{z-index:15;background-color:var(--card);border-top:1px solid var(--border);flex-shrink:0;position:sticky;bottom:0}@supports (padding:max(0px)){.message-input{padding-bottom:max(12px,env(safe-area-inset-bottom) + 4px)}}@media (pointer:coarse){.message-input-icon:hover,.send-button:hover{background-color:#0000!important}}@media (max-width:767px){.message-input-icon{touch-action:manipulation;min-height:44px}.message-input-field{font-size:16px}}
.chat-right-sidebar{flex-direction:column;display:flex}@media (min-width:1024px){.chat-right-sidebar{width:280px;height:100%;box-shadow:none;position:relative}.chat-right-sidebar.open{transform:translate(0)}}@media (max-width:1023px){.chat-right-sidebar{display:none}.mobile-right-sidebar-overlay .chat-right-sidebar{width:100%;height:100%;display:flex}}.chat-right-sidebar-content{-webkit-overflow-scrolling:touch;height:100%;padding-bottom:env(safe-area-inset-bottom);overflow-y:auto}.mobile-right-sidebar-overlay{z-index:50;background-color:#00000080;animation:.3s fade-in;display:flex;position:fixed;inset:70px 0 0}.mobile-right-sidebar-overlay:before{content:"";z-index:1;position:absolute;inset:0}.mobile-right-sidebar-overlay .chat-right-sidebar-content{z-index:2;width:85%;max-width:320px;height:100%;padding-top:env(safe-area-inset-top);border-left:1px solid #0000001a;margin-left:auto;animation:.3s slide-in-right;position:relative;transform:translate(0)}@supports (padding:max(0px)){.chat-right-sidebar{padding-bottom:env(safe-area-inset-bottom)}}
@keyframes message-appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slide-out-left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slide-out-right{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.avatar-initials{color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-weight:600;display:flex}.mobile-conversation-list{background-color:var(--card);flex-direction:column;width:100%;height:calc(100vh - 90px);margin-top:0;display:flex}@media (min-width:768px){.mobile-conversation-list{display:none}}.mobile-chat-view{background-color:var(--background);flex-direction:column;width:100%;height:calc(100vh - 90px);margin-top:0;display:flex;position:relative}@media (min-width:768px){.mobile-chat-view{display:none}}
