:root{--accent-primary:#e63946;--accent-secondary:#ff7a00;--bg-app:#0f1115;--surface-card:#181a20;--surface-hover:#23272f;--border-muted:#313642;--text-primary:#f3f4f6;--text-muted:#8e95a5;--status-online:#00e599;--danger:#e63946;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-primary);touch-action:manipulation;-webkit-font-smoothing:antialiased;width:100vw;height:100dvh;position:fixed;overflow:hidden}#root{width:100vw;height:100dvh;display:flex;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}button{cursor:pointer;border:none;outline:none;font-family:inherit}input,textarea,select{border:none;outline:none;font-family:inherit}pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-formula{color:#c678dd}.hljs-section,.hljs-name,.hljs-selector-tag,.hljs-deletion,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:#98c379}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-type,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-number{color:#d19a66}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}.app-layout{background-color:var(--bg-app);width:100vw;height:100vh;display:flex;overflow:hidden}.workspace-header,.chat-header,.voice-header,.user-list-header{-webkit-app-region:drag}button,input,textarea,a,.channel-item,.channel-item-row,.voice-channel-group,.voice-user-row,.user-avatar,.voice-media-card,.sidebar-content,.mobile-toggle-btn,.side-chat-close-btn,.voice-header-actions{-webkit-app-region:no-drag}.loading-screen{background-color:var(--bg-app);flex-direction:column;justify-content:center;align-items:center;gap:16px;width:100vw;height:100vh;display:flex}.spinner{border:4px solid var(--surface-card);border-top-color:var(--accent-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#0f1115d9;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.auth-card{background-color:var(--surface-card);border:1px solid var(--border-muted);border-radius:12px;width:440px;padding:36px 32px;box-shadow:0 12px 32px #0009}.auth-logo-header{flex-direction:column;align-items:center;gap:10px;margin-bottom:16px;display:flex}.auth-logo{object-fit:contain;width:64px;height:64px}.auth-logo-header h1{color:var(--text-primary);letter-spacing:-.5px;font-size:26px;font-weight:800}.auth-card h2{color:var(--text-primary);text-align:center;margin-bottom:6px;font-size:18px}.auth-subtitle{color:var(--text-muted);text-align:center;margin-bottom:24px;font-size:13px}.auth-error{color:var(--accent-primary);text-align:center;background-color:#e6394626;border:1px solid #e639464d;border-radius:6px;margin-bottom:16px;padding:10px 12px;font-size:13px}.form-group{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.form-group label{color:var(--text-muted);letter-spacing:.5px;font-size:11px;font-weight:700}.form-group input,.form-group select{background-color:var(--surface-hover);color:var(--text-primary);border:1px solid var(--border-muted);border-radius:6px;padding:12px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:var(--accent-primary)}.auth-submit-btn{background-color:var(--accent-primary);color:#fff;border-radius:6px;width:100%;margin-top:8px;padding:12px;font-size:15px;font-weight:700;transition:background-color .2s,transform .1s}.auth-submit-btn:hover{background-color:#d62839;transform:translateY(-1px)}.auth-toggle{color:var(--text-muted);text-align:center;margin-top:18px;font-size:13px}.auth-toggle button{color:var(--accent-secondary);background:0 0;padding:0;font-size:13px;font-weight:600}.auth-toggle button:hover{text-decoration:underline}.sidebar{background-color:var(--bg-app);border-right:1px solid var(--border-muted);flex-direction:column;width:300px;height:100vh;transition:width .2s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.sidebar.collapsed{width:58px}.workspace-header{border-bottom:1px solid var(--border-muted);justify-content:space-between;align-items:center;gap:8px;height:58px;padding:0 12px;display:flex}.header-brand{align-items:center;gap:10px;display:flex;overflow:hidden}.header-logo{object-fit:contain;flex-shrink:0;width:32px;height:32px}.workspace-header h2{color:var(--text-primary);letter-spacing:-.3px;white-space:nowrap;font-size:16px;font-weight:800}.sidebar-toggle-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:background-color .15s,color .15s;display:flex}.sidebar-toggle-btn:hover{background-color:var(--surface-hover);color:var(--text-primary)}.domain-badge{color:var(--accent-secondary);font-size:11px;font-weight:600}.channels-container{flex:1;padding:16px 10px;overflow-y:auto}.channel-section{margin-bottom:22px}.section-header{color:var(--text-muted);letter-spacing:.5px;justify-content:space-between;align-items:center;padding:0 8px 8px;font-size:11px;font-weight:800;display:flex}.add-btn{color:var(--text-muted);background:0 0;border-radius:4px;align-items:center;padding:2px;display:flex}.add-btn:hover{color:var(--text-primary);background-color:var(--surface-hover)}.channel-item-row{width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:3px;padding:8px 10px;font-size:14px;transition:all .15s;display:flex}.channel-item-row:hover{background-color:var(--surface-hover);color:var(--text-primary)}.channel-item-row.active{background-color:var(--surface-card);color:var(--text-primary);border-left:3px solid var(--accent-primary);font-weight:600}.channel-item-row.active-voice{color:var(--status-online)}.channel-item-label{align-items:center;gap:8px;display:flex}.delete-channel-btn{color:var(--text-muted);background:0 0;border-radius:4px;padding:3px;display:none}.channel-item-row:hover .delete-channel-btn{align-items:center;display:flex}.delete-channel-btn:hover{color:var(--accent-primary);background-color:#e6394626}.voice-channel-group{margin-bottom:6px}.voice-user-row{color:var(--text-primary);border-radius:4px;align-items:center;gap:8px;padding:4px 8px 4px 34px;font-size:13px;transition:all .2s;display:flex}.voice-user-row.speaking{background-color:#e639461f}.user-avatar-sm.speaking-avatar{box-shadow:0 0 0 2px var(--accent-primary), 0 0 10px #e6394699;animation:1.2s ease-in-out infinite speakingPulse}@keyframes speakingPulse{0%{box-shadow:0 0 0 2px var(--accent-primary), 0 0 6px #e6394680}50%{box-shadow:0 0 0 2px var(--accent-primary), 0 0 14px #e63946d9}to{box-shadow:0 0 0 2px var(--accent-primary), 0 0 6px #e6394680}}.voice-username{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.status-icon.muted{color:var(--accent-primary)}.status-icon.active{color:var(--status-online)}.network-stats-bar{background-color:#0f111599;border:1px solid #ffffff0a;border-radius:6px;justify-content:space-between;align-items:center;margin-top:8px;padding:6px 10px;font-size:10px;display:flex}.net-stat-item{align-items:center;gap:3px;display:flex}.net-icon.good{color:#2ec4b6}.net-icon.fair{color:#ffb703}.net-icon.poor{color:var(--accent-primary)}.net-quality{color:var(--text-primary);font-weight:700}.stat-label{color:var(--text-muted)}.stat-val{color:var(--text-secondary);font-weight:600}.voice-controls-panel{background-color:var(--surface-card);border-top:1px solid var(--border-muted);padding:12px}.voice-info{align-items:center;gap:8px;margin-bottom:10px;display:flex}.voice-active-icon{color:var(--status-online)}.voice-connected-text{color:var(--status-online);font-size:12px;font-weight:700}.voice-room-name{color:var(--text-muted);font-size:11px}.voice-buttons{justify-content:space-between;gap:6px;display:flex}.control-btn{background-color:var(--surface-hover);height:36px;color:var(--text-primary);border-radius:6px;flex:1;justify-content:center;align-items:center;transition:all .15s;display:flex}.control-btn:hover{background-color:var(--border-muted)}.control-btn.active{background-color:var(--status-online);color:#000;font-weight:700}.control-btn.danger{background-color:var(--accent-primary);color:#fff}.user-bar{background-color:var(--surface-card);border-top:1px solid var(--border-muted);box-sizing:border-box;flex-shrink:0;align-items:center;gap:10px;width:100%;height:56px;margin-top:auto;padding:0 12px;display:flex}.user-avatar{aspect-ratio:1;color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:700;display:flex;box-shadow:0 2px 6px #0000004d}.user-details{flex:1}.user-name{color:var(--text-primary);font-size:13px;font-weight:600}.user-status-text{color:var(--status-online);font-size:11px;font-weight:500}.logout-btn{color:var(--text-muted);background:0 0;border-radius:4px;padding:6px}.logout-btn:hover{color:var(--accent-primary);background-color:var(--surface-hover)}.main-content{background-color:var(--surface-card);flex-direction:column;flex:1;display:flex}.chat-view{flex-direction:column;height:100%;display:flex}.chat-header{border-bottom:1px solid var(--border-muted);background-color:var(--bg-app);align-items:center;gap:10px;height:56px;padding:0 20px;display:flex}.header-icon{color:var(--text-muted)}.chat-header h3{color:var(--text-primary);font-size:16px;font-weight:700}.channel-desc{color:var(--text-muted);margin-left:12px;font-size:12px}.messages-list{flex-direction:column;flex:1;gap:18px;padding:20px;display:flex;overflow-y:auto}.message-row{border-radius:6px;gap:14px;padding:4px 8px;transition:background-color .15s;display:flex}.message-row:hover{background-color:var(--surface-hover)}.message-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;display:flex}.message-body{flex:1}.message-header{align-items:center;gap:10px;margin-bottom:4px;display:flex}.author-name{color:var(--text-primary);font-size:14px;font-weight:700}.delete-message-btn{color:var(--text-muted);background:0 0;border-radius:4px;margin-left:auto;padding:3px 6px;display:none}.message-row:hover .delete-message-btn{align-items:center;display:flex}.delete-message-btn:hover{color:var(--accent-primary);background-color:#e6394626}.timestamp{color:var(--text-muted);font-size:11px}.message-content{color:var(--text-primary);word-break:break-word;font-size:14px;line-height:1.5}.code-block{background-color:var(--bg-app);border:1px solid var(--border-muted);border-radius:8px;margin-top:8px;padding:14px;font-family:monospace;font-size:13px;overflow-x:auto}.chat-input-area{gap:10px;padding:0 20px 24px;display:flex}.chat-input-area input{background-color:var(--surface-hover);color:var(--text-primary);border:1px solid var(--border-muted);border-radius:8px;flex:1;padding:14px 18px;font-size:14px}.chat-input-area input:focus{border-color:var(--accent-primary)}.send-btn{background-color:var(--accent-primary);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:48px;transition:background-color .15s;display:flex}.send-btn:hover{background-color:#d62839}.voice-view{background-color:var(--bg-app);flex-direction:column;flex:1;padding:24px;display:flex}.voice-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.voice-header h2{color:var(--text-primary);font-size:22px;font-weight:700}.subtitle{color:var(--text-muted);font-size:13px}.voice-header-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.voice-chat-toggle-btn{background:var(--surface-card);color:var(--text-muted);border:1px solid var(--border-muted);border-radius:8px;justify-content:center;align-items:center;padding:8px 12px;transition:all .15s;display:flex}.voice-chat-toggle-btn:hover{color:var(--text-primary);background-color:var(--surface-hover)}.voice-chat-toggle-btn.active{background-color:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.voice-content-split{flex:1;gap:16px;display:flex;overflow:hidden}.voice-text-chat-container{background-color:var(--surface-card);border:1px solid var(--border-muted);border-radius:10px;flex-direction:column;width:340px;display:flex;overflow:hidden}.voice-text-chat-container .chat-header{display:none}@media (width<=768px){.voice-text-chat-container .chat-header{background-color:var(--surface-hover);border-bottom:1px solid var(--border-muted);justify-content:flex-end;align-items:center;height:48px;padding:0 12px;display:flex}.voice-text-chat-container .chat-header .header-icon,.voice-text-chat-container .chat-header h3,.voice-text-chat-container .chat-header .channel-desc,.voice-text-chat-container .chat-header .mobile-toggle-btn{display:none!important}}.side-chat-close-btn{color:var(--accent-primary);background:0 0;border-radius:6px;justify-content:center;align-items:center;margin-left:auto;padding:6px;display:flex}.side-chat-close-btn:hover{background-color:#e6394626}.voice-chat-overlay{z-index:1140;display:block!important}.media-grid{flex:1;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-content:start;gap:16px;display:grid;overflow-y:auto}.media-card{background-color:var(--surface-card);aspect-ratio:16/9;border:2px solid var(--border-muted);border-radius:10px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:relative;overflow:hidden}.media-card.is-speaking{border-color:var(--accent-primary);box-shadow:0 0 16px #e6394673}.media-card.screen-share-card{grid-column:span 2}.video-stream{object-fit:cover;width:100%;height:100%}.avatar-placeholder{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;font-size:30px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 12px #0006}.avatar-placeholder.speaking-avatar{border:3px solid var(--accent-primary);box-shadow:0 0 0 3px #e639464d,0 0 18px #e63946b3}.card-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f1115d9;border:1px solid #ffffff0d;border-radius:6px;justify-content:space-between;align-items:center;padding:8px 14px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.card-overlay .username{color:var(--text-primary);font-size:13px;font-weight:600}.status-badge-group{align-items:center;gap:6px;display:flex}.badge-icon.muted{color:var(--accent-primary)}.badge-icon.active{color:var(--status-online)}.vol-badge{color:var(--accent-secondary);background:#ff7a0026;border:1px solid #ff7a004d;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.card-vol-btn{color:var(--text-muted);background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.card-vol-btn:hover{color:var(--accent-secondary);background-color:var(--surface-hover)}.user-context-menu{z-index:2000;background-color:var(--surface-card);border:1px solid var(--border-muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;width:240px;padding:16px;position:fixed;box-shadow:0 12px 32px #000000bf}@media (width<=768px){.user-context-menu{width:85vw;max-width:300px;transform:translate(-50%,-50%);top:50%!important;left:50%!important}}.user-context-menu .menu-header{border-bottom:1px solid var(--border-muted);align-items:center;gap:10px;margin-bottom:12px;padding-bottom:10px;display:flex}.user-context-menu .menu-username{color:var(--text-primary);font-size:14px;font-weight:700}.volume-slider-container{flex-direction:column;gap:8px;display:flex}.volume-label{color:var(--text-primary);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.volume-label .vol-percent{color:var(--accent-secondary);margin-left:auto;font-weight:700}.volume-label .muted{color:var(--accent-primary)}.volume-range-input{width:100%;accent-color:var(--accent-primary);cursor:pointer}.user-list-sidebar{background-color:var(--bg-app);border-left:1px solid var(--border-muted);width:220px;padding:20px 14px;transition:width .2s cubic-bezier(.4,0,.2,1),padding .2s cubic-bezier(.4,0,.2,1)}.user-list-sidebar.collapsed{width:58px;padding:16px 8px}.user-list-header{color:var(--text-muted);letter-spacing:.5px;align-items:center;gap:8px;margin-bottom:20px;font-size:12px;font-weight:800;display:flex}.user-group{margin-bottom:22px}.group-title{color:var(--text-muted);margin-bottom:10px;font-size:11px;font-weight:700}.user-list-item{border-radius:6px;align-items:center;gap:10px;padding:6px 8px;transition:background-color .15s;display:flex}.user-list-item:hover{background-color:var(--surface-hover)}.user-list-item.offline{opacity:.45}.avatar-wrapper{position:relative}.user-avatar-sm{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:flex}.status-dot{border:2px solid var(--bg-app);border-radius:50%;width:9px;height:9px;position:absolute;bottom:-1px;right:-1px}.status-dot.online{background-color:var(--status-online)}.status-dot.offline{background-color:var(--text-muted)}.user-list-name{color:var(--text-primary);font-size:13px;font-weight:500}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--surface-card);border:1px solid var(--border-muted);border-radius:12px;width:420px;padding:28px}.modal-content h3{color:var(--text-primary);margin-bottom:18px;font-size:18px}.modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.btn-cancel{color:var(--text-primary);background:0 0;border-radius:6px;padding:10px 18px}.btn-cancel:hover{background-color:var(--surface-hover)}.btn-confirm{background-color:var(--accent-primary);color:#fff;border-radius:6px;padding:10px 18px;font-weight:600}.btn-confirm:hover{background-color:#d62839}.download-app-btn,.settings-btn{color:var(--text-muted);background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:6px;text-decoration:none;transition:all .15s;display:flex}.download-app-btn:hover,.settings-btn:hover{color:var(--accent-secondary);background-color:var(--surface-hover)}.settings-btn:hover{color:var(--text-primary);background-color:var(--surface-hover)}.settings-modal-content{background-color:var(--surface-card);border:1px solid var(--border-muted);border-radius:12px;width:520px;max-height:90vh;padding:28px;overflow-y:auto;box-shadow:0 16px 40px #000000b3}.settings-modal-header{border-bottom:1px solid var(--border-muted);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.settings-modal-header .title-group{align-items:center;gap:10px;display:flex}.settings-modal-header .settings-icon{color:var(--accent-secondary)}.settings-modal-header h2{color:var(--text-primary);font-size:18px;font-weight:700}.settings-modal-header .close-btn{color:var(--text-muted);background:0 0;border-radius:4px;padding:4px}.settings-modal-header .close-btn:hover{color:var(--accent-primary);background-color:var(--surface-hover)}.settings-footer{border-top:1px solid var(--border-muted);justify-content:space-between;align-items:center;margin-top:24px;padding-top:14px;font-size:12px;display:flex}.version-info-group{align-items:center;gap:8px;display:flex}.settings-footer-logo{object-fit:contain;width:20px;height:20px}.app-version-text{color:var(--text-muted);font-weight:500}.app-status-badge{color:#2ec4b6;font-weight:600}.permissions-box{background-color:var(--bg-app);border:1px solid var(--border-muted);border-radius:8px;flex-direction:column;gap:10px;margin-bottom:20px;padding:14px;display:flex}.perm-item{color:var(--text-primary);align-items:center;gap:10px;font-size:13px;display:flex}.perm-item .badge{border-radius:4px;align-items:center;gap:4px;margin-left:auto;padding:2px 8px;font-size:12px;font-weight:600;display:flex}.perm-item .badge.granted{color:var(--status-online);background:#00e59926}.perm-item .badge.denied{color:var(--accent-primary);background:#e6394626}.request-perm-btn{background-color:var(--accent-secondary);color:#000;border-radius:6px;margin-top:6px;padding:8px 12px;font-size:12px;font-weight:700}.settings-group{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.settings-group label{color:var(--text-muted);letter-spacing:.5px;font-size:11px;font-weight:800}.settings-group select{background-color:var(--surface-hover);color:var(--text-primary);border:1px solid var(--border-muted);border-radius:6px;padding:10px 12px;font-size:13px}.test-row{align-items:center;gap:12px;margin-top:4px;display:flex}.test-btn{background-color:var(--surface-hover);color:var(--text-primary);border:1px solid var(--border-muted);border-radius:6px;align-self:flex-start;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.test-btn:hover{border-color:var(--accent-primary);background-color:var(--bg-app)}.test-btn.active{background-color:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.mic-level-bar-container{background-color:var(--bg-app);border:1px solid var(--border-muted);border-radius:5px;flex:1;height:10px;overflow:hidden}.mic-level-fill{background-color:var(--status-online);height:100%;transition:width 50ms}.cam-preview-box{aspect-ratio:16/9;border:1px solid var(--border-muted);background-color:#000;border-radius:8px;margin-top:10px;overflow:hidden}.preview-video{object-fit:cover;width:100%;height:100%}.mobile-toggle-btn{color:var(--text-primary);background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:6px;display:none}.mobile-toggle-btn:hover{background-color:var(--surface-hover)}.mobile-toggle-btn.right{margin-left:auto}.mobile-drawer-overlay{display:none}@media (width<=768px){.mobile-toggle-btn{display:flex}.mobile-drawer-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1050;background:#000000a6;display:block;position:fixed;inset:0}.app-layout{width:100vw;height:100dvh;position:relative;overflow:hidden}.sidebar{z-index:1100;width:80vw;max-width:300px;transition:transform .25s cubic-bezier(.4,0,.2,1);display:none;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:4px 0 20px #00000080}.app-layout.show-sidebar .sidebar{display:flex;transform:translate(0)}.user-list-sidebar{z-index:1100;width:75vw;max-width:260px;transition:transform .25s cubic-bezier(.4,0,.2,1);display:none;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-4px 0 20px #00000080}.app-layout.show-users .user-list-sidebar{flex-direction:column;display:flex;transform:translate(0)}.user-list-header{text-align:center;border-bottom:1px solid var(--border-muted);flex-direction:column;justify-content:center;align-items:center;gap:6px;margin-bottom:16px;padding:12px 0 16px}.main-content{flex:1;width:100vw;height:100dvh;overflow:hidden}.chat-view,.voice-view{width:100%;height:100%;overflow:hidden}.chat-header,.voice-header{gap:8px;padding:0 12px}.chat-header h3,.voice-header h2{white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.chat-input-area{padding:10px}.auth-card{width:90vw;padding:24px 20px}.voice-content-split{flex-direction:row;position:relative;overflow:hidden}.voice-text-chat-container{z-index:1150;border-radius:0;width:80vw;max-width:320px;height:100dvh;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 24px #000000a6}.media-grid{flex:1;grid-template-columns:1fr;grid-auto-rows:minmax(180px,1fr);gap:10px;padding:10px;overflow-y:auto}.media-card.screen-share-card{grid-column:span 1}.settings-modal-content{width:92vw;max-height:85dvh;padding:20px}}.update-card{background-color:var(--surface-hover);border:1px solid var(--border-muted);border-radius:8px;flex-direction:column;gap:14px;padding:16px;display:flex}.update-version-row{color:var(--text-primary);gap:20px;margin-bottom:6px;font-size:13px;display:flex}.update-status-msg{color:var(--text-muted);align-items:center;gap:6px;font-size:13px;display:flex}.update-status-msg .status-good{color:var(--status-online);align-items:center;gap:6px;font-weight:600;display:flex}.update-status-msg .status-alert{color:var(--accent-secondary);align-items:center;gap:6px;font-weight:600;display:flex}.update-actions{flex-wrap:wrap;gap:10px;display:flex}.update-action-btn{cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.update-action-btn.primary{background-color:var(--accent-primary);color:#fff}.update-action-btn.primary:hover{background-color:#d62839}.update-action-btn.success{color:#fff;background-color:#2dc653}.update-action-btn.success:hover{background-color:#25a244}.update-action-btn.secondary{background-color:var(--surface-card);color:var(--text-primary);border:1px solid var(--border-muted)}.update-action-btn.secondary:hover{background-color:var(--surface-hover)}.user-list-item.clickable{cursor:pointer}.user-list-item.clickable:hover{background-color:var(--surface-hover)}.profile-card-modal{background-color:var(--surface-card);border:1px solid var(--border-muted);border-radius:12px;width:420px;overflow:hidden;box-shadow:0 12px 36px #0009}.profile-banner{height:90px;transition:background-color .2s;position:relative}.close-modal-btn{color:#fff;cursor:pointer;background:#0006;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;top:12px;right:12px}.close-modal-btn:hover{background:#000000b3}.profile-header-content{flex-direction:column;align-items:flex-start;padding:0 20px 16px;display:flex;position:relative}.profile-avatar{border:4px solid var(--surface-card);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin-top:-36px;font-size:28px;font-weight:700;display:flex}.profile-user-info{margin-top:8px}.profile-username{color:var(--text-primary);margin:0;font-size:20px;font-weight:700}.profile-status-badge{font-size:12px;font-weight:600}.profile-status-badge.online{color:#57f287}.profile-status-badge.offline{color:var(--text-muted)}.profile-actions{flex-wrap:wrap;gap:10px;width:100%;margin-top:14px;display:flex}.action-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.action-btn.primary{background-color:var(--accent-primary);color:#fff}.action-btn.primary:hover{background-color:#d62839}.action-btn.secondary{background-color:var(--surface-hover);color:var(--text-primary);border:1px solid var(--border-muted)}.action-btn.secondary:hover{background-color:#ffffff1a}.action-btn.success{color:#111;background-color:#57f287}.action-btn.danger{color:#fff;background-color:#ed4245}.request-badge{background-color:var(--surface-hover);color:var(--text-muted);border-radius:6px;padding:6px 12px;font-size:12px}.friend-request-choice{gap:8px;display:flex}.profile-body{border-top:1px solid var(--border-muted);padding:16px 20px 20px}.profile-section{margin-bottom:16px}.section-label{color:var(--text-muted);letter-spacing:.5px;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.bio-text{color:var(--text-primary);margin:0;font-size:14px;line-height:1.5}.bio-input{background-color:var(--bg-app);width:100%;height:70px;color:var(--text-primary);border:1px solid var(--border-muted);resize:none;border-radius:6px;padding:8px 12px;font-size:13px}.color-palette{gap:8px;display:flex}.color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:24px;height:24px}.color-swatch.selected{border-color:#fff;transform:scale(1.15)}.profile-edit-footer{justify-content:flex-end;gap:10px;margin-top:10px;display:flex}.direct-message-view .pm-header{justify-content:space-between;align-items:center;display:flex}.pm-user-header-info{align-items:center;gap:10px;display:flex}.pm-user-header-info h3{color:var(--text-primary);margin:0;font-size:16px}.status-dot-inline{border-radius:50%;width:8px;height:8px}.status-dot-inline.online{background-color:#57f287}.status-dot-inline.offline{background-color:var(--text-muted)}.close-pm-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px}.close-pm-btn:hover{color:var(--text-primary);background-color:var(--surface-hover)}.close-pm-btn:hover .sidebar-body-split{flex-direction:row;flex:1;width:100%;display:flex;position:relative;overflow:hidden}.close-pm-btn:hover .workspaces-column{border-right:1px solid var(--border-muted);background-color:#111214;flex-direction:column;flex-shrink:0;align-items:center;width:54px;height:100%;display:flex}.close-pm-btn:hover .channels-column{background-color:var(--bg-app);flex-direction:column;flex:1;height:100%;display:flex;overflow:hidden}.close-pm-btn:hover .active-studio-bar{border-bottom:1px solid var(--border-muted);background-color:var(--surface-card);flex-direction:row;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;height:48px;padding:0 14px;display:flex}.close-pm-btn:hover .active-studio-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:800;overflow:hidden}.close-pm-btn:hover .invite-code-btn{background-color:var(--surface-hover);color:var(--text-primary);border:1px solid var(--border-muted);cursor:pointer;white-space:nowrap;border-radius:6px;flex-shrink:0;padding:5px 12px;font-size:12px;font-weight:700;transition:all .15s}.close-pm-btn:hover .invite-code-btn:hover{background-color:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.close-pm-btn:hover .workspace-switcher-bar{flex-direction:column;align-items:center;width:100%;height:100%;padding:10px 0;display:flex}.close-pm-btn:hover .workspace-list{flex-direction:column;flex:1;align-items:center;gap:10px;width:100%;display:flex;overflow-y:auto}.close-pm-btn:hover .workspace-icon-item{color:#fff;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:13px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 2px 6px #0006}.close-pm-btn:hover .workspace-icon-item:hover{transform:scale(1.08);box-shadow:0 4px 10px #00000080}.close-pm-btn:hover .workspace-icon-item.active{box-shadow:0 0 0 2px var(--text-primary), 0 0 0 4px var(--accent-primary)}.close-pm-btn:hover .add-workspace-btn{background-color:var(--surface-card);color:#57f287;cursor:pointer;border:1px dashed #57f28799;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;transition:all .2s;display:flex}.close-pm-btn:hover .add-workspace-btn:hover{color:#111;background-color:#57f287;border-style:solid}.close-pm-btn:hover .workspace-modal{background-color:var(--surface-card);border:1px solid var(--border-muted);width:440px;color:var(--text-primary);border-radius:12px;padding:24px;box-shadow:0 16px 36px #0009}.close-pm-btn:hover .modal-tabs{border-bottom:1px solid var(--border-muted);gap:8px;margin-bottom:20px;padding-bottom:8px;display:flex}.close-pm-btn:hover .tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600;transition:all .15s}.close-pm-btn:hover .tab-btn.active{color:var(--text-primary);background-color:var(--surface-hover)}
