:root{color-scheme:light dark;--bg-rail: #e3e5e8;--bg-side: #f2f3f5;--bg-main: #ffffff;--bg-input: #ebedef;--bg-hover: rgba(116, 127, 141, .16);--bg-active: rgba(116, 127, 141, .28);--text: #2e3338;--text-strong: #060607;--muted: #5c6370;--accent: #5865f2;--accent-hover: #4752c4;--accent-text: #ffffff;--danger: #da373c;--success: #23a55a;--border: #e1e2e6;--shadow: 0 8px 24px rgba(0, 0, 0, .18);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px}@media(prefers-color-scheme:dark){:root{--bg-rail: #1e1f22;--bg-side: #2b2d31;--bg-main: #313338;--bg-input: #1e1f22;--bg-hover: rgba(78, 80, 88, .3);--bg-active: rgba(78, 80, 88, .6);--text: #dbdee1;--text-strong: #f2f3f5;--muted: #949ba4;--border: #3f4147;--shadow: 0 8px 24px rgba(0, 0, 0, .5)}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg-main);color:var(--text)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit}h1,h2,h3{color:var(--text-strong)}hr{border:0;border-top:1px solid var(--border);margin:20px 0}.muted{color:var(--muted)}.small{font-size:.85rem}.strong{font-weight:600;color:var(--text-strong)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.error{color:var(--danger);margin:8px 0}.success{color:var(--success);margin:8px 0}.pad{padding:8px 16px}.row{display:flex;gap:8px;align-items:center}.stack{display:flex;flex-direction:column;gap:8px}.grow{flex:1}.btn{border:0;border-radius:4px;padding:10px 16px;font-weight:600;cursor:pointer;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-text)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--bg-active)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-link{background:none;color:var(--accent);padding:0}.btn.wide{width:100%;margin-top:8px}.icon-btn{background:none;border:0;cursor:pointer;color:var(--muted);padding:4px 6px;border-radius:4px;font-size:1rem;line-height:1}.icon-btn:hover{color:var(--text-strong);background:var(--bg-hover)}.icon-btn.small{font-size:.85rem;padding:2px 4px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--muted)}.req{color:var(--danger)}.field-hint{font-size:.8rem;color:var(--muted)}input,select{width:100%;font:inherit;color:var(--text-strong);background:var(--bg-input);border:1px solid transparent;border-radius:4px;padding:10px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px}.auth-page{min-height:100%;display:grid;place-items:center;padding:24px 16px;background:linear-gradient(135deg,#5865f2,#3c45a5)}.auth-card{width:100%;max-width:440px;background:var(--bg-main);border-radius:8px;padding:32px;box-shadow:var(--shadow)}.auth-card h1{margin:0 0 8px;font-size:1.5rem;text-align:center}.auth-card>.muted{text-align:center;margin-top:0}.dev-hint{background:var(--bg-side);border-radius:4px;padding:10px 12px;font-size:.85rem}.invite-guild{display:flex;align-items:center;gap:16px;margin:16px 0}.invite-name{font-size:1.25rem;font-weight:700;color:var(--text-strong)}.splash{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px}.shell{display:grid;grid-template-columns:72px 240px minmax(0,1fr) 240px;height:100%}.guild-rail{background:var(--bg-rail);display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 0;overflow-y:auto}.rail-sep{width:32px;height:2px;background:var(--bg-active);border-radius:1px}.guild-icon{width:48px;height:48px;flex:none;border-radius:50%;border:0;background:var(--bg-main);color:var(--text-strong);font-weight:600;cursor:pointer;display:grid;place-items:center;transition:border-radius .15s,background .15s}.guild-icon:hover,.guild-icon.active{border-radius:16px;background:var(--accent);color:var(--accent-text)}.guild-icon.add{color:var(--success);font-size:1.4rem}.guild-icon.add:hover{background:var(--success);color:#fff}.guild-icon.large{width:64px;height:64px;border-radius:20px;background:var(--accent);color:var(--accent-text);font-size:1.3rem;cursor:default}.sidebar{background:var(--bg-side);display:flex;flex-direction:column;min-height:0}.sidebar-header,.channel-header{height:48px;flex:none;display:flex;align-items:center;gap:8px;padding:0 12px 0 16px;font-weight:600;color:var(--text-strong);border-bottom:1px solid var(--border)}.sidebar-header>.truncate{flex:1}.header-actions{display:flex;gap:2px;flex:none}.channel-list{flex:1;overflow-y:auto;padding:8px}.channel-group{margin-bottom:12px}.category{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--muted);padding:6px 4px 4px 8px;margin:0}.channel{width:100%;display:flex;align-items:center;gap:6px;padding:6px 8px;border:0;border-radius:4px;background:none;color:var(--muted);cursor:pointer;text-align:left}.channel:hover{background:var(--bg-hover);color:var(--text)}.channel.active{background:var(--bg-active);color:var(--text-strong)}.channel-icon{width:20px;text-align:center;flex:none;color:var(--muted)}.add-channel{margin-top:4px}.user-panel{flex:none;background:var(--bg-rail);padding:8px}.user-button{width:100%;display:flex;align-items:center;gap:8px;background:none;border:0;border-radius:4px;padding:4px;cursor:pointer;text-align:left}.user-button:hover{background:var(--bg-hover)}.user-names{display:flex;flex-direction:column;min-width:0}.avatar{width:32px;height:32px;flex:none;border-radius:50%;background:var(--accent);color:var(--accent-text);display:grid;place-items:center;font-size:.8rem;font-weight:700}.avatar.small{width:28px;height:28px;font-size:.7rem}.main{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg-main)}.topic{color:var(--muted);font-weight:400;padding-left:12px;margin-left:4px;border-left:1px solid var(--border);flex:1}.channel-header .icon-btn{margin-left:auto}.channel-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;justify-content:flex-end;padding:16px}.channel-welcome h2{margin:8px 0}.welcome-icon{width:64px;height:64px;border-radius:50%;background:var(--bg-active);display:grid;place-items:center;font-size:2rem;color:var(--text-strong)}.empty{flex:1;display:grid;place-items:center;padding:24px}.home-card{max-width:420px;text-align:center}.home-card .row{justify-content:center;flex-wrap:wrap}.member-list{background:var(--bg-side);overflow-y:auto;padding:16px 8px}.member{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:4px}.member:hover{background:var(--bg-hover)}.owner-badge{font-size:.8rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:grid;place-items:center;padding:16px;z-index:10}.modal{width:100%;max-width:480px;max-height:calc(100vh - 32px);overflow-y:auto;background:var(--bg-main);border-radius:8px;padding:20px 24px 24px;box-shadow:var(--shadow)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-header h2{margin:0;font-size:1.25rem}.modal-header .icon-btn{font-size:1.5rem}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:8px}.danger-title{color:var(--danger);margin:0 0 4px;font-size:1rem}.kind-picker{border:0;padding:0;margin:0 0 16px;display:flex;gap:8px}.kind-option{flex:1;display:flex;align-items:center;gap:8px;padding:10px;border-radius:4px;background:var(--bg-side);cursor:pointer}.kind-option.selected{outline:2px solid var(--accent)}.kind-option input{width:auto}@media(max-width:900px){.shell{grid-template-columns:72px 220px minmax(0,1fr)}.member-list{display:none}}@media(max-width:600px){.shell{grid-template-columns:64px minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.guild-rail{grid-row:1 / span 2}.sidebar{grid-column:2;grid-row:1}.main{grid-column:2;grid-row:2}}:root{--status-online: #23a55a;--status-idle: #f0b232;--status-dnd: #f23f43;--status-offline: #80848e;--mention-bg: rgba(250, 168, 26, .1);--mention-bar: #f0b232;--pill-bg: rgba(88, 101, 242, .15);--code-bg: rgba(116, 127, 141, .16)}.center{text-align:center}.link-btn{background:none;border:0;padding:0;color:var(--accent);cursor:pointer}.link-btn:hover{text-decoration:underline}.icon-btn.danger{color:var(--danger)}.shell{position:relative}.conn-banner{position:absolute;top:0;left:0;right:0;z-index:5;background:var(--status-idle);color:#1e1f22;text-align:center;font-size:.85rem;font-weight:600;padding:4px}.guild-slot{position:relative;display:flex;align-items:center;justify-content:center;width:100%}.unread-pill{position:absolute;left:0;width:4px;height:8px;border-radius:0 4px 4px 0;background:var(--text-strong)}.badge{min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--danger);color:#fff;font-size:.7rem;font-weight:700;line-height:16px;text-align:center;margin-left:auto;flex:none}.guild-badge{position:absolute;right:8px;bottom:-2px;border:3px solid var(--bg-rail);box-sizing:content-box}.channel.unread{color:var(--text-strong);font-weight:600}.avatar-wrap{position:relative;display:inline-flex;flex:none}.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--status-offline);flex:none}.avatar-wrap .status-dot{position:absolute;right:-2px;bottom:-2px;border:2px solid var(--bg-side)}.status-online{background:var(--status-online)}.status-idle{background:var(--status-idle)}.status-dnd{background:var(--status-dnd)}.member.offline{opacity:.45}.member-list .category{margin-top:12px}.user-panel{display:flex;align-items:center;gap:4px;margin-top:auto}.user-panel .user-button{flex:1;min-width:0}.status-picker{position:relative}.status-menu{position:absolute;bottom:36px;right:0;list-style:none;margin:0;padding:6px;background:var(--bg-main);border-radius:6px;box-shadow:var(--shadow);z-index:6;min-width:180px}.status-menu button{width:100%;display:flex;align-items:center;gap:8px;padding:8px;border:0;border-radius:4px;background:none;cursor:pointer;text-align:left}.status-menu button:hover,.status-menu button[aria-checked=true]{background:var(--bg-hover)}.message-scroller{flex:1;min-height:0;overflow-y:auto;overflow-anchor:none}.message-list{display:flex;flex-direction:column;justify-content:flex-end;min-height:100%;padding:16px 0 8px}.message-list .channel-welcome{padding:0 16px 16px}.message{position:relative;display:flex;gap:16px;padding:2px 48px 2px 16px;margin-top:16px}.message.grouped{margin-top:0}.message:hover{background:var(--bg-hover)}.message.highlight{background:var(--mention-bg);box-shadow:inset 2px 0 0 var(--mention-bar)}.message.pending .message-content{opacity:.55}.message.failed .message-content{color:var(--danger);opacity:1}.message-gutter{width:44px;flex:none;display:flex;justify-content:center}.message-gutter .avatar{width:40px;height:40px}.hover-time{visibility:hidden;font-size:.65rem;color:var(--muted);white-space:nowrap;line-height:21px}.message:hover .hover-time{visibility:visible}.message-body{flex:1;min-width:0}.message-head{display:flex;align-items:baseline;gap:8px}.author{font-weight:600;color:var(--text-strong)}.timestamp{font-size:.75rem;color:var(--muted)}.message-content{line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}.edited{font-size:.7rem;color:var(--muted)}.message-actions{position:absolute;top:-12px;right:16px;display:none;align-items:center;gap:2px;padding:2px;border-radius:6px;background:var(--bg-main);box-shadow:0 0 0 1px var(--border)}.message:hover .message-actions{display:flex}.pending-error{font-size:.8rem;color:var(--danger)}.edit-box textarea,.composer textarea{width:100%;resize:none;font:inherit;color:var(--text-strong);background:var(--bg-input);border:0;border-radius:8px;padding:11px 14px;line-height:1.4;max-height:240px}.edit-box textarea:focus,.composer textarea:focus{outline:none}.edit-box{margin:4px 0}.day-divider,.new-divider{display:flex;align-items:center;margin:16px 16px 0;font-size:.75rem;font-weight:600;color:var(--muted)}.day-divider:before,.day-divider:after,.new-divider:before,.new-divider:after{content:"";flex:1;height:1px;background:var(--border)}.day-divider span,.new-divider span{padding:0 8px}.new-divider{color:var(--danger)}.new-divider:before,.new-divider:after{background:var(--danger)}.blocked-message{padding:4px 16px 4px 72px;font-style:italic}.composer{position:relative;padding:0 16px;flex:none}.char-count{position:absolute;right:28px;bottom:8px;font-size:.75rem}.typing-line{height:24px;flex:none;padding:2px 16px;font-size:.8rem;color:var(--text);display:flex;align-items:center;gap:6px}.typing-dots{display:inline-flex;gap:3px}.typing-dots i{width:5px;height:5px;border-radius:50%;background:var(--muted);animation:typing 1.2s infinite ease-in-out}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){.typing-dots i{animation:none}}.mention-popup{position:absolute;left:16px;right:16px;bottom:calc(100% + 4px);list-style:none;margin:0;padding:6px;background:var(--bg-side);border-radius:8px;box-shadow:var(--shadow);z-index:4}.mention-popup li{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer}.mention-popup li.active{background:var(--bg-active)}.md-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em;background:var(--code-bg);border-radius:4px;padding:1px 4px}.md-codeblock{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;background:var(--bg-side);border:1px solid var(--border);border-radius:6px;padding:8px 10px;margin:4px 0;white-space:pre-wrap;overflow-x:auto}.md-quote{margin:2px 0;padding-left:10px;border-left:4px solid var(--bg-active)}.mention{background:var(--pill-bg);color:var(--accent);border-radius:3px;padding:0 2px;font-weight:500}.mention-me{background:var(--mention-bg);color:var(--mention-bar)}.voice-users{list-style:none;margin:0 0 4px;padding:0 0 0 30px}.voice-user{display:flex;align-items:center;gap:6px;padding:3px 6px;border-radius:4px;color:var(--muted);font-size:.875rem;min-width:0}.voice-user>.truncate{flex:1}.avatar.tiny{width:22px;height:22px;font-size:.6rem}.avatar.large{width:72px;height:72px;font-size:1.4rem}.avatar.speaking,.tile.speaking{box-shadow:0 0 0 2px var(--success)}.voice-flags{display:inline-flex;align-items:center;gap:2px;flex:none;font-size:.75rem}.live-badge{background:var(--danger);color:#fff;font-size:.6rem;font-weight:700;border-radius:4px;padding:1px 4px}.voice-panel{flex:none;background:var(--bg-rail);border-bottom:1px solid var(--border);padding:8px 8px 6px 12px}.voice-panel-row{display:flex;align-items:center;gap:8px}.voice-panel-info{display:flex;flex-direction:column;flex:1;min-width:0}.voice-status{font-weight:700;font-size:.85rem}.voice-status.ok{color:var(--success)}.voice-status.pending{color:#f0b232}.audio-unblock{width:100%;margin-top:6px}.voice-error{flex:none;display:flex;align-items:flex-start;gap:6px;margin:0 8px 8px;padding:8px 10px;border-radius:6px;background:color-mix(in srgb,var(--danger) 15%,transparent);color:var(--text);font-size:.85rem}.voice-error>span{flex:1}.voice-lobby .btn{margin-top:12px}.lobby-list{list-style:none;padding:0;margin:12px auto 0;display:inline-flex;flex-direction:column;gap:6px;text-align:left}.lobby-list li{display:flex;align-items:center;gap:8px}.call{flex:1;min-height:0;display:flex;flex-direction:column;background:#000;position:relative}.call-banner{background:#f0b232;color:#000;text-align:center;padding:4px;font-size:.85rem}.call-grid{flex:1;min-height:0;display:grid;gap:8px;padding:8px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-auto-rows:minmax(140px,1fr);overflow-y:auto}.call-grid.n1{grid-template-columns:1fr}.call-grid.n2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.call-focus{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px;padding:8px}.focus-main{flex:1;min-height:0;display:flex}.focus-main .tile{flex:1}.focus-strip{flex:none;display:flex;gap:8px;overflow-x:auto;height:120px}.focus-strip .tile{flex:none;width:200px}.tile{position:relative;display:grid;place-items:center;min-width:0;min-height:0;overflow:hidden;border:0;border-radius:8px;background:#2b2d31;color:#fff;cursor:pointer;padding:0}.tile-video{width:100%;height:100%;object-fit:cover;background:#000}.tile.screen .tile-video{object-fit:contain}.tile-video.mirror{transform:scaleX(-1)}.tile-label{position:absolute;left:8px;bottom:8px;max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#0009;border-radius:4px;padding:2px 8px;font-size:.8rem}.call-controls{flex:none;display:flex;justify-content:center;gap:12px;padding:12px}.ctl{width:48px;height:48px;border-radius:50%;border:0;background:#3a3c42;color:#fff;font-size:1.2rem;cursor:pointer}.ctl:hover{background:#4a4d55}.ctl.on{background:#fff;color:#000}.ctl.off{background:#4a4d55;box-shadow:inset 0 0 0 2px var(--danger)}.ctl.leave{background:var(--danger)}@media(max-width:700px){.call-controls{gap:6px}.ctl{width:42px;height:42px}}button.member{width:100%;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.member-wrap{position:relative}.modal.wide{max-width:880px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin:-4px 0 16px;overflow-x:auto}.tab{border:0;background:none;color:var(--muted);font:inherit;padding:8px 12px;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}.tab:hover{color:var(--text)}.tab.active{color:var(--text-strong);border-bottom-color:var(--accent)}.roles-tab{display:grid;grid-template-columns:220px 1fr;gap:16px;min-height:360px}.role-list{display:flex;flex-direction:column;gap:8px;min-width:0}.role-list ul{list-style:none;margin:0;padding:0}.role-list li{display:flex;align-items:center;border-radius:4px}.role-list li.active,.role-list li:hover{background:var(--bg-hover)}.role-pick{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border:0;background:none;color:inherit;font:inherit;padding:6px 8px;cursor:pointer;text-align:left}.role-move{display:flex;flex:none}.role-dot{width:10px;height:10px;border-radius:50%;flex:none;display:inline-block}.role-editor{min-width:0}.role-editor h3{margin-top:0}.role-options{flex-wrap:wrap;gap:16px;margin-bottom:8px}.field.inline{flex-direction:row;align-items:center;margin:0}input[type=color]{width:44px;height:32px;padding:2px}.check{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.check input{width:auto}.perm-list section{margin-bottom:8px}.perm-list .category{padding-left:0}.perm-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border)}.perm-row input[type=checkbox]{width:18px;height:18px;flex:none}.perm-row.locked{opacity:.55}.perm-text{display:flex;flex-direction:column;gap:2px}.tri{display:inline-flex;flex:none;border:1px solid var(--border);border-radius:6px;overflow:hidden}.tri-btn{width:32px;height:28px;border:0;background:none;color:var(--muted);cursor:pointer;font-weight:700}.tri-btn+.tri-btn{border-left:1px solid var(--border)}.tri-btn.deny.on{background:var(--danger);color:#fff}.tri-btn.inherit.on{background:var(--bg-active);color:var(--text-strong)}.tri-btn.allow.on{background:var(--success);color:#fff}.tri-btn:disabled{cursor:not-allowed}.sticky-actions{position:sticky;bottom:-24px;background:var(--bg-main);padding:12px 0}.role-chips{display:flex;flex-wrap:wrap;gap:4px;flex:1;min-width:0}.role-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:10px;background:var(--bg-input);font-size:.75rem}.role-toggles{display:flex;flex-direction:column;gap:6px;padding:8px 0 4px}.member-admin,.ban-list,.audit-list{list-style:none;margin:0;padding:0}.member-admin-row,.ban-row,.audit-row{padding:10px 0;border-bottom:1px solid var(--border)}.member-admin-row>.row{flex-wrap:wrap}.member-admin-name{display:flex;flex-direction:column;min-width:140px}.reason-prompt{margin-top:8px}.push-right{margin-left:auto}.channel-header .header-actions .icon-btn{margin-left:0}.lock-badge{font-size:.9rem;padding:0 4px}.composer.locked .composer-locked{background:var(--bg-input);color:var(--muted);border-radius:8px;padding:12px 16px}.voice-user{position:relative;padding:0}.voice-user-button{width:100%;display:flex;align-items:center;gap:6px;padding:3px 6px;border:0;border-radius:4px;background:none;color:inherit;font:inherit;text-align:left;min-width:0}.voice-user-button:not(:disabled){cursor:pointer}.voice-user-button:not(:disabled):hover{background:var(--bg-hover)}.voice-user-button>.truncate{flex:1}.server-muted{filter:drop-shadow(0 0 1px var(--danger))}.voice-menu{position:absolute;left:24px;top:100%;z-index:8;min-width:200px;background:var(--bg-main);border-radius:6px;box-shadow:var(--shadow);padding:6px;display:flex;flex-direction:column}.voice-menu button{border:0;background:none;color:var(--text);font:inherit;text-align:left;padding:8px;border-radius:4px;cursor:pointer}.voice-menu button:hover{background:var(--bg-hover)}.voice-menu button.danger{color:var(--danger)}.ctl:disabled{opacity:.5;cursor:not-allowed}@media(max-width:700px){.roles-tab{grid-template-columns:1fr}.member-popover{left:8px;right:8px!important;width:auto}}.modal-header{position:sticky;top:-20px;z-index:3;background:var(--bg-main);margin-top:-20px;padding-top:20px}.shell.no-aside{grid-template-columns:72px 240px minmax(0,1fr)}.conversation{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.drop-hint{position:absolute;top:8px;right:8px;bottom:8px;left:8px;z-index:5;display:grid;place-items:center;border:2px dashed var(--accent);border-radius:12px;background:#5865f21f;color:var(--text-strong);font-weight:600;pointer-events:none}.message{flex-direction:column;gap:2px}.message-main{display:flex;gap:16px;min-width:0}.message.flash{animation:message-flash 2s ease-out}@keyframes message-flash{0%,40%{background:#5865f240}to{background:transparent}}.reply-preview{display:flex;align-items:center;gap:6px;min-width:0;margin-left:22px;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.85rem;text-align:left;cursor:pointer}.reply-preview.deleted{cursor:default}.reply-spine{width:32px;height:10px;margin-top:8px;flex:none;border-left:2px solid var(--border);border-top:2px solid var(--border);border-top-left-radius:6px}.reply-author{color:var(--text-strong);font-weight:600;white-space:nowrap}.reply-text{min-width:0;white-space:nowrap}.reply-preview:hover .reply-text{color:var(--text)}.pending-files{margin-top:2px}.attachments{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:4px}.attachment-image{display:block;padding:0;border:0;border-radius:8px;overflow:hidden;background:var(--bg-hover);cursor:zoom-in;max-width:min(400px,100%)}.attachment-image img{display:block;max-width:100%;max-height:300px;object-fit:contain}.attachment-video{display:flex;flex-direction:column;gap:4px}.attachment-video video{max-width:min(400px,100%);max-height:300px;border-radius:8px;background:#000}.attachment-file{display:flex;align-items:center;gap:10px;max-width:min(420px,100%);padding:10px 12px;border-radius:8px;background:var(--bg-side);border:1px solid var(--border)}.file-icon{font-size:1.8rem;line-height:1}.file-info{display:flex;flex-direction:column;min-width:0;gap:2px}.file-info audio{margin-top:4px;max-width:300px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#000000d9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px}.lightbox img{max-width:100%;max-height:calc(100% - 48px);object-fit:contain}.lightbox-bar{display:flex;align-items:center;gap:16px}.lightbox-bar a,.lightbox-bar .icon-btn{color:#fff}.composer-box{display:flex;align-items:flex-end;gap:4px;background:var(--bg-input);border-radius:8px;padding:0 6px}.composer-box.replying{border-top-left-radius:0;border-top-right-radius:0}.composer .composer-box textarea{flex:1;background:transparent;padding-left:6px;padding-right:6px}.composer-attach,.composer-emoji{flex:none;height:44px;font-size:1.1rem}.reply-bar{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:.85rem;color:var(--muted);background:var(--bg-side);border-radius:8px 8px 0 0}.reply-bar .truncate{flex:1}.composer-hint{padding:4px 4px 0}.upload-tray{list-style:none;margin:0 0 6px;padding:8px;display:flex;gap:8px;overflow-x:auto;background:var(--bg-side);border-radius:8px}.upload{position:relative;flex:none;width:160px;display:flex;flex-direction:column;gap:4px;padding:8px;border-radius:6px;background:var(--bg-main)}.upload img{width:100%;height:90px;object-fit:cover;border-radius:4px}.upload .file-icon{height:90px;display:grid;place-items:center}.upload.failed{outline:1px solid var(--danger)}.upload .icon-btn{position:absolute;top:4px;right:4px;background:var(--bg-main)}.upload-name{font-size:.85rem}.upload-bar{height:4px;border-radius:2px;background:var(--bg-active);overflow:hidden}.upload-bar span{display:block;height:100%;background:var(--accent);transition:width .15s}.emoji-suggestion{font-size:1.2rem;width:28px;text-align:center}.emoji-picker{position:fixed;z-index:40;width:352px;height:420px;display:flex;flex-direction:column;background:var(--bg-side);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.emoji-search{margin:8px;padding:8px 10px;border:0;border-radius:6px;background:var(--bg-input);color:var(--text-strong);font:inherit}.emoji-tabs{display:flex;justify-content:space-between;padding:0 8px 4px;border-bottom:1px solid var(--border)}.emoji-tab{border:0;background:none;font-size:1.1rem;padding:4px;border-radius:4px;cursor:pointer}.emoji-tab:hover{background:var(--bg-hover)}.emoji-grid-scroll{flex:1;overflow-y:auto;padding:0 8px 8px}.emoji-group-title{margin:10px 2px 4px;font-size:.7rem;text-transform:uppercase;letter-spacing:.02em;color:var(--muted)}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr)}.emoji-cell{border:0;background:none;font-size:1.5rem;line-height:1;padding:5px 0;border-radius:4px;cursor:pointer}.emoji-cell:hover{background:var(--bg-hover)}.reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.reaction{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:8px;border:1px solid transparent;background:var(--bg-hover);color:var(--text);font:inherit;font-size:.85rem;cursor:pointer}.reaction:hover{border-color:var(--border)}.reaction.me{background:var(--pill-bg);border-color:var(--accent)}.reaction:disabled{cursor:default;opacity:.7}.reaction-emoji{font-size:1rem}.reaction-count{font-weight:600;min-width:8px}.reaction.add{color:var(--muted);visibility:hidden}.message:hover .reaction.add{visibility:visible}.embeds{display:flex;flex-direction:column;gap:6px;margin-top:4px}.embed{display:flex;gap:12px;max-width:520px;padding:10px 12px;border-radius:4px;border-left:4px solid var(--border);background:var(--bg-side)}.embed-body{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.embed-title{font-weight:600;overflow-wrap:anywhere}.embed-description{margin:0;font-size:.9rem;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.embed-thumb{width:80px;height:80px;flex:none;object-fit:cover;border-radius:4px}.embed-large-image{margin-top:4px;padding:0;border:0;background:none;cursor:zoom-in;align-self:flex-start}.embed-large-image img{display:block;max-width:100%;max-height:300px;border-radius:4px}.search-box input{width:180px;padding:4px 8px;border:0;border-radius:4px;background:var(--bg-input);color:var(--text-strong);font:inherit;font-size:.85rem;transition:width .15s}.search-box input:focus{width:240px;outline:none}.search-panel{background:var(--bg-side);display:flex;flex-direction:column;min-height:0;border-left:1px solid var(--border)}.shell:has(.search-panel){grid-template-columns:72px 240px minmax(0,1fr) minmax(300px,400px)}.search-panel-header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border)}.search-panel-form{flex:1}.search-panel-form input,.search-filters select{width:100%;padding:6px 8px;border:0;border-radius:4px;background:var(--bg-input);color:var(--text-strong);font:inherit}.search-filters{display:flex;gap:8px;padding:8px 12px}.search-results{flex:1;overflow-y:auto;padding:0 8px 12px}.search-result{display:block;width:100%;margin-bottom:8px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg-main);color:var(--text);font:inherit;text-align:left;cursor:pointer}.search-result:hover{border-color:var(--accent)}.search-result-head{display:flex;align-items:center;gap:6px;margin-bottom:4px}.search-result-head .timestamp{margin-left:auto}.search-result-body{white-space:pre-wrap;overflow-wrap:anywhere;max-height:8em;overflow:hidden}.search-pages{display:flex;align-items:center;justify-content:space-between;gap:8px}.friends-header{gap:12px}.friends-tabs{display:flex;gap:4px;align-items:center;overflow-x:auto}.friends-tabs .tab{border-radius:4px;border-bottom:0;padding:4px 10px}.friends-tabs .tab.active{background:var(--bg-active)}.friends-tabs .tab .badge{margin-left:6px}.add-friend-tab{color:var(--success)!important}.add-friend-tab.active{background:var(--success)!important;color:#fff!important}.friends-body{flex:1;overflow-y:auto;padding:16px 24px}.welcome-card{margin:8px auto 24px}.friend-list{list-style:none;margin:0;padding:0}.friend-row{display:flex;align-items:center;gap:12px;padding:10px 8px;border-top:1px solid var(--border);border-radius:6px}.friend-row:hover{background:var(--bg-hover)}.friend-names{display:flex;flex-direction:column;min-width:0;flex:1}.friend-actions{display:flex;gap:6px}.friend-actions .icon-btn{width:36px;height:36px;border-radius:50%;background:var(--bg-side)}.icon-btn.success{color:var(--success)}.small-btn{padding:4px 10px;font-size:.85rem}.add-friend{max-width:640px}.add-friend-row{display:flex;gap:8px;padding:8px;border-radius:8px;background:var(--bg-input)}.add-friend-row input{flex:1;border:0;background:transparent;color:var(--text-strong);font:inherit;padding:6px}.add-friend-row input:focus{outline:none}.dm-link{padding-top:4px;padding-bottom:4px}.dm-text{display:flex;flex-direction:column;min-width:0;flex:1;text-align:left}.avatar.group{background:var(--success)}.call-badge{font-size:.8rem}.dm-title{border:0;background:none;color:var(--text-strong);font:inherit;font-weight:600;padding:2px 4px;border-radius:4px;max-width:50%}.dm-title.editable{cursor:text}.dm-title.editable:hover{background:var(--bg-hover)}.dm-title:disabled{cursor:default}.rename-form input{font:inherit;font-weight:600;padding:2px 6px;border:1px solid var(--accent);border-radius:4px;background:var(--bg-input);color:var(--text-strong)}.dm-call{height:45%;min-height:220px;display:flex;flex:none}.dm-call-banner{display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--bg-side);border-bottom:1px solid var(--border)}.dm-call-banner>span:first-child{flex:1}.call-people{display:flex;gap:4px}.call.compact .call-grid{grid-auto-rows:minmax(100px,1fr)}.popover-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 4px}.pick-list{list-style:none;margin:8px 0;padding:0;max-height:300px;overflow-y:auto}.pick-list .check{padding:6px 4px}input.full{width:100%;padding:8px 10px;border:0;border-radius:4px;background:var(--bg-input);color:var(--text-strong);font:inherit}.incoming-calls{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:60;display:flex;flex-direction:column;gap:8px}.incoming-call{display:flex;align-items:center;gap:12px;min-width:320px;padding:12px 16px;border-radius:12px;background:var(--bg-rail);box-shadow:var(--shadow)}.incoming-text{display:flex;flex-direction:column;flex:1}.incoming-actions{display:flex;gap:8px}.avatar.ringing{animation:ring 1.2s infinite ease-in-out}@keyframes ring{0%,to{box-shadow:0 0 #23a55a99}50%{box-shadow:0 0 0 8px #23a55a00}}@media(prefers-reduced-motion:reduce){.avatar.ringing,.message.flash{animation:none}}@media(max-width:900px){.shell:has(.search-panel),.shell.no-aside{grid-template-columns:72px 220px minmax(0,1fr)}.search-panel{position:fixed;right:0;top:0;bottom:0;width:min(400px,100%);z-index:30}}@media(max-width:600px){.shell:has(.search-panel),.shell.no-aside{grid-template-columns:64px minmax(0,1fr)}.search-box input,.search-box input:focus{width:120px}}.avatar.has-image{background:var(--bg-active);overflow:hidden}.avatar img{width:100%;height:100%;display:block;object-fit:cover;border-radius:50%;-webkit-user-select:none;user-select:none}.avatar.xl{width:80px;height:80px;font-size:1.6rem}.avatar-button{border:0;padding:0;background:none;border-radius:50%;cursor:pointer;display:inline-flex}.avatar-button:active{transform:translateY(1px)}button.author{border:0;padding:0;background:none;font:inherit;font-weight:600;cursor:pointer}button.author:hover{text-decoration:underline}.message-content .mention[data-user-id]{cursor:pointer}.message-content .mention[data-user-id]:hover{background:var(--accent);color:var(--accent-text)}.welcome-icon .avatar{width:100%;height:100%}.dm-title:not(.editable){cursor:pointer}.dm-title:not(.editable):hover{text-decoration:underline}.profile-popover{position:fixed;z-index:60;max-height:calc(100vh - 16px);overflow-y:auto;background:var(--bg-side);border-radius:8px;box-shadow:var(--shadow);color:var(--text)}.profile-banner{height:60px}.profile-top{position:relative;height:48px}.profile-avatar{position:absolute;left:12px;top:-40px;border-radius:50%;border:6px solid var(--bg-side);background:var(--bg-side)}.profile-avatar .status-dot{width:18px;height:18px;right:2px;bottom:2px;border:3px solid var(--bg-side)}.profile-more{position:absolute;right:8px;top:6px}.profile-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:1;min-width:190px;list-style:none;margin:0;padding:6px;background:var(--bg-main);border-radius:6px;box-shadow:var(--shadow)}.profile-menu button{width:100%;text-align:left;border:0;background:none;color:var(--text);font:inherit;font-size:.9rem;padding:6px 8px;border-radius:4px;cursor:pointer}.profile-menu button:hover{background:var(--accent);color:var(--accent-text)}.profile-menu button.danger{color:var(--danger)}.profile-menu button.danger:hover{background:var(--danger);color:#fff}.profile-body{padding:0 16px 16px}.profile-names{background:var(--bg-main);border-radius:8px;padding:10px 12px}.profile-name{margin:0;font-size:1.2rem;color:var(--text-strong);overflow-wrap:anywhere}.profile-username{font-size:.875rem;overflow-wrap:anywhere}.profile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 4px}.profile-actions .btn{flex:1 1 auto}.profile-friends-badge{font-size:.85rem;color:var(--success);font-weight:600;padding:0 4px}.profile-blocked{flex-basis:100%}.profile-section h4{margin:14px 0 6px;font-size:.72rem;text-transform:uppercase;letter-spacing:.02em;color:var(--text-strong)}.profile-bio{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.9rem;line-height:1.4}.profile-since{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.875rem}.profile-since>span{display:inline-flex;align-items:center;gap:6px}.since-icon{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--accent);color:var(--accent-text);font-size:.6rem;font-weight:700}.since-icon.guild{background:var(--bg-active);color:var(--text-strong)}.role-editor summary{cursor:pointer;color:var(--muted);margin-top:6px}.profile-mutual{margin-top:10px;border-top:1px solid var(--border);padding-top:8px}.profile-mutual summary{cursor:pointer;font-size:.85rem;font-weight:600;color:var(--text-strong)}.profile-mutual ul{list-style:none;margin:6px 0 0;padding:0}.profile-mutual-item{display:flex;align-items:center;gap:8px;width:100%;border:0;background:none;color:var(--text);font:inherit;font-size:.9rem;text-align:left;padding:5px 6px;border-radius:4px;cursor:pointer}.profile-mutual-item:hover{background:var(--bg-hover)}.guild-avatar{border-radius:6px}.profile-confirm{margin-top:10px;padding:10px;border-radius:6px;background:var(--bg-main)}.profile-confirm p{margin:0 0 8px}.profile-moderation{margin-top:14px}.friend-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0;border:0;padding:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.profile-editor-top{display:flex;align-items:center;gap:16px;margin-bottom:8px}.profile-editor-picture{display:flex;flex-direction:column;gap:6px;min-width:0}.profile-editor-picture .row{gap:8px}.bio-input{width:100%;font:inherit;color:var(--text-strong);background:var(--bg-input);border:1px solid transparent;border-radius:4px;padding:10px;resize:vertical;min-height:80px}.bio-input:focus{outline:2px solid var(--accent);outline-offset:-1px}.field-hint.error{color:var(--danger)}.cropper{display:flex;flex-direction:column;align-items:center;gap:12px}.crop-area{position:relative;overflow:hidden;border-radius:8px;background:#000;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.crop-area:active{cursor:grabbing}.crop-area img{position:absolute;left:0;top:0;max-width:none;pointer-events:none}.crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at center,transparent 0 calc(50% - 1px),rgba(0,0,0,.55) 50%);border-radius:8px}.crop-mask:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:inset 0 0 0 2px #fffc}.crop-zoom{display:flex;align-items:center;gap:10px;width:240px}.cropper .modal-actions{align-self:stretch}.attachment-image.loading{width:300px;height:200px;display:grid;place-items:center;background:var(--bg-hover);border-radius:8px}.crop-status{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff}.emoji.custom{width:1.375em;height:1.375em;object-fit:contain;vertical-align:-.3em;margin:0 .05em}.emoji.custom.jumbo{width:48px;height:48px;vertical-align:middle}.jumbo-emoji{font-size:2.6rem;line-height:1.2}.emoji-fallback{color:var(--muted)}.emoji-cell.custom{display:grid;place-items:center}.emoji-cell.custom .emoji.custom{width:28px;height:28px;margin:0;vertical-align:middle}.emoji-suggestion .emoji.custom{width:22px;height:22px;margin:0;vertical-align:middle}.mention-popup .push-right{margin-left:auto}.reaction-emoji .emoji.custom{width:18px;height:18px;margin:0;vertical-align:-4px}.emoji-tab.server{font-size:.7rem;font-weight:700;width:28px;height:28px;border-radius:50%;background:var(--bg-active);color:var(--text-strong);padding:0}.emoji-settings-bar{margin:8px 0 12px}.emoji-list{list-style:none;margin:0 0 12px;padding:0}.emoji-row{display:flex;align-items:center;gap:10px;padding:6px 4px;border-bottom:1px solid var(--border)}.emoji-row-image{width:32px;height:32px;display:grid;place-items:center;flex:none}.emoji-row-image .emoji.custom{width:32px;height:32px;margin:0}.emoji-row.pending .emoji-row-image{border-radius:6px;background:var(--bg-hover)}.emoji-row-name-input{width:200px;padding:6px 8px}.emoji-row-meta{flex:1}.encryption-notice{color:var(--muted);font-style:italic}.encryption-notice.untrusted-device,.encryption-notice.identity-changed,.encryption-notice.invalid{color:var(--danger)}.trust-badge{margin-left:4px;font-size:.8em;cursor:help}.warning{color:#b7791f}@media(prefers-color-scheme:dark){.warning{color:#f0b232}}.verified-badge{color:var(--success)}.section-title{margin:16px 0 8px;font-size:.8rem;text-transform:uppercase;letter-spacing:.02em;color:var(--muted)}.sas-emoji{list-style:none;margin:12px 0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}@media(max-width:480px){.sas-emoji{grid-template-columns:repeat(4,minmax(0,1fr))}}.sas-emoji li{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 2px;border-radius:8px;background:var(--bg-hover);text-align:center;min-width:0}.sas-symbol{font-size:2rem;line-height:1}.sas-name{color:var(--muted);font-size:.65rem;line-height:1.2;overflow-wrap:break-word;max-width:100%}.recovery-key-box{display:flex;flex-direction:column;gap:8px;margin:12px 0}.recovery-key{display:block;padding:12px;border-radius:8px;background:var(--code-bg);font-size:1rem;letter-spacing:.04em;word-spacing:.3em;line-height:1.6;-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.recovery-input{width:100%;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem;padding:8px;border-radius:4px;border:1px solid var(--border);background:var(--bg-input);color:var(--text)}.checkbox-row{display:flex;align-items:center;gap:8px;margin:12px 0;cursor:pointer;text-align:left}.checkbox-row input[type=checkbox]{width:18px;height:18px;margin:0;padding:0;flex:none}.verify-options{display:flex;flex-direction:column;gap:8px;margin:12px 0}.verify-options .muted{margin:0 0 8px}.verify-footer{justify-content:space-between;flex-wrap:wrap;margin-top:16px}.device-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.device-row{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;background:var(--bg-hover)}.device-name{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px}.device-name>.small:last-child,.device-meta{flex-basis:100%}.device-badge{padding:0 6px;border-radius:4px;background:var(--pill-bg);color:var(--accent);font-size:.75rem;font-weight:600}.trust-section .warning,.trust-section .verified-badge{margin:4px 0}.attachment-loading{padding:8px}.file-name{max-width:100%;text-align:left}.video-placeholder{width:min(400px,100%);aspect-ratio:16 / 9;display:grid;place-items:center;border:0;border-radius:8px;background:var(--bg-active);color:var(--text-strong);font-size:2rem;cursor:pointer}.embed-image{cursor:zoom-in}.embed-site{margin-bottom:2px}.search-note{margin:0}.waiting-key{cursor:help}.server-list{margin-top:16px}.server-list ul{list-style:none;margin:4px 0 0;padding:0}.server-row{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-radius:6px}.server-row:hover{background:var(--bg-hover)}.server-line{margin:0 0 8px}.shell-wrap{display:flex;flex-direction:column;height:100%}.shell-wrap>.shell{flex:1;min-height:0;height:auto}.notify-banner{flex:none;display:flex;align-items:center;gap:12px;padding:6px 12px;background:var(--accent);color:var(--accent-text);font-size:.9rem}.notify-banner>span{flex:1;min-width:0}.notify-banner-btn{padding:4px 12px;background:var(--accent-text);color:var(--accent)}.notify-banner .icon-btn{color:var(--accent-text)}.toasts{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;gap:8px;width:max-content;max-width:calc(100vw - 32px)}.toast{display:flex;align-items:center;gap:12px;padding:8px 8px 8px 14px;border-radius:8px;background:var(--bg-rail);color:var(--text-strong);box-shadow:var(--shadow);font-size:.9rem}.toast>span{min-width:0;overflow-wrap:anywhere}.toast .link-btn{font-weight:600;white-space:nowrap}.notify-banner.update-banner{background:var(--success)}.update-banner .notify-banner-btn{color:var(--success)}.invite-app-link{margin:16px 0 0;text-align:center}.report-form textarea,.admin-page textarea{width:100%;font:inherit;color:var(--text-strong);background:var(--bg-input);border:1px solid transparent;border-radius:4px;padding:10px;resize:vertical}.report-reasons{border:0;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:4px}.report-reasons legend{margin-bottom:6px}.report-reason,.admin-mode{display:flex;gap:8px;align-items:baseline;padding:8px 10px;border-radius:6px;background:var(--bg-input);cursor:pointer}.report-reason.checked,.admin-mode.checked{outline:2px solid var(--accent);outline-offset:-2px}.report-reason input,.admin-mode input,.report-include input,.admin-code-form input[type=checkbox]{width:auto;flex:none}.report-form.compact .report-reason{padding:4px 8px}.report-include{margin-bottom:8px}.report-include p{margin:4px 0}.report-quote,.admin-quote blockquote{margin:6px 0;padding:8px 12px;border-left:3px solid var(--border);background:var(--bg-side);border-radius:0 4px 4px 0;white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;overflow-y:auto;font-size:.9rem}.guild-icon.admin{color:var(--muted);font-size:1.3rem}.guild-icon.admin:hover{background:var(--bg-active);color:var(--text-strong)}.guild-icon.small{width:36px;height:36px;border-radius:12px;background:var(--bg-active);font-size:.8rem;cursor:default}.admin-page{min-height:100%;overflow-y:auto;height:100%;background:var(--bg-main)}.admin-header,.admin-tabs,.admin-main{max-width:1000px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}.admin-header{display:flex;align-items:baseline;gap:16px;padding-top:max(16px,env(safe-area-inset-top))}.admin-header h1{margin:8px 0;flex:1;font-size:1.5rem}.admin-tabs{margin-top:0}.admin-tabs .badge{margin-left:6px;display:inline-block}.admin-main{padding-bottom:max(32px,env(safe-area-inset-bottom))}.admin-denied{max-width:480px;margin:15vh auto;padding:0 24px}.admin-card{background:var(--bg-side);border-radius:8px;padding:16px}.admin-card h2{font-size:1.05rem;margin:0 0 12px}.admin-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.admin-stat{background:var(--bg-side);border-radius:8px;padding:14px 16px}.admin-stat-value{font-size:1.6rem;font-weight:700;color:var(--text-strong)}.admin-stat-label{color:var(--muted);font-size:.85rem}.admin-services{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.admin-service{display:grid;grid-template-columns:12px 170px 100px 1fr;gap:8px;align-items:baseline}.admin-service-detail{overflow-wrap:anywhere}.admin-service.down .admin-service-state{color:var(--danger);font-weight:600}.admin-service.off .admin-service-state{color:var(--muted)}.admin-dot{width:10px;height:10px;border-radius:50%;display:inline-block;background:var(--muted)}.admin-dot.ok{background:var(--success)}.admin-dot.down{background:var(--danger)}.admin-health{margin:0;padding:10px 12px;border-radius:6px;border-left:4px solid var(--muted);background:var(--bg-main)}.admin-health.ok{border-left-color:var(--success)}.admin-health.warn{border-left-color:#f0b232}.admin-health.bad{border-left-color:var(--danger)}.admin-facts{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:0}.admin-facts dt{color:var(--muted)}.admin-facts dd{margin:0;overflow-wrap:anywhere}.admin-toolbar{flex-wrap:wrap}.admin-toolbar input[type=search]{flex:1 1 220px;width:auto}.admin-toolbar select{width:auto}.chip{border:0;border-radius:16px;padding:6px 14px;background:var(--bg-input);cursor:pointer;font-weight:600}.chip.active{background:var(--accent);color:var(--accent-text)}.admin-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.admin-item{background:var(--bg-side);border-radius:8px}.admin-item-head{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border:0;background:none;text-align:left;cursor:pointer;border-radius:8px}.admin-item-head.static{cursor:default}button.admin-item-head:hover{background:var(--bg-hover)}.admin-item-names{display:flex;flex-direction:column;min-width:0;flex:1}.admin-item-when{white-space:nowrap}.admin-badges{display:flex;gap:4px;flex-wrap:wrap}.admin-badge{font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:10px;background:var(--bg-active);white-space:nowrap}.admin-badge.admin{background:var(--accent);color:var(--accent-text)}.admin-badge.suspended,.admin-badge.reason-illegal,.admin-badge.reason-harassment{background:var(--danger);color:#fff}.admin-badge.unverified,.admin-badge.reason-spam{background:#f0b232;color:#1e1f22}.admin-detail,.admin-report{padding:0 12px 12px}.admin-report{padding-top:12px}.admin-report p{margin:6px 0}.admin-report-head{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.admin-report-head .admin-item-when{margin-left:auto}.admin-quote{margin:8px 0}.admin-quote figcaption{margin-top:2px}.admin-note{margin:8px 0}.admin-actions{flex-wrap:wrap;margin-top:12px}.admin-confirm{margin-top:12px;padding:12px;border-radius:6px;background:var(--bg-main);border:1px solid var(--border)}.admin-confirm p{margin-top:0}.admin-modes{display:flex;flex-direction:column;gap:6px}.admin-code-form{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:8px;align-items:end}.admin-code-form .field{margin-bottom:0}.admin-codes{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.admin-code{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:6px;background:var(--bg-main)}.admin-code.spent{opacity:.6}.admin-code-value{font-size:1rem;letter-spacing:.06em;font-weight:700}.admin-log{list-style:none;margin:0;padding:0}.admin-log li{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}@media(max-width:700px){.admin-header,.admin-tabs,.admin-main{padding-left:12px;padding-right:12px}.admin-service{grid-template-columns:12px 1fr auto}.admin-service-detail{grid-column:2 / -1}.admin-item-head{flex-wrap:wrap}.admin-item-when{width:100%;padding-left:52px}.admin-code-form{grid-template-columns:1fr 1fr}.admin-code-form .field:first-child{grid-column:1 / -1}.admin-code{flex-wrap:wrap}.admin-log li{grid-template-columns:1fr;gap:2px}}
