.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;-webkit-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}:root{color-scheme:light dark;--bg: #0b0d12;--bg-panel: #10131a;--bg-elevated: #161a22;--bg-hover: #1a1f29;--bg-active: #1b2534;--bg-input: #0d1016;--border: #212734;--border-soft: #1a202b;--border-strong: #2d3644;--text: #d5dbe6;--text-strong: #eef2f8;--text-muted: #8b95a8;--text-dim: #5f6a7d;--accent: #5aa2f7;--accent-strong: #8cc2ff;--accent-soft: rgba(90, 162, 247, .14);--accent-border: rgba(90, 162, 247, .4);--success: #56d4a0;--warning: #e3b341;--danger: #f07167;--claude: #e8927c;--codex: #6fd0ac;--opencode: #e8c268;--msg-user-bg: #17212e;--msg-user-border: #24384f;--term-bg: #0a0c10;--scroll-thumb: #262d3a;--scroll-thumb-hover: #333c4d;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-full: 999px;--shadow-1: 0 1px 2px rgba(0, 0, 0, .35);--shadow-2: 0 10px 30px rgba(0, 0, 0, .45);--font-sans: system-ui, -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", Roboto, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;--sidebar-w: 340px}@media(prefers-color-scheme:light){:root{--bg: #f2f4f8;--bg-panel: #ffffff;--bg-elevated: #ffffff;--bg-hover: #eef1f6;--bg-active: #e7f0fc;--bg-input: #ffffff;--border: #dfe4ec;--border-soft: #e9edf3;--border-strong: #c3ccda;--text: #2c3543;--text-strong: #131a24;--text-muted: #5b6678;--text-dim: #8a94a6;--accent: #2f7fe0;--accent-strong: #1f6ac9;--accent-soft: rgba(47, 127, 224, .12);--accent-border: rgba(47, 127, 224, .4);--success: #179a68;--warning: #a97b12;--danger: #d0453c;--claude: #c05a44;--codex: #1c8c6a;--opencode: #96700f;--msg-user-bg: #e8f1fd;--msg-user-border: #cadff8;--term-bg: #ffffff;--scroll-thumb: #c9d1dd;--scroll-thumb-hover: #aeb9c8;--shadow-1: 0 1px 2px rgba(16, 24, 40, .06);--shadow-2: 0 12px 32px rgba(16, 24, 40, .14)}}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0}html{height:var(--app-height, 100dvh);overflow:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{position:fixed;top:0;left:0;width:100%;height:var(--app-height, 100dvh);overflow:hidden;font-family:var(--font-sans);font-size:14px;line-height:1.55;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}#root{height:100%;overflow:hidden}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-soft);color:var(--text-strong)}*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);background-clip:content-box;border:3px solid transparent;border-radius:var(--r-full)}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover);background-clip:content-box}::-webkit-scrollbar-track{background:transparent}.hidden{display:none!important}.flip-y{transform:rotate(180deg)}.rot-up{transform:rotate(-90deg)}.app{display:flex;height:100%;background:var(--bg)}.brand{display:flex;align-items:center;gap:10px}.brand-mark{flex:0 0 auto;display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:linear-gradient(140deg,#5aa2f7,#7b6ef6);color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em;box-shadow:0 2px 8px #5aa2f759}.brand-mark.big{width:42px;height:42px;border-radius:12px;font-size:14px}.brand-text{flex:1;min-width:0}.brand-name{font-size:13px;font-weight:600;letter-spacing:.01em;color:var(--text-strong)}.brand-sub{font-size:11px;color:var(--text-dim)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 13px;border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text);font-size:13px;white-space:nowrap;transition:background .14s ease,border-color .14s ease,color .14s ease}.btn:hover{background:var(--bg-hover);border-color:var(--text-dim)}.btn.primary{border-color:#56d4a066;background:#56d4a01f;color:var(--success)}.btn.primary:hover{background:#56d4a033}.btn.block{width:100%}.btn:disabled{opacity:.5;cursor:default}.icon-btn{display:grid;place-items:center;width:30px;height:30px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);transition:background .14s ease,border-color .14s ease,color .14s ease}.icon-btn:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-strong)}.refresh.spinning svg{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sidebar{width:var(--sidebar-w);flex:0 0 var(--sidebar-w);display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg-panel);border-right:1px solid var(--border)}.sidebar-head{display:flex;flex-direction:column;gap:10px;padding:14px 14px 12px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--bg-elevated),var(--bg-panel))}.search-wrap{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:9px;color:var(--text-dim);pointer-events:none}.search{width:100%;padding:8px 32px;border-radius:var(--r-md);border:1px solid var(--border);background:var(--bg-input);color:var(--text);outline:none;appearance:none;transition:border-color .15s ease,box-shadow .15s ease}.search::placeholder{color:var(--text-dim)}.search:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-soft)}.search::-webkit-search-cancel-button{display:none}.search-clear{position:absolute;right:5px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;color:var(--text-dim)}.search-clear:hover{color:var(--text-strong);background:var(--bg-hover)}.filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-full);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);font-size:12px;white-space:nowrap;transition:background .14s ease,border-color .14s ease,color .14s ease}.filter-chip:hover{color:var(--text);border-color:var(--border-strong)}.filter-chip.active{color:var(--text-strong);border-color:var(--accent-border);background:var(--accent-soft)}.chip-count{font-size:11px;color:var(--text-dim);font-variant-numeric:tabular-nums}.filter-chip.active .chip-count{color:var(--accent-strong)}.dot{width:6px;height:6px;border-radius:50%}.dot-claude{background:var(--claude)}.dot-codex{background:var(--codex)}.dot-opencode{background:var(--opencode)}.session-list{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:8px 10px 24px}.group+.group{margin-top:2px}.group.open{margin-bottom:6px}.group-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:6px;width:100%;text-align:left;padding:8px 6px;background:var(--bg-panel);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);transition:color .14s ease}.group-head:hover{color:var(--text-muted)}.group-caret{flex-shrink:0;transition:transform .15s ease}.group-caret.open{transform:rotate(90deg)}.group-name{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-count{margin-left:auto;padding:0 6px;border-radius:var(--r-full);background:var(--bg-elevated);font-size:10px;font-variant-numeric:tabular-nums}.session-item{display:block;width:100%;text-align:left;padding:9px 10px;margin-bottom:2px;border-radius:var(--r-md);border:1px solid transparent;background:transparent;color:inherit;transition:background .14s ease,border-color .14s ease}.session-item:hover{background:var(--bg-hover)}.session-item.selected{background:var(--bg-active);border-color:var(--accent-border);box-shadow:inset 2px 0 0 var(--accent)}.session-title{display:flex;align-items:center;gap:7px;min-width:0}.title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);font-weight:500}.tool-badge{flex-shrink:0;padding:1px 6px;border-radius:var(--r-sm);font-size:10px;font-weight:600;letter-spacing:.02em}.badge-claude{background:#e8927c24;color:var(--claude)}.badge-codex{background:#6fd0ac24;color:var(--codex)}.badge-opencode{background:#e8c26824;color:var(--opencode)}.session-meta{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:11px;color:var(--text-dim)}.session-meta .project{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta-dot{opacity:.5}.main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg)}.main-empty{margin:auto;padding:24px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:var(--text-dim)}.main-empty-title{font-size:20px;font-weight:600;letter-spacing:.01em;color:var(--text-muted)}.main-empty-hint{font-size:12px}.tab-strip{display:flex;gap:4px;padding:8px 12px 0;border-bottom:1px solid var(--border);background:var(--bg-panel);overflow-x:auto;scrollbar-width:none}.tab-strip::-webkit-scrollbar{display:none}.tab{padding:7px 12px;border:1px solid transparent;border-bottom:none;border-radius:var(--r-md) var(--r-md) 0 0;color:var(--text-muted);font-size:13px;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis;transition:background .14s ease,color .14s ease}.tab:hover{color:var(--text);background:var(--bg-hover)}.tab.active{color:var(--text-strong);background:var(--bg);border-color:var(--border)}.history-pane{position:relative;display:flex;flex-direction:column;flex:1;min-height:0}.history-head{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--bg-panel)}.back-btn{display:none;align-items:center;gap:4px;flex-shrink:0;padding:6px 10px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg-elevated);color:var(--accent);font-size:13px}.history-title-block{flex:1;min-width:0}.history-title{display:flex;align-items:center;gap:8px;min-width:0;font-size:15px;font-weight:600;color:var(--text-strong)}.history-sub{margin-top:2px;font-size:12px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-actions{display:flex;gap:8px;flex-shrink:0}.messages{flex:1;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none;padding:18px 20px 40px;display:flex;flex-direction:column;gap:12px}.message{max-width:min(860px,92%);padding:10px 14px;border-radius:var(--r-lg);border:1px solid var(--border);background:var(--bg-elevated);box-shadow:var(--shadow-1)}.msg-user{align-self:flex-end;background:var(--msg-user-bg);border-color:var(--msg-user-border)}.msg-assistant{align-self:flex-start}.msg-system{align-self:center;max-width:86%;background:transparent;border-style:dashed;color:var(--text-dim);font-size:12px}.message-head{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.role-label{font-size:11px;font-weight:600;letter-spacing:.05em;color:var(--text-dim)}.msg-user .role-label{color:var(--accent)}.msg-assistant .role-label{color:var(--success)}.message-time{font-size:11px;color:var(--text-dim);font-variant-numeric:tabular-nums}.part-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}.part-thinking,.part-tool{margin-top:8px;border:1px solid var(--border-soft);border-radius:var(--r-md);background:var(--bg);overflow:hidden}.part-thinking summary,.part-tool summary{display:flex;align-items:center;gap:7px;padding:7px 10px;font-size:12px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;transition:background .14s ease,color .14s ease}.part-thinking summary::-webkit-details-marker,.part-tool summary::-webkit-details-marker{display:none}.part-thinking summary:before,.part-tool summary:before{content:"▸";color:var(--text-dim);transition:transform .15s ease}details[open]>summary:before{transform:rotate(90deg)}.part-thinking summary:hover,.part-tool summary:hover{color:var(--text);background:var(--bg-hover)}.part-thinking[open] summary,.part-tool[open] summary{border-bottom:1px solid var(--border-soft)}.part-thinking pre,.part-tool pre{margin:0;padding:10px 12px;font-family:var(--font-mono);font-size:12px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-muted);max-height:420px;overflow-y:auto}.part-thinking pre{color:var(--text-dim);font-style:italic}.tool-name{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--text)}.tool-status{margin-left:auto;padding:0 7px;border:1px solid var(--border);border-radius:var(--r-full);font-size:11px}.tone-success{color:var(--success);border-color:#56d4a059}.tone-danger{color:var(--danger);border-color:#f0716759}.tone-warning{color:var(--warning);border-color:#e3b34159}.tone-muted{color:var(--text-dim)}.tool-section+.tool-section{border-top:1px solid var(--border-soft)}.tool-label{padding:8px 12px 0;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.load-earlier{align-self:center;display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--r-full);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);font-size:12px;transition:background .14s ease,border-color .14s ease,color .14s ease}.load-earlier:hover{color:var(--text);border-color:var(--border-strong)}.load-earlier:disabled{opacity:.5;cursor:default}.jump-btns{position:absolute;right:18px;bottom:22px;z-index:5;display:flex;flex-direction:column;gap:8px}.jump-btn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-full);border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text-muted);box-shadow:var(--shadow-2);transition:color .14s ease,border-color .14s ease}.jump-btn:hover{color:var(--text);border-color:var(--accent-border)}.empty{padding:32px 0;text-align:center;color:var(--text-dim);font-size:13px}.error{padding:12px 14px;border:1px solid rgba(240,113,103,.35);border-radius:var(--r-md);background:#f0716714;color:var(--danger);font-size:13px}.term-host,.term-panel{display:flex;flex-direction:column;flex:1;min-height:0}.term-toolbar{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid var(--border);background:var(--bg-panel)}.term-label{flex:1;font-size:13px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.term-state{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim)}.term-state:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.term-state.ok{color:var(--success)}.term-state.warn{padding:3px 10px;border:1px solid rgba(227,179,65,.35);border-radius:var(--r-full);color:var(--warning)}.term-state.dead{color:var(--danger)}.term-close{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--border);border-radius:var(--r-sm);background:transparent;color:var(--text-muted);transition:color .14s ease,border-color .14s ease}.term-close:hover{color:var(--danger);border-color:#f0716766}.term-container{flex:1;min-height:0;padding:8px;background:var(--term-bg)}.term-container .xterm{height:100%}.term-inputbar{flex-shrink:0;display:flex;flex-direction:column;gap:6px;padding:6px 8px;border-top:1px solid var(--border);background:var(--bg-panel)}.term-keys{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.term-keys::-webkit-scrollbar{display:none}.term-key{flex-shrink:0;min-width:44px;height:32px;padding:0 10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg-elevated);color:var(--text-muted);font-size:13px}.term-inputrow{display:flex;gap:8px}.term-input{flex:1;min-width:0;height:40px;padding:0 12px;border-radius:var(--r-md);border:1px solid var(--border);background:var(--bg-input);color:var(--text);outline:none;font-size:16px}.term-input:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-soft)}.term-send{flex-shrink:0;height:40px;padding:0 16px;border-radius:var(--r-md);border:1px solid var(--accent-border);background:var(--accent-soft);color:var(--accent-strong);font-size:14px}.gate{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(1200px 620px at 50% -10%,var(--bg-elevated),var(--bg))}.gate-card{display:flex;flex-direction:column;gap:12px;width:340px;max-width:100%;padding:28px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-panel);box-shadow:var(--shadow-2)}.gate-brand{display:flex;align-items:center;justify-content:center;gap:10px}.gate-sub{margin:0;text-align:center;font-size:12px;color:var(--text-dim)}.gate-input{padding:10px 12px;border-radius:var(--r-md);border:1px solid var(--border);background:var(--bg-input);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.gate-input:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-soft)}.gate-error{text-align:center;font-size:12px;color:var(--danger)}.toast{position:fixed;left:50%;bottom:26px;z-index:200;transform:translate(-50%);padding:8px 16px;border:1px solid var(--border-strong);border-radius:var(--r-full);background:var(--bg-elevated);color:var(--text);font-size:13px;box-shadow:var(--shadow-2);animation:toast-in .18s ease}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}@media(max-width:720px){.app{flex-direction:column}.sidebar{width:100%;flex:1 1 auto;border-right:none}.main{display:none;width:100%}.app.has-selection .sidebar{display:none}.app.has-selection .main{display:flex}.sidebar-head{gap:7px;padding:calc(6px + env(safe-area-inset-top)) calc(10px + env(safe-area-inset-right)) 7px calc(10px + env(safe-area-inset-left))}.brand{gap:8px}.brand-mark{width:22px;height:22px;border-radius:6px;font-size:9.5px}.brand-name{font-size:12px}.brand-sub{font-size:10px;line-height:1.3}.sidebar-head .icon-btn{width:30px;height:30px}.search,.gate-input{font-size:16px}.search{padding:8px 30px}.search-icon{left:8px}.search-clear{right:4px}.btn{min-height:36px}.icon-btn{width:34px;height:34px}.filters{gap:5px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:1px;scrollbar-width:none;mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent)}.filters::-webkit-scrollbar{display:none}.filter-chip{flex-shrink:0;gap:5px;min-height:30px;padding:5px 9px;font-size:12px}.chip-count{font-size:10px}.session-list{padding:6px 7px calc(16px + env(safe-area-inset-bottom))}.group-head{min-height:30px;padding:4px 6px;font-size:10.5px}.group-count{padding:0 5px;font-size:9.5px}.session-item{padding:7px 9px;margin-bottom:2px}.session-title{gap:6px}.title-text{font-size:13.5px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35}.tool-badge{padding:0 5px;font-size:9.5px}.session-meta{flex-wrap:wrap;gap:2px 6px;margin-top:2px;font-size:10.5px}.history-head{flex-wrap:wrap;gap:5px 8px;padding:calc(5px + env(safe-area-inset-top)) calc(10px + env(safe-area-inset-right)) 6px calc(10px + env(safe-area-inset-left))}.back-btn{display:inline-flex;gap:3px;min-height:30px;padding:4px 8px;font-size:12.5px}.history-title{gap:5px;font-size:14px}.history-title .title-text{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35}.history-sub{font-size:10.5px;line-height:1.4;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.history-actions{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px calc(8px + env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) calc(8px + env(safe-area-inset-left));background:var(--bg-panel);border-top:1px solid var(--border)}.history-actions .btn{gap:4px;min-height:36px;padding:5px 4px;font-size:12px}.messages{padding:8px 10px calc(64px + env(safe-area-inset-bottom));gap:8px}.message{max-width:97%;padding:8px 10px}.message-head{margin-bottom:4px;gap:8px}.role-label,.message-time{font-size:10px}.jump-btns{right:10px;bottom:calc(52px + env(safe-area-inset-bottom))}.jump-btn{width:38px;height:38px}.tab-strip{gap:3px;padding:calc(4px + env(safe-area-inset-top)) calc(8px + env(safe-area-inset-right)) 0 calc(8px + env(safe-area-inset-left));mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent)}.tab{max-width:52vw;padding:5px 9px;font-size:12px}.term-toolbar.is-live{display:none}.term-toolbar{gap:8px;padding:calc(5px + env(safe-area-inset-top)) calc(10px + env(safe-area-inset-right)) 5px calc(10px + env(safe-area-inset-left))}.term-toolbar .term-close{display:none}.term-label{font-size:12px}.term-state{font-size:11px}.term-container{padding:2px;touch-action:none}.term-inputbar{gap:3px;padding:3px calc(5px + env(safe-area-inset-right)) calc(3px + env(safe-area-inset-bottom)) calc(5px + env(safe-area-inset-left))}.kb-open .tab-strip{display:none}.kb-open .term-panel{padding-top:env(safe-area-inset-top)}.term-keybar{display:flex;align-items:center;gap:4px}.term-keys{flex:1 1 auto;min-width:0;gap:4px}.term-key{min-width:36px;height:26px;padding:0 7px;font-size:12px}.term-tools{display:flex;flex-shrink:0;align-items:center;gap:5px}.term-dot{width:7px;height:7px;border-radius:50%;background:var(--text-dim)}.term-dot.state-live{background:var(--success)}.term-dot.state-connecting{background:var(--warning)}.term-dot.state-closed,.term-dot.state-exited{background:var(--danger)}.term-tools .term-close{width:26px;height:26px}.term-inputrow{gap:5px}.term-input{height:32px;padding:0 9px}.term-send{height:32px;padding:0 11px;font-size:13px}.toast{bottom:calc(62px + env(safe-area-inset-bottom))}.gate-card{width:min(340px,calc(100vw - 32px));padding:24px 20px}}
