.bottom-tab-bar[data-v-b631d8e2]{display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--bg-primary);border-top:1px solid var(--border-light);padding:6px 0 calc(6px + env(safe-area-inset-bottom));box-shadow:0 -2px 8px #0000000a}.tab-item[data-v-b631d8e2]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 0;text-decoration:none;color:var(--text-light);font-size:11px;transition:color .15s}.tab-item svg[data-v-b631d8e2]{stroke:currentColor}.tab-item.active[data-v-b631d8e2]{color:var(--primary)}.tab-item[data-v-b631d8e2]:active{opacity:.7}@media (max-width: 768px){.bottom-tab-bar[data-v-b631d8e2]{display:flex}}.main-nav[data-v-00572bce]{width:60px;min-width:60px;background:var(--wx-nav-bg);display:flex;flex-direction:column;align-items:center;padding:16px 0;flex-shrink:0}.nav-avatar[data-v-00572bce]{cursor:pointer;margin-bottom:20px;text-decoration:none}.nav-avatar .avatar[data-v-00572bce]{width:36px;height:36px;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:600;overflow:hidden}.nav-avatar .avatar img[data-v-00572bce]{width:100%;height:100%;object-fit:cover}.nav-items[data-v-00572bce]{flex:1;display:flex;flex-direction:column;gap:8px;align-items:center}.nav-bottom[data-v-00572bce]{display:flex;flex-direction:column;gap:8px;align-items:center}.nav-item[data-v-00572bce]{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--wx-nav-icon);cursor:pointer;transition:all .15s;text-decoration:none}.nav-item[data-v-00572bce]:hover{color:#ccc}.nav-item.active[data-v-00572bce]{color:var(--wx-nav-icon-active)}@media (max-width: 768px){.main-nav[data-v-00572bce]{display:none}}.app-shell{display:flex;height:100vh;overflow:hidden;background:var(--wx-bg)}.app-main{flex:1;min-width:0;display:flex;overflow:hidden}:root{--primary: #07c160;--primary-light: #06ad56;--primary-dark: #059a4d;--primary-bg: #e6f9ef;--success: #10b981;--danger: #ef4444;--warning: #f59e0b;--text-primary: #111111;--text-secondary: #606060;--text-light: #999999;--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-tertiary: #e9e9e9;--border-color: #e0e0e0;--border-light: #f0f0f0;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.07), 0 2px 4px -1px rgba(0,0,0,.04);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -2px rgba(0,0,0,.05);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 9999px;--wx-self-bubble: #95ec69;--wx-self-bubble-text: #000000;--wx-other-bubble: #ffffff;--wx-bg: #f5f5f5;--wx-list-bg: #e6e6e6;--wx-list-hover: #d9d9d9;--wx-list-active: #c6c6c6;--wx-nav-bg: #2e2e2e;--wx-nav-icon: #999999;--wx-nav-icon-active: #07c160}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Microsoft YaHei,sans-serif;color:var(--text-primary);background:var(--bg-secondary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{cursor:pointer;border:none;outline:none;font-family:inherit;transition:all .2s ease}input,textarea{outline:none;font-family:inherit}a{text-decoration:none;color:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.fade-in{animation:fadeIn .3s ease}.slide-up{animation:slideUp .3s ease}.slide-in{animation:slideIn .3s ease}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;white-space:nowrap}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.btn-secondary:hover{background:#e2e8f0}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{opacity:.9}.btn-text{background:transparent;color:var(--primary);padding:6px 12px}.btn-text:hover{background:var(--primary-bg)}.input{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #07c1601f}.card{background:var(--bg-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.avatar{width:44px;height:44px;border-radius:6px;background:linear-gradient(135deg,var(--primary),var(--primary-light));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:16px;flex-shrink:0;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.badge{background:var(--danger);color:#fff;font-size:11px;font-weight:600;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-light);font-size:14px;padding:40px 20px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal{background:var(--bg-primary);border-radius:var(--radius-lg);padding:24px;width:90%;max-width:420px;box-shadow:var(--shadow-lg);animation:slideUp .3s ease}.modal-title{font-size:18px;font-weight:600;margin-bottom:16px}@media (max-width: 768px){.messages-container,.messages-container *:not(input):not(textarea):not(button):not(.input-area):not(.input-area *){-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body.chat-blur .chat-area,body.chat-blur .sidebar,body.chat-blur .conv-list{filter:blur(20px);transition:filter .2s}}
