@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap";:root{--bg-primary: #0a0a0c;--bg-secondary: #111114;--bg-tertiary: #18181c;--bg-surface: #222228;--bg-modifier-hover: rgba(255, 255, 255, .035);--bg-modifier-active: rgba(255, 255, 255, .06);--bg-modifier-selected: rgba(249, 115, 22, .08);--text-primary: #ededf0;--text-secondary: #8c8c99;--text-muted: #4c4c58;--text-link: #fb923c;--brand-primary: #f97316;--brand-hover: #ea580c;--brand-active: #c2410c;--status-online: #34d399;--status-idle: #facc15;--status-dnd: #fb7185;--status-offline: #4c4c58;--border-subtle: rgba(255, 255, 255, .06);--border-hover: rgba(255, 255, 255, .1);--scrollbar-thumb: #28282e;--scrollbar-track: transparent;--header-height: 50px;--sidebar-width: 240px;--guild-bar-width: 62px;--member-bar-width: 240px;--font-sans: "DM Sans", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .6);--shadow-glow: 0 0 24px rgba(249, 115, 22, .08);--anim-fast: .15s;--anim-normal: .25s;--anim-slow: .4s;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-scale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-6px) scaleY(.96)}to{opacity:1;transform:translateY(0) scaleY(1)}}@keyframes pop-in{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes tab-content-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:0}a{color:var(--text-link);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border:none;background:none;color:inherit;font:inherit}input,textarea{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:10px 14px;font:inherit;outline:none;transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus{border-color:var(--brand-primary);box-shadow:0 0 0 2px #f973161f}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3a3a42}.flex{display:flex}.flex-col{flex-direction:column}.flex-1{flex:1}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:8px}.gap-4{gap:16px}.w-full{width:100%}.h-full{height:100%}.overflow-y-auto{overflow-y:auto}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-page{display:flex;align-items:center;justify-content:center;height:100%;background:var(--bg-primary);background-image:radial-gradient(ellipse at 20% 50%,rgba(249,115,22,.06) 0%,transparent 60%),radial-gradient(ellipse at 80% 50%,rgba(249,115,22,.03) 0%,transparent 60%)}.auth-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow-lg);backdrop-filter:blur(12px);animation:fade-in-scale var(--anim-normal) var(--ease-spring)}.auth-card h1{text-align:center;margin-bottom:6px;font-size:22px;font-weight:700;letter-spacing:-.02em}.auth-card p{text-align:center;color:var(--text-muted);margin-bottom:24px;font-size:14px}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;letter-spacing:.06em}.form-group input{width:100%;padding:10px 14px;background:var(--bg-surface);border-radius:var(--radius-sm);font-size:15px}.btn-primary{width:100%;padding:11px;background:var(--brand-primary);color:#fff;border-radius:var(--radius-md);font-size:15px;font-weight:600;margin-top:8px;transition:background .15s ease,transform .1s ease,box-shadow .15s ease}.btn-primary:hover{background:var(--brand-hover);box-shadow:0 2px 12px #f9731633}.btn-primary:active{background:var(--brand-active);transform:scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.auth-footer{margin-top:20px;font-size:13px;color:var(--text-muted);text-align:center}.auth-footer a{font-size:13px}.error-msg{background:#fb718514;color:#fb7185;padding:10px 14px;border-radius:var(--radius-sm);border-left:3px solid #fb7185;font-size:13px;margin-bottom:16px}.notice-msg{background:#34d39914;color:#34d399;padding:10px 14px;border-radius:var(--radius-sm);border-left:3px solid #34d399;font-size:13px;margin-bottom:16px;line-height:1.5}.app-shell{display:flex;height:100%;width:100%}.app-shell.layout-server-top{flex-direction:column}.app-shell.layout-server-top .app-shell-main{display:flex;flex-direction:column;flex:1;min-height:0}.app-shell.layout-server-left{flex-direction:row}.app-shell.layout-server-left .app-shell-main{display:flex;flex-direction:column;flex:1;min-width:0}.app-shell.layout-server-right{flex-direction:row}.app-shell.layout-server-right .app-shell-main{display:flex;flex-direction:column;flex:1;min-width:0}.app-shell.layout-server-bottom{flex-direction:column}.app-shell.layout-server-bottom .app-shell-main{display:flex;flex-direction:column;flex:1;min-height:0}.top-nav{height:var(--header-height);background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;padding:0 12px;gap:8px;flex-shrink:0;z-index:10}.nav-brand{font-size:16px;font-weight:800;color:var(--brand-primary);letter-spacing:-.04em;padding-right:12px;cursor:default;user-select:none}.server-selector{position:relative}.server-selector-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:14px;font-weight:600;color:var(--text-primary);cursor:pointer;transition:background .12s ease,border-color .12s ease;max-width:200px}.server-selector-btn:hover{background:var(--bg-modifier-hover);border-color:var(--border-hover)}.server-selector-btn .chevron{font-size:10px;color:var(--text-muted);transition:transform .15s ease}.server-selector-btn .chevron.open{transform:rotate(180deg)}.server-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:220px;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;padding:4px;max-height:320px;overflow-y:auto;transform-origin:top center;animation:slide-down var(--anim-fast) var(--ease-out-expo)}.server-dropdown-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;color:var(--text-secondary);transition:background .15s ease,color .15s ease,transform .12s var(--ease-spring);width:100%;text-align:left}.server-dropdown-item:hover{background:var(--bg-modifier-hover);color:var(--text-primary);transform:translate(3px)}.server-dropdown-item:active{transform:scale(.97)}.server-dropdown-item.active{background:var(--bg-modifier-selected);color:var(--text-primary)}.server-dropdown-item .server-icon-sm{width:28px;height:28px;border-radius:var(--radius-sm);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;overflow:hidden}.server-dropdown-item.active .server-icon-sm{background:var(--brand-primary);color:#fff}.server-dropdown-divider{height:1px;background:var(--border-subtle);margin:4px 0}.nav-spacer{flex:1}.nav-actions{display:flex;align-items:center;gap:2px}.nav-icon-btn{width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease,transform .12s var(--ease-spring);position:relative}.nav-icon-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary);transform:scale(1.1)}.nav-icon-btn:active{transform:scale(.92)}.nav-icon-btn.active{background:var(--bg-modifier-selected);color:var(--brand-primary)}.nav-user-avatar{width:28px;height:28px;border-radius:var(--radius-md);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;cursor:pointer;margin-left:4px;transition:box-shadow .12s ease}.nav-user-avatar:hover{box-shadow:0 0 0 2px var(--border-hover)}.channel-sidebar{width:240px;background:var(--bg-secondary);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.channel-sidebar-header{height:var(--header-height);display:flex;align-items:center;padding:0 16px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.channel-sidebar-guild-name{font-size:15px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-sidebar-list{flex:1;overflow-y:auto;padding:8px 0}.channel-sidebar-category{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 4px}.channel-sidebar-category-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.channel-sidebar-add{width:18px;height:18px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--text-muted);cursor:pointer;transition:color .15s ease,background .15s ease}.channel-sidebar-add:hover{color:var(--text-primary);background:var(--bg-modifier-hover)}.channel-sidebar-item{display:flex;align-items:center;gap:8px;width:calc(100% - 16px);margin:1px 8px;padding:7px 10px;border-radius:var(--radius-md);font-size:14px;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.channel-sidebar-item:hover{background:var(--bg-modifier-hover);color:var(--text-secondary)}.channel-sidebar-item.active{background:var(--bg-modifier-active);color:var(--text-primary);font-weight:600}.channel-sidebar-item.unread{color:var(--text-primary);font-weight:600}.channel-sidebar-item.unread .channel-sidebar-icon{opacity:1}.channel-sidebar-item.voice{color:var(--status-online)}.channel-sidebar-item.voice.active{background:#34d39914}.channel-sidebar-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.6}.channel-sidebar-item.active .channel-sidebar-icon{opacity:1}.channel-sidebar-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-sidebar-empty{padding:24px 16px;text-align:center;color:var(--text-muted);font-size:13px}.channel-sidebar-empty p{margin-bottom:12px}.member-panel{width:240px;background:var(--bg-secondary);border-left:1px solid var(--border-subtle);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.member-panel-header{height:var(--header-height);display:flex;align-items:center;padding:0 16px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.member-panel-title{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.06em}.member-panel-list{flex:1;overflow-y:auto;padding:8px 0}.member-panel-category{padding:12px 16px 4px;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.06em}.member-panel-item{display:flex;align-items:center;gap:10px;padding:6px 16px;cursor:pointer;transition:background .15s ease}.member-panel-item:hover{background:var(--bg-modifier-hover)}.member-panel-item .mp-avatar{width:32px;height:32px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;position:relative;color:#fff}.member-panel-item .mp-status-dot{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:var(--radius-full);border:2px solid var(--bg-secondary)}.member-panel-item .mp-info{min-width:0}.member-panel-item .mp-name{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.channel-strip{height:38px;background:var(--bg-primary);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;padding:0 12px;gap:2px;overflow-x:auto;overflow-y:hidden;flex-shrink:0}.channel-strip::-webkit-scrollbar{height:0}.channel-tab{display:flex;align-items:center;gap:5px;padding:5px 14px;border-radius:var(--radius-full);font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease,transform .12s var(--ease-spring),box-shadow .15s ease;flex-shrink:0}.channel-tab:hover{background:var(--bg-modifier-hover);color:var(--text-secondary);transform:translateY(-1px)}.channel-tab:active{transform:scale(.96)}.channel-tab.active{background:var(--bg-surface);color:var(--text-primary);font-weight:600;box-shadow:0 1px 4px #00000026}.channel-tab.voice{color:var(--status-online)}.channel-tab.voice.active{background:#34d3991a;color:var(--status-online)}.channel-tab .tab-icon{font-size:14px;opacity:.6}.channel-tab .tab-badge{width:6px;height:6px;border-radius:3px;background:var(--brand-primary)}.channel-add-btn{width:28px;height:28px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:background .15s ease,color .15s ease,transform .15s var(--ease-spring)}.channel-add-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary);transform:rotate(90deg) scale(1.1)}.app-body{flex:1;display:flex;position:relative;overflow:hidden}.main-content{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg-tertiary)}.messages-area{flex:1;overflow-y:auto;padding:8px 0}.message{padding:3px 16px 3px 72px;position:relative;min-height:24px;overflow:visible;transition:background .08s ease}.message:after{content:"";display:table;clear:both}.message.has-attachments{padding-bottom:10px;margin-bottom:4px}.message:hover{background:var(--bg-modifier-hover)}.message:hover .msg-hover-time{display:block}.message-self{padding-left:16px;padding-right:72px;text-align:right}.message-system{display:flex;align-items:center;justify-content:center;gap:8px;padding:4px 16px;min-height:auto}.message-system:hover{background:transparent}.msg-system-text{font-size:12px;color:var(--text-muted);font-style:italic}.msg-system-time{font-size:10px;color:var(--text-muted);opacity:.6}.message-self .msg-header{justify-content:flex-end}.message-self .msg-content{background:var(--brand-primary);color:#fff;border-radius:18px 18px 4px;padding:8px 14px;display:inline-block;text-align:left;max-width:80%;margin-left:auto}.message-self .msg-attachments{text-align:right}.message-self .msg-att-image,.message-self .msg-att-video,.message-self .msg-att-audio,.message-self .msg-att-file{margin-left:auto;margin-right:0;width:fit-content}.link-embed,.invite-embed,.poll-embed{text-align:left}.message-self .poll-embed,.message-self .msg-thread-indicator{margin-left:auto;margin-right:0}.message-self .msg-gif-embed{margin-left:auto;margin-right:0;width:fit-content}.message-self .msg-hover-time{left:auto;right:16px}.message-other{padding-left:72px;padding-right:16px}.message-other .msg-content{background:var(--bg-surface);border-radius:18px 18px 18px 4px;padding:8px 14px;display:inline-block;text-align:left;max-width:80%}.message-group-start{margin-top:20px;min-height:44px;padding-top:6px;animation:fade-in-up var(--anim-fast) var(--ease-out-expo)}.message .msg-avatar{position:absolute;left:16px;top:4px;width:36px;height:36px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;cursor:pointer;flex-shrink:0;overflow:hidden}.msg-avatar img,.mp-avatar img,.home-dm-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}.message-self .msg-avatar{left:auto;right:16px}.message .msg-header{display:flex;align-items:baseline;gap:8px}.message .msg-author{font-weight:600;font-size:15px;cursor:pointer}.message .msg-author:hover{text-decoration:underline}.message .msg-bot-tag{display:inline-block;margin-left:6px;padding:0 5px;font-size:10px;font-weight:700;line-height:16px;letter-spacing:.4px;color:#fff;background:var(--accent, #5865f2);border-radius:4px;vertical-align:middle;text-transform:uppercase}.message .msg-timestamp{font-size:11px;color:var(--text-muted)}.message .msg-content{color:var(--text-secondary);font-size:15px;line-height:1.5;word-wrap:break-word}.msg-custom-emoji{width:22px;height:22px;vertical-align:-4px;object-fit:contain;display:inline;margin:0 1px}.msg-mention{background:#f9731626;color:var(--brand-primary);padding:0 2px;border-radius:3px;font-weight:600;cursor:pointer}.msg-mention:hover{background:#f973164d;text-decoration:underline}.msg-mention-me{background:#f9731640}.message .msg-edited{font-size:10px;color:var(--text-muted);margin-left:4px}.msg-edit{display:flex;flex-direction:column;gap:4px;margin:2px 0}.msg-edit-input{width:100%;min-height:38px;max-height:320px;resize:none;box-sizing:border-box;padding:8px 10px;border-radius:8px;border:1px solid var(--border-subtle, #3a3c41);background:var(--bg-input, var(--bg-elevated, #1e1f22));color:var(--text-normal, #e4e6eb);font:inherit;line-height:1.4;overflow-y:auto}.msg-edit-input:focus{outline:none;border-color:var(--accent, #5865f2)}.msg-edit-input:disabled{opacity:.6}.msg-edit-hint{font-size:11px;color:var(--text-muted)}.msg-edit-link{background:none;border:none;padding:0;font:inherit;font-size:11px;color:var(--accent, #7aa2ff);cursor:pointer}.msg-edit-link:hover{text-decoration:underline}.message .msg-hover-time{display:none;position:absolute;left:16px;top:6px;font-size:10px;color:var(--text-muted);width:40px;text-align:center}.messages-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);font-size:14px;gap:8px;min-height:200px;height:100%}.messages-empty .empty-icon{font-size:40px;opacity:.3}.msg-attachments{display:block;margin-top:6px;padding-left:0;margin-bottom:2px}.msg-att-image{cursor:pointer;border-radius:var(--radius-lg);overflow:hidden;max-width:400px;display:block;margin-bottom:6px;line-height:0;transition:transform .15s ease,box-shadow .15s ease}.link-embed{display:block;margin-top:6px;max-width:440px;padding:10px 12px;border-left:3px solid var(--accent-primary, #f97316);background:var(--bg-tertiary);border-radius:var(--radius-sm);text-decoration:none;color:inherit;transition:background .15s ease}.link-embed:hover{background:var(--bg-surface)}.message-self .link-embed{margin-left:auto;margin-right:0}.message-other .link-embed{margin-left:0}.link-embed-site{font-size:12px;color:var(--text-muted);margin-bottom:2px}.link-embed-title{font-size:14px;font-weight:600;color:var(--accent-primary, #f97316);margin-bottom:4px}.link-embed-desc{font-size:13px;color:var(--text-secondary);line-height:1.4}.link-embed-img{max-width:100%;max-height:240px;border-radius:var(--radius-sm);margin-top:8px;display:block;object-fit:cover}.msg-gif-embed{cursor:pointer;border-radius:var(--radius-lg);overflow:hidden;max-width:360px;display:block;margin-top:4px;margin-bottom:4px;line-height:0;transition:transform .15s ease,box-shadow .15s ease}.msg-gif-embed:hover{transform:scale(1.02);box-shadow:0 4px 16px #0000004d}.msg-gif-embed img{display:block;max-width:100%;max-height:300px;height:auto;object-fit:contain;border-radius:var(--radius-lg)}.msg-att-image:last-child{margin-bottom:0}.msg-att-image:hover{transform:scale(1.02);box-shadow:0 4px 16px #0000004d}.msg-att-image img{display:block;max-width:100%;max-height:350px;height:auto;object-fit:contain;border-radius:var(--radius-lg)}.msg-att-video{max-width:400px;border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;display:block;margin-bottom:6px;transition:transform .15s ease,box-shadow .15s ease}.msg-att-video:last-child{margin-bottom:0}.msg-att-video:hover{transform:scale(1.01);box-shadow:0 4px 16px #0000004d}.msg-att-video video{display:block;max-width:100%;border-radius:var(--radius-lg)}.msg-att-audio{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border-radius:var(--radius-lg)}.msg-att-audio audio{height:32px}.msg-att-audio-name{font-size:12px;color:var(--text-muted)}.msg-att-file{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);text-decoration:none;min-width:200px;transition:background .15s ease,border-color .15s ease}.msg-att-file:hover{background:var(--bg-secondary);border-color:var(--brand-primary)}.msg-att-file-ext{padding:6px 10px;border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px;flex-shrink:0}.msg-att-file-info{display:flex;flex-direction:column;min-width:0}.msg-att-file-name{font-size:13px;font-weight:600;color:var(--brand-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msg-att-file-size{font-size:11px;color:var(--text-muted)}.lightbox-overlay{position:fixed;inset:0;z-index:9999;background:#000000eb;display:flex;align-items:center;justify-content:center;animation:fade-in var(--anim-fast) ease;outline:none}.lightbox-container{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.lightbox-media{max-width:92vw;max-height:88vh;border-radius:var(--radius-lg);animation:fade-in-scale var(--anim-normal) var(--ease-spring);user-select:none;transition:transform .1s ease;touch-action:none}.lightbox-controls{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:8px;padding:8px 16px;background:#000000b3;backdrop-filter:blur(12px);border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.1);animation:fade-in-up var(--anim-normal) var(--ease-out-expo)}.lightbox-ctrl-btn{width:38px;height:38px;border-radius:var(--radius-full);background:#ffffff1a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;text-decoration:none;transition:background .15s ease,transform .1s ease;cursor:pointer;border:none}.lightbox-ctrl-btn:hover{background:#ffffff40;transform:scale(1.1)}.lightbox-ctrl-btn:active{transform:scale(.92)}.input-bar{padding:0 20px 16px;flex-shrink:0;position:relative}.mention-autocomplete{position:absolute;bottom:100%;left:20px;right:20px;max-height:260px;overflow-y:auto;background:var(--bg-floating, #111214);border-radius:8px;padding:4px;box-shadow:0 8px 24px #0006;z-index:100;margin-bottom:4px}.mention-autocomplete-item{display:flex;align-items:center;gap:10px;width:100%;padding:6px 8px;border:none;background:none;border-radius:4px;cursor:pointer;color:var(--text-normal, #dbdee1);font-size:14px;text-align:left}.mention-autocomplete-item:hover,.mention-autocomplete-item.active{background:var(--brand-primary, #5865f2);color:#fff}.mention-ac-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#fff;flex-shrink:0}.mention-ac-info{display:flex;flex-direction:column;min-width:0}.mention-ac-display{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-ac-username{font-size:11px;color:var(--text-muted, #949ba4)}.mention-autocomplete-item.active .mention-ac-username,.mention-autocomplete-item:hover .mention-ac-username{color:#ffffffb3}.input-wrapper{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:24px;display:flex;align-items:flex-end;padding:4px 6px 4px 18px;transition:border-color .15s ease,box-shadow .15s ease}.input-wrapper:focus-within{border-color:#f9731633;box-shadow:0 0 0 2px #f973160f}.input-wrapper textarea{flex:1;background:transparent;border:none;padding:8px 0;resize:none;max-height:200px;font-size:15px;line-height:1.45}.input-wrapper textarea:focus{box-shadow:none;border-color:transparent}.input-wrapper textarea::placeholder{color:var(--text-muted)}.input-send-btn{width:36px;height:36px;border-radius:var(--radius-full);background:var(--brand-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;transition:background .12s ease,transform .1s ease;margin-bottom:2px}.input-send-btn:hover{background:var(--brand-hover)}.input-send-btn:active{transform:scale(.92)}.input-send-btn.disabled{opacity:.3;pointer-events:none}.input-char-count{font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-muted);padding:0 6px;align-self:center;user-select:none}.input-char-count.over{color:var(--danger, #f23f43);font-weight:600}.input-attach-btn,.input-emoji-btn{width:36px;height:36px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted);transition:color .15s ease,background .15s ease,transform .1s ease;margin-bottom:2px}.input-attach-btn:hover,.input-emoji-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.input-attach-btn:active,.input-emoji-btn:active{transform:scale(.9)}.input-emoji-btn{font-size:18px}.input-file-previews{display:flex;gap:8px;padding:8px 8px 4px;overflow-x:auto;scrollbar-width:thin}.input-file-preview{position:relative;width:120px;min-width:120px;border-radius:var(--radius-lg);background:var(--bg-tertiary);border:1px solid var(--border-subtle);overflow:hidden;display:flex;flex-direction:column;animation:fade-in-scale var(--anim-normal) var(--ease-spring)}.input-file-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:var(--radius-full);background:#000000a6;color:#fff;display:flex;align-items:center;justify-content:center;z-index:2;transition:background .12s ease,transform .1s ease}.input-file-remove:hover{background:var(--status-error);transform:scale(1.1)}.input-file-thumb{width:100%;height:80px;object-fit:cover;display:block}.input-file-icon{width:100%;height:80px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary)}.input-file-ext{padding:4px 8px;border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px}.input-file-name{padding:4px 8px 0;font-size:11px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.input-file-size{padding:0 8px 6px;font-size:10px;color:var(--text-muted)}.input-upload-bar{height:3px;background:var(--bg-tertiary);border-radius:2px;margin:0 8px 4px;overflow:hidden}.input-upload-fill{height:100%;background:var(--brand-primary);border-radius:2px;transition:width .2s ease}.emoji-picker{position:absolute;bottom:calc(100% + 8px);right:0;width:352px;max-height:380px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:row;z-index:100;animation:fade-in-scale var(--anim-normal) var(--ease-spring);overflow:hidden}.emoji-picker.has-sidebar{width:400px}.emoji-sidebar{width:44px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-right:1px solid var(--border-subtle);overflow-y:auto;scrollbar-width:thin}.emoji-sidebar-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);font-size:20px;cursor:pointer;border:none;background:transparent;transition:background .12s ease,border-radius .2s ease;flex-shrink:0}.emoji-sidebar-btn:hover{background:var(--bg-tertiary)}.emoji-sidebar-btn.active{background:var(--brand-primary);border-radius:var(--radius-sm)}.emoji-sidebar-guild{width:28px;height:28px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;transition:border-radius .2s ease}.emoji-sidebar-btn.active .emoji-sidebar-guild{border-radius:var(--radius-sm)}.emoji-sidebar-divider{width:24px;height:2px;background:var(--border-subtle);border-radius:1px;flex-shrink:0}.emoji-main{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.emoji-picker-header{padding:8px 8px 4px;flex-shrink:0}.emoji-search{width:100%;padding:6px 10px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-primary);color:var(--text-primary);font-size:13px}.emoji-search:focus{border-color:var(--brand-primary);outline:none}.emoji-picker-categories{display:flex;padding:2px 8px;gap:2px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.emoji-cat-btn{flex:1;padding:4px 2px;font-size:16px;border-radius:var(--radius-sm);transition:background .12s ease;opacity:.5}.emoji-cat-btn.active,.emoji-cat-btn:hover{opacity:1;background:var(--bg-tertiary)}.emoji-picker-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px;overflow-y:auto;flex:1;scrollbar-width:thin}.emoji-item{width:100%;aspect-ratio:1;font-size:22px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background .1s ease,transform .1s ease}.emoji-item:hover{background:var(--bg-tertiary);transform:scale(1.15)}.emoji-item:active{transform:scale(.95)}.emoji-custom-view-header{padding:6px 10px 4px;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.emoji-custom-grid{display:flex;flex-direction:column;gap:0}.emoji-custom-guild-header{padding:6px 4px 4px;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.emoji-search-guild-header{grid-column:1 / -1;padding:8px 4px 4px;border-top:1px solid var(--border-subtle);margin-top:4px}.emoji-custom-grid .emoji-custom-item{display:inline-flex;width:36px;height:36px;margin:1px}.emoji-custom-img{width:28px;height:28px;object-fit:contain}.emoji-custom-empty{padding:20px;color:var(--text-muted);font-size:13px;text-align:center}.input-gif-btn{width:36px;height:36px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.5px;transition:color .15s ease,background .15s ease,transform .1s ease;margin-bottom:2px}.input-gif-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.input-gif-btn:active{transform:scale(.9)}.gif-picker{position:absolute;bottom:calc(100% + 8px);right:0;width:420px;height:460px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;z-index:100;animation:fade-in-scale var(--anim-normal) var(--ease-spring);overflow:hidden}.gif-picker-header{padding:8px;flex-shrink:0}.gif-search{width:100%;padding:8px 12px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-primary);color:var(--text-primary);font-size:13px}.gif-search:focus{border-color:var(--brand-primary);outline:none}.gif-picker-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:0 8px 8px;overflow-y:auto;flex:1;scrollbar-width:thin}.gif-item{border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;background:var(--bg-tertiary);aspect-ratio:16 / 9}.gif-item:hover{transform:scale(1.02);box-shadow:0 0 0 2px var(--brand-primary)}.gif-item img{width:100%;height:100%;object-fit:cover;display:block}.gif-empty,.gif-loading{grid-column:1 / -1;text-align:center;padding:20px;color:var(--text-muted);font-size:13px}.gif-picker-footer{padding:4px 8px;text-align:right;flex-shrink:0;border-top:1px solid var(--border-subtle)}.gif-tenor-attr{font-size:10px;color:var(--text-muted);opacity:.6}.input-sticker-btn{width:36px;height:36px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted);transition:color .15s ease,background .15s ease,transform .1s ease;margin-bottom:2px}.input-sticker-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.input-sticker-btn:active{transform:scale(.9)}.sticker-picker{position:absolute;bottom:calc(100% + 8px);right:0;width:380px;height:420px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;z-index:100;animation:fade-in-scale var(--anim-normal) var(--ease-spring)}@media(max-width:480px){.emoji-picker,.emoji-picker.has-sidebar{width:min(352px,calc(100vw - 16px))}.gif-picker{width:min(420px,calc(100vw - 16px))}.sticker-picker{width:min(380px,calc(100vw - 16px))}}.sticker-picker-header{padding:10px;border-bottom:1px solid var(--border-subtle)}.sticker-search{width:100%;padding:8px 12px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-primary);color:var(--text-primary);font-size:13px;outline:none}.sticker-search:focus{border-color:var(--brand-primary)}.sticker-picker-grid{flex:1;overflow-y:auto;padding:8px}.sticker-guild-header{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:8px 4px 4px}.sticker-guild-items{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-bottom:8px}.sticker-item{aspect-ratio:1;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,transform .1s ease;padding:6px}.sticker-item:hover{background:var(--bg-tertiary);transform:scale(1.05)}.sticker-item:active{transform:scale(.95)}.sticker-img{width:100%;height:100%;object-fit:contain}.sticker-empty,.sticker-loading{text-align:center;padding:40px 16px;color:var(--text-muted);font-size:13px}.msg-sticker-embed{display:block;margin-top:4px;margin-bottom:4px}.msg-sticker-embed img{width:160px;height:160px;object-fit:contain}.typing-indicator{height:20px;padding:0 20px;font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:4px}.voice-room{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;gap:24px}.voice-room-title{font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.voice-room-subtitle{font-size:13px;color:var(--text-muted);margin-top:-16px}.voice-screen-share{width:100%;max-width:720px;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-tertiary);border:1px solid var(--border-color)}.voice-screen-share-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:13px;color:var(--text-secondary);gap:8px}.voice-screen-share-user{display:flex;align-items:center;gap:8px}.voice-screen-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}.voice-screen-hide{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm)}.voice-screen-hide:hover{color:var(--text-primary);background:var(--bg-surface)}.voice-screen-preview{position:relative;width:100%;background:#000;min-height:200px}.voice-screen-video{width:100%;max-height:400px;object-fit:contain;display:block}.voice-screen-preview.paused .voice-screen-video{filter:blur(20px);transition:filter .3s ease}.voice-screen-preview:not(.paused) .voice-screen-video{filter:none;transition:filter .3s ease}.voice-screen-paused-overlay{position:absolute;inset:0;display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;background:#00000080;z-index:2;backdrop-filter:blur(4px)}.voice-screen-paused-overlay span{font-size:1.3rem;font-weight:600;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5);letter-spacing:.02em}.voice-screen-optin{width:100%;max-width:720px;display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--border-color);font-size:13px;color:var(--text-secondary)}.voice-screen-watch-btn{margin-left:auto;padding:6px 14px;border-radius:var(--radius-md);background:var(--accent-color);color:#fff;border:none;font-size:12px;font-weight:600;cursor:pointer}.voice-screen-watch-btn:hover{opacity:.9}.voice-participants{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;max-width:600px}.voice-participant{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 20px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);min-width:110px;position:relative;transition:border-color .2s ease,box-shadow .2s ease,transform .15s var(--ease-spring);animation:fade-in-scale var(--anim-normal) var(--ease-spring)}.voice-participant:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.voice-participant.speaking{border-color:var(--status-online);box-shadow:0 0 12px #34d39926}.voice-participant-avatar{width:56px;height:56px;border-radius:var(--radius-lg);background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;position:relative}.voice-participant-name{font-size:13px;font-weight:600;color:var(--text-primary);text-align:center;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-participant-indicators{display:flex;gap:4px;font-size:14px}.voice-indicator{opacity:.5}.voice-indicator.active{opacity:1}.voice-indicator.muted{color:var(--status-dnd)}.voice-join-btn{padding:12px 32px;background:var(--status-online);color:#fff;border-radius:var(--radius-full);font-size:15px;font-weight:600;transition:background .15s ease,transform .1s ease,box-shadow .15s ease}.voice-join-btn:hover{background:#059669;box-shadow:0 4px 16px #34d39940}.voice-join-btn:active{transform:scale(.97)}.voice-controls{display:flex;gap:8px;align-items:center}.connection-quality{position:relative}.cq-indicator{display:flex;align-items:flex-end;gap:4px;background:transparent;border:none;cursor:pointer;padding:4px 8px;border-radius:var(--radius-md)}.cq-indicator:hover{background:var(--bg-surface)}.cq-bars{display:flex;align-items:flex-end;gap:2px}.cq-bar{width:4px;border-radius:1px;transition:background .3s}.cq-bars.cq-waiting .cq-bar{animation:cq-pulse 1.5s ease-in-out infinite}.cq-bars.cq-waiting .cq-bar:nth-child(2){animation-delay:.15s}.cq-bars.cq-waiting .cq-bar:nth-child(3){animation-delay:.3s}.cq-bars.cq-waiting .cq-bar:nth-child(4){animation-delay:.45s}@keyframes cq-pulse{0%,to{opacity:.35}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.cq-bars.cq-waiting .cq-bar{animation:none;opacity:.7}}.cq-latency{font-size:11px;font-weight:600;margin-left:2px}.cq-details{position:absolute;bottom:100%;right:0;margin-bottom:8px;width:280px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 8px 24px #0000004d;z-index:100;padding:12px}.cq-details-header{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:10px}.cq-details-close{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;padding:2px 4px}.cq-stat-row{display:flex;justify-content:space-between;font-size:12px;padding:3px 0}.cq-stat-label{color:var(--text-muted)}.cq-stat-value{color:var(--text-primary);font-weight:500}.cq-encryption{margin-top:8px;padding-top:8px;border-top:1px solid var(--border-color)}.cq-encryption-ok,.cq-encryption-warning{display:flex;align-items:flex-start;gap:8px;font-size:12px}.cq-encryption-icon{font-size:16px;line-height:1}.cq-encryption-text{display:flex;flex-direction:column;gap:2px}.cq-encryption-label{font-weight:600;color:var(--text-primary)}.cq-encryption-desc{color:var(--text-muted);font-size:11px}.cq-encryption-warning .cq-encryption-label{color:var(--status-dnd, #f04747)}.cq-region{margin-top:8px;padding-top:8px;border-top:1px solid var(--border-color)}.cq-region-selector{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.cq-region-btn{display:flex;align-items:center;gap:4px;padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-secondary);font-size:11px;cursor:pointer}.cq-region-btn:hover{background:var(--bg-surface)}.cq-region-btn.active{border-color:var(--accent-color);background:var(--accent-color);color:#fff}.cq-region-note{font-size:10px;color:var(--text-muted);margin-top:6px;font-style:italic}.voice-control-btn{width:44px;height:44px;border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .12s var(--ease-spring)}.voice-control-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary);border-color:var(--border-hover);transform:scale(1.1)}.voice-control-btn:active{transform:scale(.92)}.voice-control-btn.active{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.voice-control-btn.danger{background:var(--status-dnd);border-color:var(--status-dnd);color:#fff}.voice-control-btn.danger:hover{background:#e11d48}.voice-dock{height:52px;background:var(--bg-secondary);border-top:1px solid var(--border-subtle);display:flex;align-items:center;padding:0 16px;gap:12px;flex-shrink:0;z-index:10}.voice-dock-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.voice-dock-indicator{width:8px;height:8px;border-radius:var(--radius-full);background:var(--status-online);animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.voice-dock-channel{font-size:13px;font-weight:600;color:var(--text-primary)}.voice-dock-meta{font-size:12px;color:var(--text-muted)}.voice-dock-controls{display:flex;gap:4px;align-items:center}.voice-dock-btn{width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease,transform .12s var(--ease-spring)}.voice-dock-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary);transform:scale(1.12)}.voice-dock-btn:active{transform:scale(.9)}.voice-dock-btn.active{color:var(--brand-primary)}.voice-dock-btn.muted{color:var(--status-dnd)}.voice-dock-disconnect{padding:6px 14px;background:var(--status-dnd);color:#fff;border-radius:var(--radius-md);font-size:12px;font-weight:600;transition:background .15s ease,transform .12s var(--ease-spring);margin-left:4px}.voice-dock-disconnect:hover{background:#e11d48;transform:scale(1.05)}.voice-dock-disconnect:active{transform:scale(.95)}.member-drawer-backdrop{position:absolute;inset:0;z-index:20}.member-drawer{position:absolute;right:0;top:0;bottom:0;width:260px;background:var(--bg-secondary);border-left:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);z-index:21;display:flex;flex-direction:column;animation:drawer-in .25s var(--ease-out-expo)}@keyframes drawer-in{0%{transform:translate(260px);opacity:0}to{transform:translate(0);opacity:1}}.member-drawer-header{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--border-subtle)}.member-drawer-title{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.06em}.member-drawer-close{font-size:16px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);width:24px;height:24px;display:flex;align-items:center;justify-content:center}.member-drawer-close:hover{color:var(--text-primary)}.member-drawer-list{flex:1;overflow-y:auto;padding:8px 0}.member-drawer-category{padding:12px 14px 4px;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.06em}.member-drawer-item{display:flex;align-items:center;gap:10px;padding:6px 14px;cursor:pointer;transition:background .15s ease,transform .12s var(--ease-spring)}.member-drawer-item:hover{background:var(--bg-modifier-hover);transform:translate(3px)}.member-drawer-item .md-avatar{width:30px;height:30px;border-radius:var(--radius-md);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;position:relative}.member-drawer-item .md-name{font-size:14px;color:var(--text-secondary)}.member-drawer-item .md-status-dot{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:var(--radius-full);border:2px solid var(--bg-secondary)}.welcome-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);text-align:center;padding:32px;animation:fade-in-up var(--anim-slow) var(--ease-out-expo)}.welcome-screen h2{font-size:24px;font-weight:700;color:var(--text-primary);margin-bottom:8px;letter-spacing:-.02em}.welcome-screen p{max-width:380px;line-height:1.5;font-size:14px}.modal-overlay{position:fixed;inset:0;background:#000000bf;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fade-in var(--anim-fast) ease}.modal{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:28px;width:100%;max-width:420px;box-shadow:var(--shadow-lg);animation:fade-in-scale var(--anim-normal) var(--ease-spring)}.modal h2{font-size:18px;font-weight:700;margin-bottom:16px;letter-spacing:-.01em}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.btn-secondary{padding:8px 16px;border-radius:var(--radius-sm);font-size:14px;color:var(--text-secondary);transition:color .1s ease}.btn-secondary:hover{color:var(--text-primary)}.btn-small{padding:8px 16px;background:var(--brand-primary);color:#fff;border-radius:var(--radius-md);font-size:14px;font-weight:600;transition:background .15s ease,box-shadow .15s ease}.btn-small:hover{background:var(--brand-hover);box-shadow:0 2px 8px #f9731633}.success-msg{background:#34d39914;color:var(--status-online);padding:10px 14px;border-radius:var(--radius-sm);border-left:3px solid var(--status-online);font-size:13px;margin-bottom:16px}.settings-modal-overlay{position:fixed;inset:0;z-index:9500;background:#0009;display:flex;align-items:center;justify-content:center;animation:settings-overlay-in .2s ease-out}@keyframes settings-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes settings-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.settings-modal-overlay .settings-page.settings-modal{width:90vw;max-width:960px;height:85vh;border-radius:var(--radius-lg, 12px);overflow:hidden;box-shadow:0 16px 48px #0006;animation:settings-scale-in .25s ease-out}.settings-page{display:flex;height:100%;width:100%;background:var(--bg-primary)}.settings-sidebar{width:220px;background:var(--bg-secondary);padding:60px 8px 20px;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;border-right:1px solid var(--border-subtle)}.settings-nav-header{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);padding:6px 10px;letter-spacing:.06em}.settings-nav-item{display:block;width:100%;text-align:left;padding:7px 10px;border-radius:var(--radius-sm);font-size:14px;color:var(--text-secondary);margin:1px 0;transition:background .15s ease,color .15s ease,transform .12s var(--ease-spring),padding-left .2s ease;position:relative}.settings-nav-item:hover{background:var(--bg-modifier-hover);color:var(--text-primary);transform:translate(2px)}.settings-nav-item:active{transform:scale(.97)}.settings-nav-item.active{background:var(--bg-modifier-selected);color:var(--text-primary);padding-left:14px}.settings-nav-item.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;background:var(--brand-primary);border-radius:2px;animation:pop-in .2s var(--ease-spring)}.settings-nav-item.danger{color:var(--status-dnd)}.settings-nav-item.danger:hover{background:#fb718514}.settings-nav-separator{height:1px;background:var(--border-subtle);margin:8px 10px}.settings-version{margin-top:auto;padding:12px 14px;font-size:11px;line-height:1.5;color:var(--text-muted);cursor:pointer;user-select:text}.settings-version:hover{color:var(--text-secondary)}.settings-version-copied{color:var(--status-online)}.settings-content{flex:1;padding:60px 40px 40px;overflow-y:auto;max-width:700px;animation:tab-content-in .2s var(--ease-out-expo)}.settings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.settings-header h2{font-size:18px;font-weight:700;letter-spacing:-.01em}.settings-close{width:34px;height:34px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);color:var(--text-muted);font-size:16px;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,color .15s ease,background .15s ease,transform .2s var(--ease-spring)}.settings-close:hover{border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-modifier-hover);transform:rotate(90deg)}.settings-section{margin-bottom:28px;animation:tab-content-in .2s var(--ease-out-expo)}.settings-section h3{font-size:14px;font-weight:700;margin-bottom:16px;letter-spacing:-.01em}.profile-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;margin-bottom:24px}.profile-banner{height:90px;background:linear-gradient(135deg,#c2410c,#f97316,#fb923c)}.profile-info-row{display:flex;align-items:center;gap:16px;padding:16px;margin-top:-32px}.profile-avatar-large{width:72px;height:72px;border-radius:var(--radius-lg);background:var(--bg-surface);border:4px solid var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700;color:var(--text-primary);flex-shrink:0}.profile-avatar-large.clickable{cursor:pointer;position:relative;overflow:hidden}.profile-avatar-large img{width:100%;height:100%;object-fit:cover}.profile-avatar-edit{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000080;color:#fff;font-size:11px;font-weight:600;opacity:0;transition:opacity .15s}.profile-avatar-large.clickable:hover .profile-avatar-edit{opacity:1}.profile-username{font-size:18px;font-weight:700;letter-spacing:-.01em}.profile-email{font-size:13px;color:var(--text-muted)}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border-subtle)}.settings-toggle-label{font-size:14px;font-weight:500}.settings-toggle-desc{font-size:13px;color:var(--text-muted);margin-top:2px}.toggle-switch{width:40px;height:22px;border-radius:11px;background:var(--text-muted);position:relative;transition:background .2s ease;flex-shrink:0;cursor:pointer}.toggle-switch.on{background:var(--brand-primary)}.toggle-knob{width:16px;height:16px;border-radius:var(--radius-full);background:#fff;position:absolute;top:3px;left:3px;transition:transform .25s var(--ease-spring);box-shadow:0 1px 3px #0000004d}.friends-page{flex:1;display:flex;flex-direction:column;background:var(--bg-tertiary);height:100%}.friends-header{display:flex;align-items:center;gap:16px;padding:0 16px;height:var(--header-height);border-bottom:1px solid var(--border-subtle);flex-shrink:0;flex-wrap:wrap}.friends-title{font-weight:700;font-size:15px;padding-right:16px;border-right:1px solid var(--border-subtle)}.friends-tabs{display:flex;gap:2px}.friends-tab{padding:4px 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text-muted);transition:background .1s ease,color .1s ease}.friends-tab:hover{background:var(--bg-modifier-hover);color:var(--text-secondary)}.friends-tab.active{background:var(--bg-modifier-selected);color:var(--text-primary)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--brand-primary);color:#fff;font-size:10px;font-weight:700;margin-left:4px}.friends-add{margin-left:auto;display:flex;gap:8px;align-items:center}.friends-add input{width:200px;padding:6px 12px;font-size:13px}.friends-list{flex:1;overflow-y:auto;padding:16px}.friends-section-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);padding:8px 0;letter-spacing:.06em}.friends-empty{color:var(--text-muted);font-size:13px;padding:16px 0;text-align:center}.friend-row{display:flex;align-items:center;gap:12px;padding:8px;border-radius:var(--radius-sm);border-top:1px solid var(--border-subtle);transition:background .12s ease,transform .1s ease;animation:fade-in-up var(--anim-fast) var(--ease-out-expo)}.friend-row:hover{background:var(--bg-modifier-hover)}.friend-row:active{transform:scale(.99)}.friend-avatar{width:34px;height:34px;border-radius:var(--radius-md);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;position:relative;color:var(--text-primary)}.friend-avatar img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.group-dm-member-row.clickable{cursor:pointer}.group-dm-member-row.clickable:hover{background:var(--bg-hover, rgba(255, 255, 255, .04))}.friend-presence-dot{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:50%;border:2px solid var(--bg-primary)}.friend-info{flex:1;min-width:0}.friend-name{font-size:15px;font-weight:500;display:block}.friend-status{font-size:13px;color:var(--text-muted)}.friend-actions{display:flex;gap:6px}.friend-action-btn{width:32px;height:32px;border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;font-size:13px;transition:background .15s ease,border-color .15s ease,transform .12s var(--ease-spring)}.friend-action-btn:hover{background:var(--bg-modifier-active);border-color:var(--border-hover);transform:scale(1.12)}.friend-action-btn:active{transform:scale(.9)}.friend-action-btn.accept{color:var(--status-online)}.friend-action-btn.remove{color:var(--status-dnd)}.danger-btn{background:var(--status-dnd)!important}.danger-btn:hover{background:#e11d48!important}.popover-overlay{position:fixed;inset:0;z-index:1000}.user-popover{position:fixed;width:280px;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;z-index:1001}.popover-body{padding:6px 14px 14px}.popover-username{font-size:16px;font-weight:700;letter-spacing:-.01em}.popover-tag{font-size:13px;color:var(--text-muted);margin-bottom:6px}.popover-joined{font-size:12px;color:var(--text-muted);margin-bottom:10px}.popover-actions{display:flex;gap:6px}.channel-type-selector{display:flex;flex-direction:column;gap:6px;margin-top:4px}.channel-type-option{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:border-color .12s ease,background .12s ease;text-align:left;width:100%}.channel-type-option:hover{background:var(--bg-modifier-hover);border-color:var(--border-hover)}.channel-type-option.active{border-color:var(--brand-primary);background:#f973160d}.channel-type-icon{font-size:20px;width:28px;text-align:center;flex-shrink:0}.channel-type-name{font-size:14px;font-weight:600;color:var(--text-primary)}.channel-type-desc{font-size:12px;color:var(--text-muted);margin-top:1px}.category-add-btn{cursor:pointer;font-size:16px;color:var(--text-muted);transition:color .12s ease;line-height:1;user-select:none}.category-add-btn:hover{color:var(--brand-primary)}.member-status-dot{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:var(--radius-full);border:2px solid var(--bg-secondary)}.settings-select{width:100%;padding:10px 14px;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font:inherit;font-size:14px;outline:none;appearance:none;cursor:pointer;transition:border-color .15s ease}.settings-select:focus{border-color:var(--brand-primary)}.settings-range{width:100%;height:4px;border-radius:2px;background:var(--bg-surface);outline:none;appearance:none;cursor:pointer;margin-top:8px}.settings-range::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border-radius:var(--radius-full);background:var(--brand-primary);cursor:pointer;border:none}.settings-range::-moz-range-thumb{width:14px;height:14px;border-radius:var(--radius-full);background:var(--brand-primary);cursor:pointer;border:none}.mic-level-bar{width:100%;height:8px;border-radius:4px;background:var(--bg-surface);overflow:hidden;margin-top:4px}.mic-level-fill{height:100%;background:linear-gradient(90deg,var(--status-online),#27ae60);border-radius:4px;transition:width .08s linear}.camera-preview-container{width:100%;max-width:320px;aspect-ratio:16/9;border-radius:var(--radius-md);overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-subtle);margin-top:8px}.camera-preview-video{width:100%;height:100%;object-fit:cover}.camera-preview-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-muted);font-size:13px}.camera-preview-placeholder span:first-child{font-size:24px}.keybind-list{display:flex;flex-direction:column;gap:0}.keybind-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border-subtle)}.keybind-label{font-size:14px;color:var(--text-secondary)}.keybind-key{display:inline-flex;align-items:center;padding:3px 8px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:12px;color:var(--text-primary);white-space:nowrap}.server-bar{background:var(--bg-primary);display:flex;align-items:center;gap:4px;padding:6px;flex-shrink:0;z-index:12}.server-bar.vertical{flex-direction:column;width:62px;height:100%;border-right:1px solid var(--border-subtle)}.server-bar.vertical.pos-right{border-right:none;border-left:1px solid var(--border-subtle)}.server-bar.horizontal{flex-direction:row;height:52px;width:100%;overflow-x:auto;overflow-y:visible}.server-bar.horizontal.pos-bottom{border-top:1px solid var(--border-subtle)}.server-bar-icon{width:42px;height:42px;border-radius:var(--radius-lg);background:var(--bg-tertiary);border:none;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;font-weight:700;flex-shrink:0;transition:border-radius .2s var(--ease-out-expo),background .2s,color .2s,transform .15s var(--ease-spring)}.server-bar-icon:hover{border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);transform:scale(1.08)}.server-bar-icon:active{transform:scale(.95)}.server-bar-icon.active{border-radius:var(--radius-md);background:var(--brand-primary);color:#fff}.server-bar-icon.home{background:var(--bg-surface);color:var(--brand-primary)}.server-bar-icon.home.active{background:var(--brand-primary);color:#fff}.server-bar-icon.add{background:transparent;color:var(--brand-primary);font-size:18px}.server-bar-icon.add:hover{background:var(--bg-modifier-hover)}.server-bar-icon.user-avatar{background:var(--brand-primary);color:#fff;font-size:13px}.profile-popover{position:absolute;bottom:100%;left:0;margin-bottom:8px;width:280px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000059;z-index:1000;overflow:hidden;animation:fade-in-scale var(--anim-fast) var(--ease-spring);transform-origin:bottom left}.pos-right .profile-popover{left:auto;right:0}.pos-top .profile-popover,.server-bar.horizontal .profile-popover{bottom:auto;top:100%;margin-bottom:0;margin-top:8px}.profile-popover-banner{height:60px;background:linear-gradient(135deg,var(--brand-primary),#f97316)}.profile-popover-body{padding:0 12px 12px}.profile-popover-avatar{width:52px;height:52px;border-radius:var(--radius-lg);background:var(--brand-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;margin-top:-26px;border:3px solid var(--bg-surface);box-sizing:border-box}.profile-popover-name{font-size:16px;font-weight:700;margin-top:8px;color:var(--text-primary)}.profile-popover-username{font-size:12px;color:var(--text-muted);margin-top:2px}.profile-popover-id{display:flex;align-items:center;gap:6px;margin-top:8px;padding:6px 8px;background:var(--bg-primary);border-radius:var(--radius-sm);cursor:pointer;font-size:11px;color:var(--text-muted);transition:background .15s}.profile-popover-id:hover{background:var(--bg-modifier-hover)}.profile-popover-id-label{font-weight:600;color:var(--text-secondary)}.profile-popover-id-value{font-family:monospace;font-size:11px}.profile-popover-copy-hint{margin-left:auto;font-size:10px;opacity:.7}.profile-popover-separator{height:1px;background:var(--border-subtle);margin:10px 0}.profile-popover-status-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.profile-popover-status-list{display:flex;flex-direction:column;gap:2px}.profile-popover-status-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border:none;background:none;color:var(--text-primary);font-size:13px;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}.profile-popover-status-item:hover{background:var(--bg-modifier-hover)}.profile-popover-status-item.active{background:var(--bg-modifier-active)}.status-dot{width:10px;height:10px;border-radius:var(--radius-full);flex-shrink:0}.home-dm-avatar>.status-dot{position:absolute;bottom:-1px;right:-1px;border:2px solid var(--bg-secondary)}.profile-popover-action{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:none;background:none;color:var(--text-primary);font-size:13px;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}.profile-popover-action:hover{background:var(--bg-modifier-hover)}.profile-popover-action.logout{color:#f23f43}.profile-popover-action.logout:hover{background:#f23f431a}.server-bar-separator{width:24px;height:2px;background:var(--border-subtle);border-radius:1px;margin:4px 0}.server-bar.horizontal .server-bar-separator{width:2px;height:24px;margin:0 4px}.server-bar-guilds{display:flex;gap:4px;overflow:visible}.server-bar-guilds.vertical{flex-direction:column;overflow-y:auto;overflow-x:visible;flex:1;padding-right:8px;padding-bottom:6px}.server-bar-guilds.horizontal{flex-direction:row;overflow-x:auto;overflow-y:visible;padding-bottom:8px;padding-right:6px}.server-bar-guilds::-webkit-scrollbar{width:0;height:0}.server-bar-spacer,.server-bar.horizontal .server-bar-spacer{flex:1}.guild-initials{font-size:11px;font-weight:700;letter-spacing:-.02em}.guild-icon-img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.theme-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-bottom:24px}.theme-preset-card{background:var(--bg-tertiary);border:2px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px;cursor:pointer;transition:border-color .15s,transform .15s;text-align:center}.theme-preset-card:hover{border-color:var(--border-hover);transform:translateY(-1px)}.theme-preset-card.active{border-color:var(--brand-primary)}.theme-preview-strip{display:flex;height:28px;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:8px}.theme-preview-strip div{flex:1}.theme-preset-label{font-size:12px;color:var(--text-secondary);font-weight:500}.color-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.color-picker-item{display:flex;align-items:center;gap:10px}.color-picker-item label{font-size:12px;color:var(--text-secondary);flex:1;min-width:0}.color-swatch-input{width:36px;height:28px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:2px;background:var(--bg-tertiary);cursor:pointer}.color-swatch-input::-webkit-color-swatch-wrapper{padding:0}.color-swatch-input::-webkit-color-swatch{border:none;border-radius:2px}.layout-positions{display:flex;gap:12px;flex-wrap:wrap}.layout-pos-card{width:110px;height:80px;background:var(--bg-tertiary);border:2px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:border-color .15s,transform .15s}.layout-pos-card:hover{border-color:var(--border-hover);transform:translateY(-1px)}.layout-pos-card.active{border-color:var(--brand-primary)}.layout-pos-card .layout-mini{width:70px;height:50px;background:var(--bg-surface);border-radius:3px;position:relative;overflow:hidden}.layout-pos-card .layout-mini .bar{position:absolute;background:var(--brand-primary);border-radius:1px}.layout-pos-card .layout-mini .bar.top{top:0;left:0;right:0;height:6px}.layout-pos-card .layout-mini .bar.left{top:0;left:0;bottom:0;width:8px}.layout-pos-card .layout-mini .bar.right{top:0;right:0;bottom:0;width:8px}.layout-pos-card .layout-mini .bar.bottom{bottom:0;left:0;right:0;height:6px}.layout-pos-label{position:absolute;bottom:4px;font-size:10px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.profile-banner{height:120px;background:linear-gradient(135deg,var(--bg-surface) 0%,var(--bg-tertiary) 100%);border-radius:var(--radius-lg) var(--radius-lg) 0 0;position:relative;overflow:hidden;cursor:pointer;transition:opacity .15s}.profile-banner:hover{opacity:.85}.profile-banner img{width:100%;height:100%;object-fit:cover}.profile-banner-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000080;opacity:0;transition:opacity .15s;color:#fff;font-size:13px;font-weight:600}.profile-banner:hover .profile-banner-overlay{opacity:1}.accent-color-row{display:flex;align-items:center;gap:12px}.accent-preview{width:40px;height:40px;border-radius:var(--radius-full);border:2px solid var(--border-subtle);flex-shrink:0}.bio-textarea{width:100%;min-height:80px;max-height:200px;padding:10px 12px;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);font-size:14px;resize:vertical;transition:border-color .15s}.bio-textarea:focus{outline:none;border-color:var(--brand-primary)}.video-grid{display:grid;gap:8px;padding:16px;flex:1;min-height:0;overflow:auto}.video-grid.count-1{grid-template-columns:1fr}.video-grid.count-2,.video-grid.count-3,.video-grid.count-4{grid-template-columns:1fr 1fr}.video-grid.count-5,.video-grid.count-6{grid-template-columns:1fr 1fr 1fr}.video-tile{position:relative;background:var(--bg-tertiary);border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center}.video-tile video{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-lg)}.video-tile-label{position:absolute;bottom:8px;left:8px;background:#0009;color:#fff;padding:2px 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:500}.video-tile-avatar{width:64px;height:64px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff}.local-video-preview{position:absolute;bottom:16px;right:16px;width:180px;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md);z-index:5;cursor:move}.local-video-preview video{width:100%;display:block;border-radius:var(--radius-md)}.soundboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;padding:8px 0}.soundboard-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 8px;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:background .15s,border-color .15s,transform .1s;color:var(--text-primary)}.soundboard-btn:hover{background:var(--bg-surface);border-color:var(--border-hover);transform:scale(1.03)}.soundboard-btn:active{transform:scale(.97)}.soundboard-btn.playing{border-color:var(--brand-primary);box-shadow:0 0 12px #f9731633}.soundboard-emoji{font-size:24px;line-height:1}.soundboard-name{font-size:11px;color:var(--text-secondary);text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.soundboard-add-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 8px;background:transparent;border:2px dashed var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;color:var(--text-muted);font-size:20px;transition:border-color .15s,color .15s}.soundboard-add-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.soundboard-volume{display:flex;align-items:center;gap:8px;margin-top:12px}.soundboard-volume input[type=range]{flex:1;accent-color:var(--brand-primary)}.home-page{flex:1;display:flex;min-height:0;overflow:hidden;background:var(--bg-tertiary)}.home-sidebar{width:240px;flex-shrink:0;background:var(--bg-secondary);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow:hidden}.home-sidebar-header{display:flex;align-items:center;gap:8px;padding:12px;margin:8px;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-muted);font-size:13px;cursor:text;transition:background .12s ease}.home-sidebar-header:focus-within{background:var(--bg-surface);box-shadow:0 0 0 1px var(--brand-primary)}.home-sidebar-search{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:13px;min-width:0}.home-sidebar-search::placeholder{color:var(--text-muted)}.home-sidebar-clear{width:20px;height:20px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.home-sidebar-clear:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.home-sidebar-header:hover{background:var(--bg-modifier-hover)}.home-nav{display:flex;flex-direction:column;gap:2px;padding:4px 8px}.home-nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;color:var(--text-secondary);transition:background .15s ease,color .15s ease,transform .12s var(--ease-spring),padding-left .2s ease;position:relative}.home-nav-item:hover{background:var(--bg-modifier-hover);color:var(--text-primary);transform:translate(3px)}.home-nav-item:active{transform:scale(.97)}.home-nav-item.active{background:var(--bg-modifier-selected);color:var(--text-primary);padding-left:16px}.home-nav-item.active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:var(--brand-primary);border-radius:2px;animation:pop-in .2s var(--ease-spring)}.home-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--brand-primary);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.home-dm-header{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);padding:16px 16px 6px;letter-spacing:.06em}.home-dm-list{flex:1;overflow-y:auto;padding:0 8px}.home-dm-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--radius-sm);width:100%;transition:background .15s ease,transform .12s var(--ease-spring)}.home-dm-item:hover{background:var(--bg-modifier-hover);transform:translate(3px)}.home-dm-avatar{width:32px;height:32px;border-radius:50%;background:var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;position:relative;color:var(--text-primary)}.home-dm-name{font-size:14px;font-weight:500;color:var(--text-secondary);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.home-dm-name.unread{font-weight:700;color:var(--text-primary)}.home-dm-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.home-dm-preview{font-size:12px;color:var(--text-muted);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:160px}.home-dm-badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--brand-primary);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;animation:badge-pop .25s cubic-bezier(.34,1.56,.64,1)}.home-dm-call-indicator{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--status-online, #3ba55d);color:#fff;flex-shrink:0;animation:badge-pop .25s cubic-bezier(.34,1.56,.64,1)}@keyframes badge-pop{0%{transform:scale(0)}to{transform:scale(1)}}.home-dm-empty{color:var(--text-muted);font-size:12px;padding:12px 10px;text-align:center}.home-content{flex:1;display:flex;flex-direction:column;overflow:hidden;animation:fade-in var(--anim-normal) var(--ease-out-expo)}.home-content-header{display:flex;align-items:center;gap:10px;padding:0 20px;height:var(--header-height);border-bottom:1px solid var(--border-subtle);flex-shrink:0;color:var(--text-primary)}.home-content-title{font-weight:700;font-size:15px;padding-right:16px;border-right:1px solid var(--border-subtle)}.home-content-tabs{display:flex;gap:2px;margin-left:4px}.home-pill{padding:4px 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text-muted);transition:background .1s ease,color .1s ease}.home-pill:hover{background:var(--bg-modifier-hover);color:var(--text-secondary)}.home-pill.active{background:var(--bg-modifier-selected);color:var(--text-primary)}.add-friend-header-btn{margin-left:auto;width:auto;padding:4px 14px;margin-top:0;font-size:12px;font-weight:600;border-radius:var(--radius-sm);white-space:nowrap}.home-list{flex:1;overflow-y:auto;padding:16px 20px;animation:fade-in-up var(--anim-normal) var(--ease-out-expo)}.home-section-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);padding:8px 0;letter-spacing:.06em}.home-empty{color:var(--text-muted);font-size:13px;padding:16px 0;text-align:center}.home-empty-large{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 20px;color:var(--text-muted)}.home-empty-large h3{font-size:18px;color:var(--text-primary);margin:16px 0 8px;font-weight:600}.home-empty-large p{font-size:14px;max-width:400px;line-height:1.5}.add-friend-section{padding:24px 20px;animation:fade-in-up var(--anim-normal) var(--ease-out-expo)}.add-friend-section h3{font-size:16px;font-weight:700;margin-bottom:6px}.add-friend-desc{color:var(--text-secondary);font-size:13px;margin-bottom:20px;line-height:1.5}.add-friend-form{position:relative}.add-friend-input-wrap{display:flex;align-items:center;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:4px 4px 4px 16px;transition:border-color .15s ease}.add-friend-input-wrap:focus-within{border-color:var(--brand-primary)}.add-friend-input-wrap input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:15px;padding:10px 0}.add-friend-input-wrap input::placeholder{color:var(--text-muted)}.add-friend-btn{flex-shrink:0;width:auto!important;padding:6px 16px!important;font-size:13px!important;border-radius:var(--radius-sm)!important;margin-top:0!important;white-space:nowrap}.add-friend-btn:disabled{opacity:.5;cursor:not-allowed}.add-friend-pending{margin-top:8px}.active-server-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;margin-bottom:12px}.active-server-header{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border-subtle)}.active-guild-icon{width:36px;height:36px;border-radius:var(--radius-md);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--text-primary);flex-shrink:0}.active-server-info{flex:1;min-width:0}.active-guild-name{display:block;font-size:14px;font-weight:600;color:var(--text-primary)}.active-channel-name{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-muted);margin-top:2px}.active-user-count{font-size:13px;font-weight:700;color:var(--status-online);background:#22c55e1a;padding:2px 8px;border-radius:var(--radius-sm)}.active-user-list{padding:8px 14px}.active-user-row{display:flex;align-items:center;gap:8px;padding:5px 0}.active-user-name{font-size:13px;color:var(--text-secondary);font-weight:500}.active-user-badge{font-size:10px;font-weight:700;padding:1px 5px;border-radius:3px;text-transform:uppercase}.active-user-badge.muted{background:#eab30826;color:#eab308}.active-user-badge.deafened{background:#ef444426;color:#ef4444}.mention-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-bottom:8px;cursor:pointer;transition:background .12s ease,border-color .12s ease}.mention-card:hover{background:var(--bg-modifier-hover);border-color:var(--border-hover)}.mention-icon{width:40px;height:40px;border-radius:50%;background:#f973161a;color:var(--brand-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.mention-info{flex:1;min-width:0}.mention-channel{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:var(--text-primary)}.mention-guild{font-size:12px;color:var(--text-muted);font-weight:400;margin-left:6px}.mention-count{font-size:12px;color:var(--text-muted);margin-top:2px}.mention-badge{min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--brand-primary);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dm-header{gap:8px!important}.dm-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--text-muted);transition:background .12s ease,color .12s ease;flex-shrink:0}.dm-back-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.dm-header-avatar{width:28px;height:28px;border-radius:50%;background:var(--brand-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;overflow:hidden}.dm-header-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.dm-conversation{flex:1;display:flex;flex-direction:column;overflow:hidden;animation:fade-in var(--anim-fast) var(--ease-out-expo)}.dm-conversation .messages-area{flex:1;overflow-y:auto}.dm-conversation .input-bar{flex-shrink:0}.home-dm-item.active{background:var(--bg-modifier-selected);color:var(--text-primary)}.home-dm-item{transition:background .12s ease,transform .1s ease}.home-dm-item:active{transform:scale(.98)}.dm-header-actions{margin-left:auto;display:flex;gap:4px}.dm-call-action-btn{width:34px;height:34px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:color .15s ease,background .15s ease,transform .1s ease}.dm-call-action-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.dm-call-action-btn:active{transform:scale(.9)}.dm-call-action-btn:disabled{opacity:.3;pointer-events:none}.ongoing-call-banner{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle);gap:12px}.ongoing-call-info{display:flex;align-items:center;gap:10px;min-width:0}.ongoing-call-pulse{width:10px;height:10px;border-radius:var(--radius-full);background:var(--status-online);flex-shrink:0;animation:dot-pulse 1.8s ease-in-out infinite}@keyframes dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}.ongoing-call-label{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap}.ongoing-call-avatars{display:flex;gap:0}.ongoing-call-avatar{width:28px;height:28px;border-radius:var(--radius-full);background:var(--brand-primary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;border:2px solid var(--bg-tertiary);margin-left:-6px}.ongoing-call-avatar:first-child{margin-left:0}.ongoing-call-join{display:flex;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;border-radius:var(--radius-md);white-space:nowrap;flex-shrink:0}.dm-call-view{background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;padding:20px;gap:16px;animation:fade-in-scale var(--anim-normal) var(--ease-spring);max-height:80vh;overflow-y:auto;overflow-x:hidden}.dm-call-view.popped-out{position:fixed;top:60px;right:20px;z-index:9000;width:700px;max-height:calc(100vh - 100px);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:0 12px 48px #00000080;resize:both;overflow:auto}:root{--call-dock-left-inset: 0px;--call-dock-sidebar-inset: 0px;--call-dock-right-inset: 0px}:root:has(.app-shell.layout-server-left){--call-dock-left-inset: var(--guild-bar-width, 62px)}:root:has(.app-shell .channel-sidebar),:root:has(.app-shell .home-sidebar){--call-dock-sidebar-inset: var(--sidebar-width, 240px)}:root:has(.app-shell.layout-server-right){--call-dock-right-inset: var(--guild-bar-width, 62px)}.dm-call-dock{position:fixed;top:0;left:calc(var(--call-dock-left-inset, 0px) + var(--call-dock-sidebar-inset, 0px));right:var(--call-dock-right-inset, 0px);display:flex;justify-content:center;padding:12px 16px 0;z-index:8999;pointer-events:none}body.has-titlebar .dm-call-dock{top:var(--titlebar-h, 32px)}.dm-call-dock .dm-call-view{pointer-events:auto}.dm-call-dock .dm-call-view:not(.popped-out){width:min(920px,100%);max-height:min(80vh,calc(100vh - 24px));border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 12px 48px #00000080;position:relative}.dm-call-dock .dm-call-view.theater:not(.popped-out){width:100%;max-height:none;height:calc(50vh - 12px)}body.has-titlebar .dm-call-dock .dm-call-view.theater:not(.popped-out){height:calc(50vh - var(--titlebar-h, 32px) - 12px)}.dm-call-view.theater .dm-call-videos{flex:1 1 auto;min-height:0;overflow-y:auto}.dm-call-view.theater .dm-call-screen-share{flex:1 1 0%;min-height:clamp(120px,calc(50vh - 278px),220px);display:flex;flex-direction:column;width:100%}.dm-call-view.theater .dm-call-screen-preview{flex:1 1 0%;min-height:clamp(100px,calc(50vh - 278px),160px)}.dm-call-view.theater .dm-call-screen-video{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain}.dm-call-view.theater .dm-call-videos>:not(.dm-call-screen-share){flex:0 0 auto}.dm-call-view.theater .dm-call-videos{position:relative}.dm-call-view.theater .dm-call-remote-camera{position:absolute;right:16px;top:48px;bottom:auto;width:240px;margin:0;z-index:4}.dm-call-view.theater .dm-call-local{inset:48px auto auto 16px}.dm-call-view.theater .dm-call-remote-video{max-height:none;width:100%;height:auto}.dm-call-status{font-size:13px;color:var(--text-muted);display:flex;align-items:center;gap:10px;width:100%;justify-content:center}.dm-call-popout-btn{width:28px;height:28px;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-secondary);font-size:12px;display:flex;align-items:center;justify-content:center;transition:background .15s ease;position:absolute;right:12px;top:12px}.dm-call-popout-btn:hover{background:var(--bg-modifier-hover)}.dm-call-expand-btn{width:28px;height:28px;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-secondary);font-size:12px;display:flex;align-items:center;justify-content:center;transition:background .15s ease;position:absolute;right:48px;top:12px}.dm-call-expand-btn:hover{background:var(--bg-modifier-hover)}.dm-call-connecting{animation:fade-in .5s ease infinite alternate}.dm-call-timer{font-variant-numeric:tabular-nums;font-weight:600;color:var(--status-online)}.dm-call-videos{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;gap:12px}.dm-call-remote{position:relative;width:100%;max-width:640px;aspect-ratio:16/9;background:var(--bg-tertiary);border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:center;justify-content:center;transition:max-width .3s ease,aspect-ratio .3s ease;flex-shrink:0}.dm-call-remote.compact{max-width:200px;position:absolute;top:8px;right:8px;z-index:2;border:2px solid var(--bg-surface);box-shadow:0 2px 8px #0000004d}.dm-call-remote-video{width:100%;height:100%;object-fit:cover}.dm-call-remote-camera{position:relative;width:min(640px,92%);max-height:52vh;aspect-ratio:16 / 9;margin:0 auto 12px;border-radius:12px;overflow:hidden;background:#000;box-shadow:0 6px 24px #00000073}.dm-call-remote-camera .dm-call-remote-video{background:#000}.dm-call-remote-camera-name{position:absolute;bottom:8px;left:8px;background:#0009;color:#fff;font-size:12px;padding:2px 8px;border-radius:6px}.dm-call-remote-avatar{position:absolute;width:64px;height:64px;border-radius:var(--radius-full);background:var(--brand-primary);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff}.dm-call-remote-name{position:absolute;bottom:8px;left:10px;font-size:12px;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}.dm-call-local{position:absolute;bottom:8px;right:8px;width:120px;aspect-ratio:16/9;border-radius:var(--radius-md);overflow:hidden;border:2px solid var(--bg-surface);box-shadow:0 2px 8px #0000004d}.dm-call-local-video{width:100%;height:100%;object-fit:cover}.dm-call-local.blurred .dm-call-local-video,.dm-call-screen-preview.blurred .dm-call-screen-video{filter:blur(14px) brightness(.7)}.dm-call-preview-idle{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;font-size:12px;color:#fff;background:#00000059;pointer-events:none}.dm-call-controls{display:flex;gap:8px;flex-shrink:0;position:relative}.dm-call-btn{width:44px;height:44px;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-primary);display:flex;align-items:center;justify-content:center;transition:background .15s ease,transform .1s ease,color .15s ease}.dm-call-btn:hover{background:var(--bg-modifier-hover)}.dm-call-btn:active{transform:scale(.9)}.dm-call-btn.active{background:var(--brand-primary);color:#fff}.dm-call-btn.end{background:var(--status-error);color:#fff}.dm-call-btn.end:hover{background:#c0392b}.dm-call-btn-group{position:relative;display:flex;align-items:center;gap:2px}.dm-call-btn-arrow{width:20px;height:44px;border-radius:0 var(--radius-full) var(--radius-full) 0;background:var(--brand-primary);color:#fff;display:flex;align-items:center;justify-content:center;transition:background .15s ease,filter .15s ease;cursor:pointer;border:none;padding:0}.dm-call-btn-arrow:hover{filter:brightness(1.15)}.dm-call-btn-group .dm-call-btn.active{border-radius:var(--radius-full) 0 0 var(--radius-full)}.dm-call-share-menu-backdrop{position:fixed;inset:0;z-index:99}.dm-call-share-menu{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);min-width:180px;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:0 4px 16px #00000040;padding:4px;z-index:100;animation:slide-down .12s ease}.dm-call-share-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-size:.85rem;cursor:pointer;transition:background .1s ease}.dm-call-share-menu-item:hover{background:var(--bg-modifier-hover)}.dm-call-share-menu-item.danger{color:var(--status-error)}.dm-call-share-menu-item.danger:hover{background:#e74c3c1f}.dm-call-share-menu-icon{display:flex;align-items:center;justify-content:center;width:16px;font-size:14px}.dm-call-share-menu-divider{height:1px;background:var(--border-primary);margin:4px 0}.dm-call-remote-avatar.speaking,.dm-call-participant.speaking{box-shadow:0 0 0 3px var(--status-online),0 0 16px #34d39980;transition:box-shadow .15s ease}.dm-call-remote-avatar:not(.speaking),.dm-call-participant:not(.speaking){box-shadow:none;transition:box-shadow .3s ease}.dm-call-local.speaking{border-color:var(--status-online)!important;box-shadow:0 0 8px #34d39966}.dm-call-participants{display:flex;align-items:center;justify-content:center;gap:24px;padding:16px;flex:1 0 auto}.dm-call-participants.compact{padding:8px;gap:16px}.dm-call-participant-wrapper{display:flex;flex-direction:column;align-items:center;gap:8px}.dm-call-participant{position:relative;width:72px;height:72px;border-radius:var(--radius-full);background:var(--brand-primary);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;color:#fff}.dm-call-participants.compact .dm-call-participant{width:48px;height:48px;font-size:20px}.dm-call-participant-name{font-size:12px;font-weight:600;color:var(--text-secondary);max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.dm-call-peer-badge{position:absolute;bottom:-2px;right:-2px;width:20px;height:20px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:10px;border:2px solid var(--bg-tertiary)}.dm-call-peer-badge.muted{background:var(--status-error);color:#fff}.dm-call-peer-badge.deafened{background:var(--status-error);color:#fff;bottom:-2px;right:18px}.dm-call-status-icon{margin-left:4px;font-size:11px;opacity:.8}.incoming-call-overlay{position:fixed;top:20px;right:20px;z-index:9990;animation:slide-in-right var(--anim-normal) var(--ease-spring)}.incoming-call-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:16px 20px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 32px #00000059;min-width:300px;position:relative}.incoming-call-avatar{width:44px;height:44px;border-radius:var(--radius-full);background:var(--brand-primary);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#fff;flex-shrink:0;position:relative;animation:fade-in-scale .3s var(--ease-spring)}.incoming-call-info{display:flex;flex-direction:column;flex:1;min-width:0}.incoming-call-name{font-size:14px;font-weight:600;color:var(--text-primary)}.incoming-call-type{font-size:12px;color:var(--status-online);animation:fade-in .8s ease infinite alternate}.incoming-call-actions{display:flex;gap:8px}.incoming-call-btn{width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;transition:transform .1s ease,background .15s ease}.incoming-call-btn.accept{background:var(--status-online);color:#fff}.incoming-call-btn.accept:hover{background:#219a52}.incoming-call-btn.reject{background:var(--status-error);color:#fff}.incoming-call-btn.reject:hover{background:#c0392b}.incoming-call-btn:active{transform:scale(.9)}@keyframes ring-expand{0%{transform:scale(1);opacity:.75}75%{transform:scale(1.5);opacity:0}to{transform:scale(1.5);opacity:0}}.dm-call-participant.ringing:after,.incoming-call-avatar.ringing:after{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid rgba(46,204,113,.85);box-shadow:0 0 10px #2ecc7166;pointer-events:none;animation:ring-expand 1.5s ease-out infinite}@keyframes rejoin-flash{0%{transform:scale(.9);opacity:.6}to{transform:scale(1.35);opacity:0}}.dm-call-participant.joining:after{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid rgba(249,115,22,.6);box-shadow:0 0 8px #f9731640;pointer-events:none;animation:rejoin-flash .6s ease-out 1}@keyframes call-ring-bob{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes call-ring-shake{0%,to{transform:rotate(0)}10%{transform:rotate(-6deg)}20%{transform:rotate(6deg)}30%{transform:rotate(-4deg)}40%{transform:rotate(4deg)}50%{transform:rotate(0)}}.dm-call-participant.ringing{animation:call-ring-bob 1.5s ease-in-out infinite;opacity:.9}.dm-call-participant.rejected{opacity:.35;filter:grayscale(.6)}.incoming-call-avatar.ringing{animation:call-ring-shake 1.8s ease-in-out infinite}.incoming-call-card.ringing:before{content:"";position:absolute;inset:0;border-radius:var(--radius-lg);box-shadow:0 0 20px #2ecc714d;pointer-events:none;animation:glow-fade 2s ease-in-out infinite}@keyframes glow-fade{0%,to{opacity:0}50%{opacity:1}}@keyframes phone-jiggle{0%,to{transform:rotate(0)}5%{transform:rotate(-15deg)}10%{transform:rotate(15deg)}15%{transform:rotate(-12deg)}20%{transform:rotate(12deg)}25%{transform:rotate(-8deg)}30%{transform:rotate(8deg)}35%{transform:rotate(-4deg)}40%{transform:rotate(4deg)}45%{transform:rotate(0)}}.incoming-call-btn.accept{animation:phone-jiggle 2.5s ease-in-out infinite}@keyframes participant-enter{0%{opacity:0;transform:scale(.5) translateY(10px)}60%{opacity:1;transform:scale(1.08) translateY(-2px)}to{opacity:1;transform:scale(1) translateY(0)}}.dm-call-participant-wrapper{animation:participant-enter .4s var(--ease-spring) both}.dm-call-participant.joining{opacity:.75}@keyframes participant-leave{0%{opacity:1;transform:scale(1)}25%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(.35)}}.dm-call-participant-wrapper.leaving{animation:participant-leave .85s cubic-bezier(.5,0,.75,0) forwards;pointer-events:none}.dm-call-sparkles{position:absolute;inset:0;pointer-events:none;overflow:visible}.dm-call-sparkles span{position:absolute;top:50%;left:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:radial-gradient(circle,#fff 0%,#ffd36b 45%,rgba(249,115,22,.85) 70%,transparent 100%);box-shadow:0 0 6px #ffd36be6;opacity:0;animation:sparkle-fly .85s ease-out forwards}@keyframes sparkle-fly{0%{opacity:0;transform:translate(0) scale(.3)}20%{opacity:1;transform:translate(calc(var(--dx) * .4),calc(var(--dy) * .4)) scale(1)}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.15)}}.dm-call-sparkles span:nth-child(1){--dx: -34px;--dy: -30px;animation-delay:.02s}.dm-call-sparkles span:nth-child(2){--dx: 36px;--dy: -26px;animation-delay:.06s}.dm-call-sparkles span:nth-child(3){--dx: 40px;--dy: 22px;animation-delay:0s}.dm-call-sparkles span:nth-child(4){--dx: -38px;--dy: 26px;animation-delay:.08s}.dm-call-sparkles span:nth-child(5){--dx: 6px;--dy: -44px;animation-delay:.04s}.dm-call-sparkles span:nth-child(6){--dx: -8px;--dy: 42px;animation-delay:.1s}.dm-call-screen-share{width:100%;border-radius:var(--radius-lg);overflow:hidden;background:#000;position:relative}.dm-call-screen-share-header{position:absolute;top:0;left:0;right:0;padding:8px 12px;background:linear-gradient(to bottom,rgba(0,0,0,.6),transparent);z-index:1}.dm-call-screen-share-user{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#fff}.dm-call-screen-avatar{width:24px;height:24px;border-radius:var(--radius-full);background:var(--brand-primary);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}.dm-call-screen-video{width:100%;max-height:min(60vh,calc(100vh - 320px));object-fit:contain}.dm-call-screen-preview{position:relative;overflow:hidden;min-height:200px;background:#000}.dm-call-screen-preview.paused .dm-call-screen-video{filter:blur(20px);transition:filter .3s ease}.dm-call-screen-preview:not(.paused) .dm-call-screen-video{filter:none;transition:filter .3s ease}.stream-volume-bar{position:absolute;bottom:0;left:0;right:0;z-index:3;display:flex;align-items:center;gap:10px;padding:8px 14px;background:linear-gradient(to top,rgba(0,0,0,.65),transparent);opacity:0;transition:opacity .15s ease}.dm-call-screen-preview:hover .stream-volume-bar{opacity:1}.stream-volume-icon{display:flex;align-items:center;justify-content:center;color:#fff;background:transparent;border:none;cursor:pointer;padding:2px}.stream-volume-slider{flex:1;max-width:220px;accent-color:var(--brand, #5865f2);cursor:pointer}.stream-volume-val{color:#fff;font-size:12px;min-width:38px;text-align:right;font-variant-numeric:tabular-nums}.dm-call-screen-paused-overlay{position:absolute;inset:0;display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;background:#00000080;z-index:2;backdrop-filter:blur(4px)}.dm-call-screen-paused-overlay span{font-size:1.3rem;font-weight:600;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5);letter-spacing:.02em}.dm-call-screen-hide{position:absolute;top:8px;right:12px;width:28px;height:28px;border-radius:var(--radius-full);background:#00000080;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;border:none;z-index:2;transition:background .15s ease,transform .1s ease}.dm-call-screen-hide:hover{background:#fff3;transform:scale(1.1)}.stream-stop-watching-btn{position:absolute;bottom:12px;right:12px;padding:6px 14px;border-radius:var(--radius-md);background:#dc2626d9;color:#fff;font-size:12px;font-weight:600;border:none;cursor:pointer;z-index:4;opacity:0;transition:opacity .2s ease,background .15s ease,transform .1s ease;backdrop-filter:blur(4px)}.dm-call-screen-preview:hover .stream-stop-watching-btn,.voice-screen-preview:hover .stream-stop-watching-btn{opacity:1}.stream-stop-watching-btn:hover{background:#dc2626;transform:scale(1.05)}.stream-stop-watching-btn:active{transform:scale(.95)}.dm-call-screen-optin{width:100%;max-width:640px;padding:16px 20px;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;color:var(--text-secondary);animation:fade-in-up var(--anim-fast) var(--ease-out-expo)}.dm-call-watch-btn{white-space:nowrap;padding:6px 16px;font-size:13px;font-weight:600;border-radius:var(--radius-md)}.dm-call-error{padding:8px 16px;background:#e74c3c26;border:1px solid var(--status-error);border-radius:var(--radius-md);color:var(--status-error);font-size:13px;text-align:center;width:100%;max-width:480px;animation:fade-in var(--anim-fast) ease}.screen-share-picker-overlay{position:fixed;inset:0;background:#0009;z-index:9999;display:flex;align-items:center;justify-content:center;animation:fade-in var(--anim-fast) ease}.screen-share-picker{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:24px;min-width:340px;box-shadow:0 8px 32px #0006;animation:fade-in-scale var(--anim-normal) var(--ease-spring)}.screen-share-picker h3{margin:0 0 16px;font-size:16px;font-weight:700;color:var(--text-primary)}.share-picker-section{margin-bottom:16px}.share-picker-section label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:8px}.share-picker-options{display:flex;gap:6px}.share-picker-btn{flex:1;padding:8px 4px;border-radius:var(--radius-md);background:var(--bg-tertiary);color:var(--text-secondary);font-size:13px;font-weight:600;text-align:center;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.share-picker-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.share-picker-btn.active{background:var(--brand-primary);color:#fff;box-shadow:0 2px 8px #f973164d}.share-picker-go{width:100%;margin-top:8px}.reply-bar{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-surface);border-left:3px solid var(--brand-primary);border-radius:6px 6px 0 0;font-size:13px;color:var(--text-muted);margin-bottom:-4px}.reply-bar-label{color:var(--text-muted);font-size:12px}.reply-bar-author{color:var(--text-primary);font-weight:600;font-size:13px}.reply-bar-preview{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);font-size:13px}.reply-bar-close{width:24px;height:24px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.reply-bar-close:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.reply-mention-toggle{display:flex;align-items:center;gap:4px;margin-left:auto;cursor:pointer;flex-shrink:0}.reply-mention-toggle input[type=checkbox]{width:14px;height:14px;accent-color:var(--brand-primary);cursor:pointer}.reply-mention-label{font-size:12px;color:var(--text-muted);white-space:nowrap}.msg-reply-ref{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);padding:2px 0 4px;cursor:pointer;margin-left:52px}.message-self .msg-reply-ref{justify-content:flex-end;margin-left:0;margin-right:52px}.msg-reply-ref:hover{color:var(--text-secondary)}.msg-reply-ref-author{font-weight:600;color:var(--text-secondary)}.msg-reply-ref-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.msg-action-bar{position:absolute;top:-12px;right:8px;display:none;align-items:center;gap:2px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);box-shadow:0 1px 4px #00000026;z-index:2;padding:2px}.message:hover .msg-action-bar{display:flex}.msg-action-btn{width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:14px;line-height:1}.msg-action-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.msg-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;padding-left:56px}.message-self .msg-reactions{padding-left:16px;padding-right:56px;justify-content:flex-end}.message-other .msg-reactions{padding-left:56px;padding-right:16px}.msg-reaction-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-subtle);font-size:13px;color:var(--text-secondary);transition:background var(--anim-fast),border-color var(--anim-fast)}.msg-reaction-chip:hover{background:var(--bg-modifier-hover);border-color:var(--text-muted)}.msg-reaction-chip.me{background:#f973161f;border-color:var(--brand-primary);color:var(--text-primary)}.msg-reaction-emoji{font-size:16px;line-height:1}.msg-reaction-count{font-size:12px;font-weight:600;min-width:8px;text-align:center}.msg-reaction-add{width:26px;height:26px;border-radius:var(--radius-full);background:var(--bg-surface);border:1px dashed var(--border-subtle);color:var(--text-muted);font-size:16px;display:flex;align-items:center;justify-content:center}.msg-reaction-add:hover{background:var(--bg-modifier-hover);border-color:var(--text-muted);color:var(--text-primary)}.msg-reaction-picker{position:absolute;right:0;top:100%;z-index:100}.message-self .msg-reaction-picker{right:auto;left:0}.msg-highlight{animation:msg-flash 1.5s ease-out}@keyframes msg-flash{0%{background:#f9731640}to{background:transparent}}.home-dm-add-group{width:24px;height:24px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.home-dm-add-group:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.group-dm-avatar{background:var(--brand-primary)!important;color:#fff!important;display:flex;align-items:center;justify-content:center}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fade-in var(--anim-fast) ease-out}.modal-content{background:var(--bg-primary);border-radius:var(--radius-lg);padding:24px;max-width:440px;width:90vw;max-height:80vh;overflow-y:auto;box-shadow:0 8px 32px #0000004d}.modal-content h3{margin:0 0 16px;font-size:18px;color:var(--text-primary)}.group-dm-modal .group-dm-name-field{margin-bottom:16px}.group-dm-modal .group-dm-name-field label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.group-dm-modal .group-dm-name-field input{width:100%;padding:10px 12px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px}.group-dm-modal .group-dm-name-field input:focus{border-color:var(--brand-primary);outline:none}.group-dm-friend-picker label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.group-dm-friend-list{max-height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.group-dm-friend-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;text-align:left;width:100%}.group-dm-friend-item:hover{background:var(--bg-modifier-hover)}.group-dm-friend-item.selected{background:#f973161f;color:var(--text-primary)}.group-dm-friend-item svg:last-child{margin-left:auto;color:var(--brand-primary)}.group-dm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.btn-secondary{padding:8px 16px;border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:14px;font-weight:500;border:1px solid var(--border-subtle)}.btn-secondary:hover{background:var(--bg-modifier-hover)}.dm-conversation-row{display:flex;flex:1;min-height:0;overflow:hidden}.group-dm-members-panel{width:220px;flex-shrink:0;background:var(--bg-secondary);border-left:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow-y:auto}.group-dm-members-header{padding:12px 14px;font-size:12px;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.02em;border-bottom:1px solid var(--border-subtle)}.group-dm-members-list{padding:8px;display:flex;flex-direction:column;gap:2px}.group-dm-member-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--radius-md)}.group-dm-member-row:hover{background:var(--bg-modifier-hover)}.group-dm-member-info{display:flex;flex-direction:column;min-width:0}.group-dm-member-name{font-size:14px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-dm-member-username{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-call-action-btn.active{color:var(--brand-primary);background:#f973161f}.group-dm-members-footer{padding:8px;border-top:1px solid var(--border-primary);margin-top:auto}.group-dm-leave-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--status-dnd);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.group-dm-leave-btn:hover{background:#ef44441f}.group-dm-add-person-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.group-dm-add-person-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.admin-page{display:flex;height:100vh;background:var(--bg-primary);color:var(--text-primary)}.admin-sidebar{width:220px;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0}.admin-sidebar-header{padding:16px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border-color)}.admin-back-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px}.admin-back-btn:hover{color:var(--text-primary);background:var(--bg-modifier-hover)}.admin-title{font-weight:700;font-size:15px}.admin-nav{padding:8px;display:flex;flex-direction:column;gap:2px}.admin-nav-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;background:none;color:var(--text-secondary);font-size:13px;cursor:pointer;border-radius:6px;transition:background .15s,color .15s}.admin-nav-item:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.admin-nav-item.active{background:var(--bg-modifier-selected);color:var(--accent)}.admin-content{flex:1;overflow-y:auto;padding:24px 32px}.admin-error{background:#ef44441a;color:#ef4444;padding:10px 14px;border-radius:6px;margin-bottom:16px;font-size:13px}.admin-loading{color:var(--text-muted);font-size:14px}.admin-dashboard h2{margin-bottom:16px;font-size:18px}.admin-dashboard h3{margin:24px 0 12px;font-size:15px}.admin-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.admin-stat-card{background:var(--bg-tertiary);border-radius:8px;padding:16px;text-align:center}.admin-stat-value{font-size:24px;font-weight:700;color:var(--accent)}.admin-stat-label{font-size:12px;color:var(--text-secondary);margin-top:4px}.admin-service-list{display:flex;flex-direction:column;gap:6px}.admin-service-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border-radius:6px;font-size:13px}.admin-service-item.unhealthy{border-left:3px solid #ef4444}.admin-service-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.admin-service-dot.ok{background:#22c55e}.admin-service-dot.err{background:#ef4444}.admin-service-name{font-weight:600;width:100px}.admin-service-status{color:var(--text-secondary)}.admin-section h2{margin-bottom:16px;font-size:18px}.admin-search-bar{display:flex;align-items:center;gap:8px;margin-bottom:16px;background:var(--bg-tertiary);padding:8px 12px;border-radius:6px}.admin-search-bar input{flex:1;background:none;border:none;color:var(--text-primary);font-size:13px;outline:none}.admin-search-bar button{background:var(--accent);color:#fff;border:none;padding:4px 12px;border-radius:4px;cursor:pointer;font-size:12px}.admin-table{display:flex;flex-direction:column;gap:2px}.admin-table-header{display:grid;grid-template-columns:2fr 2fr 1fr 1fr;gap:8px;padding:8px 12px;font-size:11px;text-transform:uppercase;color:var(--text-muted);font-weight:600}.admin-table-row{display:grid;grid-template-columns:2fr 2fr 1fr 1fr;gap:8px;padding:8px 12px;font-size:13px;background:var(--bg-tertiary);border-radius:4px;cursor:pointer;transition:background .15s}.admin-table-row:hover{background:var(--bg-modifier-hover)}.admin-banned{color:#ef4444;font-weight:600}.admin-empty{color:var(--text-muted);font-size:13px;padding:16px;text-align:center}.admin-back-link{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:13px;margin-bottom:16px;padding:4px 0}.admin-back-link:hover{color:var(--text-primary)}.admin-user-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.admin-user-avatar{width:56px;height:56px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;flex-shrink:0}.admin-user-meta{font-size:13px;color:var(--text-secondary)}.admin-user-badges{display:flex;gap:6px;margin-top:6px}.admin-badge{display:inline-block;font-size:11px;padding:2px 8px;border-radius:10px;background:var(--bg-surface);color:var(--text-secondary)}.admin-badge.online{background:#22c55e26;color:#22c55e}.admin-badge.offline{background:#64646426;color:#888}.admin-badge.banned{background:#ef444426;color:#ef4444}.admin-actions{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.admin-action-group{display:flex;gap:8px;align-items:center}.admin-action-group input{flex:1;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);padding:6px 10px;border-radius:4px;font-size:13px;outline:none}.admin-action-btn{display:inline-flex;align-items:center;gap:4px;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);padding:6px 14px;border-radius:4px;cursor:pointer;font-size:12px;transition:background .15s;white-space:nowrap}.admin-action-btn:hover{background:var(--bg-modifier-hover)}.admin-action-btn:disabled{opacity:.4;cursor:not-allowed}.admin-action-btn.danger{border-color:#ef4444;color:#ef4444}.admin-action-btn.danger:hover{background:#ef44441a}.admin-action-btn.warn{border-color:#f59e0b;color:#f59e0b}.admin-action-btn.warn:hover{background:#f59e0b1a}.admin-warnings{display:flex;flex-direction:column;gap:4px}.admin-warning-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-tertiary);border-radius:4px;font-size:13px;border-left:3px solid #f59e0b}.admin-warning-reason{color:var(--text-primary)}.admin-warning-date{color:var(--text-muted);font-size:11px}.admin-ticket-filters{display:flex;gap:6px;margin-bottom:16px}.admin-ticket-filters button{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);padding:4px 14px;border-radius:14px;cursor:pointer;font-size:12px;transition:background .15s,color .15s}.admin-ticket-filters button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.admin-ticket{background:var(--bg-tertiary);border-radius:8px;padding:14px;margin-bottom:10px}.admin-ticket-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:12px}.admin-ticket-status{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;text-transform:uppercase}.admin-ticket-status.open{background:#f59e0b26;color:#f59e0b}.admin-ticket-status.resolved{background:#22c55e26;color:#22c55e}.admin-ticket-category{color:var(--text-muted)}.admin-ticket-date{color:var(--text-muted);margin-left:auto}.admin-ticket-subject{font-weight:600;font-size:14px;margin-bottom:4px}.admin-ticket-body{font-size:13px;color:var(--text-secondary);margin-bottom:8px;line-height:1.5}.admin-ticket-meta{font-size:11px;color:var(--text-muted);margin-bottom:8px}.admin-refresh-btn{background:var(--accent);color:#fff;border:none;padding:6px 16px;border-radius:4px;cursor:pointer;font-size:12px;margin-bottom:16px}.admin-overall-health{padding:12px 16px;border-radius:8px;font-weight:600;font-size:14px;margin-bottom:16px;text-align:center}.admin-overall-health.healthy{background:#22c55e1a;color:#22c55e}.admin-overall-health.degraded{background:#ef44441a;color:#ef4444}.admin-service-card{background:var(--bg-tertiary);border-radius:8px;padding:14px;margin-bottom:8px}.admin-service-card.unhealthy{border-left:3px solid #ef4444}.admin-service-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.admin-service-card-body{font-size:13px;color:var(--text-secondary);margin-bottom:6px}.admin-service-failures{color:#ef4444;margin-left:8px}.admin-service-card-footer{font-size:11px;color:var(--text-muted)}.guild-context-menu{position:fixed;z-index:9999;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:6px 0;min-width:180px;box-shadow:0 8px 24px #0006;animation:ctx-fade-in .1s ease-out}@keyframes ctx-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ctx-item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 12px;background:none;border:none;color:var(--text-primary);font-size:13px;text-align:left;cursor:pointer;transition:background .1s}.ctx-item:hover{background:var(--bg-hover)}.ctx-item.danger{color:#f23f43}.ctx-item.danger:hover{background:#f23f431f}.ctx-separator{height:1px;background:var(--border);margin:4px 8px}.server-bar-guild-wrap{position:relative;overflow:visible}.guild-unread-dot{position:absolute;left:-4px;top:50%;transform:translateY(-50%);width:4px;height:8px;border-radius:0 4px 4px 0;background:var(--text-primary);transition:height .15s ease}.server-bar-guild-wrap:hover .guild-unread-dot{height:20px}.guild-mention-badge{position:absolute;bottom:-4px;right:-6px;background:#f23f43;color:#fff;font-size:11px;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 5px;box-shadow:0 0 0 3px var(--bg-primary);z-index:1;pointer-events:none;box-sizing:border-box}.invite-code-box{display:flex;align-items:center;gap:8px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;padding:10px 12px}.invite-code-text{flex:1;font-size:16px;font-weight:600;color:var(--text-primary);font-family:monospace;user-select:all}.server-settings-overlay{position:fixed;inset:0;z-index:10000;background:#0009;display:flex;align-items:center;justify-content:center;animation:ss-fade .15s ease-out}@keyframes ss-fade{0%{opacity:0}to{opacity:1}}.server-settings-panel{display:flex;width:min(1000px,94vw);height:min(680px,90vh);background:var(--bg-primary);border-radius:10px;overflow:hidden;box-shadow:0 12px 48px #00000080}.ss-sidebar{width:220px;min-width:220px;background:var(--bg-secondary);padding:16px 0;overflow-y:auto;border-right:1px solid var(--border)}.ss-sidebar-header{padding:0 16px 12px;border-bottom:1px solid var(--border);margin-bottom:8px}.ss-sidebar-header h3{font-size:15px;font-weight:700;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ss-sidebar-sub{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.ss-group-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:12px 16px 4px}.ss-tab{display:block;width:100%;padding:6px 16px;background:none;border:none;color:var(--text-secondary);font-size:13px;text-align:left;cursor:pointer;border-radius:0;transition:background .1s,color .1s}.ss-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.ss-tab.active{background:var(--accent);color:#fff}.ss-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.ss-content-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--border)}.ss-content-header h2{font-size:18px;font-weight:700;color:var(--text-primary);margin:0}.ss-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:color .15s,background .15s}.ss-close:hover{color:var(--text-primary);background:var(--bg-hover)}.ss-scroll{flex:1;overflow-y:auto;padding:20px 24px}.ss-section{margin-bottom:24px}.ss-section h3{font-size:15px;font-weight:700;color:var(--text-primary);margin:0 0 8px}.ss-section h4{font-size:13px;font-weight:600;color:var(--text-secondary);margin:16px 0 8px}.ss-desc{color:var(--text-muted);font-size:13px;margin:0 0 12px;line-height:1.4}.ss-actions{display:flex;gap:8px;margin-top:16px}.ss-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.ss-count{color:var(--text-muted);font-size:12px;margin-left:auto}.ss-empty{color:var(--text-muted);font-size:13px;padding:16px;text-align:center;border:1px dashed var(--border);border-radius:6px}.ss-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:12px}.ss-card h4{margin-top:0}.ss-info-row{display:flex;align-items:center;gap:12px;padding:6px 0;font-size:13px}.ss-info-label{color:var(--text-muted);min-width:80px}.ss-info-row code{font-size:12px;color:var(--text-primary);background:var(--bg-tertiary);padding:2px 6px;border-radius:3px;user-select:all}.ss-icon-preview{width:64px;height:64px;border-radius:50%;object-fit:cover;margin-top:8px;border:2px solid var(--border)}.ss-radio-group{display:flex;flex-direction:column;gap:6px}.ss-radio{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:13px;cursor:pointer}.ss-radio input[type=radio]{accent-color:var(--accent)}.ss-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-primary);font-size:13px;padding:6px 0}.ss-toggle-row input[type=checkbox]{accent-color:var(--accent)}.ss-feature-list{list-style:none;padding:0;margin:0 0 12px}.ss-feature-list li{padding:4px 0;color:var(--text-secondary);font-size:13px}.ss-feature-list li:before{content:"✦ ";color:var(--accent)}.ss-table{width:100%}.ss-table-header{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 100px;gap:8px;padding:8px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border)}.ss-table-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 100px;gap:8px;padding:8px 12px;font-size:13px;align-items:center;border-bottom:1px solid rgba(255,255,255,.04);transition:background .1s}.ss-table-row:hover{background:var(--bg-hover)}.ss-badge{display:inline-block;background:var(--accent);color:#fff;font-size:11px;padding:2px 8px;border-radius:4px;font-weight:600}.ss-mono{font-family:monospace;font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-channel-row{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:4px;transition:background .1s}.ss-channel-row:hover{background:var(--bg-hover)}.ss-channel-row.category{font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.04em;color:var(--text-muted);margin-top:8px}.ss-channel-hash{color:var(--text-muted);font-weight:700;min-width:16px;text-align:center}.ss-channel-name{flex:1;color:var(--text-primary);font-size:13px}.ss-channel-topic{color:var(--text-muted);font-size:12px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-channel-type{color:var(--text-muted);font-size:11px;margin-left:auto;margin-right:8px}.ss-emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.ss-emoji-card{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px}.ss-emoji-img{width:28px;height:28px;object-fit:contain}.ss-emoji-name{flex:1;font-size:12px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis}.ss-sticker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.ss-sticker-card{display:flex;align-items:center;gap:10px;padding:10px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px}.ss-sticker-img{width:48px;height:48px;object-fit:contain}.ss-sticker-info{flex:1;min-width:0}.ss-sticker-name{display:block;font-size:13px;font-weight:600;color:var(--text-primary)}.ss-sticker-desc{display:block;font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-search{flex:1;max-width:260px;padding:6px 10px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:13px}.ss-member-list{display:flex;flex-direction:column;gap:2px}.ss-member-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:4px;transition:background .1s}.ss-member-row:hover{background:var(--bg-hover)}.ss-member-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.ss-member-info{display:flex;flex-direction:column;min-width:0}.ss-member-name{font-size:13px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.ss-member-username{font-size:11px;color:var(--text-muted)}.ss-owner-badge{font-size:10px;background:#f0b232;color:#000;padding:1px 6px;border-radius:3px;font-weight:700}.ss-member-roles{display:flex;gap:4px;flex-wrap:wrap;flex:1;min-width:0}.ss-role-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid;border-radius:4px;font-size:11px;color:var(--text-primary);white-space:nowrap}.ss-role-pill-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:12px;padding:0 2px;line-height:1}.ss-role-pill-remove:hover{color:#f23f43}.ss-member-actions{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}.ss-role-assign{padding:2px 4px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:11px;cursor:pointer}.ss-roles-layout{display:flex;gap:16px;min-height:300px}.ss-roles-list{width:200px;min-width:200px;display:flex;flex-direction:column;gap:2px;overflow-y:auto;border:1px solid var(--border);border-radius:6px;padding:6px;background:var(--bg-secondary)}.ss-role-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:4px;cursor:pointer;transition:background .1s}.ss-role-item:hover{background:var(--bg-hover)}.ss-role-item.active{background:var(--bg-hover);border-left:2px solid var(--accent)}.ss-role-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ss-role-name{flex:1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-role-pos{font-size:11px;color:var(--text-muted)}.ss-role-editor{flex:1;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:16px;overflow-y:auto}.ss-role-editor h4{margin-top:0}.ss-perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px}.ss-perm-item{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:4px;font-size:12px;color:var(--text-primary);cursor:pointer;transition:background .1s}.ss-perm-item:hover{background:var(--bg-hover)}.toggle-switch.toggle-sm{width:32px;height:18px;border-radius:9px;flex-shrink:0}.toggle-switch.toggle-sm .toggle-knob{width:12px;height:12px;top:3px;left:3px}.toggle-switch.toggle-sm.on .toggle-knob{transform:translate(14px)}.toggle-switch.disabled{opacity:.4;cursor:not-allowed}.ss-ban-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:4px;transition:background .1s}.ss-ban-row:hover{background:var(--bg-hover)}.ss-ban-info{display:flex;flex-direction:column}.ss-ban-name{font-size:13px;font-weight:600;color:var(--text-primary)}.ss-ban-reason{font-size:12px;color:var(--text-muted)}.ss-ban-date{font-size:11px;color:var(--text-muted)}.btn-danger-small{background:transparent;border:1px solid rgba(242,63,67,.5);color:#f23f43;padding:3px 8px;border-radius:4px;font-size:11px;cursor:pointer;transition:background .15s;white-space:nowrap}.btn-danger-small:hover{background:#f23f431f}.success-msg{background:#23a55a26;color:#23a55a;padding:8px 12px;border-radius:6px;font-size:13px;margin-bottom:12px;border:1px solid rgba(35,165,90,.3)}.invite-embed{background:var(--bg-secondary, #2b2d31);border:1px solid var(--border-color, #3f4147);border-radius:8px;overflow:hidden;max-width:432px;margin-top:4px}.message-other .invite-embed{margin-left:0}.message-self .invite-embed{margin-left:auto;margin-right:0}.invite-embed-loading,.invite-embed-error{padding:16px;font-size:13px;color:var(--text-muted, #949ba4)}.invite-embed-error{display:flex;align-items:center;gap:10px;color:var(--text-secondary, #b5bac1)}.invite-embed-error-icon{font-size:24px;color:#f0b232}.invite-embed-error-title{font-weight:600;font-size:14px;color:var(--text-primary, #f2f3f5)}.invite-embed-error-desc{font-size:12px;color:var(--text-muted, #949ba4);margin-top:2px}.invite-embed-banner{width:100%;height:80px;overflow:hidden}.invite-embed-banner img{width:100%;height:100%;object-fit:cover}.invite-embed-header{padding:12px 16px 0}.invite-embed-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted, #949ba4);letter-spacing:.02em}.invite-embed-body{display:flex;align-items:center;gap:12px;padding:10px 16px 14px}.invite-embed-icon img{width:48px;height:48px;border-radius:16px;object-fit:cover}.invite-embed-icon-fallback{width:48px;height:48px;border-radius:16px;background:var(--bg-tertiary, #1e1f22);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:var(--text-primary, #f2f3f5)}.invite-embed-info{flex:1;min-width:0}.invite-embed-name{font-size:15px;font-weight:600;color:var(--text-primary, #f2f3f5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invite-embed-counts{display:flex;gap:12px;margin-top:3px;font-size:12px;color:var(--text-secondary, #b5bac1)}.invite-embed-counts .status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;vertical-align:middle}.invite-embed-counts .status-dot.online{background:#23a55a}.invite-embed-counts .status-dot.offline{background:#80848e}.invite-embed-btn{background:#248046;color:#fff;border:none;border-radius:4px;padding:8px 20px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap;flex-shrink:0}.invite-embed-btn:hover{background:#1a6334}.invite-embed-btn.joined{background:var(--bg-tertiary, #1e1f22);color:var(--text-muted, #949ba4);cursor:default}.invite-embed-btn:disabled{opacity:.6;cursor:not-allowed}.invite-options{display:flex;gap:12px;margin-bottom:16px}.invite-option-row{flex:1;display:flex;flex-direction:column;gap:4px}.invite-option-row label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted, #949ba4);letter-spacing:.02em}.invite-option-row select{background:var(--bg-tertiary, #1e1f22);border:1px solid var(--border-color, #3f4147);color:var(--text-primary, #f2f3f5);border-radius:4px;padding:6px 8px;font-size:13px;cursor:pointer}.invite-option-row select:focus{outline:none;border-color:var(--accent, #5865f2)}.invite-friends-section{margin-top:16px;border-top:1px solid var(--border-color, #3f4147);padding-top:12px}.invite-friends-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted, #949ba4);letter-spacing:.02em;margin-bottom:8px}.invite-friends-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.invite-friend-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:6px;transition:background .1s}.invite-friend-row:hover{background:var(--bg-tertiary, #1e1f22)}.invite-friend-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--text-primary, #f2f3f5);background:var(--bg-tertiary, #1e1f22)}.invite-friend-name{flex:1;min-width:0;font-size:14px;font-weight:500;color:var(--text-primary, #f2f3f5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invite-friend-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:3px;flex-shrink:0}.invite-friend-badge.in-server{background:#23a55a26;color:#23a55a}.invite-friend-btn{background:var(--accent, #5865f2);color:#fff;border:none;border-radius:4px;padding:4px 14px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s;flex-shrink:0}.invite-friend-btn:hover:not(:disabled){background:#4752c4}.invite-friend-btn.sent{background:var(--bg-tertiary, #1e1f22);color:#23a55a;cursor:default}.invite-friend-btn:disabled{opacity:.7;cursor:not-allowed}.ss-banner-preview{width:100%;max-height:120px;object-fit:cover;border-radius:8px;margin-top:4px;margin-bottom:8px}.channel-sidebar-banner{width:100%;height:120px;overflow:hidden;flex-shrink:0}.channel-sidebar-banner img{width:100%;height:100%;object-fit:cover}.channel-action-bar{display:flex;align-items:center;gap:2px;padding:4px 12px;border-bottom:1px solid var(--border-color, #1e1f22);background:var(--bg-secondary, #2b2d31);flex-shrink:0}.channel-action-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted, #949ba4);font-size:16px;padding:4px 8px;border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.channel-action-btn:hover{background:var(--bg-modifier-hover, #36373d);color:var(--text-normal, #dbdee1)}.channel-action-thread-name{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--text-normal, #dbdee1);margin-left:4px}.thread-back-btn{display:flex;align-items:center;gap:4px;font-size:13px!important;font-weight:600;color:var(--brand-primary, #5865f2)!important}.ctx-menu-overlay{position:fixed;inset:0;z-index:1000}.ctx-menu{position:fixed;z-index:1001;min-width:180px;background:var(--bg-floating, #111214);border-radius:6px;padding:6px;box-shadow:0 8px 24px #0006;animation:ctx-menu-in .1s ease-out}@keyframes ctx-menu-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ctx-menu-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:4px;font-size:13px;color:var(--text-normal, #dbdee1);cursor:pointer;border:none;background:none;width:100%;text-align:left}.ctx-menu-item:hover{background:var(--brand-primary, #5865f2);color:#fff}.ctx-menu-item.danger{color:#f23f43}.ctx-menu-item.danger:hover{background:#f23f43;color:#fff}.ctx-menu-sep{height:1px;background:var(--border-color, #1e1f22);margin:4px 6px}.thread-panel{width:320px;background:var(--bg-secondary, #2b2d31);border-left:1px solid var(--border-color, #1e1f22);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.thread-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-color, #1e1f22)}.thread-panel-header h3{margin:0;font-size:15px;font-weight:600}.thread-panel-list{flex:1;overflow-y:auto;padding:8px}.thread-card{padding:10px 12px;border-radius:6px;background:var(--bg-tertiary, #1e1f22);margin-bottom:6px;cursor:pointer;transition:background .15s}.thread-card:hover{background:var(--bg-modifier-hover, #36373d)}.thread-card-name{font-size:14px;font-weight:600;color:var(--text-normal, #dbdee1);margin-bottom:4px}.thread-card-meta{font-size:12px;color:var(--text-muted, #949ba4);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.thread-badge{font-size:10px;padding:1px 6px;border-radius:10px;background:var(--bg-modifier-hover, #36373d);color:var(--text-muted, #949ba4)}.thread-badge.pinned{background:#5865f2;color:#fff}.thread-badge.archived{background:#f0b132;color:#1e1f22}.thread-panel-create{padding:12px;border-top:1px solid var(--border-color, #1e1f22);display:flex;flex-direction:column;gap:8px}.thread-panel-create input{width:100%}.thread-create-tags{display:flex;flex-wrap:wrap;gap:4px}.thread-tag-chip{font-size:11px;padding:2px 8px;border-radius:10px;border:1px solid var(--border-color, #1e1f22);background:var(--bg-tertiary, #1e1f22);color:var(--text-muted, #949ba4);cursor:pointer}.thread-tag-chip.selected{background:var(--brand-primary, #5865f2);color:#fff;border-color:var(--brand-primary, #5865f2)}.thread-panel-empty{text-align:center;color:var(--text-muted, #949ba4);padding:32px 16px;font-size:13px}.msg-thread-indicator{display:flex;align-items:center;gap:6px;margin-top:4px;padding:4px 8px;background:transparent;border:none;border-radius:4px;color:var(--brand-primary, #5865f2);font-size:12px;cursor:pointer;transition:background .15s}.msg-thread-indicator:hover{background:var(--bg-modifier-hover, rgba(79, 84, 92, .16))}.msg-thread-name{font-weight:600;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-thread-count{color:var(--text-muted, #949ba4);font-weight:400}.msg-thread-arrow{font-size:16px;font-weight:700;margin-left:auto}.thread-side-chat{width:380px;min-width:320px;max-width:480px;background:var(--bg-secondary, #2b2d31);border-left:1px solid var(--border-color, #1e1f22);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;height:100%}.thread-side-chat-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border-color, #1e1f22);min-height:44px}.thread-side-chat-title{display:flex;align-items:center;gap:6px;font-weight:600;font-size:14px;color:var(--text-primary, #f2f3f5);overflow:hidden}.thread-side-chat-title span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-side-chat-icon{flex-shrink:0}.thread-side-chat-actions{display:flex;gap:4px;flex-shrink:0}.thread-side-chat-btn{background:transparent;border:none;color:var(--text-muted, #949ba4);font-size:16px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.thread-side-chat-btn:hover{background:var(--bg-modifier-hover, rgba(79, 84, 92, .16));color:var(--text-primary, #f2f3f5)}.thread-side-chat-messages{flex:1;overflow-y:auto;min-height:0}.thread-side-chat-input{border-top:1px solid var(--border-color, #1e1f22)}.pinned-panel{width:320px;background:var(--bg-secondary, #2b2d31);border-left:1px solid var(--border-color, #1e1f22);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.pinned-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-color, #1e1f22)}.pinned-panel-header h3{margin:0;font-size:15px;font-weight:600}.pinned-panel-list{flex:1;overflow-y:auto;padding:8px}.pinned-card{padding:10px 12px;border-radius:6px;background:var(--bg-tertiary, #1e1f22);margin-bottom:6px}.pinned-card-content{font-size:13px;color:var(--text-normal, #dbdee1);margin-bottom:6px;word-break:break-word}.pinned-card-meta{font-size:11px;color:var(--text-muted, #949ba4)}.pinned-card-actions{display:flex;gap:6px;margin-top:6px}.pinned-card-actions button{font-size:11px;padding:2px 8px;border-radius:4px;border:none;cursor:pointer;background:var(--bg-modifier-hover, #36373d);color:var(--text-muted, #949ba4);transition:background .15s,color .15s}.pinned-card-actions button:hover{background:var(--brand-primary, #5865f2);color:#fff}.pinned-panel-empty{text-align:center;color:var(--text-muted, #949ba4);padding:32px 16px;font-size:13px}.forum-channel{flex:1;display:flex;flex-direction:column;overflow:hidden}.forum-header{padding:16px;border-bottom:1px solid var(--border-color, #1e1f22)}.forum-header h2{margin:0 0 12px;font-size:18px}.forum-tag-bar{display:flex;flex-wrap:wrap;gap:6px}.forum-tag-btn{font-size:12px;padding:4px 12px;border-radius:14px;border:1px solid var(--border-color, #1e1f22);background:var(--bg-tertiary, #1e1f22);color:var(--text-muted, #949ba4);cursor:pointer;transition:all .15s}.forum-tag-btn:hover{background:var(--bg-modifier-hover, #36373d);color:var(--text-normal, #dbdee1)}.forum-tag-btn.active{background:var(--brand-primary, #5865f2);color:#fff;border-color:var(--brand-primary, #5865f2)}.forum-post-list{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:8px}.forum-post-card{padding:14px 16px;border-radius:8px;background:var(--bg-secondary, #2b2d31);border:1px solid var(--border-color, #1e1f22);cursor:pointer;transition:background .15s,border-color .15s}.forum-post-card:hover{background:var(--bg-modifier-hover, #36373d);border-color:var(--bg-modifier-hover, #36373d)}.forum-post-title{font-size:15px;font-weight:600;color:var(--text-normal, #dbdee1);margin-bottom:6px}.forum-post-meta{font-size:12px;color:var(--text-muted, #949ba4);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.forum-post-tags{display:flex;gap:4px;margin-top:6px}.forum-post-tag{font-size:10px;padding:2px 8px;border-radius:10px;background:var(--bg-tertiary, #1e1f22);color:var(--text-muted, #949ba4)}.forum-create-form{padding:16px;border-top:1px solid var(--border-color, #1e1f22);display:flex;flex-direction:column;gap:8px;background:var(--bg-secondary, #2b2d31)}.forum-create-form input,.forum-create-form textarea{width:100%}.forum-badge{font-size:10px;padding:1px 6px;border-radius:10px}.forum-badge.pinned{background:#5865f2;color:#fff}.forum-badge.locked{background:#f0b132;color:#1e1f22}.forum-empty{text-align:center;color:var(--text-muted, #949ba4);padding:48px 16px;font-size:14px}.notification-settings-modal{max-width:480px}.notification-settings-target{color:var(--text-muted, #949ba4);font-size:13px;margin:-4px 0 16px}.notification-section{margin-bottom:20px}.notification-section-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #949ba4);margin-bottom:8px}.notification-level-options{display:flex;gap:8px}.notification-level-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border-radius:8px;border:2px solid var(--border-color, #1e1f22);background:var(--bg-tertiary, #1e1f22);color:var(--text-muted, #949ba4);cursor:pointer;transition:all .15s;font-size:13px}.notification-level-btn:hover{border-color:var(--text-muted, #949ba4);color:var(--text-normal, #dbdee1)}.notification-level-btn.active{border-color:var(--brand-primary, #5865f2);background:#5865f21a;color:var(--brand-primary, #5865f2)}.notification-level-icon{font-size:20px}.notification-toggle{display:flex;align-items:center;justify-content:space-between;padding:8px 0;cursor:pointer;color:var(--text-normal, #dbdee1);font-size:14px}.notification-loading{text-align:center;color:var(--text-muted, #949ba4);padding:24px}.toggle-switch{width:40px;height:22px;border-radius:11px;background:var(--bg-tertiary, #1e1f22);position:relative;cursor:pointer;transition:background .25s;flex-shrink:0}.toggle-switch.on{background:var(--brand-primary, #5865f2)}.toggle-knob{width:18px;height:18px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:transform .25s;box-shadow:0 1px 3px #0000004d}.toggle-switch.on .toggle-knob{transform:translate(18px)}.server-profile-modal{max-width:520px}.server-profile-subtitle{color:var(--text-muted, #949ba4);font-size:13px;margin:-4px 0 16px}.server-profile-preview{border-radius:8px;overflow:hidden;margin-bottom:16px;position:relative;padding-bottom:48px;min-height:80px}.server-profile-preview-banner{width:100%;height:80px;object-fit:cover;display:block}.server-profile-preview-avatar{width:56px;height:56px;border-radius:50%;overflow:hidden;position:absolute;bottom:8px;left:16px;border:3px solid var(--bg-primary, #313338);background:var(--bg-tertiary, #1e1f22)}.server-profile-preview-avatar img{width:100%;height:100%;object-fit:cover}.server-profile-preview-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff}.server-profile-preview-name{position:absolute;bottom:14px;left:82px;font-size:16px;font-weight:700;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}.color-input-row{display:flex;align-items:center;gap:8px}.color-input-row input[type=color]{width:36px;height:36px;padding:2px;border:none;border-radius:6px;cursor:pointer;background:none}.color-text-input{width:100px;font-family:monospace}.loading-text{text-align:center;color:var(--text-muted, #949ba4);padding:24px}.reminders-panel{width:320px;background:var(--bg-secondary, #2b2d31);border-left:1px solid var(--border-color, #1e1f22);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.reminders-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-color, #1e1f22)}.reminders-panel-header h3{margin:0;font-size:15px;font-weight:600}.reminders-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #949ba4);padding:12px 12px 4px}.reminders-loading,.reminders-empty{text-align:center;color:var(--text-muted, #949ba4);padding:32px 16px;font-size:13px}.reminder-card{display:flex;align-items:center;gap:8px;padding:10px 12px;margin:0 8px 4px;border-radius:6px;background:var(--bg-tertiary, #1e1f22)}.reminder-card.fired{opacity:.5}.reminder-card-content{flex:1;min-width:0}.reminder-card-text{font-size:13px;color:var(--text-normal, #dbdee1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reminder-card-time{font-size:11px;color:var(--text-muted, #949ba4);margin-top:2px}.reminder-card-delete{background:none;border:none;color:var(--text-muted, #949ba4);cursor:pointer;padding:4px;border-radius:4px;flex-shrink:0}.reminder-card-delete:hover{color:#f23f43;background:#f23f431a}.popover-banner{width:100%;height:60px;overflow:hidden;border-radius:8px 8px 0 0}.popover-banner img{width:100%;height:100%;object-fit:cover}.popover-banner-solid{width:100%;height:60px;border-radius:8px 8px 0 0}.popover-avatar-section{display:flex;align-items:flex-end;padding:0 12px;margin-top:-24px;margin-bottom:8px}.popover-avatar-wrap{position:relative}.popover-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;border:3px solid var(--bg-floating, #111214);background:var(--bg-tertiary, #1e1f22)}.popover-avatar-placeholder{width:56px;height:56px;border-radius:50%;border:3px solid var(--bg-floating, #111214);background:var(--brand-primary, #5865f2);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff}.popover-status-dot{width:14px;height:14px;border-radius:50%;border:3px solid var(--bg-floating, #111214);position:absolute;bottom:0;right:-2px}.popover-names{margin-left:10px;min-width:0}.popover-display-name{font-size:16px;font-weight:700;color:var(--text-normal, #dbdee1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popover-username{font-size:12px;color:var(--text-muted, #949ba4)}.popover-tabs{display:flex;border-bottom:1px solid var(--border-color, #1e1f22);padding:0 12px}.popover-tab{padding:8px 12px;font-size:12px;font-weight:600;cursor:pointer;color:var(--text-muted, #949ba4);border-bottom:2px solid transparent;transition:color .15s,border-color .15s;background:none;border-top:none;border-left:none;border-right:none}.popover-tab:hover{color:var(--text-normal, #dbdee1)}.popover-tab.active{color:var(--brand-primary, #5865f2);border-bottom-color:var(--brand-primary, #5865f2)}.popover-tab-content{padding:10px 12px;max-height:200px;overflow-y:auto}.popover-avatar-wrap{display:inline-block;margin:-24px 0 0 12px}.popover-avatar-wrap .popover-avatar{display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#fff}.popover-body{padding:8px 14px 14px}.popover-name-row{display:flex;align-items:baseline;gap:8px;min-width:0}.popover-name-row .popover-username{font-size:16px;font-weight:700;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popover-status-text{font-size:11px;font-weight:600;color:var(--text-muted);flex-shrink:0}.popover-tag{font-size:12px;color:var(--text-muted);margin-bottom:4px}.popover-custom-status{font-size:13px;color:var(--text-secondary);margin:4px 0}.popover-section{margin-top:10px}.popover-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:4px}.popover-bio,.popover-member-since{font-size:13px;color:var(--text-secondary);line-height:1.4;white-space:pre-wrap}.popover-note{font-size:12px;color:var(--text-muted);cursor:text;padding:4px 0}.popover-note-input{width:100%;min-height:48px;resize:vertical;border-radius:6px;border:1px solid var(--border-subtle);background:var(--bg-tertiary);color:var(--text-primary);font-size:12px;padding:6px 8px}.popover-mutual-list{display:flex;flex-direction:column;gap:4px}.popover-mutual-item{display:flex;align-items:center;gap:8px}.popover-mutual-avatar{width:24px;height:24px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}.popover-mutual-name{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popover-empty{font-size:12px;color:var(--text-muted)}.status-online{background:var(--status-online, #43b581)}.status-idle{background:var(--status-idle, #faa61a)}.status-dnd{background:var(--status-dnd, #f04747)}.status-offline{background:var(--text-muted, #72767d)}.popover-activity{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary, #1e1f22);border-radius:6px;margin-bottom:8px}.popover-activity-icon{font-size:18px;flex-shrink:0}.popover-activity-info{min-width:0}.popover-activity-type{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #949ba4)}.popover-activity-name{font-size:13px;color:var(--text-normal, #dbdee1);font-weight:600}.popover-activity-details{font-size:12px;color:var(--text-muted, #949ba4)}.popover-connection-item{display:flex;align-items:center;gap:8px;padding:6px 0}.popover-connection-platform{font-size:12px;font-weight:600;color:var(--text-muted, #949ba4);text-transform:capitalize;min-width:60px}.popover-connection-name{font-size:13px;color:var(--text-normal, #dbdee1)}.popover-connection-verified{font-size:11px;color:#23a55a}.popover-mutual-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:var(--text-normal, #dbdee1)}.popover-mutual-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;background:var(--bg-tertiary, #1e1f22)}.popover-mutual-icon{width:24px;height:24px;border-radius:8px;object-fit:cover;background:var(--bg-tertiary, #1e1f22)}.popover-note-section{padding:8px 12px 12px;border-top:1px solid var(--border-color, #1e1f22)}.popover-note-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #949ba4);margin-bottom:4px}.popover-note-input{width:100%;resize:none;border:none;background:var(--bg-tertiary, #1e1f22);color:var(--text-normal, #dbdee1);border-radius:4px;padding:6px 8px;font-size:12px;font-family:inherit;min-height:40px}.popover-note-input:focus{outline:none;box-shadow:0 0 0 1px var(--brand-primary, #5865f2)}.popover-empty{text-align:center;color:var(--text-muted, #949ba4);padding:16px 0;font-size:12px}.popover-created-at{font-size:11px;color:var(--text-muted, #949ba4);padding:0 12px 8px}.channel-sidebar-item.forum .channel-sidebar-icon{color:var(--brand-primary, #5865f2)}.danger-btn{color:#f23f43!important;border-color:#f23f43!important}.danger-btn:hover:not(:disabled){background:#f23f431a!important}.chat-area{flex:1;overflow:hidden;display:flex;flex-direction:column}.quick-switcher-overlay{position:fixed;inset:0;background:#0009;z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;animation:fade-in .12s ease-out}.quick-switcher{width:560px;max-width:90vw;background:var(--bg-secondary);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-lg, 0 8px 32px rgba(0,0,0,.5));overflow:hidden;animation:fade-in-scale .15s ease-out}.quick-switcher-input-wrap{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border-subtle);color:var(--text-muted)}.quick-switcher-input{flex:1;background:none;border:none;outline:none;font-size:16px;color:var(--text-primary);font-family:inherit}.quick-switcher-input::placeholder{color:var(--text-muted)}.quick-switcher-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm, 4px);display:flex;align-items:center}.quick-switcher-close:hover{color:var(--text-primary);background:var(--bg-hover)}.quick-switcher-results{max-height:340px;overflow-y:auto;padding:6px}.quick-switcher-empty{padding:24px;text-align:center;color:var(--text-muted);font-size:14px}.quick-switcher-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:none;border:none;border-radius:var(--radius-md, 8px);color:var(--text-primary);cursor:pointer;font-size:14px;text-align:left}.quick-switcher-item:hover,.quick-switcher-item.selected{background:var(--bg-active, var(--bg-hover))}.quick-switcher-item-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted)}.quick-switcher-guild-icon{width:28px;height:28px;border-radius:50%;background:var(--brand-primary, #5865f2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.quick-switcher-item-name{flex:1}.quick-switcher-item-guild{font-size:12px;color:var(--text-muted);flex-shrink:0}.quick-switcher-footer{padding:8px 16px;border-top:1px solid var(--border-subtle);font-size:12px;color:var(--text-muted);display:flex;gap:6px;align-items:center}.quick-switcher-footer kbd{background:var(--bg-tertiary, var(--bg-primary));padding:1px 5px;border-radius:3px;font-size:11px;font-family:var(--font-mono);border:1px solid var(--border-subtle)}.poll-embed{background:var(--bg-tertiary, var(--bg-primary));border-radius:var(--radius-md, 8px);padding:14px;margin-top:6px;max-width:400px;border-left:3px solid var(--brand-primary, #5865f2)}.poll-question{font-weight:600;font-size:14px;margin-bottom:10px;color:var(--text-primary)}.poll-option{position:relative;margin-bottom:6px;cursor:pointer;border-radius:var(--radius-sm, 4px);overflow:hidden;border:1px solid var(--border-subtle);transition:border-color .15s}.poll-option:hover,.poll-option.voted{border-color:var(--brand-primary, #5865f2)}.poll-option-bar{position:absolute;inset:0;background:var(--brand-primary, #5865f2);opacity:.15;transform-origin:left;transition:transform .3s ease}.poll-option-content{position:relative;display:flex;align-items:center;justify-content:space-between;padding:8px 10px;font-size:13px}.poll-option-label{display:flex;align-items:center;gap:6px}.poll-option-emoji{font-size:16px}.poll-option-votes{font-size:12px;color:var(--text-muted);font-weight:500}.poll-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:12px;color:var(--text-muted)}.poll-close-btn{background:none;border:1px solid var(--border-subtle);color:var(--text-muted);padding:3px 8px;border-radius:var(--radius-sm, 4px);cursor:pointer;font-size:11px}.poll-close-btn:hover{color:var(--text-primary);border-color:var(--text-muted)}.poll-creator-overlay{position:fixed;inset:0;background:#00000080;z-index:9999;display:flex;align-items:center;justify-content:center;animation:fade-in .12s ease-out}.poll-creator{width:440px;max-width:90vw;background:var(--bg-secondary);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-lg, 0 8px 32px rgba(0,0,0,.5));overflow:hidden;animation:fade-in-scale .15s ease-out}.poll-creator-header{padding:16px;border-bottom:1px solid var(--border-subtle);font-weight:600;font-size:16px}.poll-creator-body{padding:16px;display:flex;flex-direction:column;gap:12px}.poll-creator-body input,.poll-creator-body textarea{width:100%;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm, 4px);padding:8px 10px;color:var(--text-primary);font-size:14px;outline:none;font-family:inherit}.poll-creator-body input:focus,.poll-creator-body textarea:focus{border-color:var(--brand-primary, #5865f2)}.poll-option-row{display:flex;gap:6px;align-items:center}.poll-option-row input{flex:1}.poll-remove-option{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;flex-shrink:0}.poll-remove-option:hover{color:#f23f43}.poll-add-option{background:none;border:1px dashed var(--border-subtle);border-radius:var(--radius-sm, 4px);padding:6px;color:var(--text-muted);cursor:pointer;font-size:13px;text-align:center}.poll-add-option:hover{border-color:var(--brand-primary, #5865f2);color:var(--text-primary)}.poll-creator-footer{padding:12px 16px;border-top:1px solid var(--border-subtle);display:flex;justify-content:flex-end;gap:8px}.bookmarks-panel{padding:16px;overflow-y:auto;flex:1}.bookmarks-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:var(--text-muted);gap:8px}.bookmark-card{background:var(--bg-tertiary, var(--bg-primary));border-radius:var(--radius-md, 8px);padding:12px;margin-bottom:8px;border:1px solid var(--border-subtle);transition:border-color .15s;cursor:pointer}.bookmark-card:hover{border-color:var(--brand-primary, #5865f2)}.bookmark-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.bookmark-channel{font-size:12px;color:var(--text-muted);display:flex;align-items:center;gap:4px}.bookmark-actions{display:flex;gap:4px}.bookmark-actions button{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;border-radius:var(--radius-sm, 4px)}.bookmark-actions button:hover{color:var(--text-primary);background:var(--bg-hover)}.bookmark-content{font-size:13px;color:var(--text-secondary);line-height:1.4;white-space:pre-wrap;word-break:break-word}.bookmark-note{margin-top:6px;padding:4px 8px;background:var(--bg-primary);border-radius:var(--radius-sm, 4px);font-size:12px;color:var(--text-muted);font-style:italic}.schedule-picker{position:absolute;bottom:100%;right:0;margin-bottom:6px;background:var(--bg-secondary);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-lg, 0 8px 32px rgba(0,0,0,.5));padding:12px;width:260px;z-index:100;animation:fade-in-up .15s ease-out}.schedule-picker-title{font-size:13px;font-weight:600;margin-bottom:10px;color:var(--text-primary)}.schedule-picker label{display:block;font-size:12px;color:var(--text-muted);margin-bottom:4px;margin-top:8px}.schedule-picker input[type=datetime-local]{width:100%;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm, 4px);padding:6px 8px;color:var(--text-primary);font-size:13px;outline:none;font-family:inherit}.schedule-picker input:focus{border-color:var(--brand-primary, #5865f2)}.schedule-picker-actions{margin-top:10px;display:flex;gap:6px;justify-content:flex-end}.events-panel{padding:16px;overflow-y:auto;flex:1}.events-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:var(--text-muted);gap:8px}.event-card{background:var(--bg-tertiary, var(--bg-primary));border-radius:var(--radius-md, 8px);overflow:hidden;margin-bottom:12px;border:1px solid var(--border-subtle);transition:border-color .15s}.event-card:hover{border-color:var(--brand-primary, #5865f2)}.event-card-image{width:100%;height:120px;object-fit:cover;display:block}.event-card-body{padding:12px}.event-card-date{font-size:12px;color:var(--brand-primary, #5865f2);font-weight:600;text-transform:uppercase;margin-bottom:4px}.event-card-name{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.event-card-desc{font-size:13px;color:var(--text-muted);line-height:1.4;margin-bottom:8px}.event-card-meta{display:flex;gap:12px;font-size:12px;color:var(--text-muted);margin-bottom:8px}.event-rsvp-actions{display:flex;gap:6px}.event-rsvp-btn{padding:5px 12px;border-radius:var(--radius-sm, 4px);border:1px solid var(--border-subtle);background:none;color:var(--text-secondary);cursor:pointer;font-size:12px;transition:all .15s}.event-rsvp-btn:hover{border-color:var(--brand-primary, #5865f2);color:var(--text-primary)}.event-rsvp-btn.active{background:var(--brand-primary, #5865f2);color:#fff;border-color:var(--brand-primary, #5865f2)}.msg-code-block{position:relative;margin:6px 0;background:var(--bg-primary);border-radius:var(--radius-md, 8px);overflow:hidden;border:1px solid var(--border-subtle)}.msg-code-header{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#00000026;font-size:12px;color:var(--text-muted)}.msg-code-lang{font-family:var(--font-mono, monospace);font-weight:500}.msg-code-copy{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 6px;border-radius:var(--radius-sm, 4px);font-size:11px;display:flex;align-items:center;gap:4px}.msg-code-copy:hover{color:var(--text-primary);background:var(--bg-hover)}.msg-code-copy.copied{color:#43b581}.msg-code-content{padding:12px;overflow-x:auto;font-family:var(--font-mono, "JetBrains Mono", "Fira Code", monospace);font-size:13px;line-height:1.5;color:var(--text-primary);tab-size:4;white-space:pre}.tok-keyword{color:#c678dd}.tok-string{color:#98c379}.tok-number{color:#d19a66}.tok-comment{color:#5c6370;font-style:italic}.tok-function{color:#61afef}.tok-type{color:#e5c07b}.tok-operator{color:#56b6c2}.tok-punctuation{color:#abb2bf}.tok-variable{color:#e06c75}.tok-constant,.tok-attr{color:#d19a66}.tok-tag{color:#e06c75}.tok-regex{color:#56b6c2}.msg-inline-code{background:var(--bg-primary);padding:1px 5px;border-radius:3px;font-family:var(--font-mono, "JetBrains Mono", "Fira Code", monospace);font-size:.9em;border:1px solid var(--border-subtle)}.automod-panel{padding:16px;overflow-y:auto;flex:1}.automod-rule-card{background:var(--bg-tertiary, var(--bg-primary));border-radius:var(--radius-md, 8px);padding:12px 16px;margin-bottom:8px;border:1px solid var(--border-subtle);display:flex;align-items:center;gap:12px}.automod-rule-info{flex:1}.automod-rule-name{font-weight:600;font-size:14px;color:var(--text-primary)}.automod-rule-type{font-size:12px;color:var(--text-muted);margin-top:2px}.automod-rule-toggle{width:42px;height:24px;border-radius:12px;background:var(--bg-primary);border:none;cursor:pointer;position:relative;transition:background .2s;flex-shrink:0}.automod-rule-toggle.on{background:#43b581}.automod-rule-toggle:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:3px;left:3px;transition:transform .2s}.automod-rule-toggle.on:after{transform:translate(18px)}.soundboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;padding:12px}.soundboard-clip{background:var(--bg-tertiary, var(--bg-primary));border-radius:var(--radius-md, 8px);padding:12px 8px;text-align:center;cursor:pointer;border:1px solid var(--border-subtle);transition:all .15s}.soundboard-clip:hover{border-color:var(--brand-primary, #5865f2);transform:scale(1.03)}.soundboard-clip:active{transform:scale(.97)}.soundboard-clip-emoji{font-size:24px;margin-bottom:4px}.soundboard-clip-name{font-size:12px;color:var(--text-primary)}.msg-read-receipts{display:flex;align-items:center;gap:-4px;margin-top:2px}.msg-read-receipt-avatar{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--bg-secondary);margin-left:-4px}.msg-read-receipt-avatar:first-child{margin-left:0}.msg-seen-indicator{font-size:11px;color:var(--text-muted);margin-left:4px}.slowmode-indicator{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-muted);padding:4px 8px}.slowmode-cooldown{color:#faa61a;font-weight:600}.twofa-setup{max-width:400px}.twofa-qr{display:flex;justify-content:center;margin:16px 0}.twofa-qr img{border-radius:var(--radius-md, 8px);border:2px solid var(--border-subtle)}.twofa-secret{background:var(--bg-primary);padding:10px;border-radius:var(--radius-sm, 4px);font-family:var(--font-mono, monospace);font-size:14px;letter-spacing:2px;text-align:center;color:var(--text-primary);margin:12px 0;user-select:all}.twofa-verify-input{display:flex;gap:8px;margin-top:12px}.twofa-verify-input input{flex:1;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm, 4px);padding:8px 12px;color:var(--text-primary);font-size:18px;letter-spacing:8px;text-align:center;outline:none;font-family:var(--font-mono, monospace)}.twofa-verify-input input:focus{border-color:var(--brand-primary, #5865f2)}.status-expiry-picker{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.status-expiry-btn{padding:4px 10px;border-radius:var(--radius-sm, 4px);border:1px solid var(--border-subtle);background:none;color:var(--text-secondary);cursor:pointer;font-size:12px;transition:all .15s}.status-expiry-btn:hover{border-color:var(--brand-primary, #5865f2);color:var(--text-primary)}.status-expiry-btn.active{background:var(--brand-primary, #5865f2);color:#fff;border-color:var(--brand-primary, #5865f2)}.scheduled-messages-panel{padding:16px;overflow-y:auto;flex:1}.scheduled-msg-card{background:var(--bg-tertiary, var(--bg-primary));border-radius:var(--radius-md, 8px);padding:12px;margin-bottom:8px;border:1px solid var(--border-subtle);border-left:3px solid #faa61a}.scheduled-msg-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.scheduled-msg-time{font-size:12px;color:#faa61a;font-weight:600}.scheduled-msg-content{font-size:13px;color:var(--text-secondary);line-height:1.4;white-space:pre-wrap}.channel-actions-group{display:flex;align-items:center;gap:4px}.channel-actions-group.align-right{margin-left:auto}.channel-actions-group.align-left{margin-right:auto}.mp-info{display:flex;flex-direction:column;min-width:0;justify-content:center}.mp-custom-status{font-size:11px;color:var(--text-secondary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.home-dm-custom-status{font-style:italic;opacity:.85}.dialog-message{color:var(--text-secondary);font-size:14px;line-height:1.5;margin-bottom:16px}.dm-e2ee-btn{background:transparent;border:none;cursor:pointer;font-size:14px;padding:2px 6px;border-radius:6px;color:var(--text-secondary)}.dm-e2ee-btn:hover{background:var(--bg-modifier-hover, rgba(255, 255, 255, .06))}.dm-e2ee-warn{color:#f0b232;font-size:12px;font-weight:600}.dm-e2ee-trust{background:var(--brand, #5865f2);color:#fff;border:none;border-radius:6px;padding:6px 10px;font-size:12px;cursor:pointer}.msg-e2ee-status{color:var(--text-secondary);font-style:italic;opacity:.8}.msg-e2ee-badge{font-size:11px;opacity:.7}.update-gate-overlay{position:fixed;inset:0;z-index:99999;background:#000000d9;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}.update-gate-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:32px;max-width:420px;text-align:center;box-shadow:0 12px 48px #00000080}.update-gate-card h2{margin:0 0 12px;color:var(--text-primary)}.update-gate-card p{color:var(--text-secondary);margin-bottom:20px;line-height:1.5}.update-banner{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:12px;padding:10px 16px;border-radius:var(--radius-full, 999px);background:var(--bg-surface, #1e1f22);color:var(--text-primary, #fff);border:1px solid var(--brand-primary, #5865f2);box-shadow:0 8px 28px #00000073;font-size:14px;max-width:min(560px,92vw)}.update-banner.error{border-color:var(--danger, #f23f43)}.update-banner-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.update-banner-btn{flex:none;padding:6px 14px;border-radius:var(--radius-full, 999px);border:none;background:var(--brand-primary, #5865f2);color:#fff;font-weight:600;cursor:pointer}.update-banner-btn:hover{filter:brightness(1.08)}.update-banner-btn:disabled{opacity:.6;cursor:default}.update-banner-dismiss{flex:none;padding:6px 10px;border-radius:var(--radius-full, 999px);border:none;background:transparent;color:var(--text-muted, #b5bac1);cursor:pointer}.update-banner-dismiss:hover{color:var(--text-primary, #fff)}.mfa-gate-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg-base, #0b0c10);overflow-y:auto}.mfa-gate-card{width:100%;max-width:420px;background:var(--bg-surface, #1e1f22);border:1px solid var(--border, #2b2d31);border-radius:14px;padding:28px;box-shadow:0 12px 40px #00000080;text-align:center}.mfa-gate-title{margin:0 0 6px;font-size:20px;font-weight:700;color:var(--text-primary, #fff)}.mfa-gate-sub{margin:0 0 14px;font-size:13px;color:var(--text-secondary, #b5bac1);line-height:1.5}.mfa-gate-error{color:var(--status-dnd, #f23f43);font-size:13px;margin:0 0 12px}.mfa-gate-card .twofa-qr{display:flex;justify-content:center;margin:8px 0}.mnav-collapse,.mobile-nav-backdrop{display:none}@media(max-width:1024px){.member-panel{display:none!important}}@media(max-width:768px){html,body{overflow-x:hidden}.dm-call-dock{left:0;right:0}.nav-brand{cursor:pointer}.mnav-collapse{display:inline-flex;align-items:center;justify-content:center;width:34px;height:30px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background .12s ease,color .12s ease}.mnav-collapse:hover{background:var(--bg-surface);color:var(--text-primary)}.channel-sidebar-header .mnav-collapse{margin-left:auto}.home-sidebar>.mnav-collapse{align-self:flex-end;margin:8px 8px 0}.channel-sidebar,.home-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:55;width:min(82vw,300px);transform:translate(-110%);transition:transform .22s ease;will-change:transform;box-shadow:6px 0 24px #00000073}body.mnav-open .channel-sidebar,body.mnav-open .home-sidebar{transform:translate(0)}.layout-server-left .server-bar.vertical{position:fixed;top:0;bottom:0;left:0;z-index:56;transform:translate(-110%);transition:transform .22s ease}body.mnav-open .layout-server-left .server-bar.vertical{transform:translate(0)}.layout-server-left .channel-sidebar,.layout-server-left .home-sidebar{left:62px;width:min(78vw,280px)}body.mnav-open .mobile-nav-backdrop{display:block;position:fixed;inset:0;z-index:50;background:#00000080}.app-body,.main-content,.home-page,.home-content,.chat-area{width:100%;min-width:0}.modal-overlay{padding:0}.modal{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0}.settings-modal-overlay .settings-page.settings-modal{width:100vw;height:100vh;max-width:100%;max-height:100%;border-radius:0}.settings-page{flex-direction:column}.settings-sidebar{width:100%;flex-direction:row;overflow-x:auto;overflow-y:hidden;border-right:none;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.messages-area{padding:4px 0}}@media(max-width:420px){.channel-sidebar,.home-sidebar,.layout-server-left .channel-sidebar,.layout-server-left .home-sidebar{width:84vw}.top-nav{padding-right:8px;gap:6px}}.skeleton{position:relative;overflow:hidden;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 50%,transparent 100%);animation:skeleton-sweep 1.3s ease-in-out infinite}@keyframes skeleton-sweep{to{transform:translate(100%)}}.msg-skeleton{padding:14px 16px;display:flex;flex-direction:column;gap:18px}.msg-skeleton-row{display:flex;gap:16px;align-items:flex-start}.msg-skeleton-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0}.msg-skeleton-lines{flex:1;display:flex;flex-direction:column;gap:8px;padding-top:3px}.msg-skeleton-line{height:11px;border-radius:5px}@keyframes msg-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.message.msg-animate-in{animation:msg-in .16s ease-out}.toast-host{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:200;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;min-width:200px;max-width:min(90vw,420px);padding:10px 14px;border-radius:10px;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:0 8px 28px #00000073;font-size:14px;cursor:pointer;animation:toast-in .24s var(--ease-spring) both}.toast-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;flex-shrink:0;color:#fff}.toast-success .toast-icon{background:#2ecc71}.toast-error .toast-icon{background:#e74c3c}.toast-info .toast-icon{background:var(--brand-primary)}.toast-msg{line-height:1.35}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.message.msg-animate-in,.toast,.dm-call-participant.ringing:after,.dm-call-participant.joining:after,.incoming-call-avatar.ringing:after,.incoming-call-card.ringing:before,.skeleton:after,.dm-call-participant.ringing,.dm-call-participant-wrapper.leaving,.dm-call-sparkles span{animation:none}}.msg-spoiler{background:#ffffff1f;border-radius:4px;padding:0 3px;cursor:pointer;transition:color .1s ease,background .1s ease}.msg-spoiler:not(.revealed){color:transparent;background:var(--text-primary);border-radius:4px;user-select:none}.msg-spoiler:not(.revealed) *{visibility:hidden}.msg-spoiler:not(.revealed):hover{background:var(--text-secondary)}.msg-spoiler.revealed{background:#ffffff14;cursor:default}.msg-content strong{font-weight:700}.msg-content em{font-style:italic}.slash-ac-heading{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:6px 10px 4px}.slash-autocomplete .mention-autocomplete-item{flex-direction:column;align-items:flex-start;gap:2px}.slash-ac-name{font-weight:700;font-size:14px;color:var(--text-primary)}.slash-ac-desc{font-size:12px;color:var(--text-muted)}.msg-quick-react{font-size:15px}.msg-quick-react:hover{background:transparent;transform:scale(1.25)}@keyframes react-pop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.msg-reaction-chip{animation:react-pop .18s ease-out}.jump-present-anchor{position:sticky;bottom:12px;height:0;display:flex;justify-content:flex-end;padding-right:20px;pointer-events:none;z-index:5}.jump-to-present{pointer-events:auto;transform:translateY(-100%);display:inline-flex;align-items:center;gap:6px;padding:7px 8px 7px 14px;border-radius:20px;background:var(--brand-primary);color:#fff;font-size:13px;font-weight:600;border:none;cursor:pointer;box-shadow:0 4px 16px #0006;animation:toast-in .2s ease-out}.jump-to-present:hover{filter:brightness(1.08)}@media(prefers-reduced-motion:reduce){.msg-reaction-chip,.jump-to-present{animation:none}}.channel-voice-group{display:flex;flex-direction:column}.channel-voice-group .channel-sidebar-item.voice{width:calc(100% - 16px)}.channel-voice-count{margin-left:auto;font-size:11px;font-weight:600;color:var(--text-muted);background:var(--bg-tertiary);border-radius:10px;padding:1px 7px}.channel-voice-occupants{display:flex;flex-direction:column;gap:1px;margin:0 8px 4px;padding-left:22px}.voice-occupant{display:flex;align-items:center;gap:7px;padding:3px 8px;border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);transition:background .12s ease,color .12s ease}.voice-occupant:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.voice-occupant-avatar{width:20px;height:20px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff}.voice-occupant-name{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-occupant-badge{display:inline-flex;align-items:center;margin-left:auto;color:var(--text-muted);flex-shrink:0}:root{--titlebar-h: 32px}body.has-titlebar #root{padding-top:var(--titlebar-h)}.titlebar{position:fixed;top:0;left:0;right:0;height:var(--titlebar-h);z-index:100000;display:flex;align-items:center;justify-content:space-between;background:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle);user-select:none;-webkit-user-select:none}.titlebar-brand{display:flex;align-items:center;gap:6px;padding:0 12px;height:100%;font-size:12px;font-weight:700;letter-spacing:-.02em;color:var(--text-muted)}.titlebar-brand svg{color:var(--brand-primary)}.titlebar-controls{display:flex;align-items:stretch;height:100%}.titlebar-btn{width:44px;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);background:transparent;border:none;border-radius:0;cursor:default;transition:background .1s ease,color .1s ease}.titlebar-btn:hover{background:var(--bg-modifier-hover);color:var(--text-primary)}.titlebar-btn.close:hover{background:#e81123;color:#fff}.win-resize{position:fixed;z-index:100000}.win-resize-n{top:0;left:8px;right:8px;height:4px;cursor:n-resize}.win-resize-s{bottom:0;left:8px;right:8px;height:4px;cursor:s-resize}.win-resize-e{top:8px;bottom:8px;right:0;width:4px;cursor:e-resize}.win-resize-w{top:8px;bottom:8px;left:0;width:4px;cursor:w-resize}.win-resize-ne{top:0;right:0;width:10px;height:10px;cursor:ne-resize}.win-resize-nw{top:0;left:0;width:10px;height:10px;cursor:nw-resize}.win-resize-se{bottom:0;right:0;width:10px;height:10px;cursor:se-resize}.win-resize-sw{bottom:0;left:0;width:10px;height:10px;cursor:sw-resize}.e2ee-sync-banner{position:fixed;top:calc(var(--titlebar-h, 0px) + 8px);left:50%;transform:translate(-50%);z-index:210;display:flex;align-items:center;gap:10px;max-width:min(94vw,720px);padding:10px 14px;border-radius:10px;background:var(--bg-surface);border:1px solid var(--brand-primary);box-shadow:0 8px 28px #00000073;font-size:13px}.e2ee-sync-text{color:var(--text-primary);line-height:1.35}.e2ee-sync-input{width:170px;padding:6px 10px;border-radius:6px;border:1px solid var(--border-subtle);background:var(--bg-tertiary);color:var(--text-primary);font-size:13px;flex-shrink:0}.user-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.server-bar-icon.user-avatar,.nav-user-avatar,.profile-popover-avatar,.md-avatar{overflow:hidden}.md-avatar{overflow:visible}.md-avatar .user-avatar-img{border-radius:50%}.member-panel-item.clickable,.member-drawer-item.clickable{cursor:pointer}.member-panel-item.clickable:hover{background:var(--bg-modifier-hover)}.report-modal{max-width:480px}.report-hint{font-size:12.5px;color:var(--text-muted);line-height:1.45}.report-preview{display:flex;flex-direction:column;gap:2px;background:var(--bg-tertiary);border-left:3px solid var(--brand-primary);border-radius:6px;padding:8px 10px;margin:8px 0;font-size:13px}.report-preview-author{font-weight:700;color:var(--text-primary)}.report-preview-content{color:var(--text-secondary);word-break:break-word}.report-category,.report-note{width:100%;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:6px;padding:8px 10px;font-size:13px}.report-note{min-height:70px;resize:vertical}.ctx-menu-item.danger{color:var(--status-dnd, #f04747)}.mod-portal{height:100%;display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary)}.mod-login-wrap{flex:1;display:flex;align-items:center;justify-content:center}.mod-login-card{width:360px;display:flex;flex-direction:column;gap:10px;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:12px;padding:28px}.mod-login-card h1{font-size:18px;margin:0;color:var(--brand-primary)}.mod-login-sub,.mod-enroll-text{font-size:12.5px;color:var(--text-muted);line-height:1.45;margin:0}.mod-login-card input{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:6px;padding:9px 11px;font-size:14px}.mod-enroll-uri{font-size:11px;word-break:break-all;background:var(--bg-tertiary);padding:8px;border-radius:6px;color:var(--text-secondary)}.mod-header{display:flex;align-items:center;gap:16px;padding:10px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle)}.mod-brand{font-weight:800;color:var(--brand-primary)}.mod-tabs{display:flex;gap:4px}.mod-tabs button,.mod-filter button{padding:6px 12px;border-radius:6px;color:var(--text-muted);font-size:13px}.mod-tabs button.active,.mod-filter button.active{background:var(--bg-surface);color:var(--text-primary)}.mod-me{margin-left:auto;font-size:13px;color:var(--text-secondary)}.mod-signout{color:var(--text-muted);font-size:13px}.mod-signout:hover{color:var(--status-dnd)}.mod-notice{padding:8px 16px;background:#2ecc711f;color:var(--text-primary);font-size:13px}.mod-body{flex:1;display:flex;min-height:0}.mod-queue{width:320px;border-right:1px solid var(--border-subtle);overflow-y:auto;display:flex;flex-direction:column}.mod-filter{display:flex;gap:2px;padding:8px;flex-wrap:wrap}.mod-report-row{display:flex;align-items:center;gap:8px;padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-subtle);font-size:12.5px;color:var(--text-secondary)}.mod-report-row.active,.mod-report-row:hover{background:var(--bg-surface)}.mod-badge{font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;background:var(--bg-tertiary);color:var(--text-primary)}.mod-badge.cat-2{background:#f047472e}.mod-badge.cat-3{background:#f0474759}.mod-row-time{margin-left:auto;font-size:11px;color:var(--text-muted)}.mod-detail{flex:1;overflow-y:auto;padding:18px 22px}.mod-detail h2{margin:0 0 4px;font-size:17px}.mod-detail h3{margin:18px 0 8px;font-size:13px;text-transform:uppercase;color:var(--text-muted)}.mod-meta{font-size:13px;color:var(--text-secondary)}.mod-note{margin-top:8px;padding:8px 10px;background:var(--bg-tertiary);border-radius:6px;font-size:13px;color:var(--text-secondary)}.mod-evidence{border:1px solid var(--border-subtle);border-radius:8px;padding:10px 12px;margin-bottom:10px;background:var(--bg-secondary)}.mod-ev-head{display:flex;justify-content:space-between;font-size:12.5px;color:var(--text-muted)}.mod-ev-head strong{color:var(--text-primary)}.mod-ev-content{margin:6px 0;font-size:14px;white-space:pre-wrap;word-break:break-word}.mod-ev-att{font-size:12.5px;color:var(--text-secondary)}.mod-ev-att a{color:var(--brand-primary)}.mod-ev-actions,.mod-resolve{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.mod-ev-actions button,.mod-resolve button{font-size:12px;padding:5px 10px;border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-subtle)}.mod-ev-actions button:hover,.mod-resolve button:hover{color:var(--text-primary);background:var(--bg-surface)}.mod-empty{padding:24px;text-align:center;color:var(--text-muted);font-size:13px}.mod-audit{flex:1;overflow-y:auto;padding:12px 16px}.mod-audit-row{display:flex;gap:14px;padding:8px 4px;font-size:12.5px;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary)}.mod-audit-time{color:var(--text-muted);flex-shrink:0}.mod-audit-action{font-weight:700;color:var(--text-primary);flex-shrink:0}.stream-popout-btn{position:absolute;bottom:10px;right:130px;padding:6px 12px;border-radius:6px;background:#0009;color:#fff;font-size:12px;border:1px solid rgba(255,255,255,.25);cursor:pointer;z-index:4}.stream-popout-btn:hover{background:#000c}.stream-fullscreen-btn{position:absolute;bottom:10px;right:218px;padding:6px 10px;border-radius:6px;background:#0009;color:#fff;font-size:12px;border:1px solid rgba(255,255,255,.25);cursor:pointer;z-index:4}.stream-fullscreen-btn:hover{background:#000c}.dm-call-screen-preview:fullscreen,.voice-screen-preview:fullscreen{display:flex;background:#000}.dm-call-screen-preview:fullscreen .dm-call-screen-video,.voice-screen-preview:fullscreen .voice-screen-video{width:100%;height:100%;max-height:none;object-fit:contain}.dm-call-screen-preview:-webkit-full-screen,.voice-screen-preview:-webkit-full-screen{display:flex;background:#000}.dm-call-screen-preview:-webkit-full-screen .dm-call-screen-video,.voice-screen-preview:-webkit-full-screen .voice-screen-video{width:100%;height:100%;max-height:none;object-fit:contain}.popout-view{position:fixed;inset:0;background:#000;display:flex;align-items:center;justify-content:center}.popout-video{width:100%;height:100%;object-fit:contain}.popout-waiting{position:absolute;color:#aaa;font-size:14px}.popout-error{color:#f87171;max-width:70%;text-align:center}.popout-bar{position:fixed;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:linear-gradient(transparent,#000000bf);opacity:0;transition:opacity .2s ease}.popout-view:hover .popout-bar{opacity:1}.popout-volume{display:flex;align-items:center;gap:8px}.popout-volume-slider{width:110px;accent-color:#fff}.popout-volume-val{color:#fff;font-size:12px;min-width:34px}.popout-title{color:#fff;font-size:13px;font-weight:600}.popout-btn{padding:6px 14px;border-radius:6px;background:#ffffff26;color:#fff;font-size:13px;border:none;cursor:pointer}.popout-btn:hover{background:#ffffff47}.auth-terms{font-size:11.5px;color:var(--text-muted);line-height:1.5;margin:4px 0 10px;text-align:center}.auth-terms a{color:var(--brand-primary)}.danger-zone{border:1px solid rgba(240,71,71,.35);border-radius:8px;padding:16px}.delete-confirm{display:flex;flex-direction:column;gap:10px;max-width:340px}.delete-confirm input{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:6px;padding:9px 11px;font-size:14px}.settings-modal-overlay,.server-settings-overlay,.modal-overlay,.screen-share-picker-overlay{will-change:opacity}.settings-modal-overlay .settings-page.settings-modal,.server-settings-panel,.modal,.screen-share-picker{will-change:transform,opacity}:root.desktop .modal-overlay{backdrop-filter:none;background:#000000d1}:root.desktop .voice-screen-paused-overlay{backdrop-filter:none;background:#0000009e}:root.desktop .auth-card,:root.desktop .lightbox-controls{backdrop-filter:none}:root.desktop .lightbox-controls{background:#000000d9}:root.desktop .settings-modal-overlay,:root.desktop .server-settings-overlay,:root.desktop .modal-overlay,:root.desktop .screen-share-picker-overlay{animation:none}:root.desktop .settings-modal-overlay .settings-page.settings-modal,:root.desktop .server-settings-panel{animation:fade-in .12s ease-out}
