:root{--surface-lowest: #101218;--surface-low: #15171e;--surface-base: #1a1d25;--surface-raised: #232733;--surface-float: #0a0b0f;--interactive-hover: #20242e;--interactive-active: #2a2f3c;--message-hover: #16181f;--control: #39404e;--text-strong: #f3f4f8;--text-default: #d8dbe4;--text-secondary: #b0b6c4;--text-muted: #949bab;--text-subtle: #969dad;--icon-faint: #6b7284;--text-on-fill: #ffffff;--accent: #5865f2;--accent-hover: #4752c4;--focus-ring: #8b95fa;--accent-soft: rgba(88, 101, 242, .28);--accent-flash: rgba(88, 101, 242, .18);--online: #23c55e;--online-fill: #1d8749;--online-fill-hover: #166b39;--offline: #757b8a;--danger: #db393c;--danger-hover: #b8282b;--danger-soft: rgba(242, 63, 66, .14);--warning: #f2b53a;--warning-soft: rgba(242, 181, 58, .1);--link: #4cc2ff;--divider: #0d0f14;--divider-soft: #2b3040;--scrim: rgba(0, 0, 0, .65);--scrim-strong: rgba(0, 0, 0, .72);--scrim-heavy: rgba(0, 0, 0, .85);--scrim-light: rgba(255, 255, 255, .15);--video-letterbox: #000000;--font-xs: 11px;--font-sm: 12px;--font-md: 14px;--font-body: 15px;--font-lg: 16px;--font-xl: 20px;--lh-tight: 1.25;--lh-body: 1.375;--fw-normal: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-pill: 24px;--shadow-low: 0 1px 2px rgba(0, 0, 0, .3);--shadow-mid: 0 4px 14px rgba(0, 0, 0, .42);--shadow-high: 0 12px 40px rgba(0, 0, 0, .55);--shadow-hairline: 0 1px 0 rgba(0, 0, 0, .35);--dur-fast: 80ms;--dur-base: .15s;--dur-slow: .24s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--rail-w: 72px;--sidebar-w: 240px;--members-w: 240px}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2")}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,Segoe UI,Roboto,sans-serif;font-size:var(--font-md);line-height:var(--lh-tight);background:var(--surface-base);color:var(--text-default)}button,input,textarea,select{font:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}.auth-screen{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--surface-lowest)}.auth-card{background:var(--surface-base);padding:var(--space-8);border-radius:var(--radius-md);width:320px;display:flex;flex-direction:column;gap:var(--space-3)}.auth-card h1{margin:0;text-align:center;color:var(--text-on-fill)}.auth-subtitle{margin:0 0 var(--space-2);text-align:center;color:var(--text-secondary)}.auth-card label{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase}.auth-card input{background:var(--surface-lowest);border:1px solid var(--surface-lowest);border-radius:var(--radius-sm);padding:10px;color:var(--text-default);font-size:var(--font-md)}.auth-card button[type=submit]{background:var(--accent);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:10px;font-weight:var(--fw-semibold);margin-top:var(--space-2)}.auth-card button[type=submit]:hover{background:var(--accent-hover)}.auth-error{color:var(--danger);font-size:var(--font-md)}.link-btn{background:none;border:none;color:var(--link);font-size:var(--font-md);padding:0}.home{display:grid;grid-template-columns:var(--rail-w) var(--sidebar-w) minmax(0,1fr) var(--members-w);grid-template-rows:minmax(0,1fr);height:100vh;overflow:hidden}.home.members-hidden{--members-w: 0px}.server-sidebar{background:var(--surface-lowest);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3) 0;overflow-y:auto;scrollbar-width:none}.server-sidebar::-webkit-scrollbar{display:none}.server-rail-divider{width:32px;height:2px;background:var(--divider-soft);border-radius:1px;flex-shrink:0;margin:var(--space-1) 0}.server-icon-wrap{position:relative;display:flex;flex-shrink:0}.server-icon-wrap:before{content:"";position:absolute;left:-16px;top:50%;width:4px;height:0;border-radius:0 4px 4px 0;background:var(--text-strong);transform:translateY(-50%);transition:height var(--dur-base) var(--ease-in-out)}.server-icon-wrap:hover:before{height:20px}.server-icon-wrap.active:before{height:40px}.server-icon-wrap.unread:before{height:8px}.server-icon{width:48px;height:48px;border-radius:var(--radius-pill);background:var(--surface-base);color:var(--text-default);border:none;font-weight:var(--fw-semibold);font-size:var(--font-md);display:flex;align-items:center;justify-content:center;transition:border-radius var(--dur-base) var(--ease-in-out),background var(--dur-fast) var(--ease-in-out),color var(--dur-fast) var(--ease-in-out)}.server-icon:hover,.server-icon.active{border-radius:16px;background:var(--accent);color:var(--text-on-fill)}.server-icon.add{color:var(--online);font-size:var(--font-xl);font-weight:var(--fw-normal)}.server-icon.add:hover{background:var(--online-fill);color:var(--text-on-fill)}.server-icon.home-btn{color:var(--text-default)}.server-icon.home-btn.active,.server-icon.home-btn:hover{background:var(--accent);color:var(--text-on-fill)}.sidebar-column{background:var(--surface-low);display:flex;flex-direction:column;min-height:0;min-width:0}.channel-list{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto;padding:0 var(--space-2) var(--space-3)}.channel-list-header{position:sticky;top:0;z-index:2;background:var(--surface-low);margin:0 -8px 8px;padding:0 var(--space-4);height:48px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);border-bottom:1px solid var(--divider);box-shadow:var(--shadow-hairline);font-weight:var(--fw-semibold);color:var(--text-strong);font-size:var(--font-md)}.channel-list-header .server-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-list-header button{background:none;border:none;color:var(--text-default);display:flex;align-items:center;padding:2px;border-radius:var(--radius-sm)}.channel-list-header button:hover{color:var(--text-strong)}.channel-group{margin-top:var(--space-4)}.channel-group-title{display:flex;align-items:center;gap:2px;font-size:var(--font-xs);font-weight:var(--fw-semibold);letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);padding:0 var(--space-1) var(--space-1);width:100%;background:none;border:none}.channel-group-title:hover{color:var(--text-default)}.channel-group-title .caret{display:flex;transition:transform var(--dur-base) var(--ease-in-out)}.channel-group-title.collapsed .caret{transform:rotate(-90deg)}.channel-group-title .group-label{flex:1;text-align:left}.channel-group-add{background:none;border:none;color:var(--text-muted);display:flex;align-items:center;padding:2px;border-radius:var(--radius-sm)}.channel-group-add:hover{color:var(--text-strong)}.channel-item{display:flex;align-items:center;gap:6px;width:100%;text-align:left;background:none;border:none;color:var(--text-muted);padding:6px 8px;margin-bottom:2px;border-radius:var(--radius-sm);font-size:var(--font-md)}.channel-item .channel-icon{flex-shrink:0;color:var(--icon-faint)}.channel-item .channel-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-item:hover{background:var(--interactive-hover);color:var(--text-default)}.channel-item.active{background:var(--interactive-active);color:var(--text-on-fill)}.channel-item.active .channel-icon{color:var(--text-default)}.channel-item.in-voice{color:var(--online)}.channel-item.unread{color:var(--text-strong);font-weight:var(--fw-semibold)}.channel-item.unread .channel-icon{color:var(--text-default)}.channel-item .channel-hover-actions{margin-left:auto;display:none;align-items:center;gap:2px;color:var(--text-muted)}.channel-item:hover .channel-hover-actions{display:flex}.channel-item .channel-hover-actions button{background:none;border:none;color:inherit;padding:0;display:flex;align-items:center}.channel-item .channel-hover-actions button:hover{color:var(--text-strong)}.peer-count{margin-left:auto;font-size:var(--font-sm);color:var(--text-muted);display:flex;align-items:center;gap:3px}.voice-occupants{padding:0 0 4px 22px;display:flex;flex-direction:column;gap:2px}.voice-occupant{display:flex;align-items:center;gap:var(--space-2);padding:3px 8px;border-radius:var(--radius-sm);font-size:var(--font-md);color:var(--text-muted)}.voice-occupant:hover{background:var(--interactive-hover)}.voice-occupant .occupant-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-occupant .occupant-icons{margin-left:auto;display:flex;gap:var(--space-1);color:var(--danger)}.user-panel{flex-shrink:0;height:52px;background:var(--surface-float);display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-2)}.user-panel-identity{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex:1;background:none;border:none;color:inherit;padding:var(--space-1);border-radius:var(--radius-sm);text-align:left}.user-panel-identity:hover{background:var(--interactive-hover)}.user-panel-names{min-width:0;display:flex;flex-direction:column}.user-panel-username{font-size:var(--font-md);font-weight:var(--fw-semibold);color:var(--text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-panel-status{font-size:var(--font-sm);color:var(--text-muted)}.user-panel-actions{display:flex;gap:2px;flex-shrink:0}.icon-btn{background:none;border:none;color:var(--text-default);width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.icon-btn:hover{background:var(--interactive-hover);color:var(--text-strong)}.icon-btn.danger-state,.icon-btn.danger-state:hover{color:var(--danger)}.main-panel{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--surface-base)}.top-bar{height:48px;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border-bottom:1px solid var(--divider);box-shadow:var(--shadow-hairline);flex-shrink:0;color:var(--text-strong);font-weight:var(--fw-semibold)}.top-bar .top-bar-icon{color:var(--icon-faint);display:flex}.top-bar .top-bar-actions{margin-left:auto;display:flex;gap:var(--space-1);color:var(--text-default)}.avatar{border-radius:50%;object-fit:cover;flex-shrink:0}.avatar-fallback{background:var(--accent);color:var(--text-on-fill);display:flex;align-items:center;justify-content:center;font-weight:var(--fw-semibold)}.voice-status-bar{flex-shrink:0;background:var(--surface-float);border-bottom:1px solid var(--divider);padding:var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.voice-status-info{min-width:0;flex:1;display:flex;flex-direction:column}.voice-status-title{font-size:var(--font-md);font-weight:var(--fw-semibold);color:var(--online);display:flex;align-items:center;gap:6px}.voice-status-channel{font-size:var(--font-sm);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-status-bar .icon-btn{color:var(--text-default)}.voice-status-bar .icon-btn.hangup:hover{background:var(--danger);color:var(--text-on-fill)}.chat-panel{display:flex;flex-direction:column;min-height:0;flex:1}.chat-panel.empty{align-items:center;justify-content:center;color:var(--text-muted)}.chat-messages{flex:1;overflow-y:auto;padding:var(--space-3) var(--space-4) 0;display:flex;flex-direction:column}.chat-spacer{flex:1 1 auto;min-height:0}.chat-message-content{font-size:var(--font-body);line-height:var(--lh-body);word-wrap:break-word}.chat-input{padding:0 var(--space-4) var(--space-6)}.chat-input-box{display:flex;align-items:center;gap:10px;background:var(--surface-raised);border-radius:var(--radius-md);padding:0 var(--space-4)}.chat-input-box input{flex:1;background:none;border:none;padding:11px 0;color:var(--text-default);font-size:var(--font-md)}.chat-input-box input:focus{outline:none}.chat-input-box .attach-btn{background:none;border:none;color:var(--text-muted);display:flex;padding:0}.chat-input-box .attach-btn:hover{color:var(--text-default)}.voice-panel{flex:1;display:flex;flex-direction:column;min-height:0}.voice-panel.empty{align-items:center;justify-content:center;gap:var(--space-4)}.voice-header{height:48px;padding:0 var(--space-4);border-bottom:1px solid var(--divider);display:flex;align-items:center;gap:var(--space-2);font-weight:var(--fw-semibold);color:var(--text-strong);flex-shrink:0}.voice-header .top-bar-icon{color:var(--icon-faint);display:flex}.join-voice-btn{background:var(--online-fill);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:var(--space-3) var(--space-6);font-weight:var(--fw-semibold);font-size:var(--font-md);display:flex;align-items:center;gap:var(--space-2)}.peer-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,420px));gap:var(--space-3);padding:var(--space-4);align-content:center;justify-content:center;overflow-y:auto;min-height:0;max-width:1400px;width:100%;margin:0 auto}.peer-tile{background:var(--surface-lowest);border-radius:var(--radius-md);aspect-ratio:16 / 9;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:box-shadow var(--dur-fast) var(--ease-out)}.peer-tile video{width:100%;height:100%;object-fit:cover}.peer-tile video.video-hidden{display:none}.peer-name{position:absolute;bottom:6px;left:8px;font-size:var(--font-sm);font-weight:var(--fw-medium);color:var(--text-strong);background:var(--scrim);padding:3px 8px;border-radius:var(--radius-sm);display:flex;align-items:center;gap:6px;max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.peer-name .muted-icon{color:var(--danger);display:flex}.voice-controls{display:flex;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4);flex-shrink:0}.screen-share-row{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-4) 0;overflow-x:auto;flex-shrink:0}.screen-tile{position:relative;background:var(--video-letterbox);border-radius:var(--radius-md);overflow:hidden;width:min(560px,70vw);aspect-ratio:16 / 9;flex-shrink:0}.screen-tile video{width:100%;height:100%;object-fit:contain;background:var(--video-letterbox)}.screen-tile-badge{position:absolute;top:8px;left:8px;display:flex;align-items:center;gap:6px;background:var(--scrim);color:var(--text-on-fill);font-size:var(--font-sm);font-weight:var(--fw-semibold);padding:4px 10px;border-radius:var(--radius-sm)}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--danger)}.screen-tile-controls{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;gap:var(--space-2);padding:8px 10px;background:linear-gradient(transparent,var(--scrim-heavy));opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.screen-tile:hover .screen-tile-controls{opacity:1}.screen-tile-controls .tiny-btn{background:var(--scrim-light);color:var(--text-on-fill);border-radius:var(--radius-sm);padding:4px 6px;font-size:var(--font-md);display:flex;align-items:center}.screen-tile-controls input[type=range]{flex:1;accent-color:var(--accent)}.screenshare-card{background:var(--surface-base);border-radius:var(--radius-md);width:360px;padding:var(--space-4)}.screenshare-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.screenshare-hint{font-size:var(--font-sm);color:var(--text-muted);margin:0 0 var(--space-4);line-height:1.5}.screenshare-field{margin-bottom:var(--space-4)}.screenshare-field label{display:block;font-size:var(--font-xs);text-transform:uppercase;color:var(--text-secondary);margin-bottom:6px}.segmented{display:flex;background:var(--surface-lowest);border-radius:var(--radius-sm);padding:3px;gap:3px}.segmented button{flex:1;background:none;border:none;color:var(--text-secondary);padding:var(--space-2);border-radius:3px;font-size:var(--font-md);font-weight:var(--fw-semibold)}.segmented button.active{background:var(--control);color:var(--text-on-fill)}.go-live-btn{width:100%;background:var(--online-fill);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:10px;font-weight:var(--fw-semibold);font-size:var(--font-md)}.go-live-btn:disabled{opacity:.6}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;z-index:800}.modal-card{background:var(--surface-base);border-radius:var(--radius-md);width:400px;max-width:92vw;padding:var(--space-4)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3);color:var(--text-strong)}.modal-form{display:flex;flex-direction:column;gap:10px}.modal-form input{background:var(--surface-lowest);border:1px solid var(--surface-lowest);border-radius:var(--radius-sm);padding:10px;color:var(--text-default)}.modal-form button[type=submit]{background:var(--accent);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:10px;font-weight:var(--fw-semibold)}.modal-form button[type=submit]:hover{background:var(--accent-hover)}.settings-card{background:var(--surface-base);border-radius:var(--radius-md);width:640px;max-width:92vw;height:520px;max-height:88vh;display:flex;overflow:hidden;position:relative}.settings-sidebar{width:180px;background:var(--surface-low);padding:var(--space-4) var(--space-2);display:flex;flex-direction:column;gap:2px;flex-shrink:0}.settings-sidebar button{text-align:left;background:none;border:none;color:var(--text-secondary);padding:8px 10px;border-radius:var(--radius-sm);font-size:var(--font-md)}.settings-sidebar button:hover{background:var(--interactive-hover);color:var(--text-default)}.settings-sidebar button.active{background:var(--interactive-active);color:var(--text-on-fill)}.settings-sidebar .settings-logout{color:var(--danger);margin-top:auto}.settings-sidebar .settings-logout:hover{background:var(--danger);color:var(--text-on-fill)}.settings-content{flex:1;padding:var(--space-6) var(--space-8);overflow-y:auto}.settings-close{position:absolute;top:16px;right:20px;background:var(--surface-low);border:none;color:var(--text-default);width:28px;height:28px;border-radius:50%;font-size:var(--font-md)}.settings-panel h2{margin:0 0 20px;color:var(--text-on-fill)}.settings-panel h3{margin:0 0 var(--space-2);color:var(--text-muted);font-size:var(--font-xs);font-weight:var(--fw-semibold);letter-spacing:.02em;text-transform:uppercase}.account-card{display:flex;align-items:center;gap:var(--space-4);background:var(--surface-low);border-radius:var(--radius-md);padding:20px}.account-card.editing{flex-direction:column;align-items:stretch;gap:var(--space-4)}.account-card-info{flex:1}.account-username{font-size:var(--font-xl);font-weight:var(--fw-semibold);color:var(--text-on-fill)}.account-meta{font-size:var(--font-sm);color:var(--text-muted);margin-top:var(--space-1)}.account-card>button{margin-left:auto;background:var(--control);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:8px 14px;font-size:var(--font-md)}.avatar-edit{display:flex;align-items:center;gap:var(--space-3)}.avatar-edit-actions{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.settings-field{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase}.settings-field input{background:var(--surface-lowest);border:1px solid var(--surface-lowest);border-radius:var(--radius-sm);padding:10px;color:var(--text-default);font-size:var(--font-md);text-transform:none}.settings-actions{display:flex;justify-content:flex-end;gap:var(--space-3);align-items:center}.settings-actions button[type=button]:not(.link-btn){background:var(--accent);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-weight:var(--fw-semibold)}.device-section{background:var(--surface-low);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.device-section select{width:100%;background:var(--surface-lowest);border:1px solid var(--surface-lowest);border-radius:var(--radius-sm);padding:var(--space-2);color:var(--text-default);font-size:var(--font-md);margin-bottom:10px}.device-section button{background:var(--control);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:8px 14px;font-size:var(--font-md)}.device-section .hint{font-size:var(--font-sm);color:var(--text-muted);margin:var(--space-2) 0 0}.level-meter{height:10px;background:var(--surface-lowest);border-radius:5px;overflow:hidden;margin-bottom:10px}.level-meter-fill{height:100%;background:var(--online);transition:width 60ms linear}.cam-preview{width:100%;aspect-ratio:16 / 9;background:var(--surface-lowest);border-radius:6px;object-fit:cover;margin-bottom:10px}.cam-preview.hidden{display:none}.chat-date-divider{display:flex;align-items:center;justify-content:center;text-align:center;margin:var(--space-4) 0 var(--space-2);position:relative}.chat-date-divider:before,.chat-date-divider:after{content:"";flex:1;height:1px;background:var(--divider-soft)}.chat-date-divider span{padding:0 var(--space-3);font-size:var(--font-sm);font-weight:var(--fw-semibold);color:var(--text-muted);white-space:nowrap}.chat-message{position:relative;display:flex;gap:var(--space-4);align-items:flex-start;padding:2px 48px 2px 16px;margin:0 -16px}.chat-message.first-of-group{margin-top:17px}.chat-message:hover{background:var(--message-hover)}.chat-message-timestamp-gutter{width:40px;flex-shrink:0;font-size:var(--font-xs);color:var(--text-subtle);opacity:0;padding-top:var(--space-1);text-align:center}.chat-message:hover .chat-message-timestamp-gutter{opacity:1}.chat-message-body{flex:1;min-width:0}.chat-message-author{display:flex;align-items:baseline;gap:var(--space-2)}.chat-message-author .author-name{font-size:var(--font-md);font-weight:var(--fw-semibold);color:var(--text-strong)}.chat-message-time{font-size:var(--font-sm);font-weight:var(--fw-normal);color:var(--text-subtle)}.chat-message-edited{font-size:var(--font-xs);color:var(--text-subtle);margin-left:6px}.chat-message-actions{position:absolute;top:-16px;right:16px;display:flex;gap:2px;background:var(--surface-base);border:1px solid var(--divider);border-radius:6px;padding:2px;box-shadow:var(--shadow-low);opacity:0;pointer-events:none;z-index:1}.chat-message:hover .chat-message-actions{opacity:1;pointer-events:auto}.chat-message-actions button{background:none;border:none;color:var(--text-muted);padding:5px;border-radius:var(--radius-sm);display:flex;align-items:center}.chat-message-actions button:hover{background:var(--interactive-hover);color:var(--text-strong)}.chat-message-actions button.destructive:hover{background:var(--danger);color:var(--text-on-fill)}.chat-edit-input{width:100%;background:var(--surface-raised);border:1px solid var(--accent);border-radius:var(--radius-sm);padding:var(--space-2);color:var(--text-default);font-size:var(--font-md)}.chat-load-more{text-align:center;font-size:var(--font-sm);color:var(--text-muted);padding:6px 0;min-height:18px}.chat-typing{padding:2px 16px 4px;font-size:var(--font-md);color:var(--text-muted);min-height:20px}.chat-typing b{color:var(--text-strong);font-weight:var(--fw-semibold)}.chat-unread-divider{display:flex;align-items:center;gap:0;margin:var(--space-2) 0;position:relative;pointer-events:none}.chat-unread-divider:before{content:"";flex:1;height:1px;background:var(--danger)}.chat-unread-divider span{background:var(--danger);color:var(--text-on-fill);font-size:var(--font-xs);font-weight:var(--fw-bold);letter-spacing:.02em;text-transform:uppercase;padding:1px 6px;border-radius:0 4px 4px 0}.toast-banner{position:fixed;top:16px;left:50%;transform:translate(-50%);background:var(--danger);color:var(--text-on-fill);padding:10px 18px;border-radius:6px;font-size:var(--font-md);font-weight:var(--fw-semibold);box-shadow:var(--shadow-mid);z-index:1000;cursor:pointer;max-width:80vw}.connection-banner{position:fixed;top:56px;left:50%;transform:translate(-50%);background:var(--surface-lowest);color:var(--warning);border:1px solid var(--warning);padding:var(--space-2) var(--space-4);border-radius:6px;font-size:var(--font-md);font-weight:var(--fw-semibold);box-shadow:var(--shadow-mid);z-index:999;max-width:80vw}.member-list{background:var(--surface-low);display:flex;flex-direction:column;min-width:0;overflow:hidden}.member-list-header{padding:var(--space-6) var(--space-3) var(--space-2);font-size:var(--font-xs);font-weight:var(--fw-semibold);letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted)}.member-list-items{flex:1;overflow-y:auto;padding:0 var(--space-2) var(--space-3)}.member-item{display:flex;align-items:center;gap:var(--space-3);width:100%;text-align:left;background:none;border:none;padding:6px 8px;border-radius:var(--radius-sm)}.member-item:hover{background:var(--interactive-hover)}.member-item.offline{opacity:.4}.member-name{font-size:var(--font-md);color:var(--text-default);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-owner-badge{margin-left:auto;font-size:var(--font-sm);display:flex;color:var(--warning)}.unread-badge{margin-left:auto;font-size:var(--font-xs);font-weight:var(--fw-bold);line-height:16px;min-width:16px;height:16px;padding:0 5px;border-radius:8px;background:var(--danger);color:var(--text-on-fill);text-align:center}.server-unread-badge{position:absolute;bottom:-2px;right:-2px;font-size:var(--font-xs);font-weight:var(--fw-bold);line-height:16px;min-width:16px;height:16px;padding:0 5px;border-radius:8px;background:var(--danger);color:var(--text-on-fill);text-align:center;border:3px solid var(--surface-lowest);box-sizing:content-box;pointer-events:none}.context-menu{position:fixed;z-index:900;min-width:188px;background:var(--surface-float);border-radius:var(--radius-sm);padding:6px 8px;box-shadow:var(--shadow-mid);display:flex;flex-direction:column;gap:2px}.context-menu button{display:flex;align-items:center;gap:var(--space-2);width:100%;text-align:left;background:none;border:none;color:var(--text-secondary);padding:6px 8px;border-radius:3px;font-size:var(--font-md)}.context-menu button:hover{background:var(--accent);color:var(--text-on-fill)}.context-menu button .menu-icon{margin-left:auto;display:flex}.context-menu button.destructive{color:var(--danger)}.context-menu button.destructive:hover{background:var(--danger);color:var(--text-on-fill)}.context-menu .context-menu-separator{height:1px;background:var(--divider-soft);margin:var(--space-1) 0}.channel-group-title.as-label{cursor:default}.home-nav-item{margin-top:var(--space-2)}.home-sidebar-empty{margin:var(--space-1) var(--space-2);font-size:var(--font-md);color:var(--text-subtle);line-height:1.4}.friends-view{display:flex;flex-direction:column;min-height:0;height:100%}.friends-header{display:flex;align-items:center;gap:var(--space-4);height:48px;flex-shrink:0;padding:0 var(--space-4);border-bottom:1px solid var(--divider);box-shadow:var(--shadow-hairline)}.friends-title{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--fw-semibold);color:var(--text-strong);white-space:nowrap}.friends-tabs{display:flex;align-items:center;gap:var(--space-1);overflow-x:auto;scrollbar-width:none}.friends-tabs::-webkit-scrollbar{display:none}.friends-tab{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-muted);font-size:var(--font-md);padding:4px 10px;border-radius:var(--radius-sm);white-space:nowrap}.friends-tab:hover{background:var(--interactive-hover);color:var(--text-default)}.friends-tab.active{background:var(--interactive-active);color:var(--text-strong)}.friends-tab.cta{color:var(--text-on-fill);background:var(--online-fill)}.friends-tab.cta:hover{background:var(--online-fill-hover)}.friends-tab.cta.active{background:transparent;color:var(--online)}.friends-tab-badge{min-width:16px;height:16px;padding:0 var(--space-1);border-radius:8px;background:var(--danger);color:var(--text-on-fill);font-size:var(--font-xs);font-weight:var(--fw-bold);display:flex;align-items:center;justify-content:center}.friends-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4) var(--space-6) var(--space-6)}.friends-section-header{font-size:var(--font-xs);font-weight:var(--fw-bold);letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);margin:var(--space-6) 0 var(--space-2)}.friends-section-header:first-child{margin-top:0}.friend-row{display:flex;align-items:center;gap:var(--space-3);padding:10px 8px;border-radius:var(--radius-md);border-top:1px solid var(--divider-soft)}.friend-row:hover{background:var(--interactive-hover);border-top-color:transparent}.friend-row:hover+.friend-row{border-top-color:transparent}.friend-identity{display:flex;flex-direction:column;min-width:0}.friend-name{color:var(--text-strong);font-weight:var(--fw-semibold);font-size:var(--font-md)}.friend-subtitle{color:var(--text-muted);font-size:var(--font-md)}.friend-actions{margin-left:auto;display:flex;gap:var(--space-2)}.friend-action{width:36px;height:36px;border-radius:50%;border:none;background:var(--surface-lowest);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.friend-action:hover{color:var(--text-strong)}.friend-action.danger:hover{color:var(--danger)}.friends-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);height:100%;color:var(--text-muted);text-align:center}.friends-add{max-width:620px}.friends-add h3{margin:0 0 var(--space-2);font-size:var(--font-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.02em;color:var(--text-strong)}.friends-add-hint{margin:0 0 var(--space-4);color:var(--text-muted);font-size:var(--font-md)}.friends-add-form{display:flex;align-items:center;gap:var(--space-3);background:var(--surface-lowest);border:1px solid transparent;border-radius:var(--radius-md);padding:var(--space-2)}.friends-add-form.invalid{border-color:var(--danger)}.friends-add-form input{flex:1;min-width:0;background:none;border:none;color:var(--text-default);font-size:var(--font-md);padding:6px 8px}.friends-add-form input:focus{outline:none}.friends-add-form button{background:var(--accent);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-size:var(--font-md);font-weight:var(--fw-medium);white-space:nowrap}.friends-add-form button:hover:not(:disabled){background:var(--accent-hover)}.friends-add-form button:disabled{opacity:.5;cursor:not-allowed}.friends-add-ok{margin-top:var(--space-2);color:var(--online);font-size:var(--font-md)}.friends-add-error{margin-top:var(--space-2);color:var(--danger);font-size:var(--font-md)}.dm-item{gap:10px;height:42px}.dm-avatar{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px}.dm-group-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--surface-lowest);color:var(--text-secondary)}.dm-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-item.unread .dm-name{color:var(--text-default);font-weight:var(--fw-medium)}.dm-close{display:none;align-items:center;flex-shrink:0;color:var(--text-muted)}.dm-item:hover .dm-close{display:flex}.dm-close:hover{color:var(--text-default)}.group-picker{display:flex;flex-direction:column;gap:var(--space-1)}.group-picker-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer}.group-picker-row:hover{background:var(--interactive-hover)}.group-picker button{margin-top:var(--space-3);background:var(--accent);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:10px;font-size:var(--font-md);font-weight:var(--fw-medium)}.group-picker button:disabled{opacity:.5;cursor:not-allowed}.peer-tile.speaking{box-shadow:inset 0 0 0 2px var(--online)}.peer-tile-controls{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;gap:var(--space-2);padding:8px 10px;background:linear-gradient(transparent,var(--scrim-heavy))}.peer-tile-controls .tiny-btn{background:var(--scrim-light);color:var(--text-on-fill);border-radius:var(--radius-sm);padding:4px 6px;display:flex;align-items:center}.peer-tile-controls input[type=range]{flex:1;accent-color:var(--accent)}.peer-name .muted-icon svg{display:block}.voice-panel.embedded{flex:0 0 auto;max-height:46vh;border-bottom:1px solid var(--divider);background:var(--surface-base)}.voice-panel.embedded .peer-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));padding:var(--space-3);gap:var(--space-2)}.voice-panel.embedded .voice-controls{padding:var(--space-2) var(--space-3)}.incoming-call{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:1000;background:var(--surface-float);border:1px solid var(--divider-soft);border-radius:var(--radius-md);padding:20px 28px;display:flex;flex-direction:column;align-items:center;gap:6px;box-shadow:var(--shadow-high);min-width:260px}.incoming-call-name{font-size:var(--font-lg);font-weight:var(--fw-semibold);color:var(--text-strong);margin-top:var(--space-1)}.incoming-call-sub{font-size:var(--font-md);color:var(--text-muted)}.incoming-call-actions{display:flex;gap:var(--space-4);margin-top:var(--space-3)}.call-accept,.call-decline{width:48px;height:48px;border-radius:50%;border:none;color:var(--text-on-fill);display:flex;align-items:center;justify-content:center}.call-accept{background:var(--online-fill)}.call-decline{background:var(--danger)}.call-accept:hover,.call-decline:hover{filter:brightness(1.15)}.call-decline.small{width:26px;height:26px}.outgoing-call{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:1000;background:var(--surface-float);border:1px solid var(--divider-soft);border-radius:var(--radius-pill);padding:8px 10px 8px 18px;display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-md);color:var(--text-default);box-shadow:var(--shadow-mid)}.outgoing-call-dot{width:8px;height:8px;border-radius:50%;background:var(--online);animation:call-pulse 1.2s ease-in-out infinite}@keyframes call-pulse{0%,to{opacity:1}50%{opacity:.25}}.tile-live{position:absolute;top:6px;right:6px;display:flex;align-items:center;gap:6px}.live-badge{display:flex;align-items:center;gap:5px;background:var(--scrim-strong);color:var(--text-on-fill);font-size:var(--font-xs);font-weight:var(--fw-bold);letter-spacing:.06em;padding:3px 7px;border-radius:var(--radius-sm)}.live-count{display:flex;align-items:center;gap:3px;background:var(--scrim-strong);color:var(--text-default);font-size:var(--font-xs);font-weight:var(--fw-semibold);padding:3px 7px;border-radius:var(--radius-sm)}.live-count svg{display:block}.watch-btn{display:flex;align-items:center;gap:5px;background:var(--accent);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:4px 9px;font-size:var(--font-xs);font-weight:var(--fw-semibold)}.watch-btn:hover{filter:brightness(1.12)}.watch-btn{white-space:nowrap}.voice-panel.embedded .watch-label{display:none}.voice-panel.embedded .tile-live{gap:var(--space-1)}.watch-btn.watching{background:var(--scrim-strong);color:var(--text-default)}.screen-tile-badge .live-count{padding:0 0 0 6px;background:none}.voice-panel.embedded.has-share{max-height:72vh}.voice-panel.embedded .screen-tile{width:min(720px,62vw)}.modal-card:has(.server-settings){width:520px}.server-settings{display:flex;flex-direction:column;gap:18px;max-height:68vh;overflow-y:auto}.settings-section{display:flex;flex-direction:column;gap:6px}.settings-label{font-size:var(--font-xs);font-weight:var(--fw-bold);letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted)}.settings-row{display:flex;gap:var(--space-2);align-items:center}.settings-row input{flex:1;min-width:0;background:var(--surface-lowest);border:1px solid var(--surface-lowest);border-radius:var(--radius-sm);padding:9px 10px;color:var(--text-default);font-size:var(--font-md)}.settings-row input:read-only{color:var(--text-muted)}.settings-row button{display:flex;align-items:center;gap:6px;background:var(--surface-raised);color:var(--text-default);border:none;border-radius:var(--radius-sm);padding:9px 14px;font-size:var(--font-md);font-weight:var(--fw-semibold);white-space:nowrap}.settings-row button:hover:not(:disabled){background:var(--interactive-active)}.settings-row button:disabled{opacity:.45}.settings-hint{margin:0;font-size:var(--font-sm);color:var(--text-muted)}.settings-members{display:flex;flex-direction:column;max-height:200px;overflow-y:auto;background:var(--surface-lowest);border-radius:var(--radius-sm);padding:var(--space-1)}.settings-member{display:flex;align-items:center;gap:var(--space-2);padding:6px 8px;border-radius:var(--radius-sm)}.settings-member:hover{background:var(--interactive-hover)}.settings-member-name{flex:1;min-width:0;color:var(--text-default);font-size:var(--font-md);overflow:hidden;text-overflow:ellipsis}.settings-member-actions{display:flex;gap:10px;opacity:0}.settings-member:hover .settings-member-actions,.settings-member:focus-within .settings-member-actions{opacity:1}.link-btn.danger{color:var(--danger)}.danger-zone{border-top:1px solid var(--divider-soft);padding-top:14px}.danger-zone .settings-label{color:var(--danger)}.danger-btn{background:var(--danger);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:9px 14px;font-size:var(--font-md);font-weight:var(--fw-semibold);white-space:nowrap}.danger-btn:hover:not(:disabled){background:var(--danger-hover)}.danger-btn:disabled{opacity:.45}.channel-type-toggle{display:flex;gap:var(--space-2)}.channel-type-toggle button{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--surface-lowest);color:var(--text-muted);border:1px solid transparent;border-radius:var(--radius-sm);padding:10px;font-size:var(--font-md);font-weight:var(--fw-semibold)}.channel-type-toggle button:hover{color:var(--text-default)}.channel-type-toggle button.active{background:var(--interactive-active);color:var(--text-strong);border-color:var(--accent)}.modal-check{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-md);color:var(--text-default)}.modal-check.disabled{color:var(--text-subtle);cursor:not-allowed}.modal-check em{font-style:normal;font-size:var(--font-xs);color:var(--text-subtle);margin-left:auto}.chat-message.has-reply{flex-wrap:wrap}.chat-reply-context{flex:0 0 100%;display:flex;align-items:center;gap:6px;margin:0 0 2px 56px;padding:0;background:none;border:none;color:var(--text-muted);font-size:var(--font-md);text-align:left;cursor:pointer;min-width:0;position:relative}.chat-reply-context:before{content:"";position:absolute;left:-36px;bottom:-18px;width:32px;height:28px;border-left:2px solid var(--divider-soft);border-top:2px solid var(--divider-soft);border-top-left-radius:6px}.chat-reply-context .reply-author{color:var(--text-default);font-weight:var(--fw-medium);flex-shrink:0}.chat-reply-context .reply-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.chat-reply-context:hover .reply-preview,.chat-reply-context:hover .reply-author{color:var(--text-strong)}.chat-message.flash{background:var(--accent-flash)}.chat-reactions{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1)}.reaction-chip{display:flex;align-items:center;gap:5px;background:var(--surface-raised);border:1px solid transparent;border-radius:var(--radius-md);padding:2px 7px;color:var(--text-default);font-size:var(--font-md);line-height:20px;cursor:pointer;transition:background var(--dur-fast) var(--ease-in-out),border-color var(--dur-fast) var(--ease-in-out)}.reaction-chip:hover{border-color:var(--text-subtle)}.reaction-chip.mine{background:var(--accent-soft);border-color:var(--accent)}.reaction-chip.mine .reaction-count{color:var(--text-strong)}.reaction-chip .reaction-emoji{font-size:var(--font-lg)}.reaction-chip .reaction-count{color:var(--text-muted);font-variant-numeric:tabular-nums}.reaction-chip.add{color:var(--text-muted);padding:2px 8px}.reaction-chip.add:hover{color:var(--text-strong)}.chat-reply-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);background:var(--surface-low);border-radius:var(--radius-md) var(--radius-md) 0 0;padding:7px 16px;font-size:var(--font-md);color:var(--text-muted)}.chat-reply-bar strong{color:var(--text-strong);font-weight:var(--fw-semibold)}.chat-reply-bar button{background:none;border:none;color:var(--text-muted);display:flex;align-items:center;padding:2px;border-radius:var(--radius-sm);cursor:pointer}.chat-reply-bar button:hover{color:var(--text-strong);background:var(--interactive-hover)}.chat-reply-bar+.chat-input-box{border-radius:0 0 var(--radius-md) var(--radius-md)}.context-menu.emoji-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;min-width:0;width:auto;padding:6px}.context-menu.emoji-picker button{font-size:var(--font-xl);line-height:1;padding:6px;justify-content:center;border-radius:var(--radius-sm);min-width:0}.context-menu.emoji-picker button:hover{background:var(--interactive-hover)}.unread-badge.mention,.server-unread-badge.mention{background:var(--warning);color:var(--surface-lowest)}.chat-message.mentioned{background:var(--warning-soft);box-shadow:inset 2px 0 0 var(--warning)}.chat-message-content .md-p{margin:0;white-space:pre-wrap}.chat-message-content .md-p+.md-p{margin-top:2px}.md-code{background:var(--surface-lowest);border:1px solid var(--divider-soft);border-radius:var(--radius-sm);padding:1px 4px;font-family:Consolas,Courier New,monospace;font-size:var(--font-md)}.md-codeblock{background:var(--surface-lowest);border:1px solid var(--divider-soft);border-radius:var(--radius-sm);margin:var(--space-1) 0;padding:8px 10px;overflow-x:auto;max-width:100%}.md-codeblock code{font-family:Consolas,Courier New,monospace;font-size:var(--font-md);color:var(--text-default);white-space:pre}.md-quote{margin:2px 0;padding-left:10px;border-left:4px solid var(--divider-soft);border-radius:2px;white-space:pre-wrap}.md-link{color:var(--link);text-decoration:none}.md-link:hover{text-decoration:underline}.md-spoiler{background:var(--surface-float);color:transparent;border:none;border-radius:var(--radius-sm);padding:0 2px;font:inherit;cursor:pointer}.md-spoiler *{visibility:hidden}.md-spoiler.revealed{background:var(--interactive-hover);color:inherit;cursor:text}.md-spoiler.revealed *{visibility:visible}span.md-spoiler{cursor:default}.chat-input-box textarea{flex:1;background:none;border:none;padding:11px 0;color:var(--text-default);font-size:var(--font-md);font-family:inherit;line-height:1.375;resize:none;overflow-y:auto;max-height:200px}.chat-input-box textarea:focus{outline:none}.chat-input-box{align-items:flex-end}.chat-input-box .attach-btn{margin-bottom:var(--space-2)}.chat-attachments{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-top:6px}.attachment-image img{display:block;max-width:min(520px,100%);max-height:360px;border-radius:var(--radius-md);background:var(--surface-lowest)}.attachment-failed{display:flex;align-items:center;gap:var(--space-2);padding:10px 12px;border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text-muted);font-size:var(--font-md)}.attachment-file{display:flex;align-items:center;gap:var(--space-3);max-width:min(420px,100%);padding:10px 12px;border:1px solid var(--divider-soft);border-radius:var(--radius-md);background:var(--surface-low)}.attachment-file .attachment-icon{color:var(--accent);flex-shrink:0}.attachment-meta{display:flex;flex-direction:column;min-width:0;flex:1}.attachment-name{color:var(--link);font-size:var(--font-md);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-size{color:var(--text-muted);font-size:var(--font-sm)}.attachment-file button{background:none;border:none;cursor:pointer;padding:6px;color:var(--text-muted);border-radius:var(--radius-sm);flex-shrink:0}.attachment-file button:hover:not(:disabled){color:var(--text-strong);background:var(--interactive-hover)}.attachment-file button:disabled{opacity:.5;cursor:default}.chat-attachment-tray{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) var(--space-2) 0}.attachment-chip{display:flex;align-items:center;gap:var(--space-2);padding:6px 8px;border-radius:var(--radius-md);background:var(--surface-raised);font-size:var(--font-sm);color:var(--text-default);max-width:220px}.attachment-chip.uploading{opacity:.6}.attachment-chip img{width:40px;height:40px;object-fit:cover;border-radius:var(--radius-sm);background:var(--surface-lowest)}.attachment-chip-name{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-chip-size{color:var(--text-muted)}.attachment-chip button{background:none;border:none;cursor:pointer;padding:2px;color:var(--text-muted);display:flex}.attachment-chip button:hover{color:var(--danger)}.chat-upload-error{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:0 8px 6px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--danger-soft);color:var(--danger);font-size:var(--font-md)}.chat-upload-error button{background:none;border:none;cursor:pointer;color:var(--danger);display:flex;padding:2px}.voice-header-count{display:flex;align-items:center;gap:var(--space-1);margin-left:var(--space-2);padding:2px var(--space-2);background:var(--surface-lowest);border-radius:var(--radius-pill);font-size:var(--font-xs);font-weight:var(--fw-semibold);color:var(--text-muted)}.voice-header-count svg{display:block}.voice-ctl{width:44px;height:44px;border-radius:50%;border:none;background:var(--control);color:var(--text-on-fill);display:flex;align-items:center;justify-content:center;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.voice-ctl:hover{background:var(--interactive-active)}.voice-ctl.active{background:var(--text-strong);color:var(--surface-lowest)}.voice-ctl.active:hover{background:var(--text-default)}.voice-ctl.danger,.voice-ctl.leave-btn{background:var(--danger)}.voice-ctl.danger:hover,.voice-ctl.leave-btn:hover{background:var(--danger-hover)}.voice-ctl.leave-btn{margin-left:var(--space-4)}.voice-panel.embedded .voice-ctl{width:36px;height:36px}.voice-panel.embedded .voice-ctl svg{width:17px;height:17px}.voice-solo-hint{margin:0;padding:0 var(--space-4) var(--space-2);text-align:center;font-size:var(--font-md);color:var(--text-muted)}.dm-identity{display:flex;flex-direction:column;min-width:0;flex:1}.dm-subtitle{font-size:var(--font-xs);color:var(--text-subtle);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-item:has(.dm-subtitle){height:46px}.dm-group-avatar svg{display:block}.dm-intro{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-6) 0 var(--space-4)}.dm-intro-avatar.group{width:72px;height:72px;border-radius:50%;background:var(--surface-raised);color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.dm-intro-title{margin:var(--space-2) 0 0;font-size:var(--font-xl);font-weight:var(--fw-bold);color:var(--text-strong)}.dm-intro-body{margin:0;font-size:var(--font-md);color:var(--text-muted);line-height:var(--lh-body)}.avatar-wrap{position:relative;display:inline-flex;flex-shrink:0}.avatar-status{position:absolute;bottom:-1px;right:-1px;border-radius:50%;border:3px solid var(--avatar-ring, var(--surface-low));box-sizing:content-box}.avatar-status.online{background:var(--online)}.avatar-status.offline{background:var(--offline)}.avatar-status.idle{background:var(--warning)}.avatar-status.dnd{background:var(--danger)}.member-item:hover,.dm-item:hover{--avatar-ring: var(--interactive-hover)}.dm-item.active{--avatar-ring: var(--interactive-active)}.user-panel{--avatar-ring: var(--surface-float)}.user-panel-identity:hover{--avatar-ring: var(--interactive-hover)}.friends-view{--avatar-ring: var(--surface-base)}.friend-row:hover{--avatar-ring: var(--interactive-hover)}.top-bar{--avatar-ring: var(--surface-base)}.top-bar-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.top-bar-count{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0;padding:2px var(--space-2);background:var(--surface-lowest);border-radius:var(--radius-pill);font-size:var(--font-xs);font-weight:var(--fw-semibold);color:var(--text-muted)}.top-bar-count svg{display:block}.voice-empty-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:var(--surface-raised);color:var(--text-subtle)}.voice-panel.empty h2{margin:0;font-size:var(--font-xl);color:var(--text-strong)}.voice-empty-body{margin:0;max-width:400px;text-align:center;font-size:var(--font-md);color:var(--text-muted);line-height:var(--lh-body)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}:root{--scrollbar-thumb: rgba(255, 255, 255, .17);--scrollbar-thumb-hover: rgba(255, 255, 255, .3)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--radius-pill);border:3px solid transparent;background-clip:content-box;transition:background-color var(--dur-fast) var(--ease-in-out)}*::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}*::-webkit-scrollbar-button{display:none}*::-webkit-scrollbar-corner{background:transparent}.profile-card{position:fixed;z-index:1200;width:300px;background:var(--surface-float);border-radius:var(--radius-md);box-shadow:var(--shadow-high);overflow:hidden;--profile-accent: var(--accent);--avatar-ring: var(--surface-float)}.profile-card.measuring{visibility:hidden}.profile-card-avatar{margin:-36px 0 0 var(--space-4);width:max-content;border-radius:50%;box-shadow:0 0 0 6px var(--surface-float)}.profile-card-body{padding:var(--space-3) var(--space-4) var(--space-4)}.profile-card-display{font-size:var(--font-xl);font-weight:var(--fw-bold);color:var(--text-strong);line-height:var(--lh-tight);word-break:break-word}.profile-card-subline{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1);margin-top:2px}.profile-card-username{font-size:var(--font-sm);color:var(--text-secondary)}.profile-card-dot{font-size:var(--font-xs);color:var(--text-faint)}.profile-card-pronouns{font-size:var(--font-xs);color:var(--text-muted)}.profile-card-label{margin-top:var(--space-3);font-size:var(--font-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.02em;color:var(--text-secondary)}.profile-card-about{margin:var(--space-1) 0 0;font-size:var(--font-sm);color:var(--text-default);line-height:var(--lh-body);white-space:pre-wrap;word-break:break-word}.profile-card-meta{margin:var(--space-1) 0 0;font-size:var(--font-sm);color:var(--text-default)}.profile-card-action{margin-top:var(--space-4);width:100%;padding:var(--space-2) var(--space-3);background:var(--control);color:var(--text-strong);border-radius:var(--radius-sm);font-size:var(--font-sm);font-weight:var(--fw-medium)}.profile-card-action:hover{background:var(--interactive-hover)}.author-avatar-btn{background:none;padding:0;border-radius:50%;display:block}.author-avatar-btn:hover{opacity:.85}.author-name-btn{background:none;padding:0;font:inherit;color:inherit}.author-name-btn:hover{text-decoration:underline}.settings-hint{font-size:var(--font-xs);color:var(--text-muted);font-weight:var(--fw-normal)}.settings-field textarea{width:100%;padding:var(--space-2) var(--space-3);background:var(--surface-lowest);color:var(--text-default);border-radius:var(--radius-sm);font:inherit;font-size:var(--font-sm);line-height:var(--lh-body);resize:vertical;min-height:66px}.accent-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.accent-swatch{width:28px;height:28px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px var(--scrim-light);transition:transform var(--dur-base) var(--ease-out)}.accent-swatch:hover{transform:scale(1.1)}.accent-swatch.selected{box-shadow:0 0 0 2px var(--surface-raised),0 0 0 4px var(--text-strong)}.accent-swatch.none{background:var(--surface-lowest);position:relative}.accent-swatch.none:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:linear-gradient(45deg,transparent 45%,var(--danger) 45%,var(--danger) 55%,transparent 55%)}.account-pronouns{margin-left:var(--space-2);font-size:var(--font-xs);color:var(--text-muted);font-weight:var(--fw-normal)}.account-about{margin:var(--space-2) 0 var(--space-1);font-size:var(--font-sm);color:var(--text-default);line-height:var(--lh-body);white-space:pre-wrap}.account-card{border-left:3px solid var(--profile-accent, transparent)}.voice-audio{display:none}.invite-embed{margin-top:var(--space-1);max-width:420px;background:var(--surface-lowest);border-left:3px solid var(--accent);border-radius:var(--radius-sm);padding:var(--space-3)}.invite-embed.invalid{border-left-color:var(--offline)}.invite-label{display:block;font-size:var(--font-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted);margin-bottom:var(--space-2)}.invite-body{display:flex;align-items:center;gap:var(--space-3)}.invite-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text-secondary)}.invite-text{flex:1;min-width:0}.invite-name{margin:0;font-size:var(--font-md);font-weight:var(--fw-semibold);color:var(--text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invite-meta{margin:2px 0 0;font-size:var(--font-sm);color:var(--text-muted)}.invite-btn{flex:none;background:var(--online-fill);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:9px 16px;font-size:var(--font-md);font-weight:var(--fw-medium)}.invite-btn:hover:not(:disabled){background:var(--online-fill-hover)}.invite-btn:disabled{background:var(--control);opacity:.8}.invite-modal{display:flex;flex-direction:column;gap:var(--space-4)}.invite-friend-list{display:flex;flex-direction:column;max-height:280px;overflow-y:auto;background:var(--surface-lowest);border-radius:var(--radius-sm);padding:var(--space-1)}.invite-friend-row{display:flex;align-items:center;gap:var(--space-2);padding:6px 8px;border-radius:var(--radius-sm)}.invite-friend-row:hover{background:var(--interactive-hover)}.invite-friend-name{flex:1;min-width:0;color:var(--text-default);font-size:var(--font-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invite-send-btn{flex:none;background:var(--accent);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm);padding:6px 14px;font-size:var(--font-md);font-weight:var(--fw-medium)}.invite-send-btn:hover:not(:disabled){background:var(--accent-hover)}.invite-send-btn:disabled{background:var(--control);opacity:.8}.invite-send-btn.done{background:var(--online-fill)}.invite-modal-code{display:flex;flex-direction:column;gap:var(--space-2)}.chat-messages{padding-left:0;padding-right:0;position:relative}.chat-message{margin:0;padding:2px 48px 2px var(--space-4)}.chat-message.first-of-group{margin-top:var(--space-4)}.chat-day>.chat-date-divider,.chat-row>.chat-unread-divider,.chat-messages>.chat-load-more{padding-left:var(--space-4);padding-right:var(--space-4)}.chat-message{transition:background var(--dur-fast) var(--ease-in-out)}.chat-message.editing{background:var(--message-hover)}.chat-message-actions{background:var(--surface-raised);border-color:var(--divider-soft);border-radius:var(--radius-sm);box-shadow:var(--shadow-mid)}.chat-reply-context{margin-left:calc(40px + var(--space-4))}.chat-reply-context .avatar{margin:0 2px}.chat-edit{display:flex;flex-direction:column;gap:var(--space-1)}textarea.chat-edit-input{width:100%;background:var(--surface-lowest);border:1px solid var(--divider-soft);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--text-default);font-size:var(--font-body);line-height:var(--lh-body);font-family:inherit;resize:none;overflow-y:auto}textarea.chat-edit-input:focus{outline:none;border-color:var(--accent)}.chat-edit-hint{font-size:var(--font-xs);color:var(--text-subtle)}.chat-edit-hint .link-btn{font-size:var(--font-xs)}.chat-intro{padding:var(--space-6) var(--space-4) var(--space-4)}.dm-intro{padding-left:var(--space-4);padding-right:var(--space-4)}.chat-intro-icon{display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;background:var(--surface-raised);color:var(--text-default);margin-bottom:var(--space-3)}.chat-intro-title{margin:0 0 var(--space-2);font-size:var(--font-xl);font-weight:var(--fw-bold);color:var(--text-strong)}.chat-intro-body{margin:0;font-size:var(--font-md);color:var(--text-muted);line-height:var(--lh-body)}.chat-skeletons{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4)}.chat-skeleton{display:flex;gap:var(--space-4);align-items:flex-start}.skeleton-avatar{width:40px;height:40px;border-radius:50%;flex:none;background:var(--surface-raised)}.skeleton-lines{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.skeleton-line{height:10px;border-radius:var(--radius-sm);background:var(--surface-raised)}.skeleton-line.short{width:22%}.chat-skeleton .skeleton-avatar,.chat-skeleton .skeleton-line{animation:skeleton-pulse 1.4s var(--ease-in-out) infinite}.chat-skeleton:nth-child(2) .skeleton-line{animation-delay:80ms}.chat-skeleton:nth-child(3) .skeleton-line{animation-delay:.16s}.chat-skeleton:nth-child(4) .skeleton-line{animation-delay:.24s}.chat-skeleton:nth-child(5) .skeleton-line{animation-delay:.32s}@keyframes skeleton-pulse{0%,to{opacity:.5}50%{opacity:.9}}.chat-scroll{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.chat-jump-bar{position:absolute;left:var(--space-4);right:var(--space-4);bottom:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background:var(--accent);color:var(--text-on-fill);border:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;padding:6px var(--space-3);font-size:var(--font-sm);font-weight:var(--fw-medium);box-shadow:var(--shadow-mid);animation:jump-bar-in var(--dur-base) var(--ease-out)}.chat-jump-bar:hover{background:var(--accent-hover)}.chat-jump-bar-action{display:inline-flex;align-items:center;gap:var(--space-1)}@keyframes jump-bar-in{0%{transform:translateY(100%)}to{transform:none}}.chat-typing{min-height:24px;display:flex;align-items:center}.chat-input-box.uploading{opacity:.75}.chat-delete-lede{margin:0 0 var(--space-3);font-size:var(--font-md);color:var(--text-muted)}.chat-delete-preview{display:flex;flex-direction:column;gap:2px;background:var(--surface-base);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-4);font-size:var(--font-md);color:var(--text-default);max-height:180px;overflow-y:auto;overflow-wrap:anywhere}.chat-delete-preview strong{color:var(--text-strong);font-weight:var(--fw-semibold)}.occupant-avatar{display:inline-flex;border-radius:50%;flex:none}.occupant-avatar .avatar{box-shadow:0 0 0 2px transparent;transition:box-shadow var(--dur-fast) var(--ease-in-out)}.occupant-avatar.speaking .avatar{box-shadow:0 0 0 2px var(--online)}.chat-char-count{align-self:flex-end;margin-bottom:11px;font-size:var(--font-xs);color:var(--text-subtle);font-variant-numeric:tabular-nums}.chat-char-count.over{color:var(--danger);font-weight:var(--fw-semibold)}.peer-name-btn,.occupant-name-btn{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.peer-name-btn:hover,.occupant-name-btn:hover{text-decoration:underline}.voice-occupant .occupant-name-btn{flex:1;min-width:0}.peer-tile .author-avatar-btn{border-radius:50%}.profile-banner{position:relative;background:var(--banner-color, var(--profile-accent));overflow:hidden}.profile-banner-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.profile-card-banner{height:100px}.account-preview{border-radius:var(--radius-md);overflow:hidden;background:var(--surface-low)}.account-preview>.account-card{border-radius:0}.account-preview-banner{height:120px}.banner-edit{display:flex;flex-direction:column;gap:var(--space-2)}.banner-edit-preview{height:120px;border-radius:var(--radius-md)}.banner-edit-actions{display:flex;gap:var(--space-4)}.chat-day{display:flex;flex-direction:column}.chat-day>.chat-date-divider{position:sticky;top:0;z-index:2;background:var(--surface-base);margin:0;padding-top:var(--space-4);padding-bottom:var(--space-2)}.chat-day:first-of-type>.chat-date-divider{padding-top:var(--space-2)}.tooltip-wrap{position:relative;display:inline-flex}.tooltip-bubble{position:fixed;z-index:900;background:var(--surface-float);color:var(--text-strong);font-size:var(--font-sm);font-weight:var(--fw-semibold);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-mid)}.tooltip-top{transform:translate(-50%,-100%)}.tooltip-bottom{transform:translate(-50%)}.tooltip-right{transform:translateY(-50%)}.tooltip-left{transform:translate(-100%,-50%)}.tooltip-bubble:after{content:"";position:absolute;border:6px solid transparent}.tooltip-top:after{top:100%;left:50%;margin-left:-6px;border-top-color:var(--surface-float)}.tooltip-bottom:after{bottom:100%;left:50%;margin-left:-6px;border-bottom-color:var(--surface-float)}.tooltip-right:after{right:100%;top:50%;margin-top:-6px;border-right-color:var(--surface-float)}.tooltip-left:after{left:100%;top:50%;margin-top:-6px;border-left-color:var(--surface-float)}.chat-input-box>.attach-tooltip{align-self:flex-end}.member-owner-tip{margin-left:auto}.tooltip-rich .tooltip-bubble{white-space:normal;max-width:260px;text-align:center;font-weight:var(--fw-medium)}.chat-input{padding-bottom:0}.chat-typing{min-height:24px;padding:0 var(--space-4) var(--space-2)}.chat-panel{position:relative}.chat-drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:400;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--scrim);pointer-events:none;animation:drop-overlay-in var(--dur-fast) var(--ease-out)}.chat-drop-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);width:100%;height:100%;border:2px dashed var(--accent);border-radius:var(--radius-md);color:var(--text-strong);text-align:center}.chat-drop-card strong{font-size:var(--font-lg);font-weight:var(--fw-bold)}.chat-drop-card span{font-size:var(--font-sm);color:var(--text-muted)}.chat-drop-card svg{color:var(--accent)}@keyframes drop-overlay-in{0%{opacity:0}to{opacity:1}}.chat-input{position:relative}.emoji-popover{position:absolute;z-index:500;right:0;bottom:calc(100% + var(--space-2));width:340px;max-width:calc(100vw - var(--space-8));display:flex;flex-direction:column;background:var(--surface-float);border:1px solid var(--divider-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-mid);overflow:hidden}.emoji-search{margin:var(--space-3) var(--space-3) var(--space-2);background:var(--surface-lowest);border:1px solid var(--divider-soft);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);color:var(--text-default);font-size:var(--font-md);font-family:inherit}.emoji-search:focus{outline:none;border-color:var(--accent)}.emoji-scroll{overflow-y:auto;max-height:280px;padding:0 var(--space-3) var(--space-3)}.emoji-group-name{position:sticky;top:0;z-index:1;background:var(--surface-float);padding:var(--space-2) 0 var(--space-1);font-size:var(--font-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.02em;color:var(--text-subtle)}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr)}.emoji-cell{background:none;border:none;cursor:pointer;width:100%;aspect-ratio:1;padding:0;display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;border-radius:var(--radius-sm);transition:background var(--dur-fast) var(--ease-in-out)}.emoji-cell:hover,.emoji-cell:focus-visible{background:var(--surface-raised);outline:none}.emoji-grid>.tooltip-wrap{display:flex}.emoji-empty{padding:var(--space-4) 0;font-size:var(--font-sm);color:var(--text-muted);text-align:center}.emoji-btn{background:none;border:none;color:var(--text-muted);display:flex;padding:0;cursor:pointer}.emoji-btn:hover,.emoji-btn.open{color:var(--text-default)}.chat-input-box>.emoji-tooltip{align-self:flex-end;margin-bottom:var(--space-2)}.mention-popover{position:absolute;z-index:500;left:0;right:0;bottom:calc(100% + var(--space-2));display:flex;flex-direction:column;background:var(--surface-float);border:1px solid var(--divider-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-mid);padding:var(--space-2);gap:2px;overflow:hidden}.mention-item{display:flex;align-items:center;gap:var(--space-2);background:none;border:none;cursor:pointer;text-align:left;padding:var(--space-2);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-md);font-family:inherit}.mention-item.active{background:var(--accent);color:var(--text-on-fill)}.mention-name{font-weight:var(--fw-semibold)}.mention-username{color:var(--text-subtle);font-size:var(--font-sm)}.mention-item.active .mention-username{color:var(--text-on-fill);opacity:.75}.top-bar-divider{width:1px;height:24px;flex:none;background:var(--divider);margin:0 var(--space-1)}.top-bar-topic{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-sm);font-weight:var(--fw-normal);color:var(--text-muted)}.top-bar>.top-bar-topic-tip{min-width:0;flex:0 1 auto}.chat-unread-bar{position:absolute;left:var(--space-4);right:var(--space-4);top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background:var(--surface-float);color:var(--text-default);border-radius:0 0 var(--radius-sm) var(--radius-sm);box-shadow:var(--shadow-mid);font-size:var(--font-sm);font-weight:var(--fw-medium);animation:unread-bar-in var(--dur-base) var(--ease-out)}.chat-unread-bar button{background:none;border:none;cursor:pointer;color:inherit;font:inherit;padding:6px var(--space-3)}.chat-unread-bar-jump{flex:1;text-align:left;min-width:0}.chat-unread-bar-jump:hover{color:var(--text-strong)}.chat-unread-bar-action{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--text-muted);flex:none}.chat-unread-bar-action:hover{color:var(--text-strong)}@keyframes unread-bar-in{0%{transform:translateY(-100%)}to{transform:none}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);height:100%;padding:var(--space-4);color:var(--text-muted);text-align:center}.empty-state-icon{color:var(--text-subtle);display:flex}.empty-state-title{margin:var(--space-2) 0 0;font-size:var(--font-md);font-weight:var(--fw-semibold);color:var(--text-secondary)}.empty-state-body{margin:0;max-width:400px;font-size:var(--font-sm);line-height:var(--lh-body)}.empty-state-inline{height:auto;padding:var(--space-6) var(--space-3)}.empty-state-inline .empty-state-title{font-size:var(--font-sm)}.empty-state-inline .empty-state-body{font-size:var(--font-xs)}.chat-message.entering{animation:message-in var(--dur-base) var(--ease-out)}@keyframes message-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.chat-unread-divider.fading{animation:divider-out var(--dur-slow) var(--ease-in-out) forwards;overflow:hidden}@keyframes divider-out{0%{opacity:1;max-height:40px;margin-top:var(--space-2);margin-bottom:var(--space-2)}to{opacity:0;max-height:0;margin-top:0;margin-bottom:0}}.channel-drop-line{height:2px;margin:1px var(--space-2);background:var(--accent);border-radius:1px;pointer-events:none}.channel-item[draggable=true]{cursor:grab}.channel-item[draggable=true]:active{cursor:grabbing}.composer-send{display:none;background:none;border:none;padding:0;color:var(--accent);align-self:flex-end;margin-bottom:var(--space-2)}.composer-send:disabled{color:var(--icon-faint);cursor:default}@media (max-width: 599px){.composer-send{display:flex}}.peer-tile.self video{transform:scaleX(-1)}.peer-grid{grid-template-columns:repeat(auto-fit,minmax(180px,300px))}.peer-grid.video-active{grid-template-columns:repeat(auto-fit,minmax(220px,420px))}.voice-panel.embedded .peer-grid:not(.video-active){grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.tile-placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);max-width:100%;padding:0 var(--space-2)}.tile-placeholder-note{display:flex;align-items:center;gap:5px;font-size:var(--font-xs);color:var(--text-muted)}.tile-placeholder-note svg{display:block}.screenshare-sub{margin:6px 0 0;font-size:var(--font-xs);color:var(--text-muted);line-height:1.45}
