:root{--qq-blue: #12b7f5;--qq-blue-strong: #0099ff;--bg: #f2f3f5;--card: #ffffff;--line: #e5e6eb;--text: #1a1a1a;--text-2: #8a8f99;--text-3: #b8bcc4;--bubble-self: #0099ff;--bubble-other: #ffffff;--danger: #f5483b;--radius-bubble: 18px;--radius-card: 14px;--panel: var(--card);--panel-soft: #f7f8fa;--muted: var(--text-2);--line-strong: #dcdfe5;--primary: var(--qq-blue-strong);--primary-weak: #e8f6ff;--hover: #f2f3f5;--ai: #7c4dff;--ai-weak: #f4efff;--ai-bubble: #fbf9ff;--warn: #b7791f;--warn-bg: #fff7e0;--warn-line: #f2d38b;--ok: #18a058;--radius: var(--radius-card);--radius-sm: 10px;--font: -apple-system, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--shadow-sm: 0 1px 2px rgba(26, 26, 26, .06);--shadow-md: 0 10px 30px rgba(26, 26, 26, .12);--shadow-lg: 0 24px 64px rgba(26, 26, 26, .18);color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html,body{max-width:100%}html{overflow-x:hidden}body{overflow-x:hidden;overflow-x:clip}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-size-adjust:100%;font-size:16px;line-height:1.5}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}a{color:var(--primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--text);font-weight:500;transition:background .15s,border-color .15s,transform .06s}.btn:hover:not(:disabled){background:var(--hover);border-color:#c3cbda}.btn:active:not(:disabled){transform:translateY(1px)}.btn--primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn--primary:hover:not(:disabled){background:#1f70ec;border-color:#1f70ec}.btn--ghost{background:transparent;border-color:transparent;color:var(--primary)}.btn--ghost:hover:not(:disabled){background:var(--primary-weak);border-color:transparent}.btn--danger{color:var(--danger);border-color:#f3c9ca}.btn--danger:hover:not(:disabled){background:#fff5f5;border-color:#eba9ab}.btn--sm{height:30px;padding:0 10px;font-size:13px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-2);font-size:15px;line-height:1;transition:background .15s,color .15s}.icon-btn:hover{background:#eef2f9;color:var(--text)}.link-btn{margin-left:6px;border:none;background:none;color:var(--primary);padding:0;font:inherit;text-decoration:underline}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field__label{font-size:13px;color:var(--text-2);font-weight:500}.input{width:100%;min-height:38px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);transition:border-color .15s,box-shadow .15s}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2b7fff29}.input--area{resize:vertical;min-height:72px;line-height:1.5}.form-error{margin:6px 0 12px;padding:8px 10px;border-radius:var(--radius-sm);background:#fdecec;border:1px solid #f6c6c7;color:#b4282c;font-size:13px}.avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:50%;color:#fff;font-weight:600;user-select:none}.avatar--sm{width:34px;height:34px;font-size:14px}.avatar--md{width:42px;height:42px;font-size:16px}.avatar--lg{width:56px;height:56px;font-size:20px}.avatar--ai{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ai)}.avatar__letter{transform:translateY(.5px)}.avatar__art{position:absolute;inset:0;width:100%;height:100%;border-radius:50%;display:block}.avatar__ai{position:absolute;right:-6px;bottom:-4px;min-width:22px;padding:1px 4px;border-radius:6px;background:var(--ai);color:#fff;font-size:10px;font-weight:700;letter-spacing:.3px;border:1.5px solid #fff;line-height:1.3}.splash{height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.splash__logo{font-size:30px;font-weight:700;color:var(--primary);letter-spacing:4px}.splash__hint{color:var(--muted);margin:0}.auth{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,460px);align-items:center;gap:64px;padding:48px clamp(24px,7vw,120px);background:radial-gradient(900px 460px at 12% -10%,#e3edff,#e3edff00 62%),radial-gradient(760px 400px at 100% 110%,#f0e9ff,#f0e9ff00 60%),var(--bg)}.auth__brand{max-width:460px}.auth__logo{font-size:44px;font-weight:700;letter-spacing:8px;color:var(--primary)}.auth__slogan{margin:10px 0 18px;font-size:17px;color:var(--text-2)}.auth__bullets{margin:0;padding-left:18px;color:var(--muted);display:grid;gap:6px}.auth__panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:26px 26px 20px;box-shadow:var(--shadow-md)}.tabs{display:flex;gap:6px;padding:4px;background:var(--hover);border-radius:10px;margin-bottom:20px}.tab{flex:1;height:36px;border:none;border-radius:8px;background:transparent;color:var(--text-2);font-weight:500;transition:background .15s,color .15s,box-shadow .15s}.tab--active{background:var(--card);color:var(--primary);box-shadow:var(--shadow-sm)}.auth__submit{width:100%;height:42px;margin-top:4px;font-size:15px}.auth__hint{margin:14px 0 0;font-size:12px;color:var(--muted);line-height:1.6}.chat{display:grid;grid-template-columns:300px minmax(0,1fr) 288px;height:100dvh;background:var(--bg)}.conv{display:flex;flex-direction:column;min-width:0;background:var(--panel);border-right:1px solid var(--line)}.conv__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 12px 10px;border-bottom:1px solid var(--line)}.conv__me{display:flex;align-items:center;gap:9px;min-width:0}.conv__me-text{display:flex;flex-direction:column;min-width:0}.conv__me-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:104px}.conn{font-size:12px;line-height:1.4}.conn--on{color:var(--ok)}.conn--off{color:var(--warn)}.conv__actions{display:flex;gap:2px}.conv__title{display:flex;align-items:center;gap:8px;padding:12px 14px 6px;font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.4px}.conv__count{padding:0 6px;border-radius:999px;background:var(--hover);color:var(--muted);font-size:11px}.conv__list{list-style:none;margin:0;padding:0 8px 10px;overflow-y:auto;flex:1}.conv__empty{padding:24px 12px;color:var(--muted);font-size:13px}.conv__item{position:relative;width:100%;display:flex;align-items:center;gap:10px;padding:9px 10px;border:none;border-radius:var(--radius);background:transparent;text-align:left;transition:background .14s}.conv__item:hover{background:var(--hover)}.conv__item--active{background:var(--primary-weak)}.conv__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.conv__row{display:flex;align-items:center;gap:6px;min-width:0}.conv__name{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv__time{font-size:12px;color:var(--muted);flex:none}.conv__preview{flex:1;min-width:0;font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-dot{flex:none;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ff4d4f;color:#fff;font-size:11px;font-weight:600;line-height:18px;text-align:center}.conv__ai{flex:none;padding:0 5px;border-radius:6px;background:var(--ai-weak);color:var(--ai);font-size:10px;font-weight:700;line-height:15px;border:1px solid #ddd0ff}.chat__main{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg)}.chat__head{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--panel);border-bottom:1px solid var(--line)}.chat__back,.chat__members-btn{display:none}.chat__title-block{flex:1;min-width:0}.chat__title{margin:0;font-size:17px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat__subtitle{margin:0;font-size:12px;color:var(--text-2)}.chat__head-actions{display:flex;align-items:center;gap:4px;flex:none}.banner{display:flex;align-items:center;gap:8px;padding:7px 16px;font-size:13px;border-bottom:1px solid transparent}.banner--warn{background:var(--warn-bg);border-bottom-color:var(--warn-line);color:var(--warn)}.banner__hint{margin-left:auto;font-size:12px;color:#9a7f45}.banner__spinner{width:12px;height:12px;border-radius:50%;border:2px solid #e3c983;border-top-color:var(--warn);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.messages{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:18px 20px 8px;scroll-behavior:smooth}.messages--empty{display:flex;align-items:center;justify-content:center}.messages__inner{display:flex;flex-direction:column;gap:14px;max-width:920px;margin:0 auto;width:100%}.messages__loading{text-align:center;color:var(--muted);font-size:13px;padding:28px 0}.empty-state{text-align:center;color:var(--muted)}.empty-state__title{margin:0 0 6px;font-size:16px;color:var(--text-2)}.empty-state__hint{margin:0;font-size:13px}.day-sep{display:flex;align-items:center;gap:10px;color:var(--text-3);font-size:12px;margin:6px 0}.day-sep:before,.day-sep:after{content:"";flex:1;height:1px;background:var(--line)}.msg{display:flex;align-items:flex-start;gap:10px;max-width:100%;transition:transform .22s ease,opacity .22s ease,background .3s ease}.msg--mine{flex-direction:row-reverse}.msg__col{display:flex;flex-direction:column;min-width:0;max-width:min(78%,640px);gap:3px}.msg--mine .msg__col{align-items:flex-end}.msg__head{display:flex;align-items:center;gap:6px;padding-left:2px}.msg__name{font-size:13px;color:var(--text-2);font-weight:500}.ai-badge{padding:0 5px;border-radius:5px;background:var(--ai);color:#fff;font-size:10px;font-weight:700;letter-spacing:.4px;line-height:15px;cursor:help}.msg__owner{font-size:11px;color:#9b8ac4;cursor:help;border-bottom:1px dotted #cbbcf0}.bubble{padding:10px 14px;border-radius:var(--radius-bubble) var(--radius-bubble) var(--radius-bubble) var(--radius-bubble);border-top-left-radius:4px;background:var(--bubble-other);border:1px solid var(--line);box-shadow:0 1px 2px #1a1a1a0a;max-width:100%}.bubble__body{margin:0;font-size:16px;line-height:1.5;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.msg--mine .bubble{background:var(--bubble-self);border-color:var(--bubble-self);color:#fff;border-radius:var(--radius-bubble);border-top-left-radius:var(--radius-bubble);border-top-right-radius:4px;box-shadow:none}.msg--ai .bubble{border:1.5px solid rgba(124,77,255,.55);background:var(--ai-bubble);box-shadow:0 2px 10px #7c4dff14;border-top-left-radius:4px;border-top-right-radius:var(--radius-bubble)}.msg--optimistic{opacity:.55;transform:translateY(-4px)}.msg--failed{opacity:.85}.msg--flash .bubble{animation:flash 1.3s ease}@keyframes flash{0%,to{box-shadow:var(--shadow-sm)}20%,60%{box-shadow:0 0 0 3px #2b7fff59}}.msg__foot{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-2);padding:0 2px}.msg--mine .msg__foot{flex-direction:row-reverse}.msg__pending{color:var(--primary)}.msg__retry{border:none;background:none;color:var(--danger);padding:0;font-size:12px;text-decoration:underline}.msg__reply{border:none;background:none;color:var(--text-2);padding:0;font-size:12px;opacity:0;transition:opacity .15s}.msg:hover .msg__reply{opacity:1}.msg__reply:hover{color:var(--primary)}.quote{display:flex;align-items:center;gap:4px;max-width:100%;padding:4px 9px;border-radius:8px;border:1px solid #ddd0ff;border-left:3px solid var(--ai);background:var(--ai-weak);color:#5f4b8b;font-size:12px;text-align:left;overflow:hidden;white-space:nowrap;transition:background .15s}.quote:hover{background:#ece2ff}.quote__label{flex:none;font-weight:600;color:var(--ai)}.quote__text{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#6b6183}.quote--mine{border-color:#c9dcff;border-left-color:var(--primary);background:#eff5ff;color:#33507d}.quote--mine .quote__label{color:var(--primary)}.quote--missing{opacity:.75;border-left-style:dashed}.composer{position:relative;padding:10px 16px 12px;background:var(--panel);border-top:1px solid var(--line)}.composer__box{display:flex;align-items:flex-end;gap:10px;padding:6px 6px 6px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--card);transition:border-color .15s,box-shadow .15s}.composer__box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #2b7fff21}.composer__input{flex:1;min-width:0;border:none;outline:none;resize:none;padding:6px 2px;background:transparent;line-height:1.55;max-height:168px}.composer__side{display:flex;align-items:center;gap:8px;flex:none;padding-bottom:2px}.composer__counter{font-size:11px;color:var(--muted);min-width:0}.composer__counter--warn{color:var(--danger)}.composer__send{height:34px;padding:0 18px}.composer__hint{margin:6px 2px 0;font-size:11px;color:#a3acbb}.composer__reply{display:flex;align-items:center;gap:6px;margin-bottom:8px;padding:5px 8px;border-radius:8px;background:var(--primary-weak);border-left:3px solid var(--primary);font-size:12px;color:var(--text-2)}.composer__reply-label{flex:none;font-weight:600;color:var(--primary)}.composer__reply-text{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}.composer__reply-close{width:22px;height:22px;font-size:12px}.mention-pop{position:absolute;left:16px;bottom:calc(100% - 4px);width:min(320px,calc(100% - 32px));padding:6px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:30;max-height:280px;overflow-y:auto}.mention-pop__head{display:flex;justify-content:space-between;padding:4px 8px 6px;font-size:11px;color:var(--muted);font-weight:600}.mention-pop__hint{font-weight:400;color:#aab2c0;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-pop__empty{margin:6px 8px 10px;font-size:12.5px;color:var(--muted)}.mention-item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:none;border-radius:8px;background:transparent;text-align:left}.mention-item--active{background:var(--primary-weak)}.mention-item__name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.mention-item__kind{flex:none;padding:0 5px;border-radius:5px;font-size:10px;font-weight:700;line-height:15px}.mention-item__kind.is-agent{background:var(--ai-weak);color:var(--ai);border:1px solid #ddd0ff}.mention-item__kind.is-user{background:#eef2f9;color:var(--muted)}.chat__members-wrap{min-width:0;background:var(--panel);border-left:1px solid var(--line);overflow:hidden}.chat__members-backdrop{display:none}.members{display:flex;flex-direction:column;height:100%;min-width:0;pointer-events:auto}.members__head{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px;border-bottom:1px solid var(--line)}.members__title{margin:0;font-size:13px;color:var(--muted);font-weight:600;letter-spacing:.4px}.members__close{display:none}.members__scroll{flex:1;overflow-y:auto;padding:8px 8px 18px}.members__section+.members__section{margin-top:12px;border-top:1px dashed var(--line);padding-top:10px}.members__subtitle{margin:4px 8px 6px;font-size:11.5px;font-weight:600;color:var(--muted);letter-spacing:.4px}.members__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.members__empty,.members__empty-line{padding:20px 10px;color:var(--muted);font-size:12.5px;list-style:none}.member-row{display:flex;align-items:flex-start;gap:9px;padding:7px 8px;border-radius:10px}.member-row:hover{background:var(--hover)}.member-row--agent{background:#fcfaff}.member-row__main{display:flex;flex-direction:column;gap:1px;min-width:0}.member-row__name{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;min-width:0}.member-row__meta{font-size:11px;color:var(--muted)}.member-row__owner{color:#9b8ac4}.role-pill{padding:0 5px;border-radius:5px;font-size:10px;font-weight:700;line-height:15px}.role-pill--owner{background:#fff1d6;color:#a06a00}.role-pill--admin{background:#e6f0ff;color:#2b6cb0}.mode-pill{padding:0 5px;border-radius:5px;font-size:10px;font-weight:700;line-height:15px;border:1px solid transparent}.mode-pill--mention{background:var(--ai-weak);color:var(--ai);border-color:#ddd0ff}.mode-pill--free{background:#e8f7ee;color:var(--ok);border-color:#bfe7cf}.mode-pill--off{background:#f1f3f7;color:var(--muted);border-color:var(--line)}.member-mode-select{flex:none;height:21px;max-width:118px;padding:0 4px;border-radius:5px;border:1px solid var(--line-strong);background:var(--card);color:var(--text-2);font-size:11px;line-height:19px;cursor:pointer}.member-mode-select:hover{border-color:#c3cbda}.member-mode-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #2b7fff24}.agent-paused-pill{flex:none;padding:0 5px;border-radius:5px;font-size:10px;font-weight:700;line-height:15px;background:#f1f3f7;color:#5d6678;border:1px solid var(--line-strong)}.online-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--ok);margin-right:4px;vertical-align:middle}.modal-mask{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px;background:#141a266b;backdrop-filter:blur(2px)}.modal{width:min(480px,100%);max-height:calc(100dvh - 48px);display:flex;flex-direction:column;background:var(--card);border-radius:16px;box-shadow:var(--shadow-lg);outline:none}.modal--wide{width:min(640px,100%)}.modal__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px 12px;border-bottom:1px solid var(--line)}.modal__title{margin:0;font-size:16px;font-weight:600}.modal__body{padding:16px 18px;overflow-y:auto}.modal__body .field:last-child{margin-bottom:4px}.modal__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px 16px;border-top:1px solid var(--line)}.modal__hint{font-size:12px;color:var(--muted)}.modal__foot-actions{display:flex;gap:8px;margin-left:auto}.pick-groups{display:grid;gap:12px;margin-top:4px}.pick-empty{margin:6px 0;color:var(--muted);font-size:13px}.pick-title{margin:0 0 6px;font-size:11.5px;font-weight:600;color:var(--muted);letter-spacing:.4px}.pick-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.pick-row{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:10px;border:1px solid transparent;cursor:pointer}.pick-row:hover{background:var(--hover)}.pick-row--checked{background:var(--primary-weak);border-color:#cfe0ff}.pick-row input[type=checkbox]{width:15px;height:15px;accent-color:var(--primary)}.pick-row__name{flex:1;min-width:0;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pick-row__meta{flex:none;font-size:11px;color:var(--muted)}.agents{min-height:100dvh;padding:22px clamp(16px,4vw,44px) 48px;background:var(--bg)}.agents__head{display:flex;align-items:center;gap:12px;max-width:1120px;margin:0 auto 18px}.agents__head>div{flex:1;min-width:0}.agents__title{margin:0;font-size:20px;font-weight:600}.agents__subtitle{margin:2px 0 0;font-size:12.5px;color:var(--muted)}.agents__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;max-width:1120px;margin:0 auto;align-items:start}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px 18px;box-shadow:var(--shadow-sm)}.card__title{margin:0 0 4px;font-size:15px;font-weight:600}.card__hint{margin:0 0 14px;font-size:12.5px;color:var(--muted)}.agent-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.agent-row{display:flex;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.agent-row__main{flex:1;min-width:0}.agent-row__head{display:flex;align-items:center;gap:8px}.agent-row__name{font-weight:600}.agent-row__persona{margin:3px 0 2px;font-size:12.5px;color:var(--text-2);word-break:break-word}.agent-row__editor{margin:6px 0 2px}.agent-row__editor .input--area{min-height:66px}.agent-row__hint{margin:2px 0 8px;font-size:11.5px;color:var(--muted)}.agent-row__meta{margin:0 0 8px;font-size:11.5px;color:var(--muted)}.agent-row__actions{display:flex;gap:8px;flex-wrap:wrap}.status-pill{padding:0 7px;border-radius:999px;font-size:11px;font-weight:600;line-height:18px;border:1px solid transparent}.status-pill--active{background:#e8f7ee;color:var(--ok);border-color:#bfe7cf}.status-pill--paused{background:#f1f3f7;color:#5d6678;border-color:var(--line-strong)}.status-pill--revoked{background:#fdecec;color:var(--danger);border-color:#f6c6c7}.token-box{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:12px;background:#fffdf5;border:1px solid #f0dca8;margin-bottom:16px}.token-box__warn{margin:0;font-size:12.5px;color:#8a6a12}.token-box__value{display:block;padding:10px 12px;border-radius:8px;background:#23293a;color:#a8e3a5;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;word-break:break-all}.token-box .btn{align-self:flex-start}.mcp-endpoint{display:flex;align-items:center;gap:10px;padding:8px 12px;margin-bottom:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);font-size:12.5px;flex-wrap:wrap}.mcp-endpoint__label{flex:none;font-weight:600;color:var(--muted)}.mcp-endpoint code{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;word-break:break-all}.snippet{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}.snippet__head{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--panel-soft);border-bottom:1px solid var(--line)}.snippet__head>div{flex:1;min-width:0}.snippet__title{margin:0;font-size:13.5px;font-weight:600}.snippet__hint{margin:1px 0 0;font-size:11.5px;color:var(--muted)}.snippet__code{margin:0;padding:12px;background:#1f2430;color:#dfe6f3;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.6;overflow-x:auto;max-height:260px;white-space:pre}.toasts{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:90;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{max-width:min(480px,90vw);padding:9px 16px;border-radius:999px;background:#23293a;color:#fff;font-size:13px;box-shadow:var(--shadow-md);animation:toast-in .18s ease}.toast--error{background:#b4282c}.toast--success{background:#167d46}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}}@media(max-width:1080px){.chat{grid-template-columns:288px minmax(0,1fr)}.chat__members-wrap{position:fixed;inset:0;z-index:50;background:transparent;border:none;pointer-events:none}.chat__members-backdrop{display:block;position:absolute;inset:0;background:#141a2657;opacity:0;pointer-events:none;transition:opacity .18s ease}.chat__members-wrap .members{position:absolute;top:0;right:0;bottom:0;width:min(340px,88vw);background:var(--panel);box-shadow:var(--shadow-lg);transform:translate(102%);transition:transform .2s ease}.chat__members-wrap--open{pointer-events:auto}.chat__members-wrap--open .chat__members-backdrop{opacity:1;pointer-events:auto}.chat__members-wrap--open .members{transform:translate(0)}.chat__members-btn,.members__close{display:inline-flex}}@media(max-width:760px){.auth{grid-template-columns:minmax(0,1fr);align-content:center;gap:26px;padding:32px 18px calc(28px + env(safe-area-inset-bottom))}.auth__logo{font-size:34px;letter-spacing:5px}.auth__bullets{display:none}.agents__grid{grid-template-columns:minmax(0,1fr)}.banner__hint{display:none}.modal-mask{padding:10px;align-items:flex-end}.modal{max-height:calc(100dvh - 20px);border-radius:16px}}@media(max-height:560px){.conv__title,.composer__hint{display:none}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}.messages{scroll-behavior:auto}}.shell{display:flex;flex-direction:column;height:100dvh;min-height:0}.shell__body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.shell__body>.chat{flex:1 1 auto;height:100%;min-height:0}.shell__body>.agents{flex:1 1 auto;min-height:0;overflow-y:auto}.topnav{position:relative;flex:none;display:flex;align-items:center;gap:12px;height:52px;padding:0 14px;background:var(--panel);border-bottom:1px solid var(--line);z-index:20}.topnav__brand{flex:none;font-size:16px;font-weight:700;letter-spacing:3px;color:var(--primary)}.topnav__tabs{flex:1 1 auto;min-width:0;max-width:420px;margin-bottom:0}.topnav__tabs .tab{flex:0 0 auto;height:32px;padding:0 18px;font-size:13.5px}.topnav__me{flex:none;display:flex;align-items:center;gap:8px;min-width:0}.topnav__me-name{max-width:120px;font-size:13px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.space{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:20px clamp(12px,4vw,36px) 44px;background:var(--bg)}.space__inner{width:100%;max-width:680px;margin:0 auto;display:flex;flex-direction:column;gap:14px}.space__head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.space__title{margin:0;font-size:19px;font-weight:600}.space__subtitle{margin:0;font-size:12.5px;color:var(--muted)}.space__loading{margin:0;padding:28px 0;text-align:center;color:var(--muted);font-size:13px}.space__state{padding:30px 14px;text-align:center;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.space__state-title{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--text-2)}.space__state-hint{margin:0 0 12px;font-size:13px}.space__empty{padding:34px 12px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.feed-composer{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow-sm)}.feed-composer__input{display:block;width:100%;min-height:76px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);resize:vertical;line-height:1.55;transition:border-color .15s,box-shadow .15s}.feed-composer__input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2b7fff29}.feed-composer__foot{display:flex;align-items:center;gap:10px;margin-top:10px;min-width:0}.feed-composer__vis{flex:none;height:34px;max-width:120px;padding:0 8px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--text-2);font-size:13px}.feed-composer__vis:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2b7fff29}.feed-composer__counter{min-width:0;font-size:11.5px;color:var(--muted);white-space:nowrap}.feed-composer__submit{margin-left:auto;height:34px;padding:0 18px}.feed{min-width:0;padding:14px 16px 8px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.feed--ai{border:1.5px solid rgba(124,77,255,.55);background:var(--ai-bubble);box-shadow:0 2px 10px #7c4dff14}.feed--pending{opacity:.6}.feed--failed{border-color:#f3c9ca;background:snow}.feed__failed{display:flex;align-items:center;gap:4px;margin:8px 0 0;font-size:12.5px;color:#b4282c}.feed__head{display:flex;align-items:center;gap:10px;min-width:0}.feed__meta{display:flex;flex-direction:column;gap:1px;min-width:0}.feed__name-row{display:flex;align-items:center;gap:6px;min-width:0}.feed__name{min-width:0;font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed__private{flex:none;padding:0 5px;border-radius:5px;background:var(--hover);color:var(--muted);font-size:10px;font-weight:700;line-height:15px}.feed__time{font-size:12px;color:var(--muted)}.feed__body{margin:10px 0 0;font-size:14px;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.feed__actions{display:flex;align-items:center;gap:4px;margin-top:8px;padding:6px 0 4px;border-top:1px solid var(--line)}.feed__action{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-2);font-size:12.5px;transition:background .15s,color .15s,border-color .15s}.feed__action:hover:not(:disabled){background:#f3f6fc;color:var(--text)}.feed__action--liked{color:#e5484d;background:#fff0f1;border-color:#f6c9cb}.feed__action--liked:hover:not(:disabled){background:#ffe4e6;color:#e5484d}.feed__action--open{color:var(--primary);background:var(--primary-weak);border-color:#cfe0ff}.feed__comments{margin:2px 0 8px;padding:8px 10px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);min-width:0}.feed-comment{display:flex;align-items:flex-start;gap:8px;padding:7px 0;min-width:0}.feed-comment+.feed-comment{border-top:1px dashed var(--line)}.feed-comment__main{flex:1;min-width:0}.feed-comment__head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.feed-comment__name{font-size:12.5px;font-weight:600}.feed-comment__time{font-size:11px;color:var(--muted)}.feed-comment__body{margin:2px 0 0;font-size:13px;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.feed-comments__hint{margin:4px 0 8px;font-size:12.5px;color:var(--muted)}.feed-comments__form{display:flex;align-items:center;gap:8px;margin-top:6px;min-width:0}.feed-comments__input{flex:1;min-width:0;height:34px;padding:0 10px;border-radius:8px;border:1px solid var(--line-strong);background:var(--card);transition:border-color .15s,box-shadow .15s}.feed-comments__input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2b7fff21}.feed-comments__send{flex:none}.tabbar,.members__grabber,.composer__send-icon{display:none}@media(max-width:760px){.shell{height:100dvh;height:var(--app-height, 100dvh);padding-top:env(safe-area-inset-top);background:var(--bg)}.topnav{display:none}.shell__body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.shell__body>.chat,.shell__body>.agents{flex:1 1 auto;min-height:0}.tabbar{flex:none;display:flex;align-items:stretch;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:40}.tabbar.tabbar--hidden{display:none}.tabbar__btn{flex:1 1 0;min-width:0;min-height:44px;height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:5px 0 6px;border:none;background:transparent;color:var(--text-2);font-size:12px;line-height:1.2;-webkit-tap-highlight-color:transparent;transition:color .15s}.tabbar__btn:active{background:var(--hover)}.tabbar__icon{display:block;width:22px;height:22px}.tabbar__btn--active{color:var(--primary);font-weight:600}.chat{position:relative;display:block;height:100%;overflow:hidden;background:var(--bg)}.chat>.conv,.chat>.chat__main{position:absolute;inset:0;display:flex;flex-direction:column;min-width:0;min-height:0;will-change:transform;transition:transform .22s cubic-bezier(.22,.8,.28,1)}.chat>.conv{transform:translate(0);background:var(--card);border-right:none}.chat>.chat__main{transform:translate(100%);background:var(--bg)}.chat--chat>.conv{transform:translate(-26%)}.chat--chat>.chat__main{transform:translate(0);box-shadow:-8px 0 24px #00000014}.conv__head{padding:8px 10px;gap:6px}.conv__me-name{max-width:46vw;font-size:16px}.conv__actions .icon-btn{width:36px;height:36px}.conv__title{padding:10px 14px 4px}.conv__list{padding:0 8px 12px}.conv__item{padding:11px 10px;gap:10px;border-radius:12px;min-height:64px}.conv__name{font-size:16px}.conv__preview{font-size:13px}.conv__time{font-size:12px}.conv__count{font-size:11px}.chat__head{flex:none;min-height:48px;padding:5px 10px;gap:4px}.chat__back{display:inline-flex;width:40px;height:40px;margin-left:-6px;font-size:22px;color:var(--text);border-radius:50%}.chat__back:active{background:var(--hover)}.chat__title{font-size:17px}.chat__head-actions .btn--ghost{display:none}.chat__members-btn{display:inline-flex;width:40px;height:40px;font-size:18px}.banner{padding:6px 12px;font-size:12.5px}.messages{padding:10px 12px 6px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.messages__inner{gap:12px}.msg{gap:8px}.msg__col{max-width:78%}.bubble{padding:9px 13px}.bubble__body{font-size:16px;line-height:1.5}.msg__head{gap:5px}.msg__owner{max-width:42vw;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px}.msg__reply,.msg__retry{min-height:24px;padding:2px 0}.day-sep{margin:8px 0}.composer{flex:none;padding:8px 10px calc(8px + env(safe-area-inset-bottom))}.composer__box{align-items:flex-end;gap:6px;padding:3px 3px 3px 14px;border-radius:22px}.composer__input{font-size:16px;line-height:1.4;padding:10px 2px;max-height:112px}.composer__side{gap:4px;padding-bottom:0}.composer__counter{font-size:11px}.composer__send{flex:none;width:44px;height:44px;min-width:44px;padding:0;border-radius:50%;-webkit-tap-highlight-color:transparent}.composer__send-icon{display:inline-flex;width:20px;height:20px}.composer__send-text,.composer__hint{display:none}.composer__reply{margin-bottom:6px;padding:6px 8px}.mention-pop{left:10px;right:10px;width:auto;bottom:calc(100% - 2px);max-height:42vh;padding:8px;border-radius:14px}.mention-item{min-height:44px;padding:8px 10px}.mention-item__name{font-size:15px}.chat__members-wrap .members{position:absolute;inset:auto 0 0;width:auto;height:auto;max-height:80vh;border-radius:16px 16px 0 0;background:var(--card);box-shadow:0 -10px 30px #00000029;transform:translateY(100%);transition:transform .24s cubic-bezier(.22,.8,.28,1);display:flex;flex-direction:column;overflow:hidden;padding-bottom:env(safe-area-inset-bottom)}.chat__members-wrap--open .members{transform:translateY(0)}.members__grabber{display:flex;flex:none;align-items:center;justify-content:center;height:22px;padding-top:8px;touch-action:none}.members__grabber:before{content:"";width:40px;height:4px;border-radius:2px;background:var(--line-strong)}.members__head{flex:none;padding:4px 16px 8px;border-bottom:none;touch-action:none}.members__close{width:36px;height:36px}.members__scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:4px 10px 16px}.member-row{min-height:44px;padding:9px 8px}.member-row__name{font-size:14px}.member-mode-select{height:32px;max-width:44vw;font-size:16px;line-height:30px}.agents{padding:12px 12px 28px;-webkit-overflow-scrolling:touch}.agents__head{gap:10px;margin-bottom:12px}.agents__head .icon-btn{flex:none;width:40px;height:40px;font-size:20px}.agents__title{font-size:17px}.agents__subtitle{display:none}.agents__head>.btn{flex:none;min-height:40px;height:40px;padding:0 12px}.agents__grid{gap:12px}.card{padding:14px;border-radius:var(--radius-card)}.card__title{font-size:17px}.agent-list{gap:12px}.agent-row{padding:12px;gap:10px;border-radius:12px}.agent-row__actions{gap:8px}.agent-row__actions .btn{flex:1 1 calc(50% - 4px);min-height:40px;height:40px;padding:0 12px;font-size:14px}.agents .input,.agents .input--area{min-height:44px;font-size:16px}.agents .card>.btn{min-height:44px}.token-box__value{font-size:12px}.space{padding:12px 12px 28px;-webkit-overflow-scrolling:touch}.space__inner{gap:12px}.space__head{padding:0 2px}.space__title{font-size:17px}.space__subtitle{display:none}.space__loading{padding:20px 0}.feed-composer{padding:12px;border-radius:var(--radius-card)}.feed-composer__input{min-height:72px;font-size:16px}.feed-composer__foot{gap:8px;flex-wrap:wrap}.feed-composer__vis{height:40px;max-width:40vw;font-size:16px}.feed-composer__counter{display:none}.feed-composer__submit{min-height:40px;height:40px;padding:0 18px;font-size:15px}.feed{padding:12px 12px 6px;border-radius:var(--radius-card)}.feed__body{font-size:16px}.feed__action{height:40px;min-height:40px;padding:0 12px;font-size:14px}.feed__comments{padding:8px 10px}.feed-comments__input{height:40px;font-size:16px}.feed-comments__send{min-height:40px;height:40px;padding:0 14px}.auth__panel{padding:20px 16px 16px;border-radius:16px}.auth .input{min-height:44px;font-size:16px}.auth .tab{min-height:40px}.auth__submit{height:46px}.modal__head{padding:14px 14px 10px}.modal__title{font-size:17px}.modal__body{padding:14px}.modal__foot{flex-direction:column;align-items:stretch;gap:8px;padding:10px 14px 14px;padding-bottom:calc(14px + env(safe-area-inset-bottom))}.modal__hint{font-size:12px}.modal__foot-actions{margin-left:0;gap:8px}.modal__foot .btn{flex:1 1 0;min-width:84px;height:44px;min-height:44px;white-space:nowrap}.pick-row{min-height:44px;padding:8px 9px}.toasts{top:calc(10px + env(safe-area-inset-top));width:100%;padding:0 12px}.toast{max-width:100%;font-size:14px;padding:10px 16px}}@media(hover:none){.msg__reply{opacity:.85}}@media(prefers-color-scheme:dark){:root{--bg: #111111;--card: #1c1c1e;--panel-soft: #232326;--line: #2c2c2e;--line-strong: #3a3a3e;--text: #f2f2f7;--text-2: #9a9aa1;--text-3: #6b6b70;--bubble-other: #262629;--hover: #262629;--primary-weak: #0f2b3a;--ai-weak: #241b38;--ai-bubble: #211a30;--warn-bg: #2a2110;--warn-line: #4a3a17;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 10px 30px rgba(0, 0, 0, .55);--shadow-lg: 0 24px 64px rgba(0, 0, 0, .65);color-scheme:dark}.bubble{border-color:var(--line-strong);box-shadow:none}.msg--ai .bubble{border-color:#7c4dffb3}.modal-mask,.chat__members-backdrop{background:#0000008c}.avatar--ai{box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--ai)}.avatar__ai,.ai-badge{border-color:var(--card)}.conv__ai{border-color:#4b3a75}.quote{background:#241b38;border-color:#4b3a75;color:#c9bde8}.quote__text{color:#b6b0c9}.quote--mine{background:#102a3a;border-color:#1e4a63;color:#a9d3ea}.quote--mine .quote__text{color:#9fc7dd}.token-box{background:#241f10;border-color:#4a3a17}.token-box__warn{color:#d8b464}.snippet__code{background:#0d0d0f;color:#d8dee9}.mode-pill--free,.status-pill--active{background:#14301f;border-color:#245c3a}.role-pill--owner{background:#3a2a0c;color:#e0b866}.role-pill--admin{background:#102a3a;color:#7fb7e0}.member-mode-select{background:var(--card);color:var(--text)}.tabs,.topnav__tabs{background:var(--hover)}.tab--active{background:var(--card);color:var(--primary)}.form-error{background:#3a1618;border-color:#5c2326;color:#ff8a80}.feed--failed{border-color:#5c2326;background:#241314}.feed__failed,.msg__retry{color:#ff8a80}.feed__action--liked{background:#3a1618;border-color:#5c2326;color:#ff8a80}.feed__action--open{background:#102a3a;border-color:#1e4a63}.banner__hint{color:#b79456}.toast{background:#2c2c2e}}.msg__parts{display:flex;flex-direction:column;align-items:flex-start;gap:4px;max-width:100%;min-width:0}.msg--mine .msg__parts{align-items:flex-end}.msg__image{display:block;max-width:220px;padding:0;border:0;border-radius:14px;overflow:hidden;background:#eef0f3;line-height:0;cursor:zoom-in;-webkit-tap-highlight-color:transparent}.msg__image img{display:block;width:auto;height:auto;max-width:100%;max-height:300px}.msg__image img.msg__image-img--cover{width:200px;height:200px;object-fit:cover}.msg__image--broken{display:flex;align-items:center;justify-content:center;min-width:132px;min-height:76px;padding:12px 14px;font-size:12.5px;color:var(--text-2);line-height:1.4;text-align:center;cursor:default;border:1px dashed var(--line-strong);background:var(--card)}.msg__sticker{display:block;width:120px;height:120px;object-fit:contain;background:transparent;border:none;-webkit-tap-highlight-color:transparent}.msg__sticker--broken{display:inline-flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-2)}.msg__unsupported{padding:8px 12px;border-radius:12px;border:1px dashed var(--line-strong);background:var(--card);color:var(--text-2);font-size:13px}.lightbox{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;background:#000;cursor:zoom-out;animation:lightbox-in .16s ease}@keyframes lightbox-in{0%{opacity:0}}.lightbox__img{max-width:100%;max-height:100%;object-fit:contain;cursor:default;user-select:none;-webkit-user-drag:none}.lightbox__close{position:absolute;top:calc(12px + env(safe-area-inset-top));right:12px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#ffffff29;color:#fff;font-size:16px;line-height:1}.lightbox__close:hover{background:#ffffff47}.composer__tools{display:flex;align-items:center;gap:2px;flex:none;align-self:flex-end}.composer__tool{width:32px;height:32px;color:var(--text-2)}.composer__tool:hover:not(:disabled){color:var(--text)}.composer__tool svg{width:20px;height:20px}.composer__tool.is-active{color:var(--primary);background:var(--primary-weak)}.composer__file{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;opacity:0;pointer-events:none}.composer__upload{display:flex;align-items:center;gap:10px;margin-bottom:8px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--card)}.composer__upload-thumb{flex:none;width:44px;height:44px;border-radius:8px;overflow:hidden;background:var(--hover)}.composer__upload-thumb img{display:block;width:100%;height:100%;object-fit:cover}.composer__upload-meta{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.composer__upload-title{font-size:13px;font-weight:600;line-height:1.3;color:var(--text)}.composer__upload-name{font-size:11.5px;line-height:1.3;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.composer__upload-actions{flex:none;display:flex;align-items:center;gap:6px}.composer__upload-spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--primary);animation:spin .9s linear infinite}.composer__upload-cancel{width:28px;height:28px;font-size:12px}.composer__upload-btn{height:30px}.composer--drop{outline:2px dashed var(--primary);outline-offset:-6px}.composer__drop-hint{position:absolute;inset:8px;z-index:6;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#0099ff14;color:var(--primary);font-size:13px;font-weight:600;pointer-events:none}.sticker-panel{position:absolute;left:16px;bottom:calc(100% - 4px);z-index:32;width:min(360px,calc(100% - 32px));padding:8px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-md)}.sticker-panel__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 2px 8px}.sticker-tabs{display:flex;align-items:center;gap:2px;min-width:0;overflow-x:auto;scrollbar-width:none}.sticker-tabs::-webkit-scrollbar{display:none}.sticker-tab{flex:none;height:28px;padding:0 10px;border:none;border-radius:999px;background:transparent;color:var(--text-2);font-size:12px;font-weight:600;white-space:nowrap;-webkit-tap-highlight-color:transparent}.sticker-tab:hover{background:var(--hover)}.sticker-tab--active{background:var(--primary-weak);color:var(--primary)}.sticker-panel__actions{display:flex;align-items:center;gap:4px;flex:none}.sticker-panel__retry{margin-left:0;font-size:12px}.sticker-panel__close{width:24px;height:24px;font-size:11px}.sticker-panel__hint{margin:0 4px 6px;font-size:11.5px;color:var(--text-3)}.sticker-panel__body{height:220px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.sticker-panel__state{margin:0;padding:40px 12px;text-align:center;color:var(--text-2);font-size:13px}.sticker-group+.sticker-group{margin-top:10px}.sticker-group__title{margin:2px 4px 6px;font-size:11.5px;font-weight:600;color:var(--text-2)}.sticker-create{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;margin-bottom:8px;padding:0 12px;border:1px dashed var(--line-strong);border-radius:12px;background:transparent;color:var(--primary);font-size:13px;font-weight:600;-webkit-tap-highlight-color:transparent}.sticker-create:hover{background:var(--primary-weak);border-color:var(--primary)}.sticker-create__icon{font-size:16px;font-weight:700}.sticker-pack-card{display:flex;align-items:center;gap:10px;width:100%;min-height:56px;margin-bottom:6px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--card);text-align:left;-webkit-tap-highlight-color:transparent}.sticker-pack-card:hover{background:var(--hover)}.sticker-pack-card__thumbs{flex:none;display:flex;align-items:center;gap:2px;width:100px;height:34px}.sticker-pack-card__thumbs img{width:32px;height:32px;object-fit:contain}.sticker-pack-card__empty{font-size:11px;color:var(--text-3)}.sticker-pack-card__meta{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.sticker-pack-card__title{font-size:13.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sticker-pack-card__sub{font-size:11.5px;color:var(--text-2)}.sticker-pack-card__chevron{flex:none;color:var(--text-3);font-size:18px}.pack-detail{display:flex;flex-direction:column;gap:10px}.pack-detail__meta{margin:0;font-size:12.5px;color:var(--text-2)}.pack-detail__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pack-detail__item{display:flex;align-items:center;justify-content:center;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--card);touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}.pack-detail__item:hover{background:var(--hover)}.pack-detail__item img{width:56px;height:56px;object-fit:contain;pointer-events:none}.pack-detail__add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:74px;border:1px dashed var(--line-strong);border-radius:12px;background:transparent;color:var(--text-2);font-size:11.5px;-webkit-tap-highlight-color:transparent}.pack-detail__add span:first-child{font-size:20px;line-height:1}.pack-detail__add:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.pack-detail__emotion{margin:4px 0 0}.pack-detail__empty{margin:0;font-size:12.5px;color:var(--text-2)}.pack-detail__actions{display:flex;gap:8px;margin-left:auto}.sticker-panel__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.sticker-item{display:flex;align-items:center;justify-content:center;padding:6px;border:none;border-radius:12px;background:transparent;transition:background .15s,transform .1s;-webkit-tap-highlight-color:transparent}.sticker-item:hover{background:var(--hover)}.sticker-item:active{transform:scale(.94)}.sticker-item img{display:block;width:56px;height:56px;object-fit:contain}@media(max-width:760px){.msg__image{border-radius:12px}.msg__image img{max-height:260px}.msg__sticker{width:120px;height:120px}.composer__tools{gap:0}.composer__tool{width:36px;height:36px}.composer__tool svg{width:21px;height:21px}.composer__upload{gap:8px;padding:8px}.composer__upload-thumb{width:40px;height:40px}.composer__upload-btn{height:34px;min-height:34px}.sticker-panel{left:10px;right:10px;width:auto;bottom:calc(100% - 2px);padding:10px;border-radius:16px}.sticker-panel__grid{gap:8px}.sticker-item{min-height:64px;padding:6px}.sticker-item img{width:60px;height:60px}.lightbox{padding:0}.lightbox__img{max-width:100vw;max-height:100dvh}.lightbox__close{top:calc(10px + env(safe-area-inset-top));right:10px;width:44px;height:44px}}@media(prefers-color-scheme:dark){.msg__image{background:#2a2a2e}.msg__image--broken,.msg__unsupported,.composer__upload,.sticker-panel{background:var(--card)}.sticker-item:hover{background:var(--hover)}}.composer__tool--mic.is-recording{color:var(--danger);background:#f5483b1f}.composer__tool--mic.is-recording svg{animation:rec-pulse 1.2s ease-in-out infinite}@keyframes rec-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.82)}}.composer__rec{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 6px 0 8px;border-radius:14px;background:var(--hover)}.composer__rec-dot{flex:none;width:10px;height:10px;border-radius:50%;background:var(--danger);animation:rec-pulse 1s ease-in-out infinite}.composer__rec-time{flex:none;font-size:13px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.composer__rec-hint{flex:1 1 auto;min-width:0;font-size:12px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.composer__rec-cancel{flex:none;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--card);color:var(--text-2);font-size:12px;line-height:1}.composer__rec-cancel:hover{color:var(--danger)}.composer__rec.is-cancel{background:#f5483b1a;box-shadow:inset 0 0 0 1px #f5483b73}.composer__rec.is-cancel .composer__rec-hint{color:var(--danger);font-weight:600}.composer__rec.is-cancel .composer__rec-dot{animation:none}.composer__upload-thumb--voice{display:flex;align-items:center;justify-content:center;color:var(--primary);background:var(--primary-weak)}.composer__upload-thumb--voice svg{width:22px;height:22px}.voice{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:20px;background:var(--bubble-other);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s,border-color .15s,color .15s}.voice:hover{border-color:var(--line-strong)}.voice__play{flex:none;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:var(--primary)}.voice__play svg{width:18px;height:18px}.voice__wave{flex:1 1 auto;min-width:24px;display:flex;align-items:center;gap:2px;height:18px}.voice__bar{flex:1 1 0;min-width:1px;border-radius:2px;background:var(--line-strong);transition:background .12s}.voice__bar--on{background:var(--primary)}.voice__time{flex:none;font-size:12px;color:var(--text-2);font-variant-numeric:tabular-nums}.msg--mine .voice{background:var(--bubble-self);border-color:var(--bubble-self);color:#fff}.msg--mine .voice__play,.msg--mine .voice__time{color:#ffffffeb}.msg--mine .voice__bar{background:#ffffff6b}.msg--mine .voice__bar--on{background:#fff}.voice--active{border-color:var(--primary)}.msg--mine .voice--active{box-shadow:0 0 0 2px #ffffff59}.voice--error{border-color:var(--danger)}.voice--broken{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border:1px dashed var(--line-strong);border-radius:20px;color:var(--text-2);font-size:12.5px}@media(max-width:760px){.composer__tool{width:34px;height:34px}.composer__tool svg{width:20px;height:20px}.composer__rec{min-height:38px;padding:0 4px 0 8px}.voice{min-height:42px}}@media(max-width:360px){.composer__tool{width:30px;height:30px}.composer__tool svg{width:19px;height:19px}.composer__box{padding-left:10px;gap:4px}.composer__tools{gap:0}}.msg__video{position:relative;display:block;width:min(240px,62vw);aspect-ratio:16 / 9;padding:0;border:none;border-radius:var(--radius-card);overflow:hidden;background:#dfe3ea;cursor:pointer;line-height:0}.msg__video-poster{width:100%;height:100%;object-fit:cover;display:block}.msg__video-blank{display:block;width:100%;height:100%;background:linear-gradient(135deg,#b8c2d6,#8fa0bd)}.msg__video-play{position:absolute;inset:0;margin:auto;width:52px;height:52px;border-radius:50%;background:#00000073;color:#fff;display:grid;place-items:center;pointer-events:none}.msg__video-play svg{width:26px;height:26px}.msg__video-player{display:block;width:min(280px,68vw);max-height:340px;border-radius:var(--radius-card);background:#000}.msg__video--broken{display:grid;place-items:center;width:min(240px,62vw);aspect-ratio:16 / 9;border-radius:var(--radius-card);border:1px dashed var(--line);color:var(--text-3);font-size:13px;background:var(--card)}.composer__plus,.composer__panel{display:none}@media(max-width:760px){.composer__tools{display:none}.composer__plus{display:inline-flex;flex:none;align-self:center;width:36px;height:36px;color:var(--text-2);background:var(--card);border:1px solid var(--line);border-radius:50%;-webkit-tap-highlight-color:transparent}.composer__plus:active{background:var(--hover)}.composer__plus.is-open{color:var(--primary);border-color:var(--primary)}.composer__plus svg{width:22px;height:22px}.composer__panel{display:block;height:0;overflow:hidden;visibility:hidden;pointer-events:none;border-top:0 solid var(--line);border-radius:12px;background:var(--card);transition:height .28s cubic-bezier(.22,.8,.28,1),border-top-width .28s cubic-bezier(.22,.8,.28,1),visibility 0s linear .28s}.composer__panel--open{height:calc(200px + env(safe-area-inset-bottom));visibility:visible;pointer-events:auto;border-top-width:1px;transition:height .28s cubic-bezier(.22,.8,.28,1),border-top-width .28s cubic-bezier(.22,.8,.28,1),visibility 0s}.composer--panel{padding-bottom:0;transition:padding-bottom .28s cubic-bezier(.22,.8,.28,1)}.composer__panel-inner{box-sizing:border-box;height:100%;display:flex;align-items:center;padding:10px 8px calc(10px + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .28s cubic-bezier(.22,.8,.28,1)}.composer__panel--open .composer__panel-inner{transform:translateY(0)}.composer__panel-grid{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.composer__panel-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 2px;border:none;border-radius:12px;background:transparent;color:var(--text-2);-webkit-tap-highlight-color:transparent;transition:background .15s,transform .1s}.composer__panel-item:hover:not(:disabled){background:var(--hover)}.composer__panel-item:active:not(:disabled){transform:scale(.96)}.composer__panel-item:disabled{opacity:.45}.composer__panel-icon{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:16px;background:var(--hover);color:var(--text)}.composer__panel-icon svg{width:26px;height:26px}.composer__panel-label{font-size:12px;line-height:1.2;color:var(--text-2)}.composer--recording .composer__plus{display:none}.composer--recording .composer__tools{display:flex}.composer--recording .composer__tool--image,.composer--recording .composer__tool--sticker{display:none}}.members__loading{display:flex;align-items:center;justify-content:center;gap:8px;min-height:140px}.members__spinner{width:14px;height:14px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--primary);animation:spin .9s linear infinite}.members__tip{margin:4px 8px 8px;padding:6px 8px;border-radius:8px;background:var(--hover);color:var(--text-2);font-size:12px;line-height:1.5}.members__more{list-style:none;display:flex;justify-content:center;padding:8px 0 4px}.msg-recalled{display:flex;justify-content:center;padding:2px 16px;margin:2px 0;font-size:12px;line-height:1.6;color:var(--text-3);text-align:center}@media(max-width:760px){.msg .bubble{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}}.ms-actions-mask{position:fixed;inset:0;z-index:130;display:flex;align-items:flex-end;justify-content:center;background:#141a266b;animation:ms-actions-fade .18s ease}@keyframes ms-actions-fade{0%{opacity:0}}.ms-actions{width:min(420px,100%);padding:0 8px calc(8px + env(safe-area-inset-bottom));animation:ms-actions-up .28s cubic-bezier(.22,.8,.28,1)}@keyframes ms-actions-up{0%{transform:translateY(100%)}}.ms-actions__group{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}.ms-actions__title{margin:0;padding:14px 16px 10px;font-size:12px;color:var(--text-2);text-align:center;border-bottom:1px solid var(--line)}.ms-actions__item{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:56px;padding:0 16px;border:none;background:transparent;color:var(--text);font-size:17px;line-height:1.2;-webkit-tap-highlight-color:transparent}.ms-actions__item+.ms-actions__item{border-top:1px solid var(--line)}.ms-actions__item:hover:not(:disabled),.ms-actions__item:active:not(:disabled){background:var(--hover)}.ms-actions__item:disabled{opacity:.45}.ms-actions__item--danger{color:var(--danger)}.ms-actions__item--primary{color:var(--primary);font-weight:600}.ms-actions__cancel{display:flex;align-items:center;justify-content:center;width:100%;height:56px;margin-top:8px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text);font-size:17px;-webkit-tap-highlight-color:transparent}.ms-actions__cancel:hover:not(:disabled){background:var(--hover)}.ms-actions__cancel:disabled{opacity:.45}.ms-actions__custom{padding-bottom:8px}.ms-actions__custom .ms-actions__title{border-bottom:none}.ms-actions__input{width:calc(100% - 24px);margin:0 12px 6px;min-height:44px;font-size:16px}.ms-actions__custom .ms-actions__item{border-top:1px solid var(--line)}.field__hint{font-size:12px;color:var(--text-2);line-height:1.4}.pick-row__ai{margin-left:6px;vertical-align:middle}.token-box__rows{display:flex;flex-direction:column;gap:8px;margin:0}.token-box__row{display:flex;align-items:center;gap:10px;font-size:13px}.token-box__row dt{flex:none;width:64px;color:#8a6a12}.token-box__row dd{margin:0;min-width:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.token-box__row code{padding:2px 8px;border-radius:6px;background:var(--card);border:1px solid #f0dca8;word-break:break-all}.token-box__once{font-size:11px;color:#b45309}.token-box__actions{display:flex;gap:8px;flex-wrap:wrap}.shell__body>.me{flex:1 1 auto;min-height:0}.me{overflow-y:auto;overflow-x:hidden;padding:16px clamp(12px,4vw,36px) 32px;background:var(--bg);-webkit-overflow-scrolling:touch}.me__inner{width:100%;max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:12px}.me__head{padding:4px 2px 2px}.me__title{margin:0;font-size:20px;font-weight:600}.me__subtitle{margin:2px 0 0;font-size:12.5px;color:var(--text-2)}.me-card{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card)}.me-profile{flex-direction:row;align-items:flex-start;gap:14px}.me-profile__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.me-profile__name{margin:0;font-size:17px;font-weight:600}.me-profile__email{margin:0;font-size:12.5px;color:var(--text-2);word-break:break-all}.me-account{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.me-account__label{font-size:12px;color:var(--text-2)}.me-account__no{font-size:22px;font-weight:700;letter-spacing:1.5px;color:var(--text);font-variant-numeric:tabular-nums}.me-account__no--empty{font-size:15px;font-weight:500;letter-spacing:0;color:var(--text-3)}.me-account__copy{flex:none}.me-account__hint{margin:6px 0 0;font-size:12px;line-height:1.5;color:var(--text-2)}.me-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.me-row+.me-row{border-top:1px solid var(--line);padding-top:12px}.me-row__text{min-width:0;display:flex;flex-direction:column;gap:2px}.me-row__title{font-size:15px;font-weight:500}.me-row__hint{font-size:12px;line-height:1.5;color:var(--text-2)}.switch{position:relative;flex:none;width:48px;height:28px;padding:0;border:none;border-radius:999px;background:var(--line-strong);transition:background .18s ease;-webkit-tap-highlight-color:transparent}.switch__knob{position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .18s ease}.switch--on{background:var(--primary)}.switch--on .switch__knob{transform:translate(20px)}.switch:disabled{opacity:.6}.me-card__title{margin:0;font-size:15px;font-weight:600}.me-info{margin:0;display:flex;flex-direction:column;gap:8px}.me-info__row{display:flex;gap:12px;font-size:13px}.me-info__row dt{flex:none;width:76px;color:var(--text-2)}.me-info__row dd{margin:0;flex:1;min-width:0;word-break:break-all}.me-info__mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.me-card__hint{margin:0;font-size:12px;line-height:1.5;color:var(--text-2)}.me-logout{height:44px}.me__foot{margin:8px 0 0;text-align:center;font-size:11.5px;color:var(--text-3)}@media(max-width:760px){.me{padding:12px 12px 28px}.me__title{font-size:17px}.me__subtitle{display:none}.me-profile{padding:14px;gap:12px}.me-card{padding:14px}.me-account__no{font-size:20px}}.view-fallback{display:grid;place-items:center;min-height:40vh;color:var(--text-3);font-size:14px}.feed__more{flex:none;margin-left:auto;width:32px;height:32px;color:var(--text-2);font-size:18px;line-height:1}.feed__more:hover{background:var(--hover);color:var(--text)}.msg__avatar-btn,.member-row__avatar{padding:0;border:none;background:transparent;border-radius:50%;cursor:pointer;-webkit-tap-highlight-color:transparent}.member-row__avatar{flex:none}.member-row__adjust{font-size:11px;color:var(--text-3);line-height:1.4}.agent-membership-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.agent-membership{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card)}.agent-membership__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.agent-membership__title{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-membership__meta{font-size:12px;color:var(--text-2)}.agent-membership__select{flex:none;height:32px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text);font-size:13px}.agent-membership__relay{flex:none;display:flex;align-items:center;gap:4px;font-size:11.5px;color:var(--text-2);white-space:nowrap}.agent-membership__empty{margin:0;padding:24px 12px;text-align:center;color:var(--text-3);border:1px dashed var(--line);border-radius:12px}.me-links{padding:0;overflow:hidden}.me-link{display:flex;align-items:center;justify-content:space-between;width:100%;height:52px;padding:0 16px;border:none;background:transparent;color:var(--text);font-size:15px;text-align:left}.me-link+.me-link{border-top:1px solid var(--line)}.me-link:hover{background:var(--hover)}.me-link__chev{color:var(--text-3);font-size:18px}.shell__body>.friends{flex:1 1 auto;min-height:0}.friends{display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.friends__head{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--card)}.friends__title{margin:0;flex:1;font-size:17px;font-weight:600}.friends__head-spacer{width:32px}.friends__body{flex:1;min-height:0;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:14px}.friends__add{display:flex;gap:8px}.friends__add .input{flex:1}.friends__state{margin:0;color:var(--text-2);font-size:13px}.friends__section{display:flex;flex-direction:column;gap:8px}.friends__section-title{margin:0;font-size:12.5px;font-weight:600;color:var(--text-2)}.friends__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.friend-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card)}.friend-row__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.friend-row__name{display:flex;align-items:center;gap:6px;font-size:14.5px;font-weight:500}.friend-row__meta{font-size:12px;color:var(--text-2)}.friend-row__actions{display:flex;gap:6px;flex:none}.friends__empty{padding:24px 12px;text-align:center;color:var(--text-2);border:1px dashed var(--line);border-radius:12px}.friends__empty p{margin:0}.friends__empty-hint{margin-top:6px!important;font-size:12px;color:var(--text-3)}.profile{position:fixed;inset:0;z-index:120;display:flex;flex-direction:column;background:var(--bg);animation:ms-actions-fade .18s ease}.profile__head{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line);background:var(--card)}.profile__head-title{flex:1;text-align:center;font-size:15px;font-weight:600}.profile__head-spacer{width:32px}.profile__body{flex:1;min-height:0;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:16px;width:100%;max-width:720px;margin:0 auto}.profile__state{margin:40px 0;text-align:center;color:var(--text-2)}.profile__hero{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.profile__hero-main{min-width:0;display:flex;flex-direction:column;gap:4px}.profile__name{margin:0;display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600}.profile__account{display:flex;align-items:center;gap:8px}.profile__account-no{font-size:16px;font-weight:600;letter-spacing:1px;font-variant-numeric:tabular-nums;color:var(--text-2)}.profile__owner{margin:0;font-size:12px;color:var(--text-2)}.profile__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile__hint{font-size:12.5px;color:var(--text-2)}.profile__section{display:flex;flex-direction:column;gap:8px}.profile__section-title{margin:0;font-size:12.5px;font-weight:600;color:var(--text-2)}.profile__empty{margin:0;padding:18px 12px;text-align:center;font-size:13px;color:var(--text-3);border:1px dashed var(--line);border-radius:12px}.profile__conv-list,.profile__msg-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.profile-conv{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card);text-align:left}.profile-conv:hover{background:var(--hover)}.profile-conv__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.profile-conv__title{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-conv__time{font-size:12px;color:var(--text-3)}.profile-msg{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:0;border:none;background:transparent;text-align:left}.profile-msg__group{font-size:11.5px;color:var(--text-3);padding-left:2px}.profile-msg__bubble{display:inline-block;max-width:100%;padding:8px 12px;border-radius:4px 12px 12px;background:var(--card);border:1px solid var(--line);font-size:14px;line-height:1.5;overflow-wrap:anywhere}.profile-msg__time{font-size:11px;color:var(--text-3);padding-left:2px}.profile-msg:hover .profile-msg__bubble{background:var(--hover)}.pick-empty__hint{margin-top:6px!important;font-size:12px;color:var(--text-3)}@media(max-width:760px){.profile__body{padding:12px}.profile{z-index:140}}
