.login-page[data-v-d18ddf4c]{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}.login-card[data-v-d18ddf4c]{width:100%;max-width:380px}@media (max-width: 768px){.login-page[data-v-d18ddf4c]{padding:16px}}.login-card h2[data-v-d18ddf4c]{margin-bottom:20px;font-size:1.25rem}.field[data-v-d18ddf4c]{margin-bottom:14px}.field label[data-v-d18ddf4c]{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:4px}.btn-block[data-v-d18ddf4c]{width:100%;margin-top:8px}.switch[data-v-d18ddf4c]{margin-top:16px;font-size:.8rem;text-align:center;color:var(--text-muted)}.link[data-v-d18ddf4c]{background:none;border:none;color:var(--primary);cursor:pointer;font-size:inherit;text-decoration:underline}.sidebar[data-v-877275b9]{display:flex;flex-direction:column;width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);overflow:hidden}.logo[data-v-877275b9]{display:block;padding:16px 16px 12px;font-size:1.25rem;font-weight:700;color:var(--primary);text-decoration:none}.sidebar-header[data-v-877275b9]{display:flex;align-items:center;justify-content:space-between;padding:0 16px 12px}.section-gap[data-v-877275b9]{margin-top:8px;padding-top:12px;border-top:1px solid var(--border)}.sidebar-header-actions[data-v-877275b9]{display:flex;gap:4px}.sidebar-title[data-v-877275b9]{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.sidebar-close-btn[data-v-877275b9]{display:none}.sidebar-scroll[data-v-877275b9]{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.sidebar-footer[data-v-877275b9]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px;border-top:1px solid var(--border)}.profile-link[data-v-877275b9]{min-width:0;font-size:.875rem;color:var(--text-muted);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s}.profile-link[data-v-877275b9]:hover{color:var(--text)}.new-room[data-v-877275b9]{padding:0 16px 12px;display:flex;flex-direction:column;gap:6px}.new-room-actions[data-v-877275b9]{display:flex;gap:4px}.empty-hint[data-v-877275b9]{padding:0 16px 12px;font-size:.8rem;color:var(--text-muted)}.room-list[data-v-877275b9]{list-style:none}.room-item[data-v-877275b9]{display:flex;justify-content:space-between;padding:8px 16px;cursor:pointer;font-size:.875rem;transition:background .15s}.room-item[data-v-877275b9]:hover{background:var(--surface2)}.room-item.active[data-v-877275b9]{background:var(--surface2);color:var(--primary);font-weight:600}.room-meta[data-v-877275b9]{font-size:.7rem;color:var(--text-muted)}.leave-wrap[data-v-877275b9]{margin-top:auto;padding:12px 16px}.leave-btn[data-v-877275b9]{width:100%}@media (max-width: 768px){.sidebar[data-v-877275b9]{position:fixed;top:0;left:0;height:var(--vh, 100dvh);z-index:100;transform:translate(-100%);transition:transform .2s ease}.sidebar.open[data-v-877275b9]{transform:translate(0)}.sidebar-close-btn[data-v-877275b9]{display:inline-flex}.backdrop[data-v-877275b9]{position:fixed;top:0;left:0;width:100%;height:var(--vh, 100dvh);background:#00000080;z-index:99}}.members[data-v-a49b8b7e]{display:flex;flex-direction:column;width:280px;background:var(--surface);border-left:1px solid var(--border);overflow:hidden}.members-header[data-v-a49b8b7e]{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border)}.members-title[data-v-a49b8b7e]{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.members-room[data-v-a49b8b7e]{min-width:0;margin-left:auto;font-size:.75rem;color:var(--primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.members-close[data-v-a49b8b7e]{display:none}.member-list[data-v-a49b8b7e]{flex:1;min-height:0;overflow-y:auto;list-style:none;padding:8px 0}.member-item[data-v-a49b8b7e]{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:.875rem;flex-wrap:wrap}.member-info[data-v-a49b8b7e]{min-width:0;display:flex;flex-direction:column;background:none;border:none;padding:0;color:inherit;cursor:pointer;text-align:left}.member-name[data-v-a49b8b7e]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-login[data-v-a49b8b7e]{font-size:.7rem;color:var(--text-muted)}.role-select[data-v-a49b8b7e]{font-size:.65rem;background:var(--input-bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:2px 4px}.member-role[data-v-a49b8b7e]{font-size:.65rem;color:var(--text-muted);text-transform:uppercase}.member-status[data-v-a49b8b7e]{margin-left:auto;font-size:.7rem;white-space:nowrap}.member-status.online[data-v-a49b8b7e]{color:#2ecc71}.member-status.offline[data-v-a49b8b7e],.member-status.unknown[data-v-a49b8b7e]{color:var(--text-muted)}.member-item.me[data-v-a49b8b7e]{color:var(--primary);font-weight:600}.member-badge[data-v-a49b8b7e]{padding:1px 6px;font-size:.7rem;color:var(--text-muted);background:var(--surface2);border-radius:var(--radius)}.member-badge.muted[data-v-a49b8b7e]{color:#e67e22}.member-actions[data-v-a49b8b7e]{width:100%;display:flex;gap:4px;flex-wrap:wrap}.banned-section[data-v-a49b8b7e]{padding:8px 16px;border-top:1px solid var(--border)}.section-title[data-v-a49b8b7e]{font-size:.7rem;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.banned-list[data-v-a49b8b7e]{list-style:none;display:flex;flex-direction:column;gap:6px}.banned-item[data-v-a49b8b7e]{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.8rem}.members-add[data-v-a49b8b7e]{position:relative;display:flex;gap:6px;padding:12px 16px;border-top:1px solid var(--border)}.add-input-wrap[data-v-a49b8b7e]{flex:1;min-width:0;position:relative}.suggestions[data-v-a49b8b7e]{position:absolute;bottom:calc(100% + 6px);left:0;right:0;z-index:10;max-height:200px;overflow-y:auto;list-style:none;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius)}.suggestion[data-v-a49b8b7e]{padding:8px 12px;font-size:.8rem;cursor:pointer}.suggestion[data-v-a49b8b7e]:hover{background:var(--input-bg)}.suggestion.disabled[data-v-a49b8b7e]{color:var(--text-muted);cursor:not-allowed}@media (max-width: 768px){.members[data-v-a49b8b7e]{position:fixed;top:0;right:0;height:var(--vh, 100dvh);z-index:100;transform:translate(100%);transition:transform .2s ease}.members.open[data-v-a49b8b7e]{transform:translate(0)}.members-close[data-v-a49b8b7e]{display:inline-flex}.members-backdrop[data-v-a49b8b7e]{position:fixed;top:0;left:0;width:100%;height:var(--vh, 100dvh);background:#00000080;z-index:99}}.settings[data-v-fc398e46]{display:flex;flex-direction:column;width:280px;background:var(--surface);border-left:1px solid var(--border);overflow:hidden}.settings-header[data-v-fc398e46]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.settings-title[data-v-fc398e46]{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.settings-body[data-v-fc398e46]{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.field label[data-v-fc398e46]{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:4px}.btn-block[data-v-fc398e46]{width:100%}.avatar-preview[data-v-fc398e46]{display:flex;justify-content:center}.avatar-preview img[data-v-fc398e46]{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid var(--border)}.meta[data-v-fc398e46]{display:flex;flex-direction:column;gap:4px;font-size:.75rem;color:var(--text-muted)}@media (max-width: 768px){.settings[data-v-fc398e46]{position:fixed;top:0;right:0;height:var(--vh, 100dvh);z-index:100;transform:translate(100%);transition:transform .2s ease}.settings.open[data-v-fc398e46]{transform:translate(0)}.settings-backdrop[data-v-fc398e46]{position:fixed;top:0;left:0;width:100%;height:var(--vh, 100dvh);background:#00000080;z-index:99}}.message-list-scroll[data-v-05ebe24a]{height:100%;overflow-y:auto}.message-list[data-v-05ebe24a]{max-width:800px;margin:0 auto;width:100%;padding:16px;display:flex;flex-direction:column;gap:8px}.center[data-v-05ebe24a]{margin:auto;color:var(--text-muted);font-size:.875rem}.load-older[data-v-05ebe24a]{flex-shrink:0;height:28px;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--text-muted)}.hint[data-v-05ebe24a]{opacity:.7}.bubble[data-v-05ebe24a]{max-width:70%;padding:10px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}.bubble.pinned[data-v-05ebe24a]{border-color:#f1c40f}@media (max-width: 768px){.bubble[data-v-05ebe24a]{max-width:85%}.message-list[data-v-05ebe24a]{padding:12px}}.bubble.own[data-v-05ebe24a]{align-self:flex-end;background:var(--surface2);border-color:var(--primary);border-bottom-right-radius:4px}.bubble.other[data-v-05ebe24a]{align-self:flex-start;border-bottom-left-radius:4px}.forward-badge[data-v-05ebe24a]{font-size:.65rem;color:var(--text-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}.reply-context[data-v-05ebe24a]{margin-bottom:6px;padding:6px 10px;background:var(--input-bg);border-left:2px solid var(--primary);border-radius:6px;font-size:.78rem;display:flex;flex-direction:column;gap:2px;max-width:100%;overflow:hidden}.reply-author[data-v-05ebe24a]{color:var(--primary);font-weight:600}.reply-text[data-v-05ebe24a]{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msg-header[data-v-05ebe24a]{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}.msg-author[data-v-05ebe24a]{font-size:.8rem;font-weight:600;color:var(--primary);background:none;border:none;padding:0;cursor:pointer}.msg-author[data-v-05ebe24a]:hover{text-decoration:underline}.msg-time[data-v-05ebe24a]{font-size:.7rem;color:var(--text-muted)}.msg-edited[data-v-05ebe24a]{font-size:.65rem;color:var(--text-muted);font-style:italic}.msg-actions[data-v-05ebe24a]{margin-left:auto;display:flex;gap:4px;flex-wrap:wrap}.msg-text[data-v-05ebe24a]{font-size:.9rem;word-break:break-word}.msg-text.deleted[data-v-05ebe24a]{color:var(--text-muted);font-style:italic}.msg-edit[data-v-05ebe24a]{display:flex;flex-direction:column;gap:6px}.edit-actions[data-v-05ebe24a]{display:flex;gap:4px}.input-wrap[data-v-3b06a679]{background:var(--surface);border-top:1px solid var(--border)}.reply-bar[data-v-3b06a679]{display:flex;align-items:center;gap:8px;padding:8px 16px 0;font-size:.78rem;color:var(--text-muted)}.reply-label[data-v-3b06a679]{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-label[data-v-3b06a679]:before{content:"↩ ";color:var(--primary)}.reply-cancel[data-v-3b06a679]{flex-shrink:0}.message-input[data-v-3b06a679]{display:flex;gap:8px;padding:12px 16px}@media (max-width: 768px){.message-input[data-v-3b06a679]{padding:8px 12px}.reply-bar[data-v-3b06a679]{padding:8px 12px 0}}.hint[data-v-9146fc0d],.hint[data-v-1bea3860]{color:var(--text-muted);font-size:.85rem}.current[data-v-1bea3860]{margin-bottom:16px;padding:10px;background:var(--surface2);border-radius:var(--radius)}.label[data-v-1bea3860]{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:4px}.versions[data-v-1bea3860]{list-style:none;display:flex;flex-direction:column;gap:8px;max-height:240px;overflow-y:auto}.versions li[data-v-1bea3860]{padding:8px 10px;background:var(--input-bg);border-radius:var(--radius);font-size:.85rem}.version-time[data-v-1bea3860]{display:block;font-size:.7rem;color:var(--text-muted);margin-bottom:4px}.hint[data-v-7972afe8]{color:var(--text-muted);font-size:.85rem;margin-bottom:12px}.field[data-v-7972afe8]{margin-bottom:12px}.field label[data-v-7972afe8]{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:4px}.avatar-wrap[data-v-7972afe8]{display:flex;justify-content:center;margin-bottom:12px}.avatar-wrap img[data-v-7972afe8]{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid var(--border)}.status[data-v-7972afe8]{font-size:.8rem;margin-bottom:12px}.status.online[data-v-7972afe8]{color:#2ecc71}.status.offline[data-v-7972afe8]{color:var(--text-muted)}.chat-layout[data-v-5e32137b]{display:flex;flex:1;overflow:hidden}.chat-main[data-v-5e32137b]{flex:1;display:flex;flex-direction:column;overflow:hidden}.chat-toolbar[data-v-5e32137b]{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--border)}.menu-btn[data-v-5e32137b]{display:none}.chat-title[data-v-5e32137b]{font-size:.875rem;font-weight:600;color:var(--text);background:none;border:none;padding:0;cursor:pointer;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-title.muted[data-v-5e32137b]{color:var(--text-muted);cursor:default}.chat-title[data-v-5e32137b]:not(.muted):hover{color:var(--primary)}.toolbar-actions[data-v-5e32137b]{margin-left:auto;display:flex;align-items:center;gap:6px;min-width:0}.search-input[data-v-5e32137b]{width:180px;padding:6px 10px;font-size:.8rem}.pinned-bar[data-v-5e32137b]{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface2);border-bottom:1px solid var(--border);font-size:.8rem}.pinned-label[data-v-5e32137b]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.messages-area[data-v-5e32137b]{flex:1;min-height:0}.conn-dot[data-v-5e32137b]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.conn-dot.online[data-v-5e32137b]{background:#2ecc71}.conn-dot.offline[data-v-5e32137b]{background:var(--text-muted);animation:pulse-5e32137b 1.2s infinite}@keyframes pulse-5e32137b{0%,to{opacity:1}50%{opacity:.3}}.toast[data-v-5e32137b]{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:200;padding:10px 18px;background:var(--surface2);border:1px solid var(--primary);border-radius:var(--radius);font-size:.85rem;color:var(--text)}.fade-enter-active[data-v-5e32137b],.fade-leave-active[data-v-5e32137b]{transition:opacity .2s}.fade-enter-from[data-v-5e32137b],.fade-leave-to[data-v-5e32137b]{opacity:0}@media (max-width: 768px){.menu-btn[data-v-5e32137b]{display:inline-flex}.search-input[data-v-5e32137b]{width:120px}}.profile-page[data-v-2e6dbc6d]{flex:1;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto}.profile-layout[data-v-2e6dbc6d]{display:flex;flex-direction:column;gap:16px;width:100%;max-width:420px}.profile-card h2[data-v-2e6dbc6d]{margin-bottom:20px;font-size:1.25rem}.field[data-v-2e6dbc6d]{margin-bottom:14px}.field label[data-v-2e6dbc6d]{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:4px}.btn-block[data-v-2e6dbc6d]{width:100%;text-decoration:none}.avatar-preview[data-v-2e6dbc6d]{display:flex;justify-content:center;margin-bottom:16px}.avatar-preview img[data-v-2e6dbc6d]{width:80px;height:80px;border-radius:50%;object-fit:cover;border:2px solid var(--border)}.blocked-list[data-v-2e6dbc6d]{list-style:none;display:flex;flex-direction:column;gap:8px}.blocked-item[data-v-2e6dbc6d]{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.875rem}.empty[data-v-2e6dbc6d]{color:var(--text-muted);font-size:.85rem}@media (max-width: 768px){.profile-page[data-v-2e6dbc6d]{padding:16px;align-items:flex-start}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #1a1a2e;--surface: #16213e;--surface2: #0f3460;--primary: #e94560;--text: #eee;--text-muted: #999;--border: #2a2a4a;--input-bg: #1e2d4a;--radius: 8px;--font: "Segoe UI", system-ui, -apple-system, sans-serif;--sidebar-width: 200px}html,body{height:100%;height:var(--vh, 100dvh);overflow:hidden}body{position:fixed;top:0;left:0;width:100%;font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.5}#app{height:100%;height:var(--vh, 100dvh);overflow:hidden}.app{display:flex;flex-direction:column;height:100%;height:var(--vh, 100dvh);overflow:hidden}.main{flex:1;display:flex;overflow:hidden}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:none;border-radius:var(--radius);font-size:.875rem;font-weight:600;cursor:pointer;transition:opacity .15s}.btn:hover{opacity:.85}.btn-primary{background:var(--primary);color:#fff}.btn-outline{background:transparent;border:2px solid #4a6fa5;color:#4a6fa5}.btn-danger{background:#c0392b;color:#fff}.btn-sm{padding:4px 10px;font-size:.75rem}.input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--input-bg);color:var(--text);font-size:.875rem;outline:none;transition:border-color .15s}.input:focus{border-color:var(--primary)}.card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);padding:24px}.error{color:var(--primary);font-size:.8rem;margin-top:8px}.success{color:#2ecc71;font-size:.8rem;margin-top:8px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:16px;background:#0009}.modal{width:100%;max-width:420px;max-height:min(80vh,var(--vh, 100dvh));overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.modal h3{margin-bottom:16px;font-size:1rem}.modal-actions{display:flex;gap:8px;margin-top:16px}.modal-list{list-style:none;display:flex;flex-direction:column;gap:6px;max-height:240px;overflow-y:auto}.modal-list-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface2);border-radius:var(--radius);font-size:.85rem;cursor:pointer}.modal-list-item:hover{background:var(--input-bg)}.modal-list-item.active{border:1px solid var(--primary)}.hidden-input{display:none}@media (max-width: 768px){:root{--sidebar-width: 80vw}.card{padding:16px}.input{font-size:16px}}
