:root{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-chat: #0f3460;--bg-input-bar: #1e2740;--accent: #3a7bd5;--accent-hover: #2e6bc0;--text-primary: #eee;--text-secondary: #aab;--text-muted: #667;--bubble-self: #3a7bd5;--bubble-other: #16213e;--border: #2a2a4a;--radius: 12px;--radius-sm: 8px;--safe-top: env(safe-area-inset-top, 0px);--encrypt-full: #2ecc40;--encrypt-pending: #f1c40f;--encrypt-none: #e74c3c}:root.light{--bg-primary: #f0f2f5;--bg-secondary: #ffffff;--bg-chat: #e8ecf1;--bg-input-bar: #f0f2f5;--accent: #3a7bd5;--accent-hover: #2e6bc0;--text-primary: #1a1a2e;--text-secondary: #555;--text-muted: #999;--bubble-self: #d9ecff;--bubble-other: #ffffff;--border: #d1d5db;--encrypt-full: #1b8a1b;--encrypt-pending: #b8860b;--encrypt-none: #cc3333}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:var(--app-height, 100vh);width:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased}button{cursor:pointer;border:none;font-family:inherit}input,textarea{font-family:inherit;border:none;outline:none}.app{display:flex;height:var(--app-height, 100vh);width:100%;flex-wrap:wrap;overflow:hidden}.sidebar{width:320px;min-width:280px;height:100%;background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;padding-top:var(--safe-top);padding-bottom:env(safe-area-inset-bottom,0px)}.sidebar-header{padding:0;border-bottom:none;display:none}.sidebar-topbar{display:flex;flex-direction:column;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.topbar-row-1{display:flex;align-items:center;gap:8px}.topbar-row-2{display:flex;align-items:center;gap:6px}.topbar-row-3{display:flex;align-items:center;gap:6px;position:relative}.topbar-search-icon{position:absolute;left:8px;color:var(--text-muted);pointer-events:none;flex-shrink:0}.hamburger-btn{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:6px;border-radius:var(--radius-sm);flex-shrink:0;transition:background .15s}.hamburger-btn:hover{background:var(--bg-primary)}.hamburger-btn span{display:block;width:18px;height:2px;background:var(--text-primary);border-radius:1px;transition:background .15s}.topbar-brand{display:flex;flex-direction:column;min-width:0;flex-shrink:0}.topbar-brand-name{font-size:16px;font-weight:700;color:var(--accent);display:flex;align-items:center;line-height:1.2}.topbar-version{font-size:10px;color:var(--text-muted);line-height:1.2}.topbar-connection-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-left:2px}.topbar-connection-dot.connected{background:#4caf50}.topbar-connection-dot.connecting{background:#ff9800}.topbar-connection-dot.disconnected{background:#f44336}.topbar-search-input{flex:1;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 10px 5px 28px;color:var(--text-primary);font-size:13px;font-family:inherit;outline:none;min-width:0}.topbar-search-input:focus{border-color:var(--accent)}.topbar-search-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px;padding:2px 6px;line-height:1;flex-shrink:0;position:absolute;right:4px}.topbar-action-btn{background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 8px;font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.topbar-action-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.hamburger-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:999;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hamburger-menu{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:80vw;background:var(--bg-secondary);z-index:1000;display:flex;flex-direction:column;padding:0;overflow-y:auto;box-shadow:4px 0 24px #0000004d;animation:slideIn .2s ease}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.hmenu-profile{display:flex;align-items:center;gap:12px;padding:20px 16px 12px;background:var(--accent);color:#fff}.hmenu-avatar{width:44px;height:44px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;flex-shrink:0;overflow:hidden}.hmenu-avatar>div{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.hmenu-avatar svg{width:100%;height:100%}.hmenu-username{font-weight:600;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hmenu-status{padding:8px 16px 12px;background:var(--accent);color:#ffffffd9}.hmenu-status-text{font-size:13px;font-style:italic;cursor:pointer;opacity:.85}.hmenu-status-text:hover{opacity:1}.hmenu-status-input{width:100%;background:#ffffff26;border:none;border-bottom:2px solid rgba(255,255,255,.5);color:#fff;font-size:13px;font-family:inherit;padding:4px 0;outline:none}.hmenu-status-input::placeholder{color:#ffffff80}.hmenu-divider{height:1px;background:var(--border);margin:4px 0}.hmenu-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;color:var(--text-primary);font-size:14px;font-family:inherit;cursor:pointer;text-align:left;transition:background .15s}.hmenu-item:hover{background:var(--bg-primary)}.hmenu-item-icon{width:24px;text-align:center;font-size:16px;flex-shrink:0}.hmenu-theme-row{position:relative}.hmenu-toggle{margin-left:auto;width:36px;height:20px;border-radius:10px;background:var(--bg-primary);border:1px solid var(--border);position:relative;transition:background .2s,border-color .2s;flex-shrink:0}.hmenu-toggle.on{background:var(--accent);border-color:var(--accent)}.hmenu-toggle-knob{width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;top:1px;left:1px;transition:left .2s;box-shadow:0 1px 3px #0003}.hmenu-toggle.on .hmenu-toggle-knob{left:17px}.sidebar-header h1{font-size:20px;font-weight:700;color:var(--accent)}.shield-icon{font-size:22px}.sidebar-controls{display:flex;align-items:center;gap:10px}.icon-btn{background:none;color:var(--text-secondary);font-size:18px;padding:4px 6px;border-radius:var(--radius-sm);transition:background .15s,color .15s}.icon-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.chat-list{flex:1;overflow-y:auto;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px));scrollbar-width:none;-ms-overflow-style:none}.chat-list::-webkit-scrollbar{display:none}.chat-list-item{display:flex;align-items:center;gap:12px;padding:10px 16px;cursor:pointer;transition:background .15s;border-bottom:1px solid var(--border);position:relative;overflow:hidden}.chat-list-item:hover{background:var(--bg-primary)}.chat-list-item.active{background:#4caf501a;border-left:3px solid #4caf50}.chat-list-item .avatar{width:50px;height:50px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;color:#fff;flex-shrink:0}.chat-list-item .avatar.avatar-hexagon{border-radius:0;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);background:#6c5ce7}.chat-context-menu{position:fixed;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #0000004d;padding:4px 0;min-width:160px;z-index:1000}.chat-context-menu button{display:block;width:100%;padding:8px 16px;background:none;border:none;color:var(--text-primary);font-size:14px;text-align:left;cursor:pointer}.chat-context-menu button:hover{background:var(--bg-primary)}.chat-list-item .info{flex:1;min-width:0;padding-right:20px}.chat-list-item .name{font-weight:600;font-size:15px}.chat-list-item .preview{font-size:14px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px;margin-top:2px}.encrypt-anim-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;border-radius:inherit;overflow:hidden}.encrypt-anim-wave{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(76,175,80,.12) 20%,rgba(76,175,80,.28) 45%,rgba(76,175,80,.35) 50%,rgba(76,175,80,.28) 55%,rgba(76,175,80,.12) 80%,transparent 100%);transform:translate(-100%);animation:encrypt-wave-sweep .9s ease-in-out forwards}@keyframes encrypt-wave-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.encrypt-anim-lock{position:absolute;top:50%;right:30px;transform:translateY(-50%) scale(0);color:#4caf5000;animation:encrypt-lock-appear .6s .3s ease-out forwards}@keyframes encrypt-lock-appear{0%{transform:translateY(-50%) scale(0);color:#4caf5000}40%{transform:translateY(-50%) scale(1.2);color:#4caf50d9}70%{transform:translateY(-50%) scale(.95);color:#4caf50e6}to{transform:translateY(-50%) scale(1);color:#4caf50d9}}.encrypt-lock-shackle{transform-origin:16px 15px;animation:encrypt-shackle-close .5s .4s ease-in-out forwards}@keyframes encrypt-shackle-close{0%{transform:translateY(-4px) rotate(-20deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(.5px)}to{transform:translateY(0)}}.encrypt-lock-svg{filter:drop-shadow(0 0 8px rgba(76,175,80,.6))}.encrypt-anim-lock.header-lock{position:absolute;top:50%;left:50%;right:auto;transform:translate(-50%,-50%) scale(0);animation:encrypt-lock-appear-header .6s .3s ease-out forwards}@keyframes encrypt-lock-appear-header{0%{transform:translate(-50%,-50%) scale(0);color:#4caf5000}40%{transform:translate(-50%,-50%) scale(1.2);color:#4caf50d9}70%{transform:translate(-50%,-50%) scale(.95);color:#4caf50e6}to{transform:translate(-50%,-50%) scale(1);color:#4caf50d9}}img.twemoji{height:24px;width:24px;vertical-align:-6px;display:inline;margin:0 1px}.emoji-msg-wrapper{display:flex;flex-direction:column;position:relative;flex:0 0 auto}.emoji-msg-wrapper.self{align-self:flex-end;align-items:flex-end}.emoji-msg-wrapper.other{align-self:flex-start;align-items:flex-start}.emoji-msg-content{display:inline-flex;align-items:center;cursor:pointer}.emoji-msg-emojis img.twemoji{height:48px;width:48px;vertical-align:middle;margin:0 1px}.emoji-msg-time{font-size:10px;color:var(--text-muted);margin-left:6px;white-space:nowrap;display:none}.emoji-msg-content:hover .emoji-msg-time{display:inline-flex;align-items:center;gap:2px}.emoji-btn img.twemoji{height:auto;width:auto;vertical-align:middle}.reaction-pill img.twemoji,.preview img.twemoji{height:16px;width:16px;vertical-align:-3px}.chat-area{flex:1;display:flex;flex-direction:column;background:var(--bg-primary);position:relative;height:100%;min-height:0;overflow:hidden;padding-top:var(--safe-top)}.chat-header{padding:14px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px}.chat-header .name{font-weight:600;font-size:16px}.last-seen-label{font-size:12px;font-weight:400;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header.context-header{padding:10px 16px;background:var(--accent);border-bottom:1px solid var(--accent);display:flex;align-items:center;justify-content:space-between;gap:0}.context-actions{display:flex;align-items:center;gap:4px}.context-action-btn{background:none;border:none;color:#fff;cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none}.context-action-btn:hover{background:#ffffff26}.context-action-btn:active{background:#ffffff40}.context-action-btn.danger{color:#faa}.context-action-btn.cancel{color:#fff}.message.selected,.emoji-msg-content.selected{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--radius)}.messages{flex:1;min-height:0;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:8px;scrollbar-width:none;-ms-overflow-style:none}.message-wrapper.self+.message-wrapper.self,.message-wrapper.other+.message-wrapper.other{margin-top:-5px}.messages::-webkit-scrollbar{display:none}.message{max-width:70%;padding:8px 12px;border-radius:var(--radius);font-size:14px;line-height:1.45;word-break:break-word}.message.self{align-self:flex-end;background:var(--bubble-self);color:#fff;border-bottom-right-radius:4px}:root.light .message.self{color:#1a1a2e;border:1px solid #a8c8e8}:root.light .message.self .time-inline{color:#777}:root.light .messages{background:linear-gradient(#ffffff73,#ffffff73),url(/bg_invenn4.png) center / cover no-repeat fixed}:root.light .message.other{border:1px solid #e0e0e0}:root.light .btn-secondary{color:var(--text-primary)}.message.other{align-self:flex-start;background:var(--bubble-other);color:var(--text-primary);border-bottom-left-radius:4px}.message.decrypt-error{background:#e74c3c1f;border:1px dashed rgba(231,76,60,.4);display:flex;align-items:center;gap:6px;font-style:italic;opacity:.85}.message.decrypt-error.self{color:#ffffffb3}.message.decrypt-error.other{color:var(--text-secondary)}.decrypt-error-icon{font-size:16px;flex-shrink:0}.decrypt-error-text{font-size:13px}.message-text{display:inline}.time-inline{font-size:10px;color:#ffffff73;margin-left:8px;white-space:nowrap;float:right;margin-top:4px}.time-sep{margin-right:4px;opacity:.5}.message.other .time-inline{color:var(--text-muted)}.message-row{display:flex;align-items:flex-end;gap:8px}.msg-avatar{width:28px;height:28px;min-width:28px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:12px;flex-shrink:0}.message-input-area{position:relative;padding:8px 10px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));background:var(--bg-input-bar);display:flex;align-items:center;gap:6px}.message-input-area input{flex:1;min-width:0;background:var(--bg-secondary);color:var(--text-primary);border-radius:24px;padding:10px 16px;font-size:14px}.message-input-area input::placeholder{color:var(--text-muted)}.send-btn,.ping-btn{width:38px;height:38px;min-width:38px;min-height:38px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff;transition:background .15s,opacity .15s,transform .15s}.send-btn{background:var(--accent)}.send-btn:hover{background:var(--accent-hover)}.ping-btn{background:#4a90d9}.ping-btn:hover{background:#3a7bc8}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted);gap:12px}.empty-state .icon{font-size:48px}.ping-toast{position:fixed;top:20px;right:20px;background:#4a90d9;color:#fff;padding:14px 24px;border-radius:var(--radius);font-weight:600;animation:slideIn .3s ease,fadeOut .3s ease 2.7s;z-index:1000}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.notification-banner{position:fixed;top:calc(var(--safe-top, 0px) + 8px);left:50%;transform:translate(-50%);width:calc(100% - 32px);max-width:420px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:12px 16px;box-shadow:0 4px 20px #0006;z-index:2000;cursor:pointer;animation:bannerSlideIn .3s ease,fadeOut .3s ease 3.7s}.notification-banner-title{font-weight:700;font-size:14px;color:var(--accent);margin-bottom:2px}.notification-banner-body{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes bannerSlideIn{0%{transform:translate(-50%) translateY(-100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.setup-screen,.pairing-screen{display:flex;flex-direction:column;align-items:center;height:100%;padding:40px;gap:20px;text-align:center;overflow:auto}.setup-screen{justify-content:center}.setup-screen h1{font-size:32px;color:var(--accent)}.setup-screen p{color:var(--text-secondary);max-width:400px;line-height:1.6}.btn{background:var(--accent);color:#fff;padding:12px 28px;border-radius:24px;font-size:15px;font-weight:600;transition:background .15s}.btn:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-chat)}.btn-secondary:hover{background:var(--bg-secondary)}.invite-code{font-family:Courier New,monospace;font-size:24px;font-weight:700;letter-spacing:2px;color:var(--accent);background:var(--bg-secondary);padding:16px 24px;border-radius:var(--radius);-webkit-user-select:all;user-select:all}.code-input{background:var(--bg-secondary);color:var(--text-primary);padding:12px 20px;border-radius:var(--radius);font-size:18px;font-family:Courier New,monospace;text-align:center;letter-spacing:2px;width:300px}.qr-container{background:#fff;padding:16px;border-radius:var(--radius)}.connection-status{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.connection-dot{width:8px;height:8px;border-radius:50%}.connection-dot.connected{background:#4caf50}.connection-dot.disconnected{background:#f44336}.connection-dot.connecting{background:#ff9800;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.typing-indicator{align-self:flex-start;display:flex;align-items:center;gap:4px;background:var(--bubble-other);padding:10px 16px;border-radius:var(--radius);border-bottom-left-radius:4px}.typing-dot{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);animation:typingBounce 1.4s infinite ease-in-out both}.typing-dot:nth-child(2){animation-delay:.16s}.typing-dot:nth-child(3){animation-delay:.32s}@keyframes typingBounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.mini-typing{display:inline-flex;align-items:center;gap:2px;margin-left:auto;flex-shrink:0}.mini-typing-dot{width:5px;height:5px;border-radius:50%;background:var(--text-secondary);animation:typingBounce 1.4s infinite ease-in-out both}.mini-typing-dot:nth-child(2){animation-delay:.16s}.mini-typing-dot:nth-child(3){animation-delay:.32s}.delete-contact-btn{background:none;color:var(--text-muted);font-size:18px;padding:4px 8px;border-radius:var(--radius-sm);transition:background .15s,color .15s}.delete-contact-btn:hover{background:#c0392b33;color:#e74c3c}.confirm-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.confirm-dialog{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:24px 28px;max-width:340px;text-align:center}.settings-screen{display:flex;flex-direction:column;height:100%;background:var(--bg-primary);overflow-y:auto;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.settings-header{position:sticky;top:0;z-index:10;padding:14px 20px;padding-top:calc(var(--safe-top) + 14px);background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px}.settings-header h2{font-size:18px;font-weight:600}.back-btn{background:none;color:var(--text-primary);font-size:15px;padding:4px 8px}.back-button{display:inline-flex;align-items:center;gap:4px;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius);padding:6px 14px 6px 10px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap;flex-shrink:0}.back-button:hover{background:var(--bg-secondary);border-color:var(--text-muted)}.back-button:active{background:var(--border)}.back-button-arrow{font-size:16px;line-height:1}@media (min-width: 769px){.chat-header .back-btn{display:none}}.settings-section{padding:20px}.settings-section h3{font-size:16px;font-weight:600;margin-bottom:6px}.settings-hint{font-size:13px;color:var(--text-secondary);margin-bottom:16px}.settings-empty{color:var(--text-muted);font-size:14px;padding:16px 0}.deleted-list{display:flex;flex-direction:column;gap:10px}.deleted-item{display:flex;align-items:center;justify-content:space-between;background:var(--bg-secondary);padding:12px 16px;border-radius:var(--radius-sm);border:1px solid var(--border)}.deleted-info{min-width:0}.deleted-name{font-weight:600;font-size:14px}.deleted-timer{font-size:12px;color:var(--text-muted)}.deleted-actions{display:flex;gap:8px;flex-shrink:0}.btn-small{padding:6px 12px;font-size:12px;border-radius:16px}.btn-danger{background:#c0392b}.btn-danger:hover{background:#a93226}@media (max-width: 768px){.sidebar{width:100%;min-width:0;border-right:none}.app.chat-open .sidebar{display:none}.app:not(.chat-open) .chat-area{display:none}.chat-header{padding:10px 12px}.messages{padding:10px 8px}.message-input-area{padding:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px));gap:4px}.sidebar-header{padding:10px 14px}.sidebar-header h1{font-size:17px}.sidebar-controls{flex-wrap:wrap;gap:6px}.sidebar-controls .btn{padding:6px 10px;font-size:12px}.topbar-action-btn{padding:3px 6px;font-size:10px}.sidebar-topbar{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px;padding:6px 8px}.topbar-row-1{width:100%}.topbar-row-3{order:1;flex:1;min-width:0}.topbar-row-2{order:2;flex-shrink:0}.topbar-brand-name{font-size:14px}.chat-list-item{padding:10px 14px}.setup-screen,.pairing-screen{padding:20px 16px}.settings-screen{padding:0}.settings-section{padding:14px 16px}.invite-code{font-size:16px;padding:12px 14px;word-break:break-all}.code-input{width:100%;max-width:300px;font-size:15px}.message,.message-wrapper{max-width:85%}.confirm-dialog{margin:0 16px}.emoji-picker{left:10px;right:10px}}.read-receipt{display:inline-flex;align-items:center;gap:2px;margin-left:6px;vertical-align:middle}.receipt-circle{width:8px;height:8px;border-radius:50%;display:inline-block}.receipt-circle.sending{background:#888}.receipt-circle.delivered,.receipt-circle.read{background:#4caf50}.receipt-circle.failed{background:#e53935;color:#fff;font-size:7px;font-weight:700;text-align:center;line-height:8px}.read-receipt.failed{color:#e53935}.presence-dot{width:10px;height:10px;border-radius:50%;position:absolute;right:16px;top:50%;transform:translateY(-50%)}.presence-dot.online{background:#4caf50}.presence-dot.away{background:#f1c40f}.presence-dot.offline{background:#e74c3c}.presence-dot.off{background:#8b6914}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border)}.settings-toggle-info{flex:1;min-width:0}.settings-toggle-label{font-weight:600;font-size:14px}.settings-toggle-hint{font-size:12px;color:var(--text-secondary);margin-top:2px}.toggle-switch{position:relative;width:46px;height:26px;border-radius:13px;background:var(--text-muted);padding:0;flex-shrink:0;transition:background .2s}.toggle-switch.on{background:var(--accent)}.toggle-knob{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s}.toggle-switch.on .toggle-knob{transform:translate(20px)}.settings-nav-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 16px;background:var(--bg-secondary);color:var(--text-primary);font-size:15px;font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--border);transition:background .15s}.settings-nav-btn:hover{background:var(--bg-primary)}.settings-nav-arrow{font-size:18px;color:var(--text-muted)}.profile-content{display:flex;flex-direction:column;align-items:center;padding:32px 20px;gap:20px}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;gap:8px}.profile-avatar-circle{width:100px;height:100px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;border:3px solid var(--border);cursor:pointer;position:relative;overflow:hidden;transition:border-color .2s,transform .15s;padding:0}.profile-avatar-circle:hover{border-color:var(--accent);transform:scale(1.05)}.profile-avatar-svg{width:80px;height:80px}.profile-avatar-svg svg{width:100%;height:100%}.profile-avatar-initial{font-size:40px;font-weight:700;color:#fff}.profile-avatar-edit-badge{position:absolute;bottom:2px;right:2px;width:24px;height:24px;border-radius:50%;background:var(--bg-secondary);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:12px}.profile-avatar-hint{font-size:12px;color:var(--text-muted)}.profile-username-section{text-align:center}.profile-username-display{background:none;border:none;color:var(--text-primary);font-size:18px;font-weight:600;font-family:inherit;cursor:pointer;padding:6px 16px;border-radius:var(--radius-sm);transition:background .15s}.profile-username-display:hover{background:var(--bg-primary)}.profile-username-input{background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--accent);border-radius:var(--radius-sm);padding:8px 16px;font-size:18px;font-weight:600;font-family:inherit;text-align:center;outline:none;width:220px}.profile-picker{width:100%;max-width:360px;margin-top:8px}.profile-picker-title{font-size:14px;font-weight:600;margin-bottom:12px;text-align:center;color:var(--text-secondary)}.profile-picker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.profile-picker-item{width:100%;aspect-ratio:1;border-radius:12px;border:2px solid var(--border);background:var(--bg-primary);cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;transition:border-color .15s,transform .15s,box-shadow .15s}.profile-picker-item:hover{border-color:var(--accent);transform:scale(1.08)}.profile-picker-item.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent);background:rgba(var(--accent-rgb, 100, 100, 255),.1)}.profile-picker-item svg{width:100%;height:100%}.sidebar-user-info{display:flex;flex-direction:column;gap:2px}.sidebar-username-row,.sidebar-status-row{display:flex;align-items:center;gap:6px}.sidebar-username{font-weight:600;font-size:14px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-custom-status{font-size:12px;color:var(--text-secondary);font-style:italic;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-custom-status:hover{color:var(--text-primary)}.sidebar-edit-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:12px;padding:0 2px;line-height:1;opacity:.5;flex-shrink:0;transition:opacity .15s}.sidebar-edit-btn:hover{opacity:1}.sidebar-inline-edit{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--accent);border-radius:4px;padding:2px 6px;font-size:13px;font-family:inherit;width:100%;outline:none}.contact-custom-status{font-size:12px;color:var(--text-secondary);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px;margin-left:4px}.message-wrapper{display:flex;flex-direction:column;max-width:70%;position:relative}.message-wrapper.self{align-self:flex-end;align-items:flex-end}.message-wrapper.other{align-self:flex-start;align-items:flex-start}.message-wrapper .message{max-width:100%;cursor:pointer;align-self:auto}.reaction-picker{position:absolute;bottom:calc(100% + 4px);display:flex;gap:2px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:24px;padding:6px 8px;overflow-x:auto;max-width:320px;z-index:50;scrollbar-width:none;-ms-overflow-style:none;box-shadow:0 4px 16px #0006}.reaction-picker::-webkit-scrollbar{display:none}.reaction-picker.self{right:0}.reaction-picker.other{left:0}.reaction-picker-btn{background:none;font-size:22px;padding:4px;border-radius:8px;transition:background .15s,transform .15s;flex-shrink:0;line-height:1}.reaction-picker-btn:hover{background:var(--bg-primary);transform:scale(1.25)}.reaction-bar{display:flex;flex-wrap:wrap;gap:4px;margin-top:-4px;padding:0 4px}.reaction-pill{display:inline-flex;align-items:center;gap:3px;background:transparent;border:none;border-radius:0;padding:2px;font-size:14px;line-height:1.2;cursor:pointer;outline:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.reaction-pill.mine{background:transparent;border:none}.reaction-count{font-size:11px;color:var(--text-secondary)}.emoji-picker-overlay{position:absolute;top:0;left:0;right:0;bottom:0;z-index:40}.emoji-picker{position:absolute;bottom:62px;left:60px;right:60px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:12px;box-shadow:0 4px 20px #0006;max-height:300px;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;display:flex;flex-direction:column}.emoji-search{width:100%;padding:6px 10px;margin-bottom:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:13px;outline:none}.emoji-search::placeholder{color:var(--text-muted)}.emoji-search:focus{border-color:var(--accent)}.emoji-category-tabs{display:flex;gap:2px;margin-bottom:6px;overflow-x:auto;scrollbar-width:none}.emoji-category-tabs::-webkit-scrollbar{display:none}.emoji-cat-tab{background:none;border:none;font-size:18px;padding:4px 6px;border-radius:var(--radius-sm);cursor:pointer;opacity:.5;transition:opacity .15s,background .15s}.emoji-cat-tab:hover{opacity:.8;background:var(--bg-primary)}.emoji-cat-tab.active{opacity:1;background:var(--bg-primary)}.emoji-picker::-webkit-scrollbar{display:none}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:4px}.emoji-btn{background:none;font-size:24px;padding:4px;border-radius:var(--radius-sm);transition:background .15s,transform .15s;line-height:1}.emoji-btn:hover{background:var(--bg-primary);transform:scale(1.2)}.emoji-toggle-btn{width:36px;height:36px;border-radius:50%;background:none;font-size:20px;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.emoji-toggle-btn:hover{background:var(--bg-primary)}.image-attach-btn{width:36px;height:36px;border-radius:50%;border:none;background:none;font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s;flex-shrink:0;color:var(--text-muted)}.image-attach-btn:hover{background:var(--bg-primary)}.image-attach-btn:disabled{opacity:.4;cursor:not-allowed}.message-image{max-width:min(280px,100%);max-height:40vh;border-radius:var(--radius-sm);display:block;cursor:pointer;object-fit:contain}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000e6;display:flex;align-items:center;justify-content:center;cursor:pointer}.image-lightbox img{max-width:95vw;max-height:95vh;object-fit:contain;border-radius:4px}.link-previews{display:flex;flex-direction:column;gap:6px;margin-top:6px;max-width:min(320px,100%)}.link-preview-card{background:#00000026;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;transition:background .15s;border-left:3px solid rgba(255,255,255,.2)}.link-preview-card:hover{background:#00000040}.self .link-preview-card{background:#0000001f;border-left-color:#ffffff40}.self .link-preview-card:hover{background:#0003}.link-preview-card.youtube{border-left-color:red}.link-preview-card.instagram{border-left-color:#e4405f}.link-preview-card.tiktok{border-left-color:#69c9d0}.link-preview-card.x{border-left-color:#8899a6}.link-preview-card.spotify{border-left-color:#1db954}.link-preview-thumbnail-wrap{position:relative;width:100%;overflow:hidden}.link-preview-thumbnail{width:100%;max-height:180px;object-fit:cover;display:block}.link-preview-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;background:#000000b3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;pointer-events:none}.link-preview-info{padding:8px 10px}.link-preview-platform-badge{display:flex;align-items:center;gap:4px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px;opacity:.85}.link-preview-platform-icon{width:14px;height:14px;flex-shrink:0}.link-preview-domain{display:flex;align-items:center;gap:4px;font-size:.72rem;color:#ffffff80;margin-bottom:2px}.link-preview-title{font-size:.85rem;font-weight:600;color:#fffffff2;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.link-preview-description{font-size:.78rem;color:#ffffff8c;line-height:1.3;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.link-preview-title-skeleton{height:14px;width:70%;background:#ffffff1a;border-radius:4px;animation:skeleton-pulse 1.2s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.link-preview-card.loading{opacity:.7}.emoji-inline{font-size:1.8em;line-height:1;vertical-align:middle}.emoji-only{font-size:2.6em;line-height:1.1}.unread-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:9px;background:#e74c3c;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}.scroll-bottom-btn{position:absolute;bottom:80px;right:20px;width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000004d;z-index:10;transition:opacity .2s}.scroll-bottom-btn:hover{background:var(--accent-hover)}.search-bar{padding:8px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.search-bar input{width:100%;background:var(--bg-primary);color:var(--text-primary);border-radius:20px;padding:8px 14px;font-size:13px}.search-bar input::placeholder{color:var(--text-muted)}.toast{position:fixed;top:20px;right:20px;padding:12px 20px;border-radius:var(--radius);font-weight:600;font-size:14px;z-index:1000;animation:slideIn .3s ease,fadeOut .3s ease 2.7s}.toast-success{background:#27ae60;color:#fff}.toast-error{background:#c0392b;color:#fff}.image-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:20px}.image-preview-dialog{background:var(--bg-secondary);border-radius:var(--radius);width:100%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.image-preview-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);font-weight:600;font-size:15px}.image-preview-close{background:none;border:none;color:var(--text-muted);font-size:18px;cursor:pointer;padding:4px 8px}.image-preview-main{flex:1;display:flex;align-items:center;justify-content:center;padding:16px;min-height:0;overflow:hidden}.image-preview-main img{max-width:100%;max-height:50vh;object-fit:contain;border-radius:var(--radius-sm)}.image-preview-thumbs{display:flex;gap:8px;padding:8px 16px;overflow-x:auto;border-top:1px solid var(--border)}.image-thumb{position:relative;width:56px;height:56px;border-radius:6px;overflow:hidden;cursor:pointer;flex-shrink:0;border:2px solid transparent}.image-thumb.active{border-color:var(--accent)}.image-thumb img{width:100%;height:100%;object-fit:cover}.image-thumb-remove{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background:#000000b3;color:#fff;font-size:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;padding:0}.image-preview-caption{padding:8px 16px;border-top:1px solid var(--border)}.image-preview-caption input{width:100%;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);font-size:14px;outline:none}.image-preview-caption input:focus{border-color:var(--accent)}.image-preview-actions{display:flex;gap:8px;padding:12px 16px;justify-content:flex-end;border-top:1px solid var(--border)}.message-context-menu{position:absolute;top:-4px;right:0;transform:translateY(-100%);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 4px 12px #0000004d;z-index:100;overflow:hidden;min-width:120px}.message-context-menu button{display:block;width:100%;padding:10px 16px;background:none;border:none;color:var(--text-primary);font-size:13px;font-weight:500;text-align:left;cursor:pointer}.message-context-menu button:hover{background:var(--bg-primary)}.message-context-menu button.danger{color:#e74c3c}.message-context-menu button.danger:hover{background:#e74c3c1a}.edited-label{font-size:10px;font-style:italic;color:var(--text-muted);margin-right:4px}.message-caption{font-size:13px;color:var(--text-primary);padding:4px 0 2px;word-break:break-word}.message.edit-mode{padding:8px}.edit-input{width:100%;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--accent);background:var(--bg-primary);color:var(--text-primary);font-size:14px;outline:none}.edit-actions{display:flex;gap:8px;margin-top:6px;justify-content:flex-end}.edit-actions button{padding:4px 12px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary)}.edit-actions button:last-child{background:var(--accent);color:#fff;border-color:var(--accent)}.channel-browser{display:flex;flex-direction:column;height:var(--app-height, 100vh);background:var(--bg-primary);overflow:hidden}.channel-browser-header{display:flex;align-items:center;gap:12px;padding:14px 20px;padding-top:calc(var(--safe-top) + 14px);background:var(--bg-secondary);border-bottom:1px solid var(--border)}.channel-browser-header h2{flex:1;font-size:18px;font-weight:700}.channel-create-btn{background:#e67e22!important;padding:6px 14px!important;font-size:13px!important}.channel-search-bar{display:flex;gap:8px;padding:10px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.channel-search-bar input{flex:1;background:var(--bg-primary);color:var(--text-primary);border-radius:24px;padding:8px 16px;font-size:14px}.channel-search-bar input::placeholder{color:var(--text-muted)}.channel-categories-tabs{display:flex;gap:6px;padding:8px 16px;overflow-x:auto;background:var(--bg-secondary);border-bottom:1px solid var(--border);scrollbar-width:none;-ms-overflow-style:none}.channel-categories-tabs::-webkit-scrollbar{display:none}.channel-cat-tab{padding:5px 12px;border-radius:16px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border);transition:all .15s}.channel-cat-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.channel-sort-row{display:flex;gap:8px;padding:8px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.channel-sort-btn{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;background:none;color:var(--text-muted);transition:all .15s}.channel-sort-btn.active{color:var(--accent);text-decoration:underline}.channel-browse-list{flex:1;overflow-y:auto;padding:8px 0;scrollbar-width:none;-ms-overflow-style:none}.channel-browse-list::-webkit-scrollbar{display:none}.channel-loading,.channel-empty{padding:40px 20px;text-align:center;color:var(--text-muted)}.channel-card{display:flex;gap:12px;padding:12px 16px;cursor:pointer;transition:background .15s;border-bottom:1px solid var(--border)}.channel-card:hover{background:var(--bg-secondary)}.channel-card-compact{padding:8px 16px}.channel-card-avatar{width:48px;height:48px;border-radius:12px;background:#e67e22;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.channel-card-info{flex:1;min-width:0}.channel-card-name{font-weight:600;font-size:15px;display:flex;align-items:center;gap:6px}.channel-private-icon{font-size:12px}.channel-subscribed-check{color:#27ae60;font-weight:700;font-size:13px}.channel-card-desc{font-size:13px;color:var(--text-secondary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-card-meta{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12px;flex-wrap:wrap}.channel-category-badge{background:var(--bg-primary);color:var(--text-secondary);padding:1px 8px;border-radius:10px;font-size:11px;font-weight:600;text-transform:capitalize}.channel-sub-count{color:var(--text-muted);font-size:12px}.channel-card-tag{color:var(--accent);font-size:11px;font-weight:600}.channel-view{display:flex;flex-direction:column}.channel-header{display:flex;align-items:center;gap:12px}.channel-header-info{flex:1;min-width:0}.channel-header-name{font-weight:600;font-size:16px;display:flex;align-items:center;gap:6px}.channel-header-meta{font-size:12px;color:var(--text-secondary);margin-top:2px}.channel-header-actions{display:flex;align-items:center;gap:8px}.channel-sub-btn{background:#e67e22!important;font-size:13px!important;padding:6px 16px!important}.channel-unsub-btn{font-size:13px!important;padding:6px 16px!important}.channel-compose-btn{padding:6px 12px!important;font-size:16px!important;background:#e67e22!important}.channel-desc-bar{padding:8px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border);font-size:13px;color:var(--text-secondary);line-height:1.4}.channel-posts-container{gap:12px!important}.channel-empty-posts{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);text-align:center;padding:40px}.channel-compose-bar{cursor:pointer}.channel-post{background:var(--bg-secondary);border-radius:var(--radius);padding:14px 16px;border:1px solid var(--border)}.channel-post-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;position:relative}.channel-post-time{font-size:12px;color:var(--text-muted)}.channel-post-edited{font-size:11px;color:var(--text-muted);font-style:italic}.channel-post-menu-btn{background:none;color:var(--text-muted);font-size:18px;padding:2px 6px;border-radius:4px;transition:background .15s}.channel-post-menu-btn:hover{background:var(--bg-primary)}.channel-post-menu{position:absolute;right:0;top:24px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #0000004d;padding:4px 0;min-width:140px;z-index:100}.channel-post-menu button{display:block;width:100%;padding:8px 14px;background:none;color:var(--text-primary);font-size:13px;text-align:left}.channel-post-menu button:hover{background:var(--bg-primary)}.channel-post-title{font-size:16px;font-weight:700;margin-bottom:6px;line-height:1.3}.channel-post-content{font-size:14px;line-height:1.5;word-break:break-word;white-space:pre-wrap}.channel-link-preview{display:block;margin-top:10px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;text-decoration:none;color:inherit;transition:background .15s}.channel-link-preview:hover{background:var(--bg-primary)}.channel-link-preview-img{width:100%;max-height:200px;object-fit:cover}.channel-link-preview-text{padding:10px 12px}.channel-link-preview-site{font-size:11px;color:var(--accent);text-transform:uppercase;font-weight:600;margin-bottom:4px}.channel-link-preview-title{font-weight:600;font-size:14px;line-height:1.3}.channel-link-preview-desc{font-size:12px;color:var(--text-secondary);margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.channel-post-forward{margin-top:8px;padding:6px 10px;background:var(--bg-primary);border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary);border-left:3px solid var(--accent)}.channel-post-footer{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}.channel-post-views{font-size:12px;color:var(--text-muted)}.channel-post-reactions{display:flex;gap:4px;flex-wrap:wrap}.channel-reaction-chip{display:flex;align-items:center;gap:3px;padding:3px 8px;border-radius:14px;font-size:13px;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);transition:all .15s}.channel-reaction-chip:hover{border-color:var(--accent);background:#3a7bd51a}.channel-react-btn{background:none;font-size:18px;padding:2px 4px;border-radius:4px;opacity:.6;transition:opacity .15s}.channel-react-btn:hover{opacity:1}.channel-reaction-picker{position:absolute;bottom:100%;right:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 16px #0000004d;padding:6px;display:flex;gap:2px;z-index:100}.channel-reaction-option{font-size:20px;background:none;padding:4px 6px;border-radius:6px;transition:background .15s}.channel-reaction-option:hover{background:var(--bg-primary)}.channel-audio-player{display:flex;align-items:center;gap:10px;background:var(--bg-primary);border-radius:12px;padding:10px 14px;margin-top:8px}.channel-audio-play-btn{width:38px;height:38px;border-radius:50%;border:none;background:var(--accent);color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.channel-audio-play-btn:hover{filter:brightness(1.1)}.channel-audio-controls{flex:1;min-width:0}.channel-audio-seek{height:6px;background:var(--bg-secondary);border-radius:3px;cursor:pointer;position:relative;overflow:hidden}.channel-audio-seek-fill{position:absolute;top:0;left:0;height:100%;background:var(--accent);border-radius:3px;transition:width .1s linear}.channel-audio-time{display:flex;justify-content:space-between;font-size:11px;color:var(--text-secondary);margin-top:3px}.channel-audio-speed-btn{border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);font-size:12px;padding:3px 8px;border-radius:10px;cursor:pointer;flex-shrink:0}.channel-audio-speed-btn:hover{color:var(--text-primary);border-color:var(--text-secondary)}.channel-audio-size{font-size:11px;color:var(--text-secondary);flex-shrink:0}.channel-audio-expand-btn{background:none;border:none;color:var(--text-secondary);padding:4px;cursor:pointer;flex-shrink:0;border-radius:4px;display:flex;align-items:center;justify-content:center}.channel-audio-expand-btn:hover{color:var(--accent);background:#8080801f}.channel-audio-upload{margin:8px 0}.channel-audio-pick-btn{width:100%;padding:16px;border:2px dashed var(--border-color);border-radius:12px;background:transparent;color:var(--text-primary);font-size:15px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px}.channel-audio-pick-btn:hover{border-color:var(--accent);background:var(--bg-primary)}.channel-audio-pick-hint{font-size:12px;color:var(--text-secondary)}.channel-audio-info{background:var(--bg-primary);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:4px}.channel-audio-file-name{font-weight:600;font-size:14px;word-break:break-all}.channel-audio-file-meta{font-size:12px;color:var(--text-secondary)}.channel-audio-progress{display:flex;align-items:center;gap:8px;margin-top:4px}.channel-audio-progress-bar{flex:1;height:4px;background:var(--accent);border-radius:2px;transition:width .2s}.channel-audio-progress span{font-size:12px;color:var(--text-secondary)}.channel-audio-uploaded{color:#4caf50;font-size:13px;font-weight:500}.channel-audio-remove{align-self:flex-start;background:transparent;border:none;color:var(--text-secondary);font-size:12px;cursor:pointer;padding:2px 0}.channel-audio-remove:hover{color:#f44}.channel-audio-options{display:flex;flex-direction:column;align-items:center;gap:8px}.channel-audio-record-btn{width:100%;padding:16px;border:2px dashed var(--accent);border-radius:12px;background:transparent;color:var(--text-primary);font-size:15px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px}.channel-audio-record-btn:hover{background:var(--accent);color:#fff}.channel-audio-record-btn:hover .channel-audio-pick-hint{color:#fffc}.channel-audio-or{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.channel-audio-recording{background:var(--bg-primary);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}.channel-audio-rec-indicator{display:flex;align-items:center;gap:8px}.channel-audio-rec-dot{width:10px;height:10px;border-radius:50%;background:#f44;animation:channel-rec-pulse 1s ease-in-out infinite}@keyframes channel-rec-pulse{0%,to{opacity:1}50%{opacity:.3}}.channel-audio-rec-label{font-size:14px;font-weight:600;color:var(--text-primary)}.channel-audio-rec-time{margin-left:auto;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-primary)}.channel-audio-rec-actions{display:flex;gap:8px;justify-content:flex-end}.channel-audio-rec-cancel{padding:6px 14px;border:1px solid var(--border-color);border-radius:8px;background:transparent;color:var(--text-secondary);font-size:13px;cursor:pointer}.channel-audio-rec-cancel:hover{background:var(--bg-secondary)}.channel-audio-rec-stop{padding:6px 14px;border:none;border-radius:8px;background:#f44;color:#fff;font-size:13px;font-weight:600;cursor:pointer}.channel-audio-rec-stop:hover{background:#d32f2f}.channel-audio-rec-preview{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary)}.channel-audio-preview-player{width:100%;height:36px;border-radius:8px}.channel-audio-rec-accept{padding:6px 14px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer}.channel-audio-rec-accept:hover{filter:brightness(1.1)}.channel-composer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.channel-create-screen{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary);overflow-y:auto;padding:20px}.channel-create-header{display:flex;align-items:center;gap:12px;padding:14px 20px;padding-top:calc(var(--safe-top) + 14px);margin-bottom:20px}.channel-create-header h3{font-size:20px;font-weight:700;flex:1}.mini-editor-toolbar{display:flex;gap:4px;margin-bottom:4px}.mini-editor-toolbar button{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 8px;font-size:12px;cursor:pointer;color:var(--text-secondary);transition:all .15s;line-height:1.3}.mini-editor-toolbar button:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.channel-tags-input{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);min-height:38px;align-items:center}.channel-tags-input input{border:none!important;background:transparent!important;padding:2px 4px!important;font-size:13px;flex:1;min-width:80px;color:var(--text-primary);outline:none}.debate-area{display:flex;flex-direction:column;height:100%;overflow-y:auto}.topbar-other-wrapper{position:relative}.topbar-action-other{color:var(--text-muted)!important}.topbar-action-other.expanded{color:#e040fb!important;background:#e040fb1a!important}.topbar-action-other.has-active{color:#e040fb!important}.topbar-other-dropdown{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-secondary, #1a1a2e);border:1px solid var(--border);border-radius:8px;padding:4px 0;min-width:150px;box-shadow:0 4px 16px #0006;z-index:200}.topbar-other-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 14px;border:none;background:none;color:var(--text-primary);font-size:13px;cursor:pointer;text-align:left}.topbar-other-item:hover:not(.disabled){background:#e040fb1a}.topbar-other-item.disabled{color:var(--text-muted);opacity:.45;cursor:not-allowed}.topbar-other-item.disabled:after{content:"Soon";margin-left:auto;font-size:10px;background:#ffffff14;padding:1px 6px;border-radius:8px;font-weight:600;color:var(--text-muted)}.debate-error{background:#f4433626;color:#f44336;padding:8px 12px;border-radius:6px;margin:8px 16px;font-size:13px}.debate-back-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;font-size:15px;padding:4px 8px}.debate-panel-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--border)}.debate-panel-header h2{margin:0;font-size:18px}button.primary{background:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600}button.primary:disabled{opacity:.5;cursor:not-allowed}button.danger{background:#f4433626;color:#f44336;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px}.debate-persona-manager{padding:0}.debate-persona-list{padding:8px 16px;display:flex;flex-direction:column;gap:10px}.debate-persona-card{background:var(--bg-secondary, #1a1a2e);border:2px solid transparent;border-radius:10px;padding:12px;cursor:pointer;transition:border-color .2s}.debate-persona-card:hover{border-color:#e040fb4d}.debate-persona-card.active{border-color:#e040fb;background:#e040fb14}.debate-persona-header{display:flex;align-items:center;gap:10px}.debate-persona-info{flex:1;display:flex;flex-direction:column}.debate-persona-alias{font-weight:700;font-size:15px;color:var(--text-primary)}.debate-persona-elo{font-size:12px;color:#e040fb;font-weight:600}.debate-persona-active-badge{background:#e040fb;color:#fff;font-size:10px;padding:2px 8px;border-radius:12px;font-weight:700;text-transform:uppercase}.debate-persona-stats{display:flex;gap:4px;font-size:12px;color:var(--text-muted);margin-top:6px}.debate-streak{margin-left:8px}.debate-persona-bio{font-size:13px;color:var(--text-secondary);margin:6px 0 0}.debate-persona-tags,.debate-tag{display:inline-flex;gap:4px;flex-wrap:wrap;margin-top:6px}.debate-tag{background:#e040fb26;color:#e040fb;font-size:11px;padding:2px 8px;border-radius:10px;cursor:pointer}.debate-persona-edit textarea{width:100%;background:var(--bg-primary, #0d0d1a);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;padding:6px 8px;font-size:13px;resize:vertical;margin-top:8px}.debate-edit-actions{display:flex;gap:8px;margin-top:6px}.debate-edit-actions button{padding:4px 12px;border-radius:4px;font-size:12px;border:1px solid var(--border);background:var(--bg-primary, #0d0d1a);color:var(--text-primary);cursor:pointer}.debate-persona-actions{display:flex;gap:8px;margin-top:8px}.debate-persona-actions button{padding:4px 12px;border-radius:4px;font-size:12px;border:1px solid var(--border);background:var(--bg-primary, #0d0d1a);color:var(--text-primary);cursor:pointer}.debate-create-persona{padding:16px;border-top:1px solid var(--border)}.debate-create-persona h3{margin:0 0 10px;font-size:15px}.debate-create-persona input,.debate-create-persona textarea{width:100%;background:var(--bg-primary, #0d0d1a);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;padding:8px 10px;font-size:13px;margin-bottom:8px;box-sizing:border-box}.debate-tag-input{display:flex;gap:6px}.debate-tag-input input{flex:1}.debate-tag-input button{background:var(--bg-secondary, #1a1a2e);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;width:32px;cursor:pointer;font-size:16px}.debate-create-actions{display:flex;gap:8px;margin-top:10px}.debate-add-persona-btn{display:block;width:calc(100% - 32px);margin:12px 16px;padding:10px;background:#e040fb1a;color:#e040fb;border:1px dashed #e040fb;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;text-align:center}.debate-lobby{padding:0}.debate-lobby-header{display:flex;align-items:center;justify-content:space-between;padding:16px;padding-top:calc(var(--safe-top) + 16px);border-bottom:1px solid var(--border)}.debate-lobby-header h2{margin:0;font-size:18px}.debate-lobby-actions{display:flex;align-items:center;gap:8px}.debate-persona-switch{display:flex;align-items:center;gap:6px;background:var(--bg-secondary, #1a1a2e);border:1px solid var(--border);border-radius:20px;padding:4px 12px 4px 6px;cursor:pointer;color:var(--text-primary);font-size:13px}.debate-create-btn{white-space:nowrap}.debate-create-form{padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-secondary, #1a1a2e)}.debate-create-form input,.debate-create-form textarea{width:100%;background:var(--bg-primary, #0d0d1a);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;padding:8px 10px;font-size:13px;margin-bottom:8px;box-sizing:border-box}.debate-create-options{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.debate-create-options select{background:var(--bg-primary, #0d0d1a);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;padding:6px 8px;font-size:12px}.debate-side-toggle{display:flex;border-radius:6px;overflow:hidden;border:1px solid var(--border)}.debate-side-toggle button{padding:6px 14px;border:none;background:var(--bg-primary, #0d0d1a);color:var(--text-muted);cursor:pointer;font-size:12px;font-weight:700}.debate-side-toggle button.active{background:#4caf50;color:#fff}.debate-side-toggle button:last-child.active{background:#f44336}.debate-filters{display:flex;gap:6px;padding:10px 16px;border-bottom:1px solid var(--border);flex-wrap:wrap}.debate-filters select{background:var(--bg-secondary, #1a1a2e);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:12px}.debate-refresh-btn{background:none;border:1px solid var(--border);color:var(--text-primary);border-radius:6px;padding:4px 10px;cursor:pointer;font-size:16px}.debate-loading,.debate-empty{padding:40px 16px;text-align:center;color:var(--text-muted);font-size:14px}.debate-list{padding:8px 16px;display:flex;flex-direction:column;gap:10px}.debate-card{background:var(--bg-secondary, #1a1a2e);border-radius:10px;padding:12px;border-left:3px solid transparent}.debate-card.debate-status-open{border-left-color:#4caf50}.debate-card.debate-status-inprogress{border-left-color:#ff9800}.debate-card.debate-status-concluded{border-left-color:#9e9e9e}.debate-card-header{display:flex;gap:6px;margin-bottom:6px;flex-wrap:wrap}.debate-category-badge,.debate-format-badge,.debate-status-badge{font-size:10px;padding:2px 8px;border-radius:10px;font-weight:700;text-transform:uppercase}.debate-category-badge{background:#e040fb26;color:#e040fb}.debate-format-badge{background:#2196f326;color:#2196f3}.debate-status-badge{background:#4caf5026;color:#4caf50}.debate-status-badge.status-inprogress{background:#ff980026;color:#ff9800}.debate-status-badge.status-concluded{background:#9e9e9e26;color:#9e9e9e}.debate-card-title{margin:0;font-size:15px;color:var(--text-primary);font-weight:600}.debate-card-desc{font-size:13px;color:var(--text-secondary);margin:4px 0 0}.debate-card-footer{display:flex;align-items:center;gap:10px;margin-top:8px;font-size:12px;color:var(--text-muted);flex-wrap:wrap}.debate-join-btn,.debate-watch-btn{margin-left:auto;padding:5px 14px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;border:none}.debate-join-btn{background:#4caf50;color:#fff}.debate-join-btn:disabled{opacity:.5}.debate-watch-btn{background:#2196f326;color:#2196f3}.debate-arena{display:flex;flex-direction:column;height:100%}.debate-arena-header{display:flex;align-items:flex-start;gap:12px;padding:16px;border-bottom:1px solid var(--border)}.debate-arena-title-area{flex:1}.debate-arena-title-area h2{margin:0;font-size:17px}.debate-arena-meta{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap}.debate-arena-desc{padding:0 16px 8px;font-size:13px;color:var(--text-secondary);margin:0;border-bottom:1px solid var(--border)}.debate-watchers{font-size:12px;color:var(--text-muted)}.debate-participants-banner{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 16px;background:var(--bg-secondary, #1a1a2e);border-bottom:1px solid var(--border)}.debate-participant{text-align:center;flex:1;max-width:200px}.debate-participant.is-me{font-weight:700}.debate-side-label{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.side-for .debate-side-label{color:#4caf50}.side-against .debate-side-label{color:#f44336}.debate-participant-name{font-size:14px;color:var(--text-primary)}.debate-vs{font-size:18px;font-weight:900;color:var(--text-muted)}.debate-phase-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#e040fb14;border-bottom:1px solid var(--border)}.debate-phase-label{font-size:13px;font-weight:700;color:#e040fb}.debate-timer{font-size:14px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.debate-timer.urgent{color:#f44336;animation:pulse-urgent 1s ease-in-out infinite}@keyframes pulse-urgent{0%,to{opacity:1}50%{opacity:.5}}.debate-result-banner{padding:12px 16px;text-align:center;font-size:15px;font-weight:700;border-bottom:1px solid var(--border)}.debate-result-banner.win{background:#4caf5026;color:#4caf50}.debate-result-banner.draw,.debate-result-banner.undecided{background:#9e9e9e26;color:#9e9e9e}.debate-arguments{flex:1;overflow-y:auto;padding:12px 16px}.debate-waiting{text-align:center;padding:40px 0;color:var(--text-muted)}.debate-round-group{margin-bottom:16px}.debate-round-header{text-align:center;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#e040fb;margin-bottom:10px;padding:4px 0;border-bottom:1px solid rgba(224,64,251,.2)}.debate-argument{background:var(--bg-secondary, #1a1a2e);border-radius:10px;padding:10px 12px;margin-bottom:8px;border-left:3px solid transparent}.debate-argument.side-for{border-left-color:#4caf50}.debate-argument.side-against{border-left-color:#f44336}.debate-argument.is-mine{background:#e040fb0f}.debate-arg-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.debate-arg-alias{font-weight:700;font-size:13px;color:var(--text-primary)}.debate-arg-side{font-size:10px;font-weight:800;text-transform:uppercase;padding:1px 6px;border-radius:4px}.debate-arg-side.for{background:#4caf5026;color:#4caf50}.debate-arg-side.against{background:#f4433626;color:#f44336}.debate-arg-content{font-size:14px;color:var(--text-primary);line-height:1.5;white-space:pre-wrap;word-break:break-word}.debate-input-area{padding:12px 16px;border-top:1px solid var(--border);background:var(--bg-secondary, #1a1a2e)}.debate-argument-input{width:100%;background:var(--bg-primary, #0d0d1a);color:var(--text-primary);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:14px;resize:vertical;box-sizing:border-box;font-family:inherit}.debate-input-footer{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.debate-char-count{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.debate-input-actions{display:flex;gap:8px}.debate-waiting-opponent{padding:12px 16px;border-top:1px solid var(--border);text-align:center;color:var(--text-muted);background:var(--bg-secondary, #1a1a2e)}.debate-waiting-opponent p{margin:0 0 8px}.debate-spectator-bar{padding:10px 16px;border-top:1px solid var(--border);text-align:center;font-size:13px;color:var(--text-muted);background:#2196f314}.debate-bookmark-btn{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-muted);padding:2px 6px;transition:color .15s}.debate-bookmark-btn.bookmarked,.debate-bookmark-btn:hover{color:#f5a623}.debate-arg-rating{display:flex;align-items:center;gap:8px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.star-rating{display:flex;gap:2px}.star{font-size:16px;color:var(--text-muted);transition:color .15s;-webkit-user-select:none;user-select:none}.star.filled{color:#f5a623}.star.clickable{cursor:pointer}.star.clickable:hover{color:#f5a623}.rating-info{font-size:12px;color:var(--text-muted)}.debate-voting-section{padding:16px;border-top:1px solid var(--border);text-align:center}.debate-voting-section h3{margin:0 0 4px;font-size:16px}.debate-voting-section p{font-size:13px;color:var(--text-muted);margin:0 0 12px}.debate-vote-buttons{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.debate-vote-btn{padding:8px 16px;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;font-weight:600;transition:all .15s}.debate-vote-btn.side-for:hover{background:#4caf5033;border-color:#4caf50}.debate-vote-btn.side-against:hover{background:#f4433633;border-color:#f44336}.debate-vote-btn.vote-draw:hover{background:#ff980033;border-color:#ff9800}.debate-vote-cast{padding:12px 16px;text-align:center;font-size:14px;color:#4caf50;border-top:1px solid var(--border)}.debate-results-section{padding:16px;border-top:2px solid var(--accent);background:var(--bg-elevated)}.debate-results-section h3{margin:0 0 12px;font-size:16px}.debate-results-grid{display:flex;flex-direction:column;gap:10px}.debate-result-winner{font-size:16px;text-align:center}.debate-result-winner strong{color:var(--accent)}.result-type{font-size:12px;color:var(--text-muted);margin-left:6px}.debate-result-stats{text-align:center;font-size:13px;color:var(--text-muted)}.debate-vote-breakdown{display:flex;flex-direction:column;gap:6px}.vote-breakdown-bar{display:flex;align-items:center;gap:8px}.vote-label{font-size:13px;width:80px;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vote-bar{flex:1;height:18px;background:var(--bg-primary);border-radius:9px;overflow:hidden}.vote-bar-fill{height:100%;background:var(--accent);border-radius:9px;min-width:2px;transition:width .3s}.vote-pct{font-size:13px;width:36px;text-align:right;font-weight:600}.debate-discovery{margin-bottom:8px}.debate-discovery-tabs{display:flex;gap:4px;padding:8px 0;overflow-x:auto;flex-wrap:wrap}.discovery-tab{padding:6px 12px;border-radius:16px;border:1px solid var(--border);background:var(--bg-elevated);font-size:13px;cursor:pointer;white-space:nowrap;transition:all .15s}.discovery-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.discovery-tab:hover:not(.active){background:var(--bg-primary)}.debate-search-bar{display:flex;gap:6px;padding:8px 0}.debate-search-bar input{flex:1;padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);font-size:14px}.debate-search-bar button{padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;font-size:13px}.debate-search-results h3{margin:8px 0;font-size:14px;color:var(--text-muted)}.debate-nav-btn{padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;font-size:13px;white-space:nowrap}.debate-nav-btn:hover{background:var(--bg-primary)}.debate-type-badge{font-size:11px;padding:2px 8px;border-radius:10px;background:var(--bg-primary);color:var(--text-muted);text-transform:capitalize}.debate-challenge-input{padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);font-size:14px;width:100%}.clickable{cursor:pointer}.clickable:hover{opacity:.8}.debate-arg-alias.clickable,.debate-card-creator.clickable{text-decoration:underline;text-decoration-style:dotted}.persona-profile{display:flex;flex-direction:column;gap:16px;padding:16px;overflow-y:auto;height:100%}.persona-profile-header{display:flex;flex-direction:column;gap:12px}.persona-profile-identity{display:flex;gap:16px;align-items:flex-start}.persona-profile-info{flex:1}.persona-profile-info h2{margin:0 0 4px;font-size:20px}.persona-bio{font-size:14px;color:var(--text-muted);margin:0 0 6px}.persona-tags{display:flex;gap:4px;flex-wrap:wrap}.persona-tag{font-size:11px;padding:2px 8px;border-radius:10px;background:var(--bg-primary);color:var(--text-muted)}.persona-follow-btn{padding:8px 16px;border-radius:8px;border:1px solid var(--accent);background:transparent;color:var(--accent);cursor:pointer;font-weight:600;font-size:13px;white-space:nowrap;transition:all .15s}.persona-follow-btn.following,.persona-follow-btn:hover{background:var(--accent);color:#fff}.persona-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}.persona-stat{display:flex;flex-direction:column;align-items:center;padding:10px 6px;background:var(--bg-elevated);border-radius:8px;border:1px solid var(--border)}.stat-value{font-size:18px;font-weight:700;color:var(--accent)}.stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.persona-badges-section h3,.persona-specialties-section h3,.persona-recent-debates h3{font-size:15px;margin:0 0 8px;color:var(--text-secondary)}.persona-badges-grid{display:flex;gap:8px;flex-wrap:wrap}.persona-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;font-size:13px}.badge-icon{font-size:16px}.badge-name{font-size:12px;color:var(--text-secondary)}.persona-specialties-list{display:flex;flex-direction:column;gap:4px}.persona-specialty{display:flex;align-items:center;gap:12px;padding:6px 10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;font-size:13px}.specialty-category{flex:1;font-weight:600}.specialty-elo{color:var(--accent);font-weight:600}.specialty-count{color:var(--text-muted);font-size:12px}.persona-debates-list{display:flex;flex-direction:column;gap:4px}.persona-debate-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;font-size:13px}.persona-debate-item:hover{background:var(--bg-primary)}.persona-debate-item .debate-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.debate-leaderboard{display:flex;flex-direction:column;height:100%;padding:16px;overflow-y:auto}.debate-leaderboard-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.debate-leaderboard-header h2{margin:0;font-size:20px}.leaderboard-scopes{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:12px}.leaderboard-scope-btn{padding:6px 12px;border-radius:16px;border:1px solid var(--border);background:var(--bg-elevated);font-size:13px;cursor:pointer;white-space:nowrap;transition:all .15s}.leaderboard-scope-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.leaderboard-scope-btn:hover:not(.active){background:var(--bg-primary)}.leaderboard-category-select{margin-bottom:12px}.leaderboard-category-select select{padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);font-size:14px;width:100%}.leaderboard-table{display:flex;flex-direction:column;gap:2px}.leaderboard-header-row{display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border)}.leaderboard-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;transition:background .15s;font-size:13px}.leaderboard-row:hover{background:var(--bg-elevated)}.leaderboard-row.top-1{background:#ffd70014}.leaderboard-row.top-2{background:#c0c0c014}.leaderboard-row.top-3{background:#cd7f3214}.lb-rank{width:32px;text-align:center;font-weight:700}.lb-persona{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.lb-alias{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.lb-elo{width:48px;text-align:right;font-weight:700;color:var(--accent)}.lb-wins,.lb-losses,.lb-debates,.lb-streak{width:40px;text-align:center}.channel-tag{display:inline-flex;align-items:center;gap:4px;background:var(--accent);color:#fff;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.channel-tag button{background:none;border:none;color:#ffffffb3;cursor:pointer;font-size:14px;padding:0 2px;line-height:1}.channel-tag button:hover{color:#fff}.desc-charcount{font-size:11px;color:var(--text-muted);text-align:right}.channel-composer,.channel-settings,.channel-report-dialog{background:var(--bg-secondary);border-radius:var(--radius);width:100%;max-width:520px;max-height:80vh;overflow-y:auto;padding:20px}.channel-composer-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.channel-composer-header h3{font-size:18px;font-weight:700}.channel-composer-types{display:flex;gap:8px;margin-bottom:14px}.channel-type-btn{padding:6px 16px;border-radius:20px;font-size:13px;font-weight:600;background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border);transition:all .15s}.channel-type-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.channel-composer-title,.channel-composer-link{width:100%;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;font-size:14px;margin-bottom:10px}.channel-composer-title::placeholder,.channel-composer-link::placeholder{color:var(--text-muted)}.channel-composer-content{width:100%;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;font-size:14px;font-family:inherit;resize:vertical;min-height:100px}.channel-composer-content::placeholder{color:var(--text-muted)}.channel-composer-charcount{text-align:right;font-size:11px;color:var(--text-muted);margin-top:4px;margin-bottom:10px}.channel-composer-error{color:#e74c3c;font-size:13px;margin-bottom:10px}.channel-composer-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end;flex-wrap:wrap}.channel-settings-form{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}.channel-settings-form label{font-size:13px;font-weight:600;color:var(--text-secondary);display:flex;flex-direction:column;gap:6px}.channel-settings-form input[type=text],.channel-settings-form textarea,.channel-settings-form select{width:100%;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;font-size:14px;font-family:inherit}.channel-settings-form textarea{resize:vertical;min-height:60px}.channel-settings-form select{cursor:pointer}.channel-settings-toggle{display:flex;flex-direction:column;gap:4px}.toggle-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;cursor:pointer}.toggle-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.channel-settings-hint{font-size:12px;color:var(--text-muted);margin-left:26px}.channel-delete-confirm{display:flex;align-items:center;gap:8px;font-size:13px;flex-wrap:wrap}.sidebar-channels-section{border-top:2px solid var(--border)}.sidebar-channels-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;font-size:13px;font-weight:700;color:var(--text-secondary);cursor:pointer;transition:background .15s}.sidebar-channels-header:hover{background:var(--bg-primary)}.channel-sub-item .avatar{width:40px!important;height:40px!important;font-size:16px!important;border-radius:10px!important}.channel-report-dialog{max-width:380px}.channel-report-dialog h3{font-size:16px;margin-bottom:8px}.channel-report-dialog p{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.voice-mic-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px;width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;line-height:1;border-radius:50%;flex-shrink:0;transition:background .15s,color .15s}.voice-mic-btn:hover:not(:disabled){background:#3a7bd533;color:var(--accent)}.voice-mic-btn:disabled{opacity:.4;cursor:default}.voice-mic-btn.active{color:var(--accent)}.voice-overlay{position:absolute;bottom:100%;left:0;right:0;z-index:90;padding:0 12px 8px}.voice-overlay-content{background:var(--bg-secondary);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:14px 16px;box-shadow:0 4px 20px #0006}.voice-overlay-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.voice-overlay-icon{font-size:22px;flex-shrink:0}.voice-overlay-label{font-size:14px;color:var(--text-primary);flex:1}.voice-overlay-duration{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.voice-audio-preview{flex:1;min-width:0;height:36px;max-width:280px}.voice-overlay-actions{display:flex;gap:10px;justify-content:flex-end}.voice-overlay-cancel{padding:8px 16px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:none;color:var(--text-secondary);font-size:13px;cursor:pointer}.voice-overlay-cancel:hover:not(:disabled){background:#ffffff0d;color:var(--text-primary)}.voice-overlay-send{padding:8px 18px;border-radius:8px;border:none;background:var(--accent);color:#fff;font-size:13px;cursor:pointer;font-weight:600}.voice-overlay-send:hover:not(:disabled){background:var(--accent-hover)}.voice-overlay-send:disabled{opacity:.5}.voice-overlay-stop{padding:8px 18px;border-radius:8px;border:none;background:#e74c3c;color:#fff;font-size:13px;cursor:pointer;font-weight:600}.voice-overlay-stop:hover{background:#c0392b}.voice-overlay-record{padding:8px 18px;border-radius:8px;border:none;background:#e74c3c;color:#fff;font-size:13px;cursor:pointer;font-weight:600}.voice-overlay-record:hover{background:#c0392b}.voice-recording-dot{width:10px;height:10px;border-radius:50%;background:#e74c3c;animation:voice-pulse 1s ease-in-out infinite;flex-shrink:0}@keyframes voice-pulse{0%,to{opacity:1}50%{opacity:.3}}.voice-message{min-width:240px;max-width:320px}.waveform-player{display:flex;align-items:flex-start;gap:8px;padding:4px 0}.waveform-ring-wrap{position:relative;width:60px;height:60px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.waveform-ring{transition:opacity .2s}.waveform-ring:not(.playing){opacity:.55}.waveform-play-btn{width:28px;height:28px;border-radius:0;border:none;background:none;color:var(--accent);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;padding:0;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-shadow:none;position:relative;z-index:2}.waveform-play-btn:active{opacity:.65;transform:scale(.92)}.waveform-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;padding-top:14px}.waveform-bars{display:flex;align-items:center;height:32px;touch-action:none;-webkit-user-select:none;user-select:none}.waveform-bar{border-radius:2px;flex-shrink:0;transition:opacity .15s}.waveform-time{font-size:11px;color:var(--text-muted);padding-left:2px}.forward-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.forward-picker{background:var(--bg-secondary);border-radius:var(--radius-lg);width:340px;max-height:70vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px #0006}.forward-picker-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border)}.forward-picker-header h3{margin:0;font-size:16px;color:var(--text-primary)}.forward-picker-close{background:none;border:none;color:var(--text-muted);font-size:18px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm)}.forward-picker-close:hover{background:var(--bg-primary);color:var(--text-primary)}.forward-picker-search{margin:12px 16px;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:14px;outline:none}.forward-picker-search:focus{border-color:var(--accent)}.forward-picker-list{overflow-y:auto;padding:0 8px 12px;flex:1}.forward-picker-section{padding:8px 8px 4px;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.5px}.forward-picker-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 8px;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;cursor:pointer;text-align:left}.forward-picker-item:hover{background:var(--bg-primary)}.forward-picker-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.forward-picker-avatar.group{background:var(--bg-primary);font-size:16px}.forward-picker-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forward-picker-empty{text-align:center;padding:24px;color:var(--text-muted);font-size:14px}.debate-share-btn{background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer;color:var(--text-secondary);transition:all .15s}.debate-share-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.debate-flag-btn{background:none;border:none;font-size:14px;cursor:pointer;opacity:.4;padding:2px 4px;transition:opacity .15s;position:absolute;top:6px;right:6px}.debate-argument{position:relative}.debate-flag-btn:hover{opacity:1}.debate-arg-redacted{background:#ff00001a;color:var(--text-muted);padding:4px 8px;border-radius:4px;font-size:12px;font-style:italic;margin-top:4px}.debate-flag-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.debate-flag-dialog{background:var(--bg-primary);border:1px solid var(--border);border-radius:12px;padding:20px;width:360px;max-width:90vw}.debate-flag-dialog h3{margin:0 0 12px;color:var(--text-primary)}.debate-flag-dialog label{display:block;font-size:13px;color:var(--text-secondary);margin:8px 0 4px}.debate-flag-select{width:100%;padding:8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:var(--text-primary);font-size:14px}.debate-flag-details{width:100%;padding:8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:var(--text-primary);font-size:14px;resize:vertical}.debate-flag-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.debate-daily-challenge{background:linear-gradient(135deg,#f5a6231a,#f5a6230d);border:1px solid rgba(245,166,35,.3);border-radius:10px;padding:12px 16px;margin-bottom:12px}.challenge-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.challenge-icon{font-size:20px}.challenge-title{font-weight:700;color:var(--text-primary);font-size:14px}.challenge-bonus{margin-left:auto;background:#f5a62333;color:#f5a623;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600}.challenge-topic{margin:4px 0;color:var(--text-primary);font-size:15px;font-weight:500}.challenge-meta{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.challenge-category{font-size:12px;color:var(--text-muted);background:var(--bg-elevated);padding:2px 8px;border-radius:8px}.challenge-create-btn{background:#f5a623;color:#fff;border:none;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.challenge-create-btn:hover{background:#e09518}.debate-weekly-spotlight{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#00c8961a,#00c8960d);border:1px solid rgba(0,200,150,.3);border-radius:10px;padding:10px 16px;margin-bottom:12px;font-size:13px;color:var(--text-secondary)}.spotlight-icon{font-size:18px}.spotlight-text strong{color:var(--text-primary)}.audio-player-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:linear-gradient(160deg,#0a0a12,#161626,#0e0e1e);display:flex;flex-direction:column;align-items:center;color:#e8e8f0;padding:0 24px env(safe-area-inset-bottom,0);overflow:hidden}.aps-top-bar{width:100%;display:flex;align-items:center;padding:12px 0;flex-shrink:0}.aps-top-btn{background:none;border:none;color:#ffffffb3;padding:8px;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.aps-top-btn:hover{background:#ffffff14;color:#fff}.aps-top-spacer{flex:1}.aps-track-info{text-align:center;margin-top:8px;flex-shrink:0}.aps-channel-name{font-size:12px;color:#ffffff73;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.aps-track-title{font-size:18px;font-weight:600;color:#fff;margin-bottom:2px}.aps-file-size{font-size:11px;color:#ffffff59}.aps-visualizer{flex:1;display:flex;align-items:center;justify-content:center;width:100%;min-height:0;padding:16px 0}.aps-visualizer-canvas{width:100%;max-width:360px;height:200px;border-radius:12px}.aps-seek-section{width:100%;max-width:400px;flex-shrink:0;margin-bottom:12px}.aps-seek-bar{position:relative;height:6px;background:#ffffff1f;border-radius:3px;cursor:pointer;overflow:visible}.aps-seek-fill{position:absolute;top:0;left:0;bottom:0;background:linear-gradient(90deg,#6ee7b7,#67e8f9,#a78bfa);border-radius:3px;pointer-events:none}.aps-seek-thumb{position:absolute;top:50%;width:14px;height:14px;background:#fff;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 6px #0006;pointer-events:none}.aps-seek-times{display:flex;justify-content:space-between;font-size:11px;color:#ffffff80;margin-top:6px}.aps-controls{display:flex;align-items:center;justify-content:center;gap:16px;flex-shrink:0;margin-bottom:12px}.aps-ctrl-btn{background:none;border:none;color:#fffc;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s,transform .1s}.aps-ctrl-btn:active{transform:scale(.92)}.aps-ctrl-secondary{width:44px;height:44px}.aps-ctrl-secondary:hover{background:#ffffff14}.aps-ctrl-play{width:64px;height:64px;background:linear-gradient(135deg,#6ee7b7,#67e8f9,#a78bfa);color:#0a0a12;border-radius:50%;box-shadow:0 0 20px #6ee7b74d}.aps-ctrl-play:hover{box-shadow:0 0 28px #6ee7b773}.aps-bottom-row{display:flex;align-items:center;justify-content:center;gap:32px;flex-shrink:0;padding-bottom:24px}.aps-stop-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;padding:6px 16px;border-radius:20px;cursor:pointer;font-size:13px;transition:background .15s,border-color .15s}.aps-stop-btn:hover{background:#ffffff14;border-color:#ffffff59}.aps-speed-btn{background:none;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;padding:6px 16px;border-radius:20px;cursor:pointer;font-size:13px;font-weight:600;min-width:52px;transition:background .15s,border-color .15s}.aps-speed-btn:hover{background:#ffffff14;border-color:#ffffff59}.audio-mini-bar{position:fixed;top:0;left:0;right:0;z-index:8500;height:48px;background:linear-gradient(90deg,#161626,#1e1e32);display:flex;align-items:center;padding:0 12px;cursor:pointer;box-shadow:0 2px 8px #0006;overflow:hidden}.audio-mini-progress{position:absolute;top:0;left:0;bottom:0;background:linear-gradient(90deg,#6ee7b726,#a78bfa26);pointer-events:none}.audio-mini-play{position:relative;z-index:1;background:none;border:none;color:#fff;font-size:16px;padding:4px 8px;cursor:pointer;flex-shrink:0}.audio-mini-info{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;overflow:hidden;margin-left:8px}.audio-mini-title{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audio-mini-time{font-size:10px;color:#ffffff80}.audio-mini-close{position:relative;z-index:1;background:none;border:none;color:#fff9;font-size:16px;padding:4px 8px;cursor:pointer;flex-shrink:0}.audio-mini-close:hover{color:#fff}
