.app{display:grid;grid-template-columns:96px var(--channels-width, 240px) minmax(0,1fr);height:100%;width:100%;max-width:100%;overflow:hidden}body.is-resizing-channels{cursor:col-resize;-webkit-user-select:none;user-select:none}.app.nav-collapsed{grid-template-columns:1fr}.app.nav-collapsed:not(.is-compact) .server-rail,.app.nav-collapsed:not(.is-compact) .channels{display:none}.server-rail{background:var(--bg-dark);display:flex;flex-direction:column;align-items:center;padding:12px 10px 8px;height:100%;width:96px;box-sizing:border-box}.server-rail-top{display:flex;flex-direction:column;align-items:center;flex:1;min-height:0;overflow-y:auto;width:100%}.server-rail-bottom{margin-top:auto;padding-top:8px}.settings-btn{width:48px;height:48px;border:0;border-radius:16px;background:var(--bg-mid);color:var(--muted);display:grid;place-items:center;font-size:0;cursor:pointer}.settings-btn.open,.settings-btn:hover{color:var(--text);background:var(--bg-hover)}.server-rail-brand{margin-bottom:4px}.channels{background:var(--bg-mid);display:flex;flex-direction:column;min-width:0;min-height:0;width:var(--channels-width, 240px);position:relative}.channels-resize-handle{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:4}.channels-resize-handle:hover,body.is-resizing-channels .channels-resize-handle{background:color-mix(in srgb,var(--crimson) 35%,transparent)}.chat-section-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);padding:8px 8px 4px 18px}.chat-section+.chat-section{margin-top:4px}.channel-scroll-wrap{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.channel-scroll{flex:1;min-height:0;overflow:auto}.server-header{height:48px;padding:0 8px 0 16px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:800;box-shadow:0 1px #0000004d}.nav-toggle{width:32px;height:32px;flex-shrink:0;border:0;border-radius:8px;background:transparent;color:var(--muted);display:grid;place-items:center}.nav-toggle:hover{background:var(--bg-hover);color:var(--text)}.nav-toggle svg{width:18px;height:18px}.channel-group{margin:16px 8px 4px;padding:0 8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.channel-row.has-menu .channel{padding-right:32px}.channel-row-main{position:relative;display:flex;align-items:center;min-height:34px;margin:1px 8px;border-radius:8px;transition:background .15s ease}.channel-row-main .channel{flex:1;min-width:0;width:100%;margin:0}.channel-row-main:hover{background:var(--bg-hover)}.channel-row-main:has(.channel.selected){background:color-mix(in srgb,var(--crimson) 16%,transparent)}.channel-row-main:has(.channel.joined:not(.selected)){background:var(--bg-hover)}.channel-row-spacer{display:none}.channel{border:0;background:transparent;color:var(--faint);text-align:left;padding:6px 8px;border-radius:8px;display:flex;align-items:center;gap:6px;font-size:15px;font-weight:600;line-height:1.2;min-height:34px;box-sizing:border-box}.channel:hover,.channel.joined{color:var(--text)}.channel.selected{color:#fff}.channel svg{width:16px;height:16px;flex-shrink:0;opacity:.85}.hash{font-size:14px}.channel-row.is-voice .members{margin:0 8px 6px;padding:0 0 0 30px}.members{list-style:none;margin:0 8px 6px;padding:0 0 0 30px;display:flex;flex-direction:column;gap:1px}.members li{display:flex;align-items:center;gap:8px;padding:2px 8px 2px 0;min-height:32px;border-radius:6px;color:var(--muted);font-size:13px;font-weight:500;line-height:1.2}.members li .avatar-wrap{flex-shrink:0;width:24px;height:24px}.members li .avatar-wrap img,.members li .avatar-wrap .mini-avatar{width:24px;height:24px}.members li .member-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.members li.speaking{background:color-mix(in srgb,var(--crimson) 12%,transparent);outline:2px solid color-mix(in srgb,var(--crimson) 55%,transparent);outline-offset:-2px}.members svg{width:14px;height:14px;margin-left:auto;color:var(--red-hot)}.tiny{margin-left:auto;font-size:10px;font-weight:700;text-transform:uppercase;color:var(--crimson)}.mini-avatar{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;color:#fff;flex-shrink:0}.member-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-panel{margin-top:auto;background:var(--bg-dark);display:flex;align-items:center;gap:8px}.voice-connected{margin:6px 10px 10px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--crimson) 10%,var(--bg-dark));border:1px solid color-mix(in srgb,var(--crimson) 28%,transparent);position:relative;overflow:hidden}.voice-connected.active-stage{border-color:color-mix(in srgb,var(--crimson) 50%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--crimson) 20%,transparent)}.voice-connected-pulse{position:absolute;inset:0 auto 0 0;width:3px;background:var(--crimson);box-shadow:0 0 12px var(--crimson)}.voice-connected-main{width:100%;border:0;background:transparent;text-align:left;padding:0 0 10px 8px}.voice-connected-label{display:block;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--crimson)}.voice-connected-main strong{display:block;margin-top:2px;color:var(--text);font-size:14px}.voice-connected-hint{display:block;margin-top:2px;font-size:11px;color:var(--faint)}.voice-connected-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-left:8px;color:var(--crimson)}.voice-connected-actions svg{width:16px;height:16px;flex-shrink:0}.collapsed-voice-bar{margin-left:auto;display:flex;align-items:center;gap:8px}.collapsed-voice-bar>button{border:0;background:color-mix(in srgb,var(--crimson) 15%,transparent);color:var(--crimson);border-radius:8px;padding:6px 10px;font-size:12px;font-weight:800}.collapsed-voice-bar .ctrl{width:32px;height:32px}.live-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 12px 0;padding:10px 12px;border-radius:10px;background:#ed42451f;border:1px solid rgba(237,66,69,.35);flex-shrink:0;z-index:12}.live-banner-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.live-banner-copy strong{font-size:13px}.live-banner-copy>span{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.live-banner-copy svg{width:14px;height:14px}.live-viewers{display:flex;gap:4px;margin-top:4px}.live-banner-actions{display:flex;gap:8px;flex-shrink:0}.live-banner-actions button{height:32px;border:0;border-radius:8px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;background:var(--bg-hover);color:var(--text);font-size:12px;font-weight:700}.live-banner-actions button.danger{background:var(--red);color:#fff}.live-banner-actions svg{width:14px;height:14px}.live-banner-close{width:32px;padding:0!important;justify-content:center;background:transparent!important;color:var(--muted)!important}.live-banner-close:hover{color:var(--text)!important;background:var(--bg-hover)!important}.stage.is-focus .live-banner,.stage:fullscreen .live-banner,.stage:-webkit-full-screen .live-banner{position:absolute;top:12px;left:50%;right:auto;transform:translate(-50%);width:min(560px,calc(100% - 24px));margin:0}.viewers-pill{display:inline-flex;align-items:center;gap:4px}.viewers-pill svg{width:12px;height:12px}.user-chip strong{display:block;font-size:13px}.user-chip small{color:var(--crimson);font-weight:600}.user-actions{display:flex;gap:2px}.user-actions button:hover{background:var(--bg-hover);color:var(--text)}.user-actions button.danger{color:var(--red)}.user-actions svg,.ctrl svg,.status-icon svg{width:20px;height:20px}.stage{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg);position:relative}.stage.is-focus .stage-header{display:none}.app.nav-collapsed .stage.is-focus .stage-header{display:flex;position:absolute;top:0;left:0;z-index:8;min-height:0;padding:8px;background:transparent;box-shadow:none}.stage.has-overlay-dock .stage-header{position:relative;z-index:8}.app.nav-collapsed .stage.is-focus .stage-header h2,.app.nav-collapsed .stage.is-focus .stage-header .error{display:none}.stage:fullscreen,.stage:-webkit-full-screen{width:100%;height:100%;background:var(--nights)}.stage:fullscreen .stage-header,.stage:-webkit-full-screen .stage-header{display:none}.stage:fullscreen .media-board,.stage:-webkit-full-screen .media-board,.stage.is-focus .media-board{flex:1;min-height:0}.stage-header{min-height:48px;padding:8px 16px;display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;box-shadow:0 1px #00000040}.stage-dock{position:absolute;left:50%;bottom:20px;z-index:30;display:flex;align-items:center;justify-content:center;gap:16px;padding:8px 12px;border-radius:12px;background:var(--bg-dark);background:color-mix(in srgb,var(--bg-dark) 92%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 12px 40px #00000073;transform:translate(-50%) translateY(10px);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.stage-dock.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%)}.stage-dock .controls{padding:0;background:transparent;box-shadow:none}.stage-dock .user-panel{margin:0;background:transparent;padding:0}.stage-header h2{margin:0;font-size:16px}.error{margin:0;color:var(--red-hot);font-size:13px}.empty{flex:1;display:grid;place-content:center;text-align:center;color:var(--muted)}.hint{color:var(--faint)}.media-board{flex:1;position:relative;min-height:0;overflow:hidden}.media-board.gallery{display:block}.media-board.theater{display:block;background:var(--nights)}.media-window.focus{position:absolute;top:0;right:0;bottom:0;left:0;width:auto;height:auto;border-radius:0;z-index:1}.media-window.pip{position:absolute;z-index:6;cursor:grab;width:220px;height:124px;box-shadow:0 12px 32px #0000008c;touch-action:none;-webkit-user-select:none;user-select:none}.media-window.pip:active{cursor:grabbing}.hidden-list.floating{position:absolute;left:12px;bottom:12px;z-index:7;margin:0;max-width:240px}.media-window{position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--bg-dark);border-radius:8px;display:grid;place-items:center}.media-window.grid{position:absolute}.media-window.speaking{outline:2px solid var(--crimson);outline-offset:0}.hidden-list{margin-top:auto;display:flex;flex-direction:column;gap:6px}.hidden-list p{margin:8px 0 0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--faint)}.hidden-chip{border-radius:999px;background:var(--bg-mid);border:1px solid var(--crimson);color:var(--text);display:flex;align-items:center;gap:4px;padding:2px 2px 2px 8px;font-size:12px;font-weight:600}.hidden-chip-show{flex:1;border:0;background:transparent;color:inherit;text-align:left;padding:6px 4px;font:inherit;cursor:pointer}.hidden-chip:hover{background:var(--bg-hover)}.hidden-chip-close{width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--muted);display:grid;place-items:center;flex-shrink:0}.hidden-chip-close:hover{background:var(--red);color:#fff}.hidden-chip-close svg{width:14px;height:14px}.media-window video.is-mirrored{transform:scaleX(-1)}.media-video-slot{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--bg-mid, #1a1a1e)}.media-video-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.media-window video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;background:transparent;opacity:0;transition:opacity .35s ease;z-index:1}.media-video-slot.shows-avatar video{transition:opacity .35s ease,transform .35s ease}.media-video-slot.shows-avatar video.is-ready{transform:scale(1)}.media-window video.is-ready{opacity:1}.media-window.screen{background:#000}.media-window.screen video{width:100%;height:100%;max-width:none;max-height:none;min-width:0;min-height:0;object-fit:contain;object-position:center}.media-window.focus.screen{padding:0;background:#000}.stage:fullscreen .media-window.screen video,.stage:-webkit-full-screen .media-window.screen video,.media-window.focus.screen video{object-fit:contain}.media-chrome{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;gap:8px;padding:8px;background:linear-gradient(180deg,rgba(0,0,0,.65),transparent);opacity:0;transition:opacity .15s}.media-window:hover .media-chrome,.media-window:focus-within .media-chrome{opacity:1}.media-title{flex:1;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chrome-btn{width:28px;height:28px;border:0;border-radius:8px;background:#00000073;color:#fff;display:grid;place-items:center}.chrome-btn:hover{background:var(--blurple)}.chrome-btn svg{width:16px;height:16px}.resize-handle{position:absolute;right:0;bottom:0;width:18px;height:18px;cursor:nwse-resize;z-index:3}.resize-handle:after{content:"";position:absolute;right:5px;bottom:5px;width:8px;height:8px;border-right:2px solid rgba(255,255,255,.55);border-bottom:2px solid rgba(255,255,255,.55)}.tile-avatar{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.tile-avatar-letter{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;font-size:28px;font-weight:800;color:#fff}.tile-avatar-img{width:72px;height:72px;border-radius:50%;object-fit:cover}.media-video-placeholder{display:grid;place-items:center}.tile-meta{position:absolute;left:8px;bottom:8px;display:flex;align-items:center;gap:6px;max-width:calc(100% - 48px);background:#0000008c;padding:4px 8px;border-radius:6px;font-size:12px}.tile-name{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pill{font-size:11px;color:var(--muted)}.tile-mic-off{position:absolute;right:8px;bottom:8px;z-index:2;width:28px;height:28px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center}.tile-mic-off svg{width:15px;height:15px}.tile-speaker-off{position:absolute;left:8px;bottom:8px;z-index:2;width:28px;height:28px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center}.tile-speaker-off svg{width:15px;height:15px}.media-window:hover .tile-meta,.media-window:focus-within .tile-meta{opacity:.92}.tile-volume{flex:1;min-width:0;height:4px;accent-color:var(--crimson);cursor:pointer}.tile-menu{position:relative}.tile-menu-pop{position:absolute;right:0;top:calc(100% + 6px);min-width:196px;padding:8px;border-radius:10px;background:var(--bg-mid);border:1px solid var(--line);box-shadow:0 10px 24px #00000073;display:flex;flex-direction:column;gap:2px;z-index:8}.tile-volume-row{display:flex;flex-direction:column;gap:8px;padding:6px 8px 10px;border-bottom:1px solid var(--line);margin-bottom:4px}.tile-volume-row>span{font-size:11px;font-weight:700;color:var(--muted)}.tile-volume-controls{display:flex;align-items:center;gap:6px}.tile-volume-controls .chrome-btn{width:24px;height:24px;font-size:16px;font-weight:700;line-height:1}.tile-menu-pop button{border:0;background:transparent;color:var(--text);text-align:left;padding:8px 10px;border-radius:8px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:8px}.tile-menu-pop button:hover{background:var(--bg-hover)}.tile-menu-pop svg{width:14px;height:14px}.chrome-btn.is-off{background:var(--red)}.chrome-btn.open{background:var(--bg-hover)}.controls{display:flex;justify-content:center;align-items:center;gap:8px;padding:10px 8px;background:var(--bg-dark);box-shadow:0 -1px #0000004d}.ctrl{width:40px;height:40px;border:0;border-radius:50%;background:var(--bg-mid);color:var(--text);display:grid;place-items:center;flex-shrink:0}.ctrl:hover:not(:disabled){background:var(--bg-hover)}.ctrl:disabled{opacity:.35;cursor:not-allowed}.ctrl.is-off{background:var(--red);color:#fff}.ctrl.is-on{background:var(--green);color:#fff}.ctrl.leave{background:var(--red);color:#fff;border-radius:18px}.ctrl.leave:hover:not(:disabled){background:var(--red-deep)}.theme-picker{margin-top:18px}.theme-picker-label{margin:0 0 8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:center}.theme-swatches{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.theme-swatch{border:1px solid transparent;background:transparent;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:6px;padding:4px;font-size:11px;font-weight:700}.theme-swatch.active{color:var(--text)}.swatch-face{width:28px;height:28px;border-radius:50%;border:2px solid transparent;box-shadow:inset 0 0 0 1px #ffffff1f}.theme-swatch.active .swatch-face{border-color:var(--text)}.swatch-face.discord{background:linear-gradient(135deg,#5865f2 50%,#1e1f22 50%)}.swatch-face.crimson{background:linear-gradient(135deg,#d7263d 50%,#02182b 50%)}.swatch-face.kiwi{background:linear-gradient(135deg,#89e900 50%,#222 50%)}.swatch-face.neon{background:linear-gradient(135deg,#ff4ec8 50%,#120018 50%)}.theme-menu{position:relative}.theme-menu-btn{width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--muted);display:grid;place-items:center}.theme-menu-btn:hover,.theme-menu-btn.open{background:var(--bg-hover);color:var(--text)}.theme-menu-pop{position:fixed;z-index:80;width:248px;padding:10px 12px 12px;border-radius:12px;background:var(--bg-mid);border:1px solid var(--crimson);box-shadow:0 16px 40px #0000008c}.theme-menu-pop .theme-picker{margin:0}.theme-menu-pop .theme-picker-label{text-align:left}.login{display:none}.auth-error{color:#ffb4b4;font-size:13px}.badge{min-width:18px;height:18px;padding:0 6px;border-radius:9px;background:var(--red);color:#fff;font-size:11px;font-weight:800;line-height:1;display:inline-flex;align-items:center;justify-content:center;margin-left:auto;box-shadow:0 1px 4px #00000040}.badge.mention{background:var(--red);color:#fff}.unread-dot{width:8px;height:8px;border-radius:50%;background:var(--text);margin-left:auto;flex-shrink:0;opacity:.92}.channel-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel.unread .channel-name{color:#fff;font-weight:700}.status-dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--bg-mid);position:absolute;right:-1px;bottom:-1px}.avatar-wrap{position:relative;flex-shrink:0}.avatar-wrap img,.avatar-wrap .mini-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.sidebar-actions{display:flex;gap:4px;padding:8px}.sidebar-actions button,.ghost-btn{flex:1;height:28px;border:0;border-radius:6px;background:var(--bg-hover);color:var(--muted);font-size:11px;font-weight:800}.prompt-row{display:flex;gap:6px;padding:0 8px 8px}.prompt-row input{flex:1;height:28px;border:0;border-radius:6px;background:var(--bg-dark);color:var(--text);padding:0 8px;font:inherit;font-size:12px}.ghost-btn svg,.channel-head .add svg{width:14px;height:14px}.member-rail{width:240px;background:var(--bg-mid);border-left:1px solid var(--line);overflow:auto;padding:14px 6px}.member-rail h3{margin:0 10px 10px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-weight:700}.chat-msg.deleted p{font-style:italic;color:var(--faint)}.chat-msg .mention{color:var(--crimson);font-weight:700}.chat-attach{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px}.chat-attach a,.chat-attach img{max-width:220px;max-height:160px;border-radius:8px}.chat-msg:hover .chat-msg-actions{opacity:1}.chat-msg-actions{opacity:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:grid;place-items:center;z-index:40}.role-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:700;color:var(--role-color, #949ba4);background:color-mix(in srgb,var(--role-color, #949ba4) 18%,transparent)}.role-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.member-name-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.chat-load-more{text-align:center;padding:10px;font-size:12px;color:var(--muted)}.composer-disabled{padding:12px 16px;border-top:1px solid var(--border)}.composer-disabled-hint{margin:0;font-size:13px;color:var(--muted);text-align:center}.chat-mod-deleted{font-size:11px;color:#f0b232;margin-left:6px}.user-name{display:inline-flex;align-items:center;gap:4px;min-width:0}.user-name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mod-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#43b581}.mod-badge svg{width:14px;height:14px}.chat-msg-body header .user-name.chat-author-name .user-name-text{font-weight:700}.member-profile-display .user-name-text{font-size:20px;font-weight:700}.media-title .user-name,.tile-meta .user-name.tile-name{min-width:0}.tile-meta .user-name.tile-name .user-name-text{font-size:12px;font-weight:700}.members li .user-name.member-name .user-name-text{font-size:inherit}.member-name-wrap .user-name.member-name{display:inline-flex}.channel-lock{margin-left:4px;opacity:.7;vertical-align:middle}.channel-row{position:relative}.channel-row-main .chat-menu{position:absolute;right:2px;top:50%;transform:translateY(-50%);flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;opacity:0;transition:opacity .12s ease;z-index:1}.channel-row:hover .channel-row-main .chat-menu,.channel-row:focus-within .channel-row-main .chat-menu,.channel-row-main .chat-menu:has(.icon-btn[aria-expanded=true]){opacity:1}@media(max-width:1100px){.channel-row-main .chat-menu{opacity:1}}.member-mod-actions{display:flex;gap:8px;margin-top:16px}.ctrl-dropdown{position:relative;display:inline-flex;overflow:visible}.ctrl-dropdown .dropdown-menu{z-index:120}.stage-dock{overflow:visible}.stage-dock .ctrl-dropdown .dropdown-menu{z-index:200}.ctrl-dropdown.banner .dropdown-menu{top:calc(100% + 6px);right:auto;left:0}.live-banner-screen-btn{padding:8px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-weight:600;cursor:pointer}.file-dropzone{position:relative;min-height:0}.file-dropzone-chat{display:flex;flex-direction:column;flex:1;min-height:0}.file-dropzone-chat>.chat-main{flex:1}.file-dropzone-overlay{position:absolute;top:8px;right:8px;bottom:8px;left:8px;z-index:30;border:2px dashed var(--accent);border-radius:12px;background:color-mix(in srgb,var(--accent) 12%,var(--bg-mid));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;pointer-events:none;color:var(--text);text-align:center;padding:24px}.file-dropzone-overlay strong{font-size:15px}.file-dropzone-overlay span{font-size:13px;color:var(--muted)}.file-dropzone-overlay svg{width:28px;height:28px;color:var(--accent)}.chat-thread .file-dropzone-chat{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.member-voice-slot{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--muted)}.modal{width:min(380px,calc(100% - 32px));background:var(--bg-mid);border:1px solid var(--line);border-radius:14px;padding:18px}.modal:not(.modal--wide) .modal-header{margin-bottom:12px}.modal:not(.modal--wide) .modal-header h2{margin:0;font-size:18px}.modal form,.modal .stack{display:flex;flex-direction:column;gap:8px}.modal input{height:40px;border-radius:8px;border:1px solid var(--line);background:var(--bg-dark);color:var(--text);padding:0 10px;font:inherit}.modal .row{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.modal button:not(.profile-avatar-btn){height:36px;border:0;border-radius:8px;padding:0 12px;font-weight:700}.modal .profile-avatar-btn{height:auto;min-height:0;padding:0;font-weight:inherit}.modal .primary{background:var(--crimson);color:var(--on-accent)}.modal .secondary{background:var(--bg-hover);color:var(--text)}.channel-head{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:28px}.channel-head>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-head .add{width:22px;height:22px;border:0;border-radius:4px;background:transparent;color:var(--faint);display:grid;place-items:center}.unread{font-weight:800;color:#fff}.chat-edited{margin-left:6px;font-size:10px;color:var(--faint)}.composer-preview{display:none}.presence-name{display:flex;align-items:center;gap:8px;min-width:0}.stage-with-members{display:grid;grid-template-columns:minmax(0,1fr) 240px;min-height:0;min-width:0;flex:1;overflow:hidden}.stage-with-members>*{min-width:0}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.anim-fade-in{animation:fade-in .22s ease-out both}.anim-slide-down{animation:slide-down .24s ease-out both}.stage-title{font-size:1.05rem;font-weight:700;letter-spacing:-.01em;margin:0}.server-header span{font-size:.95rem;font-weight:800;letter-spacing:-.02em}.channel{transition:background .15s ease,color .15s ease,transform .12s ease}.channel:active{transform:scale(.98)}.channel-row-main:has(.channel.selected) .channel{color:#fff}.server-icon{transition:border-radius .2s ease,transform .15s ease,filter .15s ease}.server-icon:hover{transform:translateY(-1px)}.media-window{transition:box-shadow .2s ease,outline-color .2s ease}.stage-dock{transition:opacity .22s ease,transform .22s ease;transform:translateY(12px);opacity:0}.stage-dock.is-visible{transform:translateY(0);opacity:1}.modal-backdrop{animation:fade-in .18s ease-out both}.modal{animation:scale-in .2s ease-out both}.chat-msg{animation:fade-in .18s ease-out both}.voice-connected{animation:slide-down .2s ease-out both}.login-card{animation:scale-in .28s ease-out both}.nav-toggle,.ctrl,.ghost-btn{transition:background .15s ease,color .15s ease,transform .12s ease}.nav-toggle:hover,.ctrl:hover,.ghost-btn:hover{transform:translateY(-1px)}.chat-composer button[type=submit]{transition:background .15s ease,transform .12s ease}.chat-composer button[type=submit]:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.anim-fade-in,.anim-slide-down,.login-card,.modal-backdrop,.modal,.chat-msg,.voice-connected{animation:none}.channel,.server-icon,.stage-dock,.nav-toggle,.ctrl,.ghost-btn{transition:none}}.server-header{position:relative;z-index:2;flex-shrink:0}.server-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-menu,.channel-menu{position:relative}.channel-head-actions{display:flex;align-items:center;gap:2px;margin-left:auto;flex-shrink:0}.channel-head-actions .icon-btn,.channel-row-main .chat-menu .icon-btn{width:28px;height:28px}.channel-draft{margin-top:8px}.dropdown-menu{position:absolute;top:calc(100% + 4px);min-width:180px;background:var(--bg-dark);border:1px solid var(--line);border-radius:8px;padding:4px;box-shadow:0 8px 24px #00000059;z-index:20}.dropdown-menu.right{right:0}.dropdown-menu.drop-up{top:auto;bottom:calc(100% + 6px)}.icon-btn{width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer;flex-shrink:0;padding:0}.icon-btn:hover,.icon-btn[aria-expanded=true]{background:var(--bg-hover);color:var(--text)}.icon-btn svg{width:16px;height:16px}.channel-head .icon-btn svg,.ghost-btn svg,.channel-head .add svg{width:14px;height:14px}.dropdown-item{width:100%;border:0;background:transparent;color:var(--text);text-align:left;padding:8px 10px;border-radius:6px;font:inherit;font-size:13px;font-weight:600}.dropdown-item:hover{background:var(--bg-hover)}.dropdown-item.danger{color:#ffb4b4}.sr-only-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.server-icon-img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.user-chip{flex:1;min-width:0;border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:8px;padding:0;text-align:left;cursor:pointer}.user-chip:hover strong{color:var(--crimson)}.profile-form .profile-avatar-btn{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;border:0;background:transparent;color:var(--muted);margin:0 auto 8px;cursor:pointer;isolation:isolate}.profile-form .profile-avatar-visual{position:relative;display:inline-flex;width:72px;height:72px}.profile-form .profile-avatar-visual .avatar-wrap{width:72px;height:72px}.profile-form .profile-avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:50%;background:#00000094;color:#fff;font-size:11px;font-weight:700;line-height:1.1;opacity:0;transition:opacity .15s ease;pointer-events:none}.profile-form .profile-avatar-overlay svg{width:16px;height:16px}.profile-form .profile-avatar-btn:hover .profile-avatar-overlay,.profile-form .profile-avatar-btn:focus-visible .profile-avatar-overlay{opacity:1}.profile-form label{font-size:12px;font-weight:700;color:var(--faint)}.chat-msg-wrap{position:relative;padding-top:2px}.chat-msg-wrap.menu-open,.chat-msg-wrap:hover{z-index:2}.chat-msg-wrap .msg-toolbar{top:0;right:12px}.chat-msg-wrap.msg-highlight .chat-msg{animation:msg-flash 1.8s ease}.chat-msg{position:relative}.chat-log{padding-top:8px}.msg-toolbar{position:absolute;top:-14px;right:8px;max-width:calc(100% - 16px);flex-wrap:wrap;justify-content:flex-end;display:flex;align-items:center;gap:2px;padding:2px 4px;background:var(--bg-dark);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 12px #00000040;z-index:3}.msg-toolbar-btn{width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--muted);display:grid;place-items:center;font-size:14px;cursor:pointer}.msg-toolbar-btn:hover{background:var(--bg-hover);color:var(--text)}.msg-toolbar-btn.danger:hover{color:#ffb4b4}.msg-toolbar-btn svg{width:16px;height:16px}.msg-toolbar-sep{width:1px;height:18px;background:var(--line);margin:0 2px}.msg-toolbar-more{position:relative}.msg-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.msg-reaction{border:1px solid var(--line);background:var(--bg-dark);border-radius:999px;padding:2px 8px;font-size:13px;color:var(--text);cursor:pointer}.msg-reaction.mine{border-color:color-mix(in srgb,var(--crimson) 60%,var(--line));background:color-mix(in srgb,var(--crimson) 12%,var(--bg-dark))}.thread-link{margin-top:4px;border:0;background:transparent;color:var(--crimson);font-size:12px;font-weight:700;padding:0;cursor:pointer}.day-divider{display:flex;align-items:center;margin:16px 0 8px;padding:0 16px}.day-divider:before,.day-divider:after{content:"";flex:1;height:1px;background:var(--line)}.day-divider span{padding:0 12px;font-size:11px;font-weight:700;color:var(--faint);text-transform:capitalize;white-space:nowrap}.chat-attach{margin-top:6px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:100%}.attach-tile{position:relative;flex-shrink:0}.attach-tile.is-media{border-radius:12px;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:#0c0c0e;box-shadow:0 2px 8px #0000002e;line-height:0}.attach-tile.is-media:not([style*=width]){width:fit-content;max-width:min(var(--attach-max-w, 400px),100%)}.attach-tile.compact.is-media:not([style*=width]){max-width:min(var(--attach-max-w, 200px),100%)}.attach-tile-main{border:0;padding:0;margin:0;background:transparent;cursor:zoom-in;display:block;position:relative;width:100%;height:100%}.attach-tile.is-file .attach-tile-main{cursor:pointer}.attach-tile-main img{display:block;max-width:min(var(--attach-max-w, 400px),100%);max-height:var(--attach-max-h, 320px);object-fit:contain;object-position:center;background:#0c0c0e}.attach-tile.is-media[style*=width] .attach-tile-main img{width:100%;height:100%}.attach-tile.is-media:not([style*=width]) .attach-tile-main img{width:auto;height:auto}.attach-tile.compact .attach-tile-main img{max-width:min(var(--attach-max-w, 200px),100%);max-height:var(--attach-max-h, 140px)}.attach-tile-video{position:relative;width:100%;height:100%;display:grid;place-items:center;background:#0c0c0e}.attach-tile-video video{display:block;width:100%;height:100%;max-width:min(var(--attach-max-w, 400px),100%);max-height:var(--attach-max-h, 320px);object-fit:contain;object-position:center}.attach-tile.compact .attach-tile-video video{max-width:min(var(--attach-max-w, 200px),100%);max-height:var(--attach-max-h, 140px)}.attach-tile-play{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#00000047;color:#fff;font-size:28px;pointer-events:none;transition:background .15s ease}.attach-tile-hover{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000;transition:background .15s ease;pointer-events:none}.attach-tile-main:hover .attach-tile-hover,.attach-tile-main:focus-visible .attach-tile-hover{background:#0000001f}.attach-tile-main:hover .attach-tile-play,.attach-tile-main:focus-visible .attach-tile-play{background:#0006}.attach-tile.is-file{border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--bg-dark);min-width:200px;max-width:320px}.attach-tile-file{padding:10px 12px;text-align:left;display:flex;align-items:center;gap:10px}.attach-tile-file-icon{font-size:22px;flex-shrink:0}.attach-tile-file-meta{min-width:0;display:flex;flex-direction:column;gap:2px}.attach-tile-file-meta strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attach-tile-file-meta small{color:var(--faint);font-size:11px}.attach-tile-remove{position:absolute;top:6px;right:6px;width:24px;height:24px;border:0;border-radius:50%;background:#000000b8;color:#fff;display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease;z-index:2}.attach-tile:hover .attach-tile-remove,.attach-tile:focus-within .attach-tile-remove{opacity:1}.attach-tile-remove:hover{background:var(--red)}.attach-tile-remove svg{width:12px;height:12px}.composer-wrap{border-top:1px solid var(--line)}.composer-preview{display:flex;gap:10px;padding:10px 16px 0;flex-wrap:wrap;align-items:flex-end}.composer-attach{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:var(--bg-dark)}.composer-attach img{display:block;width:80px;height:80px;object-fit:cover}.composer-attach-file{display:block;padding:10px 32px 10px 10px;font-size:12px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-attach-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border:0;border-radius:50%;background:#000000a6;color:#fff;display:grid;place-items:center;cursor:pointer}.composer-attach-remove svg{width:12px;height:12px}.mention-menu{position:absolute;bottom:calc(100% + 6px);left:0;right:0;margin:0;padding:4px;list-style:none;background:var(--bg-dark);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #00000059;z-index:5}.mention-menu button{width:100%;border:0;background:transparent;color:var(--text);text-align:left;padding:8px 10px;border-radius:6px;display:flex;flex-direction:row;align-items:center;gap:10px;cursor:pointer}.mention-menu-text{display:flex;flex-direction:column;gap:2px;min-width:0}.mention-menu-text .user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.mention-menu button:hover{background:var(--bg-hover)}.mention-menu-text>span{font-size:11px;color:var(--faint)}.emoji-picker.floating{position:fixed;z-index:220;width:300px;height:360px;display:flex;flex-direction:column;overflow:hidden}.emoji-picker.inline{position:absolute;bottom:calc(100% + 6px);right:0;z-index:6;width:300px;height:360px;display:flex;flex-direction:column;overflow:hidden}.emoji-picker-search{padding:8px 8px 4px;flex-shrink:0}.emoji-picker-search input{width:100%;padding:8px 10px;font-size:13px;border-radius:8px;border:1px solid var(--line);background:var(--bg-dark);color:var(--text)}.emoji-picker-search input:focus{outline:none;border-color:color-mix(in srgb,var(--crimson) 50%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--crimson) 20%,transparent)}.emoji-picker-scroll{flex:1;min-height:0;overflow-y:auto;padding:0 6px 8px}.emoji-picker-section+.emoji-picker-section{margin-top:8px}.emoji-picker-empty{padding:24px 12px;text-align:center;font-size:13px;color:var(--faint)}.emoji-picker-tabs{display:none}.emoji-picker-label{position:sticky;top:0;z-index:1;font-size:10px;font-weight:700;color:var(--faint);margin-bottom:4px;padding:4px 2px;text-transform:uppercase;letter-spacing:.05em;background:color-mix(in srgb,var(--bg-dark) 92%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.emoji-picker-grid{display:flex;flex-wrap:wrap;gap:2px}.emoji-btn{width:32px;height:32px;border:0;border-radius:8px;background:transparent;font-size:20px;cursor:pointer;flex-shrink:0}.emoji-btn:hover,.emoji-btn.active{background:var(--bg-hover)}.emoji-btn.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--crimson) 45%,transparent)}.emoji-picker.floating,.emoji-picker.inline{background:var(--bg-dark);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #00000059}.emoji-tone-popup{position:absolute;z-index:30;display:flex;align-items:center;gap:2px;padding:4px;border-radius:999px;background:var(--bg-dark);border:1px solid var(--line);box-shadow:0 8px 20px #00000059}.emoji-picker-tones{display:none}.emoji-tone-btn{width:32px;height:32px;border:0;border-radius:8px;background:transparent;font-size:18px;cursor:pointer;flex-shrink:0}.emoji-tone-btn:hover,.emoji-tone-btn.active{background:var(--bg-hover);outline:2px solid var(--crimson);outline-offset:-2px}.edit-message-form{display:flex;flex-direction:column;gap:10px}.edit-message-input{width:100%;min-height:120px;resize:vertical;border:1px solid var(--line);border-radius:10px;background:var(--bg-dark);color:var(--text);padding:12px;font:inherit;line-height:1.4;box-sizing:border-box}.edit-message-editor .message-editor-shell{border:1px solid var(--line);border-radius:10px;background:var(--bg-dark)}.edit-message-editor .message-editor-shell .ProseMirror{min-height:120px;max-height:280px}.edit-message-hint{margin:0;font-size:12px;color:var(--faint)}.edit-message-actions{display:flex;justify-content:flex-end;gap:8px}.media-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000e0;display:grid;place-items:center;padding:24px}.media-viewer-panel{width:min(960px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--bg-mid);border:1px solid var(--line);border-radius:12px;overflow:hidden}.media-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line);font-size:13px;font-weight:600}.media-viewer-actions{display:flex;gap:8px}.media-viewer-btn{border:0;background:var(--bg-hover);color:var(--text);border-radius:8px;padding:6px 10px;display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-size:12px;font-weight:700}.media-viewer-body{flex:1;min-height:0;display:grid;place-items:center;padding:16px;background:#000}.media-viewer-body img,.media-viewer-body video{max-width:100%;max-height:calc(100vh - 160px);object-fit:contain}.media-viewer-file{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text);padding:24px}.media-viewer-file-icon{font-size:40px}.msg-reply-quote{display:flex;flex-direction:column;gap:2px;margin:6px 0 8px;padding:8px 10px 8px 12px;border-radius:0 8px 8px 0;background:color-mix(in srgb,var(--crimson) 10%,var(--bg-dark));text-align:left;width:100%;max-width:100%;cursor:default;border:0;border-left:3px solid var(--crimson)}.msg-reply-quote.clickable{cursor:pointer;transition:background .12s ease}.msg-reply-quote.clickable:hover{background:color-mix(in srgb,var(--crimson) 16%,var(--bg-dark))}.msg-reply-quote.deleted{opacity:.72}.msg-reply-quote.deleted .msg-reply-snippet{font-style:italic}.chat-msg.msg-highlight{animation:none}@keyframes msg-flash{0%,15%{background:color-mix(in srgb,var(--crimson) 22%,transparent)}to{background:transparent}}.msg-reply-author{font-size:11px;font-weight:800;color:var(--crimson)}.msg-reply-snippet{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.composer-reply{display:flex;align-items:center;gap:8px;padding:8px 16px 0;border-left:3px solid var(--crimson);margin:0 16px;background:color-mix(in srgb,var(--crimson) 8%,transparent);border-radius:0 8px 0 0}.composer-reply small{display:block;color:var(--crimson);font-weight:800;font-size:11px}.composer-reply span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.composer-reply button{border:0;background:transparent;color:var(--muted);margin-left:auto}.settings-menu-pop{position:fixed;z-index:50;width:min(220px,calc(100vw - 16px));max-height:min(60vh,360px);overflow-y:auto;background:var(--bg-dark);border:1px solid var(--line);border-radius:10px;padding:8px;box-shadow:0 8px 24px #00000059}.settings-menu-label{margin:0 4px 6px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--faint)}.settings-theme-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.settings-theme-item{display:flex;align-items:center;gap:4px}.settings-theme-row{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:7px 8px;border:0;border-radius:6px;background:transparent;color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer}.settings-theme-row:hover,.settings-theme-row.active{background:var(--bg-hover)}.settings-theme-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;box-shadow:inset 0 0 0 1px #ffffff1f}.settings-theme-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-theme-check{font-size:12px;color:var(--crimson);flex-shrink:0}.settings-theme-remove{width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:16px;line-height:1;cursor:pointer;flex-shrink:0}.settings-theme-remove:hover{background:var(--bg-hover);color:var(--red)}.settings-link-btn{width:100%;margin-top:6px;padding:6px 8px;border:0;border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:12px;text-align:left;cursor:pointer}.settings-link-btn:hover{background:var(--bg-hover);color:var(--text)}.settings-custom-form{display:flex;flex-direction:column;gap:8px}.settings-custom-colors{display:grid;grid-template-columns:1fr 1fr;gap:8px}.settings-save-btn{height:32px;border:0;border-radius:6px;background:var(--crimson);color:var(--on-accent);font-weight:700;font-size:13px;cursor:pointer}.user-chip-text{min-width:0;flex:1}.user-chip-text strong,.user-chip-text small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu{position:relative}.user-panel .user-actions .icon-btn{width:28px;height:28px}.settings-submenu-back{border:0;background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:700;padding:0 0 8px;cursor:pointer}.settings-submenu-back:hover{color:var(--text)}.custom-theme-panel{margin-top:0;padding-top:0;border-top:0}.theme-swatch-wrap{position:relative;display:inline-flex}.theme-swatch-remove{position:absolute;top:-4px;right:-4px;width:16px;height:16px;border:0;border-radius:50%;background:var(--red);color:#fff;font-size:12px;line-height:1}.custom-theme-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.custom-theme-form input[type=text]{height:34px;border-radius:8px;border:1px solid var(--line);background:var(--bg-mid);color:var(--text);padding:0 10px}.custom-theme-colors{display:grid;grid-template-columns:1fr 1fr;gap:8px}.custom-theme-colors label{font-size:11px;font-weight:700;color:var(--faint);display:flex;flex-direction:column;gap:4px}.custom-theme-form .primary{height:34px;border:0;border-radius:8px;background:var(--crimson);color:var(--on-accent);font-weight:800}.md-body{min-width:0;word-break:break-word}.md-body>:first-child{margin-top:0}.md-body>:last-child{margin-bottom:0}.md-body p,.md-body ul,.md-body ol,.md-body blockquote,.md-body pre,.md-body table,.md-body hr{margin:.35em 0}.md-body h1,.md-body h2,.md-body h3,.md-body h4,.md-body h5,.md-body h6{margin:.5em 0 .25em;line-height:1.25;font-weight:800}.md-body h1{font-size:1.35em}.md-body h2{font-size:1.2em}.md-body h3{font-size:1.08em}.md-body ul,.md-body ol{padding-left:1.4em}.md-body blockquote{border-left:3px solid var(--line);padding-left:10px;color:var(--muted)}.md-body hr{border:0;border-top:1px solid var(--line)}.md-body table{border-collapse:collapse;width:100%;max-width:100%;display:block;overflow-x:auto}.md-body th,.md-body td{border:1px solid var(--line);padding:4px 8px;text-align:left}.md-body th{background:var(--bg-dark);font-weight:700}.md-body img{max-width:min(420px,100%);border-radius:8px}.md-body ul.contains-task-list{list-style:none;padding-left:0}.md-body li.task-list-item{display:flex;align-items:flex-start;gap:8px}.md-body li.task-list-item input{margin-top:.25em;accent-color:var(--crimson)}.chat-msg-content{margin:0;min-width:0}.md-body code{background:var(--bg-dark);padding:1px 5px;border-radius:4px;font-size:.92em}.md-body pre{margin:6px 0;padding:10px 12px;border-radius:8px;background:var(--bg-dark);overflow-x:auto}.md-body pre code{padding:0;background:transparent}.md-body a{color:var(--crimson)}.md-body del{opacity:.7}.member-row{width:calc(100% - 16px);margin:0 8px 4px;border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:10px;padding:8px 10px;min-height:44px;border-radius:8px;cursor:pointer;text-align:left}.member-row .member-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600}.member-row:hover{background:var(--bg-hover)}.member-row.offline{opacity:.75}.member-profile{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:8px 0 4px}.settings-menu-head{margin-bottom:10px}.settings-menu-head strong{display:block;font-size:14px}.settings-menu-head span{font-size:12px;color:var(--muted)}.custom-theme-panel{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.settings-menu-pop .custom-theme-panel{margin-top:0;padding-top:0;border-top:0}.custom-theme-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.custom-theme-step{font-size:11px;color:var(--faint);font-weight:700}.theme-preview{display:grid;grid-template-columns:14px 48px 1fr;gap:6px;height:72px;border-radius:10px;border:1px solid;overflow:hidden;margin-bottom:10px}.theme-preview-brand{grid-row:1 / -1;display:grid;place-items:center;padding:4px}.theme-preview-sidebar{display:flex;flex-direction:column;gap:4px;padding:6px 4px}.theme-preview-sidebar span{height:8px;border-radius:4px;display:block}.theme-preview-main{padding:8px;display:flex;flex-direction:column;gap:6px;justify-content:flex-end}.theme-preview-text{font-size:11px;font-weight:800;line-height:1;opacity:.92}.theme-preview-msg{height:10px;border-radius:4px;width:70%}.theme-preview-input{height:14px;border-radius:6px;border:1px solid}.theme-field{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:var(--faint)}.theme-field input[type=text]{height:34px;border-radius:8px;border:1px solid var(--line);background:var(--bg-mid);color:var(--text);padding:0 10px;font:inherit}.color-field{flex-direction:row;align-items:center;gap:10px}.color-field input[type=color]{width:42px;height:34px;border:0;padding:0;background:transparent}.color-picker{gap:8px}.color-picker-row{display:flex;align-items:center;gap:8px}.color-picker-preview{width:40px;height:40px;flex-shrink:0;border-radius:10px;border:2px solid var(--line);background:linear-gradient(var(--picker-color),var(--picker-color)),repeating-conic-gradient(rgba(255,255,255,.08) 0% 25%,transparent 0% 50%) 0 0 / 10px 10px;box-shadow:inset 0 0 0 1px #ffffff14;cursor:pointer;transition:transform .12s ease,border-color .12s ease}.color-picker-preview:hover{transform:scale(1.04);border-color:var(--crimson)}.color-picker-hex{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;letter-spacing:.02em;text-transform:lowercase}.color-picker-native{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.color-picker-presets{display:flex;flex-wrap:wrap;gap:6px}.color-picker-chip{width:22px;height:22px;border-radius:6px;border:2px solid transparent;background:var(--chip-color);box-shadow:inset 0 0 0 1px #ffffff1f;cursor:pointer;transition:transform .12s ease,border-color .12s ease}.color-picker-chip:hover{transform:scale(1.08)}.color-picker-chip.active{border-color:var(--text);box-shadow:0 0 0 1px var(--bg-dark),inset 0 0 0 1px #ffffff26}.custom-theme-colors{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:300px){.settings-menu-pop .custom-theme-colors{grid-template-columns:1fr 1fr;gap:10px}}.custom-theme-step-body{display:flex;flex-direction:column;gap:10px}.custom-theme-actions{display:flex;gap:8px}.custom-theme-actions .secondary,.custom-theme-actions .primary,.custom-theme-step-body>.primary{flex:1;height:34px;border-radius:8px;border:0;font-weight:800}.custom-theme-actions .secondary{background:var(--bg-hover);color:var(--text)}.custom-theme-step-body>.primary,.custom-theme-actions .primary{background:var(--crimson);color:var(--on-accent)}.server-home{color:var(--text)}.server-home.active{background:var(--crimson);color:var(--on-accent)}.server-rail-divider{width:32px;height:2px;border-radius:999px;background:var(--line);margin:4px auto 8px}.users-sidebar{min-height:0}.users-sidebar-head{border-bottom:1px solid var(--line)}.users-scroll{padding:8px 8px 12px}.users-section{margin-bottom:12px}.users-section-title{margin:0 0 6px;padding:0 8px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--faint)}.users-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit}.users-row:hover{background:var(--bg-hover)}.users-row.active{background:color-mix(in srgb,var(--crimson) 18%,var(--bg-hover))}.users-row-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.users-row-main strong{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-row-sub{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-row-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--red-hot, #ed4245);color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.users-row.offline{opacity:.72}.users-empty{margin:16px 8px;font-size:13px;color:var(--muted);text-align:center}.stage-with-members--dm{grid-template-columns:minmax(0,1fr)}.dm-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}.users-search-wrap{padding:8px 10px;border-bottom:1px solid var(--line)}.users-search{width:100%;box-sizing:border-box;padding:8px 10px;border-radius:8px;border:0;background:var(--bg-mid);color:var(--text);font:inherit}.users-pending-row{display:flex;flex-direction:column;gap:8px;padding:8px;border-radius:8px;background:var(--bg-mid);margin-bottom:6px;min-width:0}.users-pending-head{display:flex;align-items:center;gap:10px;min-width:0}.users-pending-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.users-pending-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-pending-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}.users-pending-actions:has(>:only-child){grid-template-columns:1fr}.users-pending-actions .ui-btn{width:100%;min-width:0}.users-pending-pill{font-size:11px;color:var(--muted)}.chat-system-msg{display:flex;justify-content:center;padding:4px 16px 8px}.chat-system-msg span{font-size:12px;color:var(--muted);background:var(--bg-mid);padding:4px 12px;border-radius:999px}.chat-invite-card{display:flex;gap:12px;margin:8px 16px;padding:12px;border-radius:12px;background:var(--bg-mid);border:1px solid var(--line);max-width:420px}.chat-invite-icon{width:48px;height:48px;border-radius:12px;background:var(--bg-dark);display:grid;place-items:center;overflow:hidden;flex-shrink:0;font-weight:700}.chat-invite-icon img{width:100%;height:100%;object-fit:cover}.chat-invite-body{display:flex;flex-direction:column;gap:4px;min-width:0}.chat-invite-body p{margin:0;font-size:13px;color:var(--muted)}.chat-invite-meta{font-size:11px!important}.invite-modal .invite-link-row{display:flex;gap:8px}.invite-modal .invite-link-row input{flex:1}.invite-friends-list{display:flex;flex-direction:column;gap:4px;max-height:220px;overflow-y:auto}.invite-friend-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:0;border-radius:8px;background:var(--bg-mid);color:var(--text);cursor:pointer;font:inherit;text-align:left}.invite-friend-row:hover{background:var(--bg-hover)}.invite-friends-title{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.ui-field{display:flex;flex-direction:column;gap:6px}.ui-field-label{font-size:11px;font-weight:700;color:var(--faint);letter-spacing:.02em}.ui-input{width:100%;height:36px;border-radius:8px;border:1px solid var(--line);background:var(--bg-mid);color:var(--text);padding:0 12px;font:inherit;font-size:14px;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.ui-input::placeholder{color:var(--faint)}.ui-input:hover:not(:disabled){border-color:color-mix(in srgb,var(--crimson) 35%,var(--line))}.ui-input:focus{outline:none;border-color:color-mix(in srgb,var(--crimson) 65%,var(--line));box-shadow:0 0 0 3px var(--accent-glow)}.ui-input:disabled{opacity:.55;cursor:not-allowed}.ui-input--error{border-color:var(--red-hot)}.ui-input--error:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--red-hot) 30%,transparent)}.ui-field-hint{font-size:11px;color:var(--faint);line-height:1.35}.ui-field-error{font-size:11px;color:var(--red-hot);line-height:1.35}.modal.modal--wide{width:min(720px,calc(100vw - 32px));max-height:min(85vh,720px);display:flex;flex-direction:column;padding:0;overflow:hidden}.modal.modal--wide>.modal-header{padding:18px 20px 0}.modal.modal--wide>.modal-body{flex:1;min-height:0;overflow:auto;padding:16px 20px 20px}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.modal-header-text h2{margin:0}.modal-subtitle{margin:4px 0 0;font-size:13px;color:var(--muted);font-weight:500}.modal-close{width:32px;height:32px;flex-shrink:0;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:20px;line-height:1;cursor:pointer;display:grid;place-items:center}.modal-close:hover{background:var(--bg-hover);color:var(--text)}.ui-section{display:flex;flex-direction:column;gap:10px}.ui-section+.ui-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.ui-section-title{margin:0;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.ui-section-desc{margin:-4px 0 0;font-size:13px;color:var(--faint);line-height:1.45}.ui-section-body{display:flex;flex-direction:column;gap:10px}.ui-modal-hint{margin:0 0 14px;font-size:13px;line-height:1.45;color:var(--muted)}.ui-empty-state{margin:0;padding:20px 14px;text-align:center;font-size:13px;color:var(--muted);border:1px dashed var(--line);border-radius:10px;background:color-mix(in srgb,var(--bg-dark) 50%,transparent)}.ui-modal-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.ui-modal-actions .ui-btn{min-width:96px}.ui-modal-actions--compact{border-top:0;padding-top:0;margin-top:8px}.ui-btn{height:36px;border:0;border-radius:8px;padding:0 14px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .12s ease,opacity .12s ease}.ui-btn:disabled{opacity:.5;cursor:not-allowed}.ui-btn--xs{height:28px;padding:0 8px;font-size:11px;min-width:0}.ui-btn--sm{height:32px;padding:0 10px;font-size:12px;min-width:0}.ui-btn--primary{background:var(--crimson);color:var(--on-accent)}.ui-btn--primary:hover:not(:disabled){filter:brightness(1.06)}.ui-btn--secondary{background:var(--bg-hover);color:var(--text)}.ui-btn--ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}.ui-btn--ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.ui-btn--danger{background:color-mix(in srgb,var(--red-hot, #ed4245) 18%,transparent);color:var(--red-hot, #ed4245);border:1px solid color-mix(in srgb,var(--red-hot, #ed4245) 35%,transparent)}.ui-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--red-hot, #ed4245) 28%,transparent)}.ui-segmented{display:flex;gap:4px;padding:4px;border-radius:10px;background:var(--bg-dark);border:1px solid var(--line);margin-bottom:16px}.ui-segmented-item{flex:1;height:34px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .12s ease,color .12s ease}.ui-segmented-item:hover{color:var(--text)}.ui-segmented-item.active{background:var(--bg-mid);color:var(--text);box-shadow:0 1px 3px #00000026}.ui-tab-bar{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-bottom:16px}.ui-tab-bar-item{flex:0 0 auto;padding:0 0 10px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:color .12s ease,border-color .12s ease}.ui-tab-bar-item:hover{color:var(--text)}.ui-tab-bar-item.active{color:var(--text);border-bottom-color:var(--text)}.ui-check-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg-dark);cursor:pointer;transition:border-color .12s ease,background .12s ease}.ui-check-row:hover:not(.disabled){border-color:color-mix(in srgb,var(--crimson) 35%,var(--line))}.ui-check-row.checked{border-color:color-mix(in srgb,var(--crimson) 55%,var(--line));background:color-mix(in srgb,var(--crimson) 8%,var(--bg-dark))}.ui-check-row.disabled{opacity:.55;cursor:not-allowed}.ui-check-input,.ui-radio-input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.ui-check-box,.ui-radio-dot{width:18px;height:18px;flex-shrink:0;margin-top:1px;border-radius:5px;border:2px solid var(--line);background:var(--bg-mid);transition:border-color .12s ease,background .12s ease}.ui-radio-dot{border-radius:999px}.ui-check-row.checked .ui-check-box,.ui-radio-row.checked .ui-radio-dot{border-color:var(--crimson);background:var(--crimson);box-shadow:inset 0 0 0 3px var(--bg-dark)}.ui-check-content,.ui-radio-content{display:flex;flex-direction:column;gap:2px;min-width:0}.ui-check-label,.ui-radio-label{font-size:14px;font-weight:600;color:var(--text)}.ui-check-hint,.ui-radio-hint{font-size:12px;color:var(--muted);line-height:1.35}.ui-radio-group{display:flex;flex-direction:column;gap:8px}.ui-radio-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg-dark);cursor:pointer;transition:border-color .12s ease,background .12s ease}.ui-radio-row:hover{border-color:color-mix(in srgb,var(--crimson) 35%,var(--line))}.ui-radio-row.checked{border-color:color-mix(in srgb,var(--crimson) 55%,var(--line));background:color-mix(in srgb,var(--crimson) 8%,var(--bg-dark))}.ui-perm-grid .ui-section+.ui-section{margin-top:16px;padding-top:16px}.ui-perm-list{display:flex;flex-direction:column;gap:6px}.ui-role-picker{display:flex;flex-wrap:wrap;gap:8px}.ui-role-picker-item{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg-dark);cursor:pointer;font:inherit;transition:border-color .12s ease,background .12s ease,transform .08s ease}.ui-role-picker-item:hover:not(:disabled){border-color:color-mix(in srgb,var(--crimson) 40%,var(--line))}.ui-role-picker-item.selected{border-color:color-mix(in srgb,var(--crimson) 60%,var(--line));background:color-mix(in srgb,var(--crimson) 10%,var(--bg-dark))}.ui-role-picker-item:disabled{opacity:.55;cursor:not-allowed}.ui-role-picker-check{width:16px;height:16px;display:grid;place-items:center;border-radius:4px;font-size:11px;font-weight:800;color:var(--crimson);background:color-mix(in srgb,var(--crimson) 15%,transparent)}.ui-role-picker-item.selected .ui-role-picker-check{background:var(--crimson);color:var(--on-accent)}.ui-role-sidebar{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);padding-right:12px}.ui-role-sidebar-scroll{display:flex;flex-direction:column;gap:4px;overflow-y:auto;max-height:360px;padding-right:4px}.ui-role-sidebar-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:13px;font-weight:600;text-align:left;cursor:pointer;transition:background .12s ease}.ui-role-sidebar-item:hover{background:var(--bg-hover)}.ui-role-sidebar-item.active{background:color-mix(in srgb,var(--crimson) 12%,var(--bg-hover))}.ui-role-sidebar-dot{width:10px;height:10px;border-radius:999px;background:var(--role-color, var(--muted));flex-shrink:0}.ui-role-sidebar-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-role-sidebar-badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:2px 6px;border-radius:4px;background:var(--bg-dark)}.ui-role-sidebar-add{margin-top:8px;padding:10px;border:1px dashed var(--line);border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:border-color .12s ease,color .12s ease}.ui-role-sidebar-add:hover{border-color:color-mix(in srgb,var(--crimson) 45%,var(--line));color:var(--text)}.server-settings{display:flex;flex-direction:column;min-height:0}.roles-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;min-height:320px}.role-editor-panel{display:flex;flex-direction:column;min-width:0}.role-editor-panel .ui-section:first-child{margin-top:0;padding-top:0;border-top:0}.role-editor-sticky-actions{position:sticky;bottom:0;margin-top:auto;padding-top:12px;background:linear-gradient(to top,var(--bg-mid) 70%,transparent)}.ui-record-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.ui-record-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg-dark)}.ui-record-main{display:flex;flex-direction:column;gap:2px;min-width:0}.ui-record-main strong{font-size:14px}.ui-record-main span{font-size:12px;color:var(--muted)}.ui-record-main small{font-size:12px;color:var(--faint);margin-top:2px}.ui-record-meta{font-size:11px;color:var(--faint);white-space:nowrap}.member-profile{display:flex;flex-direction:column;align-items:stretch;gap:0;text-align:left;padding:0}.member-profile-hero{display:flex;flex-direction:column;align-items:center;gap:8px;padding-bottom:16px;margin-bottom:4px;text-align:center}.member-profile-names{display:flex;flex-direction:column;gap:2px}.member-profile-hero strong{font-size:20px;font-weight:600;line-height:1.2}.member-profile-user{color:var(--muted);font-size:14px}.member-profile-status{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--muted);text-transform:none;letter-spacing:0;padding:0;background:none;border-radius:0}.member-profile-status:before{content:"";width:8px;height:8px;border-radius:50%;flex-shrink:0}.member-profile-status.status-online:before{background:var(--green, #23a559)}.member-profile-status.status-idle:before{background:var(--yellow, #f0b232)}.member-profile-status.status-dnd:before{background:var(--red-hot, #ed4245)}.member-profile-status.status-offline:before{background:var(--faint, #80848e)}.member-profile .role-tags{justify-content:center;margin-top:4px}.member-profile-friend{width:100%;margin-top:4px}.member-profile-friend-note{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:8px;background:var(--bg-hover);color:var(--muted);font-size:12px;font-weight:600}.member-profile-friend-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.member-profile-friend-actions .ui-btn,.member-profile-friend>.ui-btn{width:100%;min-width:0}.member-profile-tabs{margin-bottom:16px}.member-profile-panel{display:flex;flex-direction:column;gap:12px}.member-profile-panel-desc{margin:0;font-size:13px;line-height:1.45;color:var(--muted)}.member-mod-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.member-mod-copy p{margin:4px 0 0;font-size:13px;line-height:1.45;color:var(--muted)}.member-mod-label{display:block;font-size:14px;font-weight:600;color:var(--text)}.member-mod-divider{height:1px;background:var(--line);margin:4px 0}.member-mod-ban{display:flex;flex-direction:column;gap:10px}.ui-btn--danger-text{color:var(--red-hot, #ed4245);flex-shrink:0}.ui-btn--danger-text:hover:not(:disabled){background:color-mix(in srgb,var(--red-hot, #ed4245) 12%,transparent);color:var(--red-hot, #ed4245)}.confirm-dialog-message{margin:0 0 16px;font-size:14px;line-height:1.5;color:var(--muted)}.modal.modal--confirm{width:min(420px,calc(100% - 32px))}.modal-content{display:flex;flex-direction:column}@media(max-width:640px){.modal.modal--wide{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.roles-layout{grid-template-columns:1fr}.ui-role-sidebar{border-right:0;border-bottom:1px solid var(--line);padding-right:0;padding-bottom:12px}.ui-role-sidebar-scroll{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;max-height:none;padding-bottom:4px}.ui-role-sidebar-item{flex-shrink:0;width:auto;max-width:160px}}:root{--shell-footer-x: 8px;--shell-footer-y: 10px;--shell-footer-min-h: 52px}.shell-footer{flex-shrink:0;border-top:1px solid var(--line)}.shell-footer-inner{padding:var(--shell-footer-y) var(--shell-footer-x);min-height:var(--shell-footer-min-h);box-sizing:border-box}.server-rail-top{gap:10px;padding-top:4px}.server-rail-brand{margin-bottom:12px}.server-icon-wrap{position:relative;width:48px;height:48px;min-width:48px;min-height:48px;aspect-ratio:1 / 1;display:grid;place-items:center;flex-shrink:0}.server-indicator{position:absolute;left:-8px;width:4px;height:8px;border-radius:0 4px 4px 0;background:var(--text);opacity:0;transform:scaleY(.6);transition:height .18s ease,opacity .18s ease,transform .18s ease;pointer-events:none}.server-icon-wrap:hover .server-indicator,.server-icon-wrap.active .server-indicator{opacity:1;transform:scaleY(1)}.server-icon-wrap:hover .server-indicator{height:18px}.server-icon-wrap.active .server-indicator{height:32px}.server-icon{width:48px;height:48px;min-width:48px;min-height:48px;aspect-ratio:1 / 1;border-radius:16px;border:0;background:var(--bg-mid);color:var(--text);font-weight:800;display:grid;place-items:center;overflow:hidden;padding:0;line-height:1;cursor:pointer;transition:border-radius .15s ease,background .15s ease,color .15s ease}.server-icon:hover{background:var(--crimson);color:var(--on-accent)}.server-icon.has-image:hover{background:var(--bg-mid);filter:brightness(1.08)}.server-icon.active{border-radius:12px}.server-icon.active:not(.has-image){background:var(--crimson);color:var(--on-accent)}.server-badge{position:absolute;left:50%;bottom:-4px;transform:translate(-50%);min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--red);color:#fff;font-size:11px;font-weight:800;line-height:1;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--bg-dark);box-shadow:0 2px 8px #00000059;pointer-events:none;z-index:2}.server-badge.mention{background:var(--red);color:#fff}.server-unread-dot{position:absolute;left:50%;bottom:0;transform:translate(-50%);width:10px;height:10px;border-radius:50%;background:#fff;border:3px solid var(--bg-dark);pointer-events:none;z-index:2}.server-icon.is-dragging{opacity:.45}.server-add{color:var(--green);font-size:22px}.server-header-icon{width:28px;height:28px;border-radius:8px;object-fit:cover;flex-shrink:0}.server-title-wrap{flex:1;min-width:0;display:flex;align-items:center;gap:10px}.sidebar-footer{margin-top:auto;flex-shrink:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}.user-panel{margin-top:0;padding:var(--shell-footer-y) var(--shell-footer-x);align-items:center;gap:6px;min-height:var(--shell-footer-min-h);box-sizing:border-box}.user-actions{display:flex;gap:2px;align-items:center}.user-actions button{width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--muted);display:grid;place-items:center}.user-actions button:hover,.user-actions button.danger{background:var(--bg-hover);color:var(--text)}.avatar-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%}.avatar-wrap img,.avatar-wrap .mini-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;display:grid;place-items:center;font-size:calc(var(--avatar-size, 32px) * .38);font-weight:800;line-height:1}.status-dot{position:absolute;right:-1px;bottom:-1px;width:calc(var(--avatar-size, 32px) * .34);height:calc(var(--avatar-size, 32px) * .34);min-width:10px;min-height:10px;max-width:13px;max-height:13px;border-radius:50%;border:2.5px solid var(--bg-dark);box-sizing:border-box;pointer-events:none}.members .avatar-wrap .status-dot,.member-row .avatar-wrap .status-dot{border-color:var(--bg-mid)}.member-row .avatar-wrap,.user-chip .avatar-wrap{--avatar-ring: var(--bg-dark)}.status-dot.online{background:var(--green)}.status-dot.idle{background:#f0b232}.status-dot.dnd{background:var(--red)}.status-dot.offline{background:#747f8d}.chat-msg{margin:0;padding:4px 8px 4px 0;border-radius:8px;transition:background .12s ease;max-width:100%}.chat-msg-wrap:hover .chat-msg,.chat-msg-wrap.menu-open .chat-msg{background:color-mix(in srgb,var(--bg-hover) 72%,transparent)}.chat-main{display:flex;flex-direction:column;min-height:0}.composer-wrap{flex-shrink:0;background:var(--bg-mid)}.chat-composer.shell-footer-inner{padding:var(--shell-footer-y) var(--shell-footer-x);min-height:var(--shell-footer-min-h)}.chat-react-error{margin:0;padding:6px 16px 0;font-size:12px;color:#ffb4b4}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000a6;display:grid;place-items:center;padding:16px}.channel-head.is-dragging,.channel-row.is-dragging{opacity:.45}.channel-block+.channel-block{margin-top:4px}.toast-banner{position:fixed;left:50%;bottom:20px;transform:translate(-50%);z-index:210;max-width:min(420px,calc(100vw - 24px));background:var(--bg-dark);border:1px solid var(--line);color:var(--text);padding:10px 14px;border-radius:10px;font-size:13px;font-weight:600;box-shadow:0 8px 24px #00000059}.toast-banner.error{border-color:var(--red);color:#ffb4b4}.voice-audio-sink{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}@media(max-width:1080px){.member-rail{width:180px}.stage-with-members{grid-template-columns:minmax(0,1fr) 180px}}@media(max-width:640px){.chat-layout.with-thread{grid-template-columns:1fr}.emoji-picker-grid{width:100%;grid-template-columns:repeat(9,1fr)}}.voice-float-dock{position:fixed;z-index:55;width:280px;border-radius:10px;overflow:hidden;background:var(--bg-dark);border:1px solid var(--line);box-shadow:0 16px 40px #0000008c;touch-action:none}.voice-float-head{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--bg-mid);border-bottom:1px solid var(--line);cursor:grab;-webkit-user-select:none;user-select:none}.voice-float-head:active{cursor:grabbing}.voice-float-title{flex:1;min-width:0;font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-float-count{font-size:11px;padding:2px 6px;border-radius:999px;background:var(--bg-dark);color:var(--muted)}.voice-float-btn{width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--text);display:grid;place-items:center;cursor:pointer}.voice-float-btn:hover{background:var(--bg-dark)}.voice-float-btn.danger:hover{color:var(--danger, #e74c3c)}.voice-float-body{display:block;width:100%;height:158px;padding:0;border:0;background:transparent;cursor:pointer;text-align:left}.voice-float-body .media-window.float{width:100%;height:100%;border-radius:0;pointer-events:none}.voice-float-body .media-window.float .tile-meta{opacity:1;transform:none}.media-window.float{border-radius:0}.media-window.float .tile-meta{background:linear-gradient(transparent,#000000b8)}.auth-page{min-height:100%;display:grid;grid-template-columns:minmax(280px,1fr) minmax(360px,480px);background:var(--bg-dark);font-family:Plus Jakarta Sans,Segoe UI,system-ui,sans-serif}.auth-brand{position:relative;display:flex;align-items:center;justify-content:center;padding:clamp(32px,6vw,72px);background:radial-gradient(900px 420px at 15% 0%,color-mix(in srgb,var(--brand-color) 14%,transparent),transparent 60%),linear-gradient(180deg,color-mix(in srgb,var(--bg-mid) 70%,var(--bg-dark)) 0%,var(--bg-dark) 100%);border-right:1px solid var(--line);overflow:hidden}.auth-brand:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(color-mix(in srgb,var(--line) 55%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--line) 55%,transparent) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 30% 40%,#000 20%,transparent 72%);mask-image:radial-gradient(ellipse 80% 70% at 30% 40%,#000 20%,transparent 72%);pointer-events:none}.auth-brand-inner{position:relative;z-index:1;width:min(420px,100%)}.auth-mark{display:flex;align-items:center;gap:14px;margin-bottom:28px}.auth-mark strong{display:block;font-size:22px;font-weight:800;letter-spacing:-.03em;line-height:1.1}.auth-mark span{display:block;margin-top:2px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}.auth-tagline{margin:0 0 32px;font-size:17px;line-height:1.55;font-weight:500;color:var(--muted);max-width:36ch}.auth-features{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.auth-features li{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:600;color:var(--text)}.auth-feature-icon{width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--brand-color) 12%,var(--bg-mid));border:1px solid color-mix(in srgb,var(--brand-color) 22%,var(--line));color:var(--brand-color);display:grid;place-items:center;flex-shrink:0}.auth-feature-icon svg{width:18px;height:18px}.auth-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(24px,5vw,48px);background:var(--bg-dark)}.auth-card{width:min(400px,100%)}.auth-mark--compact{display:none;margin-bottom:20px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:12px;background:var(--bg-mid);border:1px solid var(--line);margin-bottom:28px}.auth-tabs button{height:40px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:14px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.auth-tabs button:hover{color:var(--text)}.auth-tabs button.active{background:var(--bg-hover);color:var(--text);box-shadow:0 1px 3px #0003}.auth-head{margin-bottom:24px}.auth-head h1{margin:0 0 8px;font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1.15}.auth-head p{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--faint)}.auth-field input{height:44px;border-radius:10px;border:1px solid var(--line);background:var(--bg-mid);color:var(--text);padding:0 14px;font:inherit;font-size:15px;transition:border-color .15s ease,box-shadow .15s ease}.auth-field input::placeholder{color:color-mix(in srgb,var(--faint) 85%,transparent)}.auth-field input:hover{border-color:color-mix(in srgb,var(--muted) 40%,var(--line))}.auth-field input:focus{outline:none;border-color:color-mix(in srgb,var(--brand-color) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-color) 18%,transparent)}.auth-error{margin:0;padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--red) 14%,var(--bg-mid));border:1px solid color-mix(in srgb,var(--red) 35%,transparent);color:#ffb4b4;font-size:13px;line-height:1.4}.auth-submit{height:44px;margin-top:4px;border:0;border-radius:10px;background:var(--crimson);color:var(--on-accent);font-size:15px;font-weight:800;cursor:pointer;transition:background .15s ease,transform .1s ease}.auth-submit:hover:not(:disabled){background:var(--login-btn-hover)}.auth-submit:active:not(:disabled){transform:translateY(1px)}.auth-submit:disabled{opacity:.65;cursor:wait}.auth-legal{margin:28px 0 0;font-size:12px;color:var(--faint);text-align:center}@media(max-width:860px){.auth-page{grid-template-columns:1fr;grid-template-rows:auto 1fr}.auth-brand{border-right:0;border-bottom:1px solid var(--line);padding:28px 24px 24px;align-items:flex-start}.auth-brand-inner{width:100%}.auth-tagline{font-size:15px;margin-bottom:20px}.auth-features{flex-direction:row;flex-wrap:wrap;gap:10px}.auth-features li{font-size:13px;flex:1 1 200px}.auth-mark--compact{display:flex}.auth-panel{padding:24px 20px 32px;justify-content:flex-start}}@media(max-width:520px){.auth-features{display:none}.auth-tagline{margin-bottom:0;font-size:14px}.auth-head h1{font-size:22px}}.chat-layout{flex:1;min-height:0;display:grid;grid-template-columns:1fr;background:var(--bg)}.chat-layout.with-thread{grid-template-columns:1fr min(340px,38vw)}.chat-main,.chat-thread{min-width:0;min-height:0;display:flex;flex-direction:column}.chat-thread{border-left:1px solid rgba(0,0,0,.28);background:var(--bg-mid)}.chat-thread-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:12px 12px 10px;box-shadow:0 1px #00000040}.chat-thread-head strong{display:block;font-size:13px}.chat-thread-head span{display:block;margin-top:2px;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.chat-thread-origin{padding:10px 12px 12px;border-bottom:1px solid rgba(255,255,255,.06)}.chat-thread-origin strong{font-size:12px}.chat-thread-origin p{margin:4px 0 0;font-size:13px;color:var(--muted);white-space:pre-wrap;word-break:break-word}.chat-log{flex:1;min-height:0;min-width:0;overflow:auto;overflow-x:hidden;list-style:none;margin:0;padding:16px 16px 8px;display:flex;flex-direction:column;gap:12px}.chat-empty{flex:1;display:grid;place-content:center;text-align:center;color:var(--muted)}.chat-msg{display:flex;gap:10px;align-items:flex-start}.chat-msg-body{min-width:0;flex:1}.chat-msg-body header{display:flex;align-items:baseline;gap:8px}.chat-msg-body header strong{font-size:14px}.chat-msg-body time{font-size:11px;color:var(--faint)}.chat-msg-body p{margin:4px 0 0;white-space:pre-wrap;word-break:break-word;line-height:1.4}.chat-msg-actions{margin-top:4px}.chat-msg-actions button{border:0;background:transparent;color:var(--faint);font-size:12px;font-weight:700;padding:4px 0;display:inline-flex;align-items:center;gap:6px}.chat-msg-actions button:hover{color:var(--crimson)}.chat-msg-actions svg{width:14px;height:14px}.chat-composer{display:flex;gap:8px;align-items:flex-end;min-width:0;width:100%;box-sizing:border-box}.composer-field{flex:1;min-width:0;position:relative}.composer-field textarea,.chat-composer textarea,.message-editor-shell{width:100%;min-height:42px;max-height:120px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:var(--bg-dark);color:var(--text);font:inherit;line-height:1.35;display:block;box-sizing:border-box}.message-editor-shell{overflow:hidden}.message-editor-shell .ProseMirror,.message-editor{width:100%;min-height:42px;max-height:120px;overflow-y:auto;padding:10px 12px;outline:none;box-sizing:border-box}.message-editor-shell .ProseMirror:focus{outline:none}.message-editor-shell .ProseMirror p.is-editor-empty:first-child:before{color:var(--faint);content:attr(data-placeholder);float:left;height:0;pointer-events:none}.message-editor-shell .ProseMirror>:first-child{margin-top:0}.message-editor-shell .ProseMirror>:last-child{margin-bottom:0}.message-editor-shell .ProseMirror p,.message-editor-shell .ProseMirror ul,.message-editor-shell .ProseMirror ol,.message-editor-shell .ProseMirror blockquote,.message-editor-shell .ProseMirror pre,.message-editor-shell .ProseMirror table{margin:.2em 0}.message-editor-shell .ProseMirror h1,.message-editor-shell .ProseMirror h2,.message-editor-shell .ProseMirror h3{margin:.25em 0;line-height:1.25;font-weight:800}.message-editor-shell .ProseMirror ul,.message-editor-shell .ProseMirror ol{padding-left:1.25em}.message-editor-shell .ProseMirror blockquote{border-left:3px solid var(--line);padding-left:8px;color:var(--muted)}.message-editor-shell .ProseMirror code{background:color-mix(in srgb,var(--bg-mid) 80%,transparent);padding:1px 4px;border-radius:4px;font-size:.92em}.message-editor-shell .ProseMirror pre{padding:8px 10px;border-radius:8px;background:color-mix(in srgb,var(--bg-mid) 80%,transparent);overflow-x:auto}.message-editor-shell .ProseMirror pre code{padding:0;background:transparent}.message-editor-shell .ProseMirror a{color:var(--crimson);text-decoration:underline}.message-editor-shell .ProseMirror table{border-collapse:collapse;width:100%}.message-editor-shell .ProseMirror th,.message-editor-shell .ProseMirror td{border:1px solid var(--line);padding:2px 6px}.message-editor-shell .ProseMirror img,.message-editor-shell .ProseMirror .message-editor-image{display:block;max-width:min(320px,100%);max-height:180px;margin:4px 0;border-radius:8px;object-fit:contain}.composer-field textarea,.chat-composer textarea{resize:none;overflow:hidden;padding:10px 12px}.composer-tool{width:42px;height:42px;flex-shrink:0;border:0;border-radius:10px;background:var(--bg-hover);color:var(--muted);display:grid;place-items:center;cursor:pointer}.composer-tool:hover{color:var(--text);background:color-mix(in srgb,var(--bg-hover) 80%,var(--crimson))}.composer-emoji{position:relative;flex-shrink:0}.chat-composer button[type=submit],.composer-send{width:42px;height:42px;min-width:42px;flex-shrink:0;padding:0;border:0;border-radius:10px;background:var(--crimson);color:var(--on-accent);font-weight:800;display:grid;place-items:center;cursor:pointer}.chat-composer button[type=submit]:disabled,.composer-send:disabled{opacity:.4;cursor:not-allowed}.sidebar-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:8px 8px 4px}.sidebar-tabs button{height:32px;border:0;border-radius:8px;background:transparent;color:var(--faint);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.sidebar-tabs button.active,.sidebar-tabs button:hover{background:var(--bg-hover);color:var(--text)}.channel .hash-icon{width:16px;height:16px;flex-shrink:0;opacity:.8}@media(max-width:800px){.chat-layout.with-thread{grid-template-columns:1fr}.chat-thread{border-left:0;border-top:1px solid rgba(0,0,0,.28);max-height:46vh}}@media(max-width:1100px){.app.is-compact{grid-template-columns:1fr;grid-template-rows:1fr auto;height:100dvh}.app.is-compact .stage{grid-row:1;grid-column:1;min-height:0;width:100%}.app.is-compact .member-rail{grid-row:1;grid-column:1}.app.is-compact.nav-collapsed .server-rail,.app.is-compact.nav-collapsed .channels{display:flex}.app.is-compact .server-rail{position:fixed;left:0;right:0;top:auto;bottom:0;width:100%;height:calc(56px + env(safe-area-inset-bottom,0px));flex-direction:row;align-items:center;padding:6px 10px calc(6px + env(safe-area-inset-bottom,0px));z-index:60;border-top:1px solid var(--line);background:var(--bg-dark);grid-row:2;box-sizing:border-box}.app.is-compact .server-rail-top{flex-direction:row;align-items:center;overflow-x:auto;overflow-y:hidden;flex:1;min-width:0;gap:8px;padding:0;-webkit-overflow-scrolling:touch;scrollbar-width:none}.app.is-compact .server-rail-top::-webkit-scrollbar{display:none}.app.is-compact .server-rail-brand{display:none}.app.is-compact .server-rail-bottom{display:flex;flex-shrink:0;margin-top:0;padding-top:0}.app.is-compact .server-icon-wrap{width:44px;height:44px;flex-shrink:0}.app.is-compact .server-icon-wrap .server-indicator{display:none}.app.is-compact .server-icon,.app.is-compact .server-icon-wrap .server-icon,.app.is-compact .server-rail-bottom .server-icon{width:44px;height:44px;min-width:44px;min-height:44px;aspect-ratio:1;border-radius:16px;font-size:14px}.app.is-compact .server-add{width:44px;height:44px;min-width:44px;font-size:22px;line-height:1}.app.is-compact .server-icon-img{width:100%;height:100%;object-fit:cover}.app.is-compact .stage{grid-column:1;min-height:0;padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}.app.is-compact .stage-with-members{grid-template-columns:1fr}.app.is-compact .stage-header{position:sticky;top:0;z-index:20;padding:6px 8px;padding-top:calc(6px + env(safe-area-inset-top,0px));min-height:48px;background:var(--bg-mid);box-shadow:0 1px #00000059;flex-wrap:nowrap;gap:6px}.app.is-compact .stage-title-wrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.app.is-compact .stage-header h2.stage-title{font-size:15px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app.is-compact .stage-subtitle{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app.is-compact .mobile-header-btn{width:40px;height:40px;flex-shrink:0;border:0;border-radius:10px;background:transparent;color:var(--text);display:grid;place-items:center}.app.is-compact .mobile-header-btn:active{background:var(--bg-hover)}.app.is-compact .mobile-header-btn.active{color:var(--crimson);background:color-mix(in srgb,var(--crimson) 14%,transparent)}.app.is-compact .channels{position:fixed;left:0;top:0;bottom:calc(56px + env(safe-area-inset-bottom,0px));width:100%;max-height:none;z-index:55;transform:translate(-105%);transition:transform .22s cubic-bezier(.32,.72,0,1);box-shadow:none;border-right:none}.app.is-compact.compact-channels-open .channels{transform:translate(0)}.app.is-compact .server-header{padding-top:calc(8px + env(safe-area-inset-top,0px));min-height:52px}.app.is-compact .server-header .nav-toggle{display:none}.app.is-compact .channel-scroll-wrap{flex:1}.app.is-compact .channel,.app.is-compact .channel-head,.app.is-compact .channel-row-main,.app.is-compact .member-row{min-height:44px}.app.is-compact .channel{padding:10px 12px;font-size:15px}.app.is-compact .sidebar-footer{border-top:1px solid var(--line);background:var(--bg-mid)}.app.is-compact .user-chip{min-height:48px}.app.is-compact .member-rail{display:flex;flex-direction:column;position:fixed;top:0;right:0;bottom:calc(56px + env(safe-area-inset-bottom,0px));width:min(300px,100vw);max-width:100%;z-index:55;transform:translate(105%);transition:transform .22s cubic-bezier(.32,.72,0,1);box-shadow:-8px 0 32px #00000059;padding-top:calc(12px + env(safe-area-inset-top,0px))}.app.is-compact.compact-members-open .member-rail{transform:translate(0)}.app.is-compact .member-rail-head{display:flex;align-items:center;justify-content:space-between;padding:0 12px 10px;margin-bottom:4px;border-bottom:1px solid var(--line)}.app.is-compact .member-rail-head strong{font-size:16px}.app.is-compact .mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;bottom:calc(56px + env(safe-area-inset-bottom,0px));z-index:54;background:#0000008c;animation:mobile-fade-in .2s ease}@keyframes mobile-fade-in{0%{opacity:0}to{opacity:1}}.app.is-compact .chat-log{padding:8px 10px 12px}.app.is-compact .chat-msg-wrap .msg-toolbar{opacity:1;transform:none}.app.is-compact .chat-msg{gap:10px}.app.is-compact .chat-msg-wrap{padding:2px 0}.app.is-compact .composer-wrap{background:var(--bg-mid);border-top:1px solid var(--line)}.app.is-compact .shell-footer-inner.chat-composer{padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px));gap:6px;max-width:100%}.app.is-compact .composer-field{flex:1;min-width:0}.app.is-compact .composer-field textarea,.app.is-compact .chat-composer textarea,.app.is-compact .message-editor-shell .ProseMirror{font-size:16px;min-height:40px;width:100%;box-sizing:border-box}.app.is-compact .composer-tool,.app.is-compact .chat-composer .composer-tool,.app.is-compact .chat-composer button[type=submit],.app.is-compact .composer-send{width:40px;height:40px;min-width:40px;padding:0}.app.is-compact .composer-preview{padding:8px 10px 0}.app.is-compact .chat-thread{position:fixed;top:0;right:0;bottom:0;left:0;bottom:calc(56px + env(safe-area-inset-bottom,0px));z-index:45;border-left:0}.app.is-compact .chat-thread-head{padding-top:calc(8px + env(safe-area-inset-top,0px));min-height:48px}.app.is-compact .voice-float-dock{left:8px!important;right:8px;width:auto!important;max-width:none;bottom:calc(60px + env(safe-area-inset-bottom,0px))!important}.app.is-compact .voice-connected{border-radius:0}.app.is-compact .live-banner{flex-direction:column;align-items:stretch;gap:10px;padding:10px 12px}.app.is-compact .live-banner-actions{justify-content:flex-start}.app.is-compact .stage-dock{bottom:calc(64px + env(safe-area-inset-bottom,0px));left:8px;right:8px;transform:translate(0) translateY(10px);width:auto}.app.is-compact .stage-dock.is-visible{transform:translate(0)}.app.is-compact .controls{flex-wrap:wrap;justify-content:center;gap:8px}.app.is-compact .controls .ctrl{width:44px;height:44px}.app.is-compact .emoji-picker.floating{left:8px!important;right:8px;width:auto!important;max-width:none;bottom:calc(120px + env(safe-area-inset-bottom,0px))!important}.app.is-compact .toast-banner{bottom:calc(64px + env(safe-area-inset-bottom,0px))}.app.is-compact .collapsed-voice-bar{display:none}.app.is-compact .empty{padding:24px 20px;text-align:center}.app.is-compact .mobile-empty-btn{margin-top:16px;width:100%;max-width:280px;min-height:44px}.app.is-compact .file-dropzone-overlay{top:4px;right:4px;bottom:4px;left:4px;bottom:calc(56px + env(safe-area-inset-bottom,0px))}.app.is-compact .modal-card{width:min(100%,calc(100vw - 16px));max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px));margin:8px}.app.is-compact .roles-layout{grid-template-columns:1fr}.app.is-compact .server-settings-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}}@media(min-width:1101px)and (max-width:1280px){.app:not(.is-compact){grid-template-columns:84px var(--channels-width, 220px) minmax(0,1fr)}.app:not(.is-compact) .server-rail{width:84px}.app:not(.is-compact) .server-icon-wrap,.app:not(.is-compact) .server-icon{width:52px;height:52px}.member-rail{width:200px}.stage-with-members{grid-template-columns:minmax(0,1fr) 200px}}:root{--green: #23a559;--red: #ed4245;--red-hot: #ed4245;--red-deep: #a12828;--line: rgba(255, 255, 255, .08);--scrollbar-size: 8px;--scrollbar-radius: 999px;--scrollbar-border: 2px;--scrollbar-track: transparent;--scrollbar-thumb: color-mix(in srgb, var(--muted) 28%, var(--bg-dark));--scrollbar-thumb-hover: color-mix(in srgb, var(--crimson) 45%, var(--muted));--scrollbar-thumb-active: var(--crimson)}:root,[data-theme=custom]{--nights: #111214;--brand-color: #ebc400;--crimson: #ebc400;--green: #ebc400;--bg: #111214;--bg-dark: #111214;--bg-mid: #2e2e30;--bg-hover: #454648;--text: #f3f3f5;--on-accent: #1e1f22;--muted: #b4b4b4;--faint: #8c8c8c;--blurple: #ebc400;--login-from: #ebc400;--login-to: #111214;--accent-glow: color-mix(in srgb, #ebc400 35%, transparent);--login-btn-hover: #edcb1f;--line: rgba(255, 255, 255, .08)}[data-theme=kiwi]{--nights: #222222;--brand-color: #89e900;--crimson: #89e900;--green: #89e900;--bg: #2a2a2a;--bg-dark: #222222;--bg-mid: #2e2e2e;--bg-hover: #3a3a3a;--text: #f3f3f3;--on-accent: #222222;--muted: #b4b4b4;--faint: #8c8c8c;--blurple: #89e900;--login-from: #89e900;--login-to: #222222;--accent-glow: rgba(137, 233, 0, .35);--login-btn-hover: #9af21a}[data-theme=discord]{--nights: #1e1f22;--brand-color: #5865f2;--crimson: #5865f2;--green: #5865f2;--bg: #313338;--bg-dark: #1e1f22;--bg-mid: #2b2d31;--bg-hover: #35373c;--text: #f2f3f5;--on-accent: #ffffff;--muted: #b5bac1;--faint: #949ba4;--blurple: #5865f2;--login-from: #5865f2;--login-to: #1e1f22;--accent-glow: rgba(88, 101, 242, .4);--login-btn-hover: #4752c4}[data-theme=crimson]{--nights: #02182b;--brand-color: #d7263d;--crimson: #d7263d;--green: #d7263d;--bg: #04233b;--bg-dark: #02182b;--bg-mid: #052844;--bg-hover: #0a3a5c;--text: #f4f7fa;--on-accent: #02182b;--muted: #9eb6c8;--faint: #6d8aa0;--blurple: #d7263d;--login-from: #d7263d;--login-to: #02182b;--accent-glow: rgba(215, 38, 61, .35);--login-btn-hover: #e23a50}[data-theme=neon]{--nights: #120018;--brand-color: #ff4ec8;--crimson: #ff4ec8;--green: #ff4ec8;--bg: #1a0828;--bg-dark: #110016;--bg-mid: #251033;--bg-hover: #3d1854;--text: #fce7ff;--on-accent: #16041f;--muted: #d4b3e8;--faint: #9a7ab0;--blurple: #ff4ec8;--login-from: #ff4ec8;--login-to: #120018;--accent-glow: rgba(255, 78, 200, .45);--login-btn-hover: #e879f9}[data-theme=custom][data-surface=light]{--red-hot: #d83c3c;--scrollbar-thumb: color-mix(in srgb, var(--muted) 40%, var(--bg-dark));--scrollbar-thumb-hover: color-mix(in srgb, var(--crimson) 50%, var(--muted))}[data-theme=custom][data-surface=light] .msg-toolbar{box-shadow:0 4px 14px #0000001a}[data-theme=custom][data-surface=light] .settings-menu-pop,[data-theme=custom][data-surface=light] .modal{box-shadow:0 12px 32px #00000024}[data-theme=custom][data-surface=light] .status-dot{border-color:var(--bg-mid)}[data-theme=custom][data-surface=light] .chat-msg:hover{background:color-mix(in srgb,var(--bg-hover) 88%,var(--text))}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;width:100%;max-width:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:gg sans,Noto Sans,Helvetica Neue,Helvetica,Arial,sans-serif}button,input{font-family:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--crimson);outline-offset:2px}*,html,body{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}*::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}*::-webkit-scrollbar-track{background:var(--scrollbar-track)}*::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--scrollbar-radius);border:var(--scrollbar-border) solid transparent;background-clip:padding-box;min-height:40px;min-width:40px}*::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}*::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-active)}*::-webkit-scrollbar-corner{background:var(--scrollbar-track)}@media(prefers-reduced-motion:reduce){*::-webkit-scrollbar-thumb{transition:none}}@media(prefers-reduced-motion:no-preference){*::-webkit-scrollbar-thumb{transition:background-color .15s ease}}.quack-logo{display:block;flex-shrink:0;color:var(--brand-color, var(--crimson))}.quack-logo--login{margin:0 auto}.theme-preview-brand .quack-logo{width:100%;height:100%}
