/* 分身 Agent 中心 · 仿 Grok Bot（白底黑字、圆角胶囊、柔和阴影、blob 头像） */
body.is-twin .app-shell{width:100%;max-width:none;margin:0;border-radius:0;box-shadow:none;min-height:100dvh;overflow:visible}
.twin-root{--tw-ink:#111;--tw-muted:#8a8a90;--tw-line:#efeff2;--tw-soft:#f4f4f6;--tw-shadow:0 6px 24px rgba(20,20,30,.08);color:var(--tw-ink);background:#fff}
.twin-root a{color:inherit;text-decoration:none}
.tw-blob{position:relative;display:inline-grid;place-items:center;flex:0 0 auto}
.tw-blob svg{display:block}
.tw-star{position:absolute;right:-2%;bottom:2%;width:30%;height:30%;border-radius:50%;background:#f39a2b;color:#fff;display:grid;place-items:center;border:3px solid #fff}
.tw-star svg{fill:#fff}
.tw-online{position:absolute;right:0;bottom:2px;width:13px;height:13px;border-radius:50%;background:#3a9d5d;border:2.5px solid #fff}

/* 布局：手机单栏 / 桌面双栏 */
.tw-hub{display:block;min-height:100dvh}
.tw-side{position:relative;min-height:100dvh;background:#fff}
.tw-main{display:flex;flex-direction:column;min-height:100dvh;background:#fff}
.tw-hub[data-mode="home"] .tw-main{display:none}
.tw-hub:not([data-mode="home"]) .tw-side{display:none}
@media(min-width:900px){
  .tw-hub{display:grid;grid-template-columns:360px 1fr;height:100dvh;overflow:hidden}
  .tw-hub .tw-side,.tw-hub[data-mode] .tw-main{display:flex !important;flex-direction:column;height:100dvh;min-height:0}
  .tw-side{border-right:1px solid var(--tw-line);background:#fbfbfc}
  .tw-side-scroll{flex:1;overflow-y:auto}
  .tw-bottom{position:absolute !important;width:auto !important;left:14px !important;right:14px !important;transform:none !important}
  .tw-main .tw-back{visibility:hidden}
  .tw-thread{flex:1;overflow-y:auto}
  .tw-row.is-active,.tw-primary.is-active b{background:#eef0f3}
  .tw-primary.is-active b{padding:2px 10px;border-radius:99px}
  .tw-thread,.tw-tips,.tw-compose{width:100%;max-width:820px;margin-left:auto;margin-right:auto}
}

/* 顶部 */
.tw-top{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 4px;position:sticky;top:0;background:inherit;z-index:3}
.tw-me{width:46px;height:46px;border-radius:50%;background:#e9762b;color:#fff !important;display:grid;place-items:center;font-weight:700;font-size:19px;border:3px solid #fff;box-shadow:var(--tw-shadow)}
.tw-round{width:46px;height:46px;border-radius:50%;background:#fff;box-shadow:var(--tw-shadow);display:grid;place-items:center;border:0;cursor:pointer;color:var(--tw-ink)}
.tw-round--sm{width:38px;height:38px}
.tw-viewer{font-size:11px;color:#b45309;background:#fff4e6;padding:4px 10px;border-radius:99px}
.tw-primary{display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 0 18px}
.tw-primary b{font-size:14px;font-weight:600}
.tw-tabs{display:flex;gap:8px;padding:0 18px 6px}
.tw-tabs a{padding:7px 14px;border-radius:99px;background:var(--tw-soft);font-size:13px;font-weight:600}
.tw-tabs a.is-active{background:#111;color:#fff !important}
.tw-tabs small{opacity:.7;margin-left:2px}

/* 分组 & 行 */
.tw-group-h{display:flex;align-items:center;gap:4px;padding:16px 20px 6px;color:var(--tw-muted);font-size:14px;background:none;border:0;cursor:pointer}
.tw-row{display:flex;align-items:center;gap:14px;padding:11px 18px;border-radius:14px;margin:0 6px;cursor:pointer}
.tw-row:hover{background:#f5f6f8}
.tw-row-main{flex:1;min-width:0}
.tw-row-top{display:flex;align-items:center;gap:6px}
.tw-row-top b{font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tw-row-top time{margin-left:auto;font-size:12px;color:var(--tw-muted);flex:0 0 auto}
.tw-row-sub{display:flex;align-items:center;gap:8px;margin-top:4px}
.tw-row-sub span{flex:1;font-size:13px;color:#77777d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tw-dot{width:9px;height:9px;border-radius:50%;background:#3b82f6;flex:0 0 auto}
.tw-tag{font-style:normal;font-size:10px;color:#b45309;background:#fff1de;padding:2px 7px;border-radius:99px;white-space:nowrap}

/* 底部搜索胶囊 */
.tw-bottom{position:fixed;left:0;right:0;bottom:0;display:flex;gap:12px;align-items:center;padding:12px 16px max(14px,env(safe-area-inset-bottom));background:linear-gradient(transparent,#fff 35%);z-index:5}
.tw-grid{width:54px;height:54px;border-radius:50%;border:0;background:#eefcf6;box-shadow:var(--tw-shadow);display:grid;place-items:center;cursor:pointer}
.tw-search-pill{flex:1;height:54px;border-radius:99px;background:#fff;box-shadow:var(--tw-shadow);display:flex;align-items:center;gap:10px;padding:0 20px;font-size:16px;color:#222}

/* 对话 */
.tw-chat-head{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--tw-line);position:sticky;top:0;background:#fffffff2;backdrop-filter:blur(12px);z-index:3}
.tw-back{display:grid;place-items:center;width:38px;height:38px}
.tw-chat-who{flex:1;display:flex;align-items:center;gap:10px;min-width:0}
.tw-chat-who b{display:block;font-size:16px}
.tw-chat-who small{display:block;font-size:11px;color:var(--tw-muted)}
.tw-thread{flex:1;padding:18px 16px 12px;display:flex;flex-direction:column;gap:14px}
.tw-msg{display:flex;gap:9px;align-items:flex-start}
.tw-msg.from-user{justify-content:flex-end}
.tw-bubble{white-space:pre-wrap;font-size:15px;line-height:1.6;max-width:78%;word-break:break-word}
.from-agent .tw-bubble{padding:2px 0}
.from-user .tw-bubble{background:#f1f1f4;padding:10px 15px;border-radius:20px 20px 6px 20px}
.tw-sys{align-self:center;font-size:12px;color:#6b7280;background:var(--tw-soft);padding:4px 12px;border-radius:99px}
.tw-typing{display:flex;gap:4px;padding:10px 0}
.tw-typing i{width:7px;height:7px;border-radius:50%;background:#bbb;animation:twb 1s infinite}
.tw-typing i:nth-child(2){animation-delay:.15s}.tw-typing i:nth-child(3){animation-delay:.3s}
@keyframes twb{50%{opacity:.3;transform:translateY(-3px)}}
.tw-tips{display:flex;gap:8px;overflow-x:auto;padding:4px 14px;scrollbar-width:none}
.tw-tips button{flex:0 0 auto;font-size:12px;padding:7px 12px;border-radius:99px;background:#fff;border:1px solid var(--tw-line);cursor:pointer;color:#333}
.tw-compose{position:sticky;bottom:0;display:flex;align-items:center;gap:8px;padding:10px 14px max(14px,env(safe-area-inset-bottom));background:#fff}
.tw-compose input{flex:1;height:50px;border-radius:99px;border:0;background:#fff;box-shadow:var(--tw-shadow),inset 0 0 0 1px var(--tw-line);padding:0 18px;font-size:15px;outline:0}
.tw-c-plus,.tw-c-send{width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;cursor:pointer}
.tw-c-plus{background:var(--tw-soft)}
.tw-c-send{background:#111;color:#fff}

/* 资料 & 协作 */
.tw-info{padding:16px 18px 40px;display:flex;flex-direction:column;gap:14px;max-width:820px;width:100%;margin:0 auto}
.tw-info-top{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 0}
.tw-info-top h2{margin:6px 0 0;font-size:20px}
.tw-info-top p{margin:0;font-size:12px;color:var(--tw-muted)}
.tw-info section{background:#fff;border-radius:18px;box-shadow:var(--tw-shadow);padding:14px 16px}
.tw-info h3{margin:0 0 8px;font-size:14px}
.tw-info h3 small{color:var(--tw-muted);font-weight:500}
.tw-info section>p{margin:0;font-size:14px;line-height:1.6;color:#333}
.tw-mem{display:flex;gap:8px;align-items:center;font-size:13px;padding:6px 0;border-top:1px solid var(--tw-line)}
.tw-mem span{flex:1}.tw-mem time{font-size:11px;color:var(--tw-muted)}
.tw-muted{color:var(--tw-muted);font-size:13px;text-align:center;padding:16px 0}
.tw-link{background:none;border:0;color:#6b7280;font-size:12px;margin-top:6px;cursor:pointer}
.tw-danger{border:0;background:#fff0f0;color:#dc2626;border-radius:99px;padding:12px;font-weight:600;cursor:pointer}
.tw-ho{background:#fff;border-radius:16px;box-shadow:var(--tw-shadow);padding:12px 14px;margin-bottom:10px}
.tw-info section .tw-ho{box-shadow:none;border:1px solid var(--tw-line)}
.tw-ho-who{display:flex;align-items:center;gap:6px;font-size:13px;flex-wrap:wrap}
.tw-ho p{margin:8px 0;font-size:14px}
.tw-ho-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--tw-muted)}
.tw-ho-meta span{background:var(--tw-soft);padding:2px 8px;border-radius:99px}
.tw-status{margin-left:auto;border:0;border-radius:99px;padding:5px 12px;font-size:12px;background:#fff4e0;color:#b45309;cursor:pointer}
.tw-status.is-done{background:#e8f8ee;color:#15803d}

/* 搜索 */
.tw-search-top{display:flex;gap:10px;align-items:center;padding:14px 14px 6px}
.tw-search-input{flex:1;height:50px;border-radius:99px;box-shadow:var(--tw-shadow),inset 0 0 0 1px var(--tw-line);display:flex;align-items:center;gap:8px;padding:0 16px}
.tw-search-input input{flex:1;border:0;outline:0;font-size:16px;background:transparent}
.tw-chip-row{display:flex;gap:8px;overflow-x:auto;padding:8px 14px;scrollbar-width:none}
.tw-chip-row button{flex:0 0 auto;border:0;border-radius:99px;padding:8px 14px;background:var(--tw-soft);font-size:14px;cursor:pointer;color:#111}
.tw-chip-row button.is-active{background:#111;color:#fff}
.tw-results{padding:4px 0 40px}
.tw-results h4{margin:14px 20px 4px;font-size:12px;color:var(--tw-muted);font-weight:500}
.tw-file{display:flex;align-items:center;gap:12px;padding:11px 20px}
.tw-file div{flex:1}.tw-file b{display:block;font-size:14px}.tw-file span{font-size:12px;color:var(--tw-muted)}

/* 欢迎页 */
.tw-welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:80px 24px;min-height:70dvh}
.tw-welcome h2{margin:8px 0 0;font-size:22px}
.tw-welcome p{color:var(--tw-muted);font-size:14px;line-height:1.7;margin:0}
.tw-pill-btn{display:inline-flex;justify-content:center;align-items:center;height:46px;padding:0 22px;border-radius:99px;background:#111;color:#fff !important;font-weight:600;border:0;cursor:pointer;font-size:15px;margin-top:8px}

/* 弹层 sheet */
.tw-sheet-mask{position:fixed;inset:0;background:rgba(0,0,0,.25);z-index:40}
.tw-sheet{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,520px);max-height:88dvh;overflow-y:auto;background:#fff;border-radius:28px 28px 0 0;z-index:41;padding:14px 18px max(20px,env(safe-area-inset-bottom));box-shadow:0 -10px 40px rgba(0,0,0,.12);color:#111}
.tw-sheet--tall{min-height:70dvh}
@media(min-width:900px){.tw-sheet{bottom:auto;top:50%;transform:translate(-50%,-50%);border-radius:28px}}
.tw-sheet-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.tw-sheet-h b{font-size:17px}.tw-sheet-h>span{min-width:38px}
.tw-count{padding:8px 14px;border-radius:99px;box-shadow:var(--tw-shadow);font-size:13px}
.tw-form{display:flex;flex-direction:column;gap:12px}
.tw-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#555}
.tw-form input,.tw-form select,.tw-form textarea{border:0;background:var(--tw-soft);border-radius:14px;padding:12px 14px;font-size:15px;font-family:inherit;outline:0;color:#111}
.tw-colors{display:flex;gap:10px;flex-direction:row}
.tw-colors label{flex-direction:row}
.tw-colors input{display:none}
.tw-colors span{width:32px;height:32px;border-radius:50%;display:block;border:3px solid #fff;box-shadow:0 0 0 1px #ddd;cursor:pointer}
.tw-colors input:checked+span{box-shadow:0 0 0 2px #111}
.tw-field-label{display:block;font-size:13px;color:#555;margin-bottom:8px}
.tw-shapes{display:flex;flex-wrap:wrap;gap:10px}
.tw-shape-opt{display:flex!important;flex-direction:column!important;align-items:center;gap:4px;cursor:pointer;font-size:11px;color:#666}
.tw-shape-opt input{display:none}
.tw-shape-preview{display:grid;place-items:center;padding:4px;border-radius:12px;border:2px solid transparent;background:var(--tw-soft,#f3f3f5)}
.tw-shape-opt input:checked+.tw-shape-preview{border-color:#111;background:#fff}
.tw-shape-opt em{font-style:normal}
.tw-form textarea[readonly]{opacity:.75}
.tw-assign-note{font-size:12px;color:#b45309;background:#fff4e6;padding:8px 12px;border-radius:12px;display:flex;gap:6px;align-items:center}
.tw-menu{display:flex;flex-direction:column}
.tw-menu a,.tw-menu button{display:flex;align-items:center;gap:12px;padding:14px 6px;border:0;background:none;font-size:15px;border-bottom:1px solid var(--tw-line);cursor:pointer;text-align:left;color:#111}
.tw-app{display:flex;align-items:center;gap:12px;padding:12px 0}
.tw-app-ic{width:44px;height:44px;border-radius:12px;border:1px solid var(--tw-line);display:grid;place-items:center}
.tw-app div{flex:1}.tw-app b{display:block;font-size:15px}.tw-app span{font-size:12px;color:var(--tw-muted)}
.tw-conn{border:0;border-radius:99px;padding:8px 16px;background:var(--tw-soft);font-size:13px;cursor:pointer}
.tw-conn.is-on{color:#999}
.tw-toast{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);background:#111;color:#fff;padding:10px 18px;border-radius:99px;font-size:13px;z-index:60;box-shadow:var(--tw-shadow)}

/* 前台主页 · 工作展示 */
.tw-front .profile-actions a{text-decoration:none}
.enter-avatar.is-locked{background:#9ca3af;border-color:#9ca3af}
.tw-show{padding:4px 16px 20px}
.tw-show h2{font-size:18px;margin:6px 2px 12px}
.tw-show-card{background:#fff;border-radius:18px;box-shadow:0 6px 24px rgba(20,20,30,.07);padding:14px 16px;margin-bottom:12px}
.tw-show-card h3{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:14px}
.tw-show-card h3 small{margin-left:auto;color:#8a8a90;font-weight:500;font-size:11px}
.tw-show-card p{margin:6px 0;font-size:13px;line-height:1.55}
.tw-show-card p b{display:block}.tw-show-card p span{color:#666}
.tw-chips-wrap{display:flex;flex-wrap:wrap;gap:8px}
.tw-stu{font-size:13px;display:inline-flex;gap:4px;align-items:center;background:#f6f6f8;border-radius:99px;padding:4px 6px 4px 10px}
.tw-out,.tw-sub{display:flex;gap:10px;align-items:center;padding:7px 0;border-top:1px solid #f0f0f2}
.tw-out div,.tw-sub div{flex:1;min-width:0}
.tw-out b,.tw-sub b{display:block;font-size:13px}
.tw-out span,.tw-sub span{font-size:12px;color:#777;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* INS 我的页补充 */
.org-link{color:#111;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.twin-entry-row a{text-decoration:none}
.twin-front-link{flex:1;height:42px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line,#eee);border-radius:11px;font-size:13px;font-weight:600;color:#111}
.org-people{display:flex;gap:12px;align-items:center;overflow-x:auto;padding:14px 18px 0;scrollbar-width:none}
.org-people>span{font-size:11px;color:#888;flex:0 0 auto}
.org-people a{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;color:#111;flex:0 0 auto}
.org-people small{font-size:10px;white-space:nowrap}

/* ===== v3 · Grok Bot 悬浮半透明外壳 ===== */
.twin-root{--tw-glass:rgba(255,255,255,.7);--tw-glass-strong:rgba(255,255,255,.82);--tw-blur:saturate(180%) blur(18px)}
/* 列表顶部：左头像 / 中主机器人 / 右 + ，悬浮磨砂 */
.tw-float-top{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:56px 1fr 56px;align-items:start;padding:12px 16px 10px;background:linear-gradient(to bottom,rgba(255,255,255,.78),rgba(255,255,255,.55) 70%,rgba(255,255,255,0));-webkit-backdrop-filter:var(--tw-blur);backdrop-filter:var(--tw-blur);transition:padding .2s}
.tw-float-top .tw-me{margin-top:4px;backdrop-filter:none}
.tw-float-top .tw-round{margin-top:4px;background:var(--tw-glass-strong);-webkit-backdrop-filter:var(--tw-blur);backdrop-filter:var(--tw-blur);justify-self:end}
.tw-float-top .tw-primary{padding:0;gap:6px;justify-self:center}
.tw-primary-av{display:block;border-radius:50%;box-shadow:0 10px 30px rgba(0,0,0,.12);transition:transform .25s,opacity .25s}
.tw-primary-av .tw-blob svg circle{opacity:.92}
.tw-primary-av .tw-blob::after{content:"";position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.45),rgba(255,255,255,0) 55%);pointer-events:none}
.tw-float-top .tw-primary b{font-size:14px;font-weight:600;color:#222}
.tw-hub.is-scrolled .tw-primary-av{opacity:.72;transform:scale(.86)}
.tw-hub.is-scrolled .tw-float-top{padding-bottom:4px}
.tw-viewer-row{display:flex;justify-content:center;padding:2px 0 6px}
.tw-tabs{padding-top:4px}
.tw-group-h{font-size:14px;color:#8d8d93}
.tw-group-h svg{opacity:.7}
/* 底部：九宫格圆钮 + 搜索胶囊，磨砂悬浮 */
.tw-bottom{background:none !important;pointer-events:none}
.tw-bottom>*{pointer-events:auto}
.tw-grid,.tw-search-pill{background:var(--tw-glass) !important;-webkit-backdrop-filter:var(--tw-blur);backdrop-filter:var(--tw-blur);box-shadow:0 8px 28px rgba(20,20,30,.12),inset 0 0 0 1px rgba(255,255,255,.6)}

/* 对话页：悬浮顶栏 */
.tw-chat-head{display:none}
.tw-chat-float{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px 14px;background:linear-gradient(to bottom,rgba(255,255,255,.7),rgba(255,255,255,0));pointer-events:none}
.tw-chat-float>*{pointer-events:auto}
.tw-chat-float .tw-round{background:var(--tw-glass-strong);-webkit-backdrop-filter:var(--tw-blur);backdrop-filter:var(--tw-blur);box-shadow:0 6px 22px rgba(20,20,30,.1)}
.tw-title-pill{display:flex;align-items:center;gap:8px;max-width:calc(100% - 130px);height:44px;padding:0 16px 0 10px;border-radius:99px;background:var(--tw-glass-strong);-webkit-backdrop-filter:var(--tw-blur);backdrop-filter:var(--tw-blur);box-shadow:0 6px 22px rgba(20,20,30,.1)}
.tw-title-pill b{font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tw-thread{padding:6px 16px 20px}
.tw-msg.from-agent .tw-bubble{background:#f3f3f5;padding:11px 15px;border-radius:20px 20px 20px 6px}
.tw-msg.from-agent>.tw-blob{display:none}
.tw-msg.from-user .tw-bubble{background:#111;color:#fff}
/* 底部悬浮输入胶囊 */
.tw-chat-bottom{position:sticky;bottom:0;z-index:20;padding:10px 0 max(14px,env(safe-area-inset-bottom));background:linear-gradient(to top,rgba(255,255,255,.75),rgba(255,255,255,0));pointer-events:none}
.tw-chat-bottom>*{pointer-events:auto}
.tw-chat-bottom .tw-tips{padding:0 14px 8px}
.tw-chat-bottom .tw-tips button{background:var(--tw-glass-strong);-webkit-backdrop-filter:var(--tw-blur);backdrop-filter:var(--tw-blur)}
.tw-compose-pill{position:static;margin:0 14px;padding:6px 6px 6px 8px !important;gap:4px !important;border-radius:99px;background:var(--tw-glass) !important;-webkit-backdrop-filter:var(--tw-blur);backdrop-filter:var(--tw-blur);box-shadow:0 8px 28px rgba(20,20,30,.12),inset 0 0 0 1px rgba(255,255,255,.6)}
.tw-compose-pill input{height:42px;box-shadow:none !important;background:transparent !important;padding:0 8px !important}
.tw-compose-pill .tw-c-plus{width:40px;height:40px;background:transparent;color:#666}
.tw-c-mic{width:40px;height:40px;border-radius:50%;border:0;background:transparent;color:#555;display:grid;place-items:center;cursor:pointer}
.tw-c-voice{width:42px;height:42px;border-radius:50%;border:0;background:#c4572a;color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 12px rgba(196,87,42,.35)}
@media(min-width:900px){
  .tw-hub .tw-side{overflow-y:auto}
  .tw-side-scroll{overflow:visible !important;flex:none !important}
  .tw-bottom{position:sticky !important;bottom:0;left:auto !important;right:auto !important;margin-top:auto}
  .tw-hub .tw-main{overflow-y:auto}
  .tw-main .tw-back-round{visibility:hidden}
  .tw-thread{overflow:visible !important;flex:1 0 auto}
}

/* 销售西单 · 附件上传（2026-11-04） */
.tw-c-attach{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#555;position:relative;flex:0 0 auto}
.tw-c-attach:hover{background:rgba(0,0,0,.05);color:#111}
.tw-c-attach input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.tw-file-chip{display:flex;align-items:center;gap:8px;margin:0 0 8px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2)}
.tw-msg.from-agent .tw-file-chip{background:#fff;border-color:#e8e8ec;color:#222}
.tw-file-chip span{display:flex;flex-direction:column;gap:2px;min-width:0}
.tw-file-chip b{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}
.tw-file-chip small{font-size:10px;opacity:.75}
.tw-title-pill .tw-tag{font-size:10px;margin-left:4px}
.tw-xidan{padding:8px 16px 40px}
.tw-xidan-hint{font-size:12px;color:#888;line-height:1.6;margin:0 0 14px}
.tw-xidan-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 12px;border-radius:14px;background:#f7f7f9;margin-bottom:8px;color:inherit;text-decoration:none}
.tw-xidan-row:hover{background:#efeff3}
.tw-xidan-main{display:flex;flex-direction:column;gap:4px;min-width:0}
.tw-xidan-main b{font-size:15px}
.tw-xidan-main span{font-size:12px;color:#888}
.tw-xidan-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}
.tw-xidan-meta small{font-size:11px;color:#999}
.tw-xidan-entry .tw-tag{background:#fff3e8;color:#c4572a}
.tw-xidan-main{color:inherit;text-decoration:none;flex:1}
.tw-xidan-tx{font-size:12px;font-weight:600;color:#c4572a;background:#fff3e8;padding:4px 10px;border-radius:99px;text-decoration:none;white-space:nowrap}
.tw-xidan-tx:hover{background:#ffe4cc}
.tw-transcript{background:#fff;border-radius:16px;padding:14px 16px;box-shadow:0 4px 18px rgba(20,20,30,.06);margin-bottom:14px}
.tw-transcript h3{margin:0 0 8px;font-size:15px}
.tw-transcript-note{font-size:12px;color:#888;margin:0 0 10px;line-height:1.5}
.tw-transcript-body{white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.7;color:#222;background:#f7f7f9;border-radius:12px;padding:12px;margin:0;font-family:inherit;max-height:55vh;overflow:auto}

/* MOBILE-CLAMP-PTR */
.tw-hub,.tw-main,.tw-thread,.tw-compose,.tw-side{max-width:100vw;overflow-x:hidden;box-sizing:border-box}
.tw-msg{max-width:100%;min-width:0}
.tw-bubble{max-width:min(78%,calc(100vw - 72px));overflow-wrap:anywhere;word-break:break-word;box-sizing:border-box}
.tw-file-chip{max-width:min(240px,calc(100vw - 96px))}
.tw-file-chip b{max-width:100%}
.tw-title-pill{max-width:min(100%,calc(100vw - 130px))}
#aobo-ptr{position:fixed;left:50%;top:calc(8px + env(safe-area-inset-top));transform:translate(-50%,-120%);z-index:90;width:36px;height:36px;border-radius:50%;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.12);display:grid;place-items:center;transition:transform .2s ease;pointer-events:none;opacity:0}
#aobo-ptr.is-pull{opacity:1;transform:translate(-50%,0)}
#aobo-ptr.is-spin svg{animation:aobo-ptr-spin .8s linear infinite}
@keyframes aobo-ptr-spin{to{transform:rotate(360deg)}}
body,.app-shell{overflow-x:hidden;max-width:100vw}
