.reaction-picker{background:var(--surface-1);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:0 4px 12px #0000004d;padding:5px}.reaction-picker-content{display:flex;flex-direction:column;gap:6px}.reaction-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:1px}.reaction-item{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:14px;padding:0;transition:background .15s ease}.reaction-item:hover{background:var(--surface-3)}.reaction-item.custom{padding:1px}.reaction-item.custom img{width:100%;height:100%;object-fit:contain}.reaction-picker-divider{height:1px;background:var(--border-color);margin:2px 0}.reaction-custom-header{display:flex;justify-content:space-between;align-items:center;padding:0 2px}.reaction-custom-header span{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px}.reaction-show-more,.reaction-back{background:none;border:none;color:var(--primary);cursor:pointer;font-size:10px;padding:1px 4px;border-radius:var(--radius-sm);transition:background .15s ease}.reaction-show-more:hover,.reaction-back:hover{background:var(--surface-2)}:root{--gray-1: #121110;--gray-2: #1a1918;--gray-3: #222120;--gray-4: #2c2a28;--gray-5: #3a3836;--gray-6: #4a4745;--gray-7: #5f5b59;--gray-8: #7a7572;--gray-9: #9e9995;--gray-10: #b5b0ac;--gray-11: #d4cfcb;--gray-12: #eeebe8;--accent: #c9956b;--accent-dim: rgba(201, 149, 107, .15);--accent-border: rgba(201, 149, 107, .3);--success: #7db88a;--warning: #d4a64e;--danger: #c47070;--info: #7a9ec4;--success-dim: rgba(125, 184, 138, .15);--warning-dim: rgba(212, 166, 78, .15);--danger-dim: rgba(196, 112, 112, .15);--info-dim: rgba(122, 158, 196, .15);--void: var(--gray-1);--nebula-deep: var(--gray-2);--nebula: var(--gray-3);--nebula-light: var(--gray-4);--cloud-dark: var(--gray-5);--cloud: var(--gray-6);--mist: var(--gray-7);--haze: var(--gray-8);--soft: var(--gray-9);--pearl: var(--gray-10);--snow: var(--gray-11);--white: var(--gray-12);--lavender: var(--accent);--lavender-soft: var(--accent-dim);--lavender-glow: var(--accent-border);--pink: var(--danger);--pink-soft: var(--danger-dim);--pink-glow: rgba(196, 112, 112, .25);--mint: var(--success);--mint-soft: var(--success-dim);--mint-glow: rgba(125, 184, 138, .3);--peach: var(--warning);--peach-soft: var(--warning-dim);--peach-glow: rgba(212, 166, 78, .3);--sky: var(--info);--sky-soft: var(--info-dim);--sky-glow: rgba(122, 158, 196, .25);--coral: var(--danger);--coral-soft: var(--danger-dim);--coral-glow: rgba(196, 112, 112, .3);--rose: var(--danger);--surface-1: var(--gray-3);--surface-2: var(--gray-4);--surface-3: var(--gray-5);--border-color: var(--gray-5);--text-primary: var(--gray-11);--text-secondary: var(--gray-8);--primary: var(--accent);--font-sans: "Geist", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "IBM Plex Mono", "Consolas", monospace;--space-2xs: .125rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: .75rem;--space-lg: 1rem;--space-xl: 1.25rem;--space-2xl: 1.75rem;--space-3xl: 2.5rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 10px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--ease-soft: cubic-bezier(.4, 0, .2, 1);--sidebar-width: 260px;--member-list-width: 240px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:var(--font-sans);font-weight:400;font-size:15px;background:var(--gray-2);color:var(--gray-10);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{scrollbar-width:auto;scrollbar-color:var(--gray-6) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--gray-6);border-radius:var(--radius-full)}*::-webkit-scrollbar-thumb:hover{background:var(--gray-7)}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:600;color:var(--gray-11);letter-spacing:-.01em}a{color:var(--accent);text-decoration:none;transition:color .2s var(--ease-soft)}a:hover{color:var(--gray-12)}button{font-family:var(--font-sans);font-size:.875rem;font-weight:500;cursor:pointer;border:none;padding:var(--space-sm) var(--space-xl);border-radius:var(--radius-md);background:var(--accent);color:var(--gray-1);transition:all .2s var(--ease-soft)}button:hover:not(:disabled){opacity:.9}button:active:not(:disabled){opacity:.85}button:disabled{opacity:.5;cursor:not-allowed}input,select{font-family:var(--font-sans);font-size:.9rem;border:1.5px solid var(--gray-5);background:var(--gray-2);color:var(--gray-10);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);outline:none;transition:all .2s var(--ease-soft)}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-border)}input::placeholder{color:var(--gray-7)}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%237a7572' d='M6 8L2 4h8z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .875rem center;padding-right:2.25rem}select option{background:var(--gray-3);color:var(--gray-10)}.app-root{height:100%;display:flex;flex-direction:column;animation:fadeIn .2s var(--ease-soft)}.app-content{flex:1;min-height:0;display:flex;flex-direction:column}.app-root--tauri{background:var(--gray-2)}.window-titlebar{height:32px;display:flex;align-items:stretch;border-bottom:1px solid var(--gray-5);background:linear-gradient(180deg,rgba(255,255,255,.03),transparent),var(--gray-3);-webkit-user-select:none;user-select:none}.window-titlebar-drag-region{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-sm);padding:0 var(--space-md)}.window-titlebar-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.window-titlebar-title{color:var(--gray-11);font-size:.76rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.window-titlebar-controls{display:flex;align-items:stretch}.window-titlebar-button{all:unset;width:40px;display:grid;place-items:center;color:var(--gray-9);cursor:pointer;transition:background-color .16s var(--ease-soft),color .16s var(--ease-soft)}.window-titlebar-button:hover{background:var(--gray-4);color:var(--gray-12)}.window-titlebar-button:active{background:var(--gray-5)}.window-titlebar-button:focus-visible{outline:2px solid var(--accent-border);outline-offset:-2px}.window-titlebar-button-close:hover{background:var(--danger);color:var(--gray-12)}.window-titlebar-icon{position:relative;width:10px;height:10px}.window-titlebar-icon-minimize:before{content:"";position:absolute;left:1px;right:1px;bottom:1px;border-bottom:1.5px solid currentColor}.window-titlebar-icon-maximize:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border:1.5px solid currentColor}.window-titlebar-icon-close:before,.window-titlebar-icon-close:after{content:"";position:absolute;left:4px;top:0;width:1.5px;height:10px;background:currentColor}.window-titlebar-icon-close:before{transform:rotate(45deg)}.window-titlebar-icon-close:after{transform:rotate(-45deg)}.chat-view{display:flex;height:100%;gap:var(--space-sm);padding:var(--space-sm);isolation:isolate}.main-content{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--gray-2);border:1px solid var(--gray-5);border-radius:var(--radius-xl);overflow:hidden;position:relative}.channel-list{width:var(--sidebar-width);background:var(--gray-4);border:1px solid var(--gray-5);border-radius:var(--radius-xl);padding:var(--space-xl);flex-shrink:0;display:flex;flex-direction:column;overflow-y:auto;position:relative}.channel-list h3{font-size:1.1rem;font-weight:700;color:var(--gray-11);margin-bottom:var(--space-xl);letter-spacing:-.02em}.channel-groups{display:flex;flex-direction:column;gap:var(--space-xl)}.channel-group{display:flex;flex-direction:column;gap:var(--space-sm)}.channel-group-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:0 var(--space-xs);margin-bottom:var(--space-xs)}.channel-group-heading{font-family:var(--font-mono);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-7)}.channel-group-add{width:1.5rem;height:1.5rem;padding:0;background:transparent;border:1.5px solid var(--gray-6);color:var(--gray-7);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);box-shadow:none;transition:all .2s var(--ease-soft)}.channel-group-add:hover:not(:disabled){color:var(--accent);border-color:var(--accent);background:var(--accent-dim);transform:none;box-shadow:none}.channel-group-add:disabled{opacity:.4}.channel-group-add-icon{width:.75rem;height:.75rem}.channel-group-empty{font-size:.8rem;color:var(--gray-7);font-style:italic;padding:var(--space-sm) var(--space-md)}.channel-items{list-style:none;display:flex;flex-direction:column;gap:var(--space-2xs)}.channel-row{display:flex;flex-direction:column;gap:var(--space-xs)}.channel-row-main{display:flex;align-items:center;gap:var(--space-xs)}.channel-item{flex:1;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);background:transparent;border:none;color:var(--gray-9);font-family:var(--font-sans);font-size:.9rem;font-weight:500;text-align:left;box-shadow:none;transition:all .2s var(--ease-soft)}.channel-item:hover{background:var(--accent-dim);color:var(--gray-11);transform:none}.channel-item.is-active{background:var(--accent-dim);color:var(--gray-11);border-left:2px solid var(--accent);padding-left:calc(var(--space-md) - 2px)}.channel-item.is-voice-connected{background:var(--success-dim);border-left:2px solid var(--success);padding-left:calc(var(--space-md) - 2px);color:var(--gray-11)}.channel-prefix{font-family:var(--font-mono);font-weight:500;color:var(--gray-8);font-size:1rem;opacity:.8}.channel-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-badge{min-width:1.25rem;height:1.25rem;border-radius:var(--radius-full);padding:0 var(--space-sm);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.65rem;font-weight:600;color:var(--gray-1);background:var(--warning)}.channel-badge.is-pulsing{animation:none}.channel-delete{width:1.5rem;height:1.5rem;padding:0;background:transparent;border:none;color:var(--gray-7);font-size:.85rem;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;opacity:0;box-shadow:none;transition:all .15s var(--ease-soft)}.channel-row-main:hover .channel-delete{opacity:1}.channel-delete:hover:not(:disabled){color:var(--danger);background:var(--danger-dim);transform:none}.channel-voice-members{list-style:none;margin-left:var(--space-2xl);display:flex;flex-direction:column;gap:var(--space-2xs);padding:var(--space-xs) 0}.channel-voice-member{display:flex;align-items:center;gap:var(--space-sm);position:relative;font-size:.8rem;color:var(--gray-9);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s var(--ease-soft),color .15s var(--ease-soft)}.channel-voice-member:hover{background:#ffffff0f;color:var(--gray-11)}.channel-voice-member-connected{font-size:.9rem;font-weight:600}.channel-voice-member-dot{width:6px;height:6px;border-radius:var(--radius-full);background:var(--gray-6);flex-shrink:0;transition:all .2s var(--ease-soft)}.channel-voice-member-dot.is-speaking{background:var(--success)}.channel-voice-member-avatar{--avatar-size: 18px;flex-shrink:0}.channel-voice-member-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-voice-live-badge{margin-left:auto;padding:.1rem .42rem;border-radius:var(--radius-full);border:1px solid rgba(196,112,112,.45);background:#c4707029;color:var(--danger);font-family:var(--font-mono);font-size:.62rem;font-weight:700;letter-spacing:.04em}.channel-stream-hover-popover{position:absolute;left:0;bottom:100%;width:100%;padding:var(--space-sm);padding-bottom:calc(var(--space-sm) + var(--space-2xs));margin-bottom:calc(-1 * var(--space-2xs));border-radius:var(--radius-md);border:1px solid var(--gray-5);background:#121110f5;box-shadow:var(--shadow-lg);z-index:9999;display:grid;gap:var(--space-xs)}.channel-stream-hover-title{margin:0;color:var(--gray-11);font-size:.8rem;font-weight:600}.channel-stream-hover-text{margin:0;color:var(--gray-7);font-size:.72rem}.channel-stream-watch-button{width:100%;margin-top:var(--space-2xs);padding:var(--space-xs) var(--space-sm);font-size:.75rem}@media(max-width:820px){.channel-stream-hover-popover{width:100%}}.channel-footer{margin-top:auto;position:sticky;bottom:calc(var(--space-xl) * -1);padding-top:var(--space-xl)}.channel-footer-banner{margin-bottom:var(--space-md);display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--danger-dim);border:1px solid rgba(196,112,112,.3);color:var(--danger);font-size:.8rem;font-weight:500;animation:slideUp .3s var(--ease-soft)}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.channel-footer-banner-dismiss{flex-shrink:0;padding:var(--space-xs) var(--space-md);font-size:.75rem;border-radius:var(--radius-full);background:#c4707033;color:var(--gray-11);border:none;box-shadow:none}.channel-footer-banner-dismiss:hover:not(:disabled){background:#c470704d;transform:none;box-shadow:none}.voice-dock{padding:var(--space-lg);background:var(--gray-4);border:1px solid var(--gray-5);border-radius:var(--radius-lg);animation:slideUp .3s var(--ease-soft)}.voice-dock-actions{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.voice-dock-icon{width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-full);background:var(--gray-5);border:none;color:var(--gray-10);box-shadow:none;transition:all .2s var(--ease-soft)}.voice-dock-icon svg{display:block}.voice-dock-icon:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.voice-dock-disconnect{background:var(--danger);color:var(--gray-1)}.voice-dock-disconnect:hover:not(:disabled){opacity:.9;transform:none}.voice-dock-toggle{background:var(--gray-5);color:var(--gray-9)}.voice-dock-toggle:hover:not(:disabled){background:var(--gray-6);color:var(--gray-11);transform:none}.voice-dock-camera,.voice-dock-screen{background:var(--gray-5)}.voice-dock-camera:hover:not(:disabled),.voice-dock-screen:hover:not(:disabled){background:var(--accent-dim);color:var(--accent)}.voice-dock-camera.is-active,.voice-dock-screen.is-active{background:var(--success);color:var(--gray-1)}.voice-dock-camera:disabled,.voice-dock-screen:disabled{opacity:.5}.voice-dock-channel{margin-top:var(--space-sm);font-family:var(--font-mono);font-size:.75rem;color:var(--gray-7)}.voice-dock-channel-alert{color:var(--danger)}.voice-dock-status{display:flex;align-items:center;gap:var(--space-xs);margin-top:var(--space-sm);font-family:var(--font-mono);font-size:.75rem;color:var(--gray-7)}.voice-dock-status-dot{width:6px;height:6px;border-radius:var(--radius-full);flex-shrink:0;transition:background .2s var(--ease-soft)}.voice-dock-status-good .voice-dock-status-dot{background:var(--success)}.voice-dock-status-good{color:var(--success)}.voice-dock-status-degraded .voice-dock-status-dot{background:var(--warning)}.voice-dock-status-degraded{color:var(--warning)}.voice-dock-status-failed .voice-dock-status-dot{background:var(--danger)}.voice-dock-status-failed{color:var(--danger)}.voice-dock-error{margin-top:var(--space-xs);font-size:.75rem;color:var(--danger)}.voice-dock-native-debug{margin-top:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);border:1px solid var(--info-dim);background:#7a9ec40d;font-family:var(--font-mono);font-size:.7rem}.voice-dock-native-debug-title{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--info);margin-bottom:var(--space-sm)}.voice-dock-screen-controls{display:inline-flex;align-items:center;gap:var(--space-xs)}.voice-dock-screen-mode{min-width:4rem;padding:var(--space-xs) var(--space-sm);font-size:.7rem;border-radius:var(--radius-full);background:var(--gray-5)}.user-dock{margin-top:var(--space-md);display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--nebula-light);border:1px solid var(--cloud-dark)}.user-dock-avatar{width:2.5rem;height:2.5rem;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--cloud-dark),var(--cloud));color:var(--soft);display:inline-flex;align-items:center;justify-content:center;overflow:hidden;font-family:var(--font-sans);font-size:1rem;font-weight:600;flex-shrink:0}.user-dock-avatar.is-placeholder{border:2px solid var(--accent)}.user-dock-avatar img{width:100%;height:100%;object-fit:cover}.user-dock-meta{min-width:0;flex:1}.user-dock-name{font-size:.9rem;font-weight:600;color:var(--snow);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-dock-subtitle{margin-top:2px;font-family:var(--font-mono);font-size:.7rem;color:var(--mint);display:flex;align-items:center;gap:var(--space-xs)}.user-dock-subtitle:before{content:"";width:6px;height:6px;border-radius:var(--radius-full);background:var(--success)}.user-dock-settings{position:relative;width:2rem;height:2rem;border-radius:var(--radius-full);padding:0;background:var(--cloud-dark);border:none;color:var(--soft);display:inline-flex;align-items:center;justify-content:center;box-shadow:none}.user-dock-settings-has-update:after{content:"";position:absolute;top:1px;right:1px;width:8px;height:8px;border-radius:var(--radius-full);background:var(--accent);box-shadow:0 0 0 2px #c9956b33}.user-dock-settings:hover:not(:disabled){background:var(--gray-6);color:var(--gray-11);transform:none;box-shadow:none}.invite-list{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-md)}.invite-create-options{display:flex;flex-direction:column;gap:var(--space-sm)}.invite-option-row{max-width:320px}.invite-card{padding:var(--space-md);border-radius:var(--radius-md);background:var(--nebula-light);border:1px solid var(--cloud-dark);display:flex;flex-direction:column;gap:var(--space-xs)}.invite-card.invite-revoked{opacity:.5}.invite-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.invite-code{font-family:var(--font-mono);font-size:.85rem;color:var(--accent);letter-spacing:.05em}.invite-card-meta{font-size:.75rem;color:var(--soft);display:flex;align-items:flex-start;flex-direction:column;gap:var(--space-sm)}.invite-badge-revoked{color:var(--rose);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.invite-copy-btn,.invite-revoke-btn{padding:2px var(--space-sm);font-size:.75rem;border-radius:var(--radius-sm);border:1px solid var(--cloud-dark);background:var(--cloud-dark);color:var(--soft);cursor:pointer;box-shadow:none}.invite-copy-btn:hover,.invite-revoke-btn:hover{background:var(--cloud);color:var(--snow);box-shadow:none}.invite-revoke-btn{color:var(--rose);align-self:flex-start}.message-area{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.message-area.is-stream-focused{background:#0000002e}.message-area-header{padding:var(--space-xl);border-bottom:1px solid var(--cloud-dark);background:transparent}.message-area-title{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:1.05rem;font-weight:600;color:var(--snow)}.message-area-prefix{font-family:var(--font-mono);color:var(--gray-8);font-weight:500;opacity:.8}.message-area-description{margin-top:var(--space-xs);font-size:.85rem;color:var(--mist)}.messages{flex:1;min-height:0;overflow-y:auto;padding:var(--space-xl)}.messages-sticky-date{position:sticky;top:0;z-index:3;width:fit-content;margin:0 auto var(--space-lg);padding:.28rem .72rem;border-radius:var(--radius-full);border:1px solid var(--cloud-dark);background:var(--gray-3);color:var(--mist);font-size:.72rem;letter-spacing:.02em;text-transform:uppercase}.messages-history-status{width:fit-content;margin:0 auto var(--space-md);padding:.22rem .7rem;border-radius:var(--radius-full);border:1px solid var(--cloud-dark);background:#121110a6;color:var(--mist);font-size:.7rem;letter-spacing:.01em}.messages::-webkit-scrollbar{width:8px}.messages::-webkit-scrollbar-track{background:transparent}.messages::-webkit-scrollbar-thumb{background:var(--haze);border-radius:var(--radius-full)}.messages::-webkit-scrollbar-thumb:hover{background:var(--haze)}.message-items{list-style:none;display:flex;flex-direction:column;gap:var(--space-lg)}.message-item{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-md);row-gap:var(--space-xs);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);background:#ffffff05;border:1px solid transparent;transition:all .15s var(--ease-soft)}.message-avatar{grid-row:1 / span 2;margin-top:2px}.message-day-separator{list-style:none;display:flex;align-items:center;justify-content:center;margin:var(--space-lg) 0 var(--space-xs)}.message-day-separator span{padding:.22rem .72rem;border-radius:var(--radius-full);border:1px solid var(--cloud-dark);background:#12111099;color:var(--haze);font-size:.72rem;letter-spacing:.02em;text-transform:uppercase}.message-item:hover{background:var(--gray-4);border-color:var(--gray-5)}.message-item-mentioned{border-color:var(--accent-border);background:var(--accent-dim)}.message-item-mentioned:hover{border-color:var(--accent);background:#c9956b33}.message-meta{display:flex;align-items:baseline;gap:var(--space-sm);flex-wrap:wrap;grid-column:2}.message-author{font-weight:600;color:var(--snow);font-size:.9rem}.message-time{font-family:var(--font-mono);font-size:.7rem;color:var(--mist)}.message-edited{font-family:var(--font-mono);font-size:.68rem;color:var(--haze);font-style:italic}.message-actions{display:inline-flex;gap:var(--space-xs);margin-left:var(--space-sm);opacity:0;transition:opacity .15s var(--ease-soft)}.message-item:hover .message-actions{opacity:1}.message-action{padding:var(--space-xs) var(--space-sm);background:var(--cloud-dark);border:none;color:var(--soft);font-family:var(--font-mono);font-size:.7rem;border-radius:var(--radius-sm);box-shadow:none}.message-action:hover:not(:disabled){background:var(--cloud);color:var(--snow);transform:none;box-shadow:none}.message-action-danger:hover:not(:disabled){background:var(--coral-soft);color:var(--coral)}.message-content{font-size:.9rem;color:var(--pearl);white-space:pre-wrap;word-break:break-word;line-height:1.65;grid-column:2}.message-inline-emoji{width:1.25rem;height:1.25rem;margin:0 .08rem;vertical-align:text-bottom;object-fit:contain}.message-link{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.message-link:hover{color:var(--snow)}.message-embeds{grid-column:2;display:grid;gap:var(--space-sm);margin-top:var(--space-xs)}.message-embed-card{border:1px solid var(--cloud-dark);border-radius:var(--radius-md);overflow:hidden;background:#07070c73}.message-embed-card-muted{padding:var(--space-md)}.message-embed-image{display:block;width:100%;max-height:200px;object-fit:cover}.message-embed-video-start{position:relative;border:none;padding:0;width:100%;background:transparent;cursor:pointer}.message-embed-video-play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:999px;display:grid;place-items:center;background:#000000b8;color:#fff;font-size:1.1rem;line-height:1}.message-embed-video-frame-wrap{width:100%;aspect-ratio:16 / 9;background:#000}.message-embed-video-frame{width:100%;height:100%;border:0}.message-embed-body{padding:var(--space-md);display:grid;gap:var(--space-xs)}.message-embed-site{color:var(--mist);font-size:.72rem;text-transform:uppercase;letter-spacing:.02em}.message-embed-title,.message-embed-title-text{color:var(--snow);font-size:.86rem;font-weight:600;line-height:1.4}.message-embed-title:hover{color:var(--accent)}.message-embed-description{color:var(--pearl);font-size:.8rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.message-embed-url{color:var(--mist);font-size:.74rem;word-break:break-all}.message-embed-loading-indicator{color:var(--mist);font-size:.74rem}.message-embed-retry{margin-top:var(--space-xs);padding:var(--space-xs) var(--space-sm);border:1px solid var(--cloud-dark);border-radius:var(--radius-sm);background:#ffffff0a;color:var(--snow);font-size:.72rem}.message-embed-retry:hover{background:#ffffff14}.message-attachments{grid-column:2;display:flex;flex-wrap:wrap;gap:var(--space-md)}.message-reactions{grid-column:2;display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-xs)}.message-reaction-chip,.message-reaction-add{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--cloud-dark);border-radius:var(--radius-full);background:#ffffff08;color:var(--pearl);padding:.2rem .5rem;font-size:.75rem;line-height:1;box-shadow:none}.message-reaction-chip:hover,.message-reaction-add:hover{background:#ffffff14;transform:none;box-shadow:none}.message-reaction-add{opacity:0;pointer-events:none;transition:opacity .15s var(--ease-soft)}.message-item:hover .message-reaction-add,.message-item:focus-within .message-reaction-add,.message-reaction-add:focus-visible,.message-reaction-add.is-visible{opacity:1;pointer-events:auto}.message-reaction-chip.is-active{border-color:var(--accent-border);background:var(--accent-dim);color:var(--gray-11)}.message-reaction-emoji{font-size:.85rem}.message-reaction-emoji-image{width:1rem;height:1rem;object-fit:contain}.message-reaction-count{font-family:var(--font-mono);color:var(--mist)}.message-reaction-popover{position:fixed;z-index:1200;width:min(264px,calc(100vw - 16px));padding:.55rem .6rem;border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--surface-1);box-shadow:0 12px 28px #0000005c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.message-reaction-popover-list{margin:0;padding:0;list-style:none;display:grid;gap:.4rem}.message-reaction-popover-item{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:.45rem}.message-reaction-popover-emoji{min-width:1rem;line-height:1.2}.message-reaction-popover-users{color:var(--pearl);font-size:.78rem;line-height:1.3;word-break:break-word}.message-reaction-popover-state{margin:0;color:var(--mist);font-size:.76rem}.message-attachment{margin:0;width:min(400px,100%);border:1px solid var(--cloud-dark);border-radius:var(--radius-md);overflow:hidden;background:#0003}.message-attachment-media{position:relative}.message-attachment-open{display:block;width:100%;padding:0;border:none;background:transparent;cursor:zoom-in}.message-attachment-open:focus-visible{outline:2px solid var(--lavender);outline-offset:-2px}.message-attachment img{display:block;width:100%;max-height:292px;object-fit:cover}.message-attachment-gif img{object-fit:contain}.message-attachment-image-slot{min-height:120px}.message-attachment-image-placeholder{width:100%;min-height:120px;max-height:292px;aspect-ratio:16 / 10;background:linear-gradient(110deg,#ffffff0f 10%,#ffffff24,#ffffff0f 34%),#ffffff0a;background-size:220% 100%;animation:message-attachment-shimmer 1.6s linear infinite}.message-attachment-preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:0;color:var(--snow);background:#121212ad;opacity:0;transition:opacity .15s ease;border:none;border-radius:0;box-shadow:none;cursor:zoom-in}.message-attachment-preview-overlay:hover,.message-attachment-preview-overlay:active{transform:none;box-shadow:none}.message-attachment-preview-overlay svg{width:28px;height:28px;fill:currentColor}.message-attachment:hover .message-attachment-preview-overlay,.message-attachment:focus-within .message-attachment-preview-overlay{opacity:1}@media(hover:none){.message-attachment-preview-overlay{opacity:1}}.message-image-popup{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20000;padding:0;background:#000000b3}.message-image-popup-content{position:relative;width:100%;height:100%;display:grid;place-items:center}.message-image-popup-stage{position:relative;display:inline-grid;place-items:center;line-height:0}.message-image-popup-content img{width:auto;height:auto;max-width:80vw;max-height:80vh;object-fit:contain;border-radius:0;background:transparent}.message-image-modal-actions{position:absolute;top:.5rem;right:.5rem;display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem;padding:.45rem;border-radius:var(--radius-md);background:#00000080;z-index:2}.message-image-modal-action{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;padding:0;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.28);background:#0000006b;color:var(--snow);text-decoration:none;cursor:pointer}.message-image-modal-action svg{width:18px;height:18px;fill:currentColor}.message-image-modal-action:hover{background:#ffffff29}@media(max-width:900px){.message-image-popup-content img{max-width:94vw;max-height:72vh}}@keyframes message-attachment-shimmer{0%{background-position:200% 0}to{background-position:-20% 0}}.message-attachment-placeholder{min-height:120px;display:flex;align-items:center;justify-content:center;padding:var(--space-md);color:var(--mist);font-size:.8rem}.message-edit{display:flex;gap:var(--space-sm);align-items:center;grid-column:2}.message-edit input{flex:1}.message-edit button{padding:var(--space-xs) var(--space-md);font-size:.8rem}.message-input{display:flex;gap:var(--space-md);padding:var(--space-xl);border-top:1px solid var(--cloud-dark);background:#00000026;position:relative}.message-input-actions{display:flex;gap:var(--space-md)}.message-attach-button{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;padding:0;white-space:nowrap}.message-attach-button svg{display:block}.message-emoji-button,.message-gif-button{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;padding:0;background:#ffffff0f;border:1px solid var(--cloud-dark);border-radius:var(--radius-sm);color:var(--snow);cursor:pointer;transition:all .15s ease}.message-emoji-button:hover:not(:disabled),.message-gif-button:hover:not(:disabled){background:#ffffff1f;border-color:var(--haze)}.message-emoji-button:focus-visible,.message-gif-button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.message-emoji-button:disabled,.message-gif-button:disabled{opacity:.5;cursor:not-allowed}.message-gif-button .gif-button-text{font-size:12px;font-weight:600;letter-spacing:.5px}.message-emoji-icon{font-size:16px;line-height:1}.message-attach-input{display:none}.message-upload-queue{display:flex;flex-direction:column;gap:var(--space-sm);margin:0 var(--space-xl);padding:var(--space-md);border:1px solid var(--cloud-dark);border-radius:var(--radius-md);background:#00000026}.message-upload-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.message-upload-name{font-size:.85rem;color:var(--snow)}.message-upload-meta{font-size:.75rem;color:var(--mist)}.message-upload-item[data-status=failed] .message-upload-meta{color:var(--coral)}.message-upload-remove{padding:var(--space-xs) var(--space-sm);font-size:.75rem}.message-input input{flex:1;padding:var(--space-md) var(--space-xl)}.message-input button{padding:var(--space-md) var(--space-2xl)}.mention-picker{position:absolute;left:calc(var(--space-xl) + 132px + calc(var(--space-md) * 3));right:calc(var(--space-xl) + 8.6rem + var(--space-md));bottom:calc(var(--space-xl) + 3rem);max-height:13rem;overflow-y:auto;z-index:8;display:grid;gap:2px;padding:6px;border:1px solid var(--cloud);border-radius:var(--radius-md);background:#121110f5;box-shadow:0 12px 26px #0000004d}.mention-picker-item{width:100%;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--soft);font-size:.86rem;text-align:left;padding:.45rem .58rem;box-shadow:none}.mention-picker-item:hover,.mention-picker-item.is-selected{background:var(--accent-dim);color:var(--gray-11);transform:none}@media(max-width:800px){.mention-picker{left:calc(var(--space-xl) + 132px + calc(var(--space-md) * 3));right:calc(var(--space-xl) + 5.8rem + var(--space-sm));bottom:calc(var(--space-xl) + 3.2rem)}}.message-input .message-attach-button{padding:0}.message-error{padding:0 var(--space-xl) var(--space-lg)}.typing-indicator{padding:0 var(--space-xl) var(--space-md);font-size:.8rem;color:var(--mist);font-style:italic;display:flex;align-items:center;gap:var(--space-sm)}.typing-indicator:before{content:"";width:32px;height:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='10' viewBox='0 0 32 10'%3E%3Ccircle cx='5' cy='5' r='4' fill='%235f5b59'%3E%3Canimate attributeName='opacity' values='0.4;1;0.4' dur='1.2s' repeatCount='indefinite' begin='0s'/%3E%3C/circle%3E%3Ccircle cx='16' cy='5' r='4' fill='%235f5b59'%3E%3Canimate attributeName='opacity' values='0.4;1;0.4' dur='1.2s' repeatCount='indefinite' begin='0.2s'/%3E%3C/circle%3E%3Ccircle cx='27' cy='5' r='4' fill='%235f5b59'%3E%3Canimate attributeName='opacity' values='0.4;1;0.4' dur='1.2s' repeatCount='indefinite' begin='0.4s'/%3E%3C/circle%3E%3C/svg%3E");background-repeat:no-repeat}.video-stage{border-top:1px solid var(--cloud-dark);padding:var(--space-xl);background:#0000001a;flex-shrink:0}.video-stage-empty{font-size:.85rem;color:var(--mist);font-style:italic}.video-stage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md)}.video-stage-tile{position:relative;background:var(--void);border:1px solid var(--cloud-dark);border-radius:var(--radius-lg);overflow:hidden;min-height:120px;transition:all .2s var(--ease-soft)}.video-stage-tile:hover{border-color:var(--cloud)}.video-stage-tile.is-local{border-color:var(--accent)}.video-stage-tile.is-screen-share{border-color:var(--warning)}.video-stage-stream{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block;background:var(--void)}.video-stage-label{position:absolute;left:var(--space-sm);bottom:var(--space-sm);font-family:var(--font-mono);font-size:.7rem;font-weight:500;color:var(--snow);background:#121110e0;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-full)}.stream-watch-focused{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;min-height:0;display:grid;grid-template-rows:auto 1fr;background:#121110fa;z-index:20}.stream-watch-focused-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--cloud-dark)}.stream-watch-focused-context{display:inline-flex;align-items:center;gap:var(--space-sm);min-width:0}.stream-watch-live-badge{padding:.15rem .5rem;border-radius:var(--radius-full);border:1px solid rgba(196,112,112,.45);background:#c4707029;color:var(--danger);font-family:var(--font-mono);font-size:.64rem;font-weight:700;letter-spacing:.05em}.stream-watch-focused-title{color:var(--snow);font-size:.92rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stream-watch-focused-actions{display:inline-flex;align-items:center;gap:var(--space-sm)}.stream-watch-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:var(--radius-md);background:#ffffff24;color:var(--snow);cursor:pointer;transition:background .15s var(--ease-soft),color .15s var(--ease-soft)}.stream-watch-icon-btn:hover{background:#ffffff3d}.stream-watch-icon-btn-danger:hover{background:#c4707038;color:var(--danger)}.stream-watch-focused-player{min-height:0;padding:var(--space-lg);display:grid}.stream-watch-focused-video{width:100%;height:100%;border-radius:var(--radius-lg);border:1px solid var(--cloud-dark);background:#000;object-fit:contain}.stream-watch-mini{position:absolute;right:var(--space-xl);bottom:var(--space-xl);width:min(340px,calc(100% - (var(--space-xl) * 2)));aspect-ratio:16 / 9;border-radius:var(--radius-lg);border:1px solid var(--cloud-dark);overflow:hidden;background:#000;box-shadow:var(--shadow-lg);z-index:30}.stream-watch-mini-video{width:100%;height:100%;object-fit:cover;display:block;background:#000}.stream-watch-mini-overlay{position:absolute;inset:auto 0 0 0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-sm);background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.82) 64%);opacity:0;transition:opacity .15s var(--ease-soft)}.stream-watch-mini:hover .stream-watch-mini-overlay,.stream-watch-mini:focus-within .stream-watch-mini-overlay,.stream-watch-mini:focus-visible .stream-watch-mini-overlay{opacity:1}.stream-watch-mini-title{color:var(--snow);font-size:.78rem;font-weight:600}.stream-watch-notice{position:absolute;left:50%;bottom:var(--space-xl);transform:translate(-50%);margin:0;padding:.34rem .78rem;border-radius:var(--radius-full);border:1px solid var(--cloud-dark);background:#121110e6;color:var(--mist);font-size:.75rem;z-index:32}@media(max-width:820px){.stream-watch-focused-player{padding:var(--space-md)}.stream-watch-mini{right:var(--space-md);bottom:var(--space-md)}}.member-list{width:var(--member-list-width);background:var(--gray-4);border:1px solid var(--cloud-dark);border-radius:var(--radius-xl);padding:var(--space-xl);flex-shrink:0;overflow-y:auto;position:relative}.member-list h3{font-size:1rem;font-weight:600;color:var(--snow);margin-bottom:var(--space-lg)}.member-section-title{margin:var(--space-lg) 0 var(--space-sm);font-family:var(--font-mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--mist)}.member-items{list-style:none;display:flex;flex-direction:column;gap:var(--space-xs)}.member-item{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);background:#ffffff05;font-size:.85rem;color:var(--pearl);cursor:pointer;transition:all .15s var(--ease-soft)}.member-item:hover{background:#ffffff0d}.member-hover-preview{position:fixed;z-index:80;display:grid;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid var(--cloud-dark);background:radial-gradient(circle at top right,rgba(201,149,107,.12),transparent 48%),var(--gray-3);box-shadow:0 18px 30px #00000059;pointer-events:none}.member-hover-preview-head{display:flex;align-items:center;gap:var(--space-sm)}.member-hover-preview-identity{min-width:0;display:grid;gap:2px}.member-hover-preview-name{margin:0;color:var(--snow);font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-hover-preview-username{margin:0;font-family:var(--font-mono);font-size:.72rem;color:var(--mist);line-height:1.2}.member-hover-preview-status{margin:0;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.1);background:#ffffff08;color:var(--pearl);line-height:1.35;overflow-wrap:anywhere}.member-hover-preview-description{margin:0;color:var(--mist);font-size:.78rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.member-name{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}.member-avatar-wrap{position:relative;display:inline-flex;flex-shrink:0}.member-display-name{line-height:1.2}.member-profile-status{font-size:.68rem;color:var(--mist);line-height:1.2;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-avatar{flex-shrink:0}.member-status-dot{width:12px;height:12px;position:absolute;right:-1px;bottom:-1px;border-radius:var(--radius-full);flex-shrink:0;border:2px solid var(--gray-4)}.member-status-dot-online{background:var(--success)}.member-status-dot-idle{background:var(--warning)}.member-status-dot-offline{background:var(--cloud)}.member-voice-indicator{font-family:var(--font-mono);font-size:.65rem;color:var(--accent);text-transform:uppercase;letter-spacing:.04em;padding:var(--space-xs) var(--space-sm);background:var(--accent-dim);border-radius:var(--radius-full)}.member-item-offline{color:var(--mist);opacity:.7}.member-item-idle{color:var(--snow)}.user-profile-modal{width:min(420px,calc(100vw - 2.5rem))}.user-profile-modal-content{display:flex;flex-direction:column;gap:var(--space-md)}.user-profile-header{display:flex;align-items:center;gap:var(--space-md)}.user-profile-identity h5{margin:0;color:var(--snow);font-size:1rem}.user-profile-identity p{margin:0;color:var(--mist);font-family:var(--font-mono);font-size:.75rem}.user-profile-status{margin:0;padding:var(--space-sm) var(--space-md);border:1px solid var(--cloud-dark);border-radius:var(--radius-md);color:var(--pearl);background:#ffffff08}.user-profile-description{margin:0;color:var(--pearl);line-height:1.5;white-space:pre-wrap}.user-profile-actions{justify-content:flex-start}.settings-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#000000b3;display:flex;align-items:center;justify-content:center;padding:var(--space-xl);animation:fadeIn .2s var(--ease-soft)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.settings-modal{width:min(640px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow-y:auto;overflow-x:hidden;border-radius:var(--radius-xl);background:var(--gray-3);border:1px solid var(--gray-5);box-shadow:var(--shadow-lg);padding:var(--space-2xl);display:flex;flex-direction:column;gap:var(--space-xl);animation:modalPop .3s var(--ease-soft)}@keyframes modalPop{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.channel-create-modal-backdrop{z-index:1180}.channel-create-modal{width:min(400px,calc(100vw - 2rem))}.channel-create-form{gap:var(--space-md)}.channel-edit-modal-backdrop{z-index:1180}.channel-edit-modal{width:min(400px,calc(100vw - 2rem))}.channel-edit-form{gap:var(--space-md)}.voice-share-modal-backdrop{z-index:1190}.voice-share-modal{width:min(440px,calc(100vw - 2rem))}.settings-modal-header{display:flex;align-items:center;justify-content:space-between}.settings-modal-header h4{font-size:1.15rem;font-weight:600;color:var(--snow)}.settings-close{width:2rem;height:2rem;padding:0;background:var(--cloud-dark);border:none;color:var(--soft);font-size:1rem;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;box-shadow:none}.settings-close:hover:not(:disabled){background:var(--cloud);color:var(--snow);transform:none;box-shadow:none}.settings-section{border:1px solid var(--cloud-dark);border-radius:var(--radius-lg);padding:var(--space-xl);background:var(--gray-4);display:flex;flex-direction:column;gap:var(--space-md)}.settings-section h5{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-8);margin-bottom:var(--space-xs)}.settings-label{font-size:.85rem;font-weight:500;color:var(--pearl)}.settings-help{font-size:.78rem;color:var(--mist);overflow-wrap:anywhere}.settings-checkbox{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:.85rem;color:var(--pearl);cursor:pointer}.settings-checkbox input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--accent)}.settings-avatar-preview{width:5rem;height:5rem;border-radius:var(--radius-lg);overflow:hidden;border:2px solid var(--cloud-dark);background:var(--cloud-dark)}.settings-avatar-preview img{width:100%;height:100%;object-fit:cover}.settings-actions{margin-top:var(--space-sm);display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm)}.settings-secondary{background:var(--cloud-dark);color:var(--soft);box-shadow:none}.settings-secondary:hover:not(:disabled){background:var(--cloud);color:var(--snow);transform:none;box-shadow:none}.settings-danger{background:var(--coral-soft);color:var(--coral);box-shadow:none}.settings-danger:hover:not(:disabled){background:#c4707040;box-shadow:none}.settings-audio-row{display:grid;gap:var(--space-xs)}.emoji-settings-layout{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:var(--space-lg);align-items:start}.emoji-upload-card,.emoji-library-card{border:1px solid var(--cloud-dark);border-radius:var(--radius-md);background:#ffffff05;padding:var(--space-md)}.emoji-settings-card-title{margin:0 0 var(--space-xs) 0;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mist)}.emoji-upload-preview{display:flex;align-items:center;gap:var(--space-sm);border:1px solid var(--cloud-dark);border-radius:var(--radius-sm);padding:var(--space-sm);background:#0000002e}.emoji-upload-preview img{width:44px;height:44px;object-fit:contain;border-radius:var(--radius-sm)}.emoji-upload-preview-meta{min-width:0}.emoji-upload-preview-name,.emoji-upload-preview-size{margin:0}.emoji-upload-preview-name{color:var(--snow);font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emoji-upload-preview-size{color:var(--mist);font-size:.72rem}.emoji-library-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.emoji-library-count{color:var(--mist);font-size:.72rem}.emoji-settings-list{list-style:none;display:grid;gap:var(--space-sm);margin:0;padding:0}.emoji-settings-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);border:1px solid var(--cloud-dark);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);background:#ffffff05}.emoji-settings-item-main{display:flex;align-items:center;gap:var(--space-sm);min-width:0}.emoji-settings-item-main img{width:32px;height:32px;object-fit:contain}.emoji-settings-shortcode{font-family:var(--font-mono);font-size:.78rem;color:var(--snow)}.emoji-settings-name{font-size:.75rem;color:var(--mist)}@media(max-width:900px){.emoji-settings-layout{grid-template-columns:minmax(0,1fr)}}.settings-volume-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.settings-volume-value{font-size:.8rem;color:var(--gray-8)}.voice-share-preview{width:100%;min-height:120px;border-radius:var(--radius-lg);border:1px solid var(--cloud-dark);background:var(--cloud-dark);overflow:hidden;display:grid;place-items:center;padding:var(--space-md)}.voice-share-preview-video{width:100%;max-height:180px;border-radius:var(--radius-md);object-fit:contain;background:var(--gray-1)}.auth-page{height:100%;display:flex;align-items:center;justify-content:center;background:var(--gray-1);position:relative;padding:var(--space-xl)}.auth-form{position:relative;background:var(--gray-3);border:1px solid var(--gray-5);padding:var(--space-3xl);border-radius:var(--radius-xl);width:100%;max-width:380px;display:flex;flex-direction:column;gap:var(--space-lg);box-shadow:var(--shadow-lg);animation:modalPop .4s var(--ease-soft)}.auth-form h1{font-size:1.75rem;font-weight:700;text-align:center;color:var(--snow);margin-bottom:var(--space-sm);letter-spacing:-.02em}.auth-form input{padding:var(--space-md) var(--space-xl)}.auth-form button{padding:var(--space-md) var(--space-2xl);margin-top:var(--space-sm)}.auth-subtitle{text-align:center;color:var(--soft);font-size:.85rem;margin-top:calc(-1 * var(--space-sm))}.auth-link{text-align:center;color:var(--soft);font-size:.85rem}.auth-field-hint{margin-top:calc(-1 * var(--space-md));margin-bottom:calc(-1 * var(--space-sm));font-size:.78rem;color:var(--soft)}.auth-link a{color:var(--accent);text-decoration:none}.auth-link a:hover{text-decoration:underline}@media(max-width:620px){.auth-form{padding:var(--space-2xl) var(--space-xl)}}.context-menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:998}.context-menu{position:fixed;z-index:999;min-width:160px;background:var(--gray-3);border:1px solid var(--cloud-dark);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-xs);display:flex;flex-direction:column;animation:contextMenuFadeIn .15s var(--ease-soft)}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.context-menu-item{width:100%;padding:var(--space-sm) var(--space-md);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--pearl);font-family:var(--font-sans);font-size:.85rem;text-align:left;box-shadow:none;transition:all .15s var(--ease-soft)}.context-menu-item:hover:not(:disabled){background:var(--accent-dim);color:var(--snow);transform:none;box-shadow:none}.context-menu-item.is-disabled{opacity:.5;cursor:not-allowed}.context-menu-item.is-danger{color:var(--coral)}.context-menu-item.is-danger:hover:not(:disabled){background:var(--coral-soft)}.context-menu-divider{height:1px;background:var(--cloud-dark);margin:var(--space-xs) 0}.context-menu-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.context-menu-volume{padding:var(--space-sm) var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs)}.context-menu-volume-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-xs)}.context-menu-volume-label{font-size:.85rem;color:var(--pearl)}.context-menu-volume-value{font-family:var(--font-mono);font-size:.75rem;color:var(--mist)}.context-menu-volume-slider{width:100%;height:4px;background:var(--cloud);border-radius:var(--radius-sm);outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.context-menu-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;background:var(--accent);border-radius:50%;cursor:pointer;transition:background .15s var(--ease-soft)}.context-menu-volume-slider::-webkit-slider-thumb:hover{background:var(--accent)}.context-menu-volume-slider::-moz-range-thumb{width:14px;height:14px;background:var(--accent);border-radius:50%;cursor:pointer;border:none;transition:background .15s var(--ease-soft)}.context-menu-volume-slider::-moz-range-thumb:hover{background:var(--accent)}.context-menu-volume-reset{margin-top:var(--space-xs);font-size:.8rem;text-align:center}.user-avatar{--avatar-size: 32px;width:var(--avatar-size);height:var(--avatar-size);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:#c9956b2e;color:#ffffffeb;font-size:calc(var(--avatar-size) * .42);font-weight:700;line-height:1;flex:0 0 var(--avatar-size)}.user-avatar img{width:100%;height:100%;object-fit:cover;display:block}.settings-page{flex:1;display:flex;min-height:0;min-width:0;gap:var(--space-xl);animation:settingsSlideIn .25s var(--ease-soft)}@keyframes settingsSlideIn{0%{opacity:0}to{opacity:1}}@keyframes settingsSectionIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.settings-nav{width:220px;flex-shrink:0;background:radial-gradient(circle at top right,rgba(201,149,107,.16),transparent 50%),linear-gradient(160deg,#ffffff05,#00000014),var(--gray-4);border:1px solid var(--cloud-dark);border-radius:var(--radius-xl);padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-lg)}.settings-nav-title{font-size:1.1rem;font-weight:700;color:var(--snow);letter-spacing:-.02em;margin-bottom:var(--space-xs)}.settings-nav-items{display:flex;flex-direction:column;gap:var(--space-2xs)}.settings-nav-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-sm) var(--space-md);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--soft);font-size:.9rem;font-weight:500;text-align:left;cursor:pointer;transition:background .15s var(--ease-soft),color .15s var(--ease-soft),border-color .15s var(--ease-soft);box-shadow:none}.settings-nav-update-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--accent);box-shadow:0 0 0 2px #c9956b33;flex-shrink:0}.settings-nav-item:hover:not(:disabled){background:#ffffff0a;border-color:#ffffff14;color:var(--pearl);transform:none;box-shadow:none}.settings-nav-item-active{background:linear-gradient(90deg,#c9956b42,#c9956b12);color:var(--accent);border-color:var(--accent-border)}.settings-nav-item-active:hover:not(:disabled){background:var(--accent-dim);color:var(--accent);transform:none;box-shadow:none}.settings-content{flex:1;min-width:0;background:radial-gradient(circle at top left,rgba(201,149,107,.12),transparent 42%),linear-gradient(180deg,#ffffff05,#00000024),var(--gray-2);border:1px solid var(--cloud-dark);border-radius:var(--radius-xl);display:flex;flex-direction:column;overflow:hidden}.settings-content-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-xl) var(--space-2xl);border-bottom:1px solid var(--cloud-dark);flex-shrink:0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.settings-content-title{font-size:1.12rem;font-weight:600;color:var(--snow);letter-spacing:-.01em}.settings-close-btn{width:2rem;height:2rem;padding:0;background:var(--cloud-dark);border:none;color:var(--soft);border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s var(--ease-soft),color .15s var(--ease-soft);box-shadow:none}.settings-close-btn:hover:not(:disabled){background:var(--cloud);color:var(--snow);transform:none;box-shadow:none}.settings-content-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-2xl);display:flex;flex-direction:column;gap:var(--space-xl)}.settings-content-body>*{animation:settingsSectionIn .2s var(--ease-soft)}.settings-content .settings-label{color:var(--gray-11)}.settings-content .settings-help{color:var(--gray-9);overflow-wrap:anywhere}.settings-content input,.settings-content select{width:100%;max-width:100%;min-width:0}.settings-content select{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-content input[type=file]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-section{border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:var(--space-2xl);background:linear-gradient(175deg,#ffffff08,#ffffff03),var(--gray-4);display:flex;flex-direction:column;gap:var(--space-lg)}.settings-section-head{display:grid;gap:var(--space-xs)}.settings-section h5{margin:0;color:var(--gray-10)}.settings-audio-panel{gap:var(--space-xl)}.settings-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.settings-profile-card{display:grid;gap:var(--space-sm);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);background:#0000001a;padding:var(--space-lg);min-width:0}.settings-profile-card h6{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-9);margin:0 0 var(--space-xs) 0}.settings-notification-stack{display:grid;gap:var(--space-sm)}.settings-update-actions{justify-content:flex-start;gap:var(--space-sm)}.settings-update-release{display:grid;gap:var(--space-sm)}.settings-update-meta,.settings-update-current-version,.settings-update-status{margin:0}.settings-update-changelog{border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);background:#0000001a;padding:var(--space-md) var(--space-lg);display:grid;gap:var(--space-sm)}.settings-update-changelog h6{margin:0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-9)}.settings-update-changelog ul{margin:0;padding-left:1.25rem;display:grid;gap:var(--space-2xs)}.settings-update-changelog li{color:var(--gray-10);overflow-wrap:anywhere}.settings-audio-device-grid{display:grid;gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr))}.settings-audio-card{display:grid;gap:var(--space-sm);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);background:#0000001a;padding:var(--space-lg);min-width:0}.settings-audio-card-wide{grid-column:1 / -1}.settings-audio-card .settings-help{margin-top:calc(var(--space-xs) * -1)}.settings-audio-actions{margin-top:0;justify-content:flex-end}.settings-audio-preferences{display:grid;gap:var(--space-lg)}.settings-audio-group{display:grid;gap:var(--space-md);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);background:#0000001a;padding:var(--space-lg);min-width:0}.settings-audio-group-head{display:grid;gap:var(--space-xs)}.settings-audio-group-head h6{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-9);margin:0}.settings-toggle-stack,.settings-slider-stack{display:grid;gap:var(--space-sm)}.settings-toggle-card,.settings-slider-card{border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);background:#ffffff0a;padding:var(--space-md) var(--space-lg);min-width:0}.settings-toggle-card{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);cursor:pointer}.settings-toggle-copy{display:grid;gap:var(--space-xs)}.settings-toggle-title{font-size:.9rem;font-weight:500;color:var(--gray-11)}.settings-toggle-card .settings-help{color:var(--gray-9);font-size:.78rem}.settings-toggle-card input[type=checkbox]{width:1rem;height:1rem;margin-top:2px;accent-color:var(--accent);flex-shrink:0}.settings-slider-card{display:grid;gap:var(--space-sm)}.settings-slider-card input[type=range]{width:100%;accent-color:var(--accent)}.settings-content .settings-volume-value{color:var(--gray-10)}.settings-content .settings-secondary{background:#ffffff1a;border:1px solid rgba(255,255,255,.12);color:var(--gray-11)}.settings-content .settings-secondary:hover:not(:disabled){background:#ffffff24;color:var(--gray-12)}@media(max-width:1080px){.settings-nav{width:200px;padding:var(--space-lg)}.settings-content-body{padding:var(--space-xl)}.settings-audio-device-grid,.settings-profile-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:1280px){.settings-page{gap:var(--space-md)}.settings-nav{width:200px;padding:var(--space-lg)}.settings-content-body{padding:var(--space-xl)}}@media(max-width:860px){.settings-page{flex-direction:column;gap:var(--space-md)}.settings-nav{width:100%;padding:var(--space-md);gap:var(--space-md)}.settings-nav-items{flex-direction:row;overflow-x:auto;gap:var(--space-sm);padding-bottom:var(--space-xs)}.settings-nav-item{width:auto;white-space:nowrap;flex-shrink:0;padding-inline:var(--space-lg)}.settings-content-header{padding:var(--space-lg) var(--space-xl)}.settings-content-body,.settings-section{padding:var(--space-lg)}.settings-toggle-card{gap:var(--space-md)}}@media(prefers-reduced-motion:reduce){.settings-page,.settings-content-body>*{animation:none}}.error{font-size:.8rem;color:var(--coral);padding:var(--space-md);background:var(--coral-soft);border:1px solid rgba(196,112,112,.3);border-radius:var(--radius-md)}.info{font-size:.8rem;color:var(--info);padding:var(--space-md);background:var(--sky-soft);border:1px solid rgba(122,158,196,.3);border-radius:var(--radius-md)}.placeholder{font-size:.85rem;color:var(--mist);font-style:italic}.toast{position:fixed;right:var(--space-xl);bottom:var(--space-xl);z-index:1000;max-width:min(360px,calc(100vw - 2rem));padding:var(--space-md) var(--space-xl);border-radius:var(--radius-lg);border:1px solid var(--gray-5);background:var(--gray-3);color:var(--pearl);font-size:.85rem;box-shadow:var(--shadow-lg);animation:toastSlide .3s var(--ease-soft)}@keyframes toastSlide{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.toast-error{border-color:#c4707066;color:var(--danger)}.toast-audio-fix{display:flex;align-items:center;gap:var(--space-sm);border-color:var(--warning-dim);color:var(--warning);bottom:var(--space-xl)}.toast-audio-fix-btn{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);border:1px solid var(--accent-border);background:var(--accent-dim);color:var(--accent);font-size:.8rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s var(--ease-soft)}.toast-audio-fix-btn:hover{background:var(--accent-border)}.toast-audio-fix-dismiss{background:none;border:none;color:var(--gray-8);font-size:1.1rem;cursor:pointer;padding:0 var(--space-2xs);line-height:1}.toast-audio-fix-dismiss:hover{color:var(--pearl)}.mobile-nav-toggle{display:none;align-items:center;justify-content:center;background:transparent;border:none;color:var(--snow);padding:0;cursor:pointer;border-radius:var(--radius-sm);margin-right:var(--space-md);flex-shrink:0}.mobile-nav-toggle svg{width:24px;height:24px}.mobile-nav-toggle:hover{color:var(--accent)}.mobile-nav-overlay{display:none;position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:toastSlide .2s var(--ease-soft)}@media(max-width:1024px){:root{--sidebar-width: 220px;--member-list-width: 200px}.chat-view{gap:var(--space-sm);padding:var(--space-sm)}}@media(max-width:820px){.chat-view{display:grid;grid-template-columns:200px 1fr;grid-template-rows:1fr auto;gap:var(--space-sm)}.channel-list{grid-column:1;grid-row:1 / span 2;width:100%;border-radius:var(--radius-lg)}.main-content{grid-column:2;grid-row:1;border-radius:var(--radius-lg)}.member-list{grid-column:2;grid-row:2;width:100%;max-height:180px;border-radius:var(--radius-lg)}.settings-modal{width:calc(100vw - 1.5rem);max-height:calc(100vh - 1.5rem);padding:var(--space-xl)}.video-stage{padding:var(--space-lg)}.video-stage-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.voice-dock-actions{flex-wrap:wrap}}@media(max-width:620px){.chat-view{display:flex;padding:0;gap:0;position:relative;overflow:hidden}.mobile-nav-toggle{display:flex}.chat-view.is-mobile-nav-open .mobile-nav-overlay{display:block}.channel-list{position:absolute;top:0;bottom:0;left:0;width:280px;max-height:none;z-index:100;transform:translate(-100%);transition:transform .25s var(--ease-soft);border-radius:0;border-left:none;border-top:none;border-bottom:none}.chat-view.is-mobile-nav-open .channel-list{transform:translate(0)}.main-content{flex:1;border-radius:0;border:none}.member-list{display:none}.video-stage-grid{grid-template-columns:1fr}.message-input{flex-direction:column;padding:var(--space-lg)}.message-input>button{width:100%}.message-input-actions{gap:var(--space-xs)}.message-input-actions button{width:32px;min-width:32px;height:32px}.message-input-actions svg{width:16px;height:16px}.message-input-actions .gif-button-text{font-size:10px}.message-input-actions .message-emoji-icon{font-size:14px}.message-area-header{padding:var(--space-md) var(--space-lg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
