*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;background:#f5f6f8;color:#1a1a1a;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit;color:inherit}.login-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.2rem 1.5rem;background:linear-gradient(160deg,#f0f4ff,#fdf2f8 50%,#f5f6f8);overflow-y:auto}.login-brand{text-align:center;margin-bottom:1.4rem;position:relative}.login-brand:before{content:"";position:absolute;inset:-70px -140px -60px;z-index:-1;pointer-events:none;background:radial-gradient(circle at 20% 10%,rgba(255,79,216,.26),transparent 55%),radial-gradient(circle at 80% 0,rgba(124,58,237,.22),transparent 50%),radial-gradient(circle at 90% 75%,rgba(37,99,235,.18),transparent 55%);filter:blur(22px);animation:brandGlowFloat 8s ease-in-out infinite}@keyframes brandGlowFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (prefers-reduced-motion:reduce){.login-brand:before{animation:none}}.login-title{font-family:Snell Roundhand,Apple Chancery,Segoe Script,Lucida Handwriting,PingFang SC,cursive;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:650;letter-spacing:.02em;line-height:1.3;margin-bottom:.8rem;padding-bottom:.1em;background:linear-gradient(135deg,#ff4fd8,#7c3aed 28%,#2563eb 62%,#ff4fd8);background-size:220% 220%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 10px 28px rgba(124,58,237,.18));animation:meetYouFlow 7s ease-in-out infinite}@keyframes meetYouFlow{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion:reduce){.login-title{animation:none}}.login-tagline{font-family:ui-serif,Georgia,Times New Roman,serif;font-size:clamp(.85rem,2.2vw,1.05rem);font-style:italic;font-weight:500;letter-spacing:.02em;white-space:nowrap;padding-right:.15em;background:linear-gradient(90deg,#d946ef,#7c3aed,#2563eb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.3rem}.login-tagline-zh{font-size:.88rem;color:#8b8fa3;font-weight:450;letter-spacing:.06em;margin:0}.login-subtitle,.login-tagline-zh{font-family:ui-serif,Songti SC,STSong,Hiragino Mincho ProN,serif}.login-subtitle{font-size:.85rem;color:#6b7280;margin-bottom:.6rem;line-height:1.65;font-weight:520;text-align:center}.login-subtitle .en{display:inline-block;font-family:ui-serif,Georgia,Times New Roman,serif;font-size:.88em;color:#6b7280;font-style:italic;font-weight:400;letter-spacing:.01em;margin-top:2px}.login-main{display:flex;gap:3rem;align-items:stretch;justify-content:center;width:100%;max-width:880px}.login-demo-section{flex:1 1;min-width:0;display:flex;flex-direction:column}.login-form-card{background:#fff;border:1px solid #e2e4e8;border-radius:16px;padding:1.2rem 1.6rem;width:320px;flex-shrink:0;max-width:92vw;box-shadow:0 2px 12px rgba(0,0,0,.06);margin-top:3.4rem;display:flex;flex-direction:column;justify-content:center}.login-form-input{width:100%;padding:.6rem .85rem;font-size:.9rem;border:1px solid #e2e4e8;border-radius:9px;background:#f9fafb;color:#1a1a1a;outline:none;box-sizing:border-box;transition:border-color .15s;margin-bottom:.5rem}.login-form-input:focus{border-color:#2563eb;background:#fff}.login-form-error{font-size:.78rem;color:#e53e3e;margin-bottom:.5rem}.login-form-submit{width:100%;padding:.6rem 0;font-size:.9rem;font-weight:600;border:none;border-radius:9px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;cursor:pointer;transition:opacity .15s}.login-form-submit:hover:not(:disabled){opacity:.9}.login-form-submit:disabled{opacity:.5;cursor:not-allowed}.login-form-divider{display:flex;align-items:center;margin:1rem 0}.login-form-divider span{padding:0 12px;font-size:.78rem;color:#bbb;white-space:nowrap}.login-form-divider:after,.login-form-divider:before{content:"";flex:1 1;height:1px;background:#e2e4e8}.login-form-alternatives{display:flex;gap:8px}.login-alt-btn{flex:1 1;display:flex;align-items:center;justify-content:center;gap:6px;padding:.5rem .6rem;font-size:.82rem;font-weight:500;border:1px solid #e2e4e8;border-radius:8px;background:#fff;color:#444;cursor:pointer;transition:all .15s}.login-alt-btn:hover{border-color:#7c3aed;color:#7c3aed;background:#faf7ff}.login-form-hint{text-align:center;font-size:.72rem;color:#bbb;margin-top:.8rem}.login-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.8rem;gap:.8rem;width:100%;flex:1 1}.login-card{background:#fff;border:1px solid #e2e4e8;border-radius:14px;padding:1rem;cursor:pointer;transition:all .2s ease;text-align:center;box-shadow:0 1px 3px rgba(0,0,0,.04)}.login-card:hover{border-color:#c0c4cc;transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.08)}.login-card-avatar{font-size:2.8rem;display:block;margin-bottom:.8rem}.login-card-avatar-img{width:52px;height:52px;border-radius:50%;object-fit:cover;display:block;margin:0 auto .5rem}.login-card-name{font-size:1.15rem;font-weight:600;margin-bottom:.4rem;color:#1a1a1a}.login-card-bio{font-size:.78rem;color:#888;white-space:nowrap}.login-card-new{border:1.5px dashed #c0c4cc;background:#fafbfd;cursor:default}.login-card-new:hover{border-color:#c0c4cc;box-shadow:none;transform:none}.login-card-plus{font-size:2.2rem!important;color:#7c3aed;font-weight:300;line-height:1;display:flex!important;align-items:center;justify-content:center;width:2.8rem;height:2.8rem;margin:0 auto .8rem;border:1.5px dashed #c0c4cc;border-radius:50%}.login-card-new-actions{display:flex;flex-direction:column;gap:.45rem;width:100%;margin-top:.3rem}.login-new-action-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:.45rem .6rem;font-size:.82rem;font-weight:500;border:1px solid #e2e4e8;border-radius:8px;background:#fff;color:#444;cursor:pointer;transition:all .15s}.login-new-action-btn:hover{border-color:#7c3aed;color:#7c3aed;background:#faf7ff}.login-card-register{text-align:left;padding:1.4rem 1.2rem;cursor:default;min-width:240px}.register-method-tabs{display:flex;gap:.4rem;margin-bottom:.9rem}.register-method-tab{flex:1 1;padding:.35rem 0;font-size:.78rem;border:1px solid #e2e4e8;border-radius:6px;background:#f5f6f8;color:#666;cursor:pointer;transition:all .15s}.register-method-tab.active{border-color:#7c3aed;background:#f3eeff;color:#7c3aed;font-weight:500}.register-input{width:100%;padding:.5rem .7rem;font-size:.85rem;border:1px solid #e2e4e8;border-radius:7px;background:#f9fafb;color:#1a1a1a;margin-bottom:.5rem;outline:none;box-sizing:border-box;transition:border-color .15s}.register-input:focus{border-color:#7c3aed;background:#fff}.register-error{font-size:.75rem;color:#e53e3e;margin-bottom:.5rem}.register-actions{display:flex;gap:.5rem;margin-top:.4rem}.register-cancel-btn{flex:1 1;padding:.45rem 0;font-size:.83rem;border:1px solid #e2e4e8;border-radius:7px;background:#f5f6f8;color:#666;cursor:pointer;transition:all .15s}.register-cancel-btn:hover{border-color:#c0c4cc;background:#eee}.register-submit-btn{flex:2 1;padding:.45rem 0;font-size:.83rem;border:none;border-radius:7px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;cursor:pointer;font-weight:500;transition:opacity .15s}.register-submit-btn:hover{opacity:.9}.gmail-login-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:.6rem .8rem;margin:.4rem 0 .2rem;font-size:.85rem;font-weight:500;border:1px solid #e2e4e8;border-radius:8px;background:#fff;color:#333;cursor:pointer;transition:all .15s;box-shadow:0 1px 3px rgba(0,0,0,.06)}.gmail-login-btn:hover{border-color:#c0c4cc;box-shadow:0 2px 8px rgba(0,0,0,.1);background:#fafafa}.phone-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000}.phone-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.18);width:360px;max-width:92vw;overflow:hidden}.phone-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid #f0f0f0}.phone-modal-title{font-size:1rem;font-weight:600;color:#1a1a1a}.phone-modal-close{background:none;border:none;font-size:1.1rem;color:#aaa;cursor:pointer;padding:2px 6px;border-radius:4px;transition:all .15s;line-height:1}.phone-modal-close:hover{background:#f0f0f0;color:#555}.phone-modal-body{padding:20px;display:flex;flex-direction:column;gap:10px}.phone-modal-actions{display:flex;gap:8px;margin-top:4px}.phone-modal-actions .register-cancel-btn{flex:1 1}.phone-modal-actions .register-submit-btn{flex:2 1}.phone-code-row{display:flex;gap:8px;align-items:center}.phone-send-code-btn{padding:.5rem .7rem;font-size:.78rem;font-weight:500;white-space:nowrap;border:1px solid #2563eb;border-radius:7px;background:#eef2ff;color:#2563eb;cursor:pointer;transition:all .15s;flex-shrink:0}.phone-send-code-btn:hover:not(:disabled){background:#2563eb;color:#fff}.phone-send-code-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width:720px){.login-main{flex-direction:column;align-items:center;gap:1.2rem}.login-form-card{margin-top:0;display:block}.login-demo-section,.login-form-card{width:100%;max-width:380px}}@media (max-height:780px){.login-container{padding:.8rem 1rem}.login-brand{margin-bottom:.8rem}.login-brand:before{inset:-40px -80px -30px}.login-title{font-size:clamp(1.8rem,4.5vw,2.6rem);margin-bottom:.5rem}.login-tagline{font-size:.9rem}.login-tagline-zh{font-size:.78rem}.login-main{flex-direction:column;align-items:center;gap:1.2rem}.login-form-card{padding:1rem 1.2rem;width:100%;max-width:380px;margin-top:0;display:block}.login-form-input{padding:.45rem .75rem;font-size:.85rem}.login-form-submit{padding:.45rem 0}.login-subtitle{margin-bottom:.6rem;font-size:.82rem}.login-card{padding:.8rem}.login-card-avatar-img{width:44px;height:44px;margin-bottom:.4rem}.login-card-name{font-size:1rem}.login-card-bio{font-size:.72rem}}@media (max-height:640px){.login-container{padding:.5rem .8rem}.login-brand{margin-bottom:.5rem}.login-title{font-size:1.6rem;margin-bottom:.3rem}.login-tagline{font-size:.85rem}.login-tagline-zh{font-size:.72rem}.login-main{gap:.8rem}.login-form-card{padding:.8rem 1rem}.login-form-divider{margin:.5rem 0}.login-subtitle{margin-bottom:.4rem}.login-card{padding:.6rem .7rem}}.chat-layout{display:flex;height:100vh;overflow:hidden}.nav-rail{width:80px;background:#f0f1f5;flex-shrink:0;padding:8px 0;border-right:1px solid #e2e4e8}.nav-rail,.nav-rail-top{display:flex;flex-direction:column;align-items:center}.nav-rail-top{padding-bottom:8px;width:100%}.nav-rail-middle{flex:1 1;gap:2px;padding:10px 0}.nav-rail-bottom,.nav-rail-middle{display:flex;flex-direction:column;align-items:center}.nav-rail-bottom{padding-top:8px;width:100%}.nav-avatar-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s;position:relative}.nav-avatar-btn.active,.nav-avatar-btn:hover{background:rgba(0,0,0,.06)}.nav-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;font-size:1.3rem;display:block;line-height:32px;text-align:center;background:#e8eaf0}.nav-icon-btn{background:none;border:none;cursor:pointer;width:64px;height:52px;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#6b7280;transition:all .15s;position:relative}.nav-icon-btn:hover{background:rgba(0,0,0,.05);color:#374151}.nav-icon-btn.active{background:#e0e7ff;color:#4f46e5}.nav-label{font-size:.6rem;font-weight:500;letter-spacing:.03em;line-height:1}.nav-unread-badge{top:2px;right:4px;min-width:16px;height:16px;padding:0 4px;font-size:.6rem;font-weight:700;line-height:16px;text-align:center;color:#fff;border-radius:8px;border:2px solid #f0f1f5;box-shadow:0 1px 3px rgba(239,68,68,.4)}.nav-unread-badge,.nav-unread-dot{position:absolute;background:#ef4444}.nav-unread-dot{top:6px;right:6px;width:10px;height:10px;border-radius:50%;border:2px solid #f0f1f5;box-shadow:0 0 0 1px rgba(239,68,68,.3)}.contact-panel{width:280px;background:#fff;border-right:1px solid #e2e4e8;display:flex;flex-direction:column;flex-shrink:0}.contact-panel-header{padding:12px 12px 10px;align-items:center;gap:8px}.contact-panel-header,.perspective-bar{border-bottom:1px solid #e2e4e8;display:flex;flex-shrink:0}.perspective-bar{padding:8px 12px;gap:6px;background:#f8f9fa}.perspective-btn{flex:1 1;padding:7px 0;border:1px solid #e2e4e8;border-radius:8px;background:#fff;font-size:.78rem;font-weight:500;color:#888;cursor:pointer;transition:all .15s}.perspective-btn:hover{color:#555;border-color:#ccc}.perspective-btn.active{color:#2563eb;border-color:#2563eb;background:#eef2ff;font-weight:600}.sidebar-tabs{display:flex;border-bottom:1px solid #e2e4e8;flex-shrink:0}.sidebar-tab{flex:1 1;padding:12px 0;border:none;background:none;font-size:.85rem;font-weight:500;color:#999;cursor:pointer;transition:all .15s;position:relative}.sidebar-tab:hover{color:#555;background:#f8f9fa}.sidebar-tab.active{color:#1a1a1a;font-weight:600}.sidebar-tab.active:after{content:"";position:absolute;bottom:0;left:20%;width:60%;height:2px;background:#2563eb;border-radius:1px}.sidebar-search{padding:8px 12px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.sidebar-search-input{flex:1 1;min-width:0;padding:7px 12px;border:1px solid #e2e4e8;border-radius:8px;background:#f8f9fa;font-size:.82rem;outline:none;transition:border-color .15s;color:#1a1a1a}.sidebar-search-input:focus{border-color:#2563eb;background:#fff}.sidebar-search-input::placeholder{color:#bbb}.conv-group{padding:0 8px 6px}.conv-group-label{display:flex;align-items:center;gap:6px;font-size:.68rem;font-weight:700;color:#aaa;letter-spacing:.06em;text-transform:uppercase;padding:10px 6px 5px}.conv-group-badge{background:#ef4444;color:#fff;font-size:.62rem;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}.pending-request-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;background:#fff8f0;border:1px solid #fed7aa;margin-bottom:6px}.pending-actions{display:flex;gap:6px;margin-top:4px}.pending-accept-btn{padding:3px 10px;font-size:.73rem;font-weight:600;border:none;border-radius:5px;background:#2563eb;color:#fff;cursor:pointer;transition:all .15s}.pending-accept-btn:hover{background:#1d4ed8}.pending-decline-btn{padding:3px 10px;font-size:.73rem;font-weight:500;border:1px solid #e2e4e8;border-radius:5px;background:#f9fafb;color:#888;cursor:pointer;transition:all .15s}.pending-decline-btn:hover{border-color:#bbb;color:#555}.sidebar-conversations{flex:1 1;overflow-y:auto;padding:4px 8px}.conv-item{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;cursor:pointer;transition:background .15s}.conv-item:hover{background:#f5f6f8}.conv-item.active{background:#eef2ff}.conv-avatar{font-size:1.4rem;flex-shrink:0;width:36px;height:36px;text-align:center;line-height:36px;display:block;border-radius:50%;object-fit:cover;background:#e8eaf0}.conv-info{flex:1 1;min-width:0}.conv-name-row{display:flex;align-items:center;gap:6px;margin-bottom:3px}.conv-name{font-size:.9rem;font-weight:500}.conv-type-badge{font-size:.65rem;font-weight:600;padding:1px 6px;border-radius:4px}.conv-meta{display:flex;align-items:center;gap:8px;font-size:.73rem}.conv-badge{font-weight:600}.conv-docs{color:#aaa}.conv-preview{color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px;display:inline-block}.conv-preview-empty{color:#ccc;font-style:italic}.conv-item-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.conv-delete-btn{width:20px;height:20px;border-radius:50%;border:none;background:none;color:#ccc;font-size:1rem;line-height:1;cursor:pointer;display:none;align-items:center;justify-content:center;padding:0;transition:all .15s;flex-shrink:0}.conv-item:hover .conv-delete-btn{display:flex}.conv-delete-btn:hover{background:#fee2e2;color:#dc2626}.unread-badge{background:#ef4444;color:#fff;font-size:.68rem;font-weight:600;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px;flex-shrink:0;line-height:1}.chat-area{flex:1 1;display:flex;flex-direction:column;min-width:0;min-height:0;background:#fafbfc}.chat-header{padding:14px 24px;border-bottom:1px solid #e2e4e8;background:#fff;justify-content:space-between}.chat-header,.chat-header-left{display:flex;align-items:center}.chat-header-left{gap:6px}.chat-header-name{font-size:1.05rem;font-weight:600}.chat-header-avatar{width:26px;height:26px;vertical-align:middle;margin-right:2px;border-radius:50%;object-fit:cover;background:#e8eaf0}.chat-header-type-badge{font-size:.68rem;font-weight:600;padding:2px 8px;border-radius:4px;margin-left:4px}.chat-header-rel-badge{font-size:.72rem;padding:2px 9px;border:1px solid;border-radius:10px;margin-left:4px;font-weight:500}.chat-header-right{display:flex;align-items:center;gap:12px}.chat-header-access,.config-toggle-btn{font-size:.78rem;color:#888}.config-toggle-btn{background:none;border:1px solid #ddd;border-radius:6px;padding:5px 12px;cursor:pointer;transition:all .15s}.config-toggle-btn:hover{border-color:#bbb;color:#555}.config-toggle-btn.active{border-color:#2563eb;color:#2563eb;background:#eef2ff}.chat-messages{flex:1 1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.chat-welcome{text-align:center;padding:2rem 1rem;color:#999}.chat-welcome p{font-size:.9rem;line-height:1.6;max-width:420px;margin:0 auto}.chat-welcome .welcome-hint{margin-top:.8rem;font-size:.8rem;color:#bbb}.message-row{display:flex;align-items:flex-start;gap:10px;max-width:72%}.message-row.self{align-self:flex-end;flex-direction:row-reverse}.message-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;font-size:1.4rem;line-height:32px;text-align:center;display:block;object-fit:cover;margin-top:2px;background:#e8eaf0}.message-content{display:flex;flex-direction:column;min-width:0}.message-row.self .message-content{align-items:flex-end}.message-sender{font-size:.73rem;color:#888;margin-bottom:4px;padding:0 6px}.agent-indicator{font-size:.7rem}.message-bubble{padding:10px 15px;border-radius:16px;line-height:1.6;white-space:pre-wrap;word-break:break-word;font-size:.9rem}.message-bubble.user{background:#2563eb;color:#fff;border-bottom-right-radius:4px}.message-bubble.assistant{background:#fff;border:1px solid #e2e4e8;color:#1a1a1a;border-bottom-left-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.03)}.message-bubble.typing{display:flex;gap:5px;padding:14px 20px}.message-bubble.typing span{width:7px;height:7px;background:#bbb;border-radius:50%;animation:typing 1.4s infinite}.message-bubble.typing span:nth-child(2){animation-delay:.2s}.message-bubble.typing span:nth-child(3){animation-delay:.4s}.message-time{font-size:.65rem;color:#aaa;margin-top:3px}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}.chat-error{padding:10px 24px;background:#fef2f2;color:#dc2626;font-size:.83rem;border-top:1px solid #fecaca}.suggestion-chips{display:flex;flex-wrap:wrap;gap:8px;padding:10px 20px 4px;background:#fff}.suggestion-chip{background:#f0eeff;color:#5b4fcf;border:1.5px solid #d4caff;border-radius:20px;padding:6px 14px;font-size:.82rem;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s;line-height:1.3}.suggestion-chip:hover:not(:disabled){background:#e4deff;border-color:#a99dff}.suggestion-chip:disabled{opacity:.5;cursor:not-allowed}.chat-input-area{padding:16px 20px 18px;border-top:1px solid #e2e4e8;background:#fff}.chat-input-shell{position:relative;width:100%;border:1px solid #dde2eb;border-radius:24px;background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:0 10px 26px rgba(53,68,113,.08);overflow:hidden}.chat-input{display:block;width:100%;min-width:0;min-height:132px;padding:18px 72px 58px 18px;border-radius:0;border:none;background:transparent;color:#1a1a1a;outline:none;transition:background .15s;resize:none;overflow-y:auto;max-height:240px;line-height:1.55;font-family:inherit;font-size:.96rem}.chat-input:focus{background:hsla(0,0%,100%,.72)}.chat-input:disabled{opacity:.4}.new-msg-toast{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:100;display:flex;align-items:center;gap:8px;padding:10px 18px;background:#1e293b;color:#fff;border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.18);font-size:.88rem;cursor:pointer;animation:toast-slide-in .3s ease-out;max-width:80%}.new-msg-toast-icon{font-size:1.1rem;flex-shrink:0}.new-msg-toast-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes toast-slide-in{0%{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.chat-send-btn:disabled{background:#e2e4e8;color:#aaa}.chat-readonly-bar{padding:12px 20px;border-top:1px solid #e2e4e8;background:#f8f9fa;color:#999;font-size:.82rem;text-align:center}.chat-placeholder{flex:1 1;display:flex;align-items:center;justify-content:center;color:#bbb;font-size:.95rem}.config-panel{width:280px;background:#fff;border-left:1px solid #e2e4e8;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}.config-panel-header{padding:16px 18px;border-bottom:1px solid #e2e4e8;font-weight:600;font-size:.9rem;color:#1a1a1a}.config-doc-list{padding:8px 12px;flex:1 1}.config-doc-item{display:flex;align-items:center;gap:10px;padding:10px 8px;border-bottom:1px solid #f0f0f0;font-size:.83rem}.config-doc-item:last-child{border-bottom:none}.config-doc-item input[type=checkbox]{accent-color:#2563eb;width:16px;height:16px;cursor:pointer}.config-doc-item label{cursor:pointer;flex:1 1}.config-doc-level{font-size:.7rem;color:#aaa}.config-section-label{font-size:.75rem;color:#888;padding:8px 0 4px;font-weight:500;border-bottom:1px solid #f0f0f0;margin-bottom:2px}.config-doc-auto{opacity:.65}.config-doc-auto input[type=checkbox]{accent-color:#22c55e;cursor:default}.config-doc-auto label{cursor:default}.config-hint{padding:12px 18px;font-size:.75rem;color:#bbb;border-top:1px solid #f0f0f0}.task-banner{display:flex;gap:8px;padding:8px 14px;background:#f0f9ff;border-bottom:1px solid #bae6fd;font-size:.78rem}.task-banner-icon{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.task-spinner{display:block;width:14px;height:14px;border:2px solid #bae6fd;border-top-color:#0369a1;border-radius:50%;animation:spin .8s linear infinite}.task-banner-content{min-width:0}.task-banner-title{font-weight:600;color:#0369a1;margin-bottom:2px}.task-banner-item{color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-commands{margin-top:16px}.quick-commands-title{font-size:.82rem;color:#888;margin-bottom:10px}.quick-commands-list{display:flex;flex-wrap:wrap;gap:8px}.quick-command-btn{padding:8px 16px;border:1px solid #e0e7ef;border-radius:20px;background:#f8fafc;color:#334155;font-size:.82rem;cursor:pointer;transition:all .15s}.quick-command-btn:hover{background:#e0e7ef;border-color:#cbd5e1;color:#1e293b}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.sidebar-header-actions{display:flex;align-items:center;gap:6px}.profile-btn{background:none;border:1px solid #ddd;border-radius:6px;padding:5px 10px;font-size:1rem;cursor:pointer;transition:all .15s;line-height:1}.profile-btn:hover{border-color:#bbb;background:#f5f6f8}.profile-btn.active{border-color:#2563eb;background:#eef2ff}.settings-tabs{display:flex;border-bottom:1px solid #e2e4e8;flex-shrink:0}.settings-tab{flex:1 1;padding:10px 0;background:none;border:none;border-bottom:2px solid transparent;font-size:.875rem;color:#666;cursor:pointer;transition:all .15s}.settings-tab:hover{color:#333;background:#f5f6f8}.settings-tab.active{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.settings-account{padding:28px 24px;display:flex;flex-direction:column;align-items:center;gap:16px;overflow-y:auto;flex:1 1}.settings-account-avatar{font-size:3rem;line-height:1;width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:#f0f4ff;border-radius:50%}.settings-account-avatar img{width:72px;height:72px}.settings-account-info{width:100%;background:#f8f9fb;border-radius:10px;padding:14px 16px}.settings-account-label{font-size:.75rem;color:#999;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}.settings-account-name{font-size:1.05rem;font-weight:600;color:#1a1a2e}.settings-account-id{font-size:.875rem;color:#666;font-family:monospace}.doc-panel{width:420px}.doc-list-panel,.doc-panel{background:#fff;border-left:1px solid #e2e4e8;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.doc-list-panel{width:260px}.account-panel{width:340px;background:#fff;border-left:1px solid #e2e4e8;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}.doc-panel-header{padding:14px 18px;border-bottom:1px solid #e2e4e8;display:flex;align-items:center;justify-content:space-between}.doc-panel-title{font-weight:600;font-size:1rem}.doc-panel-close{background:none;border:none;font-size:1.1rem;color:#999;cursor:pointer;padding:2px 6px;border-radius:4px;transition:all .15s}.doc-panel-close:hover{background:#f0f0f0;color:#555}.doc-panel-body{flex:1 1;overflow:hidden}.doc-panel-body,.doc-panel-list{display:flex;flex-direction:column}.doc-panel-list{flex-shrink:0;max-height:280px;border-bottom:1px solid #e2e4e8}.doc-list-header{padding:8px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f0f0;flex-shrink:0}.doc-new-btn{padding:5px 12px;border:1px solid #2563eb;border-radius:6px;background:#eef2ff;color:#2563eb;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s}.doc-new-btn:hover{background:#2563eb;color:#fff}.doc-list-count{font-size:.75rem;color:#999}.doc-panel-list-scroll{overflow-y:auto;flex:1 1}.doc-category-group{padding:0 6px}.doc-category-label{font-size:.7rem;font-weight:600;color:#999;letter-spacing:.03em;padding:8px 8px 2px}.doc-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:6px;cursor:pointer;transition:background .15s}.doc-item:hover{background:#f5f6f8}.doc-item.active{background:#eef2ff}.doc-item-icon{font-size:.95rem;flex-shrink:0;width:24px;text-align:center}.doc-item-info{flex:1 1;min-width:0}.doc-item-title{font-size:.8rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-item-level{font-size:.65rem;color:#aaa}.doc-panel-editor{flex:1 1;display:flex;flex-direction:column;overflow:hidden}.doc-editor-toolbar{padding:10px 14px;border-bottom:1px solid #f0f0f0;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.doc-editor-toolbar-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.doc-editor-title-input{font-size:.95rem;font-weight:600;background:none;outline:none;width:100%;padding:2px 0;color:#1a1a1a;border:none;border-bottom:1px solid transparent}.doc-editor-title-input:focus{border-bottom-color:#2563eb}.doc-editor-select{padding:4px 8px;border:1px solid #e2e4e8;border-radius:5px;background:#f8f9fa;font-size:.73rem;color:#555;outline:none;cursor:pointer}.doc-editor-select:focus{border-color:#2563eb}.doc-save-indicator{font-size:.72rem;color:#22c55e;font-weight:500;white-space:nowrap}.doc-save-indicator.saving{color:#f59e0b}.doc-delete-btn{padding:4px 8px;border:1px solid #fca5a5;border-radius:5px;background:#fef2f2;color:#dc2626;font-size:.72rem;cursor:pointer;transition:all .15s;margin-left:auto}.doc-delete-btn:hover{background:#dc2626;color:#fff}.doc-editor-textarea{flex:1 1;width:100%;border:none;padding:14px;font-size:.85rem;line-height:1.7;color:#1a1a1a;background:#fafbfc;outline:none;resize:none}.doc-editor-textarea:focus{background:#fff}.doc-editor-placeholder{flex:1 1;color:#bbb;font-size:.85rem}.add-friend-btn,.doc-editor-placeholder{display:flex;align-items:center;justify-content:center}.add-friend-btn{background:none;border:1px solid #ddd;border-radius:6px;width:30px;height:30px;font-size:1.1rem;color:#555;cursor:pointer;transition:all .15s;line-height:1}.add-friend-btn:hover{border-color:#7c3aed;color:#7c3aed;background:#f3eeff}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:200}.confirm-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.18);width:340px;max-width:88vw;padding:28px 24px 20px;text-align:center;animation:confirmSlideIn .2s ease}@keyframes confirmSlideIn{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-modal-icon{font-size:2.2rem;margin-bottom:8px}.confirm-modal-title{font-size:1.05rem;font-weight:600;color:#1a1a1a;margin-bottom:8px}.confirm-modal-msg{font-size:.85rem;color:#666;line-height:1.5;margin-bottom:22px}.confirm-modal-actions{display:flex;gap:10px;justify-content:center}.confirm-modal-cancel,.confirm-modal-ok{padding:8px 24px;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;border:none;transition:background .15s,transform .1s}.confirm-modal-cancel{background:#f3f4f6;color:#555}.confirm-modal-cancel:hover{background:#e5e7eb}.confirm-modal-ok{background:#ef4444;color:#fff}.confirm-modal-ok:hover{background:#dc2626}.confirm-modal-ok-primary{background:#2563eb;color:#fff;padding:8px 24px;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;border:none;transition:background .15s,transform .1s}.confirm-modal-ok-primary:hover{background:#1d4ed8}.confirm-modal-cancel:active,.confirm-modal-ok-primary:active,.confirm-modal-ok:active{transform:scale(.97)}.add-friend-modal{border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.18);width:380px;max-width:92vw;max-height:80vh}.add-friend-modal,.add-friend-panel{background:#fff;display:flex;flex-direction:column;overflow:hidden}.add-friend-panel{width:320px;flex-shrink:0;border-left:1px solid #e2e4e8}.add-friend-header{padding:14px 18px;border-bottom:1px solid #e2e4e8;display:flex;align-items:center;justify-content:space-between}.add-friend-title{font-weight:600;font-size:1rem}.add-friend-search{padding:12px 16px;border-bottom:1px solid #f0f0f0;display:flex;gap:8px}.add-friend-input{flex:1 1;min-width:0;padding:.5rem .75rem;font-size:.85rem;border:1px solid #e2e4e8;border-radius:8px;outline:none;background:#f9fafb;box-sizing:border-box;transition:border-color .15s}.add-friend-input:focus{border-color:#7c3aed;background:#fff}.add-friend-search-btn{padding:.5rem 1rem;font-size:.85rem;font-weight:500;color:#fff;background:#7c3aed;border:none;border-radius:8px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s}.add-friend-search-btn:hover{background:#6d28d9}.add-friend-results{flex:1 1;overflow-y:auto;padding:6px 8px}.add-friend-item{display:flex;align-items:center;gap:12px;padding:10px 16px;transition:background .12s;border-radius:8px}.add-friend-item:hover{background:#f5f5f8}.add-friend-item-avatar{width:38px;height:38px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.5rem;border-radius:50%;overflow:hidden}img.add-friend-item-avatar{object-fit:cover}.add-friend-item-name{flex:1 1;font-size:.9rem;color:#1a1a1a;font-weight:500}.add-friend-item-btn{padding:5px 14px;font-size:.8rem;border:1px solid #7c3aed;border-radius:6px;background:#f3eeff;color:#7c3aed;cursor:pointer;font-weight:500;transition:all .15s;white-space:nowrap}.add-friend-item-btn:hover{background:#7c3aed;color:#fff}.add-friend-item-added{font-size:.75rem;color:#22c55e;padding:4px 8px;background:#f0fdf4;border-radius:5px;white-space:nowrap}.add-friend-empty{padding:24px 16px;text-align:center;color:#aaa;font-size:.85rem}.add-friend-message-area{padding:8px 16px;border-bottom:1px solid #f0f0f0}.add-friend-message-input{width:100%;padding:8px 10px;font-size:.84rem;border:1px solid #e2e4e8;border-radius:8px;background:#fafafa;resize:none;font-family:inherit;line-height:1.5;outline:none;transition:border-color .15s}.add-friend-message-input:focus{border-color:#7c3aed;background:#fff}.pending-request-message{font-size:.8rem;color:#6b7280;margin:2px 0 4px;line-height:1.4;font-style:italic}.settings-account-edit-input{width:100%;font-size:.95rem;font-weight:500;padding:6px 10px;border:1px solid #e2e4e8;border-radius:7px;background:#fff;color:#1a1a2e;outline:none;transition:border-color .15s;margin-top:2px}.settings-account-edit-input:focus{border-color:#2563eb}.settings-account-hint{font-size:.72rem;color:#bbb;margin-top:4px}.settings-profile-save-row{width:100%;display:flex;flex-direction:column;gap:6px}.settings-profile-error{font-size:.78rem;color:#dc2626}.settings-save-btn{width:100%;padding:.5rem 0;font-size:.85rem;border:none;border-radius:8px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;cursor:pointer;font-weight:500;transition:opacity .15s}.settings-save-btn:hover:not(:disabled){opacity:.9}.settings-save-btn:disabled{opacity:.6;cursor:not-allowed}.account-bottom-actions{display:flex;gap:8px;width:100%;margin-top:8px}.account-action-btn{width:100%;padding:8px 0;font-size:.82rem;font-weight:500;border:none;border-radius:8px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;cursor:pointer;transition:all .15s}.account-action-btn:hover:not(:disabled){opacity:.9}.account-action-btn:disabled{opacity:.5;cursor:not-allowed}.account-action-btn.account-action-secondary{flex:1 1;background:#f5f6f8;color:#555;border:1px solid #e2e4e8}.account-action-btn.account-action-secondary:hover{background:#eef0f3;border-color:#ccc;color:#333}.account-profile-card{display:flex;align-items:center;gap:14px;width:100%;padding:4px 0}.account-avatar-small{font-size:1.8rem;line-height:1;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#f0f4ff;border-radius:50%;flex-shrink:0}.account-avatar-small img{width:48px;height:48px;border-radius:50%;object-fit:cover}.account-profile-main{flex:1 1;min-width:0}.account-profile-name{font-size:1.05rem;font-weight:600;color:#1a1a2e}.account-profile-username{font-size:.78rem;color:#999;margin-top:2px}.perspective-toggle-inline{display:flex;gap:2px;background:#f0f1f3;border-radius:8px;padding:2px;flex-shrink:0;margin-left:auto}.perspective-pill{padding:5px 10px;font-size:.72rem;font-weight:500;border:none;border-radius:6px;background:transparent;color:#888;cursor:pointer;transition:all .15s;white-space:nowrap}.perspective-pill:hover{color:#555}.perspective-pill.active{background:#fff;color:#2563eb;box-shadow:0 1px 3px rgba(0,0,0,.1);font-weight:600}.account-qr-area{display:flex;flex-direction:column;align-items:center;padding:16px 0 8px}.account-qr-code{padding:10px;background:#fff;border:1px solid #e2e4e8;border-radius:10px;box-shadow:0 1px 4px rgba(0,0,0,.04)}.account-qr-hint{font-size:.75rem;color:#999;margin-top:8px}.account-qr-id{font-size:.72rem;color:#bbb;font-family:monospace;margin-top:2px}.account-pwd-set{font-size:.65rem;color:#16a34a;background:#f0fdf4;padding:1px 6px;border-radius:4px;font-weight:500;margin-left:6px;text-transform:none;letter-spacing:0}.invite-code-list{display:flex;flex-direction:column;gap:6px}.invite-code-item{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:#fff;border:1px solid #e2e4e8;border-radius:7px}.invite-code-text{font-family:monospace;font-size:.9rem;font-weight:600;color:#1a1a2e;letter-spacing:.1em}.invite-code-copy{padding:2px 8px;font-size:.72rem;border:1px solid #e2e4e8;border-radius:4px;background:#f9fafb;color:#666;cursor:pointer;transition:all .15s}.invite-code-copy:hover{border-color:#2563eb;color:#2563eb;background:#eef2ff}.invite-code-usage{font-size:.75rem;color:#888;margin-top:4px}.settings-logout-btn{margin-top:1.5rem;width:100%;padding:.55rem 0;font-size:.85rem;border:1px solid #e2e4e8;border-radius:8px;background:#f9fafb;color:#555;cursor:pointer;transition:all .15s}.settings-logout-btn:hover{border-color:#ccc;background:#eef0f3;color:#333}.onboarding-overlay{position:fixed;inset:0;z-index:9997;pointer-events:all}.onboarding-highlight{position:relative!important;z-index:9999!important;border-radius:10px;box-shadow:0 0 0 4px #fff,0 0 0 9999px rgba(0,0,0,.58)!important;pointer-events:none}.onboarding-tooltip{background:#fff;border-radius:14px;box-shadow:0 8px 32px rgba(0,0,0,.18);padding:20px 22px 16px;width:300px;max-width:90vw;pointer-events:all}.onboarding-tooltip-title{font-size:1rem;font-weight:700;color:#1a1a1a;margin-bottom:8px;line-height:1.4}.onboarding-tooltip-content{font-size:.875rem;color:#444;white-space:pre-line;line-height:1.65;margin-bottom:16px}.onboarding-btn-row{display:flex;gap:8px;justify-content:flex-end;align-items:center}.onboarding-skip-btn{background:none;border:none;cursor:pointer;font-size:.8rem;color:#999;padding:6px 8px;margin-right:auto}.onboarding-skip-btn:hover{color:#555}.onboarding-next-btn{background:#2563eb;color:#fff;border:none;border-radius:8px;padding:7px 16px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.onboarding-next-btn:hover{background:#1d4ed8}.onboarding-prev-btn{background:transparent;color:#666;border:1px solid #ddd;border-radius:8px;padding:7px 14px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s}.onboarding-prev-btn:hover{border-color:#999;color:#333}.onboarding-dots{display:flex;gap:5px;justify-content:center;margin-top:12px}.onboarding-dot{width:6px;height:6px;border-radius:50%;background:#d1d5db;transition:background .2s}.onboarding-dot.active{background:#2563eb}.settings-api-key-section{margin-top:4px}.settings-api-key-label{font-size:.72rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.settings-api-key-input-row{display:flex;gap:6px;align-items:center}.settings-api-key-input{flex:1 1;padding:7px 10px;border:1px solid #e2e4e8;border-radius:8px;font-size:.82rem;background:#fafafa;color:#1a1a1a;outline:none;font-family:monospace;min-width:0}.settings-api-key-input:focus{border-color:#2563eb;background:#fff}.settings-api-key-toggle{background:none;border:1px solid #e2e4e8;border-radius:6px;padding:5px 8px;cursor:pointer;font-size:.75rem;color:#666;flex-shrink:0}.settings-api-key-hint{font-size:.72rem;color:#aaa;margin-top:5px;line-height:1.5}.settings-api-key-save-row{display:flex;gap:6px;margin-top:10px}.settings-api-key-save-btn{padding:6px 14px;background:#2563eb;color:#fff;border:none;border-radius:7px;font-size:.82rem;font-weight:600;cursor:pointer}.settings-api-key-save-btn:hover{background:#1d4ed8}.settings-api-key-clear-btn{padding:6px 12px;background:none;border:1px solid #e2e4e8;border-radius:7px;font-size:.82rem;color:#888;cursor:pointer}.settings-api-key-clear-btn:hover{border-color:#aaa;color:#444}.settings-api-key-status{font-size:.75rem;margin-top:4px}.settings-api-key-status.saved{color:#16a34a}.settings-api-key-status.cleared{color:#dc2626}@media (max-width:1024px){.config-panel,.contact-panel{width:240px}.doc-panel{width:340px}.doc-list-panel{width:220px}.account-panel{width:300px}.chat-messages{padding:16px}.chat-header{padding:12px 16px}.chat-input-area{padding:10px 14px}.chat-input{min-height:120px}}@media (max-width:768px){.chat-layout{flex-direction:column;position:relative}.nav-rail{position:fixed;bottom:0;left:0;right:0;z-index:100;width:100%;height:calc(56px + env(safe-area-inset-bottom, 0px));flex-direction:row;justify-content:space-around;padding:0 0 env(safe-area-inset-bottom,0);border-right:none;border-top:1px solid #e2e4e8;background:#f8f9fb}.nav-rail-bottom,.nav-rail-middle,.nav-rail-top{flex-direction:row;padding:0;width:auto;gap:0}.nav-rail-top{order:-1}.nav-icon-btn{width:52px;height:48px;border-radius:8px;gap:1px}.nav-icon-btn svg{width:20px;height:20px}.nav-label{font-size:.55rem}.nav-avatar-btn{padding:2px}.nav-avatar{width:28px;height:28px;font-size:1.1rem;line-height:28px}.nav-unread-badge{top:0;right:0;min-width:14px;height:14px;font-size:.55rem;line-height:14px;border-width:1.5px}.contact-panel{width:100%;flex:1 1;border-right:none;padding-bottom:calc(56px + env(safe-area-inset-bottom, 0px))}.chat-area{display:none;position:fixed;inset:0;z-index:90;padding-bottom:0}.chat-layout.mobile-show-chat .chat-area{display:flex}.chat-layout.mobile-show-chat .contact-panel,.chat-layout.mobile-show-chat .nav-rail{display:none}.chat-messages{padding:12px;gap:12px}.message-row{max-width:88%}.message-bubble{font-size:.88rem;padding:9px 13px}.message-avatar{width:28px;height:28px;font-size:1.2rem;line-height:28px}.chat-header{padding:10px 12px}.chat-header-name{font-size:.95rem}.chat-header-right{gap:8px}.chat-header-access{font-size:.72rem}.chat-header-type-badge{font-size:.62rem;padding:1px 6px}.chat-header-rel-badge{font-size:.65rem;padding:1px 7px}.chat-input-area{padding:8px 10px}.chat-input-shell{border-radius:20px}.chat-input{min-height:112px;padding:14px 62px 54px 14px;font-size:.9rem;max-height:220px}.chat-attach-btn{left:10px;bottom:10px;width:36px;height:36px}.chat-send-btn{right:10px;bottom:10px;width:38px;height:38px;border-radius:12px}.pending-attachments{padding:10px 10px 0}.account-panel,.config-panel,.doc-list-panel,.doc-panel{position:fixed;inset:0;z-index:110;width:100%}.account-panel,.doc-list-panel,.doc-panel{border-left:none}.quick-commands-list{gap:6px}.quick-command-btn{padding:7px 12px;font-size:.78rem}.add-friend-modal{width:94vw;max-width:94vw}.confirm-modal{width:90vw;max-width:90vw}.phone-modal{width:92vw;max-width:92vw}.settings-account{padding:20px 16px}.account-avatar-small{font-size:1.5rem}.account-avatar-small,.account-avatar-small img{width:40px;height:40px}.perspective-pill{padding:4px 8px;font-size:.68rem}}.mobile-back-btn{display:none;background:none;border:none;cursor:pointer;padding:4px;margin-right:4px;color:#555;border-radius:6px;transition:background .15s;flex-shrink:0;line-height:1}.mobile-back-btn:hover{background:#f0f0f0;color:#1a1a1a}@media (max-width:768px){.mobile-back-btn{display:flex;align-items:center;justify-content:center}}@media (max-width:480px){.contact-panel-header{padding:10px 10px 8px;gap:6px}.sidebar-search-input{font-size:.8rem;padding:6px 10px}.conv-item{padding:9px 10px;gap:10px}.conv-avatar{width:32px;height:32px;font-size:1.2rem;line-height:32px}.conv-name{font-size:.85rem}.sidebar-tab{padding:10px 0;font-size:.82rem}.message-row{max-width:92%}}.memory-tab-row{display:flex;border-bottom:1px solid #e8eaf0;background:#fafbfc;flex-shrink:0}.memory-tab{flex:1 1;background:none;border:none;border-bottom:2px solid transparent;padding:8px 4px;font-size:.74rem;font-weight:500;color:#888;cursor:pointer;transition:color .15s,border-color .15s}.memory-tab:hover{color:#444}.memory-tab.active{color:#2563eb;border-bottom-color:#2563eb}.memo-form-editor{flex:1 1;overflow-y:auto;padding:12px 16px 24px;display:flex;flex-direction:column;gap:10px}.memo-form-row{display:flex;align-items:center;gap:10px}.memo-form-row-col{display:flex;flex-direction:column;gap:6px}.memo-form-label{font-size:.78rem;color:#666;min-width:80px;flex-shrink:0}.memo-form-input{flex:1 1;border:1px solid #e2e4e8;border-radius:6px;padding:6px 10px;font-size:.82rem;outline:none;background:#fff;transition:border-color .15s}.memo-form-input:focus{border-color:#2563eb}.memo-form-textarea{width:100%;border:1px solid #e2e4e8;border-radius:6px;padding:8px 10px;font-size:.82rem;outline:none;background:#fff;resize:vertical;transition:border-color .15s;font-family:inherit}.memo-form-textarea:focus{border-color:#2563eb}.onboarding-form-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9000;display:flex;align-items:center;justify-content:center;padding:16px}.onboarding-welcome-card{background:#fff;border-radius:20px;width:100%;max-width:340px;padding:40px 32px 32px;text-align:center;box-shadow:0 8px 40px rgba(0,0,0,.12);display:flex;flex-direction:column;align-items:center;gap:12px}.onboarding-welcome-emoji{font-size:3rem;line-height:1;margin-bottom:4px}.onboarding-welcome-title{font-size:1.3rem;font-weight:700;color:#1a1a2e}.onboarding-welcome-desc{font-size:.9rem;color:#666;line-height:1.6}.onboarding-start-btn{margin-top:12px;background:#2563eb;color:#fff;border:none;border-radius:10px;padding:12px 40px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s}.onboarding-start-btn:hover{background:#1d4ed8}.onboarding-form-card{background:#fff;border-radius:16px;width:100%;max-width:480px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.2);overflow:hidden}.onboarding-form-header{padding:24px 24px 16px;border-bottom:1px solid #f0f1f4;flex-shrink:0}.onboarding-form-title{font-size:1.25rem;font-weight:700;color:#1a1a2e;margin-bottom:6px}.onboarding-form-subtitle{font-size:.85rem;color:#666;line-height:1.5}.onboarding-form-body{flex:1 1;overflow-y:auto;padding:16px 24px;display:flex;flex-direction:column;gap:10px}.onboarding-section-title{font-size:.8rem;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.04em;margin-top:4px}.onboarding-field-row{display:flex;align-items:center;gap:10px}.onboarding-field-col{display:flex;flex-direction:column;gap:6px}.onboarding-label{font-size:.82rem;color:#555;min-width:80px;flex-shrink:0}.onboarding-input{flex:1 1;border:1px solid #e2e4e8;border-radius:8px;padding:7px 12px;font-size:.85rem;outline:none;transition:border-color .15s}.onboarding-input:focus{border-color:#2563eb}.onboarding-select{flex:1 1;border:1px solid #e2e4e8;border-radius:8px;padding:7px 12px;font-size:.85rem;outline:none;background:#fff;cursor:pointer}.onboarding-radio-group{display:flex;gap:6px}.onboarding-radio-btn{border:1.5px solid #e2e4e8;border-radius:20px;padding:5px 14px;font-size:.83rem;cursor:pointer;color:#555;transition:all .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.onboarding-radio-btn.selected{border-color:#2563eb;background:#eff6ff;color:#2563eb;font-weight:500}.onboarding-range-row{display:flex;gap:8px}.onboarding-range{flex:1 1;accent-color:#2563eb;cursor:pointer}.onboarding-tag-group{display:flex;flex-wrap:wrap;gap:6px}.onboarding-tag-btn{border:1.5px solid #e2e4e8;border-radius:20px;padding:4px 12px;font-size:.78rem;cursor:pointer;background:none;color:#666;transition:all .15s}.onboarding-tag-btn.selected{border-color:#ef4444;background:#fef2f2;color:#ef4444}.onboarding-tag-btn:hover{border-color:#aaa}.onboarding-error{padding:8px 24px;color:#ef4444;font-size:.82rem;flex-shrink:0}.onboarding-form-footer{padding:16px 24px;border-top:1px solid #f0f1f4;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;gap:8px}.onboarding-agent-btn{border:1.5px solid #6c63ff;border-radius:20px;padding:7px 16px;font-size:.82rem;color:#6c63ff;background:none;cursor:pointer;transition:all .15s}.onboarding-agent-btn:hover{background:#f0eeff}.onboarding-skip-link{background:none;border:none;color:#aaa;font-size:.82rem;cursor:pointer;padding:7px 8px}.onboarding-skip-link:hover{color:#666}.onboarding-submit-btn{background:#2563eb;color:#fff;border:none;border-radius:20px;padding:8px 20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.onboarding-submit-btn:hover{background:#1d4ed8}.onboarding-submit-btn:disabled{background:#93c5fd;cursor:not-allowed}.chat-drop-overlay{position:fixed;inset:0;z-index:1000;background:rgba(24,32,56,.18);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;pointer-events:none}.chat-drop-overlay-card{background:hsla(0,0%,100%,.96);border:2px dashed #6c63ff;border-radius:24px;padding:28px 36px;box-shadow:0 20px 50px rgba(54,64,110,.18);text-align:center}.chat-drop-overlay-title{font-size:1.05rem;font-weight:700;color:#3d3a66}.chat-drop-overlay-subtitle{margin-top:8px;color:#7a7599;font-size:.9rem}.message-attachments{display:flex;flex-direction:column;gap:8px;margin-top:10px}.message-attachment-card{display:flex;align-items:center;gap:10px;text-decoration:none;border-radius:16px;background:hsla(0,0%,100%,.72);color:inherit;overflow:hidden}.message-attachment-card.file{padding:10px 12px}.message-attachment-card.image{flex-direction:column;align-items:stretch}.message-attachment-image{width:100%;max-width:240px;max-height:220px;object-fit:cover;display:block;border-radius:14px}.message-attachment-fileicon{min-width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#5b7fff,#7c5cff);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700}.message-attachment-meta{padding:8px 10px 10px;min-width:0}.message-attachment-name{font-size:.84rem;font-weight:600;word-break:break-word}.message-attachment-sub{margin-top:2px;font-size:.74rem;color:#777}.pending-attachments{display:flex;flex-wrap:wrap;width:100%;gap:8px;padding:14px 14px 0}.pending-attachment-chip{display:flex;align-items:center;gap:8px;min-width:0;max-width:240px;background:#f6f7fb;border:1px solid #e4e7f2;border-radius:14px;padding:7px 10px}.pending-attachment-chip.uploading{border-style:dashed}.pending-attachment-thumb{width:36px;height:36px;border-radius:10px;object-fit:cover;flex-shrink:0}.pending-attachment-icon{min-width:36px;height:36px;border-radius:10px;background:#6c63ff;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;flex-shrink:0}.pending-attachment-info{min-width:0;flex:1 1}.pending-attachment-name{font-size:.78rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pending-attachment-size{margin-top:1px;font-size:.7rem;color:#8a8da3}.pending-attachment-remove{border:none;background:none;color:#999;cursor:pointer;font-size:1rem;line-height:1;padding:2px 4px}.chat-attach-btn{position:absolute;left:14px;bottom:14px;width:38px;height:38px;border:none;background:transparent;color:#5f6678;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.chat-attach-btn:hover:not(:disabled){background:#f1f4fa;color:#374151}.chat-attach-btn:disabled{opacity:.6;cursor:not-allowed}.chat-send-btn{position:absolute;right:14px;bottom:14px;width:40px;height:40px;border-radius:14px;border:none;background:#2563eb;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;box-shadow:0 8px 18px rgba(37,99,235,.28)}.chat-send-btn:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px)}.chat-send-btn:disabled{background:#bfd3ff;box-shadow:none;cursor:not-allowed}