:root{color-scheme:dark;--bg-app: #1a1a1e;--bg-secondary: #121214;--bg-tertiary: #0c0c0e;--bg-surface: #232428;--bg-floating: #101011;--bg-chat-input: #242429;--bg-modifier-hover: rgba(255, 255, 255, .045);--bg-modifier-active: rgba(255, 255, 255, .08);--bg-modifier-selected: rgba(255, 255, 255, .11);--border-subtle: rgba(255, 255, 255, .06);--backdrop: rgba(0, 0, 0, .7);--text-normal: #dbdee1;--text-muted: #949ba4;--text-faint: #6d6f78;--header-primary: #f2f3f5;--header-secondary: #b5bac1;--text-link: #00a8fc;--text-on-brand: #ffffff;--brand: #5865f2;--brand-hover: #4752c4;--brand-active: #3c45a5;--green: #23a559;--green-hover: #1a8748;--yellow: #f0b232;--red: #f23f43;--red-hover: #da373c;--status-offline: #80848e;--radius-xs: 3px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-round: 9999px;--shadow-low: 0 1px 4px rgba(0, 0, 0, .3);--shadow-medium: 0 4px 12px rgba(0, 0, 0, .35);--shadow-high: 0 8px 24px rgba(0, 0, 0, .45);--font-sans: "gg sans", "Segoe UI", "Helvetica Neue", system-ui, sans-serif;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 20px}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:var(--font-size-md);font-weight:500;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:background-color .15s,color .15s,opacity .15s;white-space:nowrap}.ui-btn:disabled{opacity:.5;cursor:not-allowed}.ui-btn--sm{padding:4px 12px;height:28px;font-size:var(--font-size-sm)}.ui-btn--md{padding:8px 16px;height:38px}.ui-btn--lg{padding:10px 20px;height:44px;font-size:var(--font-size-lg)}.ui-btn--primary{background:var(--brand);color:var(--text-on-brand)}.ui-btn--primary:hover:not(:disabled){background:var(--brand-hover)}.ui-btn--secondary{background:var(--bg-modifier-active);color:var(--text-normal)}.ui-btn--secondary:hover:not(:disabled){background:var(--bg-modifier-selected)}.ui-btn--danger{background:var(--red);color:var(--text-on-brand)}.ui-btn--danger:hover:not(:disabled){background:var(--red-hover)}.ui-btn--ghost{background:transparent;color:var(--text-muted)}.ui-btn--ghost:hover:not(:disabled){background:var(--bg-modifier-hover);color:var(--text-normal)}.ui-btn--link{background:none;color:var(--text-link);padding:0;height:auto;font-size:var(--font-size-sm)}.ui-btn--link:hover:not(:disabled){text-decoration:underline}.ui-btn--full{width:100%}.ui-icon-btn{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;transition:background-color .15s,color .15s}.ui-icon-btn--sm{width:22px;height:22px}.ui-icon-btn--md{width:32px;height:32px}.ui-icon-btn:hover:not(:disabled){color:var(--text-normal);background:var(--bg-modifier-hover)}.ui-icon-btn:disabled{opacity:.5;cursor:not-allowed}.ui-icon-btn--active{background:var(--bg-modifier-selected);color:var(--header-primary)}.ui-icon-btn--danger:hover:not(:disabled){color:var(--red);background:var(--bg-modifier-hover)}.ui-icon-btn--solid-danger{background:var(--red);color:var(--text-on-brand)}.ui-icon-btn--solid-danger:hover:not(:disabled){background:var(--red-hover);color:var(--text-on-brand)}.ui-field{display:flex;flex-direction:column;gap:8px}.ui-field-label{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--header-secondary)}.ui-field-label .ui-field-error{text-transform:none;font-weight:400;font-style:italic;color:var(--red)}.ui-input{font:inherit;font-size:var(--font-size-md);padding:10px;border-radius:var(--radius-sm);border:none;outline:none;background:var(--bg-tertiary);color:var(--text-normal);transition:box-shadow .15s}.ui-input:focus{box-shadow:0 0 0 2px var(--brand)}.ui-input::placeholder{color:var(--text-faint)}.ui-tooltip{background:var(--bg-floating);color:var(--header-primary);font-size:var(--font-size-sm);font-weight:600;padding:6px 10px;border-radius:var(--radius-sm);box-shadow:var(--shadow-medium);max-width:220px;transition:opacity .1s,transform .1s}.ui-tooltip[data-starting-style],.ui-tooltip[data-ending-style]{opacity:0;transform:scale(.96)}.ui-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop);transition:opacity .15s}.ui-dialog-backdrop[data-starting-style],.ui-dialog-backdrop[data-ending-style]{opacity:0}.ui-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-app);border-radius:var(--radius-md);box-shadow:var(--shadow-high);width:440px;max-width:calc(100vw - 32px);max-height:85vh;display:flex;flex-direction:column;transition:opacity .15s,transform .15s}.ui-dialog[data-starting-style],.ui-dialog[data-ending-style]{opacity:0;transform:translate(-50%,-50%) scale(.95)}.ui-dialog--wide{width:560px}.ui-dialog-header{padding:16px 16px 0;display:flex;align-items:center;justify-content:space-between;gap:8px}.ui-dialog-title{font-size:var(--font-size-xl);font-weight:700;color:var(--header-primary)}.ui-dialog-body{padding:16px;overflow-y:auto;color:var(--text-normal);font-size:var(--font-size-md);line-height:1.4}.ui-dialog-footer{padding:16px;background:var(--bg-secondary);border-radius:0 0 var(--radius-md) var(--radius-md);display:flex;justify-content:flex-end;gap:8px}.ui-menu{background:var(--bg-floating);border-radius:var(--radius-sm);box-shadow:var(--shadow-high);padding:6px;min-width:200px;transition:opacity .1s,transform .1s;transform-origin:var(--transform-origin)}.ui-menu[data-starting-style],.ui-menu[data-ending-style]{opacity:0;transform:scale(.95)}.ui-menu-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-xs);font-size:var(--font-size-md);color:var(--header-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;outline:none}.ui-menu-item[data-highlighted]{background:var(--brand);color:var(--text-on-brand)}.ui-menu-item--danger{color:var(--red)}.ui-menu-item--danger[data-highlighted]{background:var(--red);color:var(--text-on-brand)}.ui-menu-separator{height:1px;margin:4px 8px;background:var(--bg-modifier-active)}.ui-avatar{position:relative;border-radius:var(--radius-round);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;-webkit-user-select:none;user-select:none}.ui-avatar-status{position:absolute;right:-2px;bottom:-2px;width:10px;height:10px;border-radius:var(--radius-round);border:3px solid var(--bg-secondary);background:var(--status-offline);box-sizing:content-box}.ui-avatar-status--online{background:var(--green)}.ui-switch{width:40px;height:24px;border-radius:var(--radius-round);background:var(--status-offline);border:none;padding:3px;cursor:pointer;display:inline-flex;align-items:center;transition:background-color .15s;flex-shrink:0}.ui-switch[data-checked]{background:var(--green)}.ui-switch:disabled{opacity:.5;cursor:not-allowed}.ui-switch-thumb{width:18px;height:18px;border-radius:var(--radius-round);background:#fff;transition:transform .15s}.ui-switch-thumb[data-checked]{transform:translate(16px)}.ui-toast-viewport{position:fixed;top:16px;right:16px;display:flex;flex-direction:column;gap:8px;z-index:100;width:340px}.ui-toast{background:var(--bg-floating);border-left:4px solid var(--brand);border-radius:var(--radius-sm);box-shadow:var(--shadow-high);padding:12px 36px 12px 12px;position:relative;transition:opacity .15s,transform .15s}.ui-toast[data-starting-style],.ui-toast[data-ending-style]{opacity:0;transform:translate(24px)}.ui-toast--error{border-left-color:var(--red)}.ui-toast--success{border-left-color:var(--green)}.ui-toast-title{font-size:var(--font-size-md);font-weight:600;color:var(--header-primary)}.ui-toast-description{font-size:var(--font-size-sm);color:var(--text-muted);margin-top:2px}.ui-toast-close{position:absolute;top:8px;right:8px}.ui-popover{background:var(--bg-floating);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-high);padding:12px;transition:opacity .1s,transform .1s;transform-origin:var(--transform-origin)}.ui-popover[data-starting-style],.ui-popover[data-ending-style]{opacity:0;transform:scale(.95)}.ui-slider-control{display:flex;align-items:center;width:100%;height:16px;cursor:pointer}.ui-slider-track{position:relative;width:100%;height:4px;border-radius:var(--radius-round);background:var(--bg-modifier-active)}.ui-slider-indicator{position:absolute;height:100%;border-radius:var(--radius-round);background:var(--brand)}.ui-slider-thumb{position:absolute;width:12px;height:12px;border-radius:var(--radius-round);background:#fff;outline:none}.ui-slider-thumb:focus-visible{box-shadow:0 0 0 3px #5865f280}.ui-spin{animation:ui-spin .8s linear infinite}@keyframes ui-spin{to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);font-size:var(--font-size-md);background:var(--bg-app);color:var(--text-normal);overflow:hidden}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-round)}::-webkit-scrollbar-track{background:transparent}.center-screen{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);color:var(--text-muted)}.login-card{background:var(--bg-secondary);padding:32px;border-radius:var(--radius-md);box-shadow:var(--shadow-high);display:flex;flex-direction:column;gap:16px;width:420px;max-width:calc(100vw - 32px)}.login-card h1{text-align:center;color:var(--header-primary);font-size:24px}.login-subtitle{text-align:center;color:var(--text-muted);margin-top:-12px}.verify-notice{align-items:center;text-align:center;color:var(--text-muted)}.verify-notice svg{color:var(--green)}.verify-notice h1{font-size:var(--font-size-xl)}.layout{position:relative;display:flex;height:100vh;background:var(--bg-tertiary)}.workspace{flex:1;display:flex;min-width:0;margin:8px 8px 8px 0;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-app)}.main-column{flex:1;display:flex;flex-direction:column;min-width:0}.guild-bar{width:72px;background:transparent;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 0;overflow-y:auto;scrollbar-width:none;flex-shrink:0}.guild-bar::-webkit-scrollbar{display:none}.guild-item{position:relative;display:flex;justify-content:center;width:100%;flex-shrink:0}.guild-pill{position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:0;border-radius:0 4px 4px 0;background:var(--header-primary);transition:height .15s}.guild-pill.selected{height:40px}.guild-pill.unread{height:8px}.guild-item:hover .guild-pill:not(.selected){height:20px}.guild-icon{width:48px;height:48px;border-radius:50%;background:var(--bg-surface);color:var(--text-normal);font-size:var(--font-size-lg);font-weight:600;display:flex;align-items:center;justify-content:center;transition:border-radius .15s,background-color .15s,color .15s}.guild-badge{position:absolute;right:8px;bottom:-2px;min-width:18px;height:18px;padding:0 4px;border-radius:var(--radius-round);background:var(--red);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;border:3px solid var(--bg-tertiary);box-sizing:content-box;pointer-events:none}.guild-icon:hover,.guild-icon.active{border-radius:16px;background:var(--brand);color:#fff}.guild-icon.action{color:var(--green)}.guild-icon.action:hover{background:var(--green);color:#fff}.guild-separator{width:32px;height:2px;background:var(--bg-modifier-active);border-radius:1px;flex-shrink:0}.channel-list{position:relative;width:248px;background:var(--bg-secondary);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;flex-shrink:0}.guild-header-row{height:48px;padding:0 8px 0 12px;border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:center;gap:4px;flex-shrink:0}.guild-header-button{display:flex;align-items:center;gap:4px;min-width:0;padding:4px 8px;border-radius:var(--radius-md);font-weight:600;color:var(--header-primary);cursor:pointer;transition:background-color .15s}.guild-header-button:hover,.guild-header-button[data-popup-open]{background:var(--bg-modifier-hover)}.guild-header-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:var(--header-primary)}.guild-header-name.standalone{padding:4px 8px}.channels{flex:1;overflow-y:auto;padding:8px 8px 72px;display:flex;flex-direction:column;gap:2px}.layout:has(.voice-panel) .channels{padding-bottom:184px}.guild-bar{padding-bottom:72px}.layout:has(.voice-panel) .guild-bar{padding-bottom:184px}.channel-section{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 4px 8px;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted)}.channel{display:flex;align-items:center;gap:8px;text-align:left;padding:6px 8px;border-radius:var(--radius-md);color:var(--text-muted);transition:background-color .1s,color .1s}.channel-glyph{flex-shrink:0;opacity:.7}.channel-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel:hover{background:var(--bg-modifier-hover);color:var(--text-normal)}.channel.active{background:var(--bg-modifier-selected);color:var(--header-primary)}.channel.unread{color:var(--header-primary);font-weight:600}.channel.dm{padding:5px 8px}.empty-hint{padding:12px 8px;font-size:var(--font-size-sm);color:var(--text-muted)}.voice-user{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:3px 8px 3px 34px;font-size:var(--font-size-sm);color:var(--text-muted);border-radius:var(--radius-md)}.voice-user.clickable:hover,.voice-user.clickable[data-popup-open]{background:var(--bg-modifier-hover);color:var(--text-normal)}.voice-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-user-muted{color:var(--red);flex-shrink:0}.voice-user-card{width:240px;padding:12px 10px 8px;display:flex;flex-direction:column;gap:12px}.voice-user-card .ui-menu-item{padding:6px 8px}.voice-user-card .ui-menu-separator{margin:0}.voice-user-card-header{display:flex;align-items:center;gap:10px;color:var(--header-primary)}.voice-user-card-volume{display:flex;align-items:center;gap:10px;color:var(--text-muted)}.voice-user-slider{flex:1;min-width:0}.voice-user-card-pct{font-size:var(--font-size-xs);width:34px;text-align:right;flex-shrink:0}.voice-user.speaking{color:var(--header-primary)}.voice-user.speaking .ui-avatar{box-shadow:0 0 0 2px var(--green)}.live-pill{background:var(--red);color:#fff;font-size:10px;font-weight:800;letter-spacing:.02em;border-radius:var(--radius-sm);padding:1px 5px;flex-shrink:0}.sidebar-dock{position:absolute;left:8px;bottom:8px;width:304px;display:flex;flex-direction:column;gap:8px;z-index:2}.sidebar-dock>*{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-medium)}.voice-panel{padding:8px;display:flex;flex-direction:column;gap:8px}.voice-panel-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px}.voice-panel-status{min-width:0}.voice-status{display:flex;align-items:center;gap:6px;font-size:var(--font-size-sm);color:var(--green);font-weight:600}.voice-channel-name{font-size:var(--font-size-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-panel-grid{display:flex;gap:6px}.voice-action{flex:1;display:flex;align-items:center;justify-content:center;height:36px;border-radius:var(--radius-md);background:var(--bg-modifier-active);color:var(--text-normal);transition:background-color .15s,color .15s}.voice-action:hover{background:var(--bg-modifier-selected)}.voice-action.on{background:var(--header-primary);color:var(--bg-app)}.user-footer{padding:6px 8px;display:flex;align-items:center;gap:2px}.user-footer .ui-avatar{margin-right:6px}.footer-control{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--text-muted);flex-shrink:0;transition:background-color .15s,color .15s}.footer-control:hover{background:var(--bg-modifier-selected);color:var(--text-normal)}.footer-control.off{color:var(--red)}.user-footer-status.in-voice{color:var(--green)}.user-footer-name{flex:1;min-width:0}.user-footer-username{font-size:var(--font-size-md);font-weight:600;color:var(--header-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-footer-status{font-size:var(--font-size-xs);color:var(--text-muted)}.chat{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.chat.empty{align-items:center;justify-content:center;color:var(--text-faint);gap:12px}.chat-header{height:48px;padding:0 12px 0 16px;border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:center;flex-shrink:0;z-index:1}.chat-header-actions{display:flex;align-items:center;gap:4px}.chat-title{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--header-primary)}.chat-glyph{color:var(--text-faint)}.messages{flex:1;overflow-y:auto;padding:16px 0}.history-hint{text-align:center;font-size:var(--font-size-sm);color:var(--text-muted);padding:4px 0}.channel-start{padding:16px;margin-bottom:8px}.channel-start-icon{width:68px;height:68px;border-radius:50%;background:var(--bg-modifier-active);color:var(--header-primary);display:flex;align-items:center;justify-content:center;margin-bottom:8px}.channel-start h2{color:var(--header-primary);font-size:28px;margin-bottom:4px}.channel-start p{color:var(--text-muted)}.message{position:relative;display:flex;gap:16px;padding:2px 48px 2px 16px;margin-top:17px}.message.grouped{margin-top:0;padding-left:72px}.message:hover{background:var(--bg-modifier-hover)}.day-divider{position:relative;display:flex;align-items:center;gap:8px;margin:20px 16px 4px}.day-divider:before,.day-divider:after{content:"";flex:1;height:1px;background:var(--bg-modifier-active)}.day-divider-label{font-size:var(--font-size-xs);font-weight:600;color:var(--text-muted)}.day-divider.is-new:before,.day-divider.is-new:after{background:var(--red);opacity:.6}.day-divider.is-new .day-divider-label{color:var(--red)}.new-pill{position:absolute;right:0;top:50%;transform:translateY(-50%);background:var(--red);color:#fff;font-size:10px;font-weight:800;padding:1px 6px;border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.message-body{flex:1;min-width:0}.message-heading{display:flex;align-items:baseline;gap:8px}.message .author{font-weight:600;color:var(--header-primary)}.message .timestamp{font-size:var(--font-size-xs);color:var(--text-muted)}.message .content{white-space:pre-wrap;word-break:break-word;line-height:1.4}.message .content a{color:var(--text-link);text-decoration:none}.message .content a:hover{text-decoration:underline}.message .edited{font-size:10px;color:var(--text-muted);margin-left:4px}.message-actions{position:absolute;top:-12px;right:16px;display:none;gap:2px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-low);padding:2px}.message:hover .message-actions{display:flex}.message-edit{display:flex;flex-direction:column;gap:4px;margin:4px 0}.message-edit .ui-input{background:var(--bg-chat-input)}.message-edit-hint{font-size:var(--font-size-xs);color:var(--text-muted)}.message-edit-hint a{color:var(--text-link);cursor:pointer}.attachment-image{display:block;max-width:400px;max-height:300px;border-radius:var(--radius-md);margin-top:6px}.attachment-file{display:flex;align-items:center;gap:10px;margin-top:6px;padding:14px 12px;width:fit-content;min-width:300px;max-width:432px;border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-subtle);text-decoration:none}.attachment-file-icon{color:var(--brand);flex-shrink:0}.attachment-file-meta{display:flex;flex-direction:column;min-width:0}.attachment-file-name{color:var(--text-link);font-size:var(--font-size-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-file:hover .attachment-file-name{text-decoration:underline}.attachment-file-size{color:var(--text-muted);font-size:var(--font-size-xs)}.typing-line{height:24px;padding:0 16px;font-size:var(--font-size-sm);color:var(--text-normal);display:flex;align-items:center;gap:6px}.typing-dots{display:inline-flex;gap:3px}.typing-dots span{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:typing-bounce 1.2s infinite}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.composer{margin:0 16px 24px;display:flex;align-items:center;background:var(--bg-chat-input);border-radius:var(--radius-md)}.composer input{flex:1;font:inherit;padding:12px 16px 12px 0;border:none;background:transparent;color:var(--text-normal);outline:none}.composer input::placeholder{color:var(--text-faint)}.attach-button{padding:12px 14px;color:var(--text-muted);display:flex;align-items:center;transition:color .15s}.attach-button:hover:not(:disabled){color:var(--text-normal)}.attach-button:disabled{opacity:.5}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px;padding:12px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle);max-height:50vh;overflow-y:auto}.video-tile{position:relative;background:#000;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:16 / 9}.video-tile video{width:100%;height:100%;object-fit:contain}.video-label{position:absolute;left:8px;bottom:8px;display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-sm);background:#000000a6;padding:3px 8px;border-radius:var(--radius-sm)}.video-tile-controls{position:absolute;top:8px;right:8px;display:none;gap:4px;background:#000000a6;border-radius:var(--radius-md);padding:2px}.video-tile:hover .video-tile-controls{display:flex}.video-tile.placeholder{background:var(--bg-surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.placeholder-title{display:flex;align-items:center;gap:6px;font-weight:600;color:var(--header-primary)}.member-list{width:244px;background:var(--bg-secondary);border-left:1px solid var(--border-subtle);overflow-y:auto;padding:16px 8px;flex-shrink:0}.member-group{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted);padding:12px 8px 4px}.member-row{display:flex;align-items:center;border-radius:var(--radius-sm)}.member-row:hover{background:var(--bg-modifier-hover)}.member{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-md);text-align:left;color:var(--text-muted)}.member-row:hover .member{color:var(--text-normal)}.member-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.member.offline{opacity:.45}.member-actions{display:none;gap:2px;padding-right:6px;flex-shrink:0}.member-row:hover .member-actions{display:flex}.role-card{background:var(--bg-surface);border-radius:var(--radius-md);padding:12px;margin-bottom:12px}.role-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.role-name{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--header-primary)}.role-title-actions{display:flex;gap:4px}.role-perms{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px}.role-perm-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm);color:var(--text-normal);gap:8px}.role-holders{margin-top:12px;display:flex;flex-wrap:wrap;gap:4px}.role-holder{display:inline-flex;align-items:center;gap:4px;background:var(--bg-modifier-active);border-radius:var(--radius-round);padding:3px 6px 3px 10px;font-size:var(--font-size-sm)}.role-holder-remove{display:flex;align-items:center;color:var(--text-muted);border-radius:50%}.role-holder-remove:hover{color:var(--red)}
