@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";:root{--font-primary: "Plus Jakarta Sans", sans-serif;--font-heading: "Outfit", sans-serif;--bg-raw: 222 47% 6%;--bg-app: hsl(var(--bg-raw));--bg-card-raw: 223 33% 13%;--bg-card: hsl(var(--bg-card-raw));--bg-card-hover: hsl(223 33% 18%);--bg-input: hsl(222 36% 10%);--bg-chat-bubble-self: hsl(235 45% 55%);--bg-chat-bubble-other: hsl(223 20% 24%);--border-color: rgba(255, 255, 255, .08);--border-light: rgba(255, 255, 255, .04);--border-focus: hsl(235 45% 58%);--primary-raw: 235 45% 58%;--primary: hsl(var(--primary-raw));--primary-hover: hsl(235 45% 64%);--primary-gradient: linear-gradient(135deg, hsl(235 45% 52%) 0%, hsl(235 55% 62%) 100%);--secondary: hsl(215 15% 65%);--success: hsl(142 70% 45%);--success-glow: rgba(16, 185, 129, .15);--warning: hsl(38 92% 50%);--error: hsl(346 87% 55%);--error-glow: rgba(244, 63, 94, .15);--text-primary: #f3f4f6;--text-secondary: #9ca3af;--text-muted: #6b7280;--glass-bg: rgba(11, 15, 25, .65);--glass-card: rgba(22, 28, 45, .45);--glass-border: rgba(255, 255, 255, .06);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--glow-shadow: 0 0 20px rgba(100, 108, 196, .25);--transition-smooth: all .25s cubic-bezier(.4, 0, .2, 1);--transition-bounce: all .4s cubic-bezier(.175, .885, .32, 1.275);--sidebar-bg: rgba(16, 22, 37, .5);--main-gradient: radial-gradient(circle at 80% 20%, rgba(100, 108, 196, .05) 0%, rgba(0, 0, 0, 0) 50%);--tabs-bg: rgba(0, 0, 0, .2);--header-bg: rgba(16, 22, 37, .3);--timeline-bg: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(100, 108, 196, .02) 100%);--file-card-bg: rgba(0, 0, 0, .2);--table-header-bg: rgba(0, 0, 0, .15);--slider-bg: rgba(255, 255, 255, .15);--tab-active-text: white;--scrollbar-thumb: rgba(255, 255, 255, .15);--scrollbar-thumb-hover: rgba(255, 255, 255, .28)}:root.light-theme{--bg-raw: 220 33% 97%;--bg-app: hsl(var(--bg-raw));--bg-card-raw: 0 0% 100%;--bg-card: hsl(var(--bg-card-raw));--bg-card-hover: hsl(220 20% 93%);--bg-input: hsl(220 20% 94%);--bg-chat-bubble-self: hsl(235 45% 55%);--bg-chat-bubble-other: hsl(220 20% 91%);--border-color: rgba(0, 0, 0, .08);--border-light: rgba(0, 0, 0, .04);--border-focus: hsl(235 45% 58%);--text-primary: #111827;--text-secondary: #4b5563;--text-muted: #9ca3af;--glass-bg: rgba(255, 255, 255, .8);--glass-card: rgba(255, 255, 255, .7);--glass-border: rgba(0, 0, 0, .08);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .08);--glow-shadow: 0 0 20px rgba(100, 108, 196, .12);--sidebar-bg: rgba(255, 255, 255, .65);--main-gradient: radial-gradient(circle at 80% 20%, rgba(100, 108, 196, .03) 0%, rgba(255, 255, 255, 0) 50%);--tabs-bg: rgba(0, 0, 0, .05);--header-bg: rgba(255, 255, 255, .5);--timeline-bg: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(100, 108, 196, .01) 100%);--file-card-bg: rgba(0, 0, 0, .04);--table-header-bg: rgba(0, 0, 0, .03);--slider-bg: rgba(0, 0, 0, .1);--tab-active-text: var(--text-primary);--scrollbar-thumb: rgba(0, 0, 0, .18);--scrollbar-thumb-hover: rgba(0, 0, 0, .32)}*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}body{font-family:var(--font-primary);background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;height:100vh;width:100vw}input,button,select,textarea{font-family:inherit;color:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;letter-spacing:-.02em}.flex-center{display:flex;align-items:center;justify-content:center}.glass-panel{background:var(--glass-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:16px;transition:var(--transition-smooth)}.glass-panel:hover{border-color:#ffffff1a}.btn-primary{background:var(--primary-gradient);border:none;border-radius:12px;color:#fff;padding:12px 24px;font-weight:600;font-family:var(--font-heading);cursor:pointer;box-shadow:var(--glow-shadow);transition:var(--transition-bounce);display:inline-flex;align-items:center;gap:8px}.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.1)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{background:var(--text-muted);cursor:not-allowed;box-shadow:none;transform:none;filter:none}.btn-secondary{background:#ffffff0f;border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);padding:12px 24px;font-weight:500;cursor:pointer;transition:var(--transition-smooth);display:inline-flex;align-items:center;gap:8px}.btn-secondary:hover{background:#ffffff1f;border-color:#fff3}.btn-secondary.active{background:var(--primary-gradient);border-color:transparent;color:#fff}.avatar-img{width:100%;height:100%;border-radius:inherit;object-fit:cover;display:block}.input-group{margin-bottom:20px;display:flex;flex-direction:column;gap:6px}.input-group label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.form-input{background:var(--bg-input);border:1px solid var(--border-color);border-radius:12px;padding:14px 16px;color:var(--text-primary);font-size:.95rem;transition:var(--transition-smooth);width:100%}.form-input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #646cc433}.badge{padding:4px 10px;border-radius:99px;font-size:.75rem;font-weight:600;text-transform:uppercase;display:inline-flex;align-items:center;gap:4px}.badge-primary{background:#646cc426;color:var(--primary);border:1px solid rgba(100,108,196,.2)}.badge-success{background:#10b98126;color:var(--success);border:1px solid rgba(16,185,129,.2)}.badge-error{background:#f43f5e26;color:var(--error);border:1px solid rgba(244,63,94,.2)}.typing-dots{display:flex;align-items:center;gap:4px;padding:8px 12px}.typing-dots span{width:6px;height:6px;background:var(--text-secondary);border-radius:50%;display:inline-block;animation:typing 1.4s infinite both}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1.1);opacity:1}}.app-container{display:flex;flex-direction:column;height:100vh;width:100vw;background-color:var(--bg-app);overflow:hidden}.auth-wrapper{height:100vh;width:100vw;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 10% 20%,#6366f126,#0000 60%),var(--bg-app)}.auth-card{width:100%;max-width:440px;padding:40px}.auth-title{font-size:2.2rem;font-family:var(--font-heading);text-align:center;margin-bottom:8px;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.auth-subtitle{font-size:.9rem;color:var(--text-secondary);text-align:center;margin-bottom:30px}.auth-toggle{text-align:center;margin-top:20px;font-size:.85rem;color:var(--text-secondary)}.auth-toggle span{color:var(--primary);cursor:pointer;font-weight:600;transition:var(--transition-smooth)}.auth-toggle span:hover{text-decoration:underline}.sidebar{width:340px;border-right:1px solid var(--border-color);display:flex;flex-direction:column;background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.main-content{flex:1;display:flex;flex-direction:column;background:var(--main-gradient),var(--bg-app);overflow:hidden}.sidebar-header{padding:20px;border-bottom:1px solid var(--border-color)}.user-profile{display:flex;align-items:center;gap:12px;margin-bottom:20px}.user-avatar{width:42px;height:42px;border-radius:12px;background:var(--primary-gradient);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:700;font-size:1.1rem;color:#fff}.user-info{flex:1;overflow:hidden}.user-name{font-weight:600;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role-badge{display:inline-block;font-size:.7rem;color:var(--primary);background:#6366f11f;padding:2px 6px;border-radius:4px;font-weight:600;margin-top:2px}.sidebar-tabs{display:flex;background:var(--tabs-bg);border-radius:10px;padding:4px}.tab-btn{flex:1;background:transparent;border:none;padding:8px;border-radius:8px;color:var(--text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:var(--transition-smooth)}.tab-btn.active{background:var(--bg-card);color:var(--tab-active-text)}.sidebar-list-container{flex:1;overflow-y:auto;padding:16px 8px;display:flex;flex-direction:column;gap:8px}.search-box{padding:0 8px 12px}.chat-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;cursor:pointer;transition:var(--transition-smooth)}.chat-item.active{background:#6366f11a;border-left:3px solid var(--primary)}.chat-item-avatar{width:44px;height:44px;border-radius:50%;background:var(--bg-chat-bubble-other);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:600;color:var(--text-primary);border:1px solid var(--border-color)}.chat-item-avatar.group{background:#10b9811a;color:var(--success);border-color:#10b98133}.chat-item-details{flex:1;overflow:hidden}.chat-item-name{font-size:.92rem;font-weight:600;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item-lastmsg{font-size:.78rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item-time{font-size:.7rem;color:var(--text-muted)}.chat-window{display:flex;flex-direction:row;height:100%;width:100%;overflow:hidden}.chat-main-timeline-pane{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden}.chat-header{height:70px;border-bottom:1px solid var(--border-color);padding:0 24px;display:flex;align-items:center;justify-content:space-between;background:var(--header-bg)}.chat-header-info{display:flex;flex-direction:column}.chat-header-name{font-size:1.1rem;font-weight:600}.chat-header-status{font-size:.78rem;color:var(--success)}.chat-messages-container{position:relative;flex:1;overflow-y:auto;padding:24px 0;background:var(--timeline-bg)}.scroll-to-bottom-sticky-wrap{position:sticky;bottom:12px;height:0;display:flex;justify-content:flex-end;pointer-events:none;padding-right:20px}.scroll-to-bottom-btn{pointer-events:auto;width:38px;height:38px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--glass-shadow);color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-smooth)}.scroll-to-bottom-btn:hover{background:var(--bg-card-hover)}.chat-messages-inner{display:flex;flex-direction:column;gap:10px;max-width:900px;width:100%;margin:0 auto;padding:0 24px}.date-divider{display:flex;align-items:center;justify-content:center;margin:8px 0}.date-divider span{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);font-size:.72rem;font-weight:600;padding:4px 14px;border-radius:12px}.system-notice-divider{display:flex;align-items:center;justify-content:center;margin:8px 0;text-align:center}.system-notice-divider span{color:var(--text-muted);font-size:.72rem;font-style:italic;padding:2px 10px}.message-row{display:flex;align-items:flex-end;width:100%;gap:8px}.message-row.self{justify-content:flex-end}.message-row.other{justify-content:flex-start}.message-row-avatar{width:30px;height:30px;border-radius:50%;background:var(--bg-chat-bubble-other);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:.66rem;font-weight:700;color:var(--text-primary);flex-shrink:0}.message-row-content{display:flex;flex-direction:column;max-width:78%;min-width:0}.message-row.self .message-row-content{align-items:flex-end}.message-row.other .message-row-content{align-items:flex-start}.message-bubble{max-width:100%;padding:10px 16px;border-radius:16px;font-size:.92rem;line-height:1.45;box-shadow:0 4px 12px #0000001a;position:relative;word-break:break-word;overflow-wrap:anywhere;white-space:pre-wrap}.emoji-only-content{display:inline-block;font-size:2.4rem;line-height:1.2}.message-bubble.emoji-only-bubble{background:none!important;border:none!important;box-shadow:none!important;padding:0!important}.message-bubble.deleted-message-bubble{opacity:.7}.deleted-message-text{display:flex;align-items:center;gap:6px;font-style:italic;font-size:.85rem;color:var(--text-muted)}.message-row.self .deleted-message-text{color:#fffc}.message-bubble.image-only-bubble{padding:3px!important}.chat-image-preview{display:block;max-width:280px;max-height:320px;width:auto;height:auto;border-radius:13px;cursor:pointer;object-fit:contain}.chat-image-placeholder{width:200px;height:200px;display:flex;align-items:center;justify-content:center;background:#ffffff0f;color:var(--text-muted);cursor:default}.message-row.self .chat-image-placeholder{background:#ffffff29;color:#ffffffb3}.image-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:3px;max-width:280px}.image-group-tile{position:relative;aspect-ratio:1}.image-group-thumb{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;display:block;border-radius:8px;cursor:pointer}.image-tile-actions{position:absolute;top:4px;right:4px}.image-tile-delete-btn{background:#0000008c;border:none;color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s ease}.image-group-tile:hover .image-tile-delete-btn{opacity:1}.image-lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:2000}.image-lightbox-img{max-width:90vw;max-height:88vh;border-radius:6px;cursor:default}.image-lightbox-close{position:absolute;top:20px;right:24px;background:#ffffff1f;border:none;color:#fff;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer}.image-lightbox-download{position:absolute;top:26px;right:76px;background:#ffffff1f;border:none;color:#fff;border-radius:20px;padding:8px 16px;display:flex;align-items:center;gap:6px;font-size:.85rem;cursor:pointer}.image-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1f;border:none;color:#fff;border-radius:50%;width:46px;height:46px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-smooth)}.image-lightbox-nav:hover{background:#ffffff3d}.image-lightbox-nav.prev{left:24px}.image-lightbox-nav.next{right:24px}.image-lightbox-counter{position:absolute;top:26px;left:24px;background:#ffffff1f;color:#fff;border-radius:20px;padding:6px 14px;font-size:.8rem}.message-row.self .message-bubble{background:var(--primary-gradient);color:#fff;border-bottom-right-radius:4px}.message-row.other .message-bubble{background:var(--bg-chat-bubble-other);color:var(--text-primary);border-bottom-left-radius:4px;border:1px solid var(--border-color)}.message-row.self .message-bubble.card-bubble,.message-row.other .message-bubble.card-bubble{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);padding:12px}.message-sender{font-size:.72rem;font-weight:600;color:var(--text-secondary);margin-bottom:4px;margin-left:4px}.message-time{font-size:.68rem;color:var(--text-muted);margin-top:4px;margin-right:4px}.message-row.self .message-time{align-self:flex-end}.message-row.other .message-time{align-self:flex-start;margin-right:0;margin-left:4px}.file-message-card{display:flex;align-items:center;gap:12px;background:var(--file-card-bg);border:1px solid var(--border-color);padding:10px 14px;border-radius:8px;margin:4px 0;cursor:pointer;transition:var(--transition-smooth)}.file-message-card:hover{background:#ffffff0d}.file-icon-box{width:36px;height:36px;border-radius:8px;background:#6366f133;color:var(--primary);display:flex;align-items:center;justify-content:center}.file-info{flex:1;overflow:hidden}.file-name-text{font-weight:600;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta-text{font-size:.72rem;color:var(--text-secondary)}.message-row.self .file-message-card{background:#ffffff24;border-color:#ffffff40}.message-row.self .file-message-card:hover{background:#ffffff38}.poll-message-card{min-width:260px;max-width:320px}.event-message-card{min-width:260px;max-width:340px}.event-message-card.cancelled{opacity:.75}.event-card-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.event-card-icon{width:34px;height:34px;border-radius:8px;background:var(--primary-gradient);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.event-card-title{min-width:0}.event-name{font-weight:700;font-size:.95rem;line-height:1.2}.event-when{font-size:.8rem;color:var(--text-secondary);margin-top:2px}.event-line{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-secondary);margin:4px 0}.event-desc{font-size:.82rem;color:var(--text-primary);margin:6px 0;white-space:pre-wrap;word-break:break-word}.event-invited-badge{display:inline-block;font-size:.7rem;color:var(--primary);background:var(--primary-hover);color:#fff;padding:2px 8px;border-radius:999px;margin:4px 0}.event-cancelled-badge{font-size:.78rem;color:var(--error);font-weight:600;margin-top:6px}.event-reminder-pills{display:flex;flex-wrap:wrap;gap:6px}.event-reminder-pill{padding:5px 12px;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-input);color:var(--text-secondary);font-size:.76rem;cursor:pointer;transition:var(--transition-smooth)}.event-reminder-pill:hover{background:var(--bg-card-hover)}.event-reminder-pill.selected{background:var(--primary-gradient);color:#fff;border-color:transparent}.event-rsvp{display:flex;gap:6px;margin:10px 0 8px}.event-rsvp-btn{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:4px;padding:7px 4px;border:1px solid rgba(127,127,127,.28);border-radius:8px;background:#7f7f7f1a;color:var(--text-primary);font-size:.75rem;white-space:nowrap;cursor:pointer;transition:var(--transition-smooth)}.event-rsvp-btn:hover{background:#7f7f7f2e}.event-rsvp-btn.selected{background:var(--primary-gradient);color:#fff;border-color:transparent}.event-rsvp-count{font-size:.68rem;font-weight:700;background:#0000001f;border-radius:999px;padding:0 5px;line-height:1.5}.event-rsvp-btn.selected .event-rsvp-count{background:#ffffff40}.event-card-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border-color);padding-top:8px}.event-going{display:flex;align-items:center;gap:5px;font-size:.78rem;color:var(--text-secondary)}.event-cancel-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--error);font-size:.75rem;cursor:pointer;padding:2px 4px}.poll-question{display:flex;align-items:flex-start;gap:8px;margin-bottom:10px;font-weight:600;font-size:.88rem;line-height:1.3}.poll-question svg{margin-top:2px;flex-shrink:0;opacity:.8}.poll-options{display:flex;flex-direction:column;gap:6px}.poll-option{position:relative;width:100%;text-align:left;border:1px solid rgba(127,127,127,.28);border-radius:8px;padding:7px 10px;background:#7f7f7f1a;cursor:pointer;overflow:hidden}.poll-option:disabled{cursor:default}.poll-option.voted{border-color:var(--primary)}.poll-option-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:#7f7f7f38;transition:width .2s ease}.poll-option.voted .poll-option-fill{background:var(--primary);opacity:.2}.poll-option-row{position:relative;display:flex;justify-content:space-between;align-items:center;gap:8px}.poll-option-text{font-size:.82rem}.poll-option.voted .poll-option-text{font-weight:600}.poll-option.winner{border-color:var(--primary)}.poll-option.winner .poll-option-fill{background:var(--primary);opacity:.2}.poll-option.winner .poll-option-text{font-weight:700}.poll-closed-banner{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;color:var(--text-secondary);background:#7f7f7f24;border-radius:6px;padding:3px 8px;margin-bottom:8px}.poll-extend-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--primary);font-size:.72rem;cursor:pointer;padding:2px 4px}.poll-extend-btn:hover{text-decoration:underline}.poll-extend-popup{position:absolute;bottom:calc(100% + 6px);right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--glass-shadow);padding:4px;z-index:1010;display:flex;flex-direction:column;min-width:120px}.poll-extend-item{text-align:left;padding:7px 10px;border:none;background:none;color:var(--text-primary);font-size:.8rem;border-radius:6px;cursor:pointer;white-space:nowrap}.poll-extend-item:hover{background:var(--bg-card-hover)}.poll-option-meta{font-size:.72rem;color:var(--text-secondary);white-space:nowrap}.poll-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.poll-footer-meta{font-size:.7rem;color:var(--text-muted)}.poll-close-btn{display:flex;align-items:center;gap:3px;border:none;background:none;color:var(--error);font-size:.7rem;cursor:pointer;padding:2px 4px}.message-row.self .file-icon-box{background:#fff3;color:#fff}.message-row.self .file-name-text{color:#fff}.message-row.self .file-meta-text{color:#fffc}.message-caption{margin-top:6px;font-size:.88rem;line-height:1.4;word-break:break-word;overflow-wrap:anywhere;white-space:pre-wrap}.chat-input-bar{padding:16px 24px;border-top:1px solid var(--border-color);background:var(--header-bg)}.chat-input-bar-inner{display:flex;align-items:center;gap:12px;max-width:900px;width:100%;margin:0 auto}.chat-input-field{flex:1;background:var(--bg-input);border:1px solid var(--border-color);border-radius:24px;padding:12px 20px;color:var(--text-primary);font-size:.95rem;transition:var(--transition-smooth)}.chat-input-field:focus{outline:none;border-color:var(--border-focus)}.icon-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--border-color);background:#ffffff0a;color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-smooth)}.icon-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.icon-btn.primary{background:var(--primary-gradient);border:none;color:#fff;box-shadow:var(--glow-shadow)}.icon-btn.primary:hover{filter:brightness(1.1)}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center}.pinned-wrap{position:relative;border-bottom:1px solid var(--border-color)}.pinned-bar{display:flex;align-items:center;gap:8px;width:100%;padding:8px 16px;background:var(--bg-input);border:none;border-left:3px solid var(--primary);color:var(--text-primary);cursor:pointer;font-size:.82rem;text-align:left}.pinned-bar:hover{background:var(--bg-card-hover)}.pinned-bar>svg:first-child{color:var(--primary);flex-shrink:0}.pinned-bar-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.pinned-bar-count{background:var(--primary);color:#fff;font-size:.68rem;font-weight:700;border-radius:999px;padding:1px 7px;flex-shrink:0}.pinned-list-panel{position:absolute;top:100%;left:0;right:0;z-index:20;background:var(--bg-card);border:1px solid var(--border-color);border-radius:0 0 12px 12px;box-shadow:var(--glass-shadow);max-height:320px;overflow-y:auto}.pinned-list-header{padding:10px 16px;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-color)}.pinned-list-item{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border-color)}.pinned-list-item:last-child{border-bottom:none}.pinned-list-body{flex:1;min-width:0;cursor:pointer}.pinned-list-sender{font-size:.78rem;font-weight:600;color:var(--text-primary)}.pinned-list-preview{font-size:.78rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.pinned-list-unpin{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;flex-shrink:0}.pinned-list-unpin:hover{color:var(--error)}.msg-jump-flash{animation:msgJumpFlash 1.6s ease;border-radius:10px}@keyframes msgJumpFlash{0%,to{box-shadow:0 0 #6d5ae000}25%{box-shadow:0 0 0 3px #6d5ae080}}.events-page{height:100%;overflow-y:auto;padding:24px}.events-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.events-page-header h2{display:flex;align-items:center;gap:8px;font-size:1.2rem;margin:0}.events-count{font-size:.8rem;color:var(--text-secondary)}.events-empty{color:var(--text-secondary);font-size:.9rem;max-width:480px}.events-section{margin-bottom:26px}.events-section-title{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 12px}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.events-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;padding:14px}.events-card.cancelled{opacity:.75}.events-card-top{display:flex;gap:10px;align-items:flex-start;margin-bottom:8px}.events-card-name{font-weight:700;font-size:.95rem;line-height:1.2}.events-card-when{font-size:.8rem;color:var(--text-secondary);margin-top:2px}.events-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}.events-chat-link{display:inline-flex;align-items:center;gap:5px;background:var(--file-card-bg);border:1px solid var(--border-color);border-radius:999px;padding:3px 10px;font-size:.72rem;color:var(--text-secondary);cursor:pointer;max-width:100%}.events-chat-link:hover{color:var(--text-primary);background:var(--bg-card-hover)}.events-creator-badge{font-size:.68rem;color:var(--text-muted)}.events-card-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border-color);padding-top:8px;margin-top:8px}.ext-badge{display:inline-flex;align-items:center;font-size:.7rem;font-weight:700;letter-spacing:.2px;color:#fff;background:var(--primary-gradient);padding:2px 9px;border-radius:999px;white-space:nowrap;box-shadow:0 1px 4px #6d5ae059}.download-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 16px;background:var(--bg-app, #0f1020)}.download-card{width:100%;max-width:520px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:18px;padding:28px;box-shadow:var(--glass-shadow)}.download-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-secondary);font-size:.82rem;cursor:pointer;padding:0;margin-bottom:18px}.download-back:hover{color:var(--text-primary)}.download-hero{text-align:center;margin-bottom:24px}.download-logo{height:40px;border-radius:8px;object-fit:contain;margin-bottom:12px}.download-hero h1{font-size:1.35rem;margin:0 0 8px}.download-tagline{font-size:.85rem;color:var(--text-secondary);margin:0 auto;max-width:400px;line-height:1.5}.download-version{display:inline-block;margin-top:12px;font-size:.72rem;color:var(--text-muted);background:var(--file-card-bg);padding:3px 10px;border-radius:999px}.download-options{display:flex;flex-direction:column;gap:12px}.download-btn{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--border-color);border-radius:12px;background:var(--file-card-bg);color:var(--text-primary);text-decoration:none;transition:var(--transition-smooth)}.download-btn:hover{background:var(--bg-card-hover)}.download-btn.primary{background:var(--primary-gradient);color:#fff;border-color:transparent}.download-btn.primary .download-btn-sub{color:#ffffffd9}.download-btn.disabled{opacity:.5;pointer-events:none}.download-btn-icon{display:flex;flex-shrink:0}.download-btn-body{display:flex;flex-direction:column;flex:1;min-width:0}.download-btn-label{font-size:.92rem;font-weight:600}.download-btn-sub{font-size:.74rem;color:var(--text-secondary);margin-top:2px}.download-btn-arrow{flex-shrink:0;opacity:.8}.download-alt-arch{text-align:center}.download-alt{font-size:.78rem;color:var(--primary);text-decoration:none}.download-alt:hover{text-decoration:underline}.download-alt.disabled{opacity:.5;pointer-events:none}.download-note{text-align:center;font-size:.8rem;color:var(--text-secondary);margin:16px 0 0}.download-features{list-style:none;padding:20px 0 0;margin:20px 0 0;border-top:1px solid var(--border-color);display:grid;grid-template-columns:1fr 1fr;gap:10px}.download-features li{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-secondary)}.download-features svg{color:var(--success, #22c55e);flex-shrink:0}@media (max-width: 480px){.download-features{grid-template-columns:1fr}}.modal-content.settings-modal{max-width:940px}.settings-body{display:flex;gap:20px;min-height:440px}.settings-nav{display:flex;flex-direction:column;gap:4px;width:190px;flex-shrink:0;border-right:1px solid var(--border-color);padding-right:12px}.settings-nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:.85rem;font-weight:500;text-align:left;cursor:pointer;transition:var(--transition-smooth)}.settings-nav-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.settings-nav-item.active{background:var(--primary-gradient);color:#fff}.settings-panel{flex:1;min-width:0;max-height:74vh;overflow-y:auto;overflow-x:hidden;padding-right:6px}.notifications-columns{column-count:2;column-gap:28px}.notifications-columns>*{break-inside:avoid}.notifications-columns>*:first-child{margin-top:0}@media (max-width: 760px){.notifications-columns{column-count:1}}.settings-section-title{display:flex;align-items:center;gap:6px;font-size:.95rem;margin:0 0 16px}@media (max-width: 600px){.settings-body{flex-direction:column;min-height:0}.settings-nav{flex-direction:row;flex-wrap:wrap;width:100%;border-right:none;border-bottom:1px solid var(--border-color);padding-right:0;padding-bottom:12px}.settings-nav-item{width:auto}}.avatar-crop-overlay{z-index:1200}.avatar-crop-modal{max-width:380px}.avatar-crop-viewport{position:relative;width:300px;height:300px;margin:4px auto 16px;border-radius:12px;overflow:hidden;background:#000;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.avatar-crop-viewport:active{cursor:grabbing}.avatar-crop-canvas{display:block;width:300px;height:300px}.avatar-crop-circle{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:0 0 0 2000px #00000080;border:2px solid rgba(255,255,255,.85);pointer-events:none}.avatar-crop-zoom{display:flex;align-items:center;gap:10px;justify-content:center}.avatar-crop-zoom input[type=range]{flex:1;max-width:160px;accent-color:var(--primary);cursor:pointer}.avatar-crop-zoom .icon-btn{width:36px;height:36px}.avatar-crop-hint{text-align:center;font-size:.72rem;color:var(--text-secondary);margin:10px 0 0}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;width:100%;max-width:500px;padding:30px;box-shadow:var(--glass-shadow);position:relative;animation:modal-enter .3s cubic-bezier(.175,.885,.32,1.275);max-height:90vh;overflow-y:auto}@keyframes modal-enter{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.modal-title{font-size:1.4rem;margin-bottom:20px;font-family:var(--font-heading)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.incoming-call-modal{max-width:340px;text-align:center;padding:40px 30px}.incoming-call-avatar{width:84px;height:84px;border-radius:50%;background:var(--primary-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;font-family:var(--font-heading);margin:0 auto;animation:incoming-call-pulse 1.5s ease-in-out infinite}@keyframes incoming-call-pulse{0%,to{box-shadow:0 0 #646cc466}50%{box-shadow:0 0 0 16px #646cc400}}.incoming-call-actions{display:flex;justify-content:center;gap:24px;margin-top:28px}.call-action-btn{width:56px;height:56px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth);color:#fff}.call-action-btn.accept{background:var(--success)}.call-action-btn.decline{background:var(--error)}.call-action-btn.neutral{background:#ffffff26}.call-action-btn.neutral:hover{background:#ffffff40}.call-action-btn.muted{background:var(--warning);color:#1a1a1a}.call-action-btn:hover{filter:brightness(1.1)}.active-call-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:linear-gradient(160deg,#0b111e,#16193b);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;overflow:hidden}.active-call-overlay.video-mode{justify-content:flex-end;padding-bottom:40px;background:#0b0d14}.remote-call-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;background:#0b0d14}.local-call-video-pip{position:absolute;top:20px;right:20px;width:150px;height:112px;object-fit:cover;border-radius:12px;border:2px solid rgba(255,255,255,.25);box-shadow:0 8px 24px #0006;transform:scaleX(-1);z-index:2}.active-call-avatar{width:120px;height:120px;border-radius:50%;background:var(--primary-gradient);display:flex;align-items:center;justify-content:center;font-size:2.4rem;font-weight:700;font-family:var(--font-heading);color:#fff}.active-call-avatar.video-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1}.active-call-info{position:relative;z-index:2;margin-bottom:8px}.active-call-info p{color:#ffffffb3;margin-top:8px;font-size:.95rem}.active-call-actions{position:relative;z-index:2;display:flex;gap:28px;margin-top:40px}.prompt-option-card{border:1px solid var(--border-color);border-radius:12px;padding:16px;margin-bottom:12px;cursor:pointer;transition:var(--transition-smooth);display:flex;align-items:flex-start;gap:12px}.prompt-option-card:hover{background:var(--bg-card-hover);border-color:var(--border-color)}.prompt-option-card.active{background:#6366f11a;border-color:var(--primary)}.prompt-option-title{font-weight:600;font-size:.95rem;margin-bottom:4px}.prompt-option-desc{font-size:.8rem;color:var(--text-secondary)}.dashboard-container{flex:1;overflow-y:auto;padding:40px;background:var(--bg-app)}.dashboard-title-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.dashboard-tabs{display:flex;gap:16px;border-bottom:1px solid var(--border-color);margin-bottom:30px}.db-tab{background:transparent;border:none;color:var(--text-secondary);padding:12px 8px;font-size:.95rem;font-weight:600;cursor:pointer;position:relative;transition:var(--transition-smooth)}.db-tab.active{color:#fff}.db-tab.active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--primary)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:40px}.metric-card{padding:24px;display:flex;align-items:center;gap:20px}.metric-icon-box{width:52px;height:52px;border-radius:12px;background:#6366f11f;color:var(--primary);display:flex;align-items:center;justify-content:center}.metric-info{display:flex;flex-direction:column}.metric-value{font-size:1.8rem;font-weight:700;font-family:var(--font-heading);line-height:1.1}.metric-label{font-size:.85rem;color:var(--text-secondary);margin-top:4px}.files-grid-container{display:flex;flex-direction:column;gap:16px}.search-bar-row{display:flex;gap:16px;align-items:center}.search-bar-row input{flex:1}.data-table{width:100%;border-collapse:collapse;text-align:left}.data-table th,.data-table td{padding:9px 16px;border-bottom:1px solid var(--border-light);font-size:.9rem}.truncate-cell{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table th{font-weight:600;color:var(--text-secondary);background:var(--table-header-bg);font-family:var(--font-heading)}.data-table tbody tr:hover{background:var(--bg-card-hover)}.group-management-layout{display:grid;grid-template-columns:280px 1fr;gap:30px;align-items:start}.groups-list-panel{display:flex;flex-direction:column;gap:10px}.group-list-item{padding:14px 18px;border-radius:10px;border:1px solid var(--border-color);cursor:pointer;transition:var(--transition-smooth)}.group-list-item:hover{background:var(--bg-card-hover)}.group-list-item.active{background:#6366f114;border-color:var(--primary)}.group-list-item.active{border-color:var(--primary);box-shadow:0 0 10px #6366f11a}.group-detail-panel{padding:30px}.group-detail-header{border-bottom:1px solid var(--border-color);padding-bottom:16px;margin-bottom:24px}.group-section{margin-bottom:30px}.group-section-title{font-size:1.1rem;margin-bottom:16px;color:var(--text-primary)}.toggle-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--border-light)}.toggle-label-group{display:flex;flex-direction:column;gap:2px}.toggle-desc{font-size:.78rem;color:var(--text-secondary)}.switch{position:relative;display:inline-block;width:48px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--slider-bg);transition:.4s;border-radius:34px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background:var(--primary-gradient)}input:checked+.slider:before{transform:translate(24px)}.log-row{font-family:monospace;font-size:.82rem;border-bottom:1px solid var(--border-light);padding:12px}.log-time{color:var(--text-muted);margin-right:16px}.log-action{color:var(--primary);font-weight:600;margin-right:16px}.log-details{color:var(--text-primary)}.log-error-stack-btn{color:var(--error);cursor:pointer;font-weight:600;margin-left:8px}.log-error-stack-btn:hover{text-decoration:underline}pre.stack-trace-view{background:#0000004d;padding:16px;border-radius:8px;border:1px solid var(--border-color);font-size:.8rem;color:#fb7185;overflow-x:auto;white-space:pre-wrap;max-height:240px}.user-avatar-wrapper{position:relative;display:inline-block}.status-badge-container{position:absolute;bottom:-2px;right:-2px;background:var(--bg-card);border-radius:50%;padding:1.5px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 4px #00000040;line-height:0;z-index:2}.user-profile-clickable{display:flex;align-items:center;gap:12px;flex:1;cursor:pointer;padding:4px;border-radius:10px;transition:var(--transition-smooth)}.user-profile-clickable:hover{background:var(--bg-card-hover)}.user-profile-actions{display:flex;gap:8px}.profile-menu-popover{position:absolute;top:80px;left:20px;width:300px;padding:20px;z-index:100;background:var(--glass-bg);border:1px solid var(--border-color);box-shadow:var(--glass-shadow);display:flex;flex-direction:column;gap:16px;border-radius:12px}.profile-menu-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:12px}.profile-menu-title{font-weight:700;font-size:.95rem;color:var(--text-primary)}.profile-menu-signout{font-size:.85rem;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth)}.profile-menu-signout:hover{color:var(--primary);text-decoration:underline}.profile-menu-user-details{display:flex;gap:14px;align-items:flex-start}.profile-menu-avatar-wrapper{position:relative}.profile-menu-avatar{width:48px;height:48px;border-radius:12px;background:var(--primary-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem}.profile-menu-user-info{display:flex;flex-direction:column;gap:2px}.profile-menu-fullname{font-weight:700;font-size:.95rem;color:var(--text-primary)}.profile-menu-email{font-size:.8rem;color:var(--text-secondary)}.profile-menu-account-link{font-size:.78rem;color:var(--text-muted);cursor:pointer;margin-top:4px;transition:var(--transition-smooth)}.profile-menu-account-link:hover{color:var(--primary)}.profile-menu-status-selector{border-top:1px solid var(--border-color);padding-top:16px;display:flex;flex-direction:column;position:relative}.profile-menu-status-current{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;background:var(--bg-input);transition:var(--transition-smooth)}.profile-menu-status-current:hover{background:var(--bg-card-hover)}.status-text{font-size:.88rem;font-weight:500;flex:1;color:var(--text-primary)}.arrow-icon{font-size:.7rem;color:var(--text-muted);transform:rotate(90deg)}.profile-menu-status-list{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #00000040;position:absolute;top:52px;left:0;width:100%;z-index:120;overflow:hidden;padding:4px 0}.status-option-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:var(--transition-smooth)}.status-option-item:hover{background:var(--bg-card-hover)}.status-option-item.selected{background:#6366f114}.status-option-text{font-size:.85rem;color:var(--text-primary);font-weight:500}.status-option-divider{height:1px;background:var(--border-color);margin:4px 0}.status-option-item.action{color:var(--text-secondary)}.status-option-item.action:hover{color:var(--primary)}.status-action-icon{font-size:.95rem;width:12px;text-align:center}.app-header{height:52px;background:var(--header-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 20px;z-index:10;-webkit-user-select:none;user-select:none}.app-logo{display:flex;align-items:center;gap:10px}.app-title{font-family:var(--font-heading);font-weight:700;font-size:1.15rem;letter-spacing:-.01em;color:var(--primary)}.app-header-right{display:flex;align-items:center;gap:16px;position:relative}.header-user-profile{display:flex;align-items:center;gap:10px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:var(--transition-smooth)}.header-user-profile:hover{background:var(--bg-card-hover)}.header-user-info{display:flex;flex-direction:column;line-height:1.2}.header-user-name{font-size:.85rem;font-weight:600;color:var(--text-primary);max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-user-role{font-size:.7rem;color:var(--primary);font-weight:600}.logout-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;width:auto;height:34px;font-size:.85rem}.logout-text{font-weight:500}.header-status-dropdown{position:absolute;top:44px;right:110px;width:170px;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--glass-shadow);z-index:120;overflow:hidden;padding:4px 0}.header-status-dropdown.editing{width:280px}.status-message-entry .status-option-text{max-width:108px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-message-clear-btn{margin-left:auto;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:3px;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.status-message-clear-btn:hover{background:var(--bg-card-hover);color:var(--error)}.status-message-editor{padding:10px 14px 14px;display:flex;flex-direction:column;gap:8px}.status-message-editor-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.status-message-back-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center}.status-message-back-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.status-message-editor-title{font-size:.85rem;font-weight:600;color:var(--text-primary)}.status-message-editor-subtitle{font-size:.72rem;color:var(--text-muted)}.status-message-textarea{width:100%;min-height:70px;resize:none;background:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;padding:8px 10px;font-size:.82rem;color:var(--text-primary);font-family:inherit}.status-message-char-count{align-self:flex-end;font-size:.68rem;color:var(--text-muted);margin-top:-4px}.status-message-duration-label{font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-top:4px}.status-message-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.app-main-layout{display:flex;flex:1;height:calc(100vh - 52px);overflow:hidden}.sidebar-header-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px 4px}.sidebar-title{font-size:1.1rem;font-weight:700;font-family:var(--font-heading)}.sidebar-header-actions{display:flex;gap:8px}.sidebar-icon-btn{cursor:pointer;color:var(--text-primary)!important;opacity:.95!important;padding:6px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:var(--transition-smooth);stroke-width:2.5px!important}.sidebar-icon-btn:hover{background:var(--border-color)!important;color:var(--text-primary)!important;opacity:1!important}.compact-input{height:32px;border-radius:6px}.filter-pills-row{display:flex;gap:6px;overflow-x:auto;padding:8px 16px;scrollbar-width:none}.filter-pills-row::-webkit-scrollbar{display:none}.filter-pill-btn{background:var(--bg-input);border:1px solid var(--border-color);border-radius:99px;padding:4px 12px;font-size:.72rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);white-space:nowrap}.filter-pill-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.filter-pill-btn.active{background:#6366f126;border-color:var(--primary);color:var(--primary)}.filter-pill-count{margin-left:5px;font-size:.66rem;font-weight:700;background:#7f7f7f38;border-radius:99px;padding:0 6px}.filter-pill-btn.active .filter-pill-count{background:var(--primary);color:#fff}.sidebar-section-header{display:flex;align-items:center;gap:6px;padding:8px 12px 4px;cursor:pointer;-webkit-user-select:none;user-select:none;margin-top:6px}.chevron-arrow{font-size:.55rem;color:var(--text-muted);transition:transform .2s ease;display:inline-block}.chevron-arrow.expanded{transform:rotate(90deg)}.section-title{font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.empty-section-msg{padding:8px 24px;font-size:.72rem;color:var(--text-muted);font-style:italic}.chat-item{display:flex;align-items:center;cursor:pointer;transition:var(--transition-smooth)}.chat-item:hover{background:var(--bg-card-hover)}.chat-item.active{background:#646cc414!important;border-left:3px solid var(--primary)!important}.chat-item-avatar{border-radius:50%;font-weight:600;display:flex;align-items:center;justify-content:center;background:var(--primary-gradient);color:#fff}.chat-item.density-comfortable{padding:10px 14px;height:58px;gap:12px;border-radius:10px;margin:0 4px}.chat-item.density-comfortable .chat-item-avatar{width:38px;height:38px;font-size:.9rem}.chat-item.density-compact{padding:6px 12px;height:48px;gap:10px;border-radius:8px;margin:0 4px}.chat-item.density-compact .chat-item-avatar{width:32px;height:32px;font-size:.82rem}.chat-item.density-minimal{padding:4px 10px;height:36px;gap:8px;border-radius:6px;margin:0 4px}.chat-item.density-minimal .chat-item-avatar{width:24px;height:24px;font-size:.72rem}.chat-item.density-minimal .chat-item-msg-row{display:none!important}.chat-item.density-minimal .chat-item-name-row{margin-bottom:0}.chat-item-name-row,.chat-item-msg-row{display:flex;justify-content:space-between;align-items:center;width:100%}.chat-item-name-row{margin-bottom:1px}.chat-item.unread .chat-item-name{font-weight:700;color:var(--text-primary)}.chat-item.unread .chat-item-lastmsg{color:var(--text-primary);font-weight:600}.unread-badge-pill{background-color:var(--error);color:#fff;border-radius:99px;padding:0 5px;font-size:.65rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;box-shadow:0 1px 3px #00000026}.chat-item-actions{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:none;z-index:5}.chat-item:hover .chat-item-actions{display:block}.chat-item:hover .chat-item-time{display:none}.chat-action-ellipsis-btn{background:var(--bg-card);border:1px solid var(--border-color);font-size:.7rem;cursor:pointer;color:var(--text-secondary);padding:2px 6px;border-radius:4px;box-shadow:0 1px 3px #00000026;transition:var(--transition-smooth)}.chat-action-ellipsis-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--text-muted)}.chat-item-context-menu{position:absolute;right:0;top:20px;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:6px;z-index:500;box-shadow:var(--glass-shadow);padding:4px 0;width:180px}.context-menu-item{padding:6px 12px;font-size:.76rem;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;gap:8px;transition:var(--transition-smooth)}.context-menu-item:hover{background:var(--bg-card-hover)}.compact-list{padding:6px 4px}.section-list{display:flex;flex-direction:column;gap:3px}.chat-messages-container.density-comfortable .chat-messages-inner{padding:0 24px;gap:20px}.chat-messages-container.density-comfortable .message-bubble{padding:14px 20px;font-size:1rem;line-height:1.5;border-radius:18px}.chat-messages-container.density-comfortable .message-row.self .message-bubble{border-bottom-right-radius:4px}.chat-messages-container.density-comfortable .message-row.other .message-bubble{border-bottom-left-radius:4px}.chat-messages-container.density-comfortable .message-sender{font-size:.8rem;margin-bottom:6px}.chat-messages-container.density-comfortable .message-time{font-size:.75rem;margin-top:6px}.chat-messages-container.density-comfortable .file-message-card{padding:12px 16px;gap:14px}.chat-messages-container.density-comfortable .file-icon-box{width:40px;height:40px}.chat-messages-container.density-comfortable .file-icon-box svg{width:20px;height:20px}.chat-messages-container.density-comfortable .file-name-text{font-size:.9rem}.chat-messages-container.density-compact .chat-messages-inner{padding:0 20px;gap:14px}.chat-messages-container.density-compact .message-bubble{padding:10px 15px;font-size:.88rem;line-height:1.45;border-radius:14px}.chat-messages-container.density-compact .message-row.self .message-bubble{border-bottom-right-radius:4px}.chat-messages-container.density-compact .message-row.other .message-bubble{border-bottom-left-radius:4px}.chat-messages-container.density-compact .message-sender{font-size:.72rem;margin-bottom:4px}.chat-messages-container.density-compact .message-time{font-size:.68rem;margin-top:4px}.chat-messages-container.density-compact .file-message-card{padding:8px 12px;gap:10px}.chat-messages-container.density-compact .file-icon-box{width:32px;height:32px}.chat-messages-container.density-compact .file-icon-box svg{width:16px;height:16px}.chat-messages-container.density-compact .file-name-text{font-size:.8rem}.chat-messages-container.density-minimal .chat-messages-inner{padding:0 12px;gap:8px}.chat-messages-container.density-minimal .message-bubble{padding:6px 12px;font-size:.8rem;line-height:1.35;border-radius:10px}.chat-messages-container.density-minimal .message-row.self .message-bubble{border-bottom-right-radius:2px}.chat-messages-container.density-minimal .message-row.other .message-bubble{border-bottom-left-radius:2px}.chat-messages-container.density-minimal .message-sender{font-size:.68rem;margin-bottom:2px}.chat-messages-container.density-minimal .message-time{font-size:.62rem;margin-top:2px}.chat-messages-container.density-minimal .file-message-card{padding:5px 8px;gap:6px;margin:2px 0}.chat-messages-container.density-minimal .file-icon-box{width:26px;height:26px}.chat-messages-container.density-minimal .file-icon-box svg{width:14px;height:14px}.chat-messages-container.density-minimal .file-name-text{font-size:.75rem}.chat-messages-container.density-minimal .file-meta-text{font-size:.65rem}.status-message-hint-bar{display:flex;align-items:center;gap:8px;padding:7px 16px;background:var(--bg-input);border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.8rem}.status-message-hint-bar svg{flex-shrink:0;opacity:.8}.status-message-hint-bar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-input-column{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.reply-preview-inline{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--bg-input);border:1px solid var(--border-color);border-left:3px solid var(--primary);border-radius:12px;padding:6px 12px}.reply-preview-content{display:flex;flex-direction:column;overflow:hidden}.reply-preview-label{font-size:.72rem;color:var(--primary)}.reply-preview-text{font-size:.8rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.reply-preview-close{background:none;border:none;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;padding:4px}.reply-preview-close:hover{color:var(--text-primary)}.quoted-message-bubble{border-left:3px solid var(--primary);background:#00000026;padding:6px 10px;border-radius:4px;margin-bottom:8px;font-size:.76rem;cursor:pointer;transition:background var(--transition-smooth)}.light-theme .quoted-message-bubble{background:#0000000d}.quoted-message-bubble:hover{background:#00000040}.light-theme .quoted-message-bubble:hover{background:#00000014}.quoted-sender{font-weight:600;color:var(--primary);display:block;font-size:.72rem;margin-bottom:2px}.quoted-content{color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-row.self .quoted-content{color:#fffc}.message-bubble{position:relative}.message-actions-overlay{position:absolute;top:-24px;display:none;flex-direction:row;gap:4px;z-index:100;background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;padding:3px 6px;box-shadow:0 4px 12px #00000040;white-space:nowrap;width:max-content}.message-row.self .message-actions-overlay{right:12px}.message-row.other .message-actions-overlay{left:12px}.message-bubble:hover .message-actions-overlay{display:flex}.msg-action-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.msg-action-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.delete-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1009}.delete-menu-popup{position:absolute;top:calc(100% + 4px);right:0;min-width:170px;display:flex;flex-direction:column;gap:2px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1010;padding:4px}.delete-menu-item{background:none;border:none;text-align:left;padding:8px 12px;border-radius:6px;font-size:.82rem;color:var(--text-primary);cursor:pointer}.delete-menu-item:hover{background:var(--bg-card-hover)}.delete-menu-item.danger{color:var(--error)}.message-edit-box{display:flex;flex-direction:column;gap:8px;width:260px;max-width:100%}.message-edit-textarea{box-sizing:border-box;width:100%;resize:none;border-radius:10px;padding:8px 10px;font-family:inherit;font-size:.88rem;line-height:1.4;border:1px solid rgba(255,255,255,.4);background:#ffffff26;color:inherit}.message-edit-textarea:focus{outline:none;border-color:#ffffffb3}.message-row.other .message-edit-textarea{border-color:var(--border-color);background:var(--bg-input);color:var(--text-primary)}.message-row.other .message-edit-textarea:focus{border-color:var(--border-focus)}.message-edit-actions{display:flex;gap:6px;justify-content:flex-end}.message-edit-btn{width:26px;height:26px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:#ffffff1a;color:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.message-edit-btn:hover{background:#ffffff40}.message-edit-btn.primary{background:#fff;color:var(--primary);border-color:#fff}.message-edit-btn.primary:hover{filter:brightness(.95)}.message-row.other .message-edit-btn{border-color:var(--border-color);background:var(--bg-card);color:var(--text-secondary)}.message-row.other .message-edit-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.message-row.other .message-edit-btn.primary{background:var(--primary-gradient);color:#fff;border-color:transparent}@keyframes highlight-pulse-anim{0%{background-color:#646cc480}to{background-color:transparent}}.highlight-pulse .message-bubble{animation:highlight-pulse-anim 1.5s ease-out}.chat-input-field.multiline-composer{resize:none;height:auto;min-height:44px;max-height:120px;border-radius:20px;padding:10px 20px;line-height:1.4;overflow-y:auto;font-family:inherit}.emoji-picker-backdrop,.attach-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1009}.attach-menu-popup{position:absolute;bottom:calc(100% + 8px);left:0;min-width:216px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow);padding:6px;z-index:1010;display:flex;flex-direction:column;gap:2px}.attach-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:9px 10px;border:none;background:none;color:var(--text-primary);font-size:.85rem;text-align:left;border-radius:8px;cursor:pointer;transition:var(--transition-smooth)}.attach-menu-item:hover{background:var(--bg-card-hover)}.attach-menu-icon{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.emoji-picker-popup{position:absolute;bottom:calc(100% + 8px);left:0;width:320px;display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1010;animation:modal-enter .2s cubic-bezier(.175,.885,.32,1.275);overflow:hidden}.emoji-picker-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border-light);color:var(--text-muted)}.emoji-picker-search input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:.85rem}.emoji-picker-category-label{padding:8px 12px 4px;font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.emoji-picker-grid{max-height:220px;overflow-y:auto;display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:4px 10px 10px}.emoji-picker-empty{grid-column:1 / -1;text-align:center;padding:20px 0;font-size:.8rem;color:var(--text-muted)}.emoji-picker-item{background:none;border:none;cursor:pointer;font-size:1.2rem;line-height:1;padding:6px;border-radius:6px;transition:var(--transition-smooth)}.emoji-picker-item:hover{background:var(--bg-card-hover)}.emoji-picker-tabs{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-top:1px solid var(--border-light);background:var(--table-header-bg)}.emoji-picker-tab{background:none;border:none;cursor:pointer;font-size:1rem;padding:6px;border-radius:6px;opacity:.55;transition:var(--transition-smooth)}.emoji-picker-tab:hover{opacity:.85;background:var(--bg-card-hover)}.emoji-picker-tab.active{opacity:1;background:#646cc426}.mentions-suggestions-container{position:relative;width:100%}.mentions-suggestions-dropdown{position:absolute;bottom:100%;left:0;width:100%;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1010;margin-bottom:8px;max-height:220px;overflow-y:auto;animation:modal-enter .2s cubic-bezier(.175,.885,.32,1.275)}.mentions-header{padding:8px 14px;font-size:.72rem;font-weight:600;color:var(--text-muted);border-bottom:1px solid var(--border-light);letter-spacing:.5px;text-transform:uppercase}.mention-suggestion-item{display:flex;align-items:center;gap:10px;padding:8px 14px;cursor:pointer;transition:var(--transition-smooth);font-size:.85rem}.mention-suggestion-item:hover,.mention-suggestion-item.active{background:#6366f11a;color:var(--primary)}.mention-avatar{width:24px;height:24px;border-radius:50%;background:var(--primary-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.mention-avatar.everyone{background:#10b98133;color:var(--success);border:1px solid rgba(16,185,129,.3)}.mention-name{font-weight:600;flex:1}.mention-subtext{font-size:.75rem;color:var(--text-secondary)}.mention-highlight{background:#10b9811f;color:#10b981;font-weight:600;padding:1px 6px;border-radius:4px;border:1px solid rgba(16,185,129,.25);display:inline-block;margin:0 2px}.message-row.self .mention-highlight{background:#ffffff40;color:#fff;border:1px solid rgba(255,255,255,.4);font-weight:700}.mention-highlight-me{background:#f59e0b2e;color:#f59e0b;border-color:#f59e0b73}.message-row.self .mention-highlight-me{background:#f59e0b59;color:#fff7ed;border-color:#f59e0b99}.chat-info-drawer{width:360px;border-left:1px solid var(--border-color);background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;height:100%;overflow:hidden;animation:slide-in-drawer .25s ease-out}@keyframes slide-in-drawer{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header{height:70px;border-bottom:1px solid var(--border-color);padding:0 24px;display:flex;align-items:center;justify-content:space-between;background:var(--header-bg)}.drawer-title{font-size:1.1rem;font-weight:600;font-family:var(--font-heading)}.drawer-close-btn{font-size:1.4rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.drawer-close-btn:hover{color:var(--text-primary)}.drawer-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:20px}.drawer-profile-section{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;border-bottom:1px solid var(--border-color);padding-bottom:24px}.drawer-avatar{width:80px;height:80px;border-radius:50%;background:var(--primary-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;font-family:var(--font-heading);box-shadow:0 8px 24px #6366f133}.drawer-name{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.drawer-status{font-size:.85rem;color:var(--success)}.storage-footprint-box{background:#ffffff08;border:1px solid var(--border-color);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:8px}.storage-labels{display:flex;justify-content:space-between;font-size:.78rem;color:var(--text-secondary)}.storage-progress-bar{height:8px;background:var(--slider-bg);border-radius:4px;overflow:hidden;width:100%}.storage-progress-fill{height:100%;background:var(--primary-gradient);border-radius:4px;transition:width .3s ease}.drawer-tabs{display:flex;background:var(--tabs-bg);border-radius:8px;padding:3px;gap:2px}.drawer-tab-btn{flex:1;background:transparent;border:none;padding:6px;border-radius:6px;color:var(--text-secondary);font-size:.78rem;font-weight:600;cursor:pointer;transition:var(--transition-smooth)}.drawer-tab-btn.active{background:var(--bg-card);color:var(--tab-active-text)}.drawer-files-list{display:flex;flex-direction:column;gap:10px}.drawer-file-card{display:flex;align-items:center;gap:12px;background:#ffffff05;border:1px solid var(--border-color);padding:10px;border-radius:8px;transition:var(--transition-smooth);position:relative}.drawer-file-card:hover{background:var(--bg-card-hover)}.drawer-file-icon{width:32px;height:32px;border-radius:6px;background:#6366f126;color:var(--primary);display:flex;align-items:center;justify-content:center}.drawer-file-info{flex:1;overflow:hidden}.drawer-file-name{font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.drawer-file-meta{font-size:.7rem;color:var(--text-secondary);margin-top:2px}.drawer-file-actions{display:flex;gap:4px}.drawer-action-icon-btn{width:28px;height:28px;border-radius:50%;background:#ffffff0d;border:1px solid var(--border-color);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-smooth)}.drawer-action-icon-btn:hover{background:#ffffff1a;color:var(--text-primary)}.drawer-action-icon-btn.delete-btn:hover{background:#ef444426;color:var(--error);border-color:#ef444433}@media (max-width: 768px){.hamburger-btn{display:inline-flex!important}.app-title,.header-user-info,.logout-text{display:none}.app-header{padding:0 10px}.app-header-right{gap:6px}.sidebar{position:fixed;top:52px;left:0;bottom:0;width:84vw;max-width:320px;z-index:200;transform:translate(-100%);transition:transform .25s ease;box-shadow:8px 0 24px #0006}.sidebar.mobile-open{transform:translate(0)}.mobile-sidebar-backdrop{position:fixed;top:52px;left:0;right:0;bottom:0;background:#00000080;z-index:150}.chat-info-drawer{position:fixed;top:52px;left:0;right:0;bottom:0;width:100%;z-index:180}.dashboard-container{padding:16px}.group-management-layout{grid-template-columns:1fr}.modal-overlay{padding:0 16px}.chat-header-name{max-width:45vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.glass-panel:has(.data-table){overflow-x:auto}
