:root,[data-theme=j20a05n]{--default-font: "Roboto", sans-serif;--bg-primary: #11111e;--bg-secondary: #1c1c30;--bg-tertiary: #252540;--bg-input: #1a1a2e;--bg-hover: rgba(255, 255, 255, .05);--bg-active: rgba(88, 101, 242, .2);--accent: #5865f2;--accent-rgb: 88, 101, 242;--accent-hover: #4752c4;--text-primary: #e8e8f0;--text-muted: #8e8ea8;--text-secondary: #6d6e82;--border: #2e2e50;--msg-mine-bg: #3a3f9e;--msg-other-bg: #252540;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 18px;--error: #ff6b6b;--color-danger: #b94a48;--color-success: #3ba55d;--bg-accent-glow-1: rgba(88, 101, 242, .08);--bg-accent-glow-2: rgba(88, 101, 242, .05)}body.theme-paidparrot{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--bg-input: #0d1117;--bg-hover: rgba(63, 185, 80, .08);--bg-active: rgba(63, 185, 80, .18);--accent: #3fb950;--accent-rgb: 63, 185, 80;--accent-hover: #56d364;--text-primary: #e6edf3;--text-muted: #597955;--text-secondary: #6e7681;--border: #30363d;--msg-mine-bg: #0f2d1a;--msg-other-bg: #1c2128;--error: #f85149;--color-danger: #f85149;--color-success: #3fb950;--bg-accent-glow-1: rgba(63, 185, 80, .08);--bg-accent-glow-2: rgba(63, 185, 80, .05)}html,body{height:100%;margin:0;font-family:var(--default-font);overflow:hidden;background-color:var(--bg-primary);color:var(--text-primary)}.hidden{display:none!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.app-loading-overlay{position:fixed;inset:0;background:var(--bg-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;z-index:9999;transition:opacity .4s ease-out}.app-loading-overlay.hidden{opacity:0;pointer-events:none}.app-loading-logo{width:100px;height:auto;animation:app-loading-pulse 2s ease-in-out infinite}@keyframes app-loading-pulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 20px rgba(88,101,242,.3))}50%{transform:scale(1.05);filter:drop-shadow(0 0 40px rgba(88,101,242,.5))}}.app-loading-spinner{width:40px;height:40px;border:3px solid rgba(88,101,242,.2);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.app-loading-text{color:var(--text-muted);font-size:1rem;margin:0}@media (max-width: 480px){.app-loading-logo{width:80px}}#app-container{display:flex;height:100%}.logo-settings-btn{background:#ffffff1a;border:none;padding:0;cursor:pointer;margin-top:auto;margin-bottom:10px;width:46px;height:46px;border-radius:50%;display:flex;justify-content:center;align-items:center;transition:border-radius .2s ease,background-color .15s ease,transform .1s ease,box-shadow .15s ease}.logo-settings-btn:hover{border-radius:14px;background-color:var(--accent);box-shadow:0 0 10px var(--accent)}.logo-settings-btn:hover{background-color:#fff3}.logo-settings-btn:hover{background-color:#ffffff1a}.logo-settings-btn:active{transform:scale(.95)}.fixed-bottom-left-logo{width:36px;height:36px;object-fit:contain;flex-shrink:0}.main-content{flex:1;display:flex;flex-direction:column;background-color:var(--bg-primary);min-width:0}#toast-container{position:fixed;bottom:24px;right:24px;z-index:5000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.popup-button{padding:8px 18px;border:none;border-radius:var(--radius-sm);background-color:var(--accent);color:#fff;cursor:pointer;font-size:.9rem;font-family:var(--default-font);transition:background-color .15s}.popup-button:hover{background-color:var(--accent-hover)}.popup-button-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border)}.popup-button-secondary:hover{background-color:var(--bg-hover)}.popup-button-danger{background:#ff6b6b14;color:var(--error);border:1px solid rgba(255,107,107,.25)}.popup-button-danger:hover{background:#ff6b6b2e}.popup-button:disabled{opacity:.7;cursor:not-allowed}.btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:6px;vertical-align:middle}.settings-action-btn{padding:7px 14px;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;font-family:var(--default-font);white-space:nowrap;flex-shrink:0;transition:background .15s,color .15s,border-color .15s}.settings-action-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.popup-input{flex:1;min-width:0;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background-color:var(--bg-input);color:var(--text-primary);font-size:.9rem;font-family:var(--default-font);transition:border-color .15s}.popup-input:focus{outline:none;border-color:var(--accent)}.popup-input-full{flex:unset;width:100%;box-sizing:border-box;margin-top:8px}input[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;width:40px;height:22px;background-color:var(--bg-tertiary);border:1px solid var(--border);border-radius:11px;cursor:pointer;flex-shrink:0;transition:background-color .2s,border-color .2s}input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background-color:var(--text-muted);border-radius:50%;transition:transform .2s,background-color .2s}input[type=checkbox]:checked{background-color:var(--accent);border-color:var(--accent)}input[type=checkbox]:checked:after{transform:translate(18px);background-color:#fff}input[type=checkbox]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.avatar{width:36px;height:36px;border-radius:50%;margin-right:8px;display:flex;justify-content:center;align-items:center;color:#fff;font-weight:600;font-size:.95rem;overflow:hidden;flex-shrink:0}.avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.unread-badge{margin-left:auto;flex-shrink:0;background-color:var(--accent);color:#fff;font-size:.7rem;font-weight:700;min-width:18px;height:18px;border-radius:9px;padding:0 5px;display:flex;align-items:center;justify-content:center;line-height:1}.voice-badge{margin-left:6px;flex-shrink:0;background-color:var(--bg-tertiary);color:var(--accent);font-size:.7rem;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.voice-badge i{font-size:.65rem}.voice-join-btn{margin-left:6px;flex-shrink:0;background-color:var(--bg-tertiary);color:var(--accent);width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.voice-join-btn:hover{background-color:var(--accent);color:#fff}.voice-join-btn i{font-size:.65rem}.encrypted-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;background:#2ecc7126;border:1px solid rgba(46,204,113,.35);color:#2ecc71;font-size:.72rem;font-weight:600;white-space:nowrap;flex-shrink:0}.encrypted-badge i{font-size:.65rem}.history-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;background:#5865f226;border:1px solid rgba(88,101,242,.35);color:var(--accent);font-size:.72rem;font-weight:600;white-space:nowrap;flex-shrink:0}.presence-dot{position:absolute;bottom:-1px;right:-1px;width:11px;height:11px;border-radius:50%;border:2px solid var(--bg-secondary);background:#747f8d;box-sizing:border-box}.presence-dot.online{background:#3ba55d}.presence-dot.away{background:#faa81a}.presence-dot.offline{background:#747f8d}[data-hide-presence] .presence-dot{display:none}.tab-container{display:flex;gap:6px;margin-bottom:24px;background:var(--bg-tertiary);padding:4px;border-radius:var(--radius-md)}.tab-button{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.9rem;font-weight:500;font-family:var(--default-font);padding:10px 20px;border-radius:var(--radius-sm);flex:1;transition:all .2s ease}.tab-button:hover{color:var(--text-primary)}.tab-button.active{background:var(--bg-primary);color:var(--text-primary);box-shadow:0 2px 8px #00000026}.tab-content{display:none}.tab-content.active{display:block}.close-button{color:var(--text-muted);font-size:22px;font-weight:700;position:absolute;top:14px;right:18px;cursor:pointer;line-height:1;transition:color .15s;user-select:none}.close-button:hover{color:var(--text-primary)}.theme-options{display:flex;gap:12px;flex-wrap:wrap}.theme-option{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;padding:10px;border-radius:var(--radius-md);border:2px solid var(--border);transition:border-color .15s;background:none;color:var(--text-primary);font-size:.82rem;font-family:var(--default-font);width:170px}.theme-option:hover{border-color:var(--accent)}.theme-option.active{border-color:var(--accent);color:var(--accent)}.tp-window{width:150px;height:100px;border-radius:6px;display:flex;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.tp-sidebar{width:44px;flex-shrink:0;display:flex;flex-direction:column;gap:4px;padding:8px 6px}.tp-sb-item{height:6px;border-radius:3px;opacity:.45}.tp-sb-item.tp-sb-active{opacity:1}.tp-chat{flex:1;display:flex;flex-direction:column;padding:7px 7px 5px;gap:5px}.tp-messages{flex:1;display:flex;flex-direction:column;gap:5px}.tp-msg{display:flex;align-items:flex-end;gap:4px}.tp-msg-mine{justify-content:flex-end}.tp-avatar{width:12px;height:12px;border-radius:50%;flex-shrink:0}.tp-bubble{border-radius:8px 8px 8px 2px;padding:4px 6px;display:flex;flex-direction:column;gap:3px;max-width:90px}.tp-bubble-mine{border-radius:8px 8px 2px}.tp-line{height:3px;border-radius:2px;opacity:.7}.tp-line-long{width:56px}.tp-line-med{width:40px}.tp-line-short{width:28px}.tp-input-bar{height:14px;border-radius:4px;flex-shrink:0}.layout-options{display:flex;gap:12px}.layout-option{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;padding:10px;border-radius:var(--radius-md);border:2px solid var(--border);transition:border-color .15s;background:none;color:var(--text-primary);font-size:.82rem;font-family:var(--default-font);width:170px}.layout-option:hover{border-color:var(--accent)}.layout-option.active{border-color:var(--accent);color:var(--accent)}.layout-preview{width:150px;height:100px;background:var(--bg-primary);border-radius:var(--radius-sm);padding:10px 8px;display:flex;flex-direction:column;gap:8px;overflow:hidden}.lp-msg{display:flex;align-items:flex-start;gap:6px}.lp-msg-mine{justify-content:flex-end}.lp-avatar{width:18px;height:18px;border-radius:50%;background:var(--accent);flex-shrink:0}.lp-avatar-alt{background:#43b581}.lp-bubble{background:var(--bg-secondary);border-radius:10px 10px 10px 2px;padding:5px 7px;display:flex;flex-direction:column;gap:3px;max-width:80px}.lp-bubble-mine{background:var(--accent);border-radius:10px 10px 2px}.lp-name{width:36px;height:4px;border-radius:2px;background:var(--accent);opacity:.8}.lp-name-alt{background:#43b581}.lp-line{height:4px;border-radius:2px;background:var(--text-muted);opacity:.5}.lp-line-long{width:52px}.lp-line-med{width:36px}.lp-line-short{width:24px}.layout-preview-modern{gap:4px}.lp-row{display:flex;align-items:flex-start;gap:6px;padding:2px 0}.lp-row-grouped .lp-avatar{visibility:hidden}.lp-body{display:flex;flex-direction:column;gap:3px;flex:1}.lp-avatar-hidden{visibility:hidden}.control-btn{background-color:transparent;border:1px solid var(--border);border-radius:50%;width:40px;height:40px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:background-color .15s,border-color .15s;color:var(--text-muted)}.control-btn:hover,.control-btn.muted{background-color:var(--bg-tertiary);border-color:var(--accent);color:var(--text-primary)}.control-btn i{font-size:1rem}.keybind-row{display:flex;align-items:center;gap:6px}.keybind-input{min-width:60px;padding:6px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:.85rem;transition:border-color .15s}.keybind-input:hover{border-color:var(--accent)}.keybind-input.listening{border-color:var(--accent);background:#5865f226}.keybind-key{display:inline-block;padding:2px 6px;background:var(--bg-secondary);border-radius:4px;font-size:.75rem;font-weight:600;min-width:24px;text-align:center}.keybind-clear{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px 6px;border-radius:var(--radius-sm);font-size:.8rem;line-height:1;transition:color .15s}.keybind-clear:hover{color:#ed4245}.spinner-ring{width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.room-type-cards{display:flex;flex-direction:row;gap:10px}.room-type-card{display:block;cursor:pointer;border:2px solid var(--border);border-radius:var(--radius-md);padding:14px;background:var(--bg-primary);flex:1;transition:all .2s ease}.room-type-card:has(input:checked){border-color:var(--accent)}.room-type-card:hover:not(:has(input:checked)){border-color:var(--text-muted)}.room-type-card input[type=radio]{display:none}.room-type-card-inner{display:flex;flex-direction:row;align-items:center;gap:12px;text-align:left}.room-type-card-icon{font-size:1.2rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;text-align:center;flex-shrink:0;color:var(--text-muted);background:var(--bg-tertiary);border-radius:var(--radius-sm);transition:all .2s ease}.room-type-card:has(input:checked) .room-type-card-icon{color:#fff;background:var(--accent)}.room-type-card-info{display:flex;flex-direction:column;gap:2px;flex:1}.room-type-card-name{font-size:.9rem;font-weight:600;color:var(--text-primary)}.room-type-card-desc{font-size:.75rem;color:var(--text-muted);line-height:1.3}@keyframes banner-slide-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes typing-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}@keyframes voice-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.sidebar{display:flex;width:300px;flex-shrink:0;height:100%;overflow:hidden;background-color:var(--bg-secondary);border-right:1px solid var(--border)}.spaces-list{width:66px;background-color:var(--bg-primary);display:flex;flex-direction:column;align-items:center;flex-shrink:0;overflow:hidden}.spaces-list-items{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:10px;overflow-y:auto;flex:1;width:100%}.space-icon{position:relative;width:46px;height:46px;background-color:var(--bg-tertiary);border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:1.1rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:border-radius .2s ease,background-color .15s ease;flex-shrink:0;user-select:none}.space-icon:hover,.space-icon.active{border-radius:14px;background-color:var(--accent)}.space-icon-avatar-el{width:100%;height:100%;border-radius:inherit;font-size:1rem;display:flex;align-items:center;justify-content:center;pointer-events:none}.space-icon-avatar-el .avatar-img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.space-icon-badge{position:absolute;bottom:2px;right:2px;width:10px;height:10px;background:var(--error);border-radius:50%;border:2px solid var(--bg-secondary);pointer-events:none}.space-icon.space-icon-home{font-size:1.1rem;color:var(--text-muted)}.space-icon.space-icon-home:hover,.space-icon.space-icon-home.active{color:#fff}.space-icon.add-server{background-color:transparent;border:2px dashed var(--border);color:var(--text-muted);font-size:1.2rem}.space-icon.add-server:hover{border-color:var(--accent);color:var(--accent);background-color:transparent;border-radius:14px}.space-icon.space-icon{cursor:pointer}.space-icon.space-icon:active{cursor:grabbing}.space-icon.space-icon.dragging{opacity:.5;transform:scale(.95)}.space-icon.space-icon.drag-over{border:2px dashed var(--accent);border-radius:14px}.space-list-divider{width:32px;height:2px;background:var(--text-muted);opacity:.3;border-radius:1px;margin:6px auto;flex-shrink:0}.space-icon.space-icon-invite{position:relative;opacity:.7;border:2px solid var(--accent)}.space-icon.space-icon-invite:hover{opacity:1}.space-icon-invite-badge{position:absolute;top:-4px;right:-4px;background:var(--accent);color:#fff;font-size:.65rem;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;pointer-events:none}.room-list{flex:1;padding:8px 10px;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}#rooms{flex:1;min-height:100px;overflow-y:auto;margin-bottom:4px;padding-top:6px}.room-section-divider{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:8px 10px 6px;user-select:none;display:flex;align-items:center;gap:8px}.room-section-divider-no-line{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:8px 10px 4px;user-select:none}.room-section-divider-line{height:1px;background:var(--border);opacity:.5;margin:4px 10px}.room-section-divider:after{content:"";flex:1;height:1px;background:var(--border);opacity:.5}.room{padding:8px 12px;border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);font-size:.9rem;display:flex;align-items:center;gap:8px;transition:all .15s ease;margin-bottom:2px;position:relative;flex-wrap:nowrap}.room[draggable=true]{cursor:grab}.room[draggable=true]:active{cursor:grabbing}.room.dragging{opacity:.5}.room.drag-over{border:2px dashed var(--accent)}.room.drag-before{border-top:2px solid var(--accent);margin-top:-2px}.room.drag-after{border-bottom:2px solid var(--accent);margin-bottom:-2px}.room.has-voice .room-name{padding-left:0}.room.has-voice .voice-participants{display:none;padding-left:20px}.room.has-voice.has-participants{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;padding:10px 12px;gap:6px 8px}.room.has-voice.has-participants:before{grid-row:1;grid-column:1}.room.has-voice.has-participants .room-name-row{grid-row:1;grid-column:2}.room.has-voice.has-participants .voice-participants{grid-row:2;grid-column:1 / -1;display:flex;padding-left:16px}.room:before{display:none}.room-voice-icon{font-size:.7em;margin-right:4px;color:var(--accent);opacity:.8}.room.active{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);color:#fff;box-shadow:0 2px 8px #0003}.room:hover:not(.active){background-color:var(--bg-hover);color:var(--text-primary)}.room-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.room-name-row{display:flex;align-items:center;flex:1;min-width:0;gap:4px}.room-invite{opacity:.7}.room-invite-badge{margin-left:auto;padding:2px 6px;background:var(--accent);color:#fff;font-size:.65rem;font-weight:600;border-radius:var(--radius-sm);text-transform:uppercase;flex-shrink:0}.room.unread:before{color:var(--accent);opacity:1}.voice-room{padding:8px 12px;flex-wrap:nowrap}.voice-room .room-name-row{display:flex;align-items:center;flex:1;min-width:0;gap:4px}.voice-participants{display:flex;flex-direction:column;gap:2px;padding:4px 0 6px 16px;overflow:hidden;max-height:140px}.voice-participant-entry{display:flex;align-items:center;gap:4px;padding:4px;border-radius:var(--radius-md);cursor:default}.voice-participant-entry:hover{background:transparent}.room.active.has-participants{overflow:hidden;padding-bottom:6px}.room.active .voice-participants{background:var(--bg-secondary);border-radius:var(--radius-sm);margin:2px -10px -4px;padding:6px 4px 6px 16px;transition:none}.voice-participant-entry.speaking .voice-participant-avatar{box-shadow:0 0 0 2px #2ecc71}.voice-participant-icons{display:flex;gap:4px;margin-left:auto;align-items:center;flex-shrink:0}.voice-participant-icons i{font-size:.75rem;color:var(--text-muted);padding:2px;border-radius:var(--radius-sm);transition:all .15s ease}.voice-participant-icons i:hover{background:var(--bg-hover)}.voice-participant-icons .vp-icon-hidden{display:none}.voice-participant-icons .vp-icon-muted{color:#e74c3c}.voice-participant-icons .vp-icon-video{color:#2ecc71}.voice-participant-icons .vp-icon-screen{color:#3498db}.voice-participant-name{flex:1;min-width:0;font-size:.82rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.external-participant{background:transparent}.external-badge{margin-left:auto;margin-right:4px;color:var(--text-muted);font-size:.7rem}.voice-participant-avatar{width:22px!important;height:22px!important;font-size:.6rem!important;flex-shrink:0;border-radius:50%;transition:box-shadow .15s ease}.voice-participant-avatar .avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.room-header{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.room-header-home{display:flex;align-items:center;gap:8px;cursor:default;min-width:0}.room-header-home.active{background-color:var(--accent);color:#fff;border-radius:4px;padding:4px 8px;margin:-4px -8px}.room-list.space-overview .room{cursor:default}#room-name-text{font-size:.95rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-header-actions{display:flex;gap:4px;flex-shrink:0}.room-header-actions button{background:transparent;border:none;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;padding:6px 10px;font-size:1rem;transition:all .15s ease}.room-header-actions button:hover{color:var(--text-primary);background-color:var(--bg-hover)}#room-join-section input{width:calc(100% - 40px);padding:8px;background-color:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm)}#room-join-section button{width:30px;height:30px;background-color:#2ea043;border:none;color:#fff;border-radius:var(--radius-sm);cursor:pointer}.user-panel{padding:10px 6px 8px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px;flex-shrink:0;margin-top:auto}.user-panel .user-info{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.user-panel #user-id-display{font-size:.85rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-panel-settings-btn{flex-shrink:0;width:30px;height:30px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;transition:color .15s,background .15s}.user-panel-settings-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.members-sidebar{width:240px;max-width:240px;flex-shrink:0;background-color:var(--bg-secondary);padding:14px 12px;display:flex;flex-direction:column;border-left:1px solid var(--border);overflow-y:auto;transition:max-width .25s ease,padding .25s ease,border .25s ease}.members-sidebar.collapsed{width:0;min-width:0;max-width:0;padding:0;border-left:none;overflow:hidden}.members-sidebar-title{color:var(--text-muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:8px 0 8px 10px}.member{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:var(--radius-md);margin-bottom:3px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;font-size:.88rem}.member:hover{background-color:var(--bg-hover);color:var(--text-primary)}.member-section-header{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:14px 10px 8px;opacity:.8}.member-section-header:after{content:"";display:block;height:1px;background:var(--border);margin-top:8px;opacity:.5}.member-avatar-wrap{position:relative;flex-shrink:0;width:32px;height:32px;overflow:visible}.member-avatar-wrap .avatar{margin-right:0;width:32px;height:32px}.member-status{position:absolute;bottom:-2px;right:-2px;width:12px;height:12px;border-radius:50%;border:2px solid var(--bg-secondary);background:var(--text-muted)}.member-status.online{background:#2ecc71}.member-status.idle{background:#f1c40f}.member-status.dnd{background:#e74c3c}.member-verify-btn{margin-left:auto;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.85rem;padding:4px 8px;border-radius:var(--radius-sm);opacity:0;transition:all .15s ease;flex-shrink:0}.member:hover .member-verify-btn{opacity:1}.member-verify-btn:hover{color:var(--accent)}.member-verify-btn.verified{color:#43b581;cursor:default;opacity:1}.voice-bar{background:var(--bg-secondary);border-top:1px solid rgba(255,255,255,.06);padding:6px 8px;display:flex;align-items:center;justify-content:space-between;gap:6px;flex-shrink:0}.voice-bar-status{display:flex;align-items:center;gap:7px;overflow:visible;min-width:0}.voice-bar-icon{color:#2ecc71;font-size:1rem;flex-shrink:0;transition:transform .2s;position:relative;cursor:default}.voice-bar-icon[data-ping]:after{content:attr(data-ping);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--bg-tertiary);color:var(--text-primary);font-size:.7rem;font-family:inherit;white-space:nowrap;padding:3px 7px;border-radius:var(--radius-sm);border:1px solid var(--border);pointer-events:none;opacity:0;transition:opacity .15s;z-index:100}.voice-bar-icon[data-ping]:hover:after{opacity:1}.voice-bar-icon.speaking{animation:voice-pulse .5s ease-in-out}.voice-bar-icon.quality-ok{color:#f39c12}.voice-bar-icon.quality-poor{color:#e74c3c}.voice-bar-info{display:flex;flex-direction:column;overflow:hidden;min-width:0}.voice-bar-connected{font-size:.72rem;font-weight:600;color:#2ecc71;white-space:nowrap}.voice-bar-room-name{font-size:.7rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-bar-controls{display:flex;align-items:center;gap:2px;flex-shrink:0}.voice-bar-ctrl{background:transparent;border:none;color:var(--text-muted);cursor:pointer;width:28px;height:28px;border-radius:var(--radius-sm);font-size:.82rem;display:flex;align-items:center;justify-content:center;transition:color .12s,background .12s}.voice-bar-ctrl:hover{color:var(--text-primary);background:var(--bg-tertiary)}.voice-bar-ctrl-off{color:var(--error)}.voice-bar-ctrl-off:hover{color:var(--error);background:#ed424526}.voice-bar-ctrl-on{color:#2ecc71}.voice-bar-ctrl-on:hover{color:#4ddb8a;background:#2ecc7126}.voice-bar-leave{background:transparent;border:none;color:var(--error);width:28px;height:28px;cursor:pointer;font-size:.88rem;display:flex;align-items:center;justify-content:center;transition:color .12s;flex-shrink:0}.voice-bar-leave:hover{color:var(--error);opacity:.8}#dm-list{overflow-y:auto;flex:1;padding:4px 6px}.dm-room{display:flex;align-items:center;gap:12px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);font-size:.92rem;transition:background-color .12s,color .12s;margin-bottom:2px}.dm-room:before{display:none}.dm-room:hover:not(.active),.dm-room.active{background-color:var(--bg-tertiary);color:var(--text-primary)}.dm-avatar{width:32px;height:32px;font-size:.82rem;border-radius:50%;flex-shrink:0;margin:0}#chat-header{display:flex;align-items:center;padding:0 20px;height:52px;border-bottom:1px solid var(--border);background-color:var(--bg-primary);flex-shrink:0;gap:12px}#space-overview{height:100%;display:flex;flex-direction:column;background-color:var(--bg-primary)}#space-overview{max-width:800px;margin:0 auto}#space-overview-header{display:flex;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border);background-color:var(--bg-primary);flex-shrink:0}#space-overview-header .space-avatar{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;color:#fff;margin-right:16px;flex-shrink:0}#space-overview-header .space-info{flex:1}#space-overview-header h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 4px}#space-overview-header .space-meta{font-size:.85rem;color:var(--text-secondary)}#space-overview-actions{display:flex;gap:8px;padding:16px 24px;border-bottom:1px solid var(--border)}#space-overview-actions button{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:4px;background-color:var(--bg-secondary);color:var(--text-primary);cursor:pointer;font-size:.9rem}#space-overview-actions button:hover{background-color:var(--bg-hover)}#space-overview-rooms{flex:1;overflow-y:auto;padding:8px 0}#space-overview-rooms .section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;font-size:.85rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}#space-overview-rooms .overview-room{display:flex;align-items:center;padding:12px 24px;cursor:pointer;gap:12px}#space-overview-rooms .overview-room:hover{background-color:var(--bg-hover)}#space-overview-rooms .overview-room .drag-handle{color:var(--text-secondary);cursor:grab;padding:8px;display:flex;align-items:center;justify-content:center;opacity:.3;transition:opacity .2s;font-size:14px}#space-overview-rooms .overview-room:hover .drag-handle{opacity:1}#space-overview-rooms .overview-room.dragging{opacity:.5;background-color:var(--bg-hover)}#space-overview-rooms .overview-room.drag-over{background-color:var(--bg-hover)}#space-overview-rooms .overview-room.drag-before{border-top:2px solid var(--accent);margin-top:-2px}#space-overview-rooms .overview-room.drag-after{border-bottom:2px solid var(--accent);margin-bottom:-2px}#space-overview-rooms .overview-room .room-avatar{width:36px;height:36px;border-radius:4px;background-color:var(--accent);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.9rem;flex-shrink:0}#space-overview-rooms .overview-room .room-info{flex:1;min-width:0}#space-overview-rooms .overview-room .room-name{font-size:.95rem;color:var(--text-primary);font-weight:500;display:flex;align-items:center;gap:8px}#space-overview-rooms .overview-room .room-badge{font-size:.7rem;color:var(--text-secondary);background-color:var(--bg-secondary);padding:2px 6px;border-radius:3px;font-weight:400;display:inline-flex;align-items:center;gap:4px}#space-overview-rooms .overview-room .room-meta{font-size:.8rem;color:var(--text-secondary)}#space-overview-rooms .overview-room .open-btn{padding:6px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:4px}#space-overview-rooms .overview-room .open-btn:hover{background-color:var(--bg-secondary);color:var(--text-primary)}#space-overview-rooms .overview-room .settings-btn{padding:6px 8px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:4px}#space-overview-rooms .overview-room .settings-btn:hover{background-color:var(--bg-secondary);color:var(--text-primary)}#chat-header-info{display:flex;flex-direction:column;min-width:0;flex:1}#chat-header-actions{display:flex;gap:4px;margin-left:auto}#message-search-bar{display:flex;align-items:center;gap:6px;padding:6px 14px;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0}#message-search-input{flex:1;background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;padding:5px 10px;color:var(--text-primary);font-size:.9rem;outline:none}#message-search-input:focus{border-color:var(--accent)}#message-search-close{background:none;border:none;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;padding:0 4px;line-height:1}#message-search-close:hover{color:var(--text-primary)}#chat-room-name-row{display:flex;align-items:center;gap:8px;min-width:0}#chat-room-name{font-size:.95rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#chat-room-topic{font-size:.78rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#chat-area{flex:1;display:flex;flex-direction:column;min-height:0;position:relative}#scroll-to-bottom-btn{position:absolute;bottom:72px;right:20px;width:36px;height:36px;border-radius:50%;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000080;transition:background .12s ease,transform .1s ease;z-index:10}#scroll-to-bottom-btn:hover{background:var(--bg-tertiary);transform:translateY(-1px)}#messages{flex:1;display:flex;flex-direction:column;padding:12px 16px 4px;overflow-y:auto;min-height:0;gap:8px}#messages::-webkit-scrollbar{display:none}.messages-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:1rem;color:var(--text-muted)}.messages-loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.messages-loading p{font-size:.9rem;margin:0}.no-room-selected{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;color:var(--text-muted);text-align:center;padding:2rem;background:var(--bg-primary);z-index:5}.no-room-logo{width:100px;height:auto;opacity:.7;animation:no-room-logo-float 3s ease-in-out infinite}@keyframes no-room-logo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.no-room-selected h3{color:var(--text-primary);font-size:1.75rem;font-weight:700;margin:0}.no-room-selected p{font-size:1.1rem;margin:0;max-width:360px;line-height:1.6}.no-room-actions{display:flex;gap:1rem;margin-top:.5rem;flex-wrap:wrap;justify-content:center}.no-room-btn{display:flex;align-items:center;gap:.625rem;padding:.875rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s,transform .1s}.no-room-btn:hover{background:var(--accent-hover)}.no-room-btn:active{transform:scale(.98)}.no-room-btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}@media (max-width: 480px){.no-room-logo{width:80px}.no-room-selected h3{font-size:1.5rem}.no-room-selected p{font-size:1rem}.no-room-actions{flex-direction:column;width:100%;max-width:240px}.no-room-btn{width:100%;justify-content:center}}.no-room-btn-secondary:hover{background:var(--bg-secondary)}@media (max-width: 480px){.no-room-logo{width:56px}.no-room-selected h3{font-size:1.1rem}.no-room-actions{flex-direction:column;width:100%;max-width:200px}.no-room-btn{width:100%;justify-content:center}}.messages-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:.75rem;color:var(--text-muted);text-align:center;padding:2rem}.messages-empty i{font-size:3rem;opacity:.5}.messages-empty p{font-size:.9rem;margin:0;max-width:280px;line-height:1.5}.message-input-container{display:flex;flex-direction:column;padding:0 18px 18px;gap:8px;position:relative}.message-input-row{display:flex;align-items:center;gap:10px;background-color:var(--bg-tertiary);border-radius:var(--radius-lg);padding:6px 8px 6px 12px;border:1px solid var(--border);transition:all .2s ease}.message-input-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb, 255, 90, 90),.15)}#message-input{flex-grow:1;padding:2px 6px;border:none;background:transparent;color:var(--text-primary);font-size:.95rem;outline:none;font-family:var(--default-font);resize:none;overflow-y:hidden;height:24px;max-height:120px;line-height:24px;overflow-wrap:break-word;word-break:break-word;align-self:center}#message-input::placeholder{color:var(--text-muted)}#send-message-btn{padding:0 16px;border:none;border-radius:22px;background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:#fff;cursor:pointer;height:36px;min-width:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:6px;font-size:.9rem;font-weight:600;letter-spacing:.02em;box-shadow:0 2px 10px #00000040;transition:all .2s ease}#send-message-btn:hover{opacity:.92;box-shadow:0 4px 16px #00000059;transform:translateY(-1px)}#send-message-btn:active{transform:scale(.96) translateY(0);box-shadow:0 2px 6px #00000040}#attachment-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:6px 10px;font-size:1.05rem;border-radius:var(--radius-md);transition:all .15s ease;flex-shrink:0}#attachment-btn:hover{background:var(--bg-hover);color:var(--text-primary)}#emoji-input-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:6px 10px;font-size:1.05rem;border-radius:var(--radius-md);transition:all .15s ease;flex-shrink:0}#emoji-input-btn:hover{background:var(--bg-hover);color:var(--text-primary)}#emoji-input-btn:hover{color:var(--text-primary)}.format-toolbar{position:fixed;display:flex;flex-direction:row;align-items:center;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:4px;gap:2px;box-shadow:0 4px 16px #0006;z-index:100;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;width:auto}.format-toolbar.visible{opacity:1;visibility:visible}.format-toolbar:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--bg-secondary)}.fmt-btn{width:34px;height:34px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:all .15s ease}.fmt-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.fmt-btn:active{background:var(--accent);color:#fff}.fmt-divider{width:1px;height:22px;background:var(--border);align-self:center;margin:0 6px}.message-container{display:flex;align-items:flex-start;max-width:72%;gap:4px}.message-container.my-message{align-self:flex-end;flex-direction:row-reverse}.message-container.other-message{align-self:flex-start}.message-container.call-message{align-self:center;flex-direction:column;max-width:300px;padding:8px 16px;background-color:var(--bg-tertiary);border-radius:var(--radius-md);margin:8px 0}.message-container.call-message .avatar{display:none}.message-container.call-message .message{background:none;padding:0}.message-container .avatar{margin-top:18px}.message-container .avatar{align-self:flex-start;margin-top:4px;position:relative;top:2px}.message{padding:8px 12px;border-radius:var(--radius-lg);word-wrap:break-word;position:relative;min-width:60px;max-width:100%}.my-message .message{background-color:var(--msg-mine-bg);color:var(--text-primary);border-bottom-right-radius:var(--radius-sm)}.other-message .message{background-color:var(--msg-other-bg);color:var(--text-primary);border-bottom-left-radius:var(--radius-sm)}.message-header{display:flex;align-items:baseline;gap:8px;margin-bottom:3px}.message-header .sender-name{font-weight:600;font-size:.82rem;color:var(--text-muted)}.my-message .sender-name{color:#e8e8f0a6}.message-header .timestamp{font-size:.72rem;color:var(--text-muted);opacity:.7;margin-left:auto}.message-content{font-size:.92rem;line-height:1.45;overflow-wrap:break-word;word-break:break-word;white-space:pre-wrap}.message-content a{color:var(--accent);text-decoration:none}.message-content a:hover{text-decoration:underline}.message-content .mention{background-color:var(--bg-active);color:var(--accent);padding:1px 4px;border-radius:var(--radius-sm);font-weight:500}.message-content .mention.mention-me{background-color:#ff4d4d33;color:var(--error);font-weight:600}.image-message{background-color:var(--msg-other-bg);border-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-sm);max-width:300px;position:relative}.video-message{background-color:var(--msg-other-bg);border-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-sm);position:relative}.my-message .image-message,.my-message .video-message{background-color:var(--msg-mine-bg);border-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-sm)}.image-message .message-header,.video-message .message-header{padding:4px 0 6px}.image-message .sender-name,.video-message .sender-name{font-weight:600;font-size:.82rem;color:var(--text-muted)}.my-message .image-message .sender-name,.my-message .video-message .sender-name{color:var(--text-muted);opacity:.8}.message-content img{max-width:100%;height:auto;border-radius:10px;margin-top:5px;display:block}.message-actions{position:absolute;top:-42px;right:0;display:none;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:4px;gap:2px;box-shadow:0 4px 16px #0006}.message:hover .message-actions{display:flex}.message-actions:after{content:"";position:absolute;bottom:-6px;right:12px;border:6px solid transparent;border-top-color:var(--bg-secondary);border-bottom:none}.message-action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:.9rem;transition:all .15s ease}.message-action-btn:hover{background:var(--bg-tertiary);color:var(--accent)}.message-action-btn:active{transform:scale(.95)}.message-action-btn.active{color:var(--accent)}.message-action-btn i{font-size:1rem}.reactions{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.reaction{background-color:var(--bg-tertiary);border:1px solid var(--border);border-radius:10px;padding:2px 5px;font-size:.8rem;color:var(--text-primary);transition:var(--transition)}.other-reaction{background-color:var(--accent);border-color:var(--accent-hover)}.typing-indicator{min-height:22px;padding:0 20px 2px;display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-muted);font-style:italic}.typing-avatars{display:flex;align-items:center}.typing-avatars .typing-avatar{width:20px;height:20px;font-size:.6rem;margin-right:-4px;border:2px solid var(--bg-secondary);flex-shrink:0}.typing-avatars .typing-avatar .avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.typing-text{flex-shrink:0;margin-left:4px}.typing-dots{display:flex;align-items:center;gap:3px}.typing-dots span{width:5px;height:5px;border-radius:50%;background-color:var(--text-muted);animation:typing-bounce 1.2s ease-in-out infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}.date-separator{display:flex;align-items:center;gap:10px;margin:12px 0 8px;color:var(--text-muted);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.date-separator:before,.date-separator:after{content:"";flex:1;height:1px;background-color:var(--border)}.unread-divider{display:flex;align-items:center;gap:10px;margin:12px 16px;color:var(--error);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;transition:opacity .6s ease}.unread-divider.fading{opacity:0}.unread-divider:before,.unread-divider:after{content:"";flex:1;height:1px;background:var(--error);opacity:.5}.system-message{text-align:center;font-size:.75rem;color:var(--text-muted);padding:4px 0;margin:2px 0;font-style:italic;user-select:none}.system-message.call-message{color:var(--color-success)}.system-message.call-message i{margin-right:4px}.reply-preview{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background-color:var(--bg-tertiary);border-radius:var(--radius-sm);border-left:3px solid var(--accent)}.reply-preview-content{font-style:italic;color:var(--text-muted);font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cancel-reply{background:none;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:0 4px;flex-shrink:0}.cancel-reply:hover{color:var(--text-primary)}.reply-in-message{padding:4px 8px;background-color:#0000002e;border-radius:var(--radius-sm);margin-bottom:5px;border-left:2px solid var(--accent)}.reply-in-message blockquote{margin:0;padding:0;font-size:.8rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-sender{font-weight:600;color:var(--accent);margin-right:1px}.reply-sender:after{content:": ";font-weight:400;color:var(--text-muted)}.reply-body{opacity:.8}.reply-inline-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.9rem;padding:2px 5px;border-radius:var(--radius-sm);transition:color .12s}.reply-inline-btn:hover{color:var(--text-primary)}#pins-panel{background:var(--bg-secondary);border-bottom:1px solid var(--border);max-height:220px;overflow-y:auto;flex-shrink:0}#pins-panel-header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border)}#pins-panel-close{background:none;border:none;color:var(--text-secondary);font-size:1.1rem;cursor:pointer;line-height:1}#pins-panel-close:hover{color:var(--text-primary)}.pin-item{display:flex;align-items:flex-start;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border)}.pin-item:last-child{border-bottom:none}.pin-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.pin-sender{font-size:.75rem;font-weight:600;color:var(--accent)}.pin-text{font-size:.85rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pin-unpin-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.8rem;padding:2px 4px;flex-shrink:0}.pin-unpin-btn:hover{color:var(--text-primary)}.pins-empty{padding:12px 14px;color:var(--text-secondary);font-size:.85rem}.pinned-message{border-left:3px solid var(--accent);padding-left:4px}.autocomplete-dropdown{position:fixed;z-index:5000;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;overflow:hidden;box-shadow:0 4px 16px #0006;max-height:288px;overflow-y:auto}.autocomplete-item{padding:8px 12px;cursor:pointer;font-size:.9rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:8px}.autocomplete-item:hover,.autocomplete-item.selected{background:var(--accent);color:#fff}.autocomplete-avatar{width:22px;height:22px;font-size:.6rem;flex-shrink:0}.autocomplete-user-info{display:flex;flex-direction:column;gap:1px;min-width:0}.autocomplete-user-name{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-user-id{font-size:.75rem;opacity:.65;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-item.selected .autocomplete-user-id{opacity:.85}.receipt-row{display:flex;justify-content:flex-end;gap:2px;padding:2px 8px 4px}.receipt-avatar{width:16px;height:16px;font-size:.45rem;flex-shrink:0;cursor:default}.message-content code{background-color:#0000004d;border:1px solid var(--border);border-radius:var(--radius-sm);padding:1px 5px;font-family:Consolas,Monaco,monospace;font-size:.88em}.message-content pre{background-color:#0000004d;border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;overflow-x:auto;margin:6px 0 0}.message-content pre code{background:none;border:none;padding:0;font-size:.86em}.message-content strong{font-weight:700}.message-content em{font-style:italic}.message-content.notice-message{opacity:.7;font-style:italic;border-left:3px solid #9e9e9e;padding-left:8px}.message-content del{opacity:.6;text-decoration:line-through}.file-download-link{display:inline-flex;align-items:center;gap:6px;color:var(--accent);text-decoration:none;padding:5px 10px;background-color:#0003;border-radius:var(--radius-sm);border:1px solid var(--border);font-size:.88rem;margin-top:4px}.file-download-link:hover{background-color:#5865f226;border-color:var(--accent);text-decoration:none}.utd-message{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.utd-icon{color:var(--text-muted);font-size:.78rem;flex-shrink:0}.utd-text{color:var(--text-muted);font-style:italic;font-size:.88rem}.utd-hint{color:var(--text-muted);font-size:.78rem;opacity:.75}.deleted-message,.media-error{color:var(--text-muted);font-style:italic;font-size:.88rem}.deleted-message-box{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:#0003;border-radius:var(--radius-md);border:1px dashed var(--border);width:fit-content}.deleted-icon{color:var(--text-muted);font-size:.9rem}.deleted-text{color:var(--text-muted);font-style:italic;font-size:.88rem}.chat-image{max-width:300px;max-height:300px;border-radius:var(--radius-md);display:block;cursor:zoom-in;transition:opacity .15s}.chat-image:hover{opacity:.9}.gif-wrap{display:inline-block;position:relative}.gif-wrap.gif-paused:after{content:"GIF";position:absolute;bottom:6px;left:6px;background:#0009;color:#fff;font-size:10px;font-weight:700;padding:2px 5px;border-radius:3px;pointer-events:none;letter-spacing:.5px}.gif-wrap.gif-paused:hover:after{display:none}.chat-video{max-width:300px;max-height:300px;border-radius:var(--radius-md);display:block}.load-more-spinner{display:flex;justify-content:center;padding:12px 0}mark.search-highlight{background:#faa61a59;color:inherit;border-radius:2px;padding:0 1px}.edit-input{width:100%;background-color:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-md);padding:8px 12px;box-sizing:border-box;font-family:var(--default-font);font-size:.92rem;line-height:1.4}.edit-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #5865f233}.edit-buttons{display:flex;gap:6px;margin-top:8px}.edit-buttons .save-edit{background-color:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:6px 14px;cursor:pointer;font-size:.82rem;font-family:var(--default-font);transition:all .15s ease}.edit-buttons .save-edit:hover{background-color:var(--accent-hover)}.edit-buttons .save-edit:active{transform:scale(.98)}.edit-buttons .cancel-edit{background-color:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 14px;cursor:pointer;font-size:.82rem;font-family:var(--default-font);transition:all .15s ease}.edit-buttons .cancel-edit:hover{background-color:var(--bg-primary);color:var(--text-primary)}#attachment-preview-container{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 16px 48px #00000080;width:90%;max-width:420px;overflow:hidden}.attachment-preview-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px}.attachment-preview-title{font-size:1rem;font-weight:600;color:var(--text-primary)}.attachment-preview-close{background:var(--bg-tertiary);border:none;color:var(--text-muted);font-size:1.1rem;line-height:1;cursor:pointer;padding:6px 8px;border-radius:var(--radius-sm);transition:all .15s}.attachment-preview-close:hover{background:var(--bg-hover);color:var(--text-primary)}.attachment-preview-frame{background:var(--bg-primary);display:flex;align-items:center;justify-content:center;min-height:180px;max-height:340px;padding:8px;box-sizing:border-box;overflow:hidden}#attachment-preview{max-width:100%;max-height:320px;object-fit:contain;display:block}.attachment-preview-meta{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--bg-tertiary)}.attachment-preview-meta .file-icon{width:36px;height:36px;background:var(--primary-color);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.9rem;flex-shrink:0}.attachment-preview-meta .file-info{flex:1;min-width:0}.attachment-preview-filename{font-size:.9rem;color:var(--text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.attachment-preview-size{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.attachment-preview-actions{padding:16px 20px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--border)}.attachment-preview-send{min-width:90px}#sticker-btn{display:none;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:6px;cursor:pointer;color:var(--text-secondary);font-size:1rem}#sticker-btn.widget-active{display:flex}#sticker-btn:hover{background:var(--bg-secondary)}#sticker-picker{position:absolute;bottom:calc(100% + 8px);right:130px;width:350px;height:400px;max-height:80vh;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0006;display:flex;flex-direction:column;z-index:900;overflow:hidden}#sticker-picker iframe{border:none;border-radius:8px}[data-modern-layout] .message-grouped{margin-top:-2px;padding-top:0;padding-bottom:0}[data-modern-layout] .message-grouped .avatar{visibility:hidden}[data-modern-layout] .message-grouped .message-header{display:none}[data-modern-layout] #messages{gap:2px}[data-modern-layout] .message-container{max-width:100%;width:100%;flex-direction:row;align-self:auto;gap:0;padding:2px 0}[data-modern-layout] .message-container.my-message{flex-direction:row;align-self:auto}[data-modern-layout] .message-container .avatar{margin-top:2px;top:0;flex-shrink:0}[data-modern-layout] .message{flex:1;min-width:0;background:none;border-radius:0;padding:0 8px}[data-modern-layout] .my-message .message,[data-modern-layout] .other-message .message{background:none;border-radius:0}[data-modern-layout] .image-message,[data-modern-layout] .video-message,[data-modern-layout] .my-message .image-message,[data-modern-layout] .my-message .video-message{background:none;border-radius:0;max-width:100%}[data-modern-layout] .my-message .sender-name{color:var(--text-muted)}[data-modern-layout] .my-message .image-message .sender-name,[data-modern-layout] .my-message .video-message .sender-name{color:var(--text-muted);opacity:1}[data-modern-layout] .message-header .timestamp{opacity:0;transition:opacity .1s}[data-modern-layout] .message-container:hover .message-header .timestamp{opacity:1}[data-modern-layout] .message-actions{right:0}[data-modern-layout] .message-container:hover{background:var(--bg-secondary);border-radius:var(--radius-sm)}.modal{display:none;position:fixed;z-index:3000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000000b3;display:flex;justify-content:center;align-items:center}#confirm-modal,#prompt-modal{z-index:4000}.popup{background-color:var(--bg-secondary);margin:auto;padding:28px;border:1px solid var(--border);width:90%;max-width:520px;border-radius:var(--radius-lg);position:relative;box-shadow:0 16px 48px #00000080;max-height:85vh;overflow-y:auto}.create-room-popup{max-width:480px}.popup-close-btn{position:absolute;top:14px;right:18px;background:none;border:none;color:var(--text-muted);font-size:22px;font-weight:700;cursor:pointer;line-height:1;transition:color .15s}.popup-close-btn:hover{color:var(--text-primary)}.popup h2{color:var(--text-primary);margin:0 0 24px;font-size:1.2rem;font-weight:700}.modal-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.create-room-header{text-align:center;margin-bottom:28px}.create-room-icon{width:56px;height:56px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.create-room-icon i{font-size:1.4rem;color:var(--accent)}.create-room-header h2{margin:0 0 8px;font-size:1.4rem}.create-room-subtitle{color:var(--text-secondary);font-size:.9rem;margin:0;line-height:1.5}.create-room-form{display:flex;flex-direction:column;gap:20px}.create-field{display:flex;flex-direction:column;gap:8px}.create-field .popup-input{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px;font-size:.95rem;transition:border-color .2s ease}.create-field .popup-input:focus{border-color:var(--accent);outline:none}.create-field>label{font-size:.85rem;font-weight:600;color:var(--text-primary)}.create-field-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border)}.toggle-info{flex:1}.toggle-header{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--text-primary);font-size:.9rem;margin-bottom:4px}.toggle-header i{color:var(--accent);font-size:1rem}.toggle-info p{font-size:.8rem;color:var(--text-muted);margin:0;line-height:1.4}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--bg-primary);border:1px solid var(--border);border-radius:24px;transition:all .2s ease}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background-color:var(--text-muted);border-radius:50%;transition:all .2s ease}.toggle-switch input:checked+.toggle-slider{background-color:var(--accent);border-color:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{background-color:#fff;transform:translate(20px)}.create-room-actions{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.create-room-actions .popup-button{min-width:120px;padding:12px 24px}.context-menu{position:fixed;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:6px;z-index:2000;box-shadow:0 12px 32px #00000080;min-width:180px;backdrop-filter:blur(10px)}.context-menu ul{list-style:none;padding:0;margin:0}.context-menu ul li{padding:10px 14px;cursor:pointer;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9rem;transition:all .15s ease;display:flex;align-items:center}.context-menu ul li:hover{background-color:var(--bg-hover);color:var(--text-primary)}.context-menu ul li i{margin-right:12px;width:16px;text-align:center;color:var(--text-muted)}.context-menu ul li:hover i{color:var(--text-secondary)}.context-menu-danger{color:var(--error)}.context-menu-danger:hover{background-color:#ff6b6b1f!important;color:var(--error)}.context-menu-danger i{color:var(--error)!important}.settings-dialog{display:flex;width:850px;max-width:95vw;height:620px;max-height:90vh;background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 16px 48px #00000080;font-family:var(--default-font)}.settings-nav{width:230px;flex-shrink:0;background:var(--bg-secondary);padding:20px 12px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;border-right:1px solid var(--border)}.settings-nav-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);padding:8px 12px 12px}.settings-nav-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-md);border:none;background:none;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;text-align:left;width:100%;transition:all .15s ease}.settings-nav-item i{width:18px;text-align:center;font-size:.9rem;color:var(--text-muted)}.settings-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.settings-nav-item:hover i{color:var(--text-secondary)}.settings-nav-item.active{background:var(--accent);color:#fff}.settings-nav-item.active i{color:#fff}.settings-nav-divider{height:1px;background:var(--border);margin:10px 12px}.settings-content{flex:1;padding:36px 44px;overflow-y:auto;position:relative}.settings-panel{display:none}.settings-panel.active{display:block}.settings-panel-title{font-size:1.3rem;font-weight:700;color:var(--text-primary);margin:0 0 28px;padding-bottom:18px;border-bottom:1px solid var(--border)}.settings-panel-actions{display:flex;justify-content:flex-end;padding-top:20px;margin-top:12px;border-top:1px solid var(--border)}.settings-section{margin-bottom:32px}.settings-section:last-child{margin-bottom:0}.settings-section h3{color:var(--text-primary);font-size:.85rem;font-weight:600;margin:0 0 16px;padding-bottom:10px}.settings-section-divider{height:1px;background:var(--border);opacity:.5;margin:24px 0}.settings-section-divider:has(+.settings-section[style*="display: none"]){display:none}.settings-section[style*="display: none"]+.settings-section-divider{display:none}.widget-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-tertiary);border-radius:var(--radius-md);margin-bottom:8px}.widget-item:last-child{margin-bottom:0}.widget-item-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);border-radius:var(--radius-sm);color:var(--accent);font-size:1rem}.widget-item-info{flex:1}.widget-item-name{font-weight:600;color:var(--text-primary);font-size:.9rem}.widget-item-desc{font-size:.8rem;color:var(--text-muted);margin-top:2px}.widget-item-actions{display:flex;gap:6px}.widget-item-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:6px 8px;border-radius:var(--radius-sm);transition:all .15s ease}.widget-item-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.widget-item-btn.remove:hover{color:var(--error)}.widget-item-btn.edit:hover{color:var(--accent)}.available-widget-option{display:flex;align-items:center;gap:12px;padding:14px;background:var(--bg-tertiary);border-radius:var(--radius-md);margin-bottom:8px;cursor:pointer;border:2px solid transparent;transition:all .15s ease}.available-widget-option:hover{border-color:var(--accent);background:rgba(var(--accent-rgb, 255, 90, 90),.08)}.available-widget-option .widget-item-icon{width:40px;height:40px;font-size:1.1rem}.widget-settings-back-btn{background:transparent;border:none;color:var(--accent);cursor:pointer;padding:8px 0;margin-bottom:12px;font-size:.9rem;display:flex;align-items:center;gap:6px;transition:opacity .15s ease}.widget-settings-back-btn:hover{opacity:.8}.widget-settings{margin-top:12px;padding:12px;background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border)}.widget-setting-row{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.widget-setting-row:last-child{margin-bottom:0}.widget-setting-row label{font-size:.85rem;font-weight:500;color:var(--text-primary)}.widget-setting-row input{padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem}.widget-setting-row input:focus{outline:none;border-color:var(--accent)}.widget-json-textarea{width:100%;padding:12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:monospace;font-size:.85rem;resize:vertical;box-sizing:border-box}.widget-json-textarea:focus{outline:none;border-color:var(--accent)}[data-panel=audio] .settings-section+.settings-section,[data-panel=keybackup] .settings-section+.settings-section,[data-panel=account] .settings-section+.settings-section,[data-panel=appearance] .settings-section+.settings-section,[data-panel=preferences] .settings-section+.settings-section{border-top:1px solid var(--border);padding-top:24px}.setting-item{display:flex;align-items:center;gap:12px;margin-bottom:12px}.setting-item label{width:110px;min-width:110px;color:var(--text-primary);font-size:.9rem}.setting-item p{color:var(--text-muted);font-size:.8rem;margin:4px 0 0}.setting-item-toggle{align-items:flex-start}.setting-item-info{flex:1;display:flex;flex-direction:column}.setting-item-info label{flex:unset;white-space:nowrap}.setting-item-info p{margin:2px 0 0}.id-display-row{display:flex;align-items:center;gap:8px;flex:1}.id-display{flex:1;font-family:Consolas,Monaco,monospace;font-size:.8rem;background:var(--bg-tertiary);padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;user-select:all}.id-display-row .popup-button{padding:6px 10px;flex-shrink:0}.setting-hint{color:var(--text-muted);font-size:.8rem;margin:0}.settings-hint{color:var(--text-muted);font-size:.8rem;margin-top:16px}.label-optional{color:var(--text-muted);font-weight:400}.create-room-name-row{display:flex;align-items:center;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color .15s;height:38px}.room-name-prefix{padding:0 10px 0 14px;color:var(--text-muted);font-size:1.1rem;font-weight:600;user-select:none;flex-shrink:0;background:var(--bg-tertiary);border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:1px solid var(--border)}.create-room-name-row{display:flex;align-items:center;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;transition:border-color .2s ease}.create-room-name-row:focus-within{border-color:var(--accent)}.create-room-name-row .popup-input{border:none;background:transparent;padding:10px 14px 10px 10px;margin-top:0;flex:1;border-radius:0}.create-room-name-row .popup-input:focus{border:none;outline:none}.profile-avatar-row{display:flex;align-items:center;gap:16px}.profile-avatar-large{width:72px;height:72px;font-size:1.5rem;flex-shrink:0;pointer-events:none;margin-right:0;display:block}.profile-avatar-wrapper{position:relative;display:inline-block;cursor:pointer;border-radius:50%}.profile-avatar-wrapper:hover .profile-avatar-overlay{opacity:1}.profile-avatar-overlay{position:absolute;inset:0;border-radius:50%;background:#0000008c;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.1rem;opacity:0;transition:opacity .15s;pointer-events:none}.profile-avatar-clickable:hover .profile-avatar-overlay{opacity:1}.profile-avatar-upload-btn label{cursor:pointer;font-size:.82rem;color:var(--accent);flex:unset!important}.profile-avatar-upload-btn label:hover{text-decoration:underline}.device-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;margin-bottom:8px;background-color:var(--bg-primary);transition:border-color .15s}.device-item:hover{border-color:var(--accent)}.device-icon{color:var(--text-muted);font-size:1.3rem;width:28px;text-align:center;flex-shrink:0}.device-info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.device-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.device-name{font-weight:500;color:var(--text-primary);font-size:.95rem}.device-id{font-size:.75rem;color:var(--text-secondary);font-family:monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.device-tag{font-size:.7rem;padding:2px 7px;border-radius:10px;font-weight:500}.device-tag-current{background-color:var(--bg-active);color:var(--accent);border:1px solid var(--border)}.device-status{font-size:.75rem;padding:3px 10px;border-radius:12px;font-weight:600;flex-shrink:0}.device-status.verified{background-color:#2ea04326;color:#3fb950;border:1px solid rgba(63,185,80,.3)}.device-status.unverified{background-color:#d2992226;color:#d29922;border:1px solid rgba(210,153,34,.3)}.device-verify-btn{font-size:.8rem;padding:5px 12px;flex-shrink:0}.device-remove-btn{font-size:.8rem;padding:5px 12px;flex-shrink:0;background-color:#ff6b6b14;color:var(--error);border:1px solid rgba(255,107,107,.25)}.device-remove-btn:hover{background-color:#ff6b6b2e}.device-remove-all-btn{width:100%;margin-top:8px;font-size:.82rem}#camera-preview{width:100%;max-width:320px;aspect-ratio:16 / 9;background:#000;border-radius:8px;object-fit:cover;display:block;margin:8px auto 0}.camera-preview-container{position:relative;width:100%;max-width:320px;aspect-ratio:16 / 9;margin:8px auto 0}.camera-preview-container video{width:100%;height:100%;border-radius:8px;object-fit:cover;background:#000}.camera-preview-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--bg-secondary);border:2px dashed var(--border);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;color:var(--text-muted);transition:background .15s,border-color .15s}.camera-preview-placeholder:hover{background:var(--bg-tertiary);border-color:var(--accent);color:var(--accent)}.camera-preview-placeholder i{font-size:1.5rem}.camera-preview-placeholder span{font-size:.8rem}.camera-preview-container.active .camera-preview-placeholder{display:none}.mic-level-wrap{flex:1;min-width:0;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.mic-level-bar{height:100%;width:0%;background:var(--accent);border-radius:4px;transition:width .05s linear}.notif-options-list{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.notif-option{display:flex;align-items:center;gap:10px;padding:10px 14px;font-size:.875rem;color:var(--text-primary);cursor:pointer;transition:background .1s}.notif-option+.notif-option{border-top:1px solid var(--border)}.notif-option:hover{background:var(--bg-tertiary)}.notif-option.active{color:var(--accent);background:#5865f21a}.notif-option i{width:14px;text-align:center}.visibility-options-list{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.visibility-option{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;font-size:.875rem;color:var(--text-primary);cursor:pointer;transition:background .1s}.visibility-option+.visibility-option{border-top:1px solid var(--border)}.visibility-option:hover{background:var(--bg-tertiary)}.visibility-option.active{color:var(--accent);background:#5865f21a}.visibility-option i{width:18px;margin-top:2px;text-align:center}.visibility-option strong{display:block;font-weight:500}.visibility-option small{display:block;font-size:.75rem;color:var(--text-secondary);margin-top:2px}.history-options-list{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.history-option{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;font-size:.875rem;color:var(--text-primary);cursor:pointer;transition:background .1s}.history-option+.history-option{border-top:1px solid var(--border)}.history-option:hover{background:var(--bg-tertiary)}.history-option.active{color:var(--accent);background:#5865f21a}.history-option i{width:18px;margin-top:2px;text-align:center}.history-option strong{display:block;font-weight:500}.history-option small{display:block;font-size:.75rem;color:var(--text-secondary);margin-top:2px}.settings-subsection-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:16px 0 6px}.member-role-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--border);gap:10px}.member-role-row:last-child{border-bottom:none}.member-role-name{flex:1;font-size:.88rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-role-select{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm);padding:3px 6px;font-size:.82rem;font-family:var(--default-font);cursor:pointer;flex-shrink:0}.member-role-select:disabled{opacity:.5;cursor:not-allowed}.space-settings-avatar-row{display:flex;align-items:center;gap:16px;margin-bottom:4px}.space-settings-avatar-preview{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;color:#fff;flex-shrink:0}.space-settings-upload-label{cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-size:.85rem}.settings-section-header{display:flex;align-items:center;gap:8px;user-select:none;margin-bottom:12px}.settings-section-header h3{margin:0}.settings-section-header:hover h3{color:var(--accent)}.settings-section-header .chevron{font-size:.75rem;line-height:1;display:ruby;align-items:center;transition:transform .2s ease;color:var(--text-muted);transform:rotate(-90deg)}.settings-section-header .chevron.open{transform:rotate(0)}.recovery-key-buttons{display:flex;gap:8px;flex-wrap:wrap}.recovery-key-intro{font-size:.85rem;color:var(--text-muted);margin:0 0 16px;line-height:1.5}.recovery-key-box{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px;text-align:center;margin-bottom:10px}.recovery-key-box code{font-family:Consolas,Monaco,monospace;font-size:1.05rem;letter-spacing:.08em;color:var(--accent);user-select:all;word-break:break-all}.recovery-key-box-actions{display:flex;gap:8px;margin-bottom:16px}.recovery-key-box-actions .popup-button{flex:1}.recovery-key-box-actions .popup-button:disabled{opacity:.5;cursor:not-allowed}.recovery-key-saved-label{display:flex;align-items:center;gap:10px;font-size:.88rem;color:var(--text-primary);cursor:pointer;margin-bottom:4px}.recovery-key-saved-label input[type=checkbox]{appearance:auto;-webkit-appearance:auto;width:16px;height:16px;border-radius:3px;border:none;background:none;flex-shrink:0}.recovery-key-saved-label input[type=checkbox]:after{display:none}.recovery-key-saved-label input[type=checkbox]:checked{background:none;border-color:transparent}.recovery-key-restore-status{font-size:.82rem;color:var(--error, #ff6b6b);margin:6px 0 0;min-height:1em}.token-warning{display:flex;align-items:flex-start;gap:8px;background:#ff6b6b14;border:1px solid rgba(255,107,107,.25);border-radius:var(--radius-md);padding:10px 12px;margin-bottom:12px;color:#ff9a9a;font-size:.8rem;line-height:1.45}.token-warning i{flex-shrink:0;margin-top:1px;font-size:.85rem}.token-field{display:flex;align-items:center;gap:0;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;flex:1;min-width:0}.token-field code{flex:1;font-family:Consolas,Monaco,monospace;font-size:.8rem;color:var(--text-primary);padding:10px 14px;word-break:break-all;user-select:all;line-height:1.5}.token-field-actions{display:flex;flex-shrink:0;border-left:1px solid var(--border)}.token-icon-btn{background:none;border:none;padding:0 12px;height:100%;min-height:42px;cursor:pointer;color:var(--text-muted);font-size:.85rem;transition:color .15s,background .15s}.token-icon-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.token-icon-btn+.token-icon-btn{border-left:1px solid var(--border)}#incoming-call-overlay,#active-call-view{position:fixed;bottom:80px;right:20px;z-index:1000;display:none}#incoming-call-overlay.active,#active-call-view.active{display:block}.call-widget{background-color:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:0 8px 32px #0000008c;border:1px solid var(--border);width:300px;overflow:hidden}.call-widget-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:var(--bg-tertiary);border-bottom:1px solid var(--border);font-weight:600;color:var(--text-primary)}.call-widget-header i{color:var(--color-success)}.call-widget-content{padding:16px;text-align:center;color:var(--text-primary)}.call-widget-content p{margin:0;font-size:1.1rem}.caller-avatar{width:80px;height:80px;border-radius:50%;margin:0 auto 16px;border:2px solid var(--color-success);display:flex;align-items:center;justify-content:center;overflow:hidden}.caller-avatar .avatar{width:80px!important;height:80px!important;margin-right:0!important;font-size:2rem}.call-widget-actions{display:flex;justify-content:center;gap:16px;padding:16px;background-color:var(--bg-tertiary);border-top:1px solid var(--border)}.call-widget-btn{width:56px;height:56px;border-radius:50%;border:none;background-color:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center}.call-widget-btn:hover{background-color:var(--bg-tertiary)}.call-widget-btn.muted{background-color:var(--color-danger);color:#fff}.call-btn-accept{width:56px;height:56px;border-radius:50%;border:none;background-color:var(--color-success);color:#fff;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center}.call-btn-accept:hover{background-color:#45a049}.call-btn-decline{width:56px;height:56px;border-radius:50%;border:none;background-color:var(--color-danger);color:#fff;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center}.call-btn-decline:hover{background-color:#c62828}.call-btn-end{width:56px;height:56px;border-radius:50%;border:none;background-color:var(--color-danger);color:#fff;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center}.call-btn-end:hover{background-color:#c62828}.call-widget .participants-grid{display:flex;flex-direction:column;gap:12px;align-items:center}.call-widget .participant{display:flex;flex-direction:column;align-items:center}.call-widget .participant .avatar{width:64px;height:64px;border-radius:50%;background-color:var(--accent);margin-bottom:8px;border:2px solid var(--color-success)}.call-widget .participant .name{color:var(--text-primary);font-size:.9rem}#jitsi-container{display:none;background:#1a1a1a}#jitsi-container.voice-embed{display:flex;flex-direction:column;height:45%;min-height:200px;flex-shrink:0;border-bottom:2px solid var(--border)}#jitsi-container.voice-pip{position:fixed;bottom:80px;right:20px;width:420px;height:270px;display:flex;flex-direction:column;z-index:999;border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0000008c;border:1px solid var(--border)}.voice-embed-header{display:flex;align-items:center;justify-content:space-between;padding:0 10px;height:36px;flex-shrink:0;background:var(--bg-secondary);border-bottom:1px solid var(--border);user-select:none}#jitsi-container.voice-pip .voice-embed-header{cursor:grab}#jitsi-container.voice-pip .voice-embed-header:active{cursor:grabbing}.voice-embed-title{font-size:.82rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-embed-controls{display:flex;gap:4px;flex-shrink:0}.voice-embed-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px 7px;border-radius:var(--radius-sm);font-size:.78rem;line-height:1;transition:color .15s,background .15s}.voice-embed-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.voice-embed-iframe-wrap{flex:1;min-height:0;position:relative}.voice-embed-iframe-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:none}.jitsi-pip-resize{position:absolute;bottom:0;right:0;width:16px;height:16px;cursor:se-resize;background:linear-gradient(135deg,transparent 50%,rgba(255,255,255,.25) 50%);z-index:10}.toast{display:flex;align-items:flex-start;gap:12px;padding:14px 18px;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);max-width:360px;pointer-events:all;animation:banner-slide-in .25s ease-out}.toast-body{flex:1;display:flex;flex-direction:column;gap:2px}.toast-title{color:var(--text-primary);font-size:.9rem}.toast-text{color:var(--text-muted);font-size:.82rem}.toast-close{background:none;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:0;line-height:1;flex-shrink:0;transition:var(--transition)}.toast-close:hover{color:var(--text-primary)}.confirm-notification{position:fixed;bottom:24px;right:24px;z-index:2500;display:flex;align-items:flex-start;gap:12px;padding:16px 18px;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 8px 32px #0006;max-width:340px;animation:confirm-notif-slide-in .25s ease-out}.confirm-notification.hidden{display:none}@keyframes confirm-notif-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.confirm-notification-icon{font-size:1.5rem;color:var(--accent);flex-shrink:0;padding-top:2px}.confirm-notification-content{flex:1;display:flex;flex-direction:column;gap:4px}.confirm-notification-title{color:var(--text-primary);font-size:.95rem;font-weight:600}.confirm-notification-message{color:var(--text-muted);font-size:.85rem;line-height:1.4}.confirm-notification-actions{display:flex;gap:8px;margin-top:10px}.confirm-notif-btn{padding:6px 14px;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:opacity .15s ease}.confirm-notif-btn:hover{opacity:.85}.confirm-notif-btn-ok{background-color:var(--accent);color:#fff}.confirm-notif-btn-cancel{background-color:var(--bg-tertiary);color:var(--text-muted)}#connection-banner{position:fixed;top:0;left:0;right:0;z-index:2000;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:var(--color-danger, #b94a48);color:#fff;font-size:.85rem;font-weight:500}#connection-banner.reconnected{background:var(--color-success, #3ba55d)}#connection-banner i{font-size:.9rem}.verification-banner{position:fixed;bottom:24px;right:24px;z-index:1200;display:flex;align-items:center;gap:14px;padding:14px 18px;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);max-width:380px;animation:banner-slide-in .25s ease-out}.verification-banner-icon{font-size:1.6rem;color:var(--accent);flex-shrink:0}.verification-banner-body{flex:1;display:flex;flex-direction:column;gap:3px}.verification-banner-body strong{color:var(--text-primary);font-size:.9rem}.verification-banner-body span{color:var(--text-muted);font-size:.8rem}.verification-banner-actions{display:flex;gap:8px;flex-shrink:0}.verification-banner-btn{padding:6px 14px;border:none;border-radius:6px;font-size:.82rem;font-weight:500;cursor:pointer;transition:var(--transition)}.verification-banner-btn:hover{opacity:.85}.verification-banner-btn-accept{background:linear-gradient(135deg,var(--color-success, #238636),#2ea043);color:#fff}.verification-banner-btn-decline{background-color:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border)}.verification-flow-popup{max-width:480px;text-align:center}.verification-step{padding:16px 0 8px}.verification-step-text{color:var(--text-muted);font-size:.92rem;line-height:1.5;margin-bottom:16px}.verification-actions{display:flex;justify-content:center;gap:12px;margin-top:20px}.verification-btn-danger{background-color:#6e1a1a;color:#faa}.verification-btn-danger:hover{background-color:#8a2020}.verification-spinner{width:44px;height:44px;border:3px solid var(--bg-tertiary);border-top-color:var(--accent);border-radius:50%;margin:16px auto 24px;animation:spin .8s linear infinite}.verification-done-icon{font-size:3.5rem;margin:12px 0 16px}.verification-done-icon.done-success{color:var(--color-success, #3fb950)}.verification-done-icon.done-failure{color:var(--color-danger, #f85149)}.sas-emoji-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:16px 0}.sas-emoji-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;background-color:var(--bg-primary);border:1px solid var(--border);border-radius:8px;min-width:62px}.sas-emoji-char{font-size:2rem;line-height:1}.sas-emoji-name{font-size:.68rem;color:var(--text-muted);text-transform:capitalize;text-align:center}#image-lightbox{position:fixed;inset:0;background:#000000e6;z-index:9999;display:flex;align-items:center;justify-content:center}#lightbox-img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:var(--radius-sm);box-shadow:0 8px 32px #000c}#lightbox-close{position:fixed;top:16px;right:20px;background:#0009;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.5rem;line-height:1;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}#lightbox-close:hover{background:#ffffff26}.drop-zone{position:absolute;inset:0;background:#000000b3;border:2px dashed var(--border-color);border-radius:var(--radius-md);z-index:100;display:flex;align-items:center;justify-content:center;pointer-events:none}.drop-zone-content{text-align:center;color:var(--text-primary)}.drop-zone-content i{font-size:3rem;margin-bottom:.5rem;color:var(--primary-color)}.drop-zone-content p{font-size:1rem;font-weight:500}@media (max-width: 768px){html,body{overflow:hidden}.mobile-header{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border);position:fixed;top:0;left:0;right:0;z-index:50}.mobile-menu-btn{width:44px;height:44px;border:none;background:transparent;color:var(--text-primary);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background .15s}.mobile-menu-btn:hover{background:var(--bg-tertiary)}#mobile-header-title{font-size:1rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}#mobile-header-title:empty{display:none}#app-container{padding-top:56px;padding-bottom:0;height:100vh;overflow:hidden}.sidebar{position:fixed;left:0;top:56px;bottom:0;width:300px;max-width:85vw;height:calc(100vh - 56px);z-index:200;transform:translate(-100%);transition:transform .25s ease;box-shadow:4px 0 20px #0006}.sidebar.open{transform:translate(0)}.drawer-overlay{position:fixed;inset:0;background:#0009;z-index:150;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.drawer-overlay.visible{opacity:1;visibility:visible}.main-content{width:100%;height:calc(100vh - 56px)}.members-sidebar{display:none}.mobile-members-panel{position:fixed;right:0;top:56px;bottom:0;width:280px;max-width:85vw;background:var(--bg-secondary);z-index:200;transform:translate(100%);transition:transform .25s ease;display:flex;flex-direction:column;box-shadow:-4px 0 20px #0006;visibility:hidden;pointer-events:none}.mobile-members-panel.open{transform:translate(0);visibility:visible;pointer-events:auto}.mobile-space-info-panel{visibility:hidden;pointer-events:none}.mobile-space-info-panel.open{visibility:visible;pointer-events:auto}.mobile-room-info-panel{position:fixed;right:0;top:56px;bottom:0;width:280px;max-width:85vw;background:var(--bg-secondary);z-index:200;transform:translate(100%);transition:transform .25s ease;display:flex;flex-direction:column;box-shadow:-4px 0 20px #0006;visibility:hidden;pointer-events:none}.mobile-room-info-panel.open{transform:translate(0);visibility:visible;pointer-events:auto}.mobile-room-info-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.mobile-room-info-header span{font-size:.9rem;font-weight:600;color:var(--text-primary)}.mobile-room-info-content{flex:1;overflow-y:auto;padding:16px 12px;display:flex;flex-direction:column;align-items:center}.mobile-room-info-content .room-info-actions{width:100%}.mobile-space-info-panel{position:fixed;right:0;top:56px;bottom:0;width:280px;max-width:85vw;background:var(--bg-secondary);z-index:200;transform:translate(100%);transition:transform .25s ease;display:flex;flex-direction:column;box-shadow:-4px 0 20px #0006}.mobile-space-info-panel.open{transform:translate(0)}.mobile-members-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.mobile-members-header span{font-size:.9rem;font-weight:600;color:var(--text-primary)}.mobile-panel-close{width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.mobile-panel-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}#mobile-members-list{flex:1;overflow-y:auto;padding:8px}#mobile-members-list h4{color:var(--text-muted);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;margin:8px 8px 6px}#mobile-members-list .member{padding:8px 10px}#chat-header{padding:0 12px;height:48px}#chat-header-actions{gap:2px}#chat-header-actions .control-btn{width:36px;height:36px}#chat-room-name{font-size:.9rem}.encrypted-badge,.history-badge{display:none}#chat-room-topic{font-size:.72rem}#messages{padding:8px 10px 4px}.message-container{max-width:88%}.message{padding:6px 10px;font-size:.9rem}.message-content{font-size:.9rem;line-height:1.4}.image-message,.video-message{max-width:220px}.chat-image{max-width:220px;max-height:220px}.message-input-container{padding:0 8px 8px}.message-input-row{padding:4px}#message-input{font-size:16px}#send-message-btn{padding:0;width:36px;min-width:36px;height:36px;border-radius:50%}#send-message-btn span{display:none}#emoji-input-btn,#attachment-btn{width:36px;min-width:36px;height:36px}#emoji-input-btn,emoji-picker{display:none!important}#sticker-picker{position:fixed;bottom:70px;left:50%;transform:translate(-50%);width:calc(100vw - 20px);max-width:360px;max-height:70vh;right:auto}#sticker-btn{display:flex}.popup{width:95%;max-width:none;max-height:85vh;margin:10px;padding:16px}.popup h2{font-size:1rem;margin-bottom:16px;padding-right:30px}.close-button{top:10px;right:12px;font-size:1.5rem}.settings-dialog{flex-direction:row;width:100%;height:100%;max-height:none;border-radius:0}.settings-nav{width:64px;min-width:64px;flex-direction:column;padding:8px 4px;overflow-y:auto;overflow-x:hidden;gap:2px}.settings-nav-label,.settings-nav-divider{display:none}.settings-nav-item{flex-direction:column;padding:8px 4px;gap:3px;font-size:.65rem;text-align:center;border-radius:var(--radius-sm)}.settings-nav-item i{font-size:1rem}.settings-content{padding:16px;flex:1;min-width:0}.setting-item{flex-direction:column;align-items:flex-start;gap:8px}.setting-item label{width:auto;min-width:auto}#toast-container{bottom:16px;right:12px;left:12px}.toast{max-width:none;width:100%}#scroll-to-bottom-btn{bottom:70px;right:12px}.voice-bar{padding:6px}.voice-bar-controls{gap:0}.voice-bar-ctrl,.voice-bar-leave{width:36px;height:36px}.typing-indicator{padding:0 14px 4px;font-size:.75rem}.autocomplete-dropdown{max-width:calc(100vw - 20px);left:10px!important;right:10px!important}#pins-panel{max-height:180px}::-webkit-scrollbar{width:4px;height:4px}button,.room,.dm-room,.member,.space-icon{min-height:44px;min-width:44px}.room,.dm-room,.member{min-height:auto;min-width:auto}}@media (max-width: 400px){.sidebar,.mobile-members-panel{width:100%;max-width:none}#chat-header-info{max-width:calc(100% - 100px)}}@media (max-height: 500px) and (orientation: landscape){.mobile-header{height:48px}#app-container{padding-top:48px}.main-content{height:calc(100vh - 48px)}.sidebar,.mobile-members-panel{top:48px}}@media (min-width: 769px){.mobile-header,#room-drawer-overlay,.mobile-members-panel{display:none!important}}
