:root{--bg-base:#09090f;--bg-surface:#0d0d1a;--bg-raised:#111120;--bg-hover:#16162a;--bg-active:#1e1a36;--border:#1e2030;--accent:#7c3aed;--accent-dim:rgba(124,58,237,.15);--text-hi:#e2e8f0;--text-md:#94a3b8;--text-lo:#64748b;--text-xlo:#475569;--danger:#dc2626;--danger-dim:rgba(220,38,38,.15);--green:#34d399;--gold:#f59e0b}*,:after,:before{box-sizing:border-box}body,html{background:#09090f;color:#eef2ff;margin:0;padding:0}#root,body,html{height:100%}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#22223a;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#3a3a55}@media (max-width:900px){input,select,textarea{font-size:16px!important}}.auth-screen{align-items:center;background:#09090f;display:flex;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Helvetica Neue,sans-serif;font-size:14px;justify-content:center;min-height:100vh;padding:24px}.auth-screen,.auth-screen *,.auth-screen :after,.auth-screen :before{box-sizing:border-box}.auth-screen.overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(9,9,15,.85);inset:0;position:fixed;z-index:100}.auth-card{background:#111120;border:1px solid #22223a;border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.7),0 0 0 1px rgba(124,58,237,.08);max-width:420px;padding:40px;position:relative;width:100%}.auth-header{margin-bottom:32px;text-align:center}.auth-logo{color:#7c3aed;display:block;-webkit-filter:drop-shadow(0 0 16px rgba(124,58,237,.6));filter:drop-shadow(0 0 16px rgba(124,58,237,.6));font-size:36px;line-height:1;margin-bottom:14px}.auth-title{color:#f0f0ff;font-size:24px;font-weight:700;letter-spacing:-.3px;margin:0 0 6px}.auth-subtitle{color:#7070a0;font-size:13px;margin:0}.auth-form{gap:16px}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:6px}.auth-field label{color:#9090b8;font-size:12px;font-weight:500;letter-spacing:.3px;text-transform:uppercase}.auth-field input{background:#09090f;border:1px solid #22223a;border-radius:10px;color:#f0f0ff;font-family:inherit;font-size:14px;outline:none;padding:10px 14px;transition:border-color .15s}.auth-field input::-webkit-input-placeholder{color:#3a3a5c}.auth-field input::placeholder{color:#3a3a5c}.auth-field input:focus{border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.15)}.auth-error{background:rgba(220,38,38,.12);border:1px solid rgba(220,38,38,.3);border-radius:8px;color:#f87171}.auth-error,.auth-message{font-size:13px;margin:0;padding:10px 14px}.auth-message{background:rgba(5,150,105,.12);border:1px solid rgba(5,150,105,.3);border-radius:8px;color:#34d399}.auth-submit{background:#7c3aed;border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;margin-top:4px;padding:11px;transition:background .15s,opacity .15s}.auth-submit:hover:not(:disabled){background:#6d28d9}.auth-submit:disabled{cursor:not-allowed;opacity:.5}.auth-toggle{color:#6060a0;font-size:13px;margin-top:20px;text-align:center}.auth-toggle button{background:none;border:none;color:#7c3aed;cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;padding:0}.auth-toggle button:hover{color:#a78bfa}.auth-close{background:none;border:none;border-radius:6px;color:#505080;cursor:pointer;font-family:inherit;font-size:16px;line-height:1;padding:4px 8px;position:absolute;right:16px;top:16px;transition:color .15s,background .15s}.auth-close:hover{background:#22223a;color:#f0f0ff}.chat-app,.chat-lobby{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Helvetica Neue,sans-serif;font-size:14px}.chat-app *,.chat-app :after,.chat-app :before,.chat-lobby *,.chat-lobby :after,.chat-lobby :before{box-sizing:border-box}.chat-lobby{align-items:center;background:#09090f;display:flex;justify-content:center;min-height:100vh;padding:24px}.lobby-card{background:#111120;border:1px solid #22223a;border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.7),0 0 0 1px rgba(124,58,237,.08);max-width:440px;padding:40px;width:100%}.lobby-header{margin-bottom:32px;text-align:center}.lobby-logo{display:block;-webkit-filter:drop-shadow(0 0 20px rgba(124,58,237,.6));filter:drop-shadow(0 0 20px rgba(124,58,237,.6));font-size:44px;line-height:1;margin-bottom:14px}.lobby-title{color:#eef2ff;font-size:26px;font-weight:700;letter-spacing:-.5px;margin:0 0 6px}.lobby-subtitle{color:#64748b;font-size:14px;margin:0}.lobby-auth-row{align-items:center;border-top:1px solid #1a1a2e;color:#6060a0;display:flex;flex-wrap:wrap;font-size:13px;gap:8px;justify-content:center;margin-top:20px;padding-top:16px;text-align:center}.lobby-auth-status{color:#7070a0}.lobby-auth-status strong{color:#a78bfa}.lobby-auth-link{background:none;border:none;color:#7c3aed;cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;padding:0;text-decoration:underline;text-underline-offset:2px}.lobby-auth-link:hover{color:#a78bfa}.lobby-form{display:flex;flex-direction:column;gap:10px}.form-label{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.1em;margin-bottom:6px;text-transform:uppercase}.input{background:#09090f;border:1px solid #22223a;border-radius:8px;color:#eef2ff;font-family:inherit;font-size:14px;outline:none;padding:10px 14px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.input:focus{border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.18)}.input:disabled{cursor:not-allowed;opacity:.45}.input::-webkit-input-placeholder{color:#334155}.input::placeholder{color:#334155}.id-input-group{align-items:center;display:flex;gap:8px}.id-input-group .input{color:#a78bfa;flex:1 1;font-family:SF Mono,Fira Code,Cascadia Code,Courier New,monospace;font-size:12px;letter-spacing:.03em}.btn{align-items:center;border:1px solid transparent;border-radius:8px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:500;gap:6px;justify-content:center;padding:10px 18px;text-decoration:none;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,opacity .15s ease;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.45}.btn-primary{background:#7c3aed;border-color:#7c3aed;color:#fff}.btn-primary:hover:not(:disabled){background:#6d28d9;border-color:#6d28d9}.btn-primary:active:not(:disabled){background:#5b21b6}.btn-secondary{background:#1c1c2e;border-color:#22223a;color:#eef2ff}.btn-secondary:hover:not(:disabled){background:#22223a;border-color:#3a3a55}.btn-lg{border-radius:10px;font-size:15px;font-weight:600;padding:13px 28px}.btn-full{width:100%}.btn-icon{align-items:center;background:#1c1c2e;border:1px solid #22223a;border-radius:7px;color:#64748b;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:15px;height:34px;justify-content:center;line-height:1;transition:background .15s,border-color .15s,color .15s;width:34px}.btn-icon:hover{background:#22223a;border-color:#3a3a55;color:#eef2ff}.btn-disconnect{align-items:center;background:transparent;border:none;border-radius:5px;color:#334155;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:12px;height:22px;justify-content:center;line-height:1;margin-left:auto;transition:background .15s,color .15s;width:22px}.btn-disconnect:hover{background:rgba(239,68,68,.15);color:#ef4444}.error-text{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:8px;color:#f87171;font-size:13px;margin:0;padding:8px 12px}.chat-app{background:#09090f;color:#eef2ff;height:100vh;width:100%}.chat-app,.chat-sidebar{display:flex;overflow:hidden}.chat-sidebar{background:#111120;border-right:1px solid #1e1e32;flex-direction:column;min-width:280px;transition:-webkit-transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1),-webkit-transform .25s cubic-bezier(.4,0,.2,1);width:280px;z-index:200}.sidebar-header{align-items:center;border-bottom:1px solid #1e1e32;display:flex;flex-shrink:0;gap:10px;padding:16px 18px}.app-logo{-webkit-filter:drop-shadow(0 0 8px rgba(124,58,237,.55));filter:drop-shadow(0 0 8px rgba(124,58,237,.55));font-size:20px;line-height:1}.app-name{color:#eef2ff;font-size:15px;font-weight:700;letter-spacing:-.2px}.sidebar-body{flex:1 1;overflow:hidden}.sidebar-body,.sidebar-sections{display:flex;flex-direction:column}.sidebar-sections{flex-shrink:0;gap:14px;padding:14px 16px}.sidebar-section{display:flex;flex-direction:column;gap:8px}.section-label{color:#334155;font-size:10px;font-weight:700;letter-spacing:.12em;margin:0;text-transform:uppercase}.sidebar-divider{background:#1e1e32;border:none;flex-shrink:0;height:1px}.id-row{align-items:center;background:#09090f;border:1px solid #1e1e32;border-radius:8px;display:flex;gap:6px;padding:8px 10px}.id-value{color:#a78bfa;flex:1 1;font-family:SF Mono,Fira Code,Cascadia Code,Courier New,monospace;font-size:12px;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-btn-icon{align-items:center;background:transparent;border:1px solid #22223a;border-radius:6px;color:#64748b;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:14px;height:28px;justify-content:center;line-height:1;transition:background .15s,color .15s,border-color .15s;width:28px}.copy-btn-icon:hover{background:#22223a;border-color:#3a3a55;color:#a78bfa}.copy-btn-icon.copied{background:rgba(16,185,129,.08);border-color:rgba(16,185,129,.3);color:#10b981}.connect-row{gap:8px}.connect-row,.sidebar-footer{display:flex;flex-direction:column}.sidebar-footer{flex-shrink:0;gap:6px;padding:14px 16px}.participants-area{display:flex;flex:1 1;flex-direction:column;min-height:0;padding:0 16px 16px}.participants-header{align-items:center;display:flex;gap:6px;margin-bottom:8px}.participants-badge{align-items:center;background:rgba(124,58,237,.2);border-radius:9px;color:#a78bfa;display:inline-flex;font-size:10px;font-weight:700;height:18px;justify-content:center;min-width:18px;padding:0 5px}.participants-scroll-root{flex:1 1;min-height:0;overflow:hidden}.participants-scroll-viewport{display:flex;flex-direction:column;gap:2px;height:100%;overflow-y:auto;padding-right:4px}.participant-item{align-items:center;border-radius:8px;display:flex;gap:10px;padding:7px 8px;transition:background .12s}.participant-item:hover{background:#1a1a2e}.participant-name{color:#cbd5e1;flex:1 1;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-root{height:30px;width:30px}.avatar-root,.avatar-root-sm{align-items:center;border-radius:50%;display:flex;flex-shrink:0;justify-content:center;overflow:hidden}.avatar-root-sm{height:26px;width:26px}.avatar-fallback{align-items:center;color:hsla(0,0%,100%,.9);display:flex;font-size:12px;font-weight:700;height:100%;justify-content:center;width:100%}.radix-scrollbar{background:transparent;display:flex;padding:2px;touch-action:none;transition:background .15s;-webkit-user-select:none;user-select:none}.radix-scrollbar[data-orientation=vertical]{width:6px}.radix-scrollbar[data-orientation=horizontal]{flex-direction:column;height:6px}.radix-scrollbar-thumb{background:#2a2a3e;border-radius:9999px;cursor:pointer;flex:1 1;position:relative}.radix-scrollbar-thumb:hover{background:#3a3a55}.tooltip-content{background:#eef2ff;border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,.4);color:#0b0b14;font-family:inherit;font-size:12px;padding:5px 10px;-webkit-user-select:none;user-select:none;z-index:999}.tooltip-arrow{fill:#eef2ff}.chat-main{background:#09090f;display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}.chat-topbar{align-items:center;background:#111120;border-bottom:1px solid #1e1e32;display:none;flex-shrink:0;gap:12px;padding:12px 16px}.topbar-title{color:#eef2ff;flex:1 1;font-size:15px;font-weight:600}.status-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.status-dot.online{background:#10b981;box-shadow:0 0 6px rgba(16,185,129,.5)}.status-dot.offline{background:#334155}.messages-scroll-root{flex:1 1;min-height:0;overflow:hidden}.messages-scroll-viewport{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:24px 20px 8px}.empty-state{align-items:center;color:#334155;display:flex;flex:1 1;flex-direction:column;font-size:14px;gap:8px;justify-content:center;padding:40px;text-align:center}.empty-state-icon{-webkit-filter:grayscale(1) opacity(.4);filter:grayscale(1) opacity(.4);font-size:36px;margin-bottom:4px}.messages-list{display:flex;flex-direction:column;gap:4px}.messages-history-status{align-self:center;color:#64748b;font-size:11px;padding:4px 0 8px}.message-group{align-items:flex-start;border-radius:6px;display:flex;gap:10px;margin-bottom:8px;max-width:100%;padding:2px 6px}.message-group-body{flex:1 1;min-width:0}.message-item{align-items:center;border-radius:3px;display:flex;gap:8px;padding:1px 4px;transition:background .1s}.message-item:hover{background:hsla(0,0%,100%,.03)}.message-item .message-actions{flex-shrink:0;left:auto;margin-left:auto;opacity:0;pointer-events:none;position:relative;right:auto;top:auto;transition:opacity .12s ease}.message-item .message-actions.menu-open,.message-item:hover .message-actions{opacity:1;pointer-events:auto}.message-bubble-wrap{max-width:100%;min-width:0;position:relative}.message-row{align-items:flex-start;border-radius:6px;display:flex;gap:10px;margin-bottom:2px;max-width:82%;padding:3px 6px;transition:background .1s}.message-row:hover{background:hsla(0,0%,100%,.03)}.message-row.row-own{align-self:flex-end;flex-direction:row-reverse;margin-left:auto}.message-row.row-system{align-self:center;justify-content:center;max-width:100%}.message-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:30px;justify-content:center;margin-top:2px;width:30px}.message-bubble{background:none;border:none;border-radius:0;max-width:100%;min-width:0;padding:0}.message-header{align-items:baseline;display:flex;gap:7px;margin-bottom:3px}.row-own .message-header{flex-direction:row-reverse}.message-sender-name{color:#a78bfa;font-size:13px;font-weight:700;line-height:1;white-space:nowrap}.row-own .message-sender-name{color:#60a5fa}.message-time{color:#475569;flex-shrink:0;font-size:11px;line-height:1;white-space:nowrap}.message-text{color:#e2e8f0;font-size:14px;line-height:1.6;margin:0;word-break:break-word}.message-actions{opacity:0;pointer-events:none;position:absolute;right:-34px;top:-2px;transition:opacity .12s ease;z-index:2}.row-own .message-actions{left:-34px;right:auto}.message-actions.menu-open,.message-bubble-wrap:focus-within .message-actions,.message-row:hover .message-actions{opacity:1;pointer-events:auto}.message-action-trigger{align-items:center;background:rgba(10,10,18,.92);border:1px solid #2b2b46;border-radius:999px;color:#94a3b8;cursor:pointer;display:flex;height:24px;justify-content:center;transition:background .12s ease,color .12s ease,border-color .12s ease;width:24px}.message-action-trigger:hover{background:#16162a;border-color:#3b3b5f;color:#e2e8f0}.message-action-dots{display:inline-block;letter-spacing:1px;line-height:1;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.message-action-menu{background:#111120;border:1px solid #1e2030;border-radius:8px;bottom:calc(100% + 6px);box-shadow:0 8px 24px rgba(0,0,0,.45);min-width:160px;padding:4px;position:absolute;right:0}.row-own .message-action-menu{left:0;right:auto}.message-action-item{background:none;border:none;border-radius:6px;color:#cbd5e1;cursor:pointer;font-size:13px;padding:8px 10px;text-align:left;width:100%}.message-action-item:hover{background:#1a1a2e}.message-action-item.danger{color:#fca5a5}.message-action-item.danger:hover{background:rgba(220,38,38,.12)}.message-action-empty{color:#64748b;font-size:12px;padding:8px 10px}.system-message-text{color:#334155;font-size:11px;font-style:italic;margin:0;padding:4px 0}.chat-input-area{align-items:flex-end;background:#111120;border-top:1px solid #1e1e32;display:flex;flex-shrink:0;gap:10px;padding:16px 20px}.chat-textarea{background:#09090f;border:1px solid #22223a;border-radius:12px;color:#eef2ff;flex:1 1;font-family:inherit;font-size:14px;line-height:1.5;max-height:160px;min-height:48px;outline:none;overflow-y:auto;padding:12px 16px;resize:none;transition:border-color .15s ease,box-shadow .15s ease}.chat-textarea:focus{border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.15)}.chat-textarea:disabled{cursor:not-allowed;opacity:.35}.chat-textarea::-webkit-input-placeholder{color:#334155}.chat-textarea::placeholder{color:#334155}.btn-send{border-radius:12px;flex-shrink:0;font-weight:600;height:48px;padding:0 22px}.message-delete-preview{background:#151525;border:1px solid #22223a;border-radius:12px;color:#e2e8f0;font-size:14px;line-height:1.5;margin-top:12px;padding:12px 14px;word-break:break-word}.sidebar-overlay{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background:rgba(0,0,0,.55);display:none;inset:0;position:fixed;z-index:199}@media (max-width:768px){.chat-sidebar{box-shadow:none;height:100%;left:0;min-width:0;position:fixed;top:0;-webkit-transform:translateX(-100%);transform:translateX(-100%);width:300px}.chat-sidebar.sidebar-open{box-shadow:6px 0 32px rgba(0,0,0,.6);-webkit-transform:translateX(0);transform:translateX(0)}.sidebar-overlay{display:block}.chat-topbar{display:flex}.message-row{max-width:92%}.messages-scroll-viewport{padding:14px 14px 6px}.chat-input-area{padding:12px 14px}.lobby-card{padding:28px 24px}}.btn-voice-join{align-items:center;background:#064e3b;border:1px solid #059669;border-radius:8px;color:#6ee7b7;cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;font-weight:600;gap:6px;justify-content:center;padding:9px 14px;transition:background .15s,border-color .15s,color .15s;width:100%}.btn-voice-join:hover{background:#065f46;border-color:#10b981;color:#a7f3d0}.voice-controls{display:flex;gap:6px}.btn-voice-control{align-items:center;background:#1c1c2e;border:1px solid #22223a;border-radius:8px;color:#a78bfa;cursor:pointer;display:inline-flex;flex:1 1;font-family:inherit;font-size:12px;font-weight:600;gap:5px;justify-content:center;padding:8px 10px;transition:background .15s,border-color .15s,color .15s}.btn-voice-control:hover{background:#22223a;border-color:#3a3a55;color:#eef2ff}.btn-voice-control.btn-voice-muted{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3);color:#f87171}.btn-voice-control.btn-voice-muted:hover{background:rgba(239,68,68,.18);border-color:rgba(239,68,68,.5)}.btn-voice-control.btn-voice-host-muted{color:#f87171;cursor:not-allowed;opacity:.7}.btn-voice-control.btn-voice-host-muted,.btn-voice-control.btn-voice-host-muted:hover{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.25)}.voice-btn-icon{font-size:14px;line-height:1}.btn-voice-leave{align-items:center;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#f87171;cursor:pointer;display:inline-flex;font-family:inherit;font-size:12px;font-weight:600;justify-content:center;padding:8px 10px;transition:background .15s,border-color .15s;white-space:nowrap}.btn-voice-leave:hover{background:rgba(239,68,68,.18);border-color:rgba(239,68,68,.5)}.voice-count-badge{background:rgba(5,150,105,.15);border:1px solid rgba(5,150,105,.3);border-radius:9px;color:#6ee7b7;font-size:10px;font-weight:700;gap:3px;margin-left:auto;padding:1px 6px}.voice-count-badge,.voice-indicator{align-items:center;display:inline-flex}.voice-indicator{flex-shrink:0;font-size:13px;line-height:1}@-webkit-keyframes speaking-pulse{0%,to{-webkit-filter:brightness(1);filter:brightness(1);-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-filter:brightness(1.4);filter:brightness(1.4);-webkit-transform:scale(1.25);transform:scale(1.25)}}@keyframes speaking-pulse{0%,to{-webkit-filter:brightness(1);filter:brightness(1);-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-filter:brightness(1.4);filter:brightness(1.4);-webkit-transform:scale(1.25);transform:scale(1.25)}}.voice-indicator.speaking{-webkit-animation:speaking-pulse .55s ease-in-out infinite;animation:speaking-pulse .55s ease-in-out infinite}.btn-mute-peer{align-items:center;background:transparent;border:none;border-radius:5px;color:#334155;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:13px;height:22px;justify-content:center;line-height:1;transition:background .15s,color .15s;width:22px}.btn-mute-peer:hover{background:rgba(245,158,11,.15);color:#fbbf24}.btn-mute-peer.btn-mute-peer-active{background:rgba(245,158,11,.12);color:#fbbf24}.btn-mute-peer.btn-mute-peer-active:hover{background:rgba(245,158,11,.22);color:#fcd34d}.voice-status-bar{align-items:center;background:rgba(5,150,105,.08);border-bottom:1px solid rgba(5,150,105,.2);display:flex;flex-shrink:0;gap:10px;padding:7px 20px}.voice-status-bar.voice-status-muted{background:rgba(239,68,68,.06);border-bottom-color:rgba(239,68,68,.2)}@-webkit-keyframes pip-pulse{0%,to{box-shadow:0 0 0 0 rgba(16,185,129,.5);opacity:1}50%{box-shadow:0 0 0 4px rgba(16,185,129,0);opacity:.7}}@keyframes pip-pulse{0%,to{box-shadow:0 0 0 0 rgba(16,185,129,.5);opacity:1}50%{box-shadow:0 0 0 4px rgba(16,185,129,0);opacity:.7}}.voice-status-pip{-webkit-animation:pip-pulse 2s ease-in-out infinite;animation:pip-pulse 2s ease-in-out infinite;background:#10b981;border-radius:50%;flex-shrink:0;height:7px;width:7px}.voice-status-bar.voice-status-muted .voice-status-pip{-webkit-animation:none;animation:none;background:#ef4444}.voice-status-label{align-items:center;color:#6ee7b7;display:flex;flex:1 1;font-size:12px;font-weight:600;gap:4px}.voice-status-bar.voice-status-muted .voice-status-label{color:#f87171}.voice-status-count{color:#94a3b8;font-weight:400}.voice-status-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.btn-voice-sm{align-items:center;background:#1c1c2e;border:1px solid #22223a;border-radius:6px;color:#94a3b8;cursor:pointer;display:inline-flex;font-family:inherit;font-size:11px;font-weight:600;padding:4px 10px;transition:background .15s,border-color .15s,color .15s}.btn-voice-sm:hover{background:#22223a;color:#eef2ff}.btn-voice-sm.btn-voice-sm-muted{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.3);color:#f87171}.btn-voice-sm.btn-voice-sm-muted:hover{background:rgba(239,68,68,.15)}.btn-voice-sm.btn-voice-sm-leave{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.3);color:#f87171}.btn-voice-sm.btn-voice-sm-leave:hover{background:rgba(239,68,68,.18)}.messages-scroll-viewport::-webkit-scrollbar,.participants-scroll-viewport::-webkit-scrollbar{width:5px}.messages-scroll-viewport::-webkit-scrollbar-track,.participants-scroll-viewport::-webkit-scrollbar-track{background:transparent}.messages-scroll-viewport::-webkit-scrollbar-thumb,.participants-scroll-viewport::-webkit-scrollbar-thumb{background:#22223a;border-radius:9999px}.messages-scroll-viewport::-webkit-scrollbar-thumb:hover,.participants-scroll-viewport::-webkit-scrollbar-thumb:hover{background:#3a3a55}.room-voice-panel{background:linear-gradient(180deg,rgba(19,20,38,.98),rgba(13,13,26,.98));border:1px solid #1e2030;border-radius:10px;display:flex;flex-direction:column;gap:10px;min-width:320px;padding:12px}.room-voice-summary{align-items:center;display:flex;gap:12px;justify-content:space-between}.room-voice-title{color:#94a3b8;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.room-voice-subtitle{color:#e2e8f0;font-size:13px}.room-voice-status{background:#1f2937;border-radius:999px;color:#e2e8f0;font-size:11px;font-weight:700;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.room-voice-status.is-connected{background:rgba(5,150,105,.18);color:#6ee7b7}.room-voice-status.is-connecting,.room-voice-status.is-reconnecting{background:rgba(37,99,235,.18);color:#93c5fd}.room-voice-status.is-failed{background:rgba(220,38,38,.18);color:#fca5a5}.room-voice-banner{align-items:center;background:rgba(37,99,235,.12);border-radius:8px;color:#bfdbfe;display:flex;font-size:12px;gap:10px;justify-content:space-between;padding:8px 10px}.room-voice-banner-meta{color:#93c5fd}.room-voice-actions{display:flex;flex-wrap:wrap;gap:8px}.room-voice-btn{border:1px solid transparent;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;height:34px;padding:0 12px;transition:background .12s,border-color .12s,color .12s,opacity .12s}.room-voice-btn:disabled{cursor:not-allowed;opacity:.6}.room-voice-btn-primary{background:#2563eb;color:#eff6ff}.room-voice-btn-primary:hover:not(:disabled){background:#1d4ed8}.room-voice-btn-secondary{background:#16162a;border-color:#2b3048;color:#e2e8f0}.room-voice-btn-secondary:hover:not(:disabled){background:#1a1f33}.room-voice-btn-warning{background:rgba(180,83,9,.18);border-color:rgba(180,83,9,.35);color:#fdba74}.room-voice-settings{grid-gap:10px;background:rgba(15,23,42,.5);border:1px solid rgba(51,65,85,.65);border-radius:8px;display:grid;gap:10px;padding:10px}.room-voice-field{grid-gap:6px;display:grid;gap:6px}.room-voice-field-label{color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.room-voice-select{background:#111827;border:1px solid #2b3048;border-radius:8px;color:#e2e8f0;font-size:13px;min-height:34px;padding:8px 10px;width:100%}.room-voice-select:disabled{opacity:.6}.room-voice-toggle{align-items:flex-start;color:#e2e8f0;display:flex;font-size:13px;gap:8px}.room-voice-toggle.is-disabled{opacity:.75}.room-voice-toggle-note{color:#94a3b8;display:block;font-size:11px;margin-top:2px}.room-voice-error{background:rgba(220,38,38,.12);border-radius:8px;color:#fca5a5;font-size:12px;padding:8px 10px}.room-voice-roster{display:flex;flex-direction:column;gap:8px}.room-voice-empty{color:#64748b;font-size:12px}.room-voice-user{align-items:center;background:rgba(22,22,42,.72);border:1px solid transparent;border-radius:8px;display:flex;gap:10px;padding:8px;transition:border-color .12s,background .12s,-webkit-transform .12s;transition:border-color .12s,background .12s,transform .12s;transition:border-color .12s,background .12s,transform .12s,-webkit-transform .12s}.room-voice-user.is-recent{border-color:rgba(37,99,235,.18)}.room-voice-user.is-speaking{background:rgba(5,150,105,.12);border-color:rgba(16,185,129,.35);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.room-voice-avatar{align-items:center;background:#334155;border-radius:50%;color:#f8fafc;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:28px;justify-content:center;width:28px}.room-voice-user-meta{flex:1 1;min-width:0}.room-voice-user-name{color:#e2e8f0;font-size:13px}.room-voice-user-state{color:#94a3b8;font-size:12px}.room-voice-user-indicators{align-items:center;display:flex;gap:8px}.room-voice-user-dot{background:#34d399;border-radius:999px;box-shadow:0 0 0 4px rgba(52,211,153,.12);height:9px;width:9px}.room-voice-user-dot.is-muted{background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.12)}.room-voice-speaker-bars{align-items:flex-end;display:flex;gap:2px;height:14px;width:16px}.room-voice-speaker-bars span{background:#475569;border-radius:999px;transition:height .12s,background .12s;width:3px}.room-voice-speaker-bars span:first-child{height:5px}.room-voice-speaker-bars span:nth-child(2){height:9px}.room-voice-speaker-bars span:nth-child(3){height:7px}.room-voice-speaker-bars.is-recent span{background:#60a5fa}.room-voice-speaker-bars.is-speaking span{-webkit-animation:room-voice-bars .9s ease-in-out infinite alternate;animation:room-voice-bars .9s ease-in-out infinite alternate;background:#34d399}.room-voice-speaker-bars.is-speaking span:nth-child(2){-webkit-animation-delay:.12s;animation-delay:.12s}.room-voice-speaker-bars.is-speaking span:nth-child(3){-webkit-animation-delay:.24s;animation-delay:.24s}@-webkit-keyframes room-voice-bars{0%{height:4px}to{height:14px}}@keyframes room-voice-bars{0%{height:4px}to{height:14px}}.room-chat-view{display:flex;flex:1 1;flex-direction:column;height:100%;overflow:hidden}.room-topbar{align-items:center;background:#0d0d1a;border-bottom:1px solid #1e2030;display:flex;flex-shrink:0;height:48px;justify-content:space-between;padding:0 16px 0 20px}.room-topbar-title-group{align-items:center;display:flex;gap:10px;min-width:0}.room-topbar-name{color:#e2e8f0;font-size:14px;font-weight:600}.room-topbar-voice-summary{align-items:center;background:rgba(37,99,235,.12);border-radius:999px;color:#93c5fd;display:inline-flex;font-size:11px;font-weight:700;height:24px;letter-spacing:.02em;padding:0 8px}.room-topbar-voice-summary.is-speaking{background:rgba(5,150,105,.16);color:#86efac}.room-voice-anchor{position:relative}.room-voice-trigger{align-items:center;background:#121629;border:1px solid #293042;border-radius:999px;color:#cbd5e1;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:8px;height:30px;padding:0 10px;transition:background .12s,border-color .12s,color .12s}.room-voice-trigger:hover{background:#171d34;border-color:#334155}.room-voice-trigger.is-live{border-color:rgba(5,150,105,.4);color:#d1fae5}.room-voice-trigger-dot{background:#64748b;border-radius:50%;height:8px;width:8px}.room-voice-trigger.is-live .room-voice-trigger-dot{background:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.15)}.room-voice-trigger-count{align-items:center;background:rgba(148,163,184,.18);border-radius:999px;display:inline-flex;font-size:11px;height:18px;justify-content:center;min-width:18px;padding:0 6px}.room-voice-popover{left:0;position:absolute;top:calc(100% + 8px);z-index:60}.room-topbar-menu{flex-shrink:0;position:relative}.room-menu-trigger{align-items:center;background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;gap:6px;height:32px;padding:0 8px;transition:background .12s,color .12s}.room-menu-label{font-size:12px;font-weight:500;white-space:nowrap}.room-menu-trigger:hover{background:#16162a;color:#e2e8f0}.room-menu-dots{display:inline-block;font-size:13px;letter-spacing:1px;line-height:1;-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-user-select:none;user-select:none}.room-menu-dropdown{background:#111120;border:1px solid #1e2030;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.5);min-width:180px;overflow:hidden;padding:4px;position:absolute;right:0;top:calc(100% + 4px);z-index:50}.room-menu-item{align-items:center;background:none;border:none;border-radius:5px;color:#94a3b8;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 10px;text-align:left;transition:background .1s,color .1s;width:100%}.room-menu-item:hover{background:#1a1a2e;color:#e2e8f0}.room-menu-item.danger{color:#f87171}.room-menu-item.danger:hover{background:rgba(220,38,38,.12);color:#fca5a5}.room-menu-soon{color:#475569;font-size:12px;font-style:italic;padding:8px 10px}.delete-modal-icon{display:flex;justify-content:center;margin-bottom:4px}.delete-modal-actions{display:flex;gap:8px;margin-top:4px}.delete-modal-actions .dash-btn{flex:1 1}.room-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.room-modal-cancel{margin-top:10px;width:100%}.room-loading{align-items:center;color:#64748b;display:flex;font-size:14px;height:100%;justify-content:center}.room-access-denied{background:rgba(220,38,38,.1);border-bottom:1px solid rgba(220,38,38,.25);color:#f87171;flex-shrink:0;font-size:13px;padding:10px 20px;text-align:center}.dash-panel{display:flex;flex:1 1;flex-direction:column;gap:24px;overflow-y:auto;padding:32px}.dash-panel-title{color:var(--text-hi);font-size:20px;font-weight:700;margin:0}.dash-section{display:flex;flex-direction:column;gap:12px}.dash-section-label{color:var(--text-lo);font-size:11px;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.dash-empty{color:var(--text-xlo);font-size:14px;padding:12px 0}.dash-chat-item{align-items:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:background .15s,border-color .15s}.dash-chat-item:hover{background:var(--bg-hover);border-color:rgba(124,58,237,.25)}.dash-chat-name{color:var(--text-hi);flex:1 1;font-size:14px;font-weight:600}.dash-chat-owner{background:var(--accent-dim);border-radius:4px;color:var(--accent);font-size:11px;padding:2px 6px}.dash-star-btn{background:none;border:none;border-radius:4px;color:var(--text-xlo);cursor:pointer;font-size:16px;line-height:1;padding:4px;transition:color .15s}.dash-star-btn.starred{color:var(--gold)}.dash-create-form{display:flex;gap:8px}.dash-input{background:var(--bg-base);border:1px solid var(--border);border-radius:6px;color:var(--text-hi);flex:1 1;font-size:14px;outline:none;padding:9px 12px;transition:border-color .15s}.dash-input:focus{border-color:var(--accent)}.dash-input::-webkit-input-placeholder{color:var(--text-xlo)}.dash-input::placeholder{color:var(--text-xlo)}.dash-btn{background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 16px;transition:background .15s;white-space:nowrap}.dash-btn:hover{background:#6d28d9}.dash-btn:disabled{background:var(--border);color:var(--text-xlo);cursor:not-allowed}.dash-btn-secondary{background:var(--bg-raised);border:1px solid var(--border);color:var(--text-md)}.dash-btn-secondary:hover{background:var(--bg-hover);color:var(--text-hi)}.dash-btn-danger{background:var(--danger-dim);border:1px solid rgba(220,38,38,.25);color:#f87171}.dash-btn-danger:hover{background:rgba(220,38,38,.25)}.dash-person-card{align-items:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;display:flex;gap:12px;padding:12px 16px}.dash-person-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:36px;justify-content:center;width:36px}.dash-person-info{flex:1 1;min-width:0}.dash-person-name-row{align-items:center;display:flex;gap:8px}.dash-person-name{color:var(--text-hi);font-size:14px;font-weight:600}.dash-person-presence{color:var(--text-lo);flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dash-person-presence.is-online{color:#7ee787}.dash-person-handle{color:var(--text-lo);font-size:12px}.dash-card-actions{display:flex;gap:6px}.dash-error{color:#f87171;font-size:13px;margin:0}.dash-person-link{-webkit-appearance:none;appearance:none;background:transparent;border:0;color:var(--text-hi);cursor:pointer;font:inherit;font-weight:700;margin:0;padding:0;text-align:left}.dash-person-link:hover{color:#fef3c7}.badge{align-items:center;background:var(--accent);border-radius:999px;color:#fff;font-size:11px;font-weight:700;height:18px;margin-left:auto;min-width:18px;padding:0 5px}.badge,.content-not-found{display:flex;justify-content:center}.content-not-found{align-items:flex-start;background:radial-gradient(circle at top right,rgba(251,191,36,.14),transparent 34%),linear-gradient(160deg,rgba(36,18,35,.96),rgba(14,16,26,.96));border:1px solid rgba(244,114,182,.2);border-radius:28px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04);flex-direction:column;gap:14px;min-height:100%;padding:44px}.content-not-found-badge{align-items:center;background:rgba(251,191,36,.14);border-radius:999px;color:#fcd34d;display:inline-flex;font-size:11px;font-weight:700;height:28px;letter-spacing:.08em;padding:0 12px;text-transform:uppercase}.content-not-found-title{color:#fff7ed;font-size:clamp(28px,4vw,42px);line-height:1;margin:0}.content-not-found-copy{color:#d6d3d1;font-size:15px;line-height:1.6;margin:0;max-width:520px}.content-not-found-action{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#f59e0b,#ef4444);border:0;border-radius:12px;color:#fff;cursor:pointer;font:inherit;font-weight:700;padding:12px 16px}.top-nav{background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0;height:52px;justify-content:space-between;padding:0 20px;z-index:20}.nav-left-group,.top-nav{align-items:center;display:flex}.nav-left-group{gap:10px}.nav-brand{align-items:center;display:flex;gap:9px}.nav-brand-logo{color:var(--accent);font-size:18px;line-height:1}.nav-brand-name{color:var(--text-hi);font-size:14px;font-weight:700;letter-spacing:-.01em}.nav-actions{gap:8px}.nav-actions,.topbar-icon-btn{align-items:center;display:flex}.topbar-icon-btn{background:none;border:1px solid transparent;border-radius:8px;color:var(--text-md);cursor:pointer;flex-shrink:0;height:34px;justify-content:center;transition:background .12s,border-color .12s,color .12s;width:34px}.topbar-icon-btn:hover{background:var(--bg-hover);border-color:var(--border);color:var(--text-hi)}.topbar-icon-btn--indicator-wrap{position:relative}.topbar-unread-dot{background:var(--green);border:1.5px solid var(--bg-surface);border-radius:999px;box-shadow:0 0 6px rgba(52,211,153,.8);height:7px;pointer-events:none;position:absolute;right:5px;top:5px;width:7px}.topbar-icon-btn--active{background:var(--bg-active);border-color:rgba(124,58,237,.3);color:#a78bfa}.profile-menu-wrap{position:relative}.profile-trigger{align-items:center;background:none;border:1px solid transparent;border-radius:8px;color:var(--text-hi);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:5px 10px 5px 6px;transition:background .12s,border-color .12s}.profile-trigger:hover{background:var(--bg-hover);border-color:var(--border)}.profile-avatar-sm{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:28px;justify-content:center;width:28px}.profile-trigger-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-trigger-caret{color:var(--text-lo);font-size:9px;margin-left:2px}.profile-dropdown{background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 32px rgba(0,0,0,.5);min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + 6px);z-index:100}.profile-dropdown-header{padding:14px 16px 12px}.profile-dropdown-name{color:var(--text-hi);font-size:14px;font-weight:600}.profile-dropdown-handle{color:var(--text-lo);font-size:12px;margin-top:2px}.profile-dropdown-divider{background:var(--border);height:1px}.profile-dropdown-item{background:none;border:none;color:var(--text-md);cursor:pointer;display:block;font-size:13px;padding:10px 16px;text-align:left;transition:background .1s,color .1s;width:100%}.profile-dropdown-item:hover{background:var(--bg-hover);color:var(--text-hi)}.profile-dropdown-item.danger{color:#f87171}.profile-dropdown-item.danger:hover{background:var(--danger-dim);color:#fca5a5}@media (max-width:699px){.profile-trigger-caret,.profile-trigger-name{display:none}}.left-nav{background:var(--bg-surface);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow-x:hidden;overflow-y:auto;padding:8px 0 16px;width:240px}.side-sheet__panel .left-nav{border-right:none;height:100%;width:100%}.left-nav::-webkit-scrollbar{width:4px}.left-nav::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.nav-section{margin-bottom:2px}.nav-section-toggle{align-items:center;background:none;border:none;border-left:2px solid transparent;color:var(--text-md);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:9px 14px;text-align:left;transition:background .12s,color .12s,border-color .12s;width:100%}.nav-section-toggle:hover{background:var(--bg-hover);color:var(--text-hi)}.nav-section-toggle.section-active{border-left-color:var(--accent);color:#a78bfa}.nav-section-icon{color:inherit;opacity:.75}.nav-section-chevron,.nav-section-icon{align-items:center;display:flex;flex-shrink:0}.nav-section-chevron{color:var(--text-lo);margin-left:auto;transition:-webkit-transform .15s ease;transition:transform .15s ease;transition:transform .15s ease,-webkit-transform .15s ease}.nav-section-chevron.open{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.nav-section-items{display:flex;flex-direction:column;gap:1px;padding:2px 8px 6px 12px}.nav-chat-item{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-md);cursor:pointer;display:flex;font-size:13px;gap:6px;min-width:0;padding:6px 8px 6px 6px;text-align:left;transition:background .1s,color .1s;width:100%}.nav-chat-item:hover{background:var(--bg-hover);color:var(--text-hi)}.nav-chat-item.active{background:var(--bg-active);color:#a78bfa}.nav-chat-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-chat-voice{align-items:center;background:rgba(37,99,235,.12);border-radius:999px;color:#93c5fd;display:inline-flex;flex-shrink:0;font-size:10px;font-weight:700;height:18px;letter-spacing:.04em;padding:0 6px;text-transform:uppercase}.nav-friend-status{background:#7ee787;border-radius:999px;box-shadow:0 0 0 2px rgba(126,231,135,.16),0 0 8px rgba(126,231,135,.28);flex-shrink:0;height:8px;width:8px}.nav-chat-unread{align-items:center;-webkit-animation:unread-flash 1.4s ease-in-out infinite;animation:unread-flash 1.4s ease-in-out infinite;color:var(--accent);display:flex;-webkit-filter:drop-shadow(0 0 4px var(--accent));filter:drop-shadow(0 0 4px var(--accent));flex-shrink:0}@-webkit-keyframes unread-flash{0%,to{-webkit-filter:drop-shadow(0 0 5px var(--accent));filter:drop-shadow(0 0 5px var(--accent));opacity:1}50%{-webkit-filter:drop-shadow(0 0 0 transparent);filter:drop-shadow(0 0 0 transparent);opacity:.1}}@keyframes unread-flash{0%,to{-webkit-filter:drop-shadow(0 0 5px var(--accent));filter:drop-shadow(0 0 5px var(--accent));opacity:1}50%{-webkit-filter:drop-shadow(0 0 0 transparent);filter:drop-shadow(0 0 0 transparent);opacity:.1}}.nav-create-row{display:flex;gap:4px;margin-top:6px}.nav-create-input{background:var(--bg-base);border:1px solid var(--border);border-radius:5px;color:var(--text-hi);flex:1 1;font-size:12px;min-width:0;outline:none;padding:6px 8px;transition:border-color .12s}.nav-create-input:focus{border-color:var(--accent)}.nav-create-input::-webkit-input-placeholder{color:var(--text-xlo)}.nav-create-input::placeholder{color:var(--text-xlo)}.nav-create-btn{align-items:center;background:var(--accent);border:none;border-radius:5px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;font-weight:400;height:29px;justify-content:center;padding:0 9px;transition:background .12s}.nav-create-btn:hover:not(:disabled){background:#6d28d9}.nav-create-btn:disabled{background:var(--bg-raised);color:var(--text-xlo);cursor:not-allowed}.nav-create-error{color:#f87171;font-size:11px;margin:2px 0 0}.nav-friend-avatar{border-radius:50%;height:22px;width:22px}.nav-badge,.nav-friend-avatar{align-items:center;color:#fff;display:flex;flex-shrink:0;font-size:10px;font-weight:700;justify-content:center}.nav-badge{background:var(--accent);border-radius:999px;height:17px;margin-left:auto;min-width:17px;padding:0 4px}.nav-empty{color:var(--text-xlo);font-size:12px;margin:0;padding:4px 8px}.app-shell--laptop .left-nav{width:200px}.members-panel{background:var(--bg-surface);border-left:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;width:220px}.side-sheet__panel .members-panel{border-left:none;height:100%;width:100%}.members-panel-header{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:8px;padding:14px 16px 12px}.members-panel-title{color:var(--text-lo);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.members-panel-count{background:var(--bg-raised);border-radius:999px;color:var(--text-xlo);font-size:11px;font-weight:600;padding:1px 6px}.members-voice-lock{align-items:center;background:rgba(37,99,235,.08);border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column;gap:12px;justify-content:center;margin:4px 16px 12px;padding:12px;text-align:center}.members-voice-lock-title{color:var(--text-hi);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.members-voice-live{background:rgba(5,150,105,.08);border:1px solid rgba(52,211,153,.16);border-radius:10px;margin:4px 16px 12px;padding:10px 12px}.members-voice-live-title{color:#d1fae5;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.members-voice-live-copy{color:#a7f3d0;font-size:12px;margin-top:3px}.members-invite-section{border-bottom:1px solid var(--border);flex-shrink:0;padding:10px 12px}.members-invite-row{display:flex;gap:4px}.members-invite-input{background:var(--bg-base);border:1px solid var(--border);border-radius:5px;color:var(--text-hi);flex:1 1;font-size:12px;min-width:0;outline:none;padding:6px 8px;transition:border-color .12s}.members-invite-input:focus{border-color:var(--accent)}.members-invite-input::-webkit-input-placeholder{color:var(--text-xlo);font-size:11px}.members-invite-input::placeholder{color:var(--text-xlo);font-size:11px}.members-invite-btn{align-items:center;background:var(--accent);border:none;border-radius:5px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:28px;justify-content:center;transition:background .12s;width:28px}.members-invite-btn:hover{background:#6d28d9}.members-invite-status{font-size:11px;margin:4px 0 0}.members-invite-status.ok{color:var(--green)}.members-invite-status.err{color:#f87171}.members-list{flex:1 1;overflow-y:auto;padding:8px 0}.members-list-group+.members-list-group{margin-top:10px}.members-list-heading{color:var(--text-lo);font-size:10px;font-weight:700;letter-spacing:.08em;padding:6px 12px 4px;text-transform:uppercase}.members-list::-webkit-scrollbar{width:4px}.members-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.member-row{align-items:center;display:flex;gap:9px;padding:6px 12px;transition:background .1s}.member-row:hover{background:var(--bg-hover)}.member-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:26px;justify-content:center;width:26px}.member-info{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.member-name-row{align-items:center;display:flex;gap:8px;min-width:0}.member-name{color:var(--text-md);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-presence-dot{display:inline-flex}.member-owner-badge{color:var(--accent);font-size:10px;font-weight:600;line-height:1}.member-actions{align-items:center;display:flex;gap:6px}.member-kick-btn{background:none;border:none;border-radius:4px;color:var(--text-xlo);cursor:pointer;flex-shrink:0;font-size:14px;line-height:1;padding:3px 4px;transition:color .1s,background .1s}.member-kick-btn:hover{background:var(--danger-dim);color:#f87171}.member-voice-btn{background:rgba(37,99,235,.12);border:1px solid rgba(37,99,235,.25);border-radius:8px;color:#bfdbfe;cursor:pointer;height:28px;width:28px}.member-voice-state{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.member-voice-badge{align-items:center;background:rgba(37,99,235,.12);border-radius:999px;color:#93c5fd;display:inline-flex;font-size:10px;font-weight:700;height:18px;letter-spacing:.04em;padding:0 6px;text-transform:uppercase}.member-voice-badge.is-warning{background:rgba(245,158,11,.14);color:#fdba74}.member-voice-badge.is-live{background:rgba(5,150,105,.16);color:#86efac}.member-voice-badge.is-danger{background:rgba(220,38,38,.14);color:#fca5a5}.dm-details-panel{gap:12px;overflow-y:auto;padding:12px}.dm-details-panel::-webkit-scrollbar{width:4px}.dm-details-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.dm-details-topbar{display:flex;justify-content:flex-end}.dm-details-menu{position:relative}.dm-details-menu-btn{align-items:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:999px;color:var(--text-md);cursor:pointer;display:flex;height:30px;justify-content:center;transition:background .12s,color .12s,border-color .12s;width:30px}.dm-details-menu-btn:hover{background:var(--bg-hover);border-color:rgba(124,58,237,.28);color:var(--text-hi)}.detail-menu-dropdown{background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.4);min-width:180px;overflow:hidden;position:absolute;right:0;top:calc(100% + 6px);z-index:50}.detail-menu-item{align-items:center;background:none;border:none;color:var(--text-md);cursor:pointer;display:flex;font-size:13px;gap:10px;padding:10px 14px;text-align:left;transition:background .1s,color .1s;width:100%}.detail-menu-item:hover{background:var(--bg-hover);color:var(--text-hi)}.dm-details-profile{align-items:flex-start;display:flex;flex-direction:column;gap:6px;padding:4px 0 2px}.dm-details-avatar{align-items:center;border-radius:50%;box-shadow:0 0 0 4px rgba(17,17,32,.9);color:#fff;display:flex;flex-shrink:0;font-size:24px;font-weight:700;height:64px;justify-content:center;width:64px}.dm-details-name-row{align-items:center;display:flex;gap:8px;min-width:0}.dm-details-name{color:var(--text-hi);font-size:24px;font-weight:800;letter-spacing:-.03em;line-height:1.1}.dm-details-handle{color:var(--text-md);font-size:15px}.dm-details-section{display:flex;flex-direction:column;gap:8px}.dm-details-section-fill{flex:1 1;min-height:0}.dm-details-section-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.dm-details-section-label{color:var(--text-hi);font-size:12px;font-weight:700;letter-spacing:-.01em}.dm-details-card{background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;padding:14px}.dm-details-meta{color:var(--text-md);font-size:16px;font-weight:600}.dm-details-chat-list{display:flex;flex-direction:column;gap:8px;min-height:0}.dm-details-chat-item{align-items:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;color:var(--text-hi);cursor:pointer;display:flex;gap:10px;justify-content:space-between;padding:14px;text-align:left;transition:background .12s,border-color .12s,-webkit-transform .12s;transition:background .12s,border-color .12s,transform .12s;transition:background .12s,border-color .12s,transform .12s,-webkit-transform .12s;width:100%}.dm-details-chat-item:hover{background:var(--bg-hover);border-color:rgba(124,58,237,.28);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.dm-details-chat-name{color:var(--text-hi);font-size:14px;font-weight:600}.dm-details-chat-arrow{color:var(--text-lo);font-size:22px;line-height:1}.dm-details-empty{background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;color:var(--text-lo);font-size:13px;padding:14px}.room-modal-backdrop{align-items:center;background:rgba(0,0,0,.6);display:flex;inset:0;justify-content:center;position:fixed;z-index:400}.room-modal{background:var(--bg-raised);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;gap:8px;max-width:90vw;min-width:280px;padding:24px}.room-modal-title{color:var(--text-hi);font-size:16px;font-weight:700;margin:0 0 4px}.room-modal-subtitle{color:var(--text-lo);font-size:13px;margin:0 0 8px}.room-modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.room-kick-options{display:flex;flex-direction:column;gap:6px}.room-option-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.room-modal-cancel{margin-top:4px}@media (max-width:699px){.room-modal-backdrop{align-items:flex-end}.room-modal{border-bottom-left-radius:0;border-bottom-right-radius:0;max-width:100%;padding-bottom:32px;width:100%}}.side-sheet{inset:0;pointer-events:none;position:fixed;visibility:hidden;z-index:300}.side-sheet--open{pointer-events:auto;visibility:visible}.side-sheet__backdrop{background:rgba(0,0,0,.55);inset:0;opacity:0;position:absolute;transition:opacity .2s ease}.side-sheet--open .side-sheet__backdrop{opacity:1}.side-sheet__panel{background:var(--bg-surface);bottom:0;display:flex;flex-direction:column;max-width:85vw;overflow:hidden;position:absolute;top:0;transition:-webkit-transform .22s ease;transition:transform .22s ease;transition:transform .22s ease,-webkit-transform .22s ease;width:280px}.side-sheet--left .side-sheet__panel{border-right:1px solid var(--border);left:0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.side-sheet--right .side-sheet__panel{border-left:1px solid var(--border);right:0;-webkit-transform:translateX(100%);transform:translateX(100%)}.side-sheet--open .side-sheet__panel{-webkit-transform:translateX(0);transform:translateX(0)}.skip-nav{background:var(--accent);border-radius:0 0 8px 8px;color:#fff;font-size:14px;font-weight:600;left:16px;padding:8px 16px;position:absolute;text-decoration:none;top:-100%;transition:top .1s;z-index:9999}.skip-nav:focus{top:0}.app-shell{background:var(--bg-base);color:var(--text-hi);display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;height:100vh;height:100dvh;overflow:hidden}.app-body{min-height:0}.app-body,.content-area{display:flex;flex:1 1;overflow:hidden}.content-area{flex-direction:column;min-width:0}.room-frame{display:flex;flex:1 1;flex-direction:column;min-height:0}.room-tabs-bar{align-items:stretch;background:linear-gradient(180deg,rgba(17,17,32,.96),rgba(13,13,26,.96));border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:10px;min-height:46px;padding:8px 14px 0}.room-tabs-scroller{align-items:stretch;display:flex;flex:1 1;gap:6px;min-width:0;overflow-x:auto;padding-bottom:0}.room-tabs-scroller::-webkit-scrollbar{height:5px}.room-tabs-scroller::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.room-tab{align-items:center;background:rgba(17,17,32,.75);border:1px solid var(--border);border-bottom:none;border-top-left-radius:12px;border-top-right-radius:12px;color:var(--text-md);cursor:pointer;display:inline-flex;gap:8px;max-width:280px;min-width:0;padding:0 14px;transition:background .12s,color .12s,border-color .12s}.room-tab:hover{background:var(--bg-hover);color:var(--text-hi)}.room-tab.active{background:var(--bg-surface);border-color:rgba(124,58,237,.28);color:#c4b5fd}.room-tab-label{font-size:12px;font-weight:600;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-tab-dot{background:var(--accent);border-radius:999px;box-shadow:0 0 8px rgba(124,58,237,.7);flex-shrink:0;height:7px;width:7px}.room-tab-add{align-self:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;color:var(--text-hi);cursor:pointer;flex-shrink:0;font-size:22px;height:36px;line-height:1;transition:background .12s,border-color .12s,color .12s;width:36px}.room-tab-add:hover{background:var(--bg-hover);border-color:rgba(124,58,237,.28);color:#c4b5fd}.content-welcome{align-items:center;color:var(--text-lo);display:flex;flex:1 1;flex-direction:column;gap:12px;justify-content:center;padding:40px;text-align:center}.welcome-glyph{color:var(--accent);font-size:36px;line-height:1;opacity:.4}.welcome-heading{color:var(--text-md);font-size:18px;font-weight:600;margin:0}.welcome-sub{color:var(--text-lo);font-size:13px;line-height:1.5;margin:0;max-width:280px}.subchat-sheet{display:flex;flex-direction:column;height:100%;padding:0}.subchat-sheet-header{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;justify-content:space-between;padding:18px 18px 12px}.subchat-sheet-title{color:var(--text-hi);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.subchat-sheet-add{align-items:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;color:var(--text-hi);cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;line-height:1;transition:background .12s,border-color .12s;width:28px}.subchat-sheet-add:hover{background:var(--bg-hover);border-color:rgba(124,58,237,.4)}.subchat-sheet-list{display:flex;flex:1 1;flex-direction:column;gap:2px;overflow-y:auto;padding:8px 10px}.subchat-sheet-item{align-items:center;background:transparent;border:none;border-radius:8px;color:var(--text-md);cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:500;gap:10px;padding:10px 12px;text-align:left;transition:background .12s,color .12s;width:100%}.subchat-sheet-item:hover{background:var(--bg-hover);color:var(--text-hi)}.subchat-sheet-item.active{background:var(--bg-active);color:#c4b5fd}.subchat-sheet-item-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subchat-sheet-unread{background:var(--accent);border-radius:999px;box-shadow:0 0 8px rgba(124,58,237,.7);flex-shrink:0;height:8px;width:8px}
/*# sourceMappingURL=main.94ca77c3.css.map*/