.modal-overlay{z-index:var(--z-modal);animation:fadeIn var(--transition-fast) forwards;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-backdrop{background-color:#000000d9;position:absolute;inset:0}.modal-container{background-color:var(--bg-primary);border-radius:var(--radius-sm);max-height:calc(100vh - 40px);box-shadow:var(--shadow-popup);animation:scaleIn var(--transition-normal) forwards;z-index:1;flex-direction:column;display:flex;position:relative}.modal-sm{width:100%;max-width:400px}.modal-md{width:100%;max-width:500px}.modal-lg{width:100%;max-width:600px}.modal-xl{width:100%;max-width:800px}.modal-header{padding:var(--spacing-lg) var(--spacing-lg) 0;justify-content:space-between;align-items:center;display:flex}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--header-primary)}.modal-close-btn{width:32px;height:32px;color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);justify-content:center;align-items:center;display:flex}.modal-close-btn:hover{color:var(--interactive-hover);background-color:var(--bg-modifier-hover)}.modal-body{padding:var(--spacing-lg);flex:1;overflow-y:auto}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--bg-secondary);border-radius:0 0 var(--radius-sm) var(--radius-sm);display:flex}@media (max-width:768px){.modal-container{margin:var(--spacing-md);max-height:calc(100vh - 32px)}.modal-sm,.modal-md,.modal-lg,.modal-xl{max-width:calc(100vw - 32px)}}.avatar{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:visible}.avatar-xs{width:16px;min-width:16px;height:16px;min-height:16px;font-size:8px}.avatar-sm{width:24px;min-width:24px;height:24px;min-height:24px;font-size:10px}.avatar-md{width:32px;min-width:32px;height:32px;min-height:32px;font-size:12px}.avatar-lg{width:40px;min-width:40px;height:40px;min-height:40px;font-size:14px}.avatar-xl{width:80px;min-width:80px;height:80px;min-height:80px;font-size:28px}.avatar-xxl{width:120px;min-width:120px;height:120px;min-height:120px;font-size:42px}.avatar-image{object-fit:cover;border-radius:var(--radius-full);width:100%;height:100%}.avatar-fallback{width:100%;height:100%;font-weight:var(--font-weight-semibold);color:#fff;border-radius:var(--radius-full);-webkit-user-select:none;user-select:none;text-transform:uppercase;letter-spacing:.5px;justify-content:center;align-items:center;display:flex}.avatar-status{border-radius:var(--radius-full);border:3px solid var(--bg-secondary);box-sizing:border-box;position:absolute}.avatar-xs .avatar-status{border-width:2px;width:8px;height:8px;bottom:-2px;right:-2px}.avatar-sm .avatar-status{border-width:2px;width:10px;height:10px;bottom:-2px;right:-2px}.avatar-md .avatar-status{border-width:3px;width:12px;height:12px;bottom:-2px;right:-2px}.avatar-lg .avatar-status{border-width:3px;width:14px;height:14px;bottom:-1px;right:-1px}.avatar-xl .avatar-status{border-width:4px;width:20px;height:20px;bottom:2px;right:2px}.avatar-xxl .avatar-status{border-width:4px;width:24px;height:24px;bottom:4px;right:4px}.avatar-status-online{background-color:var(--color-status-online)}.avatar-status-idle{background-color:var(--color-status-idle)}.avatar-status-dnd{background-color:var(--color-status-dnd)}.avatar-status-offline{background-color:var(--color-status-offline)}.avatar-interactive{cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast)}.avatar-interactive:hover{transform:scale(1.05)}.avatar-group{flex-direction:row-reverse;display:flex}.avatar-group .avatar{border:2px solid var(--bg-primary);margin-left:-8px}.avatar-group .avatar:last-child{margin-left:0}.user-profile-modal .modal-content{max-width:340px;padding:0;overflow:hidden}.profile-banner{background-position:50%;background-size:cover;height:120px;position:relative}.profile-banner:after{content:"";background:linear-gradient(#0000,#0000004d);height:40px;position:absolute;bottom:0;left:0;right:0}.profile-header{padding:0 var(--spacing-lg);z-index:1;justify-content:space-between;align-items:flex-start;margin-top:-40px;display:flex;position:relative}.profile-avatar-container{position:relative}.profile-avatar-container .avatar{border:6px solid var(--bg-floating)}.profile-actions{gap:var(--spacing-xs);padding-top:var(--spacing-md);display:flex}.profile-action-btn{background:var(--bg-secondary);border-radius:var(--radius-full);width:36px;height:36px;color:var(--interactive-normal);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.profile-action-btn:hover{background:var(--bg-modifier-hover);color:var(--interactive-hover);transform:scale(1.1)}.profile-action-btn.primary{background:var(--color-primary);color:#fff}.profile-action-btn.primary:hover{background:#4752c4}.profile-action-btn.success{background:var(--color-success);color:#fff}.profile-action-btn.success:hover{background:#1a7f45}.profile-card{padding:var(--spacing-lg);margin:var(--spacing-sm) var(--spacing-md) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md)}.profile-name-section{margin-bottom:var(--spacing-sm)}.profile-display-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--header-primary);margin:0;line-height:1.2}.profile-username{font-size:var(--font-size-sm);color:var(--text-muted)}.profile-custom-status{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm);margin-top:var(--spacing-sm);display:flex}.status-emoji{font-size:var(--font-size-md)}.status-text{font-size:var(--font-size-sm);color:var(--text-primary)}.profile-divider{background:var(--bg-modifier-accent);height:1px;margin:var(--spacing-md) 0}.profile-tabs{gap:var(--spacing-lg);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--bg-modifier-accent);padding-bottom:var(--spacing-sm);display:flex}.profile-tab{padding:var(--spacing-xs) 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--interactive-normal);cursor:pointer;transition:all var(--transition-fast);padding-bottom:var(--spacing-sm);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-9px}.profile-tab:hover{color:var(--interactive-hover)}.profile-tab.active{color:var(--header-primary);border-bottom-color:var(--color-primary)}.profile-tab-content{max-height:300px;overflow-y:auto}.about-section{gap:var(--spacing-md);flex-direction:column;display:flex}.about-block{gap:var(--spacing-xs);flex-direction:column;display:flex}.about-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--header-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0}.about-text{font-size:var(--font-size-sm);color:var(--text-primary);line-height:var(--line-height-relaxed);white-space:pre-wrap;margin:0}.roles-list{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.role-badge{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xxs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-primary);background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--bg-modifier-accent);display:inline-flex}.role-dot{border-radius:var(--radius-full);background-color:var(--role-color);width:12px;height:12px}.note-input{width:100%;min-height:60px;padding:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-primary);background:var(--bg-tertiary);border-radius:var(--radius-sm);resize:none;transition:all var(--transition-fast);border:1px solid #0000;font-family:inherit}.note-input::placeholder{color:var(--text-muted)}.note-input:hover{border-color:var(--bg-modifier-accent)}.note-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #5865f226}.mutual-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.mutual-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);display:flex}.mutual-item:hover{background:var(--bg-modifier-hover)}.mutual-icon{border-radius:var(--radius-full);background:var(--bg-tertiary);width:32px;height:32px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);justify-content:center;align-items:center;display:flex;overflow:hidden}.mutual-icon img{object-fit:cover;width:100%;height:100%}.mutual-name{font-size:var(--font-size-sm);color:var(--text-primary)}.mutual-friends-info{padding:var(--spacing-md);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm)}@media (max-width:480px){.user-profile-modal .modal-content{border-radius:0;max-width:100%;height:100vh;max-height:100vh;margin:0}.profile-header{align-items:flex-start;gap:var(--spacing-md);flex-direction:column}.profile-actions{justify-content:flex-start;width:100%;padding-top:0}}@media (prefers-reduced-motion:reduce){.profile-action-btn{transition:none}}.image-viewer-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;background:#000000e6;flex-direction:column;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.image-viewer-toolbar{padding:var(--spacing-md) var(--spacing-lg);z-index:10;background:linear-gradient(#0009 0%,#0000 100%);justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:0;right:0}.toolbar-left,.toolbar-center,.toolbar-right{align-items:center;gap:var(--spacing-sm);display:flex}.toolbar-left{min-width:100px}.toolbar-right{justify-content:flex-end;min-width:100px}.image-counter{font-size:var(--font-size-sm);color:#fffc;font-weight:var(--font-weight-medium)}.zoom-level{font-size:var(--font-size-sm);color:#fffc;text-align:center;min-width:50px}.toolbar-btn{border-radius:var(--radius-sm);color:#fffc;cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);background:#ffffff1a;border:none;justify-content:center;align-items:center;display:flex}.toolbar-btn:hover{color:#fff;background:#fff3}.toolbar-btn.close{color:#f23f43;background:#f23f4333}.toolbar-btn.close:hover{color:#fff;background:#f23f4366}.nav-arrow{border-radius:var(--radius-full);color:#fffc;cursor:pointer;width:48px;height:48px;transition:all var(--transition-fast);z-index:10;background:#00000080;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.nav-arrow:hover{color:#fff;background:#000000b3;transform:translateY(-50%)scale(1.1)}.nav-arrow-left{left:var(--spacing-lg)}.nav-arrow-right{right:var(--spacing-lg)}.image-viewer-content{padding:60px var(--spacing-xxxl);flex:1;justify-content:center;align-items:center;display:flex;overflow:hidden}.viewer-image{object-fit:contain;-webkit-user-select:none;user-select:none;border-radius:var(--radius-sm);max-width:100%;max-height:100%;transition:transform .1s ease-out;box-shadow:0 8px 32px #00000080}.image-viewer-thumbnails{justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(#0000 0%,#0009 100%);display:flex;position:absolute;bottom:0;left:0;right:0;overflow-x:auto}.image-viewer-thumbnails::-webkit-scrollbar{height:4px}.image-viewer-thumbnails::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:2px}.thumbnail{border-radius:var(--radius-sm);cursor:pointer;width:60px;height:60px;transition:all var(--transition-fast);opacity:.6;background:0 0;border:2px solid #0000;flex-shrink:0;padding:0;overflow:hidden}.thumbnail:hover{opacity:.9;border-color:#ffffff4d}.thumbnail.active{opacity:1;border-color:var(--color-primary);box-shadow:0 0 0 2px #5865f24d}.thumbnail img{object-fit:cover;width:100%;height:100%}.image-viewer-loading{justify-content:center;align-items:center;gap:var(--spacing-md);color:#ffffffb3;flex-direction:column;display:flex}.image-viewer-loading .spinner{border:3px solid #fff3;border-top-color:var(--color-primary);border-radius:var(--radius-full);width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.image-viewer-error{justify-content:center;align-items:center;gap:var(--spacing-md);color:#ffffffb3;flex-direction:column;display:flex}.image-viewer-error svg{opacity:.5;width:48px;height:48px}@media (max-width:768px){.image-viewer-toolbar{padding:var(--spacing-sm)}.toolbar-btn{width:32px;height:32px}.zoom-level{display:none}.nav-arrow{width:40px;height:40px}.nav-arrow-left{left:var(--spacing-sm)}.nav-arrow-right{right:var(--spacing-sm)}.image-viewer-content{padding:50px var(--spacing-md)}.image-viewer-thumbnails{padding:var(--spacing-sm);gap:var(--spacing-xs)}.thumbnail{width:48px;height:48px}}@media (prefers-reduced-motion:reduce){.image-viewer-overlay{animation:none}.viewer-image{transition:none}.nav-arrow:hover{transform:translateY(-50%)}}.create-server-modal .modal-content{padding:0;overflow:hidden}.modal-header-center{text-align:center;padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg)}.modal-title{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);color:var(--header-primary);margin:0 0 var(--spacing-sm);background:linear-gradient(135deg,#fff 0%,#b5bac1 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.modal-subtitle{font-size:var(--font-size-md);color:var(--text-muted);line-height:var(--line-height-relaxed);margin:0}.back-button{top:var(--spacing-md);left:var(--spacing-md);border-radius:var(--radius-full);width:32px;height:32px;color:var(--interactive-normal);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.back-button:hover{background:var(--bg-modifier-hover);color:var(--interactive-hover)}.text-link{color:var(--text-link);cursor:pointer;font-size:inherit;transition:opacity var(--transition-fast);background:0 0;border:none;padding:0}.text-link:hover{opacity:.8;text-decoration:underline}.create-server-choice{padding-bottom:var(--spacing-xl)}.choice-options{padding:0 var(--spacing-lg)}.choice-option{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-md);border:1px solid var(--bg-modifier-accent);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;display:flex}.choice-option:hover{background:var(--bg-modifier-hover);border-color:var(--bg-modifier-hover)}.choice-icon{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.choice-icon.create{background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);color:#fff}.choice-icon.join{background:linear-gradient(135deg, var(--color-success) 0%, #1a7f45 100%);color:#fff}.choice-icon svg{width:24px;height:24px}.choice-content{flex-direction:column;flex:1;gap:2px;display:flex}.choice-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--header-primary)}.choice-desc{font-size:var(--font-size-sm);color:var(--text-muted)}.choice-arrow{font-size:var(--font-size-xl);color:var(--text-muted);transition:transform var(--transition-fast)}.choice-option:hover .choice-arrow{color:var(--header-primary);transform:translate(4px)}.choice-divider{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) 0;display:flex}.choice-divider:before,.choice-divider:after{content:"";background:var(--bg-modifier-accent);flex:1;height:1px}.choice-divider span{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-muted);text-transform:uppercase}.create-server-template{padding-bottom:var(--spacing-lg);position:relative}.template-list{gap:var(--spacing-xs);padding:0 var(--spacing-lg);flex-direction:column;max-height:300px;display:flex;overflow-y:auto}.template-option{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--bg-modifier-accent);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;display:flex}.template-option:hover{background:var(--bg-modifier-hover);border-color:var(--color-primary)}.template-option.selected{border-color:var(--color-primary);background:#5865f21a}.template-icon{background:var(--bg-secondary);border-radius:var(--radius-md);width:40px;height:40px;color:var(--interactive-normal);flex-shrink:0;justify-content:center;align-items:center;display:flex}.template-option:hover .template-icon{color:var(--color-primary)}.template-content{flex-direction:column;flex:1;gap:2px;display:flex}.template-name{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--header-primary)}.template-desc{font-size:var(--font-size-xs);color:var(--text-muted)}.template-arrow{font-size:var(--font-size-lg);color:var(--text-muted);transition:transform var(--transition-fast)}.template-option:hover .template-arrow{color:var(--header-primary);transform:translate(4px)}.skip-template{text-align:center;padding:var(--spacing-md)}.create-server-customize{padding-bottom:var(--spacing-md);position:relative}.customize-form{padding:0 var(--spacing-xl)}.icon-upload{margin-bottom:var(--spacing-lg);justify-content:center;display:flex}.icon-upload-label{cursor:pointer}.icon-placeholder{justify-content:center;align-items:center;gap:var(--spacing-xs);background:var(--bg-secondary);border:2px dashed var(--bg-modifier-accent);border-radius:var(--radius-full);width:80px;height:80px;color:var(--text-muted);transition:all var(--transition-fast);flex-direction:column;display:flex}.icon-placeholder:hover{border-color:var(--color-primary);color:var(--color-primary)}.icon-placeholder span{font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase}.icon-preview{border-radius:var(--radius-full);object-fit:cover;border:2px solid var(--color-primary);width:80px;height:80px}.form-label .required{color:var(--text-danger)}.form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md);color:var(--text-primary);background:var(--bg-tertiary);border-radius:var(--radius-sm);transition:all var(--transition-fast);border:1px solid #0000;outline:none}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #5865f233}.terms-text{font-size:var(--font-size-xs);color:var(--text-muted);margin:var(--spacing-md) 0}.modal-footer{padding:var(--spacing-md) var(--spacing-xl);background:var(--bg-secondary);justify-content:flex-end;display:flex}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#4752c4 0%,#3c45a5 100%);box-shadow:0 4px 12px #5865f266}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.create-server-join{padding-bottom:var(--spacing-md);position:relative}.join-form{padding:0 var(--spacing-xl)}.invite-examples{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md)}.invite-examples h4{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--spacing-sm)}.invite-examples ul{gap:var(--spacing-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.invite-examples li{font-size:var(--font-size-sm);color:var(--text-primary)}@media (max-width:480px){.modal-header-center{padding:var(--spacing-lg) var(--spacing-md)}.choice-options,.template-list,.customize-form,.join-form{padding:0 var(--spacing-md)}.modal-footer{padding:var(--spacing-md)}.btn-primary{width:100%}}@media (prefers-reduced-motion:reduce){.choice-option:hover .choice-arrow,.template-option:hover .template-arrow{transform:none}}.keyboard-shortcuts-modal .modal-body{padding:0}.shortcuts-content{padding:var(--spacing-lg)}.shortcuts-grid{gap:var(--spacing-xl);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.shortcuts-category{gap:var(--spacing-sm);flex-direction:column;display:flex}.category-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--header-secondary);text-transform:uppercase;letter-spacing:.05em;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--bg-modifier-accent);margin:0}.shortcuts-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.shortcut-item{padding:var(--spacing-xs) 0;justify-content:space-between;align-items:center;display:flex}.shortcut-description{font-size:var(--font-size-sm);color:var(--text-primary)}.shortcut-keys{align-items:center;gap:4px;display:flex}.key-plus{color:var(--text-muted);font-size:var(--font-size-xs);margin:0 2px}.shortcuts-footer{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--bg-modifier-accent);text-align:center}.shortcuts-hint{font-size:var(--font-size-sm);color:var(--text-muted);margin:0}.shortcuts-hint .key{font-size:var(--font-size-xs)}@media (max-width:600px){.shortcuts-grid{grid-template-columns:1fr}.shortcut-item{align-items:flex-start;gap:var(--spacing-xs);flex-direction:column}}.server-sidebar{width:var(--sidebar-server-width);height:100vh;padding:var(--spacing-md) 0;background-color:var(--bg-tertiary);flex-direction:column;flex-shrink:0;align-items:center;display:flex;overflow:hidden auto}.server-list{flex-direction:column;align-items:center;width:100%;display:flex}.server-item-wrapper{width:100%;margin-bottom:var(--spacing-sm);justify-content:center;align-items:center;display:flex;position:relative}.server-pill{background-color:var(--text-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:4px;height:0;transition:height var(--transition-normal);position:absolute;left:0}.server-item-wrapper:hover .server-pill{height:20px}.server-pill.notification{height:8px}.server-pill.active{height:40px}.server-icon{border-radius:var(--radius-full);background-color:var(--bg-primary);width:48px;height:48px;color:var(--interactive-normal);cursor:pointer;transition:border-radius var(--transition-normal), background-color var(--transition-normal), color var(--transition-normal);justify-content:center;align-items:center;display:flex;overflow:hidden}.server-icon:hover,.server-icon.active{border-radius:var(--radius-xl);background-color:var(--color-primary);color:var(--text-primary)}.server-icon-image{object-fit:cover;width:100%;height:100%}.server-icon-text{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);white-space:nowrap;line-height:1}.home-icon{background-color:var(--bg-primary)}.home-icon:hover,.home-icon.active{background-color:var(--color-primary)}.add-server-icon{background-color:var(--bg-primary);color:var(--color-success)}.add-server-icon:hover{background-color:var(--color-success);color:var(--text-primary)}.explore-icon{background-color:var(--bg-primary);color:var(--color-success)}.explore-icon:hover{background-color:var(--color-success);color:var(--text-primary)}.server-badge{min-width:16px;height:16px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-align:center;color:var(--text-primary);background-color:var(--color-danger);border-radius:var(--radius-pill);border:3px solid var(--bg-tertiary);box-sizing:content-box;padding:0 4px;line-height:16px;position:absolute;bottom:0;right:4px}.server-separator{width:32px;height:2px;margin:var(--spacing-xs) 0 var(--spacing-sm);background-color:var(--border-strong);border-radius:var(--radius-pill)}.server-tooltip{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary);background-color:var(--bg-floating);border-radius:var(--radius-sm);box-shadow:var(--shadow-popup);white-space:nowrap;opacity:0;visibility:hidden;transition:opacity var(--transition-fast), visibility var(--transition-fast), transform var(--transition-fast);z-index:var(--z-tooltip);pointer-events:none;align-items:center;display:flex;position:absolute;left:calc(100% + 12px);transform:scale(.95)}.server-tooltip:before{content:"";border:6px solid #0000;border-right-color:var(--bg-floating);border-left:none;position:absolute;top:50%;left:-6px;transform:translateY(-50%)}.server-item-wrapper:hover .server-tooltip{opacity:1;visibility:visible;transform:scale(1)}@media (max-width:768px){.server-sidebar{display:none}}.user-area{align-items:center;gap:var(--spacing-sm);height:var(--user-area-height);padding:0 var(--spacing-sm);background-color:var(--bg-secondary-alt,#232428);border-top:1px solid var(--border-subtle);flex-shrink:0;display:flex;position:relative}.user-info{align-items:center;gap:var(--spacing-sm);min-width:0;padding:var(--spacing-xs);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);flex:1;display:flex}.user-info:hover{background-color:var(--bg-modifier-hover)}.user-details{text-align:left;flex-direction:column;min-width:0;display:flex}.user-display-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--header-primary);white-space:nowrap;text-overflow:ellipsis;line-height:1.2;overflow:hidden}.user-status-text{font-size:var(--font-size-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;line-height:1.2;overflow:hidden}.user-controls{gap:var(--spacing-xxs);display:flex}.user-control-btn{width:32px;height:32px;color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.user-control-btn:hover{background-color:var(--bg-modifier-hover);color:var(--interactive-hover)}.user-control-btn.active{color:var(--color-danger)}.user-control-btn.active:hover{background-color:var(--bg-modifier-hover);color:var(--color-danger-hover)}.status-dropdown-overlay{z-index:calc(var(--z-dropdown) - 1);position:fixed;inset:0}.status-dropdown{bottom:calc(100% + var(--spacing-sm));left:var(--spacing-sm);right:var(--spacing-sm);background:var(--bg-floating);border-radius:var(--radius-md);box-shadow:var(--shadow-high);z-index:var(--z-dropdown);animation:.15s ease-out slideUpFade;position:absolute;overflow:hidden}@keyframes slideUpFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.status-custom-section{padding:var(--spacing-md)}.status-custom-input-wrapper{align-items:center;display:flex;position:relative}.status-custom-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-right:var(--spacing-xl);background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);transition:box-shadow var(--transition-fast);border:none;outline:none}.status-custom-input::placeholder{color:var(--text-muted)}.status-custom-input:focus{box-shadow:0 0 0 2px var(--brand-primary)}.status-custom-clear{right:var(--spacing-xs);width:24px;height:24px;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex;position:absolute}.status-custom-clear:hover{color:var(--text-primary);background:var(--bg-modifier-hover)}.status-dropdown-divider{background:var(--border-subtle);height:1px;margin:0 var(--spacing-sm)}.status-options{padding:var(--spacing-xs)}.status-option{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);text-align:left;display:flex}.status-option:hover{background:var(--bg-modifier-hover)}.status-option.active{background:var(--bg-modifier-selected)}.status-option-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.status-option-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.status-option-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.status-option-desc{font-size:var(--font-size-xs);color:var(--text-muted);line-height:1.3}.status-option-check{color:var(--brand-primary);flex-shrink:0}.create-channel-content{padding:var(--spacing-md) 0}.channel-category-info{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--spacing-md) 0}.section-label{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;margin-bottom:var(--spacing-sm);font-weight:700;display:block}.channel-type-section{margin-bottom:var(--spacing-lg)}.channel-type-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.channel-type-option{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:all var(--transition-fast);border:1px solid #0000;display:flex}.channel-type-option:hover{background:var(--bg-modifier-hover)}.channel-type-option.selected{background:var(--bg-modifier-selected);border-color:var(--brand-primary)}.type-icon{background:var(--bg-tertiary);border-radius:var(--radius-full);width:40px;height:40px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.channel-type-option.selected .type-icon{background:var(--brand-primary);color:#fff}.type-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.type-label{font-size:var(--font-size-md);color:var(--text-primary);font-weight:500}.type-description{font-size:var(--font-size-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.type-radio{flex-shrink:0}.radio-circle{border:2px solid var(--text-muted);width:20px;height:20px;transition:all var(--transition-fast);border-radius:50%;position:relative}.radio-circle.checked{border-color:var(--brand-primary)}.radio-circle.checked:after{content:"";background:var(--brand-primary);border-radius:50%;width:10px;height:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.channel-name-section{margin-bottom:var(--spacing-lg)}.channel-name-input-wrapper{background:var(--bg-tertiary);border-radius:var(--radius-sm);align-items:center;display:flex;overflow:hidden}.channel-prefix{width:40px;height:40px;color:var(--text-muted);font-size:var(--font-size-lg);justify-content:center;align-items:center;font-weight:500;display:flex}.channel-name-input-wrapper input{padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) 0;color:var(--text-primary);font-size:var(--font-size-md);background:0 0;border:none;flex:1}.channel-name-input-wrapper input::placeholder{color:var(--text-muted)}.channel-name-input-wrapper input:focus{outline:none}.private-channel-section{margin-bottom:var(--spacing-md)}.private-toggle{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);display:flex}.private-icon{background:var(--bg-tertiary);border-radius:var(--radius-full);width:40px;height:40px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.private-info{flex-direction:column;flex:1;gap:2px;display:flex}.private-label{font-size:var(--font-size-md);color:var(--text-primary);font-weight:500}.private-description{font-size:var(--font-size-xs);color:var(--text-muted)}.toggle-switch{flex-shrink:0;width:40px;height:24px;position:relative}.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{background:var(--bg-modifier-accent);cursor:pointer;transition:background var(--transition-fast);border-radius:12px;position:absolute;inset:0}.toggle-switch input:checked+.toggle-slider{background:var(--brand-primary)}.toggle-switch input:checked+.toggle-slider:after{transform:translate(16px)}.create-channel-footer{justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md) 0 0 0;border-top:1px solid var(--border-subtle);margin-top:var(--spacing-md);display:flex}.btn-cancel{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none}.btn-cancel:hover{text-decoration:underline}.btn-create{padding:var(--spacing-sm) var(--spacing-lg);background:var(--brand-primary);border-radius:var(--radius-sm);color:#fff;font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);border:none;font-weight:500}.btn-create:hover:not(:disabled){background:var(--brand-primary-hover)}.btn-create:disabled{opacity:.5;cursor:not-allowed}.invite-modal .modal-body{padding:0}.invite-content{flex-direction:column;display:flex}.invite-channel-info{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-secondary);color:var(--text-muted);font-size:var(--font-size-sm);display:flex}.invite-channel-info svg{flex-shrink:0}.invite-search{padding:var(--spacing-md);border-bottom:1px solid var(--border-subtle)}.invite-search input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-md);border:none}.invite-search input::placeholder{color:var(--text-muted)}.invite-search input:focus{outline:none}.invite-friends-list{max-height:200px;padding:var(--spacing-sm);overflow-y:auto}.invite-friend-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:background var(--transition-fast);display:flex}.invite-friend-item:hover{background:var(--bg-modifier-hover)}.friend-avatar{border-radius:var(--radius-full);background:var(--brand-primary);width:32px;height:32px;font-size:var(--font-size-xs);color:#fff;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex;position:relative}.friend-status{border:2px solid var(--bg-floating);border-radius:50%;width:12px;height:12px;position:absolute;bottom:-2px;right:-2px}.friend-info{flex-direction:column;flex:1;min-width:0;display:flex}.friend-name{font-size:var(--font-size-sm);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.friend-username{font-size:var(--font-size-xs);color:var(--text-muted)}.invite-friend-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--brand-primary);border-radius:var(--radius-sm);color:#fff;font-size:var(--font-size-xs);cursor:pointer;transition:background var(--transition-fast);border:none;font-weight:500}.invite-friend-btn:hover{background:var(--brand-primary-hover)}.invite-link-section{padding:var(--spacing-md);background:var(--bg-secondary);border-top:1px solid var(--border-subtle)}.invite-link-label{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;margin-bottom:var(--spacing-sm);font-weight:700;display:block}.invite-link-row{gap:var(--spacing-sm);display:flex}.invite-link-input{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);border:none;flex:1}.invite-link-input:focus{outline:none}.copy-link-btn{padding:var(--spacing-sm) var(--spacing-lg);background:var(--brand-primary);border-radius:var(--radius-sm);color:#fff;font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);border:none;min-width:80px;font-weight:500}.copy-link-btn:hover{background:var(--brand-primary-hover)}.copy-link-btn.copied{background:var(--status-success)}.link-settings-toggle{align-items:center;gap:var(--spacing-xs);margin-top:var(--spacing-sm);color:var(--text-link);font-size:var(--font-size-xs);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:0;display:flex}.link-settings-toggle:hover{color:var(--text-link-hover)}.link-settings-toggle svg{transition:transform var(--transition-fast)}.link-settings{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-subtle);gap:var(--spacing-md);flex-direction:column;display:flex}.link-setting{gap:var(--spacing-xs);flex-direction:column;display:flex}.link-setting label{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;font-weight:600}.link-setting select{padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer;border:none}.link-setting select:focus{outline:none}.generate-link-btn{padding:var(--spacing-xs) var(--spacing-md);color:var(--text-link);font-size:var(--font-size-sm);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;align-self:flex-start}.generate-link-btn:hover{color:var(--text-link-hover);text-decoration:underline}.channel-sidebar{background-color:var(--bg-secondary);flex-direction:column;width:100%;height:100vh;display:flex;position:relative}.server-header{width:100%;height:var(--header-height);padding:0 var(--spacing-lg);background-color:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background-color var(--transition-fast);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.server-header:hover{background-color:var(--bg-modifier-hover)}.server-header.open{background-color:var(--bg-modifier-active)}.server-name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--header-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dropdown-arrow{color:var(--interactive-normal);transition:transform var(--transition-fast);flex-shrink:0}.server-header.open .dropdown-arrow{transform:rotate(180deg)}.dropdown-overlay{z-index:calc(var(--z-dropdown) - 1);position:fixed;inset:0}.server-dropdown{top:calc(var(--header-height) + 4px);background-color:var(--bg-floating);border-radius:var(--radius-md);z-index:var(--z-dropdown);padding:6px;animation:.15s ease-out forwards dropdownSlide;position:absolute;left:8px;right:8px;box-shadow:0 8px 16px #0000003d}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.dropdown-item{align-items:center;gap:var(--spacing-sm);width:100%;font-size:var(--font-size-sm);color:var(--text-secondary);border-radius:var(--radius-xs);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);text-align:left;background:0 0;border:none;padding:8px 10px;display:flex}.dropdown-item svg{opacity:.7;flex-shrink:0}.dropdown-item:hover{background-color:var(--brand-primary);color:#fff}.dropdown-item:hover svg{opacity:1}.dropdown-item.danger{color:var(--status-danger)}.dropdown-item.danger:hover{background-color:var(--status-danger);color:#fff}.dropdown-divider{height:1px;margin:var(--spacing-xs) 0;background-color:var(--border-subtle)}.channel-list{padding:var(--spacing-md) var(--spacing-sm);flex:1;overflow-y:auto}.channel-category{margin-bottom:var(--spacing-lg)}.category-header{align-items:center;gap:var(--spacing-xxs);width:100%;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--channel-default);text-transform:uppercase;letter-spacing:.02em;cursor:pointer;transition:color var(--transition-fast);display:flex}.category-header:hover{color:var(--interactive-hover)}.category-arrow{transition:transform var(--transition-fast);flex-shrink:0}.category-arrow.collapsed{transform:rotate(-90deg)}.category-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.category-add-btn{color:var(--channel-default);padding:var(--spacing-xxs);border-radius:var(--radius-xs);transition:color var(--transition-fast);display:none}.category-header:hover .category-add-btn{display:block}.category-add-btn:hover{color:var(--interactive-hover)}.category-channels{margin-top:var(--spacing-xxs)}.category-channels.collapsed{display:none}.channel-item{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-sm);font-size:var(--font-size-md);color:var(--channel-default);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);margin:1px 0;display:flex}.channel-item:hover{background-color:var(--bg-modifier-hover);color:var(--interactive-hover)}.channel-item.active{background-color:var(--bg-modifier-selected);color:var(--interactive-active)}.channel-item.unread{color:var(--interactive-active)}.channel-item.unread:before{content:"";background-color:var(--text-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:4px;height:8px;position:absolute;left:0}.channel-item:hover .channel-icon,.channel-item.active .channel-icon{color:var(--interactive-hover)}.channel-name{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;overflow:hidden}.channel-user-count{font-size:var(--font-size-xs);color:var(--text-muted)}.channel-mentions{min-width:16px;height:16px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-align:center;color:var(--text-primary);background-color:var(--color-danger);border-radius:var(--radius-pill);padding:0 4px;line-height:16px}.channel-actions{gap:var(--spacing-xxs);margin-left:auto;display:none}.channel-item:hover .channel-actions{display:flex}.channel-action-btn{width:16px;height:16px;color:var(--interactive-normal);border-radius:var(--radius-xs);transition:color var(--transition-fast);justify-content:center;align-items:center;display:flex}.channel-action-btn:hover{color:var(--interactive-hover)}@media (max-width:768px){.channel-sidebar{width:100%;max-width:320px}}.create-dm-modal .modal-container{flex-direction:column;max-width:440px;max-height:80vh;display:flex;overflow:hidden}.create-dm-modal .modal-header{display:none}.create-dm-modal .modal-body{flex-direction:column;padding:0;display:flex;overflow:hidden}.create-dm-header{padding:var(--spacing-lg);text-align:center}.create-dm-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--header-primary);margin:0 0 var(--spacing-xs)}.create-dm-subtitle{font-size:var(--font-size-sm);color:var(--text-muted);margin:0}.create-dm-search-area{padding:0 var(--spacing-lg);margin-bottom:var(--spacing-sm)}.create-dm-search-input-wrapper{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-tertiary);border-radius:var(--radius-sm);transition:border-color var(--transition-fast);border:1px solid #0000;flex-wrap:wrap;min-height:44px;display:flex}.create-dm-search-input-wrapper:focus-within{border-color:var(--text-link)}.create-dm-search-input{min-width:100px;padding:var(--spacing-xs) 0;font-size:var(--font-size-md);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.create-dm-search-input::placeholder{color:var(--text-muted)}.create-dm-tag{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xxs) var(--spacing-sm);background-color:var(--brand-primary);color:#fff;font-size:var(--font-size-sm);border-radius:var(--radius-xs);animation:.2s ease-out tagPopIn;display:inline-flex}@keyframes tagPopIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.create-dm-tag-remove{border-radius:var(--radius-full);cursor:pointer;width:16px;height:16px;transition:background-color var(--transition-fast);background:#fff3;justify-content:center;align-items:center;display:flex}.create-dm-tag-remove:hover{background:#ffffff4d}.create-dm-friends-list{padding:0 var(--spacing-sm);flex:1;max-height:300px;overflow-y:auto}.create-dm-friend-item{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.create-dm-friend-item:hover{background-color:var(--bg-modifier-hover)}.create-dm-friend-item.selected{background-color:var(--bg-modifier-selected)}.create-dm-friend-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.create-dm-friend-name{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.create-dm-friend-username{font-size:var(--font-size-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.create-dm-checkbox{border:2px solid var(--interactive-normal);border-radius:var(--radius-sm);width:24px;height:24px;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.create-dm-checkbox.checked{background-color:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.create-dm-friend-item:hover .create-dm-checkbox:not(.checked){border-color:var(--interactive-hover)}.create-dm-empty{padding:var(--spacing-xl);text-align:center;color:var(--text-muted)}.create-dm-footer{padding:var(--spacing-lg);background-color:var(--bg-secondary);border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.create-dm-group-info{align-items:center;gap:var(--spacing-sm);display:flex}.create-dm-group-label{font-size:var(--font-size-sm);color:var(--text-muted);font-weight:var(--font-weight-medium)}.create-dm-button{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#fff;background-color:var(--brand-primary);border-radius:var(--radius-xs);cursor:pointer;transition:background-color var(--transition-fast);border:none;margin-left:auto}.create-dm-button:hover:not(.disabled){background-color:var(--brand-primary-hover)}.create-dm-button.disabled{opacity:.5;cursor:not-allowed}@media (max-width:480px){.create-dm-modal .modal-container{max-width:100%;margin:var(--spacing-md)}}.dm-sidebar{width:var(--sidebar-channel-width);background-color:var(--bg-secondary);flex-direction:column;height:100vh;display:flex}.dm-sidebar-header{padding:var(--spacing-md);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.dm-search-wrapper{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--bg-tertiary);border-radius:var(--radius-sm);align-items:center;display:flex}.dm-search-input{font-size:var(--font-size-sm);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.dm-search-input::placeholder{color:var(--text-muted)}.dm-section{padding:var(--spacing-sm) var(--spacing-sm);border-bottom:1px solid var(--border-subtle)}.dm-nav-item{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--channel-default);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);display:flex}.dm-nav-item:hover{background-color:var(--bg-modifier-hover);color:var(--interactive-hover)}.dm-nav-item.active{background-color:var(--bg-modifier-selected);color:var(--interactive-active)}.dm-list-header{padding:var(--spacing-lg) var(--spacing-md) var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.dm-list-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--channel-default);text-transform:uppercase;letter-spacing:.02em}.dm-add-btn{width:16px;height:16px;color:var(--interactive-normal);cursor:pointer;transition:color var(--transition-fast);justify-content:center;align-items:center;display:flex}.dm-add-btn:hover{color:var(--interactive-hover)}.dm-list{padding:0 var(--spacing-sm);flex:1;overflow-y:auto}.dm-item{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-sm) var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);margin-bottom:2px;display:flex;position:relative}.dm-item:hover{background-color:var(--bg-modifier-hover)}.dm-item.active{background-color:var(--bg-modifier-selected)}.dm-item-content{text-align:left;flex:1;min-width:0}.dm-item-header{justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.dm-item-name{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--channel-default);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dm-item:hover .dm-item-name,.dm-item.active .dm-item-name{color:var(--interactive-hover)}.dm-item.has-unread .dm-item-name{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.dm-item-time{font-size:var(--font-size-xs);color:var(--text-muted);flex-shrink:0}.dm-item-message{align-items:center;gap:var(--spacing-sm);margin-top:2px;display:flex}.dm-item-preview{font-size:var(--font-size-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.dm-item-badge{min-width:16px;height:16px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-align:center;color:#fff;background-color:var(--color-danger);border-radius:var(--radius-pill);flex-shrink:0;padding:0 5px;line-height:16px}.dm-item-close{width:16px;height:16px;color:var(--interactive-normal);cursor:pointer;transition:color var(--transition-fast);right:var(--spacing-sm);justify-content:center;align-items:center;display:none;position:absolute}.dm-item:hover .dm-item-close{display:flex}.dm-item-close:hover{color:var(--interactive-hover)}.group-avatar{width:var(--avatar-md);height:var(--avatar-md);flex-shrink:0;position:relative}.group-avatar-item{border-radius:var(--radius-full);background-color:var(--bg-tertiary);border:2px solid var(--bg-secondary);justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;overflow:hidden}.group-avatar-item:first-child{top:0;left:0}.group-avatar-item:nth-child(2){top:0;right:0}.group-avatar-item:nth-child(3){bottom:0;left:50%;transform:translate(-50%)}.group-avatar-item img{object-fit:cover;width:100%;height:100%}.group-avatar-initials{font-size:9px;font-weight:var(--font-weight-semibold);color:var(--text-primary)}.dm-item-member-count{margin-left:var(--spacing-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--text-muted)}.dm-item-member-count:before{content:"·";margin-right:var(--spacing-xs)}.dm-empty{padding:var(--spacing-xl);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm)}.chat-header{height:var(--header-height);min-height:var(--header-height);padding:0 var(--spacing-sm) 0 var(--spacing-lg);background-color:var(--bg-primary);border-bottom:1px solid var(--border-subtle);flex-shrink:0;align-items:center;display:flex}.mobile-menu-btn{width:24px;height:24px;margin-right:var(--spacing-md);color:var(--interactive-normal);cursor:pointer;transition:color var(--transition-fast);justify-content:center;align-items:center;display:none}.mobile-menu-btn:hover{color:var(--interactive-hover)}.channel-info{align-items:center;gap:var(--spacing-sm);flex:1;min-width:0;display:flex}.channel-icon{color:var(--channel-icon);flex-shrink:0;justify-content:center;align-items:center;display:flex}.channel-name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--header-primary);white-space:nowrap}.channel-divider{background-color:var(--border-strong);flex-shrink:0;width:1px;height:24px}.channel-topic{font-size:var(--font-size-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.header-actions{align-items:center;gap:var(--spacing-xs);margin-left:auto;display:flex}.header-action-btn{width:24px;height:24px;padding:var(--spacing-xs);color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast);justify-content:center;align-items:center;display:flex}.header-action-btn:hover{color:var(--interactive-hover)}.header-action-btn.active{color:var(--interactive-active)}.search-container{align-items:center;display:flex}.search-input-wrapper{width:200px;height:28px;padding:0 var(--spacing-sm);background-color:var(--bg-tertiary);border-radius:var(--radius-sm);animation:slideInLeft var(--transition-fast) forwards;align-items:center;display:flex}.search-input{width:100%;height:100%;font-size:var(--font-size-sm);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:0}.search-input::placeholder{color:var(--text-muted)}.search-close-btn{width:16px;height:16px;color:var(--interactive-normal);cursor:pointer;transition:color var(--transition-fast);justify-content:center;align-items:center;display:flex}.search-close-btn:hover{color:var(--interactive-hover)}@media (max-width:768px){.chat-header{padding:0 var(--spacing-sm)}.mobile-menu-btn{display:flex}.channel-topic,.channel-divider{display:none}.header-actions{gap:0}.header-action-btn:not(.search-btn):not([aria-label="Toggle Member List"]){display:none}.search-input-wrapper{width:150px}}@media (max-width:480px){.search-container.open .search-input-wrapper{left:var(--spacing-sm);right:var(--spacing-sm);width:auto;z-index:var(--z-dropdown);position:absolute}}.message{padding:var(--spacing-xxs) var(--spacing-xxxl) var(--spacing-xxs) var(--spacing-lg);transition:background-color var(--transition-fast);position:relative}.message:hover{background-color:var(--bg-modifier-hover)}.message.first-in-group{margin-top:var(--spacing-lg);padding-top:var(--spacing-xxs)}.message.continuation{padding-top:0}.message-reply-reference{align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs);margin-left:calc(var(--avatar-lg) + var(--spacing-lg));font-size:var(--font-size-sm);color:var(--text-muted);display:flex}.message-reply-reference svg{color:var(--text-muted);flex-shrink:0}.reply-author{font-weight:var(--font-weight-medium);color:var(--text-secondary);cursor:pointer}.reply-author:hover{text-decoration:underline}.reply-content{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.message-content-wrapper{gap:var(--spacing-lg);display:flex}.message-avatar{width:var(--avatar-lg);cursor:pointer;flex-shrink:0}.message-timestamp-left{width:var(--avatar-lg);padding-top:var(--spacing-xxs);flex-shrink:0;justify-content:flex-end;align-items:flex-start;display:flex}.timestamp-hover{font-size:var(--font-size-xs);color:var(--text-muted);opacity:0;transition:opacity var(--transition-fast)}.message:hover .timestamp-hover{opacity:1}.message-body{flex:1;min-width:0}.message-header{align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-xxs);display:flex}.message-author{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--header-primary);cursor:pointer}.message-author:hover{text-decoration:underline}.message-timestamp{font-size:var(--font-size-xs);color:var(--text-muted)}.message-text{font-size:var(--font-size-md);color:var(--text-primary);line-height:var(--line-height-relaxed);word-wrap:break-word;white-space:pre-wrap}.message-text strong{font-weight:var(--font-weight-bold)}.message-text em{font-style:italic}.message-text .inline-code{font-family:var(--font-code);background-color:var(--bg-secondary);border-radius:var(--radius-xs);padding:.2em .4em;font-size:.85em}.message-text .list-item{padding-left:var(--spacing-md);display:block}.message-text .list-item:before{content:"•";margin-right:var(--spacing-sm)}.message-code-block{margin:var(--spacing-sm) 0;padding:var(--spacing-md);font-family:var(--font-code);font-size:var(--font-size-sm);line-height:var(--line-height-normal);background-color:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);overflow-x:auto}.message-code-block code{font-size:inherit;white-space:pre;background:0 0;padding:0}.edited-indicator{margin-left:var(--spacing-xs);font-size:var(--font-size-xxs);color:var(--text-muted)}.message-reactions{gap:var(--spacing-xs);margin-top:var(--spacing-xs);flex-wrap:wrap;display:flex}.reaction-button{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xxs) var(--spacing-sm);font-size:var(--font-size-sm);background-color:var(--bg-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;display:flex}.reaction-button:hover{background-color:var(--bg-modifier-hover);border-color:var(--border-subtle)}.reaction-button.reacted{border-color:var(--color-primary);background-color:#5865f226}.reaction-emoji{font-size:var(--font-size-md)}.reaction-count{color:var(--text-secondary);font-weight:var(--font-weight-medium)}.reaction-button.reacted .reaction-count{color:var(--color-primary)}.reaction-add-button{background-color:var(--bg-secondary);border-radius:var(--radius-sm);width:26px;height:26px;color:var(--interactive-normal);opacity:0;cursor:pointer;transition:opacity var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.message:hover .reaction-add-button{opacity:1}.reaction-add-button:hover{background-color:var(--bg-modifier-hover);color:var(--interactive-hover)}.message-actions{top:-16px;right:var(--spacing-lg);gap:var(--spacing-xxs);padding:var(--spacing-xxs);background-color:var(--bg-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-medium);display:none;position:absolute}.message:hover .message-actions{display:flex}.action-button{width:32px;height:32px;color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.action-button:hover{background-color:var(--bg-modifier-hover);color:var(--interactive-hover)}.action-button.starred,.action-button.starred:hover{color:var(--color-warning)}.message.is-starred{border-left:3px solid var(--color-warning);padding-left:calc(var(--spacing-lg) - 3px)}.message-starred-badge{color:var(--color-warning);margin-left:var(--spacing-xs);align-items:center;display:inline-flex}.message-attachments{gap:var(--spacing-sm);margin-top:var(--spacing-sm);flex-direction:column;max-width:550px;display:flex}.attachment-image{border-radius:var(--radius-md);max-width:400px;overflow:hidden}.attachment-image img{object-fit:contain;cursor:pointer;border-radius:var(--radius-md);max-width:100%;max-height:300px;display:block}.attachment-image img:hover{opacity:.9}.attachment-video{border-radius:var(--radius-md);max-width:400px;overflow:hidden}.attachment-video video{border-radius:var(--radius-md);max-width:100%;max-height:300px;display:block}.attachment-file{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);max-width:400px;display:flex}.attachment-file-icon{width:40px;height:40px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.attachment-file-info{gap:var(--spacing-xxs);flex-direction:column;flex:1;min-width:0;display:flex}.attachment-file-name{font-size:var(--font-size-md);color:var(--text-link);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;overflow:hidden}.attachment-file-name:hover{text-decoration:underline}.attachment-file-size{font-size:var(--font-size-xs);color:var(--text-muted)}.attachment-download{width:32px;height:32px;color:var(--interactive-normal);border-radius:var(--radius-sm);transition:color var(--transition-fast), background-color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.attachment-download:hover{color:var(--interactive-hover);background-color:var(--bg-modifier-hover)}.message-embeds{gap:var(--spacing-sm);margin-top:var(--spacing-sm);flex-direction:column;max-width:520px;display:flex}.message-embed{gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--bg-secondary);border-radius:var(--radius-sm);border-left:4px solid var(--bg-modifier-accent);display:flex;overflow:hidden}.message-embed.has-large-image{flex-direction:column}.embed-content{gap:var(--spacing-xs);flex-direction:column;flex:1;min-width:0;display:flex}.embed-provider{align-items:center;gap:var(--spacing-xs);display:flex}.embed-provider-icon{border-radius:var(--radius-xs);object-fit:cover;width:16px;height:16px}.embed-provider-name{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.embed-author{align-items:center;gap:var(--spacing-xs);display:flex}.embed-author-icon{border-radius:var(--radius-full);object-fit:cover;width:24px;height:24px}.embed-author-name{font-size:var(--font-size-sm);color:var(--text-primary);font-weight:var(--font-weight-medium)}a.embed-author-name:hover{text-decoration:underline}.embed-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-link);line-height:var(--line-height-tight);text-decoration:none}.embed-title:hover{text-decoration:underline}.embed-description{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-normal);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.embed-thumbnail{border-radius:var(--radius-sm);flex-shrink:0;width:80px;height:80px;overflow:hidden}.embed-thumbnail img{object-fit:cover;width:100%;height:100%}.embed-image{margin-top:var(--spacing-sm);border-radius:var(--radius-sm);max-width:400px;overflow:hidden}.embed-image img{object-fit:contain;border-radius:var(--radius-sm);cursor:pointer;max-width:100%;max-height:300px;display:block}.embed-image img:hover{opacity:.9}.embed-video{margin-top:var(--spacing-sm);border-radius:var(--radius-sm);max-width:400px;overflow:hidden}.embed-video video{border-radius:var(--radius-sm);max-width:100%;max-height:300px;display:block}@media (max-width:768px){.message{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.message-actions{right:var(--spacing-md)}.message-reply-reference{margin-left:calc(var(--avatar-md) + var(--spacing-md))}.message-content-wrapper{gap:var(--spacing-md)}.message-avatar,.message-timestamp-left{width:var(--avatar-md)}}.emoji-picker{background-color:var(--bg-floating);border-radius:var(--radius-md);width:420px;max-height:400px;box-shadow:var(--shadow-popup);flex-direction:column;display:flex;overflow:hidden}.emoji-picker-header{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-bottom:1px solid var(--border-subtle);display:flex}.emoji-search-wrapper{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-tertiary);border-radius:var(--radius-sm);flex:1;align-items:center;display:flex}.emoji-search-icon{color:var(--text-muted);margin-right:var(--spacing-sm);flex-shrink:0}.emoji-search-input{font-size:var(--font-size-sm);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.emoji-search-input::placeholder{color:var(--text-muted)}.emoji-close-btn{width:28px;height:28px;color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);justify-content:center;align-items:center;display:flex}.emoji-close-btn:hover{color:var(--interactive-hover);background-color:var(--bg-modifier-hover)}.emoji-categories{gap:var(--spacing-xxs);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-subtle);display:flex;overflow-x:auto}.emoji-category-btn{width:32px;height:32px;font-size:var(--font-size-lg);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.emoji-category-btn:hover{background-color:var(--bg-modifier-hover)}.emoji-category-btn.active{background-color:var(--bg-modifier-selected)}.emoji-grid-container{padding:var(--spacing-sm);flex:1;overflow-y:auto}.emoji-category-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;padding:var(--spacing-sm);background-color:var(--bg-floating);position:sticky;top:0}.emoji-grid{gap:var(--spacing-xxs);grid-template-columns:repeat(9,1fr);display:grid}.emoji-btn{border-radius:var(--radius-sm);cursor:pointer;width:40px;height:40px;transition:background-color var(--transition-fast), transform var(--transition-fast);background:0 0;justify-content:center;align-items:center;font-size:24px;display:flex}.emoji-btn:hover{background-color:var(--bg-modifier-hover);transform:scale(1.1)}.emoji-no-results{text-align:center;padding:var(--spacing-xl);color:var(--text-muted);font-size:var(--font-size-sm)}@media (max-width:480px){.emoji-picker{width:100%;max-width:320px}.emoji-grid{grid-template-columns:repeat(7,1fr)}.emoji-btn{width:36px;height:36px;font-size:20px}}.btn{justify-content:center;align-items:center;gap:var(--spacing-sm);font-family:var(--font-primary);font-weight:var(--font-weight-medium);border-radius:var(--radius-xs);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap;border:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{height:32px;padding:0 var(--spacing-md);font-size:var(--font-size-sm)}.btn-md{height:38px;padding:0 var(--spacing-lg);font-size:var(--font-size-sm)}.btn-lg{height:44px;padding:0 var(--spacing-xl);font-size:var(--font-size-md)}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-primary:active:not(:disabled){background-color:var(--color-primary-active)}.btn-secondary{background-color:var(--bg-accent);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-modifier-hover)}.btn-ghost{color:var(--text-primary);background-color:#0000}.btn-ghost:hover:not(:disabled){background-color:var(--bg-modifier-hover)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--color-danger-hover)}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background-color:var(--color-success-hover)}.btn-link{color:var(--text-link);background-color:#0000;height:auto;padding:0}.btn-link:hover:not(:disabled){text-decoration:underline}.btn-full{width:100%}.btn-icon-only{padding:0}.btn-icon-only.btn-sm{width:32px}.btn-icon-only.btn-md{width:38px}.btn-icon-only.btn-lg{width:44px}.btn-loading{position:relative}.btn-spinner{justify-content:center;align-items:center;display:flex}.btn-spinner svg{width:16px;height:16px;animation:1s linear infinite spin}.btn-icon{justify-content:center;align-items:center;display:flex}.btn-icon svg{width:18px;height:18px}.file-upload-content{gap:var(--spacing-lg);flex-direction:column;display:flex}.file-drop-zone{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xxl);background-color:var(--bg-secondary);border:2px dashed var(--border-strong);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast), background-color var(--transition-fast);flex-direction:column;display:flex}.file-drop-zone:hover{border-color:var(--color-primary);background-color:var(--bg-modifier-hover)}.file-drop-zone.dragging{border-color:var(--color-primary);background-color:#5865f21a}.drop-zone-icon{color:var(--text-muted)}.file-drop-zone.dragging .drop-zone-icon{color:var(--color-primary)}.drop-zone-text{font-size:var(--font-size-md);color:var(--text-secondary);text-align:center}.drop-zone-hint{font-size:var(--font-size-xs);color:var(--text-muted)}.file-input-hidden{display:none}.file-previews{gap:var(--spacing-sm);flex-direction:column;max-height:200px;display:flex;overflow-y:auto}.file-preview-item{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);background-color:var(--bg-secondary);border-radius:var(--radius-sm);display:flex}.file-preview-thumbnail{border-radius:var(--radius-sm);background-color:var(--bg-tertiary);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.file-preview-thumbnail img{object-fit:cover;width:100%;height:100%}.file-type-icon{color:var(--text-muted)}.file-type-icon svg{width:24px;height:24px}.file-preview-info{gap:var(--spacing-xxs);flex-direction:column;flex:1;min-width:0;display:flex}.file-preview-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.file-preview-size{font-size:var(--font-size-xs);color:var(--text-muted)}.file-preview-remove{width:32px;height:32px;color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);justify-content:center;align-items:center;display:flex}.file-preview-remove:hover{color:var(--color-danger);background-color:var(--bg-modifier-hover)}.file-comment-wrapper{margin-top:var(--spacing-sm)}.file-comment-input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-sm);color:var(--text-primary);background-color:var(--bg-secondary);border-radius:var(--radius-sm);resize:none;border:none;outline:none}.file-comment-input::placeholder{color:var(--text-muted)}.file-comment-input:focus{box-shadow:0 0 0 2px var(--color-primary)}.message-input-container{padding:0 var(--spacing-lg) var(--spacing-xl);background-color:var(--bg-primary);flex-shrink:0;position:relative}.typing-indicator{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;font-size:var(--font-size-xs);color:var(--text-muted);bottom:100%;left:var(--spacing-lg);display:flex;position:absolute}.typing-dots{gap:3px;display:flex}.typing-dots .dot{background-color:var(--text-muted);border-radius:var(--radius-full);width:6px;height:6px;animation:1.4s ease-in-out infinite typingBounce}.typing-dots .dot:first-child{animation-delay:0s}.typing-dots .dot:nth-child(2){animation-delay:.2s}.typing-dots .dot:nth-child(3){animation-delay:.4s}.typing-text{font-weight:var(--font-weight-medium)}.message-input-form{padding:0 var(--spacing-lg);background-color:var(--channel-text-area);border-radius:var(--radius-md);align-items:flex-end;gap:0;display:flex}.attachment-btn{padding:var(--spacing-sm)}.input-wrapper{min-height:var(--message-input-min-height);flex:1;align-items:flex-end;display:flex}.message-textarea{padding:var(--spacing-md) 0;font-size:var(--font-size-md);color:var(--text-primary);resize:none;line-height:var(--line-height-normal);background:0 0;border:none;outline:none;flex:1;max-height:300px;overflow-y:auto}.message-textarea::placeholder{color:var(--text-placeholder)}.message-textarea:disabled{cursor:not-allowed;opacity:.5}.input-buttons{align-items:center;gap:var(--spacing-xxs);padding:var(--spacing-sm) 0;display:flex}.input-action-btn{width:32px;height:32px;color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast);justify-content:center;align-items:center;display:flex}.input-action-btn:hover{color:var(--interactive-hover)}.input-action-btn.emoji-btn:hover,.input-action-btn.emoji-btn.active{color:var(--color-warning)}.emoji-picker-container{position:relative}.emoji-picker-popup{margin-bottom:var(--spacing-sm);z-index:var(--z-popover);animation:fadeInUp var(--transition-fast) forwards;position:absolute;bottom:100%;right:0}.reply-bar{padding:var(--spacing-sm) var(--spacing-lg);margin-bottom:var(--spacing-xs);background-color:var(--bg-secondary);border-radius:var(--radius-md) var(--radius-md) 0 0;justify-content:space-between;align-items:center;display:flex}.reply-bar-content{align-items:center;gap:var(--spacing-sm);min-width:0;display:flex}.reply-bar-icon{color:var(--color-primary);flex-shrink:0}.reply-bar-text{font-size:var(--font-size-sm);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.reply-bar-text strong{color:var(--text-primary)}.reply-bar-close{width:24px;height:24px;color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);justify-content:center;align-items:center;display:flex}.reply-bar-close:hover{color:var(--interactive-hover);background-color:var(--bg-modifier-hover)}.has-reply .message-input-form{border-radius:0 0 var(--radius-md) var(--radius-md)}.edit-bar{padding:var(--spacing-sm) var(--spacing-lg);margin-bottom:var(--spacing-xs);border-radius:var(--radius-md) var(--radius-md) 0 0;border-left:3px solid var(--brand-primary);background:linear-gradient(135deg,#5865f226 0%,#5865f20d 100%);justify-content:space-between;align-items:center;display:flex}.edit-bar-content{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;min-width:0;display:flex}.edit-bar-icon{color:var(--brand-primary);flex-shrink:0}.edit-bar-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.edit-bar-hint{font-size:var(--font-size-xs);color:var(--text-muted)}.edit-bar-link{color:var(--text-link);font-size:inherit;cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:0}.edit-bar-link:hover{color:var(--text-link-hover);text-decoration:underline}.edit-bar-close{width:24px;height:24px;color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);justify-content:center;align-items:center;display:flex}.edit-bar-close:hover{color:var(--interactive-hover);background-color:var(--bg-modifier-hover)}.has-edit .message-input-form{border-radius:0 0 var(--radius-md) var(--radius-md)}.input-bar{padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--bg-secondary);border-radius:var(--radius-md) var(--radius-md) 0 0;margin:0 var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.input-bar-left{align-items:center;gap:var(--spacing-sm);min-width:0;display:flex}.input-bar-icon{color:var(--interactive-normal);flex-shrink:0}.input-bar-text{font-size:var(--font-size-sm);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.input-bar-close{width:20px;height:20px;color:var(--interactive-normal);cursor:pointer;transition:color var(--transition-fast);justify-content:center;align-items:center;display:flex}.input-bar-close:hover{color:var(--interactive-hover)}.has-bar .message-input-form{border-radius:0 0 var(--radius-md) var(--radius-md)}.char-limit-warning{right:var(--spacing-xl);bottom:calc(100% + var(--spacing-xs));font-size:var(--font-size-xs);color:var(--text-warning);position:absolute}.char-limit-warning.danger{color:var(--text-danger)}@media (max-width:768px){.message-input-container{padding:0 var(--spacing-md) var(--spacing-lg)}.message-input-form{padding:0 var(--spacing-sm)}.input-buttons .input-action-btn:not(.emoji-btn){display:none}.typing-indicator{left:var(--spacing-md)}}.chat-area{background-color:var(--bg-primary);flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.chat-messages{padding-bottom:var(--spacing-xl);flex:1;position:relative;overflow:hidden auto}.channel-welcome{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md);margin:var(--spacing-lg) var(--spacing-lg) 0;flex-direction:column;display:flex}.channel-welcome-icon{width:68px;height:68px;margin-bottom:var(--spacing-sm);background-color:var(--bg-accent);border-radius:var(--radius-full);color:var(--interactive-normal);justify-content:center;align-items:center;display:flex}.channel-welcome-title{font-size:var(--font-size-xxxl);font-weight:var(--font-weight-bold);color:var(--header-primary);margin-bottom:var(--spacing-sm)}.channel-welcome-description{font-size:var(--font-size-sm);color:var(--text-muted);line-height:var(--line-height-relaxed)}.message-group{margin-top:var(--spacing-lg)}.message-group:first-child{margin-top:0}.date-separator{margin:var(--spacing-xl) var(--spacing-lg);align-items:center;display:flex;position:relative}.date-separator:before,.date-separator:after{content:"";background-color:var(--border-subtle);flex:1;height:1px}.date-separator-text{padding:0 var(--spacing-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.new-messages-separator{margin:var(--spacing-lg) var(--spacing-lg);align-items:center;gap:var(--spacing-sm);display:flex}.new-messages-separator-line{background-color:var(--color-danger);flex:1;height:1px}.new-messages-separator-text{padding:var(--spacing-xxs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-danger);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-primary);border-radius:var(--radius-sm)}.system-message{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-lg);margin:var(--spacing-xs) 0;display:flex}.system-message-icon{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.system-icon-join{background:linear-gradient(135deg, var(--status-success), #1a7f45);color:#fff}.system-icon-leave,.system-icon-pin{background:linear-gradient(135deg, var(--text-muted), #5c5e66);color:#fff}.system-icon-boost{color:#fff;background:linear-gradient(135deg,#ff73fa,#b473f5)}.system-icon-call{background:linear-gradient(135deg, var(--status-success), #1a7f45);color:#fff}.system-message-content{align-items:baseline;gap:var(--spacing-xs);padding-top:var(--spacing-sm);flex-wrap:wrap;display:flex}.system-message-text{font-size:var(--font-size-sm);color:var(--text-muted);line-height:1.4}.system-message-text strong{color:var(--text-primary);font-weight:var(--font-weight-semibold);cursor:pointer}.system-message-text strong:hover{text-decoration:underline}.system-message-preview{color:var(--text-muted);font-style:italic}.system-message-extra{color:var(--text-secondary)}.system-message-time{font-size:var(--font-size-xs);color:var(--text-muted);opacity:.7}.scroll-to-bottom-btn{bottom:var(--spacing-md);align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);background:linear-gradient(135deg, var(--brand-primary) 0%, #4752c4 100%);border-radius:var(--radius-lg);color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);z-index:var(--z-sticky);border:none;animation:.2s ease-out slideUp;display:flex;position:sticky;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #5865f266}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.scroll-to-bottom-btn:hover{background:linear-gradient(135deg,#4752c4 0%,#3c45a5 100%);transform:translate(-50%)translateY(-2px);box-shadow:0 6px 16px #5865f280}.scroll-to-bottom-btn:active{transform:translate(-50%)translateY(0)}.scroll-to-bottom-btn svg{flex-shrink:0}@media (max-width:768px){.channel-welcome{padding:var(--spacing-md);margin:var(--spacing-md) var(--spacing-md) 0}.channel-welcome-icon{width:48px;height:48px}.channel-welcome-icon svg{width:40px;height:40px}.channel-welcome-title{font-size:var(--font-size-xl)}}.voice-channel-view{background:var(--bg-primary);flex-direction:column;height:100%;display:flex}.voice-channel-disconnected{background:var(--bg-primary);justify-content:center;align-items:center;height:100%;display:flex}.voice-disconnected-content{align-items:center;gap:var(--spacing-lg);text-align:center;padding:var(--spacing-xl);flex-direction:column;display:flex}.voice-disconnected-content svg{color:var(--text-muted);opacity:.5}.voice-disconnected-content h2{font-size:var(--font-size-xl);color:var(--text-primary);margin:0;font-weight:700}.voice-disconnected-content p{font-size:var(--font-size-md);color:var(--text-muted);margin:0}.voice-join-btn{padding:var(--spacing-sm) var(--spacing-xl);background:var(--brand-primary);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-md);cursor:pointer;transition:all var(--transition-fast);border:none;font-weight:500}.voice-join-btn:hover{background:var(--brand-primary-hover);transform:translateY(-1px)}.voice-header{padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;min-height:48px;display:flex}.voice-header-info{align-items:center;gap:var(--spacing-sm);display:flex}.voice-header-info svg{color:var(--text-muted)}.voice-channel-name{font-size:var(--font-size-md);color:var(--text-primary);font-weight:600}.voice-user-count{font-size:var(--font-size-sm);color:var(--text-muted);padding-left:var(--spacing-sm);border-left:1px solid var(--border-subtle);margin-left:var(--spacing-sm)}.voice-header-actions{gap:var(--spacing-xs);display:flex}.voice-action-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.voice-action-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.voice-content{gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-tertiary);flex-direction:column;flex:1;display:flex;overflow-y:auto}.voice-focus-area{flex:1;min-height:300px;max-height:60%}.voice-focus-area .voice-user-tile{height:100%}.voice-user-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.voice-user-tile{background:var(--bg-secondary);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);aspect-ratio:16/10;flex-direction:column;min-height:120px;display:flex;position:relative;overflow:hidden}.voice-user-tile:hover{background:var(--bg-secondary-hover);transform:scale(1.02)}.voice-user-tile.large{aspect-ratio:auto}.voice-user-tile.speaking{box-shadow:0 0 0 3px var(--status-success)}.voice-tile-content{padding:var(--spacing-md);flex:1;justify-content:center;align-items:center;display:flex}.avatar-large{border-radius:var(--radius-full);background:var(--brand-primary);width:80px;height:80px;font-size:var(--font-size-xl);color:#fff;justify-content:center;align-items:center;font-weight:700;display:flex;overflow:hidden}.voice-user-tile.large .avatar-large{width:120px;height:120px;font-size:32px}.avatar-large img{object-fit:cover;width:100%;height:100%}.video-placeholder,.screen-share-placeholder{justify-content:center;align-items:center;gap:var(--spacing-sm);background:linear-gradient(135deg, var(--bg-tertiary), var(--bg-secondary));flex-direction:column;width:100%;height:100%;display:flex}.video-placeholder{background:linear-gradient(135deg,#1a4a3a,#0d2f25)}.video-text,.screen-text{font-size:var(--font-size-sm);color:var(--text-secondary)}.screen-share-placeholder svg{color:var(--text-muted)}.voice-tile-info{padding:var(--spacing-sm) var(--spacing-md);background:#00000080;justify-content:space-between;align-items:center;display:flex}.voice-user-name{font-size:var(--font-size-sm);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.voice-status-icons{gap:var(--spacing-xs);display:flex}.status-icon{justify-content:center;align-items:center;width:20px;height:20px;display:flex}.status-icon svg{width:14px;height:14px}.status-icon.muted svg,.status-icon.deafened svg{color:var(--status-danger)}.status-icon.screen-share svg{color:var(--brand-primary)}.status-icon.video svg{color:var(--status-success)}.speaking-indicator{border:3px solid var(--status-success);border-radius:var(--radius-lg);pointer-events:none;animation:1.5s ease-in-out infinite pulse-border;position:absolute;inset:0}@keyframes pulse-border{0%,to{box-shadow:0 0 #23a55a66}50%{box-shadow:0 0 0 6px #23a55a00}}.voice-controls{padding:var(--spacing-lg);background:var(--bg-secondary);border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.voice-controls-left,.voice-controls-center,.voice-controls-right{align-items:center;gap:var(--spacing-sm);display:flex}.voice-controls-center{gap:var(--spacing-md)}.voice-control-btn{background:var(--bg-tertiary);border-radius:var(--radius-full);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;padding:0;display:flex}.voice-control-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.voice-control-btn.active{background:var(--status-danger);color:#fff}.voice-control-btn.large{width:48px;height:48px}.voice-control-btn.large.active{background:var(--brand-primary)}.voice-control-btn.activities{background:linear-gradient(135deg, var(--brand-primary), var(--accent-purple))}.voice-control-btn.activities:hover{filter:brightness(1.1)}.voice-control-btn.disconnect{background:var(--status-danger);color:#fff}.voice-control-btn.disconnect:hover{background:var(--status-danger-hover)}@media (max-width:768px){.voice-content{padding:var(--spacing-sm)}.voice-user-grid{gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr)}.voice-user-tile{min-height:100px}.avatar-large{width:60px;height:60px;font-size:var(--font-size-lg)}.voice-controls{padding:var(--spacing-md);gap:var(--spacing-md);flex-wrap:wrap}.voice-controls-left,.voice-controls-right{flex:1}.voice-controls-right{justify-content:flex-end}.voice-control-btn{width:36px;height:36px}.voice-control-btn.large{width:44px;height:44px}}@media (max-width:480px){.voice-user-grid{grid-template-columns:1fr}.voice-header{padding:var(--spacing-sm) var(--spacing-md)}.voice-user-count{display:none}}@media (prefers-reduced-motion:reduce){.speaking-indicator{animation:none;box-shadow:0 0 0 3px #23a55a66}.voice-user-tile:hover,.voice-join-btn:hover{transform:none}}.dm-chat-view{background:var(--bg-primary);flex-direction:column;height:100%;display:flex}.dm-header{height:var(--header-height);padding:0 var(--spacing-md);background:var(--bg-primary);border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.dm-header-left{align-items:center;gap:var(--spacing-sm);display:flex}.dm-recipient-info{align-items:center;gap:var(--spacing-xs);display:flex}.at-symbol{font-size:var(--font-size-xl);color:var(--text-muted);font-weight:700}.dm-recipient-name{font-size:var(--font-size-md);color:var(--text-primary);font-weight:600}.dm-status-dot{width:10px;height:10px;margin-left:var(--spacing-xs);border-radius:50%}.dm-header-actions{align-items:center;gap:var(--spacing-xs);display:flex}.dm-action-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.dm-action-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.dm-action-btn.active{color:var(--text-primary)}.dm-search-box{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm);margin-left:var(--spacing-sm);display:flex}.dm-search-box svg{color:var(--text-muted);flex-shrink:0}.dm-search-box input{width:140px;color:var(--text-primary);font-size:var(--font-size-sm);background:0 0;border:none;padding:0}.dm-search-box input::placeholder{color:var(--text-muted)}.dm-search-box input:focus{outline:none;width:200px}.dm-content{flex:1;display:flex;overflow:hidden}.dm-messages{flex-direction:column;flex:1;display:flex;overflow-y:auto}.dm-welcome{padding:var(--spacing-xl) var(--spacing-lg);margin-bottom:var(--spacing-lg);flex-direction:column;align-items:flex-start;display:flex}.dm-welcome-avatar{border-radius:var(--radius-full);background:var(--brand-primary);color:#fff;width:80px;height:80px;margin-bottom:var(--spacing-md);justify-content:center;align-items:center;font-size:32px;font-weight:700;display:flex;overflow:hidden}.dm-welcome-avatar img{object-fit:cover;width:100%;height:100%}.dm-welcome-name{font-size:var(--font-size-xxl);color:var(--text-primary);margin:0 0 var(--spacing-xs) 0;font-weight:700}.dm-welcome-username,.dm-welcome-text{font-size:var(--font-size-md);color:var(--text-secondary);margin:0 0 var(--spacing-md) 0}.dm-welcome-actions{gap:var(--spacing-sm);display:flex}.dm-welcome-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-fast);border:none}.dm-welcome-btn:hover{background:var(--bg-modifier-hover)}.dm-message-list{padding:0 var(--spacing-lg)}.dm-profile-sidebar{background:var(--bg-secondary);border-left:1px solid var(--border-subtle);flex-direction:column;width:340px;min-width:340px;display:flex;overflow-y:auto}.dm-profile-banner{background-position:50%;background-size:cover;flex-shrink:0;height:120px}.dm-profile-avatar-wrapper{padding:0 var(--spacing-lg);margin-top:-40px;position:relative}.dm-profile-avatar{border-radius:var(--radius-full);background:var(--brand-primary);border:6px solid var(--bg-secondary);color:#fff;justify-content:center;align-items:center;width:80px;height:80px;font-size:28px;font-weight:700;display:flex;position:relative;overflow:hidden}.dm-profile-avatar img{object-fit:cover;width:100%;height:100%}.dm-profile-status{border:3px solid var(--bg-secondary);border-radius:50%;width:16px;height:16px;position:absolute;bottom:2px;right:2px}.dm-profile-card{padding:var(--spacing-md) var(--spacing-lg)}.dm-profile-name{font-size:var(--font-size-xl);color:var(--text-primary);margin:0 0 var(--spacing-xxs) 0;font-weight:700}.dm-profile-username{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.dm-profile-custom-status{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.dm-profile-divider{background:var(--border-subtle);height:1px;margin:var(--spacing-md) 0}.dm-profile-section{margin-bottom:var(--spacing-md)}.dm-profile-section h4{font-size:var(--font-size-xs);color:var(--text-primary);text-transform:uppercase;margin:0 0 var(--spacing-sm) 0;font-weight:700}.dm-profile-section p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.4}.dm-mutual-servers{gap:var(--spacing-xs);flex-direction:column;display:flex}.dm-mutual-server{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);display:flex}.dm-mutual-server:hover{background:var(--bg-modifier-hover)}.dm-mutual-server-icon{border-radius:var(--radius-md);background:var(--bg-tertiary);width:32px;height:32px;font-size:var(--font-size-sm);color:var(--text-primary);justify-content:center;align-items:center;font-weight:600;display:flex;overflow:hidden}.dm-mutual-server-icon img{object-fit:cover;width:100%;height:100%}.dm-mutual-server-name{font-size:var(--font-size-sm);color:var(--text-primary)}.dm-profile-note{width:100%;min-height:60px;padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);resize:vertical;border:none}.dm-profile-note::placeholder{color:var(--text-muted)}.dm-profile-note:focus{box-shadow:0 0 0 2px var(--brand-primary);outline:none}.dm-input-wrapper{padding:0 var(--spacing-lg) var(--spacing-lg);flex-shrink:0}@media (max-width:1024px){.dm-profile-sidebar{width:300px;min-width:300px}}@media (max-width:768px){.dm-profile-sidebar,.dm-search-box{display:none}.dm-header-actions{gap:0}}.context-menu{min-width:188px;max-width:320px;padding:var(--spacing-xs);background:var(--bg-floating);border-radius:var(--radius-md);z-index:1000;outline:none;animation:.15s cubic-bezier(.2,.9,.4,1) contextMenuIn;position:fixed;box-shadow:0 8px 24px #0006,0 0 0 1px #ffffff0f}@keyframes contextMenuIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item-wrapper{position:relative}.context-menu-item{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--interactive-normal);border-radius:var(--radius-xs);cursor:pointer;text-align:left;transition:all var(--transition-fast);background:0 0;border:none;display:flex}.context-menu-item:hover,.context-menu-item.focused{background-color:var(--color-primary);color:#fff}.context-menu-item.danger{color:var(--text-danger)}.context-menu-item.danger:hover,.context-menu-item.danger.focused{background-color:var(--text-danger);color:#fff}.context-menu-item.disabled{opacity:.5;cursor:not-allowed}.context-menu-item.disabled:hover{color:var(--interactive-normal);background:0 0}.context-menu-icon{opacity:.8;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.context-menu-item:hover .context-menu-icon,.context-menu-item.focused .context-menu-icon{opacity:1}.context-menu-icon svg{width:18px;height:18px}.context-menu-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.context-menu-shortcut{padding-left:var(--spacing-md);font-size:var(--font-size-xs);color:var(--text-muted);opacity:.7;margin-left:auto}.context-menu-item:hover .context-menu-shortcut,.context-menu-item.focused .context-menu-shortcut{color:#ffffffb3}.context-menu-submenu-arrow{opacity:.7;justify-content:center;align-items:center;margin-left:auto;display:flex}.context-menu-item:hover .context-menu-submenu-arrow,.context-menu-item.focused .context-menu-submenu-arrow{opacity:1}.context-menu-divider{height:1px;margin:var(--spacing-xs) var(--spacing-xs);background:linear-gradient(90deg, transparent 0%, var(--bg-modifier-accent) 50%, transparent 100%)}.context-menu-item-wrapper>.context-menu{margin-left:4px;position:absolute;top:0;left:100%}.context-menu-item-wrapper>.context-menu.flip-left{margin-left:0;margin-right:4px;left:auto;right:100%}.context-menu-group-header{padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.context-menu-checkbox{border:2px solid var(--text-muted);border-radius:var(--radius-xs);width:16px;height:16px;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.context-menu-checkbox.checked{background:var(--color-primary);border-color:var(--color-primary)}.context-menu-checkbox.checked:after{content:"";border-top:none;border-bottom:2px solid #fff;border-left:2px solid #fff;border-right:none;width:8px;height:5px;margin-top:-2px;transform:rotate(-45deg)}.context-menu-item:hover .context-menu-checkbox:not(.checked){border-color:#fff}.context-menu-color{border-radius:var(--radius-full);flex-shrink:0;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0000001a}.context-menu-image{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:20px;height:20px}.context-menu-input-wrapper{padding:var(--spacing-xs)}.context-menu-input{width:100%;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-primary);background:var(--bg-primary);border-radius:var(--radius-xs);border:none;outline:none}.context-menu-input:focus{box-shadow:0 0 0 2px var(--color-primary)}.context-menu-input::placeholder{color:var(--text-placeholder)}@media (max-width:768px){.context-menu{min-width:200px}.context-menu-item{padding:var(--spacing-sm) var(--spacing-md)}}@media (prefers-reduced-motion:reduce){.context-menu{animation:none}.context-menu-item{transition:none}}.member-sidebar{width:var(--sidebar-member-width);height:100vh;padding:var(--spacing-xl) var(--spacing-sm) var(--spacing-sm);background-color:var(--bg-secondary);flex-direction:column;display:flex;overflow-y:auto}.role-group{margin-bottom:var(--spacing-lg)}.role-header{padding:var(--spacing-lg) var(--spacing-sm) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--channel-default);text-transform:uppercase;letter-spacing:.02em}.role-members{flex-direction:column;display:flex}.member-item{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);margin:1px 0;display:flex}.member-item:hover{background-color:var(--bg-modifier-hover)}.member-info{text-align:left;flex-direction:column;min-width:0;display:flex}.member-name{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--channel-default);white-space:nowrap;text-overflow:ellipsis;transition:color var(--transition-fast);line-height:1.2;overflow:hidden}.member-item:hover .member-name{color:var(--interactive-hover)}.member-custom-status{font-size:var(--font-size-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;line-height:1.3;overflow:hidden}.member-hover-card{background:var(--bg-floating);border-radius:var(--radius-lg);width:300px;box-shadow:var(--shadow-high);z-index:var(--z-modal);animation:.15s ease-out fadeScaleIn;position:fixed;overflow:hidden}@keyframes fadeScaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.member-card-banner{background-position:50%;background-size:cover;height:60px}.member-card-avatar-wrapper{padding:0 var(--spacing-md);justify-content:flex-start;margin-top:-40px;display:flex}.member-card-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--brand-primary), var(--accent-purple,#9b59b6));border:6px solid var(--bg-floating);width:80px;height:80px;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:#fff;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.member-card-avatar img{object-fit:cover;width:100%;height:100%}.member-card-status{border:4px solid var(--bg-floating);border-radius:50%;width:16px;height:16px;position:absolute;bottom:4px;right:4px}.member-card-content{padding:var(--spacing-md)}.member-card-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--header-primary);margin:0 0 var(--spacing-xxs)}.member-card-username{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--spacing-sm)}.member-card-custom-status{font-size:var(--font-size-sm);color:var(--text-primary);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm)}.member-card-divider{background:var(--border-subtle);height:1px;margin:var(--spacing-sm) 0}.member-card-section{margin-bottom:var(--spacing-md)}.member-card-section h4{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--header-secondary);text-transform:uppercase;letter-spacing:.02em;margin:0 0 var(--spacing-xs)}.member-card-section p{font-size:var(--font-size-sm);color:var(--text-primary);margin:0;line-height:1.4}.member-card-roles{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.member-card-role{padding:var(--spacing-xxs) var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--text-primary);align-items:center;display:inline-flex}.member-card-actions{gap:var(--spacing-sm);margin-top:var(--spacing-md);display:flex}.member-card-btn{padding:var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);flex:1}.member-card-btn.primary{background:var(--brand-primary);color:#fff}.member-card-btn.primary:hover{background:var(--brand-primary-hover)}@media (max-width:1024px){.member-sidebar{z-index:var(--z-sticky);box-shadow:var(--shadow-high);position:absolute;right:0}.member-hover-card{display:none}}.login-page{min-height:100vh;padding:var(--spacing-lg);background:linear-gradient(135deg,#1a1b1e 0%,#2b2d31 50%,#1e1f22 100%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-page:before{content:"";pointer-events:none;background:radial-gradient(circle at 30% 20%,#5865f226 0%,#0000 50%),radial-gradient(circle at 70% 80%,#5865f21a 0%,#0000 40%),radial-gradient(circle,#23a55a0d 0%,#0000 60%);width:200%;height:200%;animation:15s ease-in-out infinite gradientShift;position:absolute;top:-50%;left:-50%}@keyframes gradientShift{0%,to{transform:translate(0)rotate(0)}33%{transform:translate(1%,-1%)rotate(.5deg)}66%{transform:translate(-1%,1%)rotate(-.5deg)}}.login-page:after{content:"";pointer-events:none;background-image:radial-gradient(2px 2px at 20% 30%,#ffffff1a,#0000),radial-gradient(2px 2px at 40% 70%,#ffffff14,#0000),radial-gradient(1px 1px at 60% 20%,#ffffff1f,#0000),radial-gradient(2px 2px at 80%,#ffffff0f,#0000),radial-gradient(1px 1px at 10% 80%,#ffffff1a,#0000),radial-gradient(2px 2px at 90% 10%,#ffffff14,#0000);width:100%;height:100%;animation:8s ease-in-out infinite sparkle;position:absolute;top:0;left:0}@keyframes sparkle{0%,to{opacity:.5}50%{opacity:1}}.login-container{z-index:1;width:100%;max-width:480px;padding:var(--spacing-xxl);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(145deg,#2b2d31f2,#1e1f22fa);animation:.5s cubic-bezier(.16,1,.3,1) forwards containerFadeIn;position:relative;box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0d,inset 0 1px #ffffff0d}@keyframes containerFadeIn{0%{opacity:0;transform:translateY(30px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.login-logo{margin-bottom:var(--spacing-xl);justify-content:center;animation:3s ease-in-out infinite logoFloat;display:flex}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.login-logo svg{width:130px;height:96px;color:var(--color-primary);filter:drop-shadow(0 4px 12px #5865f24d);transition:filter var(--transition-normal), transform var(--transition-normal)}.login-logo:hover svg{filter:drop-shadow(0 6px 20px #5865f280);transform:scale(1.05)}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-title{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);color:var(--header-primary);margin-bottom:var(--spacing-sm);background:linear-gradient(135deg,#fff 0%,#b5bac1 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.login-subtitle{font-size:var(--font-size-md);color:var(--text-muted);letter-spacing:.01em}.login-form{gap:var(--spacing-lg);flex-direction:column;display:flex}.form-label{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;transition:color var(--transition-fast);display:flex}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.form-input:focus.error{box-shadow:0 0 0 3px #f23f4340}.password-input-wrapper{position:relative}.password-toggle{right:var(--spacing-md);padding:var(--spacing-xs);color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.password-toggle:hover{color:var(--interactive-hover);background-color:#ffffff0d}.password-input-wrapper .form-input{padding-right:48px}.forgot-password{margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-link);cursor:pointer;transition:all var(--transition-fast);display:inline-block;position:relative}.forgot-password:after{content:"";background-color:var(--text-link);width:0;height:1px;transition:width var(--transition-normal);position:absolute;bottom:-1px;left:0}.forgot-password:hover:after{width:100%}.login-submit{width:100%;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:#fff;background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);margin-top:var(--spacing-sm);border:none;position:relative;overflow:hidden}.login-submit:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.login-submit:hover:not(:disabled):before{left:100%}.login-submit:hover:not(:disabled){background:linear-gradient(135deg,#4752c4 0%,#3c45a5 100%);transform:translateY(-1px);box-shadow:0 4px 16px #5865f266}.login-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #5865f24d}.login-submit:disabled{opacity:.5;cursor:not-allowed}.login-submit.loading{color:#0000;pointer-events:none}.login-submit.loading:after{content:"";border-radius:var(--radius-full);border:2px solid #ffffff4d;border-top-color:#fff;width:20px;height:20px;margin:-10px 0 0 -10px;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%}.login-divider{align-items:center;gap:var(--spacing-md);margin:var(--spacing-xl) 0;display:flex}.login-divider-line{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);flex:1;height:1px}.login-divider-text{font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.qr-login-section{align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);border-radius:var(--radius-md);transition:all var(--transition-normal);background:linear-gradient(135deg,#1e1f22cc,#2b2d3199);border:1px solid #ffffff0d;display:flex}.qr-login-section:hover{background:linear-gradient(135deg,#1e1f22e6,#2b2d31b3);border-color:#ffffff1a}.qr-code{border-radius:var(--radius-sm);width:80px;height:80px;transition:transform var(--transition-normal);background-color:#fff;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 12px #0003}.qr-login-section:hover .qr-code{transform:scale(1.02)}.qr-code svg{width:64px;height:64px}.qr-login-info{gap:var(--spacing-xs);flex-direction:column;display:flex}.qr-login-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--header-primary)}.qr-login-desc{font-size:var(--font-size-sm);color:var(--text-muted);line-height:var(--line-height-relaxed)}.qr-login-desc strong{color:var(--text-link)}.login-register{margin-top:var(--spacing-md);font-size:var(--font-size-sm);color:var(--text-muted)}.login-register-link{color:var(--text-link);cursor:pointer;transition:all var(--transition-fast);position:relative}.login-register-link:after{content:"";background-color:var(--text-link);width:0;height:1px;transition:width var(--transition-normal);position:absolute;bottom:-1px;left:0}.login-register-link:hover:after{width:100%}@media (max-width:520px){.login-container{padding:var(--spacing-xl);margin:var(--spacing-md);border-radius:var(--radius-md)}.login-title{font-size:var(--font-size-xl)}.qr-login-section{text-align:center;flex-direction:column}}@media (max-width:400px){.login-page{padding:0}.login-container{min-height:100vh;padding:var(--spacing-lg);border-radius:0;flex-direction:column;justify-content:center;margin:0;display:flex}}@media (prefers-reduced-motion:reduce){.login-page:before,.login-page:after,.login-logo{animation:none}.login-container{opacity:1;animation:none;transform:none}.login-submit:before{display:none}}.register-page{min-height:100vh;padding:var(--spacing-lg);background:linear-gradient(135deg,#1a1b1e 0%,#2b2d31 50%,#1e1f22 100%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.register-page:before{content:"";pointer-events:none;background:radial-gradient(circle at 70% 30%,#5865f21f 0%,#0000 50%),radial-gradient(circle at 30% 70%,#23a55a14 0%,#0000 40%),radial-gradient(circle,#5865f20d 0%,#0000 60%);width:200%;height:200%;animation:18s ease-in-out infinite gradientShift;position:absolute;top:-50%;left:-50%}.register-page:after{content:"";pointer-events:none;background-image:radial-gradient(2px 2px at 15% 25%,#ffffff14,#0000),radial-gradient(1px 1px at 35% 65%,#ffffff1a,#0000),radial-gradient(2px 2px at 55% 15%,#ffffff0f,#0000),radial-gradient(1px 1px at 75% 45%,#ffffff1f,#0000),radial-gradient(2px 2px at 85% 75%,#ffffff14,#0000),radial-gradient(1px 1px at 5% 85%,#ffffff1a,#0000);width:100%;height:100%;animation:10s ease-in-out infinite sparkle;position:absolute;top:0;left:0}.register-container{z-index:1;width:100%;max-width:480px;padding:var(--spacing-xl);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(145deg,#2b2d31f2,#1e1f22fa);animation:.5s cubic-bezier(.16,1,.3,1) forwards containerFadeIn;position:relative;box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0d,inset 0 1px #ffffff0d}.register-logo{margin-bottom:var(--spacing-lg);justify-content:center;display:flex}.register-logo svg{width:80px;height:60px;color:var(--color-primary);filter:drop-shadow(0 4px 12px #5865f24d);transition:filter var(--transition-normal), transform var(--transition-normal)}.register-logo:hover svg{filter:drop-shadow(0 6px 20px #5865f280);transform:scale(1.05)}.register-header{text-align:center;margin-bottom:var(--spacing-xl)}.register-title{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);color:var(--header-primary);background:linear-gradient(135deg,#fff 0%,#b5bac1 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.register-form{gap:var(--spacing-md);flex-direction:column;display:flex}.form-label{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;transition:color var(--transition-fast);flex-wrap:wrap;display:flex}.form-label.required:after{content:"*";color:var(--text-danger);margin-left:2px}.form-error-text{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--text-danger);text-transform:none;font-style:italic;animation:.4s ease-in-out shake}.form-input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-md);color:var(--text-primary);border-radius:var(--radius-sm);transition:all var(--transition-fast);background-color:#111214cc;border:1px solid #ffffff14;outline:none}.form-input:hover{border-color:#ffffff1f}.form-input:focus{border-color:var(--color-primary);background-color:#111214;box-shadow:0 0 0 3px #5865f233}.form-input.error{border-color:var(--text-danger);box-shadow:0 0 0 2px #f23f4326}.date-picker-row{gap:var(--spacing-sm);grid-template-columns:1fr 1fr 1fr;display:grid}.form-select{width:100%;padding:var(--spacing-md);font-size:var(--font-size-md);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;appearance:none;transition:all var(--transition-fast);background-color:#111214cc;background-image:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"%23b5bac1\"><path d=\"M7 10l5 5 5-5H7z\"/></svg>");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:1px solid #ffffff14;outline:none}.form-select:focus{border-color:var(--color-primary);background-color:#111214;box-shadow:0 0 0 3px #5865f233}.form-select.error{border-color:var(--text-danger);box-shadow:0 0 0 2px #f23f4326}.form-select option{background-color:var(--bg-floating);color:var(--text-primary);padding:var(--spacing-sm)}.form-checkbox-group{align-items:flex-start;gap:var(--spacing-sm);margin-top:var(--spacing-xs);padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:background-color var(--transition-fast);background-color:#ffffff05;display:flex}.form-checkbox-group:hover{background-color:#ffffff0a}.form-checkbox{appearance:none;border-radius:var(--radius-sm);cursor:pointer;width:24px;height:24px;transition:all var(--transition-fast);background-color:#111214cc;border:2px solid #ffffff26;flex-shrink:0;margin-top:2px;position:relative}.form-checkbox:hover{border-color:#ffffff40}.form-checkbox:checked{background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);border-color:#0000}.form-checkbox:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:6px;height:10px;animation:.2s ease-out forwards checkmark;position:absolute;top:4px;left:7px;transform:rotate(45deg)}@keyframes checkmark{0%{opacity:0;transform:rotate(45deg)scale(.5)}to{opacity:1;transform:rotate(45deg)scale(1)}}.form-checkbox:focus{box-shadow:0 0 0 3px #5865f24d}.form-checkbox-label{font-size:var(--font-size-xs);color:var(--text-muted);line-height:var(--line-height-relaxed);cursor:pointer}.form-checkbox-label a,.form-checkbox-label span.link{color:var(--text-link);cursor:pointer;transition:opacity var(--transition-fast)}.form-checkbox-label a:hover,.form-checkbox-label span.link:hover{opacity:.8;text-decoration:underline}.register-submit{width:100%;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:#fff;background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);margin-top:var(--spacing-md);border:none;position:relative;overflow:hidden}.register-submit:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.register-submit:hover:not(:disabled):before{left:100%}.register-submit:hover:not(:disabled){background:linear-gradient(135deg,#4752c4 0%,#3c45a5 100%);transform:translateY(-1px);box-shadow:0 4px 16px #5865f266}.register-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #5865f24d}.register-submit:disabled{opacity:.5;cursor:not-allowed}.register-submit.loading{color:#0000;pointer-events:none}.register-submit.loading:after{content:"";border-radius:var(--radius-full);border:2px solid #ffffff4d;border-top-color:#fff;width:20px;height:20px;margin:-10px 0 0 -10px;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%}.register-terms{margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--text-muted);line-height:var(--line-height-relaxed)}.register-terms a,.register-terms span.link{color:var(--text-link);cursor:pointer;transition:opacity var(--transition-fast)}.register-terms a:hover,.register-terms span.link:hover{opacity:.8;text-decoration:underline}.register-login{margin-top:var(--spacing-sm);font-size:var(--font-size-sm)}.register-login-link{color:var(--text-link);cursor:pointer;transition:all var(--transition-fast);position:relative}.register-login-link:after{content:"";background-color:var(--text-link);width:0;height:1px;transition:width var(--transition-normal);position:absolute;bottom:-1px;left:0}.register-login-link:hover:after{width:100%}@media (max-width:520px){.register-container{padding:var(--spacing-lg);margin:var(--spacing-md);border-radius:var(--radius-md)}.register-title{font-size:var(--font-size-xl)}.date-picker-row{grid-template-columns:1fr}}@media (max-width:400px){.register-page{padding:0}.register-container{min-height:100vh;padding:var(--spacing-lg);border-radius:0;flex-direction:column;justify-content:center;margin:0;display:flex}}@media (prefers-reduced-motion:reduce){.register-page:before,.register-page:after{animation:none}.register-container{opacity:1;animation:none;transform:none}.register-submit:before{display:none}.form-checkbox:checked:after{animation:none}}.email-verification-page{min-height:100vh;padding:var(--spacing-xl);background:linear-gradient(135deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.email-verification-page:before,.email-verification-page:after{content:"";filter:blur(100px);opacity:.3;border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.email-verification-page:before{background:var(--brand-primary);width:500px;height:500px;top:-200px;left:-200px}.email-verification-page:after{background:var(--accent-purple,#9b59b6);width:400px;height:400px;animation-delay:-10s;bottom:-150px;right:-150px}@keyframes float{0%,to{transform:translate(0)scale(1)}25%{transform:translate(30px,30px)scale(1.05)}50%{transform:translateY(50px)scale(1)}75%{transform:translate(-30px,20px)scale(.95)}}.verification-container{width:100%;max-width:400px;padding:var(--spacing-xxl);background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-large);text-align:center;z-index:1;animation:.4s ease-out slideUp;position:relative}.verification-logo{width:64px;height:64px;margin:0 auto var(--spacing-xl);color:var(--brand-primary);justify-content:center;align-items:center;display:flex}.verification-logo svg{width:100%;height:100%}.verification-header{margin-bottom:var(--spacing-xl)}.verification-title{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);color:var(--header-primary);margin:0 0 var(--spacing-sm)}.verification-subtitle{font-size:var(--font-size-md);color:var(--text-secondary);line-height:var(--line-height-relaxed);margin:0}.verification-subtitle strong{color:var(--text-primary)}.verification-code-container{margin-bottom:var(--spacing-xl)}.code-inputs{gap:var(--spacing-sm);margin-bottom:var(--spacing-md);justify-content:center;display:flex}.code-input{width:48px;height:56px;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);text-align:center;color:var(--text-primary);background-color:var(--bg-tertiary);border-radius:var(--radius-md);transition:all var(--transition-fast);caret-color:var(--brand-primary);border:2px solid #0000;outline:none;padding:0}.code-input:focus{border-color:var(--brand-primary);background-color:var(--bg-secondary);box-shadow:0 0 0 3px #5865f240}.code-input.filled{border-color:var(--status-success);background-color:#23a55a1a}.code-input.error{border-color:var(--status-danger);background-color:#da373c1a;animation:.3s ease-in-out shake}.code-input:disabled{opacity:.5;cursor:not-allowed}.verification-error{color:var(--status-danger);font-size:var(--font-size-sm);margin:var(--spacing-sm) 0 0;animation:.2s ease-out fadeIn}.verification-loading{justify-content:center;align-items:center;gap:var(--spacing-sm);color:var(--text-muted);font-size:var(--font-size-sm);margin-top:var(--spacing-md);display:flex}.loading-spinner{border:2px solid var(--bg-tertiary);border-top-color:var(--brand-primary);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.verification-resend{margin-bottom:var(--spacing-xl)}.resend-text{font-size:var(--font-size-sm);color:var(--text-muted);margin:0}.resend-btn{color:var(--text-link);font-size:inherit;cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;text-decoration:none}.resend-btn:hover:not(:disabled){color:var(--text-link-hover);text-decoration:underline}.resend-btn:disabled{opacity:.5;cursor:not-allowed}.resend-countdown{color:var(--text-muted);font-weight:var(--font-weight-medium)}.verification-back{align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;display:inline-flex}.verification-back:hover{color:var(--text-primary)}.verification-success{animation:.3s ease-out scaleIn}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.success-icon{width:80px;height:80px;margin:0 auto var(--spacing-xl);background:linear-gradient(135deg, var(--status-success), #1a7f45);color:#fff;border-radius:50%;justify-content:center;align-items:center;animation:.4s ease-out successPop;display:flex}@keyframes successPop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.success-icon svg{width:40px;height:40px}.btn-primary{width:100%;padding:var(--spacing-md) var(--spacing-xl);margin-top:var(--spacing-xl);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:#fff;background:linear-gradient(135deg, var(--brand-primary), var(--brand-primary-hover));border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:none}.btn-primary:hover{box-shadow:var(--shadow-medium);transform:translateY(-2px)}@media (max-width:480px){.email-verification-page{padding:var(--spacing-md)}.verification-container{padding:var(--spacing-xl) var(--spacing-lg)}.code-inputs{gap:var(--spacing-xs)}.code-input{width:42px;height:48px;font-size:var(--font-size-lg)}}@media (prefers-reduced-motion:reduce){.email-verification-page:before,.email-verification-page:after,.verification-container,.code-input.error,.verification-success,.success-icon{animation:none}}.password-reset-page{min-height:100vh;padding:var(--spacing-xl);background:linear-gradient(135deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.password-reset-page:before,.password-reset-page:after{content:"";filter:blur(100px);opacity:.3;border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.password-reset-page:before{background:var(--brand-primary);width:500px;height:500px;top:-200px;right:-200px}.password-reset-page:after{background:var(--accent-purple,#9b59b6);width:400px;height:400px;animation-delay:-10s;bottom:-150px;left:-150px}.reset-container{width:100%;max-width:400px;padding:var(--spacing-xxl);background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-large);text-align:center;z-index:1;animation:.4s ease-out slideUp;position:relative}.reset-logo{width:64px;height:64px;margin:0 auto var(--spacing-xl);color:var(--brand-primary);justify-content:center;align-items:center;display:flex}.reset-logo svg{width:100%;height:100%}.reset-success-icon{width:80px;height:80px;margin:0 auto var(--spacing-xl);background:linear-gradient(135deg, var(--brand-primary), var(--brand-primary-hover));color:#fff;border-radius:50%;justify-content:center;align-items:center;animation:.4s ease-out successPop;display:flex}.reset-success-icon svg{width:40px;height:40px}.reset-header{margin-bottom:var(--spacing-xl)}.reset-title{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);color:var(--header-primary);margin:0 0 var(--spacing-sm)}.reset-subtitle{font-size:var(--font-size-md);color:var(--text-secondary);line-height:var(--line-height-relaxed);margin:0}.reset-subtitle strong{color:var(--text-primary)}.reset-form{text-align:left}.form-label{margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em;display:block}.form-label.error{color:var(--status-danger)}.form-error-text{font-weight:var(--font-weight-normal);text-transform:none;font-style:italic}.form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md);color:var(--text-primary);background-color:var(--bg-tertiary);border-radius:var(--radius-sm);transition:box-shadow var(--transition-fast);border:none;outline:none}.form-input:focus{box-shadow:0 0 0 2px var(--brand-primary)}.form-input.error{box-shadow:0 0 0 2px var(--status-danger);animation:.3s ease-in-out shake}.form-input::placeholder{color:var(--text-muted)}.form-input:disabled{opacity:.5;cursor:not-allowed}.reset-submit-btn{width:100%;padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:#fff;background:linear-gradient(135deg, var(--brand-primary), var(--brand-primary-hover));border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast);justify-content:center;align-items:center;gap:var(--spacing-sm);border:none;display:flex}.reset-submit-btn:hover:not(:disabled){box-shadow:var(--shadow-medium);transform:translateY(-2px)}.reset-submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.reset-submit-btn.loading{background:var(--brand-primary)}.btn-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.reset-info{padding:var(--spacing-md);margin-bottom:var(--spacing-xl);background-color:var(--bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--brand-primary)}.reset-info p{font-size:var(--font-size-sm);color:var(--text-muted);line-height:var(--line-height-relaxed);margin:0}.reset-back-btn{align-items:center;gap:var(--spacing-xs);margin-top:var(--spacing-xl);color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;display:inline-flex}.reset-back-btn:hover{color:var(--text-primary)}@media (max-width:480px){.password-reset-page{padding:var(--spacing-md)}.reset-container{padding:var(--spacing-xl) var(--spacing-lg)}}@media (prefers-reduced-motion:reduce){.password-reset-page:before,.password-reset-page:after,.reset-container,.form-input.error,.reset-success-icon,.btn-spinner{animation:none}}.friends-view{background-color:var(--bg-primary);flex-direction:column;height:100%;display:flex}.friends-header{align-items:center;gap:var(--spacing-lg);padding:0 var(--spacing-lg);height:var(--header-height);min-height:var(--header-height);border-bottom:1px solid var(--bg-tertiary);background:linear-gradient(#31333880 0%,#0000 100%);flex-shrink:0;display:flex}.friends-header-icon{align-items:center;gap:var(--spacing-sm);color:var(--text-muted);padding-right:var(--spacing-lg);border-right:1px solid #ffffff0f;display:flex}.friends-header-icon svg{width:24px;height:24px}.friends-header-title{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--header-primary)}.friends-tabs{align-items:center;gap:var(--spacing-xxs);display:flex}.friends-tab{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;position:relative}.friends-tab:hover{background-color:var(--bg-modifier-hover);color:var(--interactive-hover)}.friends-tab.active{background-color:var(--bg-modifier-selected);color:var(--interactive-active)}.friends-tab.add-friend{background:linear-gradient(135deg, var(--color-success) 0%, #1a7f45 100%);color:#fff;box-shadow:0 2px 8px #23a55a4d}.friends-tab.add-friend:hover{background:linear-gradient(135deg,#1a7f45 0%,#156b3a 100%);transform:translateY(-1px);box-shadow:0 4px 12px #23a55a66}.friends-tab.add-friend:active{transform:translateY(0)}.friends-toolbar{align-items:center;gap:var(--spacing-sm);margin-left:auto;display:flex}.toolbar-btn{width:32px;height:32px;color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.toolbar-btn:hover{color:var(--interactive-hover);background-color:var(--bg-modifier-hover)}.friends-content{padding:var(--spacing-lg) var(--spacing-xl);flex:1;overflow-y:auto}.friends-search{margin-bottom:var(--spacing-lg);position:relative}.friends-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);color:var(--text-primary);background-color:var(--bg-tertiary);border-radius:var(--radius-sm);transition:all var(--transition-fast);border:1px solid #0000;outline:none}.friends-search-input::placeholder{color:var(--text-muted)}.friends-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #5865f226}.friends-section-header{padding:var(--spacing-md) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;display:flex}.friends-list{flex-direction:column;display:flex}.friend-item{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border-top:1px solid #0000;border-bottom:1px solid #ffffff0a;display:flex;position:relative}.friend-item:before{content:"";background:var(--color-primary);opacity:0;width:3px;height:100%;transition:all var(--transition-fast);border-radius:0 3px 3px 0;position:absolute;top:0;left:0;transform:scaleY(.5)}.friend-item:hover{background-color:var(--bg-modifier-hover)}.friend-item:hover:before{opacity:1;transform:scaleY(1)}.friend-item:first-child{border-top:1px solid #ffffff0a}.friend-avatar{flex-shrink:0;position:relative}.friend-info{gap:var(--spacing-xxs);flex-direction:column;flex:1;min-width:0;display:flex}.friend-name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--header-primary);transition:color var(--transition-fast)}.friend-item:hover .friend-name{color:var(--interactive-active)}.friend-status{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;display:flex;overflow:hidden}.friend-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.friend-actions{align-items:center;gap:var(--spacing-sm);opacity:0;transition:all var(--transition-fast);display:flex;transform:translate(10px)}.friend-item:hover .friend-actions{opacity:1;transform:translate(0)}.friend-action-btn{width:36px;height:36px;color:var(--interactive-normal);background-color:var(--bg-secondary);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.friend-action-btn:hover{color:var(--interactive-hover);background-color:var(--bg-modifier-active);transform:scale(1.1)}.friend-action-btn.danger:hover{color:var(--text-danger);background-color:#f23f431a}.pending-info{gap:var(--spacing-xxs);flex-direction:column;flex:1;min-width:0;display:flex}.pending-type{font-size:var(--font-size-xs);color:var(--text-muted)}.pending-actions{gap:var(--spacing-sm);display:flex}.pending-accept-btn{width:36px;height:36px;color:var(--color-success);background-color:var(--bg-secondary);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.pending-accept-btn:hover{background-color:#23a55a26;transform:scale(1.1)}.pending-decline-btn{width:36px;height:36px;color:var(--text-danger);background-color:var(--bg-secondary);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.pending-decline-btn:hover{background-color:#f23f4326;transform:scale(1.1)}.add-friend-section{padding:var(--spacing-xl);border-radius:var(--radius-md);margin-bottom:var(--spacing-xl);background:linear-gradient(135deg,#5865f20d 0%,#0000 100%);border:1px solid #5865f21a}.add-friend-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--header-primary);text-transform:uppercase;letter-spacing:.02em;margin-bottom:var(--spacing-sm)}.add-friend-desc{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-lg);line-height:var(--line-height-relaxed)}.add-friend-form{position:relative}.add-friend-input{width:100%;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-md);color:var(--text-primary);border-radius:var(--radius-md);transition:all var(--transition-fast);background-color:#11121499;border:1px solid #ffffff14;outline:none;padding-right:180px}.add-friend-input:hover{border-color:#ffffff1f}.add-friend-input:focus{border-color:var(--color-primary);background-color:#111214cc;box-shadow:0 0 0 3px #5865f226}.add-friend-input::placeholder{color:var(--text-muted)}.add-friend-input.error{border-color:var(--text-danger);box-shadow:0 0 0 3px #f23f431a}.add-friend-input.success{border-color:var(--color-success);box-shadow:0 0 0 3px #23a55a1a}.add-friend-submit{right:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:#fff;background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap;border:none;position:absolute;top:50%;transform:translateY(-50%)}.add-friend-submit:hover:not(:disabled){background:linear-gradient(135deg,#4752c4 0%,#3c45a5 100%);box-shadow:0 4px 12px #5865f24d}.add-friend-submit:disabled{opacity:.5;cursor:not-allowed}.add-friend-message{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);border-radius:var(--radius-sm);animation:.3s ease-out slideIn}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.add-friend-message.error{color:var(--text-danger);background-color:#f23f431a}.add-friend-message.success{color:var(--color-success);background-color:#23a55a1a}.friends-empty{padding:var(--spacing-xxxl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.friends-empty-image{width:200px;height:200px;margin-bottom:var(--spacing-xl);opacity:.5}.friends-empty-image svg{width:100%;height:100%;color:var(--text-muted)}.friends-empty-title{font-size:var(--font-size-md);color:var(--text-muted);margin-bottom:var(--spacing-sm)}.friends-empty-desc{font-size:var(--font-size-sm);color:var(--text-muted)}.wumpus-container{padding:var(--spacing-xxxl);flex-direction:column;flex:1;justify-content:center;align-items:center;animation:.5s ease-out fadeIn;display:flex}.wumpus-image{width:300px;height:180px;margin-bottom:var(--spacing-lg);opacity:.4;transition:opacity var(--transition-normal)}.wumpus-container:hover .wumpus-image{opacity:.6}.wumpus-text{font-size:var(--font-size-md);color:var(--text-muted);text-align:center;max-width:400px;line-height:var(--line-height-relaxed)}@media (max-width:768px){.friends-header{height:auto;padding:var(--spacing-md);gap:var(--spacing-md);flex-wrap:wrap}.friends-header-icon{border-right:none;padding-right:0}.friends-tabs{width:100%;padding-bottom:var(--spacing-sm);gap:var(--spacing-xs);order:3;overflow-x:auto}.friends-tabs::-webkit-scrollbar{display:none}.friends-toolbar{order:2}.friends-content{padding:var(--spacing-md)}.add-friend-input{padding-right:var(--spacing-lg)}.add-friend-submit{width:100%;margin-top:var(--spacing-md);padding:var(--spacing-md);position:relative;top:auto;right:auto;transform:none}.add-friend-form{flex-direction:column;display:flex}.friend-actions{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.friend-item:before,.friend-actions,.friend-action-btn,.pending-accept-btn,.pending-decline-btn,.wumpus-container,.add-friend-message{transition:none;animation:none}}.user-settings{background-color:var(--bg-tertiary);z-index:1000;animation:.3s cubic-bezier(.16,1,.3,1) settingsSlideIn;display:flex;position:fixed;inset:0}@keyframes settingsSlideIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.settings-sidebar{background-color:var(--bg-secondary);flex-direction:column;flex-shrink:0;width:218px;min-width:218px;padding:60px 6px 60px 20px;display:flex;position:relative;overflow-y:auto}.settings-sidebar:after{content:"";background:linear-gradient(#0000 0%,#ffffff0f 50%,#0000 100%);width:1px;position:absolute;top:0;bottom:0;right:0}.settings-nav{flex-direction:column;gap:2px;display:flex}.nav-section-header{padding:var(--spacing-md) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--channels-default);text-transform:uppercase;letter-spacing:.05em}.nav-section-header:not(:first-child){margin-top:var(--spacing-md)}.nav-separator{background:linear-gradient(90deg, transparent 0%, var(--bg-modifier-accent) 50%, transparent 100%);height:1px;margin:var(--spacing-sm) 0}.nav-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-md);color:var(--interactive-normal);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;width:100%;display:flex;position:relative}.nav-item:before{content:"";background:var(--color-primary);width:4px;height:70%;transition:transform var(--transition-fast);border-radius:0 4px 4px 0;position:absolute;top:50%;left:-6px;transform:translateY(-50%)scaleY(0)}.nav-item:hover{background-color:var(--bg-modifier-hover);color:var(--interactive-hover)}.nav-item.active{background-color:var(--bg-modifier-selected);color:var(--interactive-active)}.nav-item.active:before{transform:translateY(-50%)scaleY(1)}.nav-item.danger{color:var(--text-danger)}.nav-item.danger:hover{color:var(--text-danger);background-color:#f23f431a}.nav-item-icon{opacity:.7;flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-item:hover .nav-item-icon,.nav-item.active .nav-item-icon{opacity:1}.nav-item-label{font-weight:var(--font-weight-medium)}.settings-content{background:linear-gradient(135deg, var(--bg-tertiary) 0%, #1e1f22f2 100%);flex:1;justify-content:flex-start;padding:60px 40px 80px;display:flex;overflow-y:auto}.settings-content-inner{width:100%;max-width:740px}.settings-close svg{flex-shrink:0;width:18px;height:18px}.settings-close:hover{border-color:var(--interactive-hover);color:var(--interactive-hover);background-color:var(--bg-modifier-hover)}.close-hint{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-medium);text-align:center}.settings-section{animation:.3s ease-out sectionFadeIn}@keyframes sectionFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--header-primary);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--bg-modifier-accent);background:linear-gradient(135deg,#fff 0%,#b5bac1 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.subsection-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--header-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-md)}.subsection-title.danger{color:var(--text-danger)}.settings-group{margin-bottom:var(--spacing-xl)}.divider{background:linear-gradient(90deg, transparent 0%, var(--bg-modifier-accent) 50%, transparent 100%);height:1px;margin:var(--spacing-xl) 0}.help-text{font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:var(--spacing-md);line-height:var(--line-height-relaxed)}.account-card{background:linear-gradient(145deg, var(--bg-secondary), #1e1f22cc);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 4px 20px #0003}.account-banner{background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);height:100px;position:relative}.account-info{padding:0 var(--spacing-lg) var(--spacing-lg);align-items:flex-end;margin-top:-40px;display:flex;position:relative}.account-avatar{margin-right:var(--spacing-lg);position:relative}.avatar-placeholder{border-radius:var(--radius-full);width:80px;height:80px;font-size:32px;font-weight:var(--font-weight-bold);color:#fff;border:6px solid var(--bg-secondary);box-sizing:content-box;background:linear-gradient(135deg,#5865f2 0%,#4752c4 100%);justify-content:center;align-items:center;display:flex}.avatar-edit-btn{border-radius:var(--radius-full);background:var(--bg-primary);border:3px solid var(--bg-secondary);width:28px;height:28px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex;position:absolute;bottom:0;right:0}.avatar-edit-btn:hover{background:var(--color-primary);color:#fff}.account-details{flex:1}.account-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--header-primary)}.account-tag{font-size:var(--font-size-sm);color:var(--text-muted)}.edit-profile-btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#fff;background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none}.edit-profile-btn:hover{background:linear-gradient(135deg,#4752c4 0%,#3c45a5 100%);transform:translateY(-1px);box-shadow:0 4px 12px #5865f266}.account-fields{padding:var(--spacing-lg);background:#0003}.field-row{padding:var(--spacing-md) 0;border-bottom:1px solid #ffffff0a;align-items:center;display:flex}.field-row:last-child{border-bottom:none}.field-label{width:160px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.field-value{font-size:var(--font-size-md);color:var(--text-primary);flex:1}.field-value.placeholder{color:var(--text-muted);font-style:italic}.field-edit-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#fff;background-color:var(--bg-modifier-accent);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none}.field-edit-btn:hover{background-color:var(--bg-modifier-hover)}.btn-primary{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#fff;background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none}.btn-primary:hover{background:linear-gradient(135deg,#4752c4 0%,#3c45a5 100%);transform:translateY(-1px);box-shadow:0 4px 12px #5865f266}.btn-secondary{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);background-color:var(--bg-modifier-accent);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none}.btn-secondary:hover{background-color:var(--bg-modifier-hover)}.btn-text{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none}.btn-text:hover{color:var(--text-primary);text-decoration:underline}.btn-danger{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#fff;background:linear-gradient(135deg, var(--text-danger) 0%, #c72b2f 100%);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none}.btn-danger:hover{background:linear-gradient(135deg,#c72b2f 0%,#a52528 100%);transform:translateY(-1px);box-shadow:0 4px 12px #f23f4366}.btn-outline-danger{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-danger);border:1px solid var(--text-danger);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0}.btn-outline-danger:hover{background-color:#f23f431a}.danger-buttons{gap:var(--spacing-md);margin-top:var(--spacing-md);display:flex}.danger-zone{margin-top:var(--spacing-lg)}.two-fa-section{margin-top:var(--spacing-lg);padding:var(--spacing-lg);border-radius:var(--radius-md);background:#0003}.two-fa-section h4{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--header-primary);margin-bottom:var(--spacing-xs)}.form-group{margin-bottom:var(--spacing-lg)}.form-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm);display:block}.form-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md);color:var(--text-primary);background-color:var(--bg-primary);border-radius:var(--radius-sm);cursor:pointer;appearance:none;transition:all var(--transition-fast);background-image:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"%23b5bac1\"><path d=\"M7 10l5 5 5-5H7z\"/></svg>");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:1px solid #ffffff14}.form-select:hover{border-color:#ffffff1f}.form-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #5865f233}.form-textarea{width:100%;min-height:100px;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md);color:var(--text-primary);background-color:var(--bg-primary);border-radius:var(--radius-sm);resize:vertical;transition:all var(--transition-fast);border:1px solid #ffffff14;font-family:inherit}.form-textarea:hover{border-color:#ffffff1f}.form-textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #5865f233}.form-textarea::placeholder{color:var(--text-placeholder)}.char-count{text-align:right;font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--spacing-xs);display:block}.toggle-group{gap:var(--spacing-md);flex-direction:column;display:flex}.toggle-item{padding:var(--spacing-md);border-radius:var(--radius-md);transition:background-color var(--transition-fast);background:#0003;justify-content:space-between;align-items:center;display:flex}.toggle-item:hover{background:#0000004d}.toggle-info{gap:var(--spacing-xxs);flex-direction:column;display:flex}.toggle-label{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--header-primary)}.toggle-desc{font-size:var(--font-size-sm);color:var(--text-muted)}.toggle{flex-shrink:0;width:44px;height:24px;display:inline-block;position:relative}.toggle input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:var(--bg-modifier-accent);transition:all var(--transition-fast);border-radius:24px;position:absolute;inset:0}.toggle-slider:before{content:"";border-radius:var(--radius-full);width:18px;height:18px;transition:all var(--transition-fast);background-color:#fff;position:absolute;bottom:3px;left:3px;box-shadow:0 2px 4px #0003}.toggle input:checked+.toggle-slider{background:linear-gradient(135deg, var(--color-success) 0%, #1a7f45 100%)}.toggle input:checked+.toggle-slider:before{transform:translate(20px)}.toggle input:focus+.toggle-slider{box-shadow:0 0 0 2px #5865f24d}.radio-group{gap:var(--spacing-sm);flex-direction:column;display:flex}.radio-item{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:#0003;display:flex}.radio-item:hover{background:#0000004d}.radio-item input[type=radio]{appearance:none;border:2px solid var(--text-muted);border-radius:var(--radius-full);cursor:pointer;width:20px;height:20px;transition:all var(--transition-fast);flex-shrink:0;margin-top:2px;position:relative}.radio-item input[type=radio]:checked{border-color:var(--color-primary);background:var(--color-primary)}.radio-item input[type=radio]:checked:after{content:"";border-radius:var(--radius-full);background:#fff;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.radio-label{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--header-primary);display:block}.radio-desc{font-size:var(--font-size-sm);color:var(--text-muted);margin-top:var(--spacing-xxs);display:block}.theme-selector{gap:var(--spacing-lg);display:flex}.theme-option{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:2px solid #0000;flex-direction:column;display:flex}.theme-option:hover{background:#ffffff0d}.theme-option.selected{border-color:var(--color-primary);background:#5865f21a}.theme-preview{border-radius:var(--radius-sm);width:120px;height:80px;display:flex;overflow:hidden;box-shadow:0 2px 10px #0000004d}.theme-preview.dark{background:#1e1f22}.theme-preview.light{background:#f2f3f5}.theme-preview-sidebar{background:#0003;width:30%}.theme-preview-content{background:#8080801a;width:70%}.theme-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.display-selector{gap:var(--spacing-lg);display:flex}.display-option{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:2px solid #0000;flex-direction:column;display:flex}.display-option:hover{background:#ffffff0d}.display-option.selected{border-color:var(--color-primary);background:#5865f21a}.display-preview{border-radius:var(--radius-sm);background:var(--bg-primary);width:140px;height:60px;padding:var(--spacing-sm);gap:var(--spacing-sm);display:flex}.display-preview.cozy{flex-direction:row;align-items:flex-start}.display-preview.compact{flex-direction:column;justify-content:center}.preview-avatar{border-radius:var(--radius-full);background:var(--color-primary);flex-shrink:0;width:32px;height:32px}.preview-lines{flex-direction:column;flex:1;gap:6px;display:flex}.preview-line{background:var(--bg-modifier-accent);border-radius:4px;height:10px}.preview-line.short{width:60%}.display-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.slider-group{margin-bottom:var(--spacing-md)}.slider-labels{font-size:var(--font-size-xs);color:var(--text-muted);margin-bottom:var(--spacing-sm);justify-content:space-between;display:flex}.slider{background:var(--bg-modifier-accent);appearance:none;cursor:pointer;border-radius:3px;width:100%;height:6px}.slider::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);cursor:pointer;width:16px;height:16px;transition:transform var(--transition-fast);box-shadow:0 2px 6px #0000004d}.slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.slider::-moz-range-thumb{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);cursor:pointer;border:none;width:16px;height:16px;box-shadow:0 2px 6px #0000004d}.slider-value{text-align:center;font-size:var(--font-size-sm);color:var(--color-primary);font-weight:var(--font-weight-medium);margin-top:var(--spacing-sm)}.font-preview{padding:var(--spacing-md);background:var(--bg-primary);border-radius:var(--radius-sm);color:var(--text-primary);margin-top:var(--spacing-md)}.volume-group{gap:var(--spacing-lg);grid-template-columns:1fr 1fr;display:grid}.video-preview{margin-top:var(--spacing-md)}.video-preview-placeholder{background:var(--bg-primary);border-radius:var(--radius-md);justify-content:center;align-items:center;gap:var(--spacing-sm);width:100%;height:200px;color:var(--text-muted);flex-direction:column;display:flex}.video-preview-placeholder svg{opacity:.5;width:48px;height:48px}.keybinds-list{gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);flex-direction:column;display:flex}.keybind-item{padding:var(--spacing-md);border-radius:var(--radius-sm);transition:background-color var(--transition-fast);background:#0003;justify-content:space-between;align-items:center;display:flex}.keybind-item:hover{background:#0000004d}.keybind-action{font-size:var(--font-size-md);color:var(--text-primary)}.keybind-keys{align-items:center;gap:var(--spacing-xxs);display:flex}.key{min-width:24px;padding:var(--spacing-xxs) var(--spacing-xs);font-size:var(--font-size-xs);font-family:inherit;font-weight:var(--font-weight-medium);color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--bg-modifier-accent);border-radius:var(--radius-xs);box-shadow:0 2px 0 var(--bg-modifier-accent);justify-content:center;align-items:center;display:inline-flex}.key-separator{color:var(--text-muted);margin:0 2px}.add-keybind{align-items:center;gap:var(--spacing-sm);display:flex}.language-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.language-item{padding:var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:#0003;border:2px solid #0000;align-items:center;width:100%;display:flex}.language-item:hover{background:#0000004d}.language-item.selected{border-color:var(--color-primary);background:#5865f21a}.language-name{font-size:var(--font-size-md);color:var(--text-primary);flex:1}.language-native{font-size:var(--font-size-sm);color:var(--text-muted);margin-right:var(--spacing-md)}.language-check{color:var(--color-primary);font-weight:var(--font-weight-bold)}.profile-preview{background:linear-gradient(145deg, var(--bg-secondary), #1e1f22cc);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);overflow:hidden}.profile-tabs{padding:var(--spacing-sm);gap:var(--spacing-xs);background:#0003;display:flex}.profile-tab{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none}.profile-tab:hover{color:var(--text-primary);background:#ffffff0d}.profile-tab.active{color:var(--text-primary);background:var(--bg-modifier-selected)}.profile-card-preview{padding:var(--spacing-lg)}.profile-banner-preview{background:linear-gradient(135deg, var(--color-primary) 0%, #4752c4 100%);border-radius:var(--radius-md);justify-content:center;align-items:center;height:120px;display:flex;position:relative}.change-banner-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#fff;border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:opacity var(--transition-fast);background:#00000080;border:none}.profile-banner-preview:hover .change-banner-btn{opacity:1}.profile-avatar-preview{width:fit-content;margin-top:-50px;margin-left:var(--spacing-lg);position:relative}.avatar-large{border-radius:var(--radius-full);width:100px;height:100px;font-size:40px;font-weight:var(--font-weight-bold);color:#fff;border:8px solid var(--bg-secondary);background:linear-gradient(135deg,#5865f2 0%,#4752c4 100%);justify-content:center;align-items:center;display:flex}.change-avatar-btn{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:#fff;border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:opacity var(--transition-fast);background:#000000b3;border:none;position:absolute;bottom:0;right:0}.profile-avatar-preview:hover .change-avatar-btn{opacity:1}.profile-info-preview{padding:var(--spacing-md) var(--spacing-lg)}.profile-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--header-primary)}.profile-tag{font-size:var(--font-size-sm);color:var(--text-muted)}.profile-fields{margin-top:var(--spacing-lg)}.avatar-upload-area{align-items:center;gap:var(--spacing-lg);display:flex}.avatar-upload-preview{border-radius:var(--radius-full);width:80px;height:80px;font-size:32px;font-weight:var(--font-weight-bold);color:#fff;background:linear-gradient(135deg,#5865f2 0%,#4752c4 100%);justify-content:center;align-items:center;display:flex}.avatar-upload-actions{gap:var(--spacing-xs);flex-direction:column;display:flex}.color-picker{align-items:center;gap:var(--spacing-sm);display:flex}.color-preview{border-radius:var(--radius-md);cursor:pointer;border:2px solid #ffffff1a;width:48px;height:48px}.color-input{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md);color:var(--text-primary);background:var(--bg-primary);border-radius:var(--radius-sm);border:1px solid #ffffff14;width:120px}.color-input:focus{border-color:var(--color-primary);outline:none}.coming-soon .coming-soon-content{padding:var(--spacing-xxxl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.coming-soon-icon{margin-bottom:var(--spacing-lg);font-size:64px}.coming-soon-text{font-size:var(--font-size-lg);color:var(--header-primary);margin-bottom:var(--spacing-sm)}.coming-soon-desc{font-size:var(--font-size-md);color:var(--text-muted)}@media (max-width:1024px){.settings-sidebar{width:180px;min-width:180px;padding:40px 6px 40px 16px}.settings-content{padding:40px 20px 60px}.settings-close-wrapper{top:20px;right:20px}}@media (max-width:768px){.user-settings{flex-direction:column}.settings-sidebar{width:100%;min-width:100%;padding:var(--spacing-md);flex-direction:row;overflow:auto hidden}.settings-sidebar:after{display:none}.settings-nav{gap:var(--spacing-xs);flex-direction:row}.nav-section-header{display:none}.nav-separator{width:1px;height:24px;margin:0 var(--spacing-xs)}.nav-item{padding:var(--spacing-sm) var(--spacing-md);white-space:nowrap}.nav-item:before{display:none}.settings-content{padding:var(--spacing-lg);flex:1}.settings-close-wrapper{top:var(--spacing-md);right:var(--spacing-md);position:absolute}.close-hint{display:none}.theme-selector,.display-selector{flex-direction:column}.volume-group{grid-template-columns:1fr}.account-info{flex-direction:column;align-items:flex-start}.account-avatar{margin-bottom:var(--spacing-md)}.edit-profile-btn{margin-top:var(--spacing-md);width:100%}.field-row{align-items:flex-start;gap:var(--spacing-xs);flex-direction:column}.field-label{width:auto}.field-edit-btn{align-self:flex-end}.danger-buttons{flex-direction:column}}@media (prefers-reduced-motion:reduce){.user-settings,.settings-section,.settings-close:hover{transition:none;animation:none;transform:none}}.server-settings-page{background:var(--bg-tertiary);z-index:var(--z-modal);outline:none;display:flex;position:fixed;inset:0}.server-settings-nav{background:var(--bg-secondary);width:220px;min-width:220px;padding:var(--spacing-lg) 0;flex-direction:column;display:flex;overflow-y:auto}.nav-header{padding:0 var(--spacing-md) var(--spacing-md);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--spacing-md)}.nav-header h2{font-size:var(--font-size-md);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:700;overflow:hidden}.nav-section{padding:0 var(--spacing-sm)}.nav-section-title{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;font-weight:700;display:block}.nav-item{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.nav-item:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.nav-item.active{background:var(--bg-modifier-selected);color:var(--text-primary)}.nav-item svg{opacity:.7;flex-shrink:0}.nav-item.active svg,.nav-item:hover svg{opacity:1}.server-settings-content{padding:var(--spacing-xl) var(--spacing-xxl);flex:1;max-width:740px;overflow-y:auto}.server-settings-section h2{font-size:var(--font-size-xl);color:var(--text-primary);margin:0 0 var(--spacing-xs) 0;font-weight:700}.section-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--spacing-xl) 0}.server-identity{gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);flex-direction:column;display:flex}.server-icon-upload{align-items:center;gap:var(--spacing-lg);display:flex}.icon-preview{border-radius:var(--radius-full);background:var(--bg-secondary);width:100px;height:100px;color:var(--text-primary);justify-content:center;align-items:center;font-size:36px;font-weight:700;display:flex;overflow:hidden}.icon-preview img{object-fit:cover;width:100%;height:100%}.icon-actions{gap:var(--spacing-xs);flex-direction:column;display:flex}.upload-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--brand-primary);color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-fast);border:none;font-weight:500}.upload-btn:hover{background:var(--brand-primary-hover)}.upload-hint{font-size:var(--font-size-xs);color:var(--text-muted)}.form-group{gap:var(--spacing-xs);flex-direction:column;display:flex}.form-group label{font-size:var(--font-size-sm);color:var(--text-secondary);text-transform:uppercase;font-weight:600}.form-group input,.form-group textarea,.form-group select{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-md);transition:border-color var(--transition-fast)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--brand-primary);outline:none}.form-group textarea{resize:vertical;min-height:100px}.char-count{font-size:var(--font-size-xs);color:var(--text-muted);text-align:right}.settings-card{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.settings-card h3{font-size:var(--font-size-md);color:var(--text-primary);margin:0 0 var(--spacing-xs) 0;font-weight:600}.settings-card p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--spacing-md) 0}.settings-card select{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-md)}.danger-zone{border:1px solid var(--status-danger)}.danger-zone h3{color:var(--status-danger)}.danger-actions{align-items:center;gap:var(--spacing-lg);display:flex}.btn-danger{padding:var(--spacing-sm) var(--spacing-lg);background:var(--status-danger);color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);border:none;font-weight:500}.btn-danger:hover{background:var(--status-danger-hover)}.danger-warning{font-size:var(--font-size-xs);color:var(--text-muted);margin:0}.roles-section{gap:var(--spacing-xl);display:flex}.roles-sidebar{width:200px;min-width:200px}.roles-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.roles-header h3{font-size:var(--font-size-sm);color:var(--text-primary);margin:0;font-weight:600}.add-role-btn{background:var(--brand-primary);border-radius:var(--radius-full);color:#fff;cursor:pointer;width:28px;height:28px;transition:background var(--transition-fast);border:none;justify-content:center;align-items:center;padding:0;display:flex}.add-role-btn:hover{background:var(--brand-primary-hover)}.roles-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.role-item{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.role-item:hover{background:var(--bg-modifier-hover)}.role-item.active{background:var(--bg-modifier-selected)}.role-color{border-radius:var(--radius-full);flex-shrink:0;width:12px;height:12px}.role-name{font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.role-members{font-size:var(--font-size-xs);color:var(--text-muted)}.role-settings{flex:1}.no-role-selected{justify-content:center;align-items:center;gap:var(--spacing-md);height:300px;color:var(--text-muted);flex-direction:column;display:flex}.no-role-selected svg{opacity:.3}.color-picker-grid{gap:var(--spacing-sm);margin-top:var(--spacing-sm);flex-wrap:wrap;display:flex}.color-swatch{border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);border:2px solid #0000}.color-swatch:hover{transform:scale(1.1)}.color-swatch.active{box-shadow:0 0 0 2px var(--brand-primary);border-color:#fff}.toggle-group{padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-subtle)}.toggle-group:last-child{border-bottom:none}.toggle-label{cursor:pointer;justify-content:space-between;align-items:center;display:flex}.toggle-text{flex-direction:column;gap:2px;display:flex}.toggle-text strong{font-size:var(--font-size-sm);color:var(--text-primary);font-weight:500}.toggle-text small{font-size:var(--font-size-xs);color:var(--text-muted)}.toggle-label input[type=checkbox]{opacity:0;position:absolute}.toggle-slider{background:var(--bg-modifier-accent);width:40px;height:24px;transition:background var(--transition-fast);border-radius:12px;flex-shrink:0;position:relative}.toggle-slider:after{content:"";width:20px;height:20px;transition:transform var(--transition-fast);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.toggle-label input:checked+.toggle-slider{background:var(--brand-primary)}.toggle-label input:checked+.toggle-slider:after{transform:translate(16px)}.permissions-list{max-height:400px;overflow-y:auto}.delete-role-btn{margin-top:var(--spacing-lg)}.emoji-upload-area{align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);display:flex}.upload-emoji-btn{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--brand-primary);color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-fast);border:none;font-weight:500;display:flex}.upload-emoji-btn:hover{background:var(--brand-primary-hover)}.upload-requirements{font-size:var(--font-size-xs);color:var(--text-muted)}.emoji-stats{gap:var(--spacing-xl);margin-bottom:var(--spacing-lg);display:flex}.emoji-stat{align-items:baseline;gap:var(--spacing-xs);display:flex}.stat-value{font-size:var(--font-size-xl);color:var(--text-primary);font-weight:700}.stat-label{font-size:var(--font-size-sm);color:var(--text-muted)}.emoji-list{background:var(--bg-secondary);border-radius:var(--radius-md);overflow:hidden}.emoji-list-header{gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;grid-template-columns:100px 1fr 80px;font-weight:600;display:grid}.emoji-item{gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-subtle);grid-template-columns:100px 1fr 80px;align-items:center;display:grid}.emoji-item:last-child{border-bottom:none}.emoji-preview{align-items:center;gap:var(--spacing-sm);display:flex}.emoji-placeholder{font-size:var(--font-size-sm);color:var(--text-secondary)}.animated-badge{background:var(--brand-primary);color:#fff;border-radius:var(--radius-xs);padding:2px 4px;font-size:10px}.emoji-name-input{padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm)}.emoji-actions{gap:var(--spacing-xs);display:flex}.emoji-action-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.emoji-action-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.emoji-action-btn.danger:hover{background:var(--status-danger);color:#fff}.verification-levels,.filter-options{gap:var(--spacing-sm);flex-direction:column;display:flex}.verification-option,.filter-option{align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);display:flex}.verification-option:hover,.filter-option:hover{background:var(--bg-modifier-hover)}.verification-option input,.filter-option input{margin-top:3px}.option-content{flex-direction:column;display:flex}.option-content strong{font-size:var(--font-size-sm);color:var(--text-primary)}.option-content small{font-size:var(--font-size-xs);color:var(--text-muted)}.audit-filters{gap:var(--spacing-md);margin-bottom:var(--spacing-lg);display:flex}.audit-filters select,.audit-filters input{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm)}.audit-filters input{flex:1}.audit-log-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.audit-log-item{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);display:flex}.log-avatar{border-radius:var(--radius-full);background:var(--brand-primary);width:36px;height:36px;font-size:var(--font-size-sm);color:#fff;justify-content:center;align-items:center;font-weight:600;display:flex}.log-content{gap:var(--spacing-xs);flex-wrap:wrap;flex:1;display:flex}.log-user{color:var(--text-primary);font-weight:600}.log-action{color:var(--text-secondary)}.log-target{color:var(--text-primary)}.log-time{font-size:var(--font-size-xs);color:var(--text-muted)}.bans-search{margin-bottom:var(--spacing-lg)}.bans-search input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm)}.bans-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.ban-item{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);display:flex}.ban-avatar{border-radius:var(--radius-full);background:var(--status-danger);width:40px;height:40px;font-size:var(--font-size-md);color:#fff;justify-content:center;align-items:center;font-weight:600;display:flex}.ban-info{flex-direction:column;flex:1;display:flex}.ban-username{color:var(--text-primary);font-weight:600}.ban-reason{font-size:var(--font-size-sm);color:var(--text-secondary)}.unban-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-modifier-accent);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-fast);border:none}.unban-btn:hover{background:var(--brand-primary);color:#fff}.integrations-list{gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-direction:column;display:flex}.integration-item{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);display:flex}.integration-icon{border-radius:var(--radius-full);background:var(--brand-primary);color:#fff;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.integration-info{flex-direction:column;flex:1;display:flex}.integration-name{color:var(--text-primary);font-weight:600}.integration-commands{font-size:var(--font-size-sm);color:var(--text-secondary)}.manage-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-modifier-accent);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-fast);border:none}.manage-btn:hover{background:var(--bg-modifier-hover)}.add-integration-btn{justify-content:center;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-md);border:2px dashed var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;display:flex}.add-integration-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.toggle-group.large{padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);border:none}.widget-preview{background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--spacing-md);text-align:center}.widget-header{gap:var(--spacing-xs);margin-bottom:var(--spacing-md);flex-direction:column;display:flex}.widget-server-name{color:var(--text-primary);font-weight:700}.widget-member-count{font-size:var(--font-size-sm);color:var(--text-muted)}.widget-content{margin-bottom:var(--spacing-md)}.widget-online{font-size:var(--font-size-sm);color:var(--status-success)}.widget-join-btn{width:100%;padding:var(--spacing-sm);background:var(--brand-primary);color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;border:none;font-weight:500}.settings-close-wrapper{align-items:center;gap:var(--spacing-xs);z-index:100;flex-direction:column;display:flex;position:fixed;top:60px;right:40px}.settings-close{border:2px solid var(--bg-modifier-accent);border-radius:var(--radius-full);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;padding:0;display:flex}.settings-close:hover{background:var(--bg-modifier-hover);border-color:var(--text-secondary);color:var(--text-primary)}.close-hint{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:600}@media (max-width:1024px){.server-settings-content{padding:var(--spacing-lg)}.roles-section{flex-direction:column}.roles-sidebar{width:100%;min-width:unset}.roles-list{flex-flow:wrap}}@media (max-width:768px){.server-settings-page{flex-direction:column}.server-settings-nav{width:100%;min-width:unset;padding:var(--spacing-sm);flex-direction:row;overflow-x:auto}.nav-header{display:none}.nav-section{padding:0;display:flex}.nav-section-title{display:none}.nav-item{padding:var(--spacing-sm);white-space:nowrap}.nav-item span{display:none}.settings-close-wrapper{top:auto;bottom:var(--spacing-lg);right:var(--spacing-lg)}.emoji-list-header,.emoji-item{grid-template-columns:80px 1fr auto}.audit-filters{flex-direction:column}}@media (prefers-reduced-motion:reduce){.toggle-slider:after{transition:none}}.app-layout{background-color:var(--bg-tertiary);width:100vw;height:100vh;display:flex;overflow:hidden}.channel-sidebar-wrapper{width:var(--sidebar-channel-width);background-color:var(--bg-secondary);flex-shrink:0;display:flex}.main-content{background-color:var(--bg-primary);flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.member-sidebar-wrapper{background-color:var(--bg-secondary);width:0;transition:width var(--transition-normal);flex-shrink:0;display:none;overflow:hidden}.member-sidebar-wrapper.open{width:var(--sidebar-member-width);display:flex}.mobile-overlay{z-index:var(--z-modal-backdrop);background-color:#000000b3;display:none;position:fixed;inset:0}@media (max-width:1024px){.member-sidebar-wrapper.open{width:var(--sidebar-member-width)}}@media (max-width:768px){.app-layout{position:relative}.app-layout>:first-child{display:none}.channel-sidebar-wrapper{width:85%;max-width:320px;transition:transform var(--transition-normal);z-index:var(--z-modal);box-shadow:var(--shadow-high);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.channel-sidebar-wrapper.mobile-open{transform:translate(0)}.main-content{flex:1;width:100%}.member-sidebar-wrapper{display:none!important}.mobile-overlay{display:block}}@media (max-width:480px){.channel-sidebar-wrapper{width:100%;max-width:none}}.starred-messages-view{height:100%;padding:var(--spacing-xl);flex-direction:column;display:flex}.starred-messages-header{margin-bottom:var(--spacing-xl)}.starred-messages-header h2{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);color:var(--header-primary);margin:0 0 var(--spacing-xs)}.starred-messages-header p{font-size:var(--font-size-md);color:var(--text-muted);margin:0}.starred-messages-empty{text-align:center;color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.starred-messages-empty svg{margin-bottom:var(--spacing-lg);color:var(--color-warning)}.starred-messages-empty p{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin:0 0 var(--spacing-xs)}.starred-messages-empty span{font-size:var(--font-size-sm)}:root{--color-primary:#5865f2;--color-primary-hover:#4752c4;--color-primary-active:#3c45a5;--color-success:#23a55a;--color-success-hover:#1a7f45;--color-warning:#f0b232;--color-danger:#da373c;--color-danger-hover:#a12828;--color-info:#00a8fc;--color-status-online:#23a55a;--color-status-idle:#f0b232;--color-status-dnd:#f23f43;--color-status-offline:#80848e;--color-status-streaming:#593695;--bg-primary:#313338;--bg-secondary:#2b2d31;--bg-tertiary:#1e1f22;--bg-accent:#404249;--bg-floating:#111214;--bg-mobile-primary:#313338;--bg-mobile-secondary:#27292d;--bg-modifier-hover:#4f545c66;--bg-modifier-active:#4f545c99;--bg-modifier-selected:#4f545ccc;--bg-modifier-accent:#4f545c7a;--text-primary:#f2f3f5;--text-secondary:#b5bac1;--text-muted:#949ba4;--text-placeholder:#87898c;--text-link:#00a8fc;--text-positive:#23a55a;--text-warning:#f0b232;--text-danger:#f23f43;--header-primary:#f2f3f5;--header-secondary:#b5bac1;--channel-default:#80848e;--channel-icon:#80848e;--channel-text-area:#383a40;--interactive-normal:#b5bac1;--interactive-hover:#dbdee1;--interactive-active:#fff;--interactive-muted:#4e5058;--border-subtle:#ffffff0f;--border-strong:#ffffff1f;--border-faint:#ffffff08;--scrollbar-thin-track:transparent;--scrollbar-thin-thumb:#1a1b1e;--scrollbar-auto-track:#2b2d31;--scrollbar-auto-thumb:#1a1b1e;--scrollbar-auto-scrollbar-color-thumb:#1a1b1e;--scrollbar-auto-scrollbar-color-track:#2b2d31;--input-bg:#1e1f22;--input-placeholder:#87898c;--font-primary:"gg sans", "Noto Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-display:"gg sans", "Noto Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-code:"Consolas", "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;--font-headline:"ABC Ginto Nord", "Noto Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-size-xxs:10px;--font-size-xs:12px;--font-size-sm:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:20px;--font-size-xxl:24px;--font-size-xxxl:32px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.125;--line-height-normal:1.375;--line-height-relaxed:1.5;--spacing-xxs:2px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:16px;--spacing-xl:24px;--spacing-xxl:32px;--spacing-xxxl:48px;--radius-xs:3px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-xxl:24px;--radius-full:50%;--radius-pill:9999px;--shadow-low:0 1px 2px #0003;--shadow-medium:0 4px 8px #0000003d;--shadow-high:0 8px 16px #0000003d;--shadow-popup:0 0 0 1px #00000014, 0 8px 16px #0000003d;--shadow-floating:0 2px 10px 0 #0003;--transition-fast:.1s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;--transition-slower:.4s ease;--transition-button:background-color .17s ease, color .17s ease;--transition-focus:box-shadow .1s ease;--z-base:0;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-notification:800;--z-max:9999;--sidebar-server-width:72px;--sidebar-channel-width:240px;--sidebar-member-width:240px;--header-height:48px;--user-area-height:52px;--message-input-min-height:44px;--avatar-sm:24px;--avatar-md:32px;--avatar-lg:40px;--avatar-xl:80px;--avatar-xxl:120px;--breakpoint-mobile:480px;--breakpoint-tablet:768px;--breakpoint-desktop:1024px;--breakpoint-wide:1280px}[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f2f3f5;--bg-tertiary:#e3e5e8;--bg-accent:#ebedef;--bg-floating:#fff;--bg-modifier-hover:#747f8d29;--bg-modifier-active:#747f8d3d;--bg-modifier-selected:#747f8d52;--text-primary:#060607;--text-secondary:#4e5058;--text-muted:#5c5e66;--text-placeholder:#6d6f78;--header-primary:#060607;--header-secondary:#4e5058;--channel-default:#5c5e66;--channel-icon:#6d6f78;--channel-text-area:#ebedef;--interactive-normal:#4e5058;--interactive-hover:#313338;--interactive-active:#060607;--interactive-muted:#c4c9ce;--border-subtle:#0000000f;--border-strong:#0000001f;--scrollbar-thin-thumb:#c4c9ce;--scrollbar-auto-thumb:#c4c9ce;--scrollbar-auto-track:#f2f3f5;--input-bg:#e3e5e8}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-moz-text-size-adjust:none;text-size-adjust:none}body{min-height:100vh;line-height:var(--line-height-normal);font-family:var(--font-primary);font-size:var(--font-size-md);color:var(--text-primary);background-color:var(--bg-tertiary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{line-height:var(--line-height-tight);text-wrap:balance}a{color:inherit;text-decoration:none}a:not([class]){text-decoration-skip-ink:auto;color:var(--text-link)}img,picture,video,canvas,svg{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit;color:inherit}textarea{resize:vertical}button{cursor:pointer;background:0 0;border:none;padding:0}button:disabled{cursor:not-allowed}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:focus{outline:none}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}fieldset{border:none}table{border-collapse:collapse;border-spacing:0}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:""}[hidden]{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#root{flex-direction:column;min-height:100vh;display:flex}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thin-thumb) var(--scrollbar-thin-track)}.scrollbar-thin::-webkit-scrollbar{width:8px;height:8px}.scrollbar-thin::-webkit-scrollbar-track{background:var(--scrollbar-thin-track);border-radius:var(--radius-sm)}.scrollbar-thin::-webkit-scrollbar-thumb{background:var(--scrollbar-thin-thumb);border-radius:var(--radius-sm)}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background:var(--interactive-muted)}.scrollbar-auto{scrollbar-width:auto;scrollbar-color:var(--scrollbar-auto-scrollbar-color-thumb) var(--scrollbar-auto-scrollbar-color-track)}.scrollbar-auto::-webkit-scrollbar{width:16px;height:16px}.scrollbar-auto::-webkit-scrollbar-track{background:var(--scrollbar-auto-track);border-radius:var(--radius-md);background-clip:padding-box;border:4px solid #0000}.scrollbar-auto::-webkit-scrollbar-thumb{background:var(--scrollbar-auto-thumb);border-radius:var(--radius-md);background-clip:padding-box;border:4px solid #0000;min-height:40px}.scrollbar-auto::-webkit-scrollbar-thumb:hover{background-color:var(--interactive-muted);background-clip:padding-box;border:4px solid #0000}.scrollbar-auto::-webkit-scrollbar-corner{background:0 0}.scrollbar-hidden{scrollbar-width:none;-ms-overflow-style:none}.scrollbar-hidden::-webkit-scrollbar{display:none}.scrollbar-ghost{scrollbar-width:thin;scrollbar-color:transparent transparent}.scrollbar-ghost::-webkit-scrollbar{width:8px;height:8px}.scrollbar-ghost::-webkit-scrollbar-track{background:0 0}.scrollbar-ghost::-webkit-scrollbar-thumb{border-radius:var(--radius-sm);transition:background var(--transition-normal);background:0 0}.scrollbar-ghost:hover{scrollbar-color:var(--scrollbar-thin-thumb) transparent}.scrollbar-ghost:hover::-webkit-scrollbar-thumb{background:var(--scrollbar-thin-thumb)}.scrollbar-ghost:hover::-webkit-scrollbar-thumb:hover{background:var(--interactive-muted)}.scrollbar-server-list{scrollbar-width:none;-ms-overflow-style:none}.scrollbar-server-list::-webkit-scrollbar{width:0;height:0}.scrollbar-channel-list{scrollbar-width:thin;scrollbar-color:transparent transparent}.scrollbar-channel-list::-webkit-scrollbar{width:8px}.scrollbar-channel-list::-webkit-scrollbar-track{background:0 0;margin:8px 0}.scrollbar-channel-list::-webkit-scrollbar-thumb{border-radius:var(--radius-sm);background:padding-box padding-box;border:2px solid #0000}.scrollbar-channel-list:hover{scrollbar-color:var(--bg-tertiary) transparent}.scrollbar-channel-list:hover::-webkit-scrollbar-thumb{background:var(--bg-tertiary);background-clip:padding-box;border:2px solid #0000}.scrollbar-chat{scrollbar-width:thin;scrollbar-color:var(--scrollbar-auto-thumb) var(--scrollbar-auto-track)}.scrollbar-chat::-webkit-scrollbar{width:16px}.scrollbar-chat::-webkit-scrollbar-track{background:var(--scrollbar-auto-track);border-radius:0}.scrollbar-chat::-webkit-scrollbar-thumb{background:var(--scrollbar-auto-thumb);border:4px solid var(--scrollbar-auto-track);border-radius:var(--radius-md);min-height:40px}.scrollbar-chat::-webkit-scrollbar-thumb:hover{background:var(--interactive-muted)}.scrollbar-members{scrollbar-width:thin;scrollbar-color:transparent transparent}.scrollbar-members::-webkit-scrollbar{width:8px}.scrollbar-members::-webkit-scrollbar-track{background:0 0}.scrollbar-members::-webkit-scrollbar-thumb{border-radius:var(--radius-sm);background:0 0}.scrollbar-members:hover{scrollbar-color:var(--bg-tertiary) transparent}.scrollbar-members:hover::-webkit-scrollbar-thumb{background:var(--bg-tertiary)}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-20px)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulseRing{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}@keyframes skeleton{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes progress{0%{width:0%}to{width:100%}}@keyframes ripple{0%{opacity:.5;transform:scale(0)}to{opacity:0;transform:scale(4)}}@keyframes messageArrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes notificationPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes serverIconHover{0%{border-radius:50%}to{border-radius:var(--radius-xl)}}.animate-fadeIn{animation:fadeIn var(--transition-normal) forwards}.animate-fadeOut{animation:fadeOut var(--transition-normal) forwards}.animate-fadeInUp{animation:fadeInUp var(--transition-normal) forwards}.animate-scaleIn{animation:scaleIn var(--transition-normal) forwards}.animate-slideInLeft{animation:slideInLeft var(--transition-normal) forwards}.animate-slideInRight{animation:slideInRight var(--transition-normal) forwards}.animate-popIn{animation:.2s cubic-bezier(.68,-.55,.265,1.55) forwards popIn}.animate-bounce{animation:.6s infinite bounce}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-spin{animation:1s linear infinite spin}.animate-shake{animation:.4s shake}.transition-none{transition:none!important}.transition-all{transition:all var(--transition-normal)}.transition-colors{transition:color var(--transition-normal), background-color var(--transition-normal), border-color var(--transition-normal)}.transition-opacity{transition:opacity var(--transition-normal)}.transition-transform{transition:transform var(--transition-normal)}.hover-lift:hover{transform:translateY(-2px)}.hover-scale:hover{transform:scale(1.05)}.hover-scale-sm:hover{transform:scale(1.02)}h1,.h1{font-size:var(--font-size-xxxl);font-weight:var(--font-weight-bold);color:var(--header-primary);line-height:var(--line-height-tight)}h2,.h2{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);color:var(--header-primary);line-height:var(--line-height-tight)}h3,.h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--header-primary);line-height:var(--line-height-tight)}h4,.h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--header-primary)}h5,.h5{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--header-primary)}h6,.h6{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--header-secondary);text-transform:uppercase;letter-spacing:.02em}.text-body{font-size:var(--font-size-md);color:var(--text-primary);line-height:var(--line-height-normal)}.text-body-sm{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-normal)}.text-caption{font-size:var(--font-size-xs);color:var(--text-muted);line-height:var(--line-height-normal)}.text-small{font-size:var(--font-size-xxs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;font-weight:var(--font-weight-semibold)}code,.text-code{font-family:var(--font-code);background:var(--bg-secondary);border-radius:var(--radius-xs);padding:.2em .4em;font-size:.875em}pre{font-family:var(--font-code);font-size:var(--font-size-sm);background:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--radius-md);overflow-x:auto}.text-link{color:var(--text-link);cursor:pointer;transition:var(--transition-colors)}.text-link:hover{text-decoration:underline}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-success{color:var(--text-positive)}.text-warning{color:var(--text-warning)}.text-danger{color:var(--text-danger)}::selection{background:var(--color-primary);color:#fff}.focus-ring:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.divider{background:var(--border-subtle);height:1px;margin:var(--spacing-md) 0;border:none}.divider-vertical{background:var(--border-subtle);width:1px;height:24px;margin:0 var(--spacing-md)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.invisible{visibility:hidden}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-100{opacity:1}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.flex{display:flex}.inline-flex{display:inline-flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.flex-auto{flex:auto}.flex-none{flex:none}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.grid{display:grid}.m-0{margin:0}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.mt-auto{margin-top:auto}.mb-auto{margin-bottom:auto}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.p-0{padding:0}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.select-all{-webkit-user-select:all;user-select:all}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.bg-accent{background-color:var(--bg-accent)}.bg-transparent{background-color:#0000}
