@i14ks/ccv 0.24.1 → 0.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -10
- package/bundle/ccv.mjs +139 -1033
- package/package.json +50 -53
- package/web/assets/{codemirror-CVe_WI3e.js → codemirror-BtJ9Kw6s.js} +1 -1
- package/web/assets/{index-CdS9TWKz.js → index-B9YW7yGO.js} +1 -1
- package/web/assets/{index-BVTKBCk1.js → index-BAlM5PeU.js} +1 -1
- package/web/assets/{index-ChH2BaGk.js → index-BDq5JNDx.js} +1 -1
- package/web/assets/{index-BnDGCTVR.js → index-Ba1mAYRn.js} +1 -1
- package/web/assets/{index-BTat2cjy.js → index-BlUJ9mDA.js} +1 -1
- package/web/assets/{index-CQpgnjUL.js → index-BpAEaXJC.js} +1 -1
- package/web/assets/{index-CaQnLaP1.js → index-BwiSzzXj.js} +1 -1
- package/web/assets/{index-BS_AsIEi.js → index-C3Ai8_SG.js} +1 -1
- package/web/assets/{index--b7aPip2.css → index-C6Y6TadO.css} +1 -1
- package/web/assets/{index-D3s6YlZz.js → index-C8QQfurN.js} +1 -1
- package/web/assets/{index-Bt4DUbpM.js → index-CNOLHL_4.js} +1 -1
- package/web/assets/{index-dESUNfha.js → index-CWKatwuc.js} +1 -1
- package/web/assets/{index-BvJsiicf.js → index-Ccp0JT8x.js} +1 -1
- package/web/assets/{index-DaeDM5ye.js → index-DHwxEPqa.js} +1 -1
- package/web/assets/{index-ClcgV2Ok.js → index-DWr0O8ZE.js} +1 -1
- package/web/assets/index-DYqdo2vo.js +134 -0
- package/web/assets/{index-COgGuYuk.js → index-Dc4p-U2p.js} +1 -1
- package/web/assets/{index-zhxDV4zv.js → index-Dm_hwn8g.js} +1 -1
- package/web/assets/{index-EFEGjfDS.js → index-DvfkEh9E.js} +1 -1
- package/web/assets/{index-BENS1Et2.js → index-McXNmpFb.js} +1 -1
- package/web/assets/{index-DVlOSKL1.js → index-yIku6ofv.js} +1 -1
- package/web/index.html +2 -2
- package/web/assets/index-BfpRxrlX.js +0 -136
|
@@ -1 +1 @@
|
|
|
1
|
-
import{L as r}from"./index-
|
|
1
|
+
import{L as r}from"./index-yIku6ofv.js";import{s as a,t as O}from"./index-DYqdo2vo.js";import{L as P,k as o,l as s,n as e,o as t,p as Q}from"./index-Ba1mAYRn.js";import"./index-BHot-lnj.js";import"./index-891wE-Rj.js";const n=a({String:O.string,Number:O.number,"True False":O.bool,PropertyName:O.propertyName,Null:O.null,", :":O.separator,"[ ]":O.squareBracket,"{ }":O.brace}),i=r.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[n],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),p=o.define({name:"json",parser:i.configure({props:[s.add({Object:e({except:/^\s*\}/}),Array:e({except:/^\s*\]/})}),t.add({"Object Array":Q})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function u(){return new P(p)}export{u as json,p as jsonLanguage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{color-scheme:light;--bg: #faf9f5;--surface: #ffffff;--surface-2: #f2f0e8;--surface-3: #e9e6db;--sidebar: #f0eee6;--border: #e2dfd3;--border-soft: #edebe1;--text: #1f1e1d;--text-2: #3d3d3a;--muted: #7c7a73;--accent: #c96442;--accent-hover: #b1553a;--accent-fg: #fffdf9;--accent-soft: rgba(201, 100, 66, .1);--accent-line: rgba(201, 100, 66, .36);--accent-claude: #c96442;--folder-default: #b4b1a5;--select: rgba(201, 100, 66, .28);--warn: #b0762c;--warn-soft: rgba(176, 118, 44, .12);--warn-line: rgba(176, 118, 44, .42);--danger: #bf4d43;--danger-soft: rgba(191, 77, 67, .1);--ok: #5b7f45;--ok-soft: rgba(91, 127, 69, .12);--ok-line: rgba(91, 127, 69, .4);--add-bg: rgba(91, 127, 69, .13);--add-fg: #35512b;--del-bg: rgba(191, 77, 67, .1);--del-fg: #7d2f2a;--code-fg: #3d3d3a;--scroll: rgba(31, 30, 29, .2);--scroll-hover: rgba(31, 30, 29, .36);--shadow-sm: 0 1px 2px rgba(31, 30, 29, .07);--shadow-md: 0 6px 18px rgba(31, 30, 29, .1);--shadow-lg: 0 18px 44px rgba(31, 30, 29, .18);--ring: 0 0 0 3px rgba(201, 100, 66, .18);--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--sans: ui-sans-serif, system-ui, "Segoe UI", Inter, Roboto, sans-serif;--serif: ui-serif, "Iowan Old Style", Georgia, "Times New Roman", serif;--radius: 10px;--radius-lg: 16px;--sidebar-w: 276px;--files-w: 260px;--search-w: 320px;--git-w: 320px;--ask-w: 380px;--cm-key: #9a5bb0;--cm-str: #5b7f45;--cm-num: #b0762c;--cm-comment: #8a8880;--cm-fn: #4f7cac;--cm-type: #3f8f8a;--cm-prop: #a05063;--cm-const: #b1553a;--cm-op: #7c7a73;--cm-selection: rgba(201, 100, 66, .28);--cm-active: rgba(31, 30, 29, .035);--cm-match: rgba(176, 118, 44, .26);--lane-0: #c96442;--lane-1: #4f7cac;--lane-2: #5b7f45;--lane-3: #9a6bb0;--lane-4: #b0762c;--lane-5: #3f8f8a;--lane-6: #a05063}:root[data-theme=dark]{color-scheme:dark;--bg: #262624;--surface: #30302e;--surface-2: #3a3a37;--surface-3: #454542;--sidebar: #1f1e1d;--border: #3e3e3b;--border-soft: #343432;--text: #f5f4ee;--text-2: #d4d1c8;--muted: #918e86;--accent: #d97757;--accent-hover: #e08b6e;--accent-fg: #251610;--accent-soft: rgba(217, 119, 87, .14);--accent-line: rgba(217, 119, 87, .42);--folder-default: #6b6963;--accent-claude: #d97757;--select: rgba(217, 119, 87, .34);--warn: #d9a05b;--warn-soft: rgba(217, 160, 91, .14);--warn-line: rgba(217, 160, 91, .42);--danger: #e0776a;--danger-soft: rgba(224, 119, 106, .13);--ok: #8fb06b;--ok-soft: rgba(143, 176, 107, .14);--ok-line: rgba(143, 176, 107, .42);--add-bg: rgba(143, 176, 107, .13);--add-fg: #cfe0b8;--del-bg: rgba(224, 119, 106, .13);--del-fg: #f0c6c0;--code-fg: #d4d1c8;--scroll: rgba(245, 244, 238, .16);--scroll-hover: rgba(245, 244, 238, .3);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 6px 18px rgba(0, 0, 0, .36);--shadow-lg: 0 18px 44px rgba(0, 0, 0, .5);--ring: 0 0 0 3px rgba(217, 119, 87, .22);--lane-0: #d97757;--lane-1: #7aa5d2;--lane-2: #8fb06b;--lane-3: #b98fd0;--lane-4: #d9a05b;--lane-5: #6fbdb6;--lane-6: #d2818f;--cm-key: #c39ad8;--cm-str: #a3c47f;--cm-num: #e0b276;--cm-comment: #86837b;--cm-fn: #8db6e2;--cm-type: #74c9c2;--cm-prop: #e0949f;--cm-const: #e79674;--cm-op: #a9a69d;--cm-selection: rgba(217, 119, 87, .34);--cm-active: rgba(245, 244, 238, .045);--cm-match: rgba(217, 160, 91, .3)}:root{--g-blue: #4285f4;--g-red: #ea4335;--g-yellow: #fbbc04;--g-green: #34a853}:root[data-theme=dark]{--g-blue: #8ab4f8;--g-red: #f28b82;--g-yellow: #fdd663;--g-green: #81c995}:root[data-provider=antigravity]{--accent: #4285f4;--accent-hover: #3367d6;--accent-fg: #ffffff;--accent-soft: rgba(66, 133, 244, .1);--accent-line: rgba(66, 133, 244, .36);--select: rgba(66, 133, 244, .28);--ring: 0 0 0 3px rgba(66, 133, 244, .18)}:root[data-theme=dark][data-provider=antigravity]{--accent: #8ab4f8;--accent-hover: #aecbfa;--accent-fg: #0b2545;--accent-soft: rgba(138, 180, 248, .14);--accent-line: rgba(138, 180, 248, .42);--select: rgba(138, 180, 248, .34);--ring: 0 0 0 3px rgba(138, 180, 248, .22)}*{box-sizing:border-box}html,body,#root{height:100%}html,body{overflow:hidden;overscroll-behavior:none}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}::selection{background:var(--select)}*{scrollbar-width:thin;scrollbar-color:var(--scroll) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-thumb{background:var(--scroll);border:3px solid transparent;background-clip:content-box;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover);background-clip:content-box}.app{display:grid;grid-template-columns:[sidebar] var(--sidebar-w) [files] auto [search] auto [git] auto [main] minmax(0,1fr) [ask] auto;height:100%}.sidebar,.main,.sidepane{grid-row:1}.sidebar{grid-column:sidebar}.sidepane--files{grid-column:files;width:var(--files-w)}.sidepane--search{grid-column:search;width:var(--search-w)}.sidepane--git{grid-column:git;width:var(--git-w)}.main{grid-column:main}.sidepane--ask{grid-column:ask;width:var(--ask-w)}.pane-resizer{grid-row:1;display:flex;justify-content:center;position:relative;z-index:5;width:9px;cursor:col-resize;touch-action:none}.pane-resizer--left{justify-self:end;margin-right:-4px}.pane-resizer--right{justify-self:start;margin-left:-4px}.pane-resizer--sidebar{grid-column:sidebar}.pane-resizer--files{grid-column:files}.pane-resizer--search{grid-column:search}.pane-resizer--git{grid-column:git}.pane-resizer--ask{grid-column:ask}.pane-resizer__line{width:2px;border-radius:2px;background:transparent;transition:background .12s ease}.pane-resizer:hover .pane-resizer__line,.pane-resizer:active .pane-resizer__line,.pane-resizer:focus-visible .pane-resizer__line{background:var(--accent)}.pane-resizer:focus-visible{outline:none}body.is-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.main{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg);container-type:inline-size}.main--zoomed{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32}.sidebar{display:flex;flex-direction:column;min-height:0;background:var(--sidebar);border-right:1px solid var(--border)}.sidebar__head{display:flex;align-items:center;gap:9px;padding:14px 14px 14px 16px}.brand{font-family:var(--serif);font-size:16px;letter-spacing:-.01em;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dot{width:7px;height:7px;border-radius:50%;background:var(--danger);flex:none}.dot--on{background:var(--ok)}.sidebar__section{display:flex;align-items:center;gap:6px;width:100%;padding:14px 16px 6px 10px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left}.sidebar__section--btn:hover{color:var(--text-2)}.sidebar__section-name{flex:1;min-width:0}.sidebar__count{font-family:var(--mono);font-weight:500;letter-spacing:0;font-size:11px;color:var(--muted);opacity:.75}.sidebar__chev{flex:none;width:12px;height:12px;transition:transform .15s ease}.sidebar__chev--open{transform:rotate(90deg)}.fssearch--sidebar{margin:2px 12px 4px}.sidebar__tabs{display:flex;gap:2px;margin:2px 12px 8px;padding:3px;background:var(--surface-3);border-radius:9px}.sidebar__tab{flex:auto;min-width:0;display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 8px;border-radius:7px;font-size:11.5px;font-weight:500;color:var(--muted);transition:background .12s ease,color .12s ease}.sidebar__tab-label{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sidebar__tab:hover{color:var(--text-2)}.sidebar__tab.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.sidebar__tab-count{min-width:15px;padding:0 4px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-family:var(--mono);font-size:10px;line-height:15px;text-align:center}.sidebar__tab.is-active .sidebar__tab-count{background:var(--accent);color:var(--accent-fg)}@media(max-width:860px){.sidebar__tab{padding:9px 4px;font-size:12.5px}}.sidebar__scroll{overflow-y:auto;flex:1;min-height:0;padding-bottom:8px}.row{position:relative;display:flex;align-items:center;gap:2px;width:calc(100% - 16px);margin:1px 8px;padding:7px 8px 7px 10px;border-radius:8px}.row:hover{background:var(--surface-2)}.row__grip{flex:none;display:grid;place-items:center;width:20px;height:24px;border-radius:6px;color:var(--muted);opacity:0;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:opacity .12s ease,background .12s ease,color .12s ease}.row__grip svg{width:13px;height:13px}.row:hover .row__grip{opacity:1}.row__grip:hover{color:var(--text-2);background:var(--surface-3)}.row__grip:focus-visible{opacity:1}.row__grip:active{cursor:grabbing}@media(hover:none){.row__grip{opacity:1}}.row--dragging{opacity:.5}.row--drop-before:before,.row--drop-after:after{content:"";position:absolute;left:8px;right:8px;height:2px;border-radius:999px;background:var(--accent);pointer-events:none}.row--drop-before:before{top:-2px}.row--drop-after:after{bottom:-2px}.sidebar .row{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.row--active{background:var(--surface-2)}.row--active .row__title{color:var(--text);font-weight:560}.row--active{box-shadow:inset 2px 0 0 var(--accent-claude);transition:box-shadow .18s ease}.row--selected,.row--selected:hover{background:var(--select)}.row__stripe{position:absolute;left:4px;top:6px;bottom:6px;width:3px;border-radius:2px;background:var(--folder-color, var(--folder-default));pointer-events:none}.row__main{display:block;text-align:left;padding:0;min-width:0;flex:1}.row__edit{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:var(--muted);font-size:13px;opacity:0;transition:opacity .12s ease,background .12s ease}.row:hover .row__edit{opacity:1}.row__edit:hover{color:var(--text);background:var(--surface-3)}.row__edit:focus-visible{opacity:1}@media(hover:none){.row__edit{opacity:1}}.row__swatch{position:relative;flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:6px;opacity:0;cursor:pointer;transition:opacity .12s ease,background .12s ease}.row__swatch--set,.row:hover .row__swatch,.row__swatch:focus-within{opacity:1}.row__swatch:hover{background:var(--surface-3)}.row__swatch:focus-within{outline:2px solid var(--accent);outline-offset:-1px}.row__swatch-dot{width:14px;height:14px;border-radius:50%;background:var(--folder-default);box-shadow:inset 0 0 0 1px #0000002e}.row__swatch input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;border:0;opacity:0;cursor:pointer}@media(hover:none){.row__swatch{opacity:1}}.row__stop{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:var(--muted);opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.row__stop svg{width:13px;height:13px}.row:hover .row__stop{opacity:1}.row__stop:hover{color:var(--warn);background:var(--warn-soft)}.row__stop:focus-visible{opacity:1}@media(hover:none){.row__stop{opacity:1}}.row__restore{flex:none;padding:4px 10px;border-radius:999px;border:1px solid var(--border);color:var(--text-2);font-size:11.5px;white-space:nowrap}.row__restore:hover{background:var(--surface-2);color:var(--text);border-color:var(--surface-3)}@media(max-width:860px){.row__restore{min-height:40px;padding:0 12px;display:inline-flex;align-items:center}}.row__head{display:flex;align-items:center;gap:8px;min-width:0}.row__title{display:block;min-width:0;flex:1 1 auto;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row__pin{width:11px;height:11px;margin:0 4px -1px 0;color:var(--accent);opacity:.8}.row__provider{width:12px;height:auto;margin:0 5px -1px 0;flex:none}.row__project{flex:none;max-width:42%;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row__meta{display:block;font-size:12px;line-height:1.45;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row__state{display:inline-flex;align-items:center;gap:5px;transition:color .18s ease}.row__state-dot{width:6px;height:6px;flex:none;border-radius:50%;background:currentColor}.row__state--running{color:var(--accent-claude)}.row__state--starting{color:var(--accent-claude);opacity:.6}.row__state--reconnecting{color:var(--accent-claude);animation:state-breathe 1.9s ease-in-out infinite}.row__state--waiting{color:var(--warn)}.row__state--halted{color:var(--warn);opacity:.8}.row__state--ready{color:var(--ok)}.row__state--error{color:var(--danger)}.row__state--closed,.row__state--fresh{color:var(--muted)}.row__state--background{color:var(--accent-claude);animation:state-breathe 1.9s ease-in-out infinite}@keyframes state-breathe{0%,to{opacity:.72}50%{opacity:.32}}.row--antigravity.row--active{box-shadow:inset 2px 0 0 var(--g-blue)}.row--antigravity .row__state--running,.row--antigravity .row__state--starting,.row--antigravity .row__state--background,.row--antigravity .row__state--reconnecting{color:var(--g-blue)}.sidebar__foot{padding:12px 12px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.sidebar__foot-row{display:flex;gap:8px;flex-wrap:wrap}.sidebar__foot-row>.btn,.sidebar__foot-row>.newsession{flex:1;justify-content:center}.newsession{display:flex}.newsession__btn{flex:1;justify-content:center}.newsession--split .newsession__btn{border-radius:8px 0 0 8px}.newsession--split .newsession__choose{flex:none;width:36px;padding:0;justify-content:center;border-left:1px solid color-mix(in srgb,var(--accent-fg) 18%,var(--accent));border-radius:0 8px 8px 0}.newsession__choose:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(pointer:coarse){.newsession--split .newsession__choose{width:44px;min-height:44px}}.newsession__mark--codex{color:var(--codex-accent, #087f6d);background:var(--surface-2)}.row__provider--codex{color:var(--codex-accent, #087f6d)}:root[data-provider=codex]{--accent: #087f6d;--accent-soft: #087f6d18;--accent-hover: #066653;--accent-fg: #fff;--accent-line: #087f6d66;--select: #087f6d40;--ring: 0 0 0 3px #087f6d30}:root[data-theme=dark][data-provider=codex]{--accent: #6dd6ba;--accent-soft: #6dd6ba18;--accent-hover: #90e4ce;--accent-fg: #062c23;--accent-line: #6dd6ba66;--select: #6dd6ba40;--ring: 0 0 0 3px #6dd6ba30}:root{--codex-accent: #087f6d}:root[data-theme=dark]{--codex-accent: #6dd6ba}.row--codex.row--active{box-shadow:inset 2px 0 0 var(--codex-accent)}.row--codex .row__state--running,.row--codex .row__state--starting,.row--codex .row__state--background,.row--codex .row__state--reconnecting{color:var(--codex-accent)}.newsession__caret{width:9px;height:9px;flex:none;opacity:.75}.newsession__menu{position:fixed;z-index:45;width:248px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg)}.newsession__menu:focus{outline:none}.newsession__item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 9px;border-radius:8px;text-align:left}.newsession__item.is-cursor,.newsession__item:hover{background:var(--surface-2)}.newsession__mark{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--surface-2)}.newsession__mark svg{width:16px;height:16px}.newsession__mark--claude{background:var(--accent-soft)}.newsession__mark-logo{width:18px;height:auto}.newsession__text{display:flex;flex-direction:column;gap:1px;min-width:0}.newsession__label{font-size:13.5px;font-weight:560;color:var(--text)}.newsession__hint{font-size:11.5px;color:var(--muted)}@media(max-width:860px){.newsession__item{min-height:48px}}.rename{width:100%;background:var(--surface);color:var(--text);border:1px solid var(--accent);border-radius:7px;padding:3px 7px;font:inherit;box-shadow:var(--ring)}.rename:focus{outline:none}.rename--title{font-weight:560;max-width:420px}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);font-size:13px;font-weight:500;white-space:nowrap;text-decoration:none;transition:background .12s ease,border-color .12s ease,color .12s ease}.btn:hover{background:var(--surface-2);color:var(--text)}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-fg)}.btn--warn{background:var(--warn);border-color:var(--warn);color:var(--accent-fg);font-weight:600}.btn--warn:hover{filter:brightness(1.06);color:var(--accent-fg)}.btn--ok{background:var(--ok);border-color:var(--ok);color:var(--accent-fg);font-weight:600}.btn--ok:hover{filter:brightness(1.06);color:var(--accent-fg)}.btn--ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn--ghost:hover{background:var(--surface-2)}.btn:disabled{opacity:.4;cursor:default;background:var(--surface);border-color:var(--border);color:var(--text-2)}.btn--primary:disabled{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.btn--ok:disabled{background:var(--ok);border-color:var(--ok);color:var(--accent-fg)}.theme-btn{flex:none;display:grid;place-items:center;width:28px;height:28px;padding:0;border-radius:8px;color:var(--muted)}.theme-btn:hover{background:var(--surface-2);color:var(--text)}.theme-btn svg{width:16px;height:16px}.theme-btn[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.topbar{position:relative;display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--bg);flex:none;flex-wrap:wrap;min-width:0}:root[data-provider=antigravity] .topbar:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--g-blue) 0%,var(--g-blue) 25%,var(--g-red) 25%,var(--g-red) 50%,var(--g-yellow) 50%,var(--g-yellow) 75%,var(--g-green) 75%,var(--g-green) 100%)}.topbar__tools{display:flex;align-items:center;gap:10px;min-width:0;margin-left:auto;flex-wrap:wrap;justify-content:flex-end;row-gap:6px}@container (max-width: 780px){.topbar .clock{display:none}}@container (max-width: 660px){.topbar .badge--cost{display:none}}@container (max-width: 520px){.topbar .usage{display:none}}.topbar .select__trigger{max-width:min(40vw,190px)}.topbar__id{display:flex;flex-direction:column;min-width:0;flex:0 1 auto;line-height:1.3}.topbar__head{display:flex;align-items:center;gap:8px;min-width:0}.topbar__title{display:block;text-align:left;font-family:var(--serif);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:100%;padding:0}.topbar__title:hover:not(:disabled){color:var(--accent)}.topbar__title:disabled{cursor:default}.topbar__project{flex:0 1 auto;min-width:0;max-width:12em;padding-left:8px;border-left:1px solid var(--border);color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwd{position:relative;min-width:0;z-index:20}.cwd__toggle{display:flex;align-items:center;gap:3px;width:100%;min-width:0;padding:0;text-align:left;color:var(--muted)}.cwd__toggle:hover{color:var(--text-2)}.cwd__chev{flex:none;width:10px;height:10px;transition:transform .15s ease}.cwd__chev--open{transform:rotate(90deg)}.cwd__short{font-family:var(--mono);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwd__pop{position:absolute;top:calc(100% + 6px);left:0;display:flex;align-items:flex-end;gap:10px;width:max-content;min-width:min(320px,88vw);max-width:min(620px,88vw);padding:9px 10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:pop .12s ease-out}.cwd__full{flex:1;min-width:0;font-family:var(--mono);font-size:12px;line-height:1.5;color:var(--text-2);word-break:break-all;-webkit-user-select:text;user-select:text}.cwd__copy{flex:none;padding:3px 9px;font-size:12px;white-space:nowrap}.badge{font-size:12px;font-family:var(--mono);color:var(--muted);background:var(--surface);padding:4px 10px;border:1px solid var(--border);border-radius:999px;white-space:nowrap;flex:none;max-width:40vw;overflow:hidden;text-overflow:ellipsis}.badge--live{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.badge--wait{color:var(--warn);border-color:var(--warn-line);background:var(--warn-soft)}.menu-btn{display:none}.meters-refresh{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:8px;color:var(--muted);transition:background .12s ease,color .12s ease}.meters-refresh:hover:not(:disabled){background:var(--surface-2);color:var(--accent)}.meters-refresh:disabled{opacity:.4;cursor:default}.meters-refresh svg{width:14px;height:14px}.meters-refresh.is-busy svg{animation:meters-spin .8s linear infinite}@keyframes meters-spin{to{transform:rotate(360deg)}}.usage{display:grid;grid-template-columns:auto minmax(44px,72px) auto auto;align-items:center;gap:2px 7px;flex:none;padding:4px 11px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-size:11px;line-height:1.3;color:var(--muted);cursor:default}.usage__label{font-family:var(--mono);white-space:nowrap}.usage__track{height:4px;border-radius:999px;background:var(--surface-3);overflow:hidden}.usage__fill{display:block;height:100%;border-radius:999px;background:var(--accent);transition:width .3s ease,background .2s ease}.usage__fill--warn{background:var(--warn)}.usage__fill--over{background:var(--danger)}.usage__pct{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;color:var(--text-2);white-space:nowrap}.usage__reset{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;padding-left:2px}.contextbar{display:flex;align-items:center;gap:9px;flex:none;padding:7px 16px;border-bottom:1px solid var(--border);background:var(--bg);font-size:11px;line-height:1.3;color:var(--muted)}.contextbar__label{font-family:var(--mono);white-space:nowrap}.contextbar__track{flex:1 1 auto;min-width:0;height:4px;border-radius:999px;background:var(--surface-3);overflow:hidden}.contextbar__fill{display:block;height:100%;border-radius:999px;background:var(--accent);transition:width .3s ease,background .2s ease}.contextbar__fill--warn{background:var(--warn)}.contextbar__fill--over{background:var(--danger)}.contextbar__pct{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;color:var(--text-2);white-space:nowrap}.clock{display:flex;flex-direction:column;align-items:flex-end;flex:none;font-family:var(--mono);font-variant-numeric:tabular-nums;line-height:1.3;cursor:default}.clock__time{font-size:13px;color:var(--text-2)}.clock__date{font-size:10.5px;color:var(--muted);white-space:nowrap}.select{position:relative;flex:none}.select__trigger{display:flex;align-items:center;gap:6px;max-width:40vw;padding:4px 8px 4px 11px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-2);font-size:12px;font-family:var(--mono);transition:background .12s ease,border-color .12s ease}.select__trigger:hover{background:var(--surface-2);border-color:var(--surface-3)}.select--open .select__trigger{border-color:var(--accent-line);background:var(--accent-soft);color:var(--text)}.select__value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select__value--muted{color:var(--muted)}.select__chev{flex:none;width:12px;height:12px;color:var(--muted);transition:transform .15s ease}.select--open .select__chev{transform:rotate(180deg)}.select__menu{position:absolute;top:calc(100% + 6px);right:0;z-index:25;min-width:232px;max-width:min(340px,92vw);max-height:min(320px,60vh);overflow-y:auto;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:pop .12s ease-out}@keyframes pop{0%{opacity:0;transform:translateY(-4px)}}.select__option{display:grid;grid-template-columns:16px 1fr;gap:2px 8px;width:100%;padding:7px 9px;border-radius:7px;text-align:left}.select__option.is-cursor{background:var(--surface-2)}.select__option.is-on .select__label{color:var(--accent)}.select__check{grid-row:1;color:var(--accent);font-size:12px;line-height:1.5}.select__label{grid-row:1;font-family:var(--mono);font-size:12.5px;color:var(--text);overflow-wrap:anywhere}.select__hint{grid-row:2;grid-column:2;font-size:11.5px;line-height:1.4;color:var(--muted)}.select__suffix{flex:none;padding:1px 6px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px}.select__suffix--hot{background:var(--accent);color:var(--accent-fg);font-weight:560}.modelmenu{min-width:296px}.modelmenu__head{padding:4px 9px 6px;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.modelmenu__sep{height:1px;margin:5px 4px;background:var(--border-soft)}.modelmenu__row{display:flex;align-items:center;gap:10px;width:100%;padding:7px 9px;border-radius:7px;text-align:left}.modelmenu__row--btn:hover{background:var(--surface-2)}.modelmenu__label{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;font-size:12.5px;color:var(--text)}.modelmenu__desc{font-size:11.5px;line-height:1.35;color:var(--muted)}.modelmenu__levels{flex:none;display:flex;gap:2px;padding:2px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2)}.modelmenu__level{padding:3px 8px;border-radius:999px;font-family:var(--mono);font-size:11px;color:var(--muted);transition:background .12s ease,color .12s ease}.modelmenu__level:hover{color:var(--text)}.modelmenu__level.is-on{background:var(--accent);color:var(--accent-fg)}.switch{flex:none;position:relative;width:30px;height:17px;border-radius:999px;background:var(--surface-3);transition:background .14s ease}.switch.is-on{background:var(--accent)}.switch__knob{position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .14s ease}.switch.is-on .switch__knob{transform:translate(13px)}.switch:disabled{opacity:.5;cursor:not-allowed}.transcript{flex:1;min-height:0;overflow-y:auto;padding:24px 16px 8px}.stream{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.msg--user{align-self:flex-end;max-width:82%;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 4px var(--radius-lg);padding:10px 15px;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}.msg--user__images{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.msg--user__image{width:88px;height:88px;object-fit:cover;border-radius:10px;border:1px solid var(--border);background:var(--surface)}.msg--user--editing{align-self:stretch;max-width:100%}.msg--user__edit{display:flex;flex-direction:column;gap:8px}.msg--user__edit-field{width:100%;resize:none;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:8px 11px;font:inherit;line-height:1.55;min-height:38px;max-height:320px;overflow-y:auto}.msg--user__edit-field:focus{outline:none;border-color:var(--accent-line);box-shadow:var(--ring)}.msg--user__edit-actions{display:flex;justify-content:flex-end;gap:8px}.msg--assistant{color:var(--text);line-height:1.72;overflow-wrap:anywhere}.markdown-preview.msg--assistant__body{padding:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit}.copybtn{flex:none;padding:3px 9px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--muted);font-size:11.5px;line-height:1.45;white-space:nowrap;transition:opacity .12s ease,background .12s ease,color .12s ease,border-color .12s ease}.copybtn:hover{background:var(--surface-2);color:var(--text)}.copybtn--done{color:var(--ok);border-color:var(--ok)}.codeblock{position:relative}.codeblock__copy{position:absolute;top:8px;right:8px;z-index:1;opacity:0}.codeblock:hover .codeblock__copy,.codeblock__copy:focus-visible{opacity:1}.markdown-preview .codeblock{margin:1em 0}.markdown-preview .codeblock>pre{margin:0}.markdown-preview.msg--assistant__body>:last-child{margin-bottom:0}.msg--assistant__foot{display:flex;justify-content:flex-end;margin-top:4px}.msg--assistant__foot .copybtn{opacity:0}.msg--assistant:hover .msg--assistant__foot .copybtn,.msg--assistant__foot .copybtn:focus-visible{opacity:1}@media(hover:none){.codeblock{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.codeblock>pre{width:100%}.codeblock__copy{position:static;order:-1;opacity:1}.msg--assistant__foot .copybtn{opacity:1}}.caret{display:inline-block;width:7px;height:1.05em;vertical-align:text-bottom;background:var(--accent);border-radius:1px;animation:blink 1s steps(2,start) infinite}@keyframes blink{50%{opacity:0}}.thinking{border-left:2px solid var(--border);padding-left:14px;color:var(--muted);font-size:13px;font-style:italic;white-space:pre-wrap}.transcript__more{align-self:center;display:inline-flex;align-items:center;padding:6px 16px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:12.5px}.transcript__more:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:var(--surface-3)}.transcript__more:disabled{opacity:.7;cursor:default}.transcript__divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.transcript__divider:before,.transcript__divider:after{content:"";flex:1;height:1px;background:var(--border-soft)}.work{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.work__dots{display:flex;gap:4px}.work__dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:work-bounce 1.15s ease-in-out infinite}.work__dot:nth-child(2){animation-delay:.16s}.work__dot:nth-child(3){animation-delay:.32s}:root[data-provider=antigravity] .work:not(.work--wait) .work__dot:nth-child(1){background:var(--g-blue)}:root[data-provider=antigravity] .work:not(.work--wait) .work__dot:nth-child(2){background:var(--g-red)}:root[data-provider=antigravity] .work:not(.work--wait) .work__dot:nth-child(3){background:var(--g-yellow)}@keyframes work-bounce{0%,75%,to{transform:translateY(0);opacity:.3}35%{transform:translateY(-4px);opacity:1}}.work__label{background:linear-gradient(90deg,var(--muted) 25%,var(--text) 50%,var(--muted) 75%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:work-shimmer 2.1s linear infinite}@keyframes work-shimmer{0%{background-position:110% 0}to{background-position:-110% 0}}.work__time{font-family:var(--mono);font-size:12px}.work--wait .work__dot{background:var(--warn);animation:none;opacity:1}.work--wait .work__label{color:var(--warn);background:none;-webkit-background-clip:border-box;background-clip:border-box;animation:none}.badge--live{animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.work__dot,.work__label,.badge--live,.caret,.select__menu,.modal,.modal-backdrop,.oplog,.cwd__pop,.micbtn.is-on,.row__state--reconnecting,.row__state--background,.tasks__dot,.relink,.relink__dot,.mediaview__progress-fill{animation:none}.row__state--reconnecting,.row__state--background{opacity:.6}.work__dot{opacity:1}.work__label{color:var(--text);background:none}.mediaview__progress-fill{width:100%}.oplog--leaving,.usage__fill,.sidebar__chev,.cwd__chev{transition:none}.meters-refresh.is-busy svg,.sessionmenu__refresh.is-busy svg,.pane-btn--handoff.is-busy svg{animation:none}.pane-btn--handoff.is-holding .pane-btn__hold,.sessionmenu__handoff.is-holding .sessionmenu__handoff-hold{animation:none}}.tool{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.tool--wait{border-color:var(--warn-line)}.tool--error{border-color:var(--danger)}.tool__head{display:flex;align-items:center;gap:9px;width:100%;padding:9px 12px;text-align:left}.tool__head:hover{background:var(--surface-2)}.tool__name{font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--accent);flex:none}.tool__arg{font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.tool__status{font-size:12px;color:var(--muted);flex:none}.tool__body{border-top:1px solid var(--border-soft);padding:11px 12px;background:var(--bg)}.tool__questions{display:flex;flex-direction:column;gap:12px}.tool__question+.tool__question{padding-top:12px;border-top:1px solid var(--border-soft)}.tool__question-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 8px;margin-bottom:5px}.tool__question-text{font-size:13px;line-height:1.45;color:var(--text)}.tool__question-answer{font-size:12.5px}.tool__answer-value{color:var(--text-2)}.tool__answer-value:before{content:"→ ";color:var(--accent);font-weight:600}.tool__answer-empty{color:var(--muted);font-style:italic}pre.code{margin:0;font-family:var(--mono);font-size:12.5px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;max-height:340px;overflow-y:auto;color:var(--code-fg)}.diff{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.diff__head{display:flex;align-items:center;gap:10px;padding:7px 10px;background:var(--surface-2);border-bottom:1px solid var(--border-soft);font-family:var(--mono);font-size:12px}.diff__path{min-width:0;flex:1;overflow-wrap:anywhere;color:var(--text-2)}.diff__stat{flex:none;display:flex;gap:8px;font-weight:600}.diff__stat--add{color:var(--ok)}.diff__stat--del{color:var(--danger)}.diff__note{padding:5px 10px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--border-soft)}.diff__body{max-height:min(340px,46vh);overflow-y:auto;padding:4px 0;background:var(--bg)}.diff__row{display:flex;align-items:flex-start;gap:6px;padding:0 10px 0 6px;font-family:var(--mono);font-size:12.5px;line-height:1.55;color:var(--code-fg)}.diff__mark{flex:none;width:10px;text-align:center;color:var(--muted);-webkit-user-select:none;user-select:none}.diff__text{min-width:0;flex:1;white-space:pre-wrap;overflow-wrap:anywhere;-moz-tab-size:2;tab-size:2}.diff__row--add{background:var(--add-bg);color:var(--add-fg)}.diff__row--add .diff__mark{color:var(--ok)}.diff__row--del{background:var(--del-bg);color:var(--del-fg)}.diff__row--del .diff__mark{color:var(--danger)}.diff__row--gap{color:var(--muted);font-size:12px;padding-top:2px;padding-bottom:2px}.result-line{display:flex;gap:14px;font-size:12px;color:var(--muted);font-family:var(--mono);border-top:1px dashed var(--border);padding-top:10px}.notice{font-size:13px;color:var(--muted);border-left:2px solid var(--border);padding-left:14px}.notice--error{color:var(--danger);border-left-color:var(--danger)}.empty{color:var(--muted);text-align:center;padding:64px 16px;max-width:460px;margin:0 auto;font-family:var(--serif);font-size:16px;line-height:1.6}.relink{flex:none;width:min(760px,100% - 32px);margin:0 auto 8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 9px 8px 12px;border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-size:12.5px;animation:relink-in .18s ease-out}.relink__msg{flex:1;min-width:210px;display:flex;align-items:center;gap:10px;line-height:1.45}.relink .btn{flex:none}.relink__dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--accent);animation:state-breathe 1.9s ease-in-out infinite}.tasks{flex:none;width:min(760px,100% - 32px);margin:0 auto 8px;border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-size:12.5px}.tasks__toggle{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px 8px 12px;background:none;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--radius)}.tasks__toggle:hover{color:var(--text)}.tasks__dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--accent);animation:state-breathe 1.9s ease-in-out infinite}.tasks__summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks__chev{width:14px;height:14px;flex:none;color:var(--muted);transition:transform .15s ease}.tasks.is-open .tasks__chev{transform:rotate(180deg)}.tasks__list{list-style:none;margin:0;padding:0;max-height:min(320px,40vh);overflow-y:auto;border-top:1px solid var(--border-soft)}.task{display:flex;align-items:flex-start;gap:10px;padding:9px 10px 9px 12px}.task+.task{border-top:1px solid var(--border-soft)}.task__main{flex:1;min-width:0;display:grid;gap:2px}.task__head{display:flex;align-items:center;gap:8px}.task__kind{font-family:var(--mono);font-size:12px;color:var(--accent)}.task__bg{padding:0 6px;border:1px solid var(--border);border-radius:999px;font-size:11px;color:var(--muted)}.task__time{margin-left:auto;font-family:var(--mono);font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.task__desc,.task__activity{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task__desc{color:var(--text)}.task__activity{color:var(--muted)}.task__stats{font-size:11.5px;color:var(--muted)}.task__stop{flex:none}.task.is-stopping{opacity:.6}.relink--error{border-left-color:var(--danger)}.relink--error .relink__dot{background:var(--danger);animation:none}@keyframes relink-in{0%{opacity:0;transform:translateY(4px)}}.netguard{flex:none;display:flex;align-items:flex-start;gap:10px;padding:9px 16px;border-bottom:1px solid var(--danger);border-left:3px solid var(--danger);background:var(--danger-soft);color:var(--text);font-size:12.5px;line-height:1.5}.netguard__icon{flex:none;width:16px;height:16px;margin-top:2px;color:var(--danger)}.netguard__copy{display:grid;gap:1px;min-width:0}.netguard__reason{font-weight:600;overflow-wrap:anywhere}.netguard__note{color:var(--text-2)}.handoff{flex:none;width:min(760px,100% - 32px);margin:0 auto 8px;display:flex;flex-direction:column;gap:9px;padding:10px 12px;border:1px solid var(--border);border-left:2px solid var(--warn);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-size:12.5px;animation:relink-in .18s ease-out}.handoff__msg{display:flex;align-items:flex-start;gap:10px;line-height:1.5}.handoff__dot{width:6px;height:6px;flex:none;margin-top:5px;border-radius:50%;background:var(--warn)}.handoff__actions{display:flex;gap:8px;flex-wrap:wrap}.handoff--continued{border-left-color:var(--border);color:var(--muted)}.handoff--continued .handoff__dot{background:var(--muted)}.handoff__continued{color:var(--text-2)}.limittoasts{position:fixed;top:14px;right:14px;z-index:46;display:flex;flex-direction:column;gap:8px;width:min(360px,calc(100vw - 28px));pointer-events:none}.limittoast{pointer-events:auto;display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid var(--warn-line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-lg);color:var(--text-2);font-size:13px;line-height:1.5;animation:relink-in .18s ease-out}.limittoast__dot{width:6px;height:6px;flex:none;margin-top:6px;border-radius:50%;background:var(--warn)}.limittoast__body{flex:1}.limittoast__dismiss{flex:none;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--muted);font-size:12px}.limittoast__dismiss:hover{background:var(--surface-3);color:var(--text)}.composer{flex:none;background:var(--bg);padding:8px 16px calc(14px + env(safe-area-inset-bottom))}.composer__inner{max-width:760px;margin:0 auto;position:relative}.composer__field{display:flex;gap:8px;align-items:flex-end;padding:8px 8px 8px 4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color .14s ease,box-shadow .14s ease}.composer__field:focus-within{border-color:var(--accent-line);box-shadow:var(--ring)}.composer textarea{flex:1;resize:none;background:none;color:var(--text);border:none;padding:7px 8px 7px 12px;font:inherit;line-height:1.55;max-height:190px;min-height:38px}.composer textarea:focus{outline:none}.composer textarea::placeholder{color:var(--muted)}.composer .btn{flex:none;border-radius:999px;padding:7px 16px}.sendbtn__icon{display:none;flex:none}.addbtn{flex:none;display:grid;place-items:center;width:30px;height:30px;margin-left:4px;border-radius:999px;color:var(--muted);transition:background .12s ease,color .12s ease}.addbtn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.addbtn:disabled{opacity:.4}.addbtn svg{width:16px;height:16px}.composer__fileinput{display:none}.attachbtn{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:999px;color:var(--muted);transition:background .12s ease,color .12s ease}.attachbtn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.attachbtn:disabled{opacity:.4}.attachbtn svg{width:16px;height:16px}.composer__attachments{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px 4px}.composer__thumb{position:relative;flex:none;width:60px;height:60px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:var(--surface-2)}.composer__thumb img{display:block;width:100%;height:100%;object-fit:cover}.composer__thumb-remove{position:absolute;top:3px;right:3px;display:grid;place-items:center;width:18px;height:18px;border-radius:999px;background:#14131299;color:#fdfcfa;transition:background .12s ease}.composer__thumb-remove:hover{background:#141312d1}.composer__thumb-remove svg{width:9px;height:9px}.micbtn{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:999px;color:var(--muted);transition:background .12s ease,color .12s ease}.micbtn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.micbtn:disabled{opacity:.4}.micbtn svg{width:16px;height:16px}.micbtn.is-on{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent);animation:mic-pulse 1.6s ease-in-out infinite}.micbtn.is-on:hover:not(:disabled){color:var(--danger);background:color-mix(in srgb,var(--danger) 22%,transparent)}@keyframes mic-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--danger) 40%,transparent)}70%{box-shadow:0 0 0 5px transparent}}.composer .oplog{margin:0 0 8px}.cmdmenu{position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:10;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:min(320px,46vh);overflow-y:auto;overflow-x:hidden;animation:pop .12s ease-out}.cmdmenu__row{display:flex;align-items:baseline;gap:8px;width:100%;padding:7px 10px;border-radius:7px;text-align:left}.cmdmenu__row.is-on{background:var(--surface-2)}.cmdmenu__name{font-family:var(--mono);font-size:13px;color:var(--accent);flex:none}.cmdmenu__hint{font-family:var(--mono);font-size:12px;color:var(--warn);flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmdmenu__desc{font-size:12px;color:var(--muted);min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmdmenu__empty{padding:9px 10px;font-size:12px;color:var(--muted)}.ctxmenu{position:fixed;z-index:45;min-width:224px;max-width:min(320px,92vw);padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:pop .12s ease-out}.ctxmenu:focus{outline:none}.ctxmenu__note{padding:7px 9px 10px;margin-bottom:3px;border-bottom:1px solid var(--border-soft);font-size:12px;line-height:1.45;color:var(--muted)}.ctxmenu__item{display:flex;align-items:baseline;gap:8px;width:100%;padding:8px 9px;border-radius:7px;text-align:left;color:var(--text);font-size:13px}.ctxmenu__item.is-cursor{background:var(--surface-2)}.ctxmenu__item[aria-disabled=true]{color:var(--muted);opacity:.5;cursor:default;pointer-events:none}.ctxmenu__label{flex:1;min-width:0}.ctxmenu__hint{font-size:11.5px;color:var(--muted)}@media(max-width:860px){.ctxmenu__item{min-height:40px}}@media(hover:none){.ctxmenu__item{min-height:40px}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:16px;background:#1f1e1d6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade .14s ease-out}.modal-backdrop--sheet{align-items:flex-end;overflow-y:auto}.modal-backdrop[hidden]{display:none}@keyframes fade{0%{opacity:0}}.modal{width:100%;max-width:460px;display:flex;flex-direction:column;max-height:calc(100vh - 32px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:rise .16s cubic-bezier(.2,.8,.3,1)}@keyframes rise{0%{opacity:0;transform:translateY(10px) scale(.985)}}.modal__head{display:flex;align-items:center;gap:10px;padding:16px 16px 0}.modal__title{margin:0;flex:1;min-width:0;font-family:var(--serif);font-size:17px;font-weight:500}.modal__close{flex:none;display:grid;place-items:center;width:28px;height:28px;margin:-4px -4px 0 0;border-radius:8px;color:var(--muted);font-size:16px;line-height:1}.modal__close:hover{background:var(--surface-2);color:var(--text)}.modal__body{padding:10px 16px 16px;flex:1 1 auto;min-height:0;overflow-y:auto}.modal__text{margin:0 0 12px;font-size:13px;color:var(--muted)}.modal__text--dim{color:var(--muted);opacity:.75}.modal__error{margin:10px 0 0;padding:8px 10px;border:1px solid var(--warn);border-radius:8px;background:var(--surface-2);font-size:12.5px;color:var(--text)}.modal__actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;background:var(--surface-2);border-top:1px solid var(--border-soft)}.modal__actions .btn{padding:8px 16px}.modal__actions .btn:not(.btn--primary){background:var(--surface)}.modal__actions .btn.btn--warn{background:var(--warn);border-color:var(--warn)}.modal--sheet{max-width:480px;max-height:none;border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:visible;margin-bottom:env(safe-area-inset-bottom)}.modal--sheet .modal__body{flex:none;overflow:visible}.sessionmenu__row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 2px;border-bottom:1px solid var(--border-soft)}.sessionmenu__row:last-child{border-bottom:none}.sessionmenu__label{min-width:0;font-size:13.5px;color:var(--text-2)}.sessionmenu__row .select,.sessionmenu__row .cwd{flex:1;min-width:0}.sessionmenu__row .select__trigger{max-width:none;width:100%}.sessionmenu__row .cwd__pop{left:auto;right:0}.sessionmenu__rename{width:100%;margin-top:4px;padding:11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:13.5px;font-weight:520;text-align:center}.sessionmenu__rename:hover{background:var(--surface-3)}.sessionmenu__handoff{position:relative;overflow:hidden;width:100%;margin-top:8px;padding:11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:13.5px;font-weight:520;text-align:center;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.sessionmenu__handoff:hover:not(:disabled){background:var(--surface-3)}.sessionmenu__handoff:disabled{opacity:.6;cursor:default}.sessionmenu__handoff.is-holding{background:var(--surface-3)}.sessionmenu__handoff-hold{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent-soft);transform:scaleY(0);transform-origin:bottom;pointer-events:none}.sessionmenu__handoff.is-holding .sessionmenu__handoff-hold{animation:pane-btn-hold-fill var(--hold-ms, .5s) linear forwards}.sessionmenu__handoff-text{position:relative;z-index:1;display:flex;flex-direction:column;line-height:1.35}.sessionmenu__handoff-hint{font-size:11.5px;font-weight:400;color:var(--muted)}.sessionmenu__stop{width:100%;margin-top:8px;padding:11px;border:1px solid var(--warn-line);border-radius:var(--radius);background:var(--warn-soft);color:var(--warn);font-size:13.5px;font-weight:520;text-align:center}.sessionmenu__stop:hover{background:var(--warn);color:var(--accent-fg)}.sessionmenu__refresh{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;margin-top:4px;padding:8px 11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:13.5px;font-weight:520;text-align:center}.sessionmenu__refresh:hover:not(:disabled){background:var(--surface-3)}.sessionmenu__refresh:disabled{opacity:.6;cursor:default}.sessionmenu__refresh svg{flex:none;width:15px;height:15px}.sessionmenu__refresh.is-busy svg{animation:meters-spin .8s linear infinite}.sessionmenu__refresh-text{display:flex;flex-direction:column;line-height:1.35}.sessionmenu__refresh-time{font-size:11.5px;font-weight:400;color:var(--muted)}.field{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-bottom:6px}.input{width:100%;padding:9px 12px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:9px;font:inherit;transition:border-color .12s ease,box-shadow .12s ease}.input:focus{outline:none;border-color:var(--accent-line);box-shadow:var(--ring)}.input::placeholder{color:var(--muted)}.input--mono{font-family:var(--mono);font-size:13px}.finds{list-style:none;margin:12px 0 0;padding:0;max-height:240px;overflow-y:auto;border:1px solid var(--border-soft);border-radius:10px}.finds li+li{border-top:1px solid var(--border-soft)}.find{display:grid;grid-template-columns:1fr auto;gap:2px 10px;width:100%;padding:8px 10px;background:none;border:none;border-radius:0;text-align:left;cursor:pointer;color:var(--text);font:inherit}.find:hover:not(:disabled){background:var(--surface-2)}.find:disabled{cursor:default;opacity:.55}.find__name{font-size:13px;font-weight:500}.find__path{grid-column:1;font-family:var(--mono);font-size:11.5px;color:var(--muted);overflow-wrap:anywhere}.find__note{grid-column:2;grid-row:1 / span 2;align-self:center;max-width:45%;font-size:11.5px;color:var(--muted);text-align:right}.finds__agent{margin-top:12px;height:260px;border:1px solid var(--border-soft);border-radius:10px;overflow:hidden}.finds__agent .transcript{height:100%}.newproj__roots{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.newproj__root{padding:4px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--muted);font-family:var(--mono);font-size:11.5px;cursor:pointer}.newproj__root:hover{color:var(--text)}.newproj__root.is-on{border-color:var(--accent-line);color:var(--text)}.newproj__field{margin-top:14px}.newproj__preview{margin:8px 0 0;font-family:var(--mono);font-size:12px;color:var(--muted);overflow-wrap:anywhere}.newproj__opts{margin-top:14px;border:1px solid var(--border-soft);border-radius:10px;overflow:hidden}.newproj__opt+.newproj__opt{border-top:1px solid var(--border-soft)}.newproj__opt{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;background:none;border:none;text-align:left;cursor:pointer;color:var(--text);font:inherit;font-size:13px}.newproj__opt:hover{background:var(--surface-2)}.newproj__optlabel{flex:1;display:flex;flex-direction:column;gap:1px}.newproj__optdesc{font-size:11.5px;color:var(--muted)}.newproj__warnings{margin:0;padding:0;list-style:none}.newproj__warnings li+li{margin-top:4px}.modal--wide{max-width:620px}.tabs{display:flex;gap:4px;margin-bottom:14px;padding-bottom:2px;border-bottom:1px solid var(--border-soft)}.tabs__tab{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:8px 8px 0 0;color:var(--muted);font-size:13px;font-weight:500;position:relative}.tabs__tab:hover,.tabs__tab.is-on{color:var(--text)}.tabs__tab.is-on:after{content:"";position:absolute;left:8px;right:8px;bottom:-3px;height:2px;border-radius:2px;background:var(--accent)}.tabs__count{padding:1px 6px;border-radius:999px;background:var(--surface-2);font-size:11px;font-variant-numeric:tabular-nums}.extlist{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}.extlist__row{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.extlist__head{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:4px}.extlist__name{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--text);margin-right:2px}.extlist__meta{font-family:var(--mono);font-size:11.5px;color:var(--muted);overflow-wrap:anywhere}.extlist__error{margin-top:3px;font-size:12px;color:var(--danger);overflow-wrap:anywhere}.extlist__actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.chip{padding:2px 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:11px;white-space:nowrap}.chip--ok{color:var(--ok);border-color:var(--ok)}.chip--bad{color:var(--danger);border-color:var(--danger)}.chip--warn{color:var(--warn);border-color:var(--warn-line);background:var(--warn-soft)}.chip--mute{opacity:.75}.extauth{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}.extauth__go{text-decoration:none}.extauth__hint{margin:0;font-size:12px;line-height:1.45;color:var(--muted)}.extauth__paste{width:100%;display:flex;flex-direction:column;gap:6px}.extauth__paste .input{background:var(--surface);min-width:0}.extauth__label{font-size:12px;font-weight:600;color:var(--text)}.extauth__more{width:100%}.extauth__more>summary{display:inline-block;cursor:pointer;font-size:12px;color:var(--muted);text-decoration:underline dotted;text-underline-offset:3px}.extauth__more>summary:hover{color:var(--text)}.extauth__more>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.extauth__more[open]>summary{margin-bottom:8px}.extauth--done{flex-direction:row;align-items:center;gap:7px;font-size:12px;color:var(--ok)}.extauth__tick{font-weight:700}.extauth__wait{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.extauth__dot{width:7px;height:7px;border-radius:50%;background:var(--warn);animation:extauth-pulse 1.4s ease-in-out infinite}@keyframes extauth-pulse{50%{opacity:.25}}@media(prefers-reduced-motion:reduce){.extauth__dot{animation:none}}.btn--sm{padding:4px 9px;font-size:12px}.btn--danger{color:var(--danger)}.btn--danger:hover{background:var(--danger-soft);color:var(--danger)}.extform{margin-bottom:12px}.extform .field{margin-top:10px}.extform .field:first-child{margin-top:0}.extform--card{padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.extform--card .input{background:var(--surface)}.extbar{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.extform--card .extbar{margin:12px 0 0}.extbar .btn{padding:8px 16px}.extform__row{display:flex;gap:8px;align-items:center}.extform__row .input{flex:1;min-width:0}.extform__row .btn{flex:none}.input--area{min-height:62px;resize:vertical}.oplog{margin:12px 0;padding:9px 11px;border-radius:9px;border:1px solid var(--border);background:var(--surface-2);font-size:12.5px;white-space:pre-wrap;overflow-wrap:anywhere;animation:oplog-in .18s ease-out}.oplog:last-child{margin-bottom:0}.oplog--ok{border-color:var(--ok);color:var(--text-2)}.oplog--bad{border-color:var(--danger);color:var(--danger)}.oplog__link{display:block;margin-top:3px;color:var(--accent);font-family:var(--mono);font-size:12px;overflow-wrap:anywhere}.oplog__link:hover{text-decoration:underline}.oplog--dismissible{position:relative;padding-right:28px}.oplog__dismiss{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:18px;height:18px;border-radius:5px;color:var(--muted);font-size:10.5px;line-height:1}.oplog__dismiss:hover{background:var(--surface-3);color:var(--text)}.oplog--leaving{opacity:0;transform:translateY(-4px);transition:opacity .22s ease,transform .22s ease;pointer-events:none}@keyframes oplog-in{0%{opacity:0;transform:translateY(5px)}}.catalog__filters{display:flex;gap:8px;margin-bottom:12px}.catalog__filters .input{flex:1;min-width:0}.catalog__desc{margin:2px 0 4px;font-size:12.5px;line-height:1.5;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.linkish{padding:0;color:var(--accent);text-decoration:underline;text-underline-offset:2px}.account-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-size:13px;text-align:left}.account-btn:hover{background:var(--surface-2)}.account-btn__id{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account{padding:12px;margin-bottom:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.account__id{font-family:var(--mono);font-size:13.5px;font-weight:600;overflow-wrap:anywhere}.account__chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 4px}.account__flow .field{margin-top:12px}.account__link{display:block;padding:9px 11px;border:1px solid var(--accent-line);border-radius:9px;background:var(--accent-soft);color:var(--accent);font-family:var(--mono);font-size:12px;line-height:1.5;overflow-wrap:anywhere}.account__step{margin:8px 0 0;color:var(--muted);font-size:12.5px;line-height:1.55}.account__go{justify-content:center;width:100%;margin-top:10px;padding:11px 16px;font-size:14px}.account__raw{display:flex;align-items:center;gap:8px;margin-top:8px}.account__rawurl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-family:var(--mono);font-size:11.5px}.account__fallback{margin-top:10px;font-size:12.5px}.account__fallback summary{cursor:pointer;color:var(--muted)}.account__fallback summary:hover{color:var(--text-2)}.account__fallback .account__link{margin-top:8px}.account__coderow{flex-wrap:wrap}.account__coderow .input{flex:1 1 100%}.account__coderow .btn{flex:1 1 0;justify-content:center;min-height:40px}.account__note--code{margin:8px 0 0}.account__log{margin:12px 0;padding:9px 11px;max-height:180px;overflow:auto;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--muted);font-family:var(--mono);font-size:11.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.account__warn{margin:0 0 12px;padding:9px 11px;border:1px solid var(--warn-line);border-radius:9px;background:var(--warn-soft);color:var(--warn);font-size:12.5px;line-height:1.5}.account__note{margin:0 0 6px;color:var(--muted);font-size:12.5px;line-height:1.5}.account__bar{flex-wrap:nowrap}.account__bar .btn{padding:8px 13px}.account__bar .account__relink{margin-inline-end:auto}@media(max-width:459.98px){.account__bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.account__bar .account__relink{margin-inline-end:0}.account__bar>.account__relink,.account__bar>.btn--warn~.btn{grid-column:1 / -1}.account__bar .btn{justify-content:center}}.account__relink svg{flex:none;width:15px;height:15px;color:var(--muted)}.account__relink:hover:not(:disabled) svg{color:var(--warn)}.sheet{width:100%;max-width:560px;background:var(--surface);border:1px solid var(--warn-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:env(safe-area-inset-bottom);animation:rise .16s cubic-bezier(.2,.8,.3,1)}.sheet__head{display:flex;align-items:center;gap:8px;padding:13px 16px;background:var(--warn-soft);border-bottom:1px solid var(--border-soft);font-weight:600;color:var(--text)}.sheet__body{padding:14px 16px}.sheet__tool{font-family:var(--mono);font-size:13px;color:var(--warn);margin-bottom:8px}.sheet__reason{margin:0 0 10px;font-size:13px;line-height:1.45;color:var(--text-2)}.sheet__actions{display:flex;gap:10px;padding:0 16px 16px}.sheet__actions .btn{flex:1;justify-content:center;padding:11px}.qsheet{width:100%;max-width:620px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--accent-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:env(safe-area-inset-bottom);animation:rise .16s cubic-bezier(.2,.8,.3,1)}.qsheet__head{display:flex;align-items:center;gap:10px;padding:13px 16px;background:var(--accent-soft);border-bottom:1px solid var(--border-soft);font-weight:600;color:var(--text);flex:none}.qsheet__head-icon{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:999px;border:1.5px solid var(--accent);color:var(--accent);font-family:var(--serif);font-size:13px;font-weight:700}.qsheet__body{padding:14px 16px 6px;overflow-y:auto;flex:1}.qsheet__reason{margin:0 0 12px;font-size:13px;line-height:1.45;color:var(--text-2)}.qsheet__question+.qsheet__question{margin-top:20px;padding-top:18px;border-top:1px solid var(--border-soft)}.qsheet__question{margin-bottom:10px}.qsheet__qhead{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 9px;margin-bottom:10px}.qsheet__qtext{font-family:var(--serif);font-size:15px;font-weight:500;line-height:1.4;color:var(--text)}.chip--accent{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.qsheet__options{display:flex;flex-direction:column;gap:6px}.qsheet__option{display:flex;align-items:flex-start;gap:10px;width:100%;padding:9px 11px;text-align:left;border:1px solid var(--border);border-radius:10px;background:var(--surface);transition:border-color .12s ease,background .12s ease}.qsheet__option:hover{background:var(--surface-2)}.qsheet__option:focus-visible{outline:none;box-shadow:var(--ring)}.qsheet__option.is-selected{border-color:var(--accent);background:var(--accent-soft)}.qsheet__opt-mark{position:relative;flex:none;margin-top:2px;width:15px;height:15px;border:1.5px solid var(--border);background:var(--surface)}.qsheet__options--radio .qsheet__opt-mark{border-radius:999px}.qsheet__options:not(.qsheet__options--radio) .qsheet__opt-mark{border-radius:5px}.qsheet__option.is-selected .qsheet__opt-mark{border-color:var(--accent);background:var(--accent)}.qsheet__options--radio .qsheet__option.is-selected .qsheet__opt-mark{box-shadow:inset 0 0 0 3px var(--surface)}.qsheet__options:not(.qsheet__options--radio) .qsheet__option.is-selected .qsheet__opt-mark:after{content:"✓";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:10px;line-height:1;color:var(--accent-fg)}.qsheet__opt-body{min-width:0}.qsheet__opt-label{display:block;font-size:13.5px;font-weight:560;color:var(--text)}.qsheet__opt-desc{display:block;margin-top:2px;font-size:12.5px;line-height:1.4;color:var(--muted)}.qsheet__other{display:flex;flex-direction:column}.qsheet__other-input{margin-top:6px;width:100%;padding:8px 10px;border:1px solid var(--accent-line);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:13px}.qsheet__other-input:focus{outline:none;box-shadow:var(--ring)}.qsheet__other-input::placeholder{color:var(--muted)}.qsheet__preview{margin:10px 0 0;padding:10px 12px;border:1px solid var(--border-soft);border-radius:8px;background:var(--bg);color:var(--code-fg);font-family:var(--mono);font-size:12px;line-height:1.5;white-space:pre;overflow:auto;max-height:220px}.qsheet__actions{display:flex;gap:10px;padding:12px 16px;border-top:1px solid var(--border-soft);flex:none}.qsheet__actions .btn{flex:1;justify-content:center;padding:11px}.plansheet{width:100%;max-width:720px;min-height:min(56vh,460px);max-height:calc(100vh - 24px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--ok-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:env(safe-area-inset-bottom);animation:rise .16s cubic-bezier(.2,.8,.3,1)}.plansheet__head{display:flex;align-items:center;gap:10px;padding:13px 16px;background:var(--ok-soft);border-bottom:1px solid var(--border-soft);font-weight:600;color:var(--text);flex:none}.plansheet__head-icon{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:999px;border:1.5px solid var(--ok);color:var(--ok)}.plansheet__head-icon svg{width:13px;height:13px}.plansheet__head-text{flex:1;min-width:0}.plansheet__viewtoggle{display:flex;flex:none;gap:2px;padding:2px;background:var(--surface);border-radius:var(--radius)}.plansheet__viewtoggle .btn{border:none;background:transparent;color:var(--muted)}.plansheet__viewtoggle .btn:hover{background:var(--surface-3);color:var(--text-2)}.plansheet__viewtoggle .btn.is-on{background:var(--surface-2);color:var(--text);box-shadow:var(--shadow-sm)}.plansheet__body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.plansheet__reason{margin:12px 16px 0;font-size:13px;line-height:1.45;color:var(--text-2);flex:none}.plansheet__content{flex:1;min-height:0;display:flex;overflow:hidden}.markdown-preview.plansheet__preview{padding:22px 26px}.plansheet__source{flex:1;min-height:0;width:100%;resize:none;border:none;padding:22px 26px;background:var(--bg);color:var(--text);font:inherit;font-family:var(--mono);font-size:13px;line-height:1.65;-moz-tab-size:2;tab-size:2}.plansheet__source:focus{outline:none}.plansheet__source::placeholder{color:var(--muted)}.plansheet__actions{display:flex;gap:10px;padding:12px 16px;border-top:1px solid var(--border-soft);flex:none}.plansheet__actions .btn{flex:1;justify-content:center;padding:11px}.sheet__head-text,.qsheet__head-text{flex:1;min-width:0}.decision-collapse{flex:none;display:inline-flex;align-items:center;gap:4px;margin:-4px -6px -4px 0;padding:4px 8px;border:0;border-radius:var(--radius);background:transparent;color:var(--muted);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer}.decision-collapse:hover{background:var(--surface-3);color:var(--text-2)}.decision-collapse:focus-visible{outline:none;box-shadow:var(--ring)}.decision-collapse svg{width:14px;height:14px}@media(max-width:520px){.decision-collapse__label{display:none}.decision-collapse{padding:6px}}.decision-bar{--tone: var(--accent);--tone-line: var(--accent-line);--tone-soft: var(--accent-soft);flex:none;width:min(760px,100% - 32px);margin:0 auto 8px;display:flex;align-items:center;gap:10px;padding:8px 10px 8px 12px;border:1px solid var(--tone-line);border-left:2px solid var(--tone);border-radius:var(--radius);background:var(--tone-soft);color:var(--text);font:inherit;text-align:left;cursor:pointer;animation:relink-in .18s ease-out}.decision-bar--plan{--tone: var(--ok);--tone-line: var(--ok-line);--tone-soft: var(--ok-soft)}.decision-bar--permission{--tone: var(--warn);--tone-line: var(--warn-line);--tone-soft: var(--warn-soft)}.decision-bar:hover{border-color:var(--tone)}.decision-bar:focus-visible{outline:none;box-shadow:var(--ring)}.decision-bar__icon{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:999px;border:1.5px solid var(--tone);color:var(--tone);font-family:var(--serif);font-size:13px;font-weight:700}.decision-bar__icon svg{width:13px;height:13px}.decision-bar__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.decision-bar__title,.decision-bar__sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.decision-bar__title{font-size:13px;font-weight:600}.decision-bar__sub{font-size:12px;color:var(--text-2)}.decision-bar__action{flex:none;display:inline-flex;align-items:center;gap:4px;font-size:12.5px;font-weight:500;color:var(--text-2)}.decision-bar:hover .decision-bar__action{color:var(--text)}.decision-bar__action svg{width:14px;height:14px}@media(max-width:520px){.decision-bar__action{font-size:0;gap:0}}.pane-btn{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;color:var(--muted);transition:background .12s ease,color .12s ease}.pane-btn:hover{background:var(--surface-2);color:var(--text)}.pane-btn.is-on{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-line)}.pane-btn svg{width:16px;height:16px}.pane-btn--stop:hover{background:var(--warn-soft);color:var(--warn)}.pane-btn--handoff:hover{background:var(--accent-soft);color:var(--accent)}.pane-btn--handoff.is-busy{color:var(--accent);cursor:default}.pane-btn--handoff.is-busy svg{animation:handoff-pulse 1.2s ease-in-out infinite}@keyframes handoff-pulse{0%,to{opacity:.35;transform:translate(0)}50%{opacity:1;transform:translate(1.5px)}}.pane-btn--handoff{position:relative;overflow:hidden;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.pane-btn--handoff.is-holding{background:var(--accent-soft)}.pane-btn__hold{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent-soft);transform:scaleY(0);transform-origin:bottom;pointer-events:none}.pane-btn--handoff.is-holding .pane-btn__hold{animation:pane-btn-hold-fill var(--hold-ms, .5s) linear forwards}.pane-btn--handoff svg{position:relative;z-index:1}@keyframes pane-btn-hold-fill{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.sidepane{display:none;flex-direction:column;min-height:0;min-width:0;background:var(--sidebar)}.sidepane--open{display:flex}.sidepane--git{border-right:1px solid var(--border)}.sidepane--ask{border-left:1px solid var(--border)}.sidepane.sidepane--zoomed{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32;width:auto}.sidepane__head{display:flex;align-items:center;gap:8px;flex:none;padding:12px 10px 12px 14px;border-bottom:1px solid var(--border-soft)}.sidepane__icon{flex:none;width:15px;height:15px;color:var(--muted)}.sidepane__title{flex:1;min-width:0;font-family:var(--serif);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidepane__btn{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:7px;color:var(--muted);font-size:13px;line-height:1}.sidepane__btn:hover{background:var(--surface-2);color:var(--text)}.sidepane__btn:disabled{opacity:.35;cursor:default;background:none}.sidepane__btn svg{width:15px;height:15px}.sidepane__scroll{flex:1;min-height:0;overflow-y:auto;padding:6px 0 10px}.sidepane__empty{margin:0;padding:22px 16px;color:var(--muted);font-size:13px;line-height:1.55}.gitempty{padding:22px 16px}.gitempty__text{margin:0 0 14px;color:var(--muted);font-size:13px;line-height:1.55}.gitempty__btn{width:100%;justify-content:center}.gitempty__hint{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.sidepane__tools{display:flex;align-items:center;gap:8px;flex:none;padding:0 10px 8px;border-bottom:1px solid var(--border-soft)}.sidepane__note{font-size:11px;color:var(--muted);white-space:nowrap;cursor:default}.select--compact{min-width:0}.select--compact .select__trigger{max-width:100%;padding:3px 7px 3px 10px;font-size:11.5px}.select--compact .select__menu{left:0;right:auto;max-width:min(340px,calc(100vw - 24px))}.composer--side{padding:8px 10px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border-soft)}.composer--side .composer__inner{max-width:none}.composer--side .composer__field{flex-wrap:wrap;gap:4px 6px;padding:5px 6px;border-radius:var(--radius)}.composer--side textarea{order:-1;flex:1 0 100%;padding:4px 4px 2px 6px;font-size:13px;line-height:1.5;min-height:26px;max-height:140px}.composer--side .btn{padding:5px 13px;font-size:12.5px}.composer--side .addbtn{width:26px;height:26px;margin:0 auto 0 0}.composer--side .addbtn svg{width:14px;height:14px}.composer--side .micbtn{width:28px;height:28px}.composer--side .micbtn svg{width:14px;height:14px}.sidepane--ask .transcript{padding:14px 12px 4px}.sidepane--ask .stream{gap:12px}.sidepane--ask .msg--user{max-width:94%}.sidepane--ask .empty{padding:28px 4px;font-size:14px;text-align:left}.sidepane--files,.sidepane--search{border-right:1px solid var(--border)}.fssearch{display:flex;flex:none;align-items:center;gap:7px;margin:10px 10px 2px;padding:6px 9px;border:1px solid var(--border-soft);border-radius:8px;background:var(--surface)}.fssearch:focus-within{border-color:var(--accent-line);box-shadow:var(--ring)}.fssearch svg{flex:none;width:14px;height:14px;color:var(--muted)}.fssearch__input{flex:1;min-width:0;background:none;border:none;color:var(--text);font:inherit;font-size:12.5px}.fssearch__input:focus{outline:none}.fssearch__input::placeholder{color:var(--muted)}.fssearch__clear{flex:none;display:grid;place-items:center;width:18px;height:18px;border-radius:5px;color:var(--muted);font-size:10px;line-height:1}.fssearch__clear:hover{background:var(--surface-3);color:var(--text)}.fstree{padding:4px 0 clamp(96px,26vh,160px);overflow-x:auto}.fstree:focus{outline:none}.fsrow{display:flex;align-items:center;min-width:100%;width:max-content;padding-left:calc(8px + var(--depth, 0) * 13px);padding-right:4px;height:25px}.fsrow:hover,.fsrow.is-selected{background:var(--surface-2)}.fsrow.is-open{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.fsrow--dragging{opacity:.4}.fsrow--drop-target{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line)}.fsrow--cut{opacity:.4}.fstree--drop-target{background:var(--surface-2)}.fsrow__main{display:flex;align-items:center;gap:6px;flex:1;min-width:0;height:100%;padding:0;text-align:left}.fsrow__icon{flex:none;display:grid;place-items:center;width:15px;height:15px;color:var(--muted)}.fsrow__icon svg{width:15px;height:15px}.fsrow.is-open .fsrow__icon{color:var(--accent)}.fsrow__name{font-size:13px;color:var(--text-2);white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}.fsrow.is-open .fsrow__name{color:var(--text)}.fsrow__icon--git-added,.fsrow__name--git-added{color:var(--ok)}.fsrow__icon--git-modified,.fsrow__name--git-modified{color:var(--warn)}.fsrow--ignored .fsrow__icon,.fsrow--ignored .fsrow__name{color:var(--muted);opacity:.72}.fsrow__tag,.cmdmenu__tag{flex:none;margin-left:6px;font-family:var(--mono);font-size:10px;letter-spacing:.02em;color:var(--muted);opacity:.8;white-space:nowrap}.fsrow__dot{flex:none;width:6px;height:6px;margin-left:2px;border-radius:50%;background:var(--accent)}.fsrow__act{flex:none;display:none;place-items:center;width:20px;height:20px;border-radius:6px;color:var(--muted);font-size:11px;line-height:1}.fsrow:hover .fsrow__act{display:grid}.fsrow__act:hover{background:var(--surface-3);color:var(--text)}.fsrow__act:focus-visible{display:grid}@media(hover:none){.fsrow__act{display:grid}}.fsrow--search{gap:6px;width:100%;color:inherit;font:inherit;text-align:left;padding-right:8px}.fsrow--search:hover{background:var(--surface-2)}.fsrow__path{flex:1;min-width:0;margin-left:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11.5px}.fsrow--draft{gap:6px}.rename--file{flex:1;min-width:0;height:21px;padding:0 6px;font-size:13px}.fsrow__pending{margin:0;padding:2px 0 2px calc(8px + var(--depth) * 13px + 21px);color:var(--muted);font-size:12px}.searchgroup__path{margin:10px 0 0;padding:3px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2);font-size:12px;font-weight:600}.searchgroup__path:first-child{margin-top:0}.searchmatch{display:flex;width:100%;align-items:baseline;gap:10px;padding:3px 10px 3px 14px;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.searchmatch:hover{background:var(--surface-2)}.searchmatch__line{flex:none;min-width:2ch;color:var(--muted);font-family:var(--mono);font-size:11.5px;text-align:right}.searchmatch__text{flex:1;min-width:0;overflow:hidden;color:var(--text-2);font-family:var(--mono);font-size:12.5px;white-space:pre;text-overflow:ellipsis}.searchmatch__text mark{background:var(--accent-soft);color:var(--text);border-radius:3px}.worktabs{display:flex;flex:none;align-items:stretch;gap:2px;padding:4px 8px 0;overflow-x:auto;background:var(--bg);border-bottom:1px solid var(--border)}.worktabs__spacer{flex:1;min-width:8px}.worktabs__zoom{flex:none;align-self:center;display:grid;place-items:center;width:26px;height:26px;margin:0 2px;border-radius:7px;color:var(--muted)}.worktabs__zoom:hover{background:var(--surface-2);color:var(--text)}.worktabs__zoom svg{width:15px;height:15px}.worktab{display:flex;align-items:center;gap:5px;flex:none;max-width:220px;padding:0 8px 0 10px;height:30px;border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;color:var(--muted);font-size:12.5px}.worktab:hover{background:var(--surface-2);color:var(--text-2)}.worktab.is-on{background:var(--surface);border-color:var(--border);color:var(--text);margin-bottom:-1px;padding-bottom:1px}.worktab__name{min-width:0;padding:0;color:inherit;font:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.worktab__close{flex:none;display:grid;place-items:center;width:17px;height:17px;border-radius:5px;color:var(--muted);font-size:10px;line-height:1}.worktab__close:hover{background:var(--surface-3);color:var(--text)}.worktab__dot{flex:none;width:7px;height:7px;margin:0 5px;border-radius:50%;background:var(--accent);padding:0}.worktab__dot--busy{background:var(--ok);cursor:default;animation:badge-pulse 2s ease-in-out infinite}.editor{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg)}.editor__bar{display:flex;align-items:center;gap:10px;flex:none;padding:7px 14px;border-bottom:1px solid var(--border-soft)}.editor__path{min-width:0;flex:1;font-family:var(--mono);font-size:12px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;text-align:left}.editor__meta{flex:none;font-family:var(--mono);font-size:11.5px;color:var(--muted)}.editor__warn{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:none;padding:8px 14px;background:var(--warn-soft);border-bottom:1px solid var(--warn-line);color:var(--warn);font-size:12.5px}.editor__code{flex:1;min-height:0;overflow:hidden}.editor__code-surface{width:100%;height:100%}.editor__code-surface.is-hidden{display:none}.editor__state{display:grid;justify-items:center;align-content:center;gap:10px;height:100%;color:var(--muted);font-size:13.5px}.editor__fallback{display:flex;flex-direction:column;height:100%;min-height:0}.editor__fallback-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:none;padding:8px 14px;background:var(--danger-soft);border-bottom:1px solid color-mix(in srgb,var(--danger) 40%,transparent);color:var(--danger);font-size:12.5px}.editor__fallback-text{flex:1;min-height:0;margin:0;padding:14px;overflow:auto;font-family:var(--mono);font-size:12.5px;line-height:1.6;color:var(--text-2);white-space:pre-wrap;word-break:break-word}.editor__empty{margin:0;padding:28px 20px;color:var(--muted);font-size:13.5px;line-height:1.6}.editor__viewtoggle{display:flex;flex:none;gap:2px;padding:2px;background:var(--surface-2);border-radius:var(--radius)}.editor__viewtoggle .btn{border:none;background:transparent;color:var(--muted)}.editor__viewtoggle .btn:hover{background:var(--surface-3);color:var(--text-2)}.editor__viewtoggle .btn.is-on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.markdown-preview{flex:1;min-height:0;overflow:auto;padding:28px 32px;font-family:var(--serif);font-size:15px;line-height:1.65;color:var(--text)}.markdown-preview>:first-child{margin-top:0}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4,.markdown-preview h5,.markdown-preview h6{font-family:var(--sans);font-weight:600;line-height:1.3;margin:1.4em 0 .5em}.markdown-preview h1{font-size:1.6em;border-bottom:1px solid var(--border-soft);padding-bottom:.3em}.markdown-preview h2{font-size:1.3em}.markdown-preview h3{font-size:1.1em}.markdown-preview p,.markdown-preview ul,.markdown-preview ol,.markdown-preview blockquote{margin:.8em 0}.markdown-preview ul,.markdown-preview ol{padding-left:1.6em}.markdown-preview li+li{margin-top:.3em}.markdown-preview a{color:var(--accent)}.markdown-preview blockquote{border-left:3px solid var(--border);padding-left:1em;color:var(--text-2)}.markdown-preview code{font-family:var(--mono);font-size:.87em;background:var(--surface-2);padding:.15em .4em;border-radius:4px}.markdown-preview pre{background:var(--surface-2);padding:12px 14px;border-radius:var(--radius);overflow:auto}.markdown-preview pre code{background:none;padding:0}.markdown-preview pre code .cmh-key{color:var(--cm-key)}.markdown-preview pre code .cmh-prop{color:var(--cm-prop)}.markdown-preview pre code .cmh-fn{color:var(--cm-fn)}.markdown-preview pre code .cmh-const{color:var(--cm-const)}.markdown-preview pre code .cmh-type{color:var(--cm-type)}.markdown-preview pre code .cmh-num{color:var(--cm-num)}.markdown-preview pre code .cmh-str{color:var(--cm-str)}.markdown-preview pre code .cmh-op{color:var(--cm-op)}.markdown-preview pre code .cmh-comment{color:var(--cm-comment);font-style:italic}.markdown-preview pre code .cmh-invalid{color:var(--danger)}.markdown-preview table{border-collapse:collapse;width:100%;font-size:.92em}.markdown-preview th,.markdown-preview td{border:1px solid var(--border-soft);padding:6px 10px;text-align:left}.markdown-preview th{background:var(--surface-2)}.markdown-preview img{max-width:100%}.markdown-preview hr{border:none;border-top:1px solid var(--border-soft);margin:1.6em 0}.mediaview{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;background:var(--bg)}.mediaview--message{display:grid;justify-items:center;align-content:center;gap:12px;height:100%;padding:24px;text-align:center}.mediaview__progress{width:220px;height:3px;border-radius:2px;background:var(--surface-3);overflow:hidden}.mediaview__progress-fill{height:100%;width:35%;border-radius:2px;background:var(--accent);animation:mediaview-progress 1.3s ease-in-out infinite}@keyframes mediaview-progress{0%{transform:translate(-100%)}to{transform:translate(385%)}}.mediaview__label{color:var(--muted);font-size:13px}.mediaview__error{max-width:42ch;margin:0;color:var(--text-2);font-size:13.5px;line-height:1.6}.mediaview--image .mediaview__stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none}.mediaview--image .mediaview__stage.is-zoomed{cursor:grab}.mediaview--image .mediaview__stage.is-dragging{cursor:grabbing}.mediaview__image{max-width:100%;max-height:100%;-webkit-user-select:none;user-select:none;will-change:transform}.mediaview__toolbar{position:absolute;left:50%;bottom:16px;transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:3px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.mediaview__toolbar .btn{border:none;background:transparent;color:var(--muted);padding:5px 8px}.mediaview__toolbar .btn:hover{background:var(--surface-2);color:var(--text-2)}.mediaview__toolbar .btn svg{width:15px;height:15px;display:block}.mediaview__zoomlabel{min-width:3.6ch;padding:0 2px;text-align:center;font-family:var(--mono);font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}.mediaview--video{align-items:center;justify-content:center;gap:12px;padding:20px}.mediaview__video{max-width:100%;max-height:calc(100% - 44px);border-radius:var(--radius);background:#000;box-shadow:var(--shadow-sm)}.mediaview__speedbar{display:flex;flex:none;align-items:center;gap:8px}.mediaview__speedlabel{font-size:12px;color:var(--muted)}.mediaview__speedselect .select__trigger{max-width:none}.gitbar{display:flex;align-items:center;gap:6px;flex:none;padding:10px 12px;border-bottom:1px solid var(--border-soft)}.gitbar__branch{flex:1;min-width:0}.gitbar__branch .select__trigger{width:100%;max-width:none}.gitbar__branch .select__menu{left:0;right:auto;min-width:100%}.gitbar__note{margin:0;padding:8px 14px;background:var(--warn-soft);border-bottom:1px solid var(--border-soft);color:var(--warn);font-size:12px;line-height:1.45}.gitbar__actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border-soft)}.gitbar__group{display:inline-flex;gap:3px}.gitbar__check{padding-left:7px;padding-right:7px}.gitbar__check svg{width:13px;height:13px}.gitbar__actions svg{width:13px;height:13px;flex:none}.gitbar__count{padding:0 5px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-variant-numeric:tabular-nums}.btn--primary .gitbar__count{background:#ffffff38;color:inherit}.gitbar__busy{display:flex;align-items:center;gap:7px;margin:0;color:var(--muted);font-size:12.5px}.gitbar__busy svg{animation:meters-spin .8s linear infinite}.gitrow{display:flex;align-items:center;gap:2px;width:100%;height:50px;padding:0 10px 0 0;text-align:left}.gitrow:hover{background:var(--surface-2)}.gitrow.is-on{background:var(--surface-2);box-shadow:inset 2px 0 0 var(--accent)}.gitrow--work{height:46px;padding-left:14px;border-bottom:1px solid var(--border-soft);margin-bottom:4px}.gitrow__body{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}.gitrow__subject{display:block;font-size:13px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gitrow.is-on .gitrow__subject{color:var(--text)}.gitrow__meta{display:block;font-family:var(--mono);font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gitrow__ref{display:inline-block;margin-right:5px;padding:0 5px;border:1px solid var(--accent-line);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-family:var(--mono);font-size:10.5px;vertical-align:1px}.gitgraph{flex:none}.gitgraph line,.gitgraph path{stroke-width:1.6;fill:none}.gitgraph__dot{fill:var(--sidebar);stroke-width:2}.gitrow:hover .gitgraph__dot{fill:var(--surface-2)}.gitgraph__head{fill:none;stroke:var(--accent);stroke-width:1.4;opacity:.65}.gitrow__local{margin-left:5px;color:var(--warn)}.commit__head{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--border-soft)}.commit__line{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:0 0 6px}.commit__line--hash{align-items:center;margin:4px 0 0}.commit__line--hash .commit__hash{min-width:0;color:var(--muted);overflow-wrap:anywhere}.commit__line .commit__subject{flex:1;min-width:0;margin:0}.commit__subject{margin:0 0 6px;font-size:15px;font-weight:560;overflow-wrap:anywhere}.commit__meta{margin:0;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.commit__hash{font-family:var(--mono);font-size:11.5px}.commit__meta--local{margin-top:4px;color:var(--warn)}.commit__body{margin:10px 0 0;padding:9px 11px;border-radius:9px;background:var(--surface-2);font-family:var(--mono);font-size:12px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-2)}.commit__file{margin-bottom:8px}.commit__filehead{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);font-family:var(--mono);font-size:12px;text-align:left}.commit__filehead:hover{background:var(--surface-3)}.commit__filepath{min-width:0;flex:1;color:var(--text-2);overflow-wrap:anywhere}.commit__file .diff{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.commit__file .diff__head{display:none}.publish__section{margin-top:20px;padding-top:18px;border-top:1px solid var(--border-soft)}.publish__section--first{margin-top:0;padding-top:0;border-top:none}.publish__heading{margin:0 0 10px;font-size:13px;font-weight:650;color:var(--text)}.publish__field{margin-top:10px}.publish__static{margin:0;padding:9px 12px;background:var(--surface-2);border-radius:9px;font-family:var(--mono);font-size:13px;color:var(--text-2)}.publish__account{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.publish__accountvia{font-size:12.5px;color:var(--muted)}.publish__connect .modal__text{margin-bottom:10px}.publish__tokenhint{margin:8px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}.publish__tokenhint code{font-family:var(--mono);font-size:.95em}.publish__tokenhint a{color:var(--accent)}.publish__filehead{display:flex;align-items:center;gap:8px;margin-bottom:8px}.publish__filecount{flex:1;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.publish__filter{margin-bottom:8px;font-size:12.5px}.publish__filelist{max-height:240px;overflow-y:auto;border:1px solid var(--border-soft);border-radius:9px}.publish__file{display:flex;align-items:center;gap:9px;width:100%;padding:6px 10px;text-align:left;font-family:var(--mono);font-size:12px;color:var(--text-2)}.publish__file:hover{background:var(--surface-2)}.publish__file+.publish__file{border-top:1px solid var(--border-soft)}.publish__box{flex:none;display:grid;place-items:center;width:15px;height:15px;border:1.5px solid var(--border);border-radius:4px;font-size:10px;color:var(--accent-fg);transition:background .12s ease,border-color .12s ease}.publish__box.is-on{background:var(--accent);border-color:var(--accent)}.publish__filepath{min-width:0;overflow-wrap:anywhere}.publish__filesempty{margin:0;padding:10px}.publish__truncated{margin:8px 0 0;font-size:12px;color:var(--warn)}.pwfield{position:relative}.pwfield__input{padding-right:34px}.pwfield__input::-ms-reveal,.pwfield__input::-ms-clear{display:none}.pwfield__toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:26px;height:26px;border-radius:6px;color:var(--muted)}.pwfield__toggle svg{width:15px;height:15px}.pwfield__toggle:hover{background:var(--surface-2);color:var(--text)}.pwfield__toggle[aria-pressed=true]{color:var(--accent)}.scrim{display:none}@media(max-width:860px){.app{grid-template-columns:1fr}.sidebar,.main,.sidepane{grid-column:1}.pane-resizer{display:none}.sidepane--open{position:fixed;top:0;bottom:0;width:min(var(--ask-w),calc(100vw - 44px));z-index:30;box-shadow:var(--shadow-lg)}.sidepane--open.sidepane--git,.sidepane--open.sidepane--files,.sidepane--open.sidepane--search{left:0;width:min(var(--git-w),calc(100vw - 44px))}.sidepane--open.sidepane--ask{right:0}.scrim--pane{display:block}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);z-index:30;transform:translate(-100%);transition:transform .18s ease;box-shadow:var(--shadow-lg)}.sidebar--open{transform:none}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#1f1e1d6b;z-index:20}.menu-btn{display:grid;place-items:center;width:40px;height:40px;padding:0}.pane-btn{width:40px;height:40px}.pane-btn svg{width:18px;height:18px}.topbar{gap:6px}.topbar__id{flex:1 1 100%;flex-direction:row;align-items:center;gap:10px}.topbar__head,.topbar__title{flex:1 1 auto;min-width:0}.msg--user{max-width:92%}.transcript{padding:16px 12px 4px}.composer{padding:6px 12px calc(10px + env(safe-area-inset-bottom))}.composer .sendbtn{width:32px;height:32px;padding:0;justify-content:center;border-radius:999px}.sendbtn__label{display:none}.sendbtn__icon{display:block;width:16px;height:16px}.composer--side .sendbtn{width:28px;height:28px}.composer--side .sendbtn__icon{width:14px;height:14px}.worktabs{padding:4px 6px 0}.worktab{max-width:150px}.editor__bar{padding:6px 10px}.editor__path{font-size:11.5px}}@media(max-width:380px){.menu-btn,.pane-btn{width:36px;height:36px}.pane-btn svg{width:16px;height:16px}.topbar{gap:4px}}.term-resizer{flex:none;display:flex;align-items:center;justify-content:center;position:relative;z-index:5;height:9px;margin:-4px 0;cursor:row-resize;touch-action:none}.term-resizer__line{width:100%;height:2px;margin:0 10px;border-radius:2px;background:transparent;transition:background .12s ease}.term-resizer:hover .term-resizer__line,.term-resizer:active .term-resizer__line,.term-resizer:focus-visible .term-resizer__line{background:var(--accent)}.term-resizer:focus-visible{outline:none}body.is-resizing-row{cursor:row-resize;-webkit-user-select:none;user-select:none}.termpanel{display:flex;flex-direction:column;flex:none;min-height:0;background:var(--surface);border-top:1px solid var(--border)}.termpanel--mobile{position:fixed;inset:0 0 auto 0;z-index:35;border-top:none;overscroll-behavior:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.termpanel--zoomed{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32;border-top:none}.termpanel__tabbar{display:flex;align-items:stretch;flex:none;gap:2px;padding:4px 6px;background:var(--bg);border-bottom:1px solid var(--border)}.termpanel--mobile .termpanel__tabbar{touch-action:pan-x}.termpanel__tabs{display:flex;align-items:stretch;gap:2px;min-width:0;overflow-x:auto}.termpanel--mobile .termpanel__tabs{touch-action:pan-x}.termtab{display:flex;align-items:center;gap:6px;flex:none;max-width:180px;padding:0 6px 0 11px;height:28px;border-radius:7px;color:var(--muted);font-size:12.5px}.termtab:hover{background:var(--surface-2);color:var(--text-2)}.termtab.is-on{background:var(--surface-3);color:var(--text)}.termtab--exited{opacity:.62}.termtab--exited.is-on{opacity:.85}.termtab__name{min-width:0;padding:0;color:inherit;font:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.termtab__code{flex:none;padding:0 5px;border-radius:999px;background:var(--danger-soft);color:var(--danger);font-family:var(--mono);font-size:10.5px;line-height:16px}.termtab__close{flex:none;display:grid;place-items:center;width:17px;height:17px;border-radius:5px;color:var(--muted);font-size:10px;line-height:1}.termtab__close:hover{background:var(--surface-3);color:var(--text)}.termpanel__add{flex:none;display:grid;place-items:center;width:26px;height:28px;margin-left:2px;border-radius:7px;color:var(--muted);font-size:16px;line-height:1}.termpanel__add:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.termpanel__add:disabled{opacity:.4;cursor:default}.termpanel__spacer{flex:1}.termpanel__zoom,.termpanel__hide{flex:none;display:grid;place-items:center;width:26px;height:28px;border-radius:7px;color:var(--muted);font-size:11px}.termpanel__zoom:hover,.termpanel__hide:hover{background:var(--surface-2);color:var(--text)}.termpanel__zoom svg{width:15px;height:15px}.termpanel--mobile .termpanel__hide{width:44px;height:44px;font-size:15px}.termpanel__body{position:relative;flex:1;min-height:0}.termview{display:none;width:100%;height:100%;padding:4px 0 4px 10px}.termview.is-active{display:block}.termpanel--mobile .xterm-viewport{overscroll-behavior:contain}.termpanel--mobile .termview{touch-action:pinch-zoom}.termview__surface{width:100%;height:100%}.termview__surface.is-hidden{display:none}.termview__state{display:grid;justify-items:center;align-content:center;gap:10px;height:100%;color:var(--muted);font-size:13.5px;text-align:center}.termview__state p{margin:0}.termview__state--error p:first-child{color:var(--text-2);font-weight:550}.termpanel__empty{display:grid;justify-items:center;align-content:center;gap:10px;height:100%;color:var(--muted);font-size:13.5px}.termpanel__empty p{margin:0}.termpanel--mobile .termpanel__empty,.termpanel--mobile .termview__state{touch-action:none}.termpanel__hint{max-width:46ch;text-align:center;font-size:12.5px;line-height:1.5}.termfail{display:flex;flex-direction:column;align-items:center;gap:10px;height:100%;padding:12px 16px;overflow:auto;color:var(--muted);font-size:13.5px;text-align:center}.termfail>:first-child{margin-top:auto}.termfail>:last-child{margin-bottom:auto}.termfail__text{display:grid;gap:6px;max-width:52ch}.termfail__lede{margin:0;color:var(--danger);font-weight:550;line-height:1.45}.termfail__hint{margin:0;font-size:12.5px;line-height:1.5}.termfail__bar{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.termfail__bar .btn{padding:9px 15px}.termfail__details{font-size:12px}.termfail__details summary{cursor:pointer;color:var(--muted);text-align:center}.termfail__details summary:hover{color:var(--text-2)}.termfail__details pre{margin:6px 0 0;padding:8px 10px;max-height:96px;overflow:auto;border-radius:8px;background:var(--surface-2);color:var(--muted);font-family:var(--mono);font-size:11.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left}.termfail--strip{flex-direction:row;align-items:flex-start;gap:10px;height:auto;max-height:40%;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--danger-soft);text-align:left}.termfail--strip>:first-child,.termfail--strip>:last-child{margin:0}.termfail--strip .termfail__text{flex:1;min-width:0;max-width:none}.termfail--strip .termfail__details summary{text-align:left}.termfail--strip .termfail__bar{flex:none}.termpanel--mobile .termfail{touch-action:pan-y}.relay{display:grid;gap:16px}.relay__lede{margin:0;color:var(--text-2);line-height:1.55}.relay__steps{margin:0;padding-left:20px;display:grid;gap:7px;color:var(--text-2);font-size:14px;line-height:1.5}.relay__form{display:grid;gap:14px}.relay__code{font-family:var(--mono);font-size:20px;letter-spacing:.16em;text-align:center;text-transform:uppercase}.relay__facts{margin:0;display:grid;gap:10px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.relay__facts>div{display:flex;align-items:center;gap:12px;font-size:14px}.relay__facts dt{color:var(--muted);min-width:96px}.relay__facts dd{margin:0;color:var(--text)}.relay__error{margin:0;padding:10px 12px;border:1px solid var(--danger);border-radius:var(--radius);background:var(--danger-soft);color:var(--danger);font-size:13.5px}.relay__note{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.settings{display:grid;gap:22px}.settings__section{display:grid;gap:10px}.settings__heading{margin:0;font-size:13px;font-weight:600;color:var(--text)}.settings__hint{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.settings__field{display:grid;gap:6px}.settings__field-label{font-size:12.5px;color:var(--text-2)}.settings__pct{display:flex;align-items:center;gap:8px}.settings__pct-input{width:68px;text-align:right}.settings__pct-suffix{color:var(--muted);font-size:13px}.settings__select{width:100%}.settings__select .select__trigger{width:100%;max-width:none;justify-content:space-between}.settings__select .select__menu{left:0;right:0;max-width:none}.settings__select-skeleton{display:flex;align-items:center;height:33px;padding:4px 8px 4px 11px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:12px;font-family:var(--mono)}.access{display:grid;gap:8px}.access__card{display:flex;align-items:flex-start;gap:11px;width:100%;padding:12px 13px;text-align:left;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color .12s ease,background .12s ease}.access__card:hover:not(:disabled){background:var(--surface-2)}.access__card:disabled{opacity:.55;cursor:default}.access__card.is-on{border-color:var(--accent-line);background:var(--accent-soft)}.access__card--risky{border-color:var(--warn-line)}.access__card--risky.is-on{border-color:var(--warn);background:var(--warn-soft)}.access__radio{position:relative;flex:none;margin-top:2px;width:15px;height:15px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface);transition:border-color .12s ease}.access__card.is-on .access__radio{border-color:var(--accent)}.access__card--risky.is-on .access__radio{border-color:var(--warn)}.access__card.is-on .access__radio:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:var(--accent)}.access__card--risky.is-on .access__radio:after{background:var(--warn)}.access__body{display:grid;gap:3px;min-width:0}.access__title{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:560;color:var(--text)}.access__risk{padding:1px 7px;border:1px solid var(--warn-line);border-radius:999px;background:var(--warn-soft);color:var(--warn);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.access__desc{font-size:12.5px;line-height:1.45;color:var(--muted)}.settings__switch-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.settings__switch-copy{display:grid;gap:4px;min-width:0}.settings__agent{align-items:center}.settings__switch-row.settings__agent>.switch,.settings__switch-row.settings__agent>.settings__switch-skeleton{margin-top:0}.settings__agent-copy{flex:1;gap:1px}.settings__switch-row>.switch,.settings__switch-row>.settings__switch-skeleton{margin-top:3px}.settings__switch-skeleton{flex:none;width:30px;height:17px;border-radius:999px;background:var(--surface-3);opacity:.55}.settings__nested{display:grid;gap:10px;padding-top:10px;border-top:1px dashed var(--border)}.settings__nested-heading{margin:0;font-size:13px;font-weight:600;color:var(--text)}.settings__netstatus.is-bad{color:var(--danger)}.countries{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.countries__chip{display:inline-flex;align-items:center;gap:2px;padding:2px 3px 2px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-family:var(--mono);font-size:12px}.countries__remove{width:20px;height:20px;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:15px;line-height:1;cursor:pointer}.countries__remove:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}.countries__add{display:flex;gap:8px;align-items:center}.countries__input{width:64px;text-align:center;font-family:var(--mono);text-transform:uppercase}.countries__input[aria-invalid=true]{border-color:var(--danger)}.countries__error{color:var(--danger)}.settings__nested.is-disabled{opacity:.5}
|
|
1
|
+
:root{color-scheme:light;--bg: #faf9f5;--surface: #ffffff;--surface-2: #f2f0e8;--surface-3: #e9e6db;--sidebar: #f0eee6;--border: #e2dfd3;--border-soft: #edebe1;--text: #1f1e1d;--text-2: #3d3d3a;--muted: #7c7a73;--accent: #c96442;--accent-hover: #b1553a;--accent-fg: #fffdf9;--accent-soft: rgba(201, 100, 66, .1);--accent-line: rgba(201, 100, 66, .36);--accent-claude: #c96442;--folder-default: #b4b1a5;--select: rgba(201, 100, 66, .28);--warn: #b0762c;--warn-soft: rgba(176, 118, 44, .12);--warn-line: rgba(176, 118, 44, .42);--danger: #bf4d43;--danger-soft: rgba(191, 77, 67, .1);--ok: #5b7f45;--ok-soft: rgba(91, 127, 69, .12);--ok-line: rgba(91, 127, 69, .4);--add-bg: rgba(91, 127, 69, .13);--add-fg: #35512b;--del-bg: rgba(191, 77, 67, .1);--del-fg: #7d2f2a;--code-fg: #3d3d3a;--scroll: rgba(31, 30, 29, .2);--scroll-hover: rgba(31, 30, 29, .36);--shadow-sm: 0 1px 2px rgba(31, 30, 29, .07);--shadow-md: 0 6px 18px rgba(31, 30, 29, .1);--shadow-lg: 0 18px 44px rgba(31, 30, 29, .18);--ring: 0 0 0 3px rgba(201, 100, 66, .18);--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--sans: ui-sans-serif, system-ui, "Segoe UI", Inter, Roboto, sans-serif;--serif: ui-serif, "Iowan Old Style", Georgia, "Times New Roman", serif;--radius: 10px;--radius-lg: 16px;--sidebar-w: 276px;--files-w: 260px;--search-w: 320px;--git-w: 320px;--ask-w: 380px;--cm-key: #9a5bb0;--cm-str: #5b7f45;--cm-num: #b0762c;--cm-comment: #8a8880;--cm-fn: #4f7cac;--cm-type: #3f8f8a;--cm-prop: #a05063;--cm-const: #b1553a;--cm-op: #7c7a73;--cm-selection: rgba(201, 100, 66, .28);--cm-active: rgba(31, 30, 29, .035);--cm-match: rgba(176, 118, 44, .26);--lane-0: #c96442;--lane-1: #4f7cac;--lane-2: #5b7f45;--lane-3: #9a6bb0;--lane-4: #b0762c;--lane-5: #3f8f8a;--lane-6: #a05063}:root[data-theme=dark]{color-scheme:dark;--bg: #262624;--surface: #30302e;--surface-2: #3a3a37;--surface-3: #454542;--sidebar: #1f1e1d;--border: #3e3e3b;--border-soft: #343432;--text: #f5f4ee;--text-2: #d4d1c8;--muted: #918e86;--accent: #d97757;--accent-hover: #e08b6e;--accent-fg: #251610;--accent-soft: rgba(217, 119, 87, .14);--accent-line: rgba(217, 119, 87, .42);--folder-default: #6b6963;--accent-claude: #d97757;--select: rgba(217, 119, 87, .34);--warn: #d9a05b;--warn-soft: rgba(217, 160, 91, .14);--warn-line: rgba(217, 160, 91, .42);--danger: #e0776a;--danger-soft: rgba(224, 119, 106, .13);--ok: #8fb06b;--ok-soft: rgba(143, 176, 107, .14);--ok-line: rgba(143, 176, 107, .42);--add-bg: rgba(143, 176, 107, .13);--add-fg: #cfe0b8;--del-bg: rgba(224, 119, 106, .13);--del-fg: #f0c6c0;--code-fg: #d4d1c8;--scroll: rgba(245, 244, 238, .16);--scroll-hover: rgba(245, 244, 238, .3);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 6px 18px rgba(0, 0, 0, .36);--shadow-lg: 0 18px 44px rgba(0, 0, 0, .5);--ring: 0 0 0 3px rgba(217, 119, 87, .22);--lane-0: #d97757;--lane-1: #7aa5d2;--lane-2: #8fb06b;--lane-3: #b98fd0;--lane-4: #d9a05b;--lane-5: #6fbdb6;--lane-6: #d2818f;--cm-key: #c39ad8;--cm-str: #a3c47f;--cm-num: #e0b276;--cm-comment: #86837b;--cm-fn: #8db6e2;--cm-type: #74c9c2;--cm-prop: #e0949f;--cm-const: #e79674;--cm-op: #a9a69d;--cm-selection: rgba(217, 119, 87, .34);--cm-active: rgba(245, 244, 238, .045);--cm-match: rgba(217, 160, 91, .3)}:root{--g-blue: #4285f4;--g-red: #ea4335;--g-yellow: #fbbc04;--g-green: #34a853}:root[data-theme=dark]{--g-blue: #8ab4f8;--g-red: #f28b82;--g-yellow: #fdd663;--g-green: #81c995}:root[data-provider=antigravity]{--accent: #4285f4;--accent-hover: #3367d6;--accent-fg: #ffffff;--accent-soft: rgba(66, 133, 244, .1);--accent-line: rgba(66, 133, 244, .36);--select: rgba(66, 133, 244, .28);--ring: 0 0 0 3px rgba(66, 133, 244, .18)}:root[data-theme=dark][data-provider=antigravity]{--accent: #8ab4f8;--accent-hover: #aecbfa;--accent-fg: #0b2545;--accent-soft: rgba(138, 180, 248, .14);--accent-line: rgba(138, 180, 248, .42);--select: rgba(138, 180, 248, .34);--ring: 0 0 0 3px rgba(138, 180, 248, .22)}*{box-sizing:border-box}html,body,#root{height:100%}html,body{overflow:hidden;overscroll-behavior:none}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}::selection{background:var(--select)}*{scrollbar-width:thin;scrollbar-color:var(--scroll) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-thumb{background:var(--scroll);border:3px solid transparent;background-clip:content-box;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover);background-clip:content-box}.app{display:grid;grid-template-columns:[sidebar] var(--sidebar-w) [files] auto [search] auto [git] auto [main] minmax(0,1fr) [ask] auto;height:100%}.sidebar,.main,.sidepane{grid-row:1}.sidebar{grid-column:sidebar}.sidepane--files{grid-column:files;width:var(--files-w)}.sidepane--search{grid-column:search;width:var(--search-w)}.sidepane--git{grid-column:git;width:var(--git-w)}.main{grid-column:main}.sidepane--ask{grid-column:ask;width:var(--ask-w)}.pane-resizer{grid-row:1;display:flex;justify-content:center;position:relative;z-index:5;width:9px;cursor:col-resize;touch-action:none}.pane-resizer--left{justify-self:end;margin-right:-4px}.pane-resizer--right{justify-self:start;margin-left:-4px}.pane-resizer--sidebar{grid-column:sidebar}.pane-resizer--files{grid-column:files}.pane-resizer--search{grid-column:search}.pane-resizer--git{grid-column:git}.pane-resizer--ask{grid-column:ask}.pane-resizer__line{width:2px;border-radius:2px;background:transparent;transition:background .12s ease}.pane-resizer:hover .pane-resizer__line,.pane-resizer:active .pane-resizer__line,.pane-resizer:focus-visible .pane-resizer__line{background:var(--accent)}.pane-resizer:focus-visible{outline:none}body.is-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.main{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg);container-type:inline-size}.main--zoomed{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32}.sidebar{display:flex;flex-direction:column;min-height:0;background:var(--sidebar);border-right:1px solid var(--border)}.sidebar__head{display:flex;align-items:center;gap:9px;padding:14px 14px 14px 16px}.brand{font-family:var(--serif);font-size:16px;letter-spacing:-.01em;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dot{width:7px;height:7px;border-radius:50%;background:var(--danger);flex:none}.dot--on{background:var(--ok)}.sidebar__section{display:flex;align-items:center;gap:6px;width:100%;padding:14px 16px 6px 10px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left}.sidebar__section--btn:hover{color:var(--text-2)}.sidebar__section-name{flex:1;min-width:0}.sidebar__count{font-family:var(--mono);font-weight:500;letter-spacing:0;font-size:11px;color:var(--muted);opacity:.75}.sidebar__chev{flex:none;width:12px;height:12px;transition:transform .15s ease}.sidebar__chev--open{transform:rotate(90deg)}.fssearch--sidebar{margin:2px 12px 4px}.sidebar__tabs{display:flex;gap:2px;margin:2px 12px 8px;padding:3px;background:var(--surface-3);border-radius:9px}.sidebar__tab{flex:auto;min-width:0;display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 8px;border-radius:7px;font-size:11.5px;font-weight:500;color:var(--muted);transition:background .12s ease,color .12s ease}.sidebar__tab-label{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sidebar__tab:hover{color:var(--text-2)}.sidebar__tab.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.sidebar__tab-count{min-width:15px;padding:0 4px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-family:var(--mono);font-size:10px;line-height:15px;text-align:center}.sidebar__tab.is-active .sidebar__tab-count{background:var(--accent);color:var(--accent-fg)}@media(max-width:860px){.sidebar__tab{padding:9px 4px;font-size:12.5px}}.sidebar__scroll{overflow-y:auto;flex:1;min-height:0;padding-bottom:8px}.row{position:relative;display:flex;align-items:center;gap:2px;width:calc(100% - 16px);margin:1px 8px;padding:7px 8px 7px 10px;border-radius:8px}.row:hover{background:var(--surface-2)}.row__grip{flex:none;display:grid;place-items:center;width:20px;height:24px;border-radius:6px;color:var(--muted);opacity:0;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:opacity .12s ease,background .12s ease,color .12s ease}.row__grip svg{width:13px;height:13px}.row:hover .row__grip{opacity:1}.row__grip:hover{color:var(--text-2);background:var(--surface-3)}.row__grip:focus-visible{opacity:1}.row__grip:active{cursor:grabbing}@media(hover:none){.row__grip{opacity:1}}.row--dragging{opacity:.5}.row--drop-before:before,.row--drop-after:after{content:"";position:absolute;left:8px;right:8px;height:2px;border-radius:999px;background:var(--accent);pointer-events:none}.row--drop-before:before{top:-2px}.row--drop-after:after{bottom:-2px}.sidebar .row{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.row--active{background:var(--surface-2)}.row--active .row__title{color:var(--text);font-weight:560}.row--active{box-shadow:inset 2px 0 0 var(--accent-claude);transition:box-shadow .18s ease}.row--selected,.row--selected:hover{background:var(--select)}.row__stripe{position:absolute;left:4px;top:6px;bottom:6px;width:3px;border-radius:2px;background:var(--folder-color, var(--folder-default));pointer-events:none}.row__main{display:block;text-align:left;padding:0;min-width:0;flex:1}.row__edit{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:var(--muted);font-size:13px;opacity:0;transition:opacity .12s ease,background .12s ease}.row:hover .row__edit{opacity:1}.row__edit:hover{color:var(--text);background:var(--surface-3)}.row__edit:focus-visible{opacity:1}@media(hover:none){.row__edit{opacity:1}}.row__swatch{position:relative;flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:6px;opacity:0;cursor:pointer;transition:opacity .12s ease,background .12s ease}.row__swatch--set,.row:hover .row__swatch,.row__swatch:focus-within{opacity:1}.row__swatch:hover{background:var(--surface-3)}.row__swatch:focus-within{outline:2px solid var(--accent);outline-offset:-1px}.row__swatch-dot{width:14px;height:14px;border-radius:50%;background:var(--folder-default);box-shadow:inset 0 0 0 1px #0000002e}.row__swatch input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;border:0;opacity:0;cursor:pointer}@media(hover:none){.row__swatch{opacity:1}}.row__stop{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:var(--muted);opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.row__stop svg{width:13px;height:13px}.row:hover .row__stop{opacity:1}.row__stop:hover{color:var(--warn);background:var(--warn-soft)}.row__stop:focus-visible{opacity:1}@media(hover:none){.row__stop{opacity:1}}.row__restore{flex:none;padding:4px 10px;border-radius:999px;border:1px solid var(--border);color:var(--text-2);font-size:11.5px;white-space:nowrap}.row__restore:hover{background:var(--surface-2);color:var(--text);border-color:var(--surface-3)}@media(max-width:860px){.row__restore{min-height:40px;padding:0 12px;display:inline-flex;align-items:center}}.row__head{display:flex;align-items:center;gap:8px;min-width:0}.row__title{display:block;min-width:0;flex:1 1 auto;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row__pin{width:11px;height:11px;margin:0 4px -1px 0;color:var(--accent);opacity:.8}.row__provider{width:12px;height:auto;margin:0 5px -1px 0;flex:none}.row__project{flex:none;max-width:42%;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row__meta{display:block;font-size:12px;line-height:1.45;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row__state{display:inline-flex;align-items:center;gap:5px;transition:color .18s ease}.row__state-dot{width:6px;height:6px;flex:none;border-radius:50%;background:currentColor}.row__state--running{color:var(--accent-claude)}.row__state--starting{color:var(--accent-claude);opacity:.6}.row__state--reconnecting{color:var(--accent-claude);animation:state-breathe 1.9s ease-in-out infinite}.row__state--waiting{color:var(--warn)}.row__state--halted{color:var(--warn);opacity:.8}.row__state--ready{color:var(--ok)}.row__state--error{color:var(--danger)}.row__state--closed,.row__state--fresh{color:var(--muted)}.row__state--background{color:var(--accent-claude);animation:state-breathe 1.9s ease-in-out infinite}@keyframes state-breathe{0%,to{opacity:.72}50%{opacity:.32}}.row--antigravity.row--active{box-shadow:inset 2px 0 0 var(--g-blue)}.row--antigravity .row__state--running,.row--antigravity .row__state--starting,.row--antigravity .row__state--background,.row--antigravity .row__state--reconnecting{color:var(--g-blue)}.sidebar__foot{padding:12px 12px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.sidebar__foot-row{display:flex;gap:8px;flex-wrap:wrap}.sidebar__foot-row>.btn,.sidebar__foot-row>.newsession{flex:1;justify-content:center}.newsession{display:flex}.newsession__btn{flex:1;justify-content:center}.newsession__caret{width:9px;height:9px;flex:none;opacity:.75}.newsession__menu{position:fixed;z-index:45;width:248px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg)}.newsession__menu:focus{outline:none}.newsession__item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 9px;border-radius:8px;text-align:left}.newsession__item.is-cursor,.newsession__item:hover{background:var(--surface-2)}.newsession__mark{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--surface-2)}.newsession__mark svg{width:16px;height:16px}.newsession__mark--claude{background:var(--accent-soft)}.newsession__mark-logo{width:18px;height:auto}.newsession__text{display:flex;flex-direction:column;gap:1px;min-width:0}.newsession__label{font-size:13.5px;font-weight:560;color:var(--text)}.newsession__hint{font-size:11.5px;color:var(--muted)}@media(max-width:860px){.newsession__item{min-height:48px}}.rename{width:100%;background:var(--surface);color:var(--text);border:1px solid var(--accent);border-radius:7px;padding:3px 7px;font:inherit;box-shadow:var(--ring)}.rename:focus{outline:none}.rename--title{font-weight:560;max-width:420px}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);font-size:13px;font-weight:500;white-space:nowrap;text-decoration:none;transition:background .12s ease,border-color .12s ease,color .12s ease}.btn:hover{background:var(--surface-2);color:var(--text)}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-fg)}.btn--warn{background:var(--warn);border-color:var(--warn);color:var(--accent-fg);font-weight:600}.btn--warn:hover{filter:brightness(1.06);color:var(--accent-fg)}.btn--ok{background:var(--ok);border-color:var(--ok);color:var(--accent-fg);font-weight:600}.btn--ok:hover{filter:brightness(1.06);color:var(--accent-fg)}.btn--ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn--ghost:hover{background:var(--surface-2)}.btn:disabled{opacity:.4;cursor:default;background:var(--surface);border-color:var(--border);color:var(--text-2)}.btn--primary:disabled{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.btn--ok:disabled{background:var(--ok);border-color:var(--ok);color:var(--accent-fg)}.theme-btn{flex:none;display:grid;place-items:center;width:28px;height:28px;padding:0;border-radius:8px;color:var(--muted)}.theme-btn:hover{background:var(--surface-2);color:var(--text)}.theme-btn svg{width:16px;height:16px}.theme-btn[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.topbar{position:relative;display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--bg);flex:none;flex-wrap:wrap;min-width:0}:root[data-provider=antigravity] .topbar:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--g-blue) 0%,var(--g-blue) 25%,var(--g-red) 25%,var(--g-red) 50%,var(--g-yellow) 50%,var(--g-yellow) 75%,var(--g-green) 75%,var(--g-green) 100%)}.topbar__tools{display:flex;align-items:center;gap:10px;min-width:0;margin-left:auto;flex-wrap:wrap;justify-content:flex-end;row-gap:6px}@container (max-width: 780px){.topbar .clock{display:none}}@container (max-width: 660px){.topbar .badge--cost{display:none}}@container (max-width: 520px){.topbar .usage{display:none}}.topbar .select__trigger{max-width:min(40vw,190px)}.topbar__id{display:flex;flex-direction:column;min-width:0;flex:0 1 auto;line-height:1.3}.topbar__head{display:flex;align-items:center;gap:8px;min-width:0}.topbar__title{display:block;text-align:left;font-family:var(--serif);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:100%;padding:0}.topbar__title:hover:not(:disabled){color:var(--accent)}.topbar__title:disabled{cursor:default}.topbar__project{flex:0 1 auto;min-width:0;max-width:12em;padding-left:8px;border-left:1px solid var(--border);color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwd{position:relative;min-width:0;z-index:20}.cwd__toggle{display:flex;align-items:center;gap:3px;width:100%;min-width:0;padding:0;text-align:left;color:var(--muted)}.cwd__toggle:hover{color:var(--text-2)}.cwd__chev{flex:none;width:10px;height:10px;transition:transform .15s ease}.cwd__chev--open{transform:rotate(90deg)}.cwd__short{font-family:var(--mono);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwd__pop{position:absolute;top:calc(100% + 6px);left:0;display:flex;align-items:flex-end;gap:10px;width:max-content;min-width:min(320px,88vw);max-width:min(620px,88vw);padding:9px 10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:pop .12s ease-out}.cwd__full{flex:1;min-width:0;font-family:var(--mono);font-size:12px;line-height:1.5;color:var(--text-2);word-break:break-all;-webkit-user-select:text;user-select:text}.cwd__copy{flex:none;padding:3px 9px;font-size:12px;white-space:nowrap}.badge{font-size:12px;font-family:var(--mono);color:var(--muted);background:var(--surface);padding:4px 10px;border:1px solid var(--border);border-radius:999px;white-space:nowrap;flex:none;max-width:40vw;overflow:hidden;text-overflow:ellipsis}.badge--live{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.badge--wait{color:var(--warn);border-color:var(--warn-line);background:var(--warn-soft)}.menu-btn{display:none}.meters-refresh{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:8px;color:var(--muted);transition:background .12s ease,color .12s ease}.meters-refresh:hover:not(:disabled){background:var(--surface-2);color:var(--accent)}.meters-refresh:disabled{opacity:.4;cursor:default}.meters-refresh svg{width:14px;height:14px}.meters-refresh.is-busy svg{animation:meters-spin .8s linear infinite}@keyframes meters-spin{to{transform:rotate(360deg)}}.usage{display:grid;grid-template-columns:auto minmax(44px,72px) auto auto;align-items:center;gap:2px 7px;flex:none;padding:4px 11px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-size:11px;line-height:1.3;color:var(--muted);cursor:default}.usage__label{font-family:var(--mono);white-space:nowrap}.usage__track{height:4px;border-radius:999px;background:var(--surface-3);overflow:hidden}.usage__fill{display:block;height:100%;border-radius:999px;background:var(--accent);transition:width .3s ease,background .2s ease}.usage__fill--warn{background:var(--warn)}.usage__fill--over{background:var(--danger)}.usage__pct{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;color:var(--text-2);white-space:nowrap}.usage__reset{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;padding-left:2px}.contextbar{display:flex;align-items:center;gap:9px;flex:none;padding:7px 16px;border-bottom:1px solid var(--border);background:var(--bg);font-size:11px;line-height:1.3;color:var(--muted)}.contextbar__label{font-family:var(--mono);white-space:nowrap}.contextbar__track{flex:1 1 auto;min-width:0;height:4px;border-radius:999px;background:var(--surface-3);overflow:hidden}.contextbar__fill{display:block;height:100%;border-radius:999px;background:var(--accent);transition:width .3s ease,background .2s ease}.contextbar__fill--warn{background:var(--warn)}.contextbar__fill--over{background:var(--danger)}.contextbar__pct{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;color:var(--text-2);white-space:nowrap}.clock{display:flex;flex-direction:column;align-items:flex-end;flex:none;font-family:var(--mono);font-variant-numeric:tabular-nums;line-height:1.3;cursor:default}.clock__time{font-size:13px;color:var(--text-2)}.clock__date{font-size:10.5px;color:var(--muted);white-space:nowrap}.select{position:relative;flex:none}.select__trigger{display:flex;align-items:center;gap:6px;max-width:40vw;padding:4px 8px 4px 11px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-2);font-size:12px;font-family:var(--mono);transition:background .12s ease,border-color .12s ease}.select__trigger:hover{background:var(--surface-2);border-color:var(--surface-3)}.select--open .select__trigger{border-color:var(--accent-line);background:var(--accent-soft);color:var(--text)}.select__value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select__value--muted{color:var(--muted)}.select__chev{flex:none;width:12px;height:12px;color:var(--muted);transition:transform .15s ease}.select--open .select__chev{transform:rotate(180deg)}.select__menu{position:absolute;top:calc(100% + 6px);right:0;z-index:25;min-width:232px;max-width:min(340px,92vw);max-height:min(320px,60vh);overflow-y:auto;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:pop .12s ease-out}@keyframes pop{0%{opacity:0;transform:translateY(-4px)}}.select__option{display:grid;grid-template-columns:16px 1fr;gap:2px 8px;width:100%;padding:7px 9px;border-radius:7px;text-align:left}.select__option.is-cursor{background:var(--surface-2)}.select__option.is-on .select__label{color:var(--accent)}.select__check{grid-row:1;color:var(--accent);font-size:12px;line-height:1.5}.select__label{grid-row:1;font-family:var(--mono);font-size:12.5px;color:var(--text);overflow-wrap:anywhere}.select__hint{grid-row:2;grid-column:2;font-size:11.5px;line-height:1.4;color:var(--muted)}.select__suffix{flex:none;padding:1px 6px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px}.select__suffix--hot{background:var(--accent);color:var(--accent-fg);font-weight:560}.modelmenu{min-width:296px}.modelmenu__head{padding:4px 9px 6px;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.modelmenu__sep{height:1px;margin:5px 4px;background:var(--border-soft)}.modelmenu__row{display:flex;align-items:center;gap:10px;width:100%;padding:7px 9px;border-radius:7px;text-align:left}.modelmenu__row--btn:hover{background:var(--surface-2)}.modelmenu__label{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;font-size:12.5px;color:var(--text)}.modelmenu__desc{font-size:11.5px;line-height:1.35;color:var(--muted)}.modelmenu__levels{flex:none;display:flex;gap:2px;padding:2px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2)}.modelmenu__level{padding:3px 8px;border-radius:999px;font-family:var(--mono);font-size:11px;color:var(--muted);transition:background .12s ease,color .12s ease}.modelmenu__level:hover{color:var(--text)}.modelmenu__level.is-on{background:var(--accent);color:var(--accent-fg)}.switch{flex:none;position:relative;width:30px;height:17px;border-radius:999px;background:var(--surface-3);transition:background .14s ease}.switch.is-on{background:var(--accent)}.switch__knob{position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .14s ease}.switch.is-on .switch__knob{transform:translate(13px)}.switch:disabled{opacity:.5;cursor:not-allowed}.transcript{flex:1;min-height:0;overflow-y:auto;padding:24px 16px 8px}.stream{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.msg--user{align-self:flex-end;max-width:82%;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 4px var(--radius-lg);padding:10px 15px;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}.msg--user__images{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.msg--user__image{width:88px;height:88px;object-fit:cover;border-radius:10px;border:1px solid var(--border);background:var(--surface)}.msg--user--editing{align-self:stretch;max-width:100%}.msg--user__edit{display:flex;flex-direction:column;gap:8px}.msg--user__edit-field{width:100%;resize:none;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:8px 11px;font:inherit;line-height:1.55;min-height:38px;max-height:320px;overflow-y:auto}.msg--user__edit-field:focus{outline:none;border-color:var(--accent-line);box-shadow:var(--ring)}.msg--user__edit-actions{display:flex;justify-content:flex-end;gap:8px}.msg--assistant{color:var(--text);line-height:1.72;overflow-wrap:anywhere}.markdown-preview.msg--assistant__body{padding:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit}.copybtn{flex:none;padding:3px 9px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--muted);font-size:11.5px;line-height:1.45;white-space:nowrap;transition:opacity .12s ease,background .12s ease,color .12s ease,border-color .12s ease}.copybtn:hover{background:var(--surface-2);color:var(--text)}.copybtn--done{color:var(--ok);border-color:var(--ok)}.codeblock{position:relative}.codeblock__copy{position:absolute;top:8px;right:8px;z-index:1;opacity:0}.codeblock:hover .codeblock__copy,.codeblock__copy:focus-visible{opacity:1}.markdown-preview .codeblock{margin:1em 0}.markdown-preview .codeblock>pre{margin:0}.markdown-preview.msg--assistant__body>:last-child{margin-bottom:0}.msg--assistant__foot{display:flex;justify-content:flex-end;margin-top:4px}.msg--assistant__foot .copybtn{opacity:0}.msg--assistant:hover .msg--assistant__foot .copybtn,.msg--assistant__foot .copybtn:focus-visible{opacity:1}@media(hover:none){.codeblock{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.codeblock>pre{width:100%}.codeblock__copy{position:static;order:-1;opacity:1}.msg--assistant__foot .copybtn{opacity:1}}.caret{display:inline-block;width:7px;height:1.05em;vertical-align:text-bottom;background:var(--accent);border-radius:1px;animation:blink 1s steps(2,start) infinite}@keyframes blink{50%{opacity:0}}.thinking{border-left:2px solid var(--border);padding-left:14px;color:var(--muted);font-size:13px;font-style:italic;white-space:pre-wrap}.transcript__more{align-self:center;display:inline-flex;align-items:center;padding:6px 16px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:12.5px}.transcript__more:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:var(--surface-3)}.transcript__more:disabled{opacity:.7;cursor:default}.transcript__divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.transcript__divider:before,.transcript__divider:after{content:"";flex:1;height:1px;background:var(--border-soft)}.work{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.work__dots{display:flex;gap:4px}.work__dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:work-bounce 1.15s ease-in-out infinite}.work__dot:nth-child(2){animation-delay:.16s}.work__dot:nth-child(3){animation-delay:.32s}:root[data-provider=antigravity] .work:not(.work--wait) .work__dot:nth-child(1){background:var(--g-blue)}:root[data-provider=antigravity] .work:not(.work--wait) .work__dot:nth-child(2){background:var(--g-red)}:root[data-provider=antigravity] .work:not(.work--wait) .work__dot:nth-child(3){background:var(--g-yellow)}@keyframes work-bounce{0%,75%,to{transform:translateY(0);opacity:.3}35%{transform:translateY(-4px);opacity:1}}.work__label{background:linear-gradient(90deg,var(--muted) 25%,var(--text) 50%,var(--muted) 75%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:work-shimmer 2.1s linear infinite}@keyframes work-shimmer{0%{background-position:110% 0}to{background-position:-110% 0}}.work__time{font-family:var(--mono);font-size:12px}.work--wait .work__dot{background:var(--warn);animation:none;opacity:1}.work--wait .work__label{color:var(--warn);background:none;-webkit-background-clip:border-box;background-clip:border-box;animation:none}.badge--live{animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.work__dot,.work__label,.badge--live,.caret,.select__menu,.modal,.modal-backdrop,.oplog,.cwd__pop,.micbtn.is-on,.row__state--reconnecting,.row__state--background,.tasks__dot,.relink,.relink__dot,.mediaview__progress-fill{animation:none}.row__state--reconnecting,.row__state--background{opacity:.6}.work__dot{opacity:1}.work__label{color:var(--text);background:none}.mediaview__progress-fill{width:100%}.oplog--leaving,.usage__fill,.sidebar__chev,.cwd__chev{transition:none}.meters-refresh.is-busy svg,.sessionmenu__refresh.is-busy svg,.pane-btn--handoff.is-busy svg{animation:none}.pane-btn--handoff.is-holding .pane-btn__hold,.sessionmenu__handoff.is-holding .sessionmenu__handoff-hold{animation:none}}.tool{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.tool--wait{border-color:var(--warn-line)}.tool--error{border-color:var(--danger)}.tool__head{display:flex;align-items:center;gap:9px;width:100%;padding:9px 12px;text-align:left}.tool__head:hover{background:var(--surface-2)}.tool__name{font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--accent);flex:none}.tool__arg{font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.tool__status{font-size:12px;color:var(--muted);flex:none}.tool__body{border-top:1px solid var(--border-soft);padding:11px 12px;background:var(--bg)}.tool__questions{display:flex;flex-direction:column;gap:12px}.tool__question+.tool__question{padding-top:12px;border-top:1px solid var(--border-soft)}.tool__question-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 8px;margin-bottom:5px}.tool__question-text{font-size:13px;line-height:1.45;color:var(--text)}.tool__question-answer{font-size:12.5px}.tool__answer-value{color:var(--text-2)}.tool__answer-value:before{content:"→ ";color:var(--accent);font-weight:600}.tool__answer-empty{color:var(--muted);font-style:italic}pre.code{margin:0;font-family:var(--mono);font-size:12.5px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;max-height:340px;overflow-y:auto;color:var(--code-fg)}.diff{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.diff__head{display:flex;align-items:center;gap:10px;padding:7px 10px;background:var(--surface-2);border-bottom:1px solid var(--border-soft);font-family:var(--mono);font-size:12px}.diff__path{min-width:0;flex:1;overflow-wrap:anywhere;color:var(--text-2)}.diff__stat{flex:none;display:flex;gap:8px;font-weight:600}.diff__stat--add{color:var(--ok)}.diff__stat--del{color:var(--danger)}.diff__note{padding:5px 10px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--border-soft)}.diff__body{max-height:min(340px,46vh);overflow-y:auto;padding:4px 0;background:var(--bg)}.diff__row{display:flex;align-items:flex-start;gap:6px;padding:0 10px 0 6px;font-family:var(--mono);font-size:12.5px;line-height:1.55;color:var(--code-fg)}.diff__mark{flex:none;width:10px;text-align:center;color:var(--muted);-webkit-user-select:none;user-select:none}.diff__text{min-width:0;flex:1;white-space:pre-wrap;overflow-wrap:anywhere;-moz-tab-size:2;tab-size:2}.diff__row--add{background:var(--add-bg);color:var(--add-fg)}.diff__row--add .diff__mark{color:var(--ok)}.diff__row--del{background:var(--del-bg);color:var(--del-fg)}.diff__row--del .diff__mark{color:var(--danger)}.diff__row--gap{color:var(--muted);font-size:12px;padding-top:2px;padding-bottom:2px}.result-line{display:flex;gap:14px;font-size:12px;color:var(--muted);font-family:var(--mono);border-top:1px dashed var(--border);padding-top:10px}.notice{font-size:13px;color:var(--muted);border-left:2px solid var(--border);padding-left:14px}.notice--error{color:var(--danger);border-left-color:var(--danger)}.empty{color:var(--muted);text-align:center;padding:64px 16px;max-width:460px;margin:0 auto;font-family:var(--serif);font-size:16px;line-height:1.6}.relink{flex:none;width:min(760px,100% - 32px);margin:0 auto 8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 9px 8px 12px;border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-size:12.5px;animation:relink-in .18s ease-out}.relink__msg{flex:1;min-width:210px;display:flex;align-items:center;gap:10px;line-height:1.45}.relink .btn{flex:none}.relink__dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--accent);animation:state-breathe 1.9s ease-in-out infinite}.tasks{flex:none;width:min(760px,100% - 32px);margin:0 auto 8px;border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-size:12.5px}.tasks__toggle{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px 8px 12px;background:none;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--radius)}.tasks__toggle:hover{color:var(--text)}.tasks__dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--accent);animation:state-breathe 1.9s ease-in-out infinite}.tasks__summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks__chev{width:14px;height:14px;flex:none;color:var(--muted);transition:transform .15s ease}.tasks.is-open .tasks__chev{transform:rotate(180deg)}.tasks__list{list-style:none;margin:0;padding:0;max-height:min(320px,40vh);overflow-y:auto;border-top:1px solid var(--border-soft)}.task{display:flex;align-items:flex-start;gap:10px;padding:9px 10px 9px 12px}.task+.task{border-top:1px solid var(--border-soft)}.task__main{flex:1;min-width:0;display:grid;gap:2px}.task__head{display:flex;align-items:center;gap:8px}.task__kind{font-family:var(--mono);font-size:12px;color:var(--accent)}.task__bg{padding:0 6px;border:1px solid var(--border);border-radius:999px;font-size:11px;color:var(--muted)}.task__time{margin-left:auto;font-family:var(--mono);font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.task__desc,.task__activity{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task__desc{color:var(--text)}.task__activity{color:var(--muted)}.task__stats{font-size:11.5px;color:var(--muted)}.task__stop{flex:none}.task.is-stopping{opacity:.6}.relink--error{border-left-color:var(--danger)}.relink--error .relink__dot{background:var(--danger);animation:none}@keyframes relink-in{0%{opacity:0;transform:translateY(4px)}}.netguard{flex:none;display:flex;align-items:flex-start;gap:10px;padding:9px 16px;border-bottom:1px solid var(--danger);border-left:3px solid var(--danger);background:var(--danger-soft);color:var(--text);font-size:12.5px;line-height:1.5}.netguard__icon{flex:none;width:16px;height:16px;margin-top:2px;color:var(--danger)}.netguard__copy{display:grid;gap:1px;min-width:0}.netguard__reason{font-weight:600;overflow-wrap:anywhere}.netguard__note{color:var(--text-2)}.handoff{flex:none;width:min(760px,100% - 32px);margin:0 auto 8px;display:flex;flex-direction:column;gap:9px;padding:10px 12px;border:1px solid var(--border);border-left:2px solid var(--warn);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-size:12.5px;animation:relink-in .18s ease-out}.handoff__msg{display:flex;align-items:flex-start;gap:10px;line-height:1.5}.handoff__dot{width:6px;height:6px;flex:none;margin-top:5px;border-radius:50%;background:var(--warn)}.handoff__actions{display:flex;gap:8px;flex-wrap:wrap}.handoff--continued{border-left-color:var(--border);color:var(--muted)}.handoff--continued .handoff__dot{background:var(--muted)}.handoff__continued{color:var(--text-2)}.limittoasts{position:fixed;top:14px;right:14px;z-index:46;display:flex;flex-direction:column;gap:8px;width:min(360px,calc(100vw - 28px));pointer-events:none}.limittoast{pointer-events:auto;display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid var(--warn-line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-lg);color:var(--text-2);font-size:13px;line-height:1.5;animation:relink-in .18s ease-out}.limittoast__dot{width:6px;height:6px;flex:none;margin-top:6px;border-radius:50%;background:var(--warn)}.limittoast__body{flex:1}.limittoast__dismiss{flex:none;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--muted);font-size:12px}.limittoast__dismiss:hover{background:var(--surface-3);color:var(--text)}.composer{flex:none;background:var(--bg);padding:8px 16px calc(14px + env(safe-area-inset-bottom))}.composer__inner{max-width:760px;margin:0 auto;position:relative}.composer__field{display:flex;gap:8px;align-items:flex-end;padding:8px 8px 8px 4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color .14s ease,box-shadow .14s ease}.composer__field:focus-within{border-color:var(--accent-line);box-shadow:var(--ring)}.composer textarea{flex:1;resize:none;background:none;color:var(--text);border:none;padding:7px 8px 7px 12px;font:inherit;line-height:1.55;max-height:190px;min-height:38px}.composer textarea:focus{outline:none}.composer textarea::placeholder{color:var(--muted)}.composer .btn{flex:none;border-radius:999px;padding:7px 16px}.sendbtn__icon{display:none;flex:none}.addbtn{flex:none;display:grid;place-items:center;width:30px;height:30px;margin-left:4px;border-radius:999px;color:var(--muted);transition:background .12s ease,color .12s ease}.addbtn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.addbtn:disabled{opacity:.4}.addbtn svg{width:16px;height:16px}.composer__fileinput{display:none}.attachbtn{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:999px;color:var(--muted);transition:background .12s ease,color .12s ease}.attachbtn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.attachbtn:disabled{opacity:.4}.attachbtn svg{width:16px;height:16px}.composer__attachments{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px 4px}.composer__thumb{position:relative;flex:none;width:60px;height:60px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:var(--surface-2)}.composer__thumb img{display:block;width:100%;height:100%;object-fit:cover}.composer__thumb-remove{position:absolute;top:3px;right:3px;display:grid;place-items:center;width:18px;height:18px;border-radius:999px;background:#14131299;color:#fdfcfa;transition:background .12s ease}.composer__thumb-remove:hover{background:#141312d1}.composer__thumb-remove svg{width:9px;height:9px}.micbtn{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:999px;color:var(--muted);transition:background .12s ease,color .12s ease}.micbtn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.micbtn:disabled{opacity:.4}.micbtn svg{width:16px;height:16px}.micbtn.is-on{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent);animation:mic-pulse 1.6s ease-in-out infinite}.micbtn.is-on:hover:not(:disabled){color:var(--danger);background:color-mix(in srgb,var(--danger) 22%,transparent)}@keyframes mic-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--danger) 40%,transparent)}70%{box-shadow:0 0 0 5px transparent}}.composer .oplog{margin:0 0 8px}.cmdmenu{position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:10;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:min(320px,46vh);overflow-y:auto;overflow-x:hidden;animation:pop .12s ease-out}.cmdmenu__row{display:flex;align-items:baseline;gap:8px;width:100%;padding:7px 10px;border-radius:7px;text-align:left}.cmdmenu__row.is-on{background:var(--surface-2)}.cmdmenu__name{font-family:var(--mono);font-size:13px;color:var(--accent);flex:none}.cmdmenu__hint{font-family:var(--mono);font-size:12px;color:var(--warn);flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmdmenu__desc{font-size:12px;color:var(--muted);min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmdmenu__empty{padding:9px 10px;font-size:12px;color:var(--muted)}.ctxmenu{position:fixed;z-index:45;min-width:224px;max-width:min(320px,92vw);padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:pop .12s ease-out}.ctxmenu:focus{outline:none}.ctxmenu__note{padding:7px 9px 10px;margin-bottom:3px;border-bottom:1px solid var(--border-soft);font-size:12px;line-height:1.45;color:var(--muted)}.ctxmenu__item{display:flex;align-items:baseline;gap:8px;width:100%;padding:8px 9px;border-radius:7px;text-align:left;color:var(--text);font-size:13px}.ctxmenu__item.is-cursor{background:var(--surface-2)}.ctxmenu__item[aria-disabled=true]{color:var(--muted);opacity:.5;cursor:default;pointer-events:none}.ctxmenu__label{flex:1;min-width:0}.ctxmenu__hint{font-size:11.5px;color:var(--muted)}@media(max-width:860px){.ctxmenu__item{min-height:40px}}@media(hover:none){.ctxmenu__item{min-height:40px}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:16px;background:#1f1e1d6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade .14s ease-out}.modal-backdrop--sheet{align-items:flex-end;overflow-y:auto}.modal-backdrop[hidden]{display:none}@keyframes fade{0%{opacity:0}}.modal{width:100%;max-width:460px;display:flex;flex-direction:column;max-height:calc(100vh - 32px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:rise .16s cubic-bezier(.2,.8,.3,1)}@keyframes rise{0%{opacity:0;transform:translateY(10px) scale(.985)}}.modal__head{display:flex;align-items:center;gap:10px;padding:16px 16px 0}.modal__title{margin:0;flex:1;min-width:0;font-family:var(--serif);font-size:17px;font-weight:500}.modal__close{flex:none;display:grid;place-items:center;width:28px;height:28px;margin:-4px -4px 0 0;border-radius:8px;color:var(--muted);font-size:16px;line-height:1}.modal__close:hover{background:var(--surface-2);color:var(--text)}.modal__body{padding:10px 16px 16px;flex:1 1 auto;min-height:0;overflow-y:auto}.modal__text{margin:0 0 12px;font-size:13px;color:var(--muted)}.modal__text--dim{color:var(--muted);opacity:.75}.modal__error{margin:10px 0 0;padding:8px 10px;border:1px solid var(--warn);border-radius:8px;background:var(--surface-2);font-size:12.5px;color:var(--text)}.modal__actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;background:var(--surface-2);border-top:1px solid var(--border-soft)}.modal__actions .btn{padding:8px 16px}.modal__actions .btn:not(.btn--primary){background:var(--surface)}.modal__actions .btn.btn--warn{background:var(--warn);border-color:var(--warn)}.modal--sheet{max-width:480px;max-height:none;border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:visible;margin-bottom:env(safe-area-inset-bottom)}.modal--sheet .modal__body{flex:none;overflow:visible}.sessionmenu__row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 2px;border-bottom:1px solid var(--border-soft)}.sessionmenu__row:last-child{border-bottom:none}.sessionmenu__label{min-width:0;font-size:13.5px;color:var(--text-2)}.sessionmenu__row .select,.sessionmenu__row .cwd{flex:1;min-width:0}.sessionmenu__row .select__trigger{max-width:none;width:100%}.sessionmenu__row .cwd__pop{left:auto;right:0}.sessionmenu__rename{width:100%;margin-top:4px;padding:11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:13.5px;font-weight:520;text-align:center}.sessionmenu__rename:hover{background:var(--surface-3)}.sessionmenu__handoff{position:relative;overflow:hidden;width:100%;margin-top:8px;padding:11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:13.5px;font-weight:520;text-align:center;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.sessionmenu__handoff:hover:not(:disabled){background:var(--surface-3)}.sessionmenu__handoff:disabled{opacity:.6;cursor:default}.sessionmenu__handoff.is-holding{background:var(--surface-3)}.sessionmenu__handoff-hold{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent-soft);transform:scaleY(0);transform-origin:bottom;pointer-events:none}.sessionmenu__handoff.is-holding .sessionmenu__handoff-hold{animation:pane-btn-hold-fill var(--hold-ms, .5s) linear forwards}.sessionmenu__handoff-text{position:relative;z-index:1;display:flex;flex-direction:column;line-height:1.35}.sessionmenu__handoff-hint{font-size:11.5px;font-weight:400;color:var(--muted)}.sessionmenu__stop{width:100%;margin-top:8px;padding:11px;border:1px solid var(--warn-line);border-radius:var(--radius);background:var(--warn-soft);color:var(--warn);font-size:13.5px;font-weight:520;text-align:center}.sessionmenu__stop:hover{background:var(--warn);color:var(--accent-fg)}.sessionmenu__refresh{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;margin-top:4px;padding:8px 11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:13.5px;font-weight:520;text-align:center}.sessionmenu__refresh:hover:not(:disabled){background:var(--surface-3)}.sessionmenu__refresh:disabled{opacity:.6;cursor:default}.sessionmenu__refresh svg{flex:none;width:15px;height:15px}.sessionmenu__refresh.is-busy svg{animation:meters-spin .8s linear infinite}.sessionmenu__refresh-text{display:flex;flex-direction:column;line-height:1.35}.sessionmenu__refresh-time{font-size:11.5px;font-weight:400;color:var(--muted)}.field{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-bottom:6px}.input{width:100%;padding:9px 12px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:9px;font:inherit;transition:border-color .12s ease,box-shadow .12s ease}.input:focus{outline:none;border-color:var(--accent-line);box-shadow:var(--ring)}.input::placeholder{color:var(--muted)}.input--mono{font-family:var(--mono);font-size:13px}.finds{list-style:none;margin:12px 0 0;padding:0;max-height:240px;overflow-y:auto;border:1px solid var(--border-soft);border-radius:10px}.finds li+li{border-top:1px solid var(--border-soft)}.find{display:grid;grid-template-columns:1fr auto;gap:2px 10px;width:100%;padding:8px 10px;background:none;border:none;border-radius:0;text-align:left;cursor:pointer;color:var(--text);font:inherit}.find:hover:not(:disabled){background:var(--surface-2)}.find:disabled{cursor:default;opacity:.55}.find__name{font-size:13px;font-weight:500}.find__path{grid-column:1;font-family:var(--mono);font-size:11.5px;color:var(--muted);overflow-wrap:anywhere}.find__note{grid-column:2;grid-row:1 / span 2;align-self:center;max-width:45%;font-size:11.5px;color:var(--muted);text-align:right}.finds__agent{margin-top:12px;height:260px;border:1px solid var(--border-soft);border-radius:10px;overflow:hidden}.finds__agent .transcript{height:100%}.newproj__roots{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.newproj__root{padding:4px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--muted);font-family:var(--mono);font-size:11.5px;cursor:pointer}.newproj__root:hover{color:var(--text)}.newproj__root.is-on{border-color:var(--accent-line);color:var(--text)}.newproj__field{margin-top:14px}.newproj__preview{margin:8px 0 0;font-family:var(--mono);font-size:12px;color:var(--muted);overflow-wrap:anywhere}.newproj__opts{margin-top:14px;border:1px solid var(--border-soft);border-radius:10px;overflow:hidden}.newproj__opt+.newproj__opt{border-top:1px solid var(--border-soft)}.newproj__opt{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;background:none;border:none;text-align:left;cursor:pointer;color:var(--text);font:inherit;font-size:13px}.newproj__opt:hover{background:var(--surface-2)}.newproj__optlabel{flex:1;display:flex;flex-direction:column;gap:1px}.newproj__optdesc{font-size:11.5px;color:var(--muted)}.newproj__warnings{margin:0;padding:0;list-style:none}.newproj__warnings li+li{margin-top:4px}.modal--wide{max-width:620px}.tabs{display:flex;gap:4px;margin-bottom:14px;padding-bottom:2px;border-bottom:1px solid var(--border-soft)}.tabs__tab{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:8px 8px 0 0;color:var(--muted);font-size:13px;font-weight:500;position:relative}.tabs__tab:hover,.tabs__tab.is-on{color:var(--text)}.tabs__tab.is-on:after{content:"";position:absolute;left:8px;right:8px;bottom:-3px;height:2px;border-radius:2px;background:var(--accent)}.tabs__count{padding:1px 6px;border-radius:999px;background:var(--surface-2);font-size:11px;font-variant-numeric:tabular-nums}.extlist{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}.extlist__row{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.extlist__head{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:4px}.extlist__name{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--text);margin-right:2px}.extlist__meta{font-family:var(--mono);font-size:11.5px;color:var(--muted);overflow-wrap:anywhere}.extlist__error{margin-top:3px;font-size:12px;color:var(--danger);overflow-wrap:anywhere}.extlist__actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.chip{padding:2px 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:11px;white-space:nowrap}.chip--ok{color:var(--ok);border-color:var(--ok)}.chip--bad{color:var(--danger);border-color:var(--danger)}.chip--warn{color:var(--warn);border-color:var(--warn-line);background:var(--warn-soft)}.chip--mute{opacity:.75}.extauth{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}.extauth__go{text-decoration:none}.extauth__hint{margin:0;font-size:12px;line-height:1.45;color:var(--muted)}.extauth__paste{width:100%;display:flex;flex-direction:column;gap:6px}.extauth__paste .input{background:var(--surface);min-width:0}.extauth__label{font-size:12px;font-weight:600;color:var(--text)}.extauth__more{width:100%}.extauth__more>summary{display:inline-block;cursor:pointer;font-size:12px;color:var(--muted);text-decoration:underline dotted;text-underline-offset:3px}.extauth__more>summary:hover{color:var(--text)}.extauth__more>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.extauth__more[open]>summary{margin-bottom:8px}.extauth--done{flex-direction:row;align-items:center;gap:7px;font-size:12px;color:var(--ok)}.extauth__tick{font-weight:700}.extauth__wait{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.extauth__dot{width:7px;height:7px;border-radius:50%;background:var(--warn);animation:extauth-pulse 1.4s ease-in-out infinite}@keyframes extauth-pulse{50%{opacity:.25}}@media(prefers-reduced-motion:reduce){.extauth__dot{animation:none}}.btn--sm{padding:4px 9px;font-size:12px}.btn--danger{color:var(--danger)}.btn--danger:hover{background:var(--danger-soft);color:var(--danger)}.extform{margin-bottom:12px}.extform .field{margin-top:10px}.extform .field:first-child{margin-top:0}.extform--card{padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.extform--card .input{background:var(--surface)}.extbar{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.extform--card .extbar{margin:12px 0 0}.extbar .btn{padding:8px 16px}.extform__row{display:flex;gap:8px;align-items:center}.extform__row .input{flex:1;min-width:0}.extform__row .btn{flex:none}.input--area{min-height:62px;resize:vertical}.oplog{margin:12px 0;padding:9px 11px;border-radius:9px;border:1px solid var(--border);background:var(--surface-2);font-size:12.5px;white-space:pre-wrap;overflow-wrap:anywhere;animation:oplog-in .18s ease-out}.oplog:last-child{margin-bottom:0}.oplog--ok{border-color:var(--ok);color:var(--text-2)}.oplog--bad{border-color:var(--danger);color:var(--danger)}.oplog__link{display:block;margin-top:3px;color:var(--accent);font-family:var(--mono);font-size:12px;overflow-wrap:anywhere}.oplog__link:hover{text-decoration:underline}.oplog--dismissible{position:relative;padding-right:28px}.oplog__dismiss{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:18px;height:18px;border-radius:5px;color:var(--muted);font-size:10.5px;line-height:1}.oplog__dismiss:hover{background:var(--surface-3);color:var(--text)}.oplog--leaving{opacity:0;transform:translateY(-4px);transition:opacity .22s ease,transform .22s ease;pointer-events:none}@keyframes oplog-in{0%{opacity:0;transform:translateY(5px)}}.catalog__filters{display:flex;gap:8px;margin-bottom:12px}.catalog__filters .input{flex:1;min-width:0}.catalog__desc{margin:2px 0 4px;font-size:12.5px;line-height:1.5;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.linkish{padding:0;color:var(--accent);text-decoration:underline;text-underline-offset:2px}.account-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-size:13px;text-align:left}.account-btn:hover{background:var(--surface-2)}.account-btn__id{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account{padding:12px;margin-bottom:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.account__id{font-family:var(--mono);font-size:13.5px;font-weight:600;overflow-wrap:anywhere}.account__chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 4px}.account__flow .field{margin-top:12px}.account__link{display:block;padding:9px 11px;border:1px solid var(--accent-line);border-radius:9px;background:var(--accent-soft);color:var(--accent);font-family:var(--mono);font-size:12px;line-height:1.5;overflow-wrap:anywhere}.account__step{margin:8px 0 0;color:var(--muted);font-size:12.5px;line-height:1.55}.account__go{justify-content:center;width:100%;margin-top:10px;padding:11px 16px;font-size:14px}.account__raw{display:flex;align-items:center;gap:8px;margin-top:8px}.account__rawurl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-family:var(--mono);font-size:11.5px}.account__fallback{margin-top:10px;font-size:12.5px}.account__fallback summary{cursor:pointer;color:var(--muted)}.account__fallback summary:hover{color:var(--text-2)}.account__fallback .account__link{margin-top:8px}.account__coderow{flex-wrap:wrap}.account__coderow .input{flex:1 1 100%}.account__coderow .btn{flex:1 1 0;justify-content:center;min-height:40px}.account__note--code{margin:8px 0 0}.account__log{margin:12px 0;padding:9px 11px;max-height:180px;overflow:auto;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--muted);font-family:var(--mono);font-size:11.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.account__warn{margin:0 0 12px;padding:9px 11px;border:1px solid var(--warn-line);border-radius:9px;background:var(--warn-soft);color:var(--warn);font-size:12.5px;line-height:1.5}.account__note{margin:0 0 6px;color:var(--muted);font-size:12.5px;line-height:1.5}.account__bar{flex-wrap:nowrap}.account__bar .btn{padding:8px 13px}.account__bar .account__relink{margin-inline-end:auto}@media(max-width:459.98px){.account__bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.account__bar .account__relink{margin-inline-end:0}.account__bar>.account__relink,.account__bar>.btn--warn~.btn{grid-column:1 / -1}.account__bar .btn{justify-content:center}}.account__relink svg{flex:none;width:15px;height:15px;color:var(--muted)}.account__relink:hover:not(:disabled) svg{color:var(--warn)}.sheet{width:100%;max-width:560px;background:var(--surface);border:1px solid var(--warn-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:env(safe-area-inset-bottom);animation:rise .16s cubic-bezier(.2,.8,.3,1)}.sheet__head{display:flex;align-items:center;gap:8px;padding:13px 16px;background:var(--warn-soft);border-bottom:1px solid var(--border-soft);font-weight:600;color:var(--text)}.sheet__body{padding:14px 16px}.sheet__tool{font-family:var(--mono);font-size:13px;color:var(--warn);margin-bottom:8px}.sheet__reason{margin:0 0 10px;font-size:13px;line-height:1.45;color:var(--text-2)}.sheet__actions{display:flex;gap:10px;padding:0 16px 16px}.sheet__actions .btn{flex:1;justify-content:center;padding:11px}.qsheet{width:100%;max-width:620px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--accent-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:env(safe-area-inset-bottom);animation:rise .16s cubic-bezier(.2,.8,.3,1)}.qsheet__head{display:flex;align-items:center;gap:10px;padding:13px 16px;background:var(--accent-soft);border-bottom:1px solid var(--border-soft);font-weight:600;color:var(--text);flex:none}.qsheet__head-icon{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:999px;border:1.5px solid var(--accent);color:var(--accent);font-family:var(--serif);font-size:13px;font-weight:700}.qsheet__body{padding:14px 16px 6px;overflow-y:auto;flex:1}.qsheet__reason{margin:0 0 12px;font-size:13px;line-height:1.45;color:var(--text-2)}.qsheet__question+.qsheet__question{margin-top:20px;padding-top:18px;border-top:1px solid var(--border-soft)}.qsheet__question{margin-bottom:10px}.qsheet__qhead{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 9px;margin-bottom:10px}.qsheet__qtext{font-family:var(--serif);font-size:15px;font-weight:500;line-height:1.4;color:var(--text)}.chip--accent{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.qsheet__options{display:flex;flex-direction:column;gap:6px}.qsheet__option{display:flex;align-items:flex-start;gap:10px;width:100%;padding:9px 11px;text-align:left;border:1px solid var(--border);border-radius:10px;background:var(--surface);transition:border-color .12s ease,background .12s ease}.qsheet__option:hover{background:var(--surface-2)}.qsheet__option:focus-visible{outline:none;box-shadow:var(--ring)}.qsheet__option.is-selected{border-color:var(--accent);background:var(--accent-soft)}.qsheet__opt-mark{position:relative;flex:none;margin-top:2px;width:15px;height:15px;border:1.5px solid var(--border);background:var(--surface)}.qsheet__options--radio .qsheet__opt-mark{border-radius:999px}.qsheet__options:not(.qsheet__options--radio) .qsheet__opt-mark{border-radius:5px}.qsheet__option.is-selected .qsheet__opt-mark{border-color:var(--accent);background:var(--accent)}.qsheet__options--radio .qsheet__option.is-selected .qsheet__opt-mark{box-shadow:inset 0 0 0 3px var(--surface)}.qsheet__options:not(.qsheet__options--radio) .qsheet__option.is-selected .qsheet__opt-mark:after{content:"✓";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:10px;line-height:1;color:var(--accent-fg)}.qsheet__opt-body{min-width:0}.qsheet__opt-label{display:block;font-size:13.5px;font-weight:560;color:var(--text)}.qsheet__opt-desc{display:block;margin-top:2px;font-size:12.5px;line-height:1.4;color:var(--muted)}.qsheet__other{display:flex;flex-direction:column}.qsheet__other-input{margin-top:6px;width:100%;padding:8px 10px;border:1px solid var(--accent-line);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:13px}.qsheet__other-input:focus{outline:none;box-shadow:var(--ring)}.qsheet__other-input::placeholder{color:var(--muted)}.qsheet__preview{margin:10px 0 0;padding:10px 12px;border:1px solid var(--border-soft);border-radius:8px;background:var(--bg);color:var(--code-fg);font-family:var(--mono);font-size:12px;line-height:1.5;white-space:pre;overflow:auto;max-height:220px}.qsheet__actions{display:flex;gap:10px;padding:12px 16px;border-top:1px solid var(--border-soft);flex:none}.qsheet__actions .btn{flex:1;justify-content:center;padding:11px}.plansheet{width:100%;max-width:720px;min-height:min(56vh,460px);max-height:calc(100vh - 24px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--ok-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:env(safe-area-inset-bottom);animation:rise .16s cubic-bezier(.2,.8,.3,1)}.plansheet__head{display:flex;align-items:center;gap:10px;padding:13px 16px;background:var(--ok-soft);border-bottom:1px solid var(--border-soft);font-weight:600;color:var(--text);flex:none}.plansheet__head-icon{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:999px;border:1.5px solid var(--ok);color:var(--ok)}.plansheet__head-icon svg{width:13px;height:13px}.plansheet__head-text{flex:1;min-width:0}.plansheet__viewtoggle{display:flex;flex:none;gap:2px;padding:2px;background:var(--surface);border-radius:var(--radius)}.plansheet__viewtoggle .btn{border:none;background:transparent;color:var(--muted)}.plansheet__viewtoggle .btn:hover{background:var(--surface-3);color:var(--text-2)}.plansheet__viewtoggle .btn.is-on{background:var(--surface-2);color:var(--text);box-shadow:var(--shadow-sm)}.plansheet__body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.plansheet__reason{margin:12px 16px 0;font-size:13px;line-height:1.45;color:var(--text-2);flex:none}.plansheet__content{flex:1;min-height:0;display:flex;overflow:hidden}.markdown-preview.plansheet__preview{padding:22px 26px}.plansheet__source{flex:1;min-height:0;width:100%;resize:none;border:none;padding:22px 26px;background:var(--bg);color:var(--text);font:inherit;font-family:var(--mono);font-size:13px;line-height:1.65;-moz-tab-size:2;tab-size:2}.plansheet__source:focus{outline:none}.plansheet__source::placeholder{color:var(--muted)}.plansheet__actions{display:flex;gap:10px;padding:12px 16px;border-top:1px solid var(--border-soft);flex:none}.plansheet__actions .btn{flex:1;justify-content:center;padding:11px}.sheet__head-text,.qsheet__head-text{flex:1;min-width:0}.decision-collapse{flex:none;display:inline-flex;align-items:center;gap:4px;margin:-4px -6px -4px 0;padding:4px 8px;border:0;border-radius:var(--radius);background:transparent;color:var(--muted);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer}.decision-collapse:hover{background:var(--surface-3);color:var(--text-2)}.decision-collapse:focus-visible{outline:none;box-shadow:var(--ring)}.decision-collapse svg{width:14px;height:14px}@media(max-width:520px){.decision-collapse__label{display:none}.decision-collapse{padding:6px}}.decision-bar{--tone: var(--accent);--tone-line: var(--accent-line);--tone-soft: var(--accent-soft);flex:none;width:min(760px,100% - 32px);margin:0 auto 8px;display:flex;align-items:center;gap:10px;padding:8px 10px 8px 12px;border:1px solid var(--tone-line);border-left:2px solid var(--tone);border-radius:var(--radius);background:var(--tone-soft);color:var(--text);font:inherit;text-align:left;cursor:pointer;animation:relink-in .18s ease-out}.decision-bar--plan{--tone: var(--ok);--tone-line: var(--ok-line);--tone-soft: var(--ok-soft)}.decision-bar--permission{--tone: var(--warn);--tone-line: var(--warn-line);--tone-soft: var(--warn-soft)}.decision-bar:hover{border-color:var(--tone)}.decision-bar:focus-visible{outline:none;box-shadow:var(--ring)}.decision-bar__icon{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:999px;border:1.5px solid var(--tone);color:var(--tone);font-family:var(--serif);font-size:13px;font-weight:700}.decision-bar__icon svg{width:13px;height:13px}.decision-bar__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.decision-bar__title,.decision-bar__sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.decision-bar__title{font-size:13px;font-weight:600}.decision-bar__sub{font-size:12px;color:var(--text-2)}.decision-bar__action{flex:none;display:inline-flex;align-items:center;gap:4px;font-size:12.5px;font-weight:500;color:var(--text-2)}.decision-bar:hover .decision-bar__action{color:var(--text)}.decision-bar__action svg{width:14px;height:14px}@media(max-width:520px){.decision-bar__action{font-size:0;gap:0}}.pane-btn{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;color:var(--muted);transition:background .12s ease,color .12s ease}.pane-btn:hover{background:var(--surface-2);color:var(--text)}.pane-btn.is-on{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-line)}.pane-btn svg{width:16px;height:16px}.pane-btn--stop:hover{background:var(--warn-soft);color:var(--warn)}.pane-btn--handoff:hover{background:var(--accent-soft);color:var(--accent)}.pane-btn--handoff.is-busy{color:var(--accent);cursor:default}.pane-btn--handoff.is-busy svg{animation:handoff-pulse 1.2s ease-in-out infinite}@keyframes handoff-pulse{0%,to{opacity:.35;transform:translate(0)}50%{opacity:1;transform:translate(1.5px)}}.pane-btn--handoff{position:relative;overflow:hidden;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.pane-btn--handoff.is-holding{background:var(--accent-soft)}.pane-btn__hold{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent-soft);transform:scaleY(0);transform-origin:bottom;pointer-events:none}.pane-btn--handoff.is-holding .pane-btn__hold{animation:pane-btn-hold-fill var(--hold-ms, .5s) linear forwards}.pane-btn--handoff svg{position:relative;z-index:1}@keyframes pane-btn-hold-fill{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.sidepane{display:none;flex-direction:column;min-height:0;min-width:0;background:var(--sidebar)}.sidepane--open{display:flex}.sidepane--git{border-right:1px solid var(--border)}.sidepane--ask{border-left:1px solid var(--border)}.sidepane.sidepane--zoomed{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32;width:auto}.sidepane__head{display:flex;align-items:center;gap:8px;flex:none;padding:12px 10px 12px 14px;border-bottom:1px solid var(--border-soft)}.sidepane__icon{flex:none;width:15px;height:15px;color:var(--muted)}.sidepane__title{flex:1;min-width:0;font-family:var(--serif);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidepane__btn{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:7px;color:var(--muted);font-size:13px;line-height:1}.sidepane__btn:hover{background:var(--surface-2);color:var(--text)}.sidepane__btn:disabled{opacity:.35;cursor:default;background:none}.sidepane__btn svg{width:15px;height:15px}.sidepane__scroll{flex:1;min-height:0;overflow-y:auto;padding:6px 0 10px}.sidepane__empty{margin:0;padding:22px 16px;color:var(--muted);font-size:13px;line-height:1.55}.gitempty{padding:22px 16px}.gitempty__text{margin:0 0 14px;color:var(--muted);font-size:13px;line-height:1.55}.gitempty__btn{width:100%;justify-content:center}.gitempty__hint{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.sidepane__tools{display:flex;align-items:center;gap:8px;flex:none;padding:0 10px 8px;border-bottom:1px solid var(--border-soft)}.sidepane__note{font-size:11px;color:var(--muted);white-space:nowrap;cursor:default}.select--compact{min-width:0}.select--compact .select__trigger{max-width:100%;padding:3px 7px 3px 10px;font-size:11.5px}.select--compact .select__menu{left:0;right:auto;max-width:min(340px,calc(100vw - 24px))}.composer--side{padding:8px 10px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border-soft)}.composer--side .composer__inner{max-width:none}.composer--side .composer__field{flex-wrap:wrap;gap:4px 6px;padding:5px 6px;border-radius:var(--radius)}.composer--side textarea{order:-1;flex:1 0 100%;padding:4px 4px 2px 6px;font-size:13px;line-height:1.5;min-height:26px;max-height:140px}.composer--side .btn{padding:5px 13px;font-size:12.5px}.composer--side .addbtn{width:26px;height:26px;margin:0 auto 0 0}.composer--side .addbtn svg{width:14px;height:14px}.composer--side .micbtn{width:28px;height:28px}.composer--side .micbtn svg{width:14px;height:14px}.sidepane--ask .transcript{padding:14px 12px 4px}.sidepane--ask .stream{gap:12px}.sidepane--ask .msg--user{max-width:94%}.sidepane--ask .empty{padding:28px 4px;font-size:14px;text-align:left}.sidepane--files,.sidepane--search{border-right:1px solid var(--border)}.fssearch{display:flex;flex:none;align-items:center;gap:7px;margin:10px 10px 2px;padding:6px 9px;border:1px solid var(--border-soft);border-radius:8px;background:var(--surface)}.fssearch:focus-within{border-color:var(--accent-line);box-shadow:var(--ring)}.fssearch svg{flex:none;width:14px;height:14px;color:var(--muted)}.fssearch__input{flex:1;min-width:0;background:none;border:none;color:var(--text);font:inherit;font-size:12.5px}.fssearch__input:focus{outline:none}.fssearch__input::placeholder{color:var(--muted)}.fssearch__clear{flex:none;display:grid;place-items:center;width:18px;height:18px;border-radius:5px;color:var(--muted);font-size:10px;line-height:1}.fssearch__clear:hover{background:var(--surface-3);color:var(--text)}.fstree{padding:4px 0 clamp(96px,26vh,160px);overflow-x:auto}.fstree:focus{outline:none}.fsrow{display:flex;align-items:center;min-width:100%;width:max-content;padding-left:calc(8px + var(--depth, 0) * 13px);padding-right:4px;height:25px}.fsrow:hover,.fsrow.is-selected{background:var(--surface-2)}.fsrow.is-open{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.fsrow--dragging{opacity:.4}.fsrow--drop-target{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line)}.fsrow--cut{opacity:.4}.fstree--drop-target{background:var(--surface-2)}.fsrow__main{display:flex;align-items:center;gap:6px;flex:1;min-width:0;height:100%;padding:0;text-align:left}.fsrow__icon{flex:none;display:grid;place-items:center;width:15px;height:15px;color:var(--muted)}.fsrow__icon svg{width:15px;height:15px}.fsrow.is-open .fsrow__icon{color:var(--accent)}.fsrow__name{font-size:13px;color:var(--text-2);white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}.fsrow.is-open .fsrow__name{color:var(--text)}.fsrow__icon--git-added,.fsrow__name--git-added{color:var(--ok)}.fsrow__icon--git-modified,.fsrow__name--git-modified{color:var(--warn)}.fsrow--ignored .fsrow__icon,.fsrow--ignored .fsrow__name{color:var(--muted);opacity:.72}.fsrow__tag,.cmdmenu__tag{flex:none;margin-left:6px;font-family:var(--mono);font-size:10px;letter-spacing:.02em;color:var(--muted);opacity:.8;white-space:nowrap}.fsrow__dot{flex:none;width:6px;height:6px;margin-left:2px;border-radius:50%;background:var(--accent)}.fsrow__act{flex:none;display:none;place-items:center;width:20px;height:20px;border-radius:6px;color:var(--muted);font-size:11px;line-height:1}.fsrow:hover .fsrow__act{display:grid}.fsrow__act:hover{background:var(--surface-3);color:var(--text)}.fsrow__act:focus-visible{display:grid}@media(hover:none){.fsrow__act{display:grid}}.fsrow--search{gap:6px;width:100%;color:inherit;font:inherit;text-align:left;padding-right:8px}.fsrow--search:hover{background:var(--surface-2)}.fsrow__path{flex:1;min-width:0;margin-left:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11.5px}.fsrow--draft{gap:6px}.rename--file{flex:1;min-width:0;height:21px;padding:0 6px;font-size:13px}.fsrow__pending{margin:0;padding:2px 0 2px calc(8px + var(--depth) * 13px + 21px);color:var(--muted);font-size:12px}.searchgroup__path{margin:10px 0 0;padding:3px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2);font-size:12px;font-weight:600}.searchgroup__path:first-child{margin-top:0}.searchmatch{display:flex;width:100%;align-items:baseline;gap:10px;padding:3px 10px 3px 14px;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.searchmatch:hover{background:var(--surface-2)}.searchmatch__line{flex:none;min-width:2ch;color:var(--muted);font-family:var(--mono);font-size:11.5px;text-align:right}.searchmatch__text{flex:1;min-width:0;overflow:hidden;color:var(--text-2);font-family:var(--mono);font-size:12.5px;white-space:pre;text-overflow:ellipsis}.searchmatch__text mark{background:var(--accent-soft);color:var(--text);border-radius:3px}.worktabs{display:flex;flex:none;align-items:stretch;gap:2px;padding:4px 8px 0;overflow-x:auto;background:var(--bg);border-bottom:1px solid var(--border)}.worktabs__spacer{flex:1;min-width:8px}.worktabs__zoom{flex:none;align-self:center;display:grid;place-items:center;width:26px;height:26px;margin:0 2px;border-radius:7px;color:var(--muted)}.worktabs__zoom:hover{background:var(--surface-2);color:var(--text)}.worktabs__zoom svg{width:15px;height:15px}.worktab{display:flex;align-items:center;gap:5px;flex:none;max-width:220px;padding:0 8px 0 10px;height:30px;border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;color:var(--muted);font-size:12.5px}.worktab:hover{background:var(--surface-2);color:var(--text-2)}.worktab.is-on{background:var(--surface);border-color:var(--border);color:var(--text);margin-bottom:-1px;padding-bottom:1px}.worktab__name{min-width:0;padding:0;color:inherit;font:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.worktab__close{flex:none;display:grid;place-items:center;width:17px;height:17px;border-radius:5px;color:var(--muted);font-size:10px;line-height:1}.worktab__close:hover{background:var(--surface-3);color:var(--text)}.worktab__dot{flex:none;width:7px;height:7px;margin:0 5px;border-radius:50%;background:var(--accent);padding:0}.worktab__dot--busy{background:var(--ok);cursor:default;animation:badge-pulse 2s ease-in-out infinite}.editor{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg)}.editor__bar{display:flex;align-items:center;gap:10px;flex:none;padding:7px 14px;border-bottom:1px solid var(--border-soft)}.editor__path{min-width:0;flex:1;font-family:var(--mono);font-size:12px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;text-align:left}.editor__meta{flex:none;font-family:var(--mono);font-size:11.5px;color:var(--muted)}.editor__warn{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:none;padding:8px 14px;background:var(--warn-soft);border-bottom:1px solid var(--warn-line);color:var(--warn);font-size:12.5px}.editor__code{flex:1;min-height:0;overflow:hidden}.editor__code-surface{width:100%;height:100%}.editor__code-surface.is-hidden{display:none}.editor__state{display:grid;justify-items:center;align-content:center;gap:10px;height:100%;color:var(--muted);font-size:13.5px}.editor__fallback{display:flex;flex-direction:column;height:100%;min-height:0}.editor__fallback-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:none;padding:8px 14px;background:var(--danger-soft);border-bottom:1px solid color-mix(in srgb,var(--danger) 40%,transparent);color:var(--danger);font-size:12.5px}.editor__fallback-text{flex:1;min-height:0;margin:0;padding:14px;overflow:auto;font-family:var(--mono);font-size:12.5px;line-height:1.6;color:var(--text-2);white-space:pre-wrap;word-break:break-word}.editor__empty{margin:0;padding:28px 20px;color:var(--muted);font-size:13.5px;line-height:1.6}.editor__viewtoggle{display:flex;flex:none;gap:2px;padding:2px;background:var(--surface-2);border-radius:var(--radius)}.editor__viewtoggle .btn{border:none;background:transparent;color:var(--muted)}.editor__viewtoggle .btn:hover{background:var(--surface-3);color:var(--text-2)}.editor__viewtoggle .btn.is-on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.markdown-preview{flex:1;min-height:0;overflow:auto;padding:28px 32px;font-family:var(--serif);font-size:15px;line-height:1.65;color:var(--text)}.markdown-preview>:first-child{margin-top:0}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4,.markdown-preview h5,.markdown-preview h6{font-family:var(--sans);font-weight:600;line-height:1.3;margin:1.4em 0 .5em}.markdown-preview h1{font-size:1.6em;border-bottom:1px solid var(--border-soft);padding-bottom:.3em}.markdown-preview h2{font-size:1.3em}.markdown-preview h3{font-size:1.1em}.markdown-preview p,.markdown-preview ul,.markdown-preview ol,.markdown-preview blockquote{margin:.8em 0}.markdown-preview ul,.markdown-preview ol{padding-left:1.6em}.markdown-preview li+li{margin-top:.3em}.markdown-preview a{color:var(--accent)}.markdown-preview blockquote{border-left:3px solid var(--border);padding-left:1em;color:var(--text-2)}.markdown-preview code{font-family:var(--mono);font-size:.87em;background:var(--surface-2);padding:.15em .4em;border-radius:4px}.markdown-preview pre{background:var(--surface-2);padding:12px 14px;border-radius:var(--radius);overflow:auto}.markdown-preview pre code{background:none;padding:0}.markdown-preview pre code .cmh-key{color:var(--cm-key)}.markdown-preview pre code .cmh-prop{color:var(--cm-prop)}.markdown-preview pre code .cmh-fn{color:var(--cm-fn)}.markdown-preview pre code .cmh-const{color:var(--cm-const)}.markdown-preview pre code .cmh-type{color:var(--cm-type)}.markdown-preview pre code .cmh-num{color:var(--cm-num)}.markdown-preview pre code .cmh-str{color:var(--cm-str)}.markdown-preview pre code .cmh-op{color:var(--cm-op)}.markdown-preview pre code .cmh-comment{color:var(--cm-comment);font-style:italic}.markdown-preview pre code .cmh-invalid{color:var(--danger)}.markdown-preview table{border-collapse:collapse;width:100%;font-size:.92em}.markdown-preview th,.markdown-preview td{border:1px solid var(--border-soft);padding:6px 10px;text-align:left}.markdown-preview th{background:var(--surface-2)}.markdown-preview img{max-width:100%}.markdown-preview hr{border:none;border-top:1px solid var(--border-soft);margin:1.6em 0}.mediaview{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;background:var(--bg)}.mediaview--message{display:grid;justify-items:center;align-content:center;gap:12px;height:100%;padding:24px;text-align:center}.mediaview__progress{width:220px;height:3px;border-radius:2px;background:var(--surface-3);overflow:hidden}.mediaview__progress-fill{height:100%;width:35%;border-radius:2px;background:var(--accent);animation:mediaview-progress 1.3s ease-in-out infinite}@keyframes mediaview-progress{0%{transform:translate(-100%)}to{transform:translate(385%)}}.mediaview__label{color:var(--muted);font-size:13px}.mediaview__error{max-width:42ch;margin:0;color:var(--text-2);font-size:13.5px;line-height:1.6}.mediaview--image .mediaview__stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none}.mediaview--image .mediaview__stage.is-zoomed{cursor:grab}.mediaview--image .mediaview__stage.is-dragging{cursor:grabbing}.mediaview__image{max-width:100%;max-height:100%;-webkit-user-select:none;user-select:none;will-change:transform}.mediaview__toolbar{position:absolute;left:50%;bottom:16px;transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:3px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.mediaview__toolbar .btn{border:none;background:transparent;color:var(--muted);padding:5px 8px}.mediaview__toolbar .btn:hover{background:var(--surface-2);color:var(--text-2)}.mediaview__toolbar .btn svg{width:15px;height:15px;display:block}.mediaview__zoomlabel{min-width:3.6ch;padding:0 2px;text-align:center;font-family:var(--mono);font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}.mediaview--video{align-items:center;justify-content:center;gap:12px;padding:20px}.mediaview__video{max-width:100%;max-height:calc(100% - 44px);border-radius:var(--radius);background:#000;box-shadow:var(--shadow-sm)}.mediaview__speedbar{display:flex;flex:none;align-items:center;gap:8px}.mediaview__speedlabel{font-size:12px;color:var(--muted)}.mediaview__speedselect .select__trigger{max-width:none}.gitbar{display:flex;align-items:center;gap:6px;flex:none;padding:10px 12px;border-bottom:1px solid var(--border-soft)}.gitbar__branch{flex:1;min-width:0}.gitbar__branch .select__trigger{width:100%;max-width:none}.gitbar__branch .select__menu{left:0;right:auto;min-width:100%}.gitbar__note{margin:0;padding:8px 14px;background:var(--warn-soft);border-bottom:1px solid var(--border-soft);color:var(--warn);font-size:12px;line-height:1.45}.gitbar__actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border-soft)}.gitbar__group{display:inline-flex;gap:3px}.gitbar__check{padding-left:7px;padding-right:7px}.gitbar__check svg{width:13px;height:13px}.gitbar__actions svg{width:13px;height:13px;flex:none}.gitbar__count{padding:0 5px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-variant-numeric:tabular-nums}.btn--primary .gitbar__count{background:#ffffff38;color:inherit}.gitbar__busy{display:flex;align-items:center;gap:7px;margin:0;color:var(--muted);font-size:12.5px}.gitbar__busy svg{animation:meters-spin .8s linear infinite}.gitrow{display:flex;align-items:center;gap:2px;width:100%;height:50px;padding:0 10px 0 0;text-align:left}.gitrow:hover{background:var(--surface-2)}.gitrow.is-on{background:var(--surface-2);box-shadow:inset 2px 0 0 var(--accent)}.gitrow--work{height:46px;padding-left:14px;border-bottom:1px solid var(--border-soft);margin-bottom:4px}.gitrow__body{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}.gitrow__subject{display:block;font-size:13px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gitrow.is-on .gitrow__subject{color:var(--text)}.gitrow__meta{display:block;font-family:var(--mono);font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gitrow__ref{display:inline-block;margin-right:5px;padding:0 5px;border:1px solid var(--accent-line);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-family:var(--mono);font-size:10.5px;vertical-align:1px}.gitgraph{flex:none}.gitgraph line,.gitgraph path{stroke-width:1.6;fill:none}.gitgraph__dot{fill:var(--sidebar);stroke-width:2}.gitrow:hover .gitgraph__dot{fill:var(--surface-2)}.gitgraph__head{fill:none;stroke:var(--accent);stroke-width:1.4;opacity:.65}.gitrow__local{margin-left:5px;color:var(--warn)}.commit__head{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--border-soft)}.commit__line{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:0 0 6px}.commit__line--hash{align-items:center;margin:4px 0 0}.commit__line--hash .commit__hash{min-width:0;color:var(--muted);overflow-wrap:anywhere}.commit__line .commit__subject{flex:1;min-width:0;margin:0}.commit__subject{margin:0 0 6px;font-size:15px;font-weight:560;overflow-wrap:anywhere}.commit__meta{margin:0;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.commit__hash{font-family:var(--mono);font-size:11.5px}.commit__meta--local{margin-top:4px;color:var(--warn)}.commit__body{margin:10px 0 0;padding:9px 11px;border-radius:9px;background:var(--surface-2);font-family:var(--mono);font-size:12px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-2)}.commit__file{margin-bottom:8px}.commit__filehead{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);font-family:var(--mono);font-size:12px;text-align:left}.commit__filehead:hover{background:var(--surface-3)}.commit__filepath{min-width:0;flex:1;color:var(--text-2);overflow-wrap:anywhere}.commit__file .diff{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.commit__file .diff__head{display:none}.publish__section{margin-top:20px;padding-top:18px;border-top:1px solid var(--border-soft)}.publish__section--first{margin-top:0;padding-top:0;border-top:none}.publish__heading{margin:0 0 10px;font-size:13px;font-weight:650;color:var(--text)}.publish__field{margin-top:10px}.publish__static{margin:0;padding:9px 12px;background:var(--surface-2);border-radius:9px;font-family:var(--mono);font-size:13px;color:var(--text-2)}.publish__account{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.publish__accountvia{font-size:12.5px;color:var(--muted)}.publish__connect .modal__text{margin-bottom:10px}.publish__tokenhint{margin:8px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}.publish__tokenhint code{font-family:var(--mono);font-size:.95em}.publish__tokenhint a{color:var(--accent)}.publish__filehead{display:flex;align-items:center;gap:8px;margin-bottom:8px}.publish__filecount{flex:1;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.publish__filter{margin-bottom:8px;font-size:12.5px}.publish__filelist{max-height:240px;overflow-y:auto;border:1px solid var(--border-soft);border-radius:9px}.publish__file{display:flex;align-items:center;gap:9px;width:100%;padding:6px 10px;text-align:left;font-family:var(--mono);font-size:12px;color:var(--text-2)}.publish__file:hover{background:var(--surface-2)}.publish__file+.publish__file{border-top:1px solid var(--border-soft)}.publish__box{flex:none;display:grid;place-items:center;width:15px;height:15px;border:1.5px solid var(--border);border-radius:4px;font-size:10px;color:var(--accent-fg);transition:background .12s ease,border-color .12s ease}.publish__box.is-on{background:var(--accent);border-color:var(--accent)}.publish__filepath{min-width:0;overflow-wrap:anywhere}.publish__filesempty{margin:0;padding:10px}.publish__truncated{margin:8px 0 0;font-size:12px;color:var(--warn)}.pwfield{position:relative}.pwfield__input{padding-right:34px}.pwfield__input::-ms-reveal,.pwfield__input::-ms-clear{display:none}.pwfield__toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:26px;height:26px;border-radius:6px;color:var(--muted)}.pwfield__toggle svg{width:15px;height:15px}.pwfield__toggle:hover{background:var(--surface-2);color:var(--text)}.pwfield__toggle[aria-pressed=true]{color:var(--accent)}.scrim{display:none}@media(max-width:860px){.app{grid-template-columns:1fr}.sidebar,.main,.sidepane{grid-column:1}.pane-resizer{display:none}.sidepane--open{position:fixed;top:0;bottom:0;width:min(var(--ask-w),calc(100vw - 44px));z-index:30;box-shadow:var(--shadow-lg)}.sidepane--open.sidepane--git,.sidepane--open.sidepane--files,.sidepane--open.sidepane--search{left:0;width:min(var(--git-w),calc(100vw - 44px))}.sidepane--open.sidepane--ask{right:0}.scrim--pane{display:block}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);z-index:30;transform:translate(-100%);transition:transform .18s ease;box-shadow:var(--shadow-lg)}.sidebar--open{transform:none}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#1f1e1d6b;z-index:20}.menu-btn{display:grid;place-items:center;width:40px;height:40px;padding:0}.pane-btn{width:40px;height:40px}.pane-btn svg{width:18px;height:18px}.topbar{gap:6px}.topbar__id{flex:1 1 100%;flex-direction:row;align-items:center;gap:10px}.topbar__head,.topbar__title{flex:1 1 auto;min-width:0}.msg--user{max-width:92%}.transcript{padding:16px 12px 4px}.composer{padding:6px 12px calc(10px + env(safe-area-inset-bottom))}.composer .sendbtn{width:32px;height:32px;padding:0;justify-content:center;border-radius:999px}.sendbtn__label{display:none}.sendbtn__icon{display:block;width:16px;height:16px}.composer--side .sendbtn{width:28px;height:28px}.composer--side .sendbtn__icon{width:14px;height:14px}.worktabs{padding:4px 6px 0}.worktab{max-width:150px}.editor__bar{padding:6px 10px}.editor__path{font-size:11.5px}}@media(max-width:380px){.menu-btn,.pane-btn{width:36px;height:36px}.pane-btn svg{width:16px;height:16px}.topbar{gap:4px}}.term-resizer{flex:none;display:flex;align-items:center;justify-content:center;position:relative;z-index:5;height:9px;margin:-4px 0;cursor:row-resize;touch-action:none}.term-resizer__line{width:100%;height:2px;margin:0 10px;border-radius:2px;background:transparent;transition:background .12s ease}.term-resizer:hover .term-resizer__line,.term-resizer:active .term-resizer__line,.term-resizer:focus-visible .term-resizer__line{background:var(--accent)}.term-resizer:focus-visible{outline:none}body.is-resizing-row{cursor:row-resize;-webkit-user-select:none;user-select:none}.termpanel{display:flex;flex-direction:column;flex:none;min-height:0;background:var(--surface);border-top:1px solid var(--border)}.termpanel--mobile{position:fixed;inset:0 0 auto 0;z-index:35;border-top:none;overscroll-behavior:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.termpanel--zoomed{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32;border-top:none}.termpanel__tabbar{display:flex;align-items:stretch;flex:none;gap:2px;padding:4px 6px;background:var(--bg);border-bottom:1px solid var(--border)}.termpanel--mobile .termpanel__tabbar{touch-action:pan-x}.termpanel__tabs{display:flex;align-items:stretch;gap:2px;min-width:0;overflow-x:auto}.termpanel--mobile .termpanel__tabs{touch-action:pan-x}.termtab{display:flex;align-items:center;gap:6px;flex:none;max-width:180px;padding:0 6px 0 11px;height:28px;border-radius:7px;color:var(--muted);font-size:12.5px}.termtab:hover{background:var(--surface-2);color:var(--text-2)}.termtab.is-on{background:var(--surface-3);color:var(--text)}.termtab--exited{opacity:.62}.termtab--exited.is-on{opacity:.85}.termtab__name{min-width:0;padding:0;color:inherit;font:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.termtab__code{flex:none;padding:0 5px;border-radius:999px;background:var(--danger-soft);color:var(--danger);font-family:var(--mono);font-size:10.5px;line-height:16px}.termtab__close{flex:none;display:grid;place-items:center;width:17px;height:17px;border-radius:5px;color:var(--muted);font-size:10px;line-height:1}.termtab__close:hover{background:var(--surface-3);color:var(--text)}.termpanel__add{flex:none;display:grid;place-items:center;width:26px;height:28px;margin-left:2px;border-radius:7px;color:var(--muted);font-size:16px;line-height:1}.termpanel__add:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.termpanel__add:disabled{opacity:.4;cursor:default}.termpanel__spacer{flex:1}.termpanel__zoom,.termpanel__hide{flex:none;display:grid;place-items:center;width:26px;height:28px;border-radius:7px;color:var(--muted);font-size:11px}.termpanel__zoom:hover,.termpanel__hide:hover{background:var(--surface-2);color:var(--text)}.termpanel__zoom svg{width:15px;height:15px}.termpanel--mobile .termpanel__hide{width:44px;height:44px;font-size:15px}.termpanel__body{position:relative;flex:1;min-height:0}.termview{display:none;width:100%;height:100%;padding:4px 0 4px 10px}.termview.is-active{display:block}.termpanel--mobile .xterm-viewport{overscroll-behavior:contain}.termpanel--mobile .termview{touch-action:pinch-zoom}.termview__surface{width:100%;height:100%}.termview__surface.is-hidden{display:none}.termview__state{display:grid;justify-items:center;align-content:center;gap:10px;height:100%;color:var(--muted);font-size:13.5px;text-align:center}.termview__state p{margin:0}.termview__state--error p:first-child{color:var(--text-2);font-weight:550}.termpanel__empty{display:grid;justify-items:center;align-content:center;gap:10px;height:100%;color:var(--muted);font-size:13.5px}.termpanel__empty p{margin:0}.termpanel--mobile .termpanel__empty,.termpanel--mobile .termview__state{touch-action:none}.termpanel__hint{max-width:46ch;text-align:center;font-size:12.5px;line-height:1.5}.termfail{display:flex;flex-direction:column;align-items:center;gap:10px;height:100%;padding:12px 16px;overflow:auto;color:var(--muted);font-size:13.5px;text-align:center}.termfail>:first-child{margin-top:auto}.termfail>:last-child{margin-bottom:auto}.termfail__text{display:grid;gap:6px;max-width:52ch}.termfail__lede{margin:0;color:var(--danger);font-weight:550;line-height:1.45}.termfail__hint{margin:0;font-size:12.5px;line-height:1.5}.termfail__bar{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.termfail__bar .btn{padding:9px 15px}.termfail__details{font-size:12px}.termfail__details summary{cursor:pointer;color:var(--muted);text-align:center}.termfail__details summary:hover{color:var(--text-2)}.termfail__details pre{margin:6px 0 0;padding:8px 10px;max-height:96px;overflow:auto;border-radius:8px;background:var(--surface-2);color:var(--muted);font-family:var(--mono);font-size:11.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left}.termfail--strip{flex-direction:row;align-items:flex-start;gap:10px;height:auto;max-height:40%;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--danger-soft);text-align:left}.termfail--strip>:first-child,.termfail--strip>:last-child{margin:0}.termfail--strip .termfail__text{flex:1;min-width:0;max-width:none}.termfail--strip .termfail__details summary{text-align:left}.termfail--strip .termfail__bar{flex:none}.termpanel--mobile .termfail{touch-action:pan-y}.relay{display:grid;gap:16px}.relay__lede{margin:0;color:var(--text-2);line-height:1.55}.relay__steps{margin:0;padding-left:20px;display:grid;gap:7px;color:var(--text-2);font-size:14px;line-height:1.5}.relay__form{display:grid;gap:14px}.relay__code{font-family:var(--mono);font-size:20px;letter-spacing:.16em;text-align:center;text-transform:uppercase}.relay__facts{margin:0;display:grid;gap:10px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.relay__facts>div{display:flex;align-items:center;gap:12px;font-size:14px}.relay__facts dt{color:var(--muted);min-width:96px}.relay__facts dd{margin:0;color:var(--text)}.relay__error{margin:0;padding:10px 12px;border:1px solid var(--danger);border-radius:var(--radius);background:var(--danger-soft);color:var(--danger);font-size:13.5px}.relay__note{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.settings{display:grid;gap:22px}.settings__section{display:grid;gap:10px}.settings__heading{margin:0;font-size:13px;font-weight:600;color:var(--text)}.settings__hint{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.settings__field{display:grid;gap:6px}.settings__field-label{font-size:12.5px;color:var(--text-2)}.settings__pct{display:flex;align-items:center;gap:8px}.settings__pct-input{width:68px;text-align:right}.settings__pct-suffix{color:var(--muted);font-size:13px}.settings__select{width:100%}.settings__select .select__trigger{width:100%;max-width:none;justify-content:space-between}.settings__select .select__menu{left:0;right:0;max-width:none}.settings__select-skeleton{display:flex;align-items:center;height:33px;padding:4px 8px 4px 11px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:12px;font-family:var(--mono)}.access{display:grid;gap:8px}.access__card{display:flex;align-items:flex-start;gap:11px;width:100%;padding:12px 13px;text-align:left;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color .12s ease,background .12s ease}.access__card:hover:not(:disabled){background:var(--surface-2)}.access__card:disabled{opacity:.55;cursor:default}.access__card.is-on{border-color:var(--accent-line);background:var(--accent-soft)}.access__card--risky{border-color:var(--warn-line)}.access__card--risky.is-on{border-color:var(--warn);background:var(--warn-soft)}.access__radio{position:relative;flex:none;margin-top:2px;width:15px;height:15px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface);transition:border-color .12s ease}.access__card.is-on .access__radio{border-color:var(--accent)}.access__card--risky.is-on .access__radio{border-color:var(--warn)}.access__card.is-on .access__radio:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:var(--accent)}.access__card--risky.is-on .access__radio:after{background:var(--warn)}.access__body{display:grid;gap:3px;min-width:0}.access__title{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:560;color:var(--text)}.access__risk{padding:1px 7px;border:1px solid var(--warn-line);border-radius:999px;background:var(--warn-soft);color:var(--warn);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.access__desc{font-size:12.5px;line-height:1.45;color:var(--muted)}.settings__switch-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.settings__switch-copy{display:grid;gap:4px;min-width:0}.settings__agent{align-items:center}.settings__switch-row.settings__agent>.switch,.settings__switch-row.settings__agent>.settings__switch-skeleton{margin-top:0}.settings__agent-copy{flex:1;gap:1px}.settings__switch-row>.switch,.settings__switch-row>.settings__switch-skeleton{margin-top:3px}.settings__switch-skeleton{flex:none;width:30px;height:17px;border-radius:999px;background:var(--surface-3);opacity:.55}.settings__nested{display:grid;gap:10px;padding-top:10px;border-top:1px dashed var(--border)}.settings__nested-heading{margin:0;font-size:13px;font-weight:600;color:var(--text)}.settings__netstatus.is-bad{color:var(--danger)}.countries{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.countries__chip{display:inline-flex;align-items:center;gap:2px;padding:2px 3px 2px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-family:var(--mono);font-size:12px}.countries__remove{width:20px;height:20px;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:15px;line-height:1;cursor:pointer}.countries__remove:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}.countries__add{display:flex;gap:8px;align-items:center}.countries__input{width:64px;text-align:center;font-family:var(--mono);text-transform:uppercase}.countries__input[aria-invalid=true]{border-color:var(--danger)}.countries__error{color:var(--danger)}.settings__nested.is-disabled{opacity:.5}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{g as Z,s as _e,E as M,V as me,D as x,a as ge,c as m,r as ze,b as Ne,h as Qe,W as Ve,l as Ge,d as je,e as pe,f as xe,i as Ue,j as Ye,k as Ze,m as Je,n as be}from"./index-891wE-Rj.js";import{StateEffect as W,EditorSelection as C,StateField as ye,Prec as Xe,codePointAt as et,fromCodePoint as tt,codePointSize as it,Facet as J,combineConfig as X,CharCategory as v,EditorState as ke,RangeSetBuilder as Se,findClusterBreak as ve}from"./index-BHot-lnj.js";import{f as nt,i as st,s as Ce,b as rt,a as lt,d as Me}from"./index-
|
|
1
|
+
import{g as Z,s as _e,E as M,V as me,D as x,a as ge,c as m,r as ze,b as Ne,h as Qe,W as Ve,l as Ge,d as je,e as pe,f as xe,i as Ue,j as Ye,k as Ze,m as Je,n as be}from"./index-891wE-Rj.js";import{StateEffect as W,EditorSelection as C,StateField as ye,Prec as Xe,codePointAt as et,fromCodePoint as tt,codePointSize as it,Facet as J,combineConfig as X,CharCategory as v,EditorState as ke,RangeSetBuilder as Se,findClusterBreak as ve}from"./index-BHot-lnj.js";import{f as nt,i as st,s as Ce,b as rt,a as lt,d as Me}from"./index-Ba1mAYRn.js";import{history as we,defaultKeymap as Le,historyKeymap as Re}from"./index-CNOLHL_4.js";import{c as ot,a as at,b as ct,d as ht}from"./index-BlUJ9mDA.js";import"./index-DYqdo2vo.js";const oe=typeof String.prototype.normalize=="function"?i=>i.normalize("NFKD"):i=>i;class I{constructor(e,t,n=0,s=e.length,r,l){this.test=l,this.value={from:0,to:0,precise:!1},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(n,s),this.bufferStart=n,this.normalize=r?o=>r(oe(o)):oe,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return et(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=tt(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=it(e);let s=this.normalize(t);if(s.length)for(let r=0,l=n,o=!0;;r++){let a=s.charCodeAt(r),c=this.match(a,l,o,this.bufferPos+this.bufferStart,r==s.length-1);if(c)return this.value=c,this;if(r==s.length-1)break;o&&r<t.length&&t.charCodeAt(r)==a?l++:o=!1}}}match(e,t,n,s,r){let l=null;for(let o=0;o<this.matches.length;){let a=this.matches[o],c=!1;this.query.charCodeAt(a.index)==e&&(a.index==this.query.length-1?l={from:a.from,to:s,precise:r&&a.precise}:(a.index++,c=!0)),c?o++:this.matches.splice(o,1)}return this.query.charCodeAt(0)==e&&(this.query.length==1?l={from:t,to:s,precise:n&&r}:this.matches.push({from:t,index:1,precise:n})),l&&this.test&&!this.test(l.from,l.to,this.buffer,this.bufferStart)&&(l=null),l}}typeof Symbol<"u"&&(I.prototype[Symbol.iterator]=function(){return this});const Ae={from:-1,to:-1,match:/.*/.exec(""),precise:!0},ee="gm"+(/x/.unicode==null?"":"u");class We{constructor(e,t,n,s=0,r=e.length){if(this.text=e,this.to=r,this.curLine="",this.done=!1,this.value=Ae,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new De(e,t,n,s,r);this.re=new RegExp(t,ee+(n!=null&&n.ignoreCase?"i":"")),this.test=n==null?void 0:n.test,this.iter=e.iter();let l=e.lineAt(s);this.curLineStart=l.from,this.matchPos=z(e,s),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let n=this.curLineStart+t.index,s=n+t[0].length;if(this.matchPos=z(this.text,s+(n==s?1:0)),n==this.curLineStart+this.curLine.length&&this.nextLine(),(n<s||n>this.value.to)&&(!this.test||this.test(n,s,t)))return this.value={from:n,to:s,precise:!0,match:t},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}}const j=new WeakMap;class P{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(e,t,n){let s=j.get(e);if(!s||s.from>=n||s.to<=t){let o=new P(t,e.sliceString(t,n));return j.set(e,o),o}if(s.from==t&&s.to==n)return s;let{text:r,from:l}=s;return l>t&&(r=e.sliceString(t,l)+r,l=t),s.to<n&&(r+=e.sliceString(s.to,n)),j.set(e,new P(l,r)),new P(t,r.slice(t-l,n-l))}}class De{constructor(e,t,n,s,r){this.text=e,this.to=r,this.done=!1,this.value=Ae,this.matchPos=z(e,s),this.re=new RegExp(t,ee+(n!=null&&n.ignoreCase?"i":"")),this.test=n==null?void 0:n.test,this.flat=P.get(e,s,this.chunkEnd(s+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let n=this.flat.from+t.index,s=n+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(n,s,t)))return this.value={from:n,to:s,precise:!0,match:t},this.matchPos=z(this.text,s+(n==s?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=P.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(We.prototype[Symbol.iterator]=De.prototype[Symbol.iterator]=function(){return this});function ft(i){try{return new RegExp(i,ee),!0}catch{return!1}}function z(i,e){if(e>=i.length)return e;let t=i.lineAt(e),n;for(;e<t.to&&(n=t.text.charCodeAt(e-t.from))>=56320&&n<57344;)e++;return e}const ut=i=>{let{state:e}=i,t=String(e.doc.lineAt(i.state.selection.main.head).number),{close:n,result:s}=_e(i,{label:e.phrase("Go to line"),input:{type:"text",name:"line",value:t},focus:!0,submitLabel:e.phrase("go")});return s.then(r=>{let l=r&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(r.elements.line.value);if(!l){i.dispatch({effects:n});return}let o=e.doc.lineAt(e.selection.main.head),[,a,c,h,f]=l,p=h?+h.slice(1):0,u=c?+c:o.number;if(c&&f){let g=u/100;a&&(g=g*(a=="-"?-1:1)+o.number/e.doc.lines),u=Math.round(e.doc.lines*g)}else c&&a&&(u=u*(a=="-"?-1:1)+o.number);let y=e.doc.line(Math.max(1,Math.min(e.doc.lines,u))),b=C.cursor(y.from+Math.max(0,Math.min(p,y.length)));i.dispatch({effects:[n,M.scrollIntoView(b.from,{y:"center"})],selection:b})}),!0},dt={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},mt=J.define({combine(i){return X(i,dt,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function gt(i){return[kt,yt]}const pt=x.mark({class:"cm-selectionMatch"}),xt=x.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function ae(i,e,t,n){return(t==0||i(e.sliceDoc(t-1,t))!=v.Word)&&(n==e.doc.length||i(e.sliceDoc(n,n+1))!=v.Word)}function bt(i,e,t,n){return i(e.sliceDoc(t,t+1))==v.Word&&i(e.sliceDoc(n-1,n))==v.Word}const yt=me.fromClass(class{constructor(i){this.decorations=this.getDeco(i)}update(i){(i.selectionSet||i.docChanged||i.viewportChanged)&&(this.decorations=this.getDeco(i.view))}getDeco(i){let e=i.state.facet(mt),{state:t}=i,n=t.selection;if(n.ranges.length>1)return x.none;let s=n.main,r,l=null;if(s.empty){if(!e.highlightWordAroundCursor)return x.none;let a=t.wordAt(s.head);if(!a)return x.none;l=t.charCategorizer(s.head),r=t.sliceDoc(a.from,a.to)}else{let a=s.to-s.from;if(a<e.minSelectionLength||a>200)return x.none;if(e.wholeWords){if(r=t.sliceDoc(s.from,s.to),l=t.charCategorizer(s.head),!(ae(l,t,s.from,s.to)&&bt(l,t,s.from,s.to)))return x.none}else if(r=t.sliceDoc(s.from,s.to),!r)return x.none}let o=[];for(let a of i.visibleRanges){let c=new I(t.doc,r,a.from,a.to);for(;!c.next().done;){let{from:h,to:f}=c.value;if((!l||ae(l,t,h,f))&&(s.empty&&h<=s.from&&f>=s.to?o.push(xt.range(h,f)):(h>=s.to||f<=s.from)&&o.push(pt.range(h,f)),o.length>e.maxMatches))return x.none}}return x.set(o)}},{decorations:i=>i.decorations}),kt=M.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),St=({state:i,dispatch:e})=>{let{selection:t}=i,n=C.create(t.ranges.map(s=>i.wordAt(s.head)||C.cursor(s.head)),t.mainIndex);return n.eq(t)?!1:(e(i.update({selection:n})),!0)};function vt(i,e){let{main:t,ranges:n}=i.selection,s=i.wordAt(t.head),r=s&&s.from==t.from&&s.to==t.to;for(let l=!1,o=new I(i.doc,e,n[n.length-1].to);;)if(o.next(),o.done){if(l)return null;o=new I(i.doc,e,0,Math.max(0,n[n.length-1].from-1)),l=!0}else{if(l&&n.some(a=>a.from==o.value.from))continue;if(r){let a=i.wordAt(o.value.from);if(!a||a.from!=o.value.from||a.to!=o.value.to)continue}return o.value}}const Ct=({state:i,dispatch:e})=>{let{ranges:t}=i.selection;if(t.some(r=>r.from===r.to))return St({state:i,dispatch:e});let n=i.sliceDoc(t[0].from,t[0].to);if(i.selection.ranges.some(r=>i.sliceDoc(r.from,r.to)!=n))return!1;let s=vt(i,n);return s?(e(i.update({selection:i.selection.addRange(C.range(s.from,s.to),!1),effects:M.scrollIntoView(s.to)})),!0):!1},E=J.define({combine(i){return X(i,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new Ot(e),scrollToMatch:e=>M.scrollIntoView(e)})}});class Fe{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||ft(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(t,n)=>n=="n"?`
|
|
2
2
|
`:n=="r"?"\r":n=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new Wt(this):new Lt(this)}getCursor(e,t=0,n){let s=e.doc?e:ke.create({doc:e});return n==null&&(n=s.doc.length),this.regexp?F(this,s,t,n):D(this,s,t,n)}}class Pe{constructor(e){this.spec=e}}function Mt(i,e,t){return(n,s,r,l)=>{if(t&&!t(n,s,r,l))return!1;let o=n>=l&&s<=l+r.length?r.slice(n-l,s-l):e.doc.sliceString(n,s);return i(o,e,n,s)}}function D(i,e,t,n){let s;return i.wholeWord&&(s=wt(e.doc,e.charCategorizer(e.selection.main.head))),i.test&&(s=Mt(i.test,e,s)),new I(e.doc,i.unquoted,t,n,i.caseSensitive?void 0:r=>r.toLowerCase(),s)}function wt(i,e){return(t,n,s,r)=>((r>t||r+s.length<n)&&(r=Math.max(0,t-2),s=i.sliceString(r,Math.min(i.length,n+2))),(e(N(s,t-r))!=v.Word||e(Q(s,t-r))!=v.Word)&&(e(Q(s,n-r))!=v.Word||e(N(s,n-r))!=v.Word))}class Lt extends Pe{constructor(e){super(e)}nextMatch(e,t,n){let s=D(this.spec,e,n,e.doc.length).nextOverlapping();if(s.done){let r=Math.min(e.doc.length,t+this.spec.unquoted.length);s=D(this.spec,e,0,r).nextOverlapping()}return s.done||s.value.from==t&&s.value.to==n?null:s.value}prevMatchInRange(e,t,n){for(let s=n;;){let r=Math.max(t,s-1e4-this.spec.unquoted.length),l=D(this.spec,e,r,s),o=null;for(;!l.nextOverlapping().done;)o=l.value;if(o)return o;if(r==t)return null;s-=1e4}}prevMatch(e,t,n){let s=this.prevMatchInRange(e,0,t);return s||(s=this.prevMatchInRange(e,Math.max(0,n-this.spec.unquoted.length),e.doc.length)),s&&(s.from!=t||s.to!=n)?s:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let n=D(this.spec,e,0,e.doc.length),s=[];for(;!n.next().done;){if(s.length>=t)return null;s.push(n.value)}return s}highlight(e,t,n,s){let r=D(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(n+this.spec.unquoted.length,e.doc.length));for(;!r.next().done;)s(r.value.from,r.value.to)}}function Rt(i,e,t){return(n,s,r)=>(!t||t(n,s,r))&&i(r[0],e,n,s)}function F(i,e,t,n){let s;return i.wholeWord&&(s=At(e.charCategorizer(e.selection.main.head))),i.test&&(s=Rt(i.test,e,s)),new We(e.doc,i.search,{ignoreCase:!i.caseSensitive,test:s},t,n)}function N(i,e){return i.slice(ve(i,e,!1),e)}function Q(i,e){return i.slice(e,ve(i,e))}function At(i){return(e,t,n)=>!n[0].length||(i(N(n.input,n.index))!=v.Word||i(Q(n.input,n.index))!=v.Word)&&(i(Q(n.input,n.index+n[0].length))!=v.Word||i(N(n.input,n.index+n[0].length))!=v.Word)}class Wt extends Pe{nextMatch(e,t,n){let s=F(this.spec,e,n,e.doc.length).next();return s.done&&(s=F(this.spec,e,0,t).next()),s.done?null:s.value}prevMatchInRange(e,t,n){for(let s=1;;s++){let r=Math.max(t,n-s*1e4),l=F(this.spec,e,r,n),o=null;for(;!l.next().done;)o=l.value;if(o&&(r==t||o.from>r+10))return o;if(r==t)return null}}prevMatch(e,t,n){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,n,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,n)=>{if(n=="&")return e.match[0];if(n=="$")return"$";for(let s=n.length;s>0;s--){let r=+n.slice(0,s);if(r>0&&r<e.match.length)return e.match[r]+n.slice(s)}return t})}matchAll(e,t){let n=F(this.spec,e,0,e.doc.length),s=[];for(;!n.next().done;){if(s.length>=t)return null;s.push(n.value)}return s}highlight(e,t,n,s){let r=F(this.spec,e,Math.max(0,t-250),Math.min(n+250,e.doc.length));for(;!r.next().done;)s(r.value.from,r.value.to)}}const q=W.define(),te=W.define(),L=ye.define({create(i){return new U(Y(i).create(),null)},update(i,e){for(let t of e.effects)t.is(q)?i=new U(t.value.create(),i.panel):t.is(te)&&(i=new U(i.query,t.value?ie:null));return i},provide:i=>ge.from(i,e=>e.panel)});class U{constructor(e,t){this.query=e,this.panel=t}}const Dt=x.mark({class:"cm-searchMatch"}),Ft=x.mark({class:"cm-searchMatch cm-searchMatch-selected"}),Pt=me.fromClass(class{constructor(i){this.view=i,this.decorations=this.highlight(i.state.field(L))}update(i){let e=i.state.field(L);(e!=i.startState.field(L)||i.docChanged||i.selectionSet||i.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:i,panel:e}){if(!e||!i.spec.valid)return x.none;let{view:t}=this,n=new Se;for(let s=0,r=t.visibleRanges,l=r.length;s<l;s++){let{from:o,to:a}=r[s];for(;s<l-1&&a>r[s+1].from-500;)a=r[++s].to;i.highlight(t.state,o,a,(c,h)=>{let f=t.state.selection.ranges.some(p=>p.from==c&&p.to==h);n.add(c,h,f?Ft:Dt)})}return n.finish()}},{decorations:i=>i.decorations});function $(i){return e=>{let t=e.state.field(L,!1);return t&&t.query.spec.valid?i(e,t):qe(e)}}const V=$((i,{query:e})=>{let{to:t}=i.state.selection.main,n=e.nextMatch(i.state,t,t);if(!n)return!1;let s=C.single(n.from,n.to),r=i.state.facet(E);return i.dispatch({selection:s,effects:[ne(i,n),r.scrollToMatch(s.main,i)],userEvent:"select.search"}),Ee(i),!0}),G=$((i,{query:e})=>{let{state:t}=i,{from:n}=t.selection.main,s=e.prevMatch(t,n,n);if(!s)return!1;let r=C.single(s.from,s.to),l=i.state.facet(E);return i.dispatch({selection:r,effects:[ne(i,s),l.scrollToMatch(r.main,i)],userEvent:"select.search"}),Ee(i),!0}),It=$((i,{query:e})=>{let t=e.matchAll(i.state,1e3);return!t||!t.length?!1:(i.dispatch({selection:C.create(t.map(n=>C.range(n.from,n.to))),userEvent:"select.search.matches"}),!0)}),Et=({state:i,dispatch:e})=>{let t=i.selection;if(t.ranges.length>1||t.main.empty)return!1;let{from:n,to:s}=t.main,r=[],l=0;for(let o=new I(i.doc,i.sliceDoc(n,s));!o.next().done;){if(r.length>1e3)return!1;o.value.from==n&&(l=r.length),r.push(C.range(o.value.from,o.value.to))}return e(i.update({selection:C.create(r,l),userEvent:"select.search.matches"})),!0},ce=$((i,{query:e})=>{let{state:t}=i,{from:n,to:s}=t.selection.main;if(t.readOnly)return!1;let r=e.nextMatch(t,n,n);if(!r)return!1;let l=r,o=[],a,c,h=[];l.precise?l.from==n&&l.to==s&&(c=t.toText(e.getReplacement(l)),o.push({from:l.from,to:l.to,insert:c}),l=e.nextMatch(t,l.from,l.to),h.push(M.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(n).number)+"."))):l=e.nextMatch(t,l.from,l.to);let f=i.state.changes(o);return l&&(a=C.single(l.from,l.to).map(f),h.push(ne(i,l)),h.push(t.facet(E).scrollToMatch(a.main,i))),i.dispatch({changes:f,selection:a,effects:h,userEvent:"input.replace"}),!0}),qt=$((i,{query:e})=>{if(i.state.readOnly)return!1;let t=[];for(let s of e.matchAll(i.state,1e9)){let{from:r,to:l,precise:o}=s;o&&t.push({from:r,to:l,insert:e.getReplacement(s)})}if(!t.length)return!1;let n=i.state.phrase("replaced $ matches",t.length)+".";return i.dispatch({changes:t,effects:M.announce.of(n),userEvent:"input.replace.all"}),!0});function ie(i){return i.state.facet(E).createPanel(i)}function Y(i,e){var t,n,s,r,l;let o=i.selection.main,a=o.empty||o.to>o.from+100?"":i.sliceDoc(o.from,o.to);if(e&&!a)return e;let c=i.facet(E);return new Fe({search:((t=e==null?void 0:e.literal)!==null&&t!==void 0?t:c.literal)?a:a.replace(/\n/g,"\\n"),caseSensitive:(n=e==null?void 0:e.caseSensitive)!==null&&n!==void 0?n:c.caseSensitive,literal:(s=e==null?void 0:e.literal)!==null&&s!==void 0?s:c.literal,regexp:(r=e==null?void 0:e.regexp)!==null&&r!==void 0?r:c.regexp,wholeWord:(l=e==null?void 0:e.wholeWord)!==null&&l!==void 0?l:c.wholeWord})}function Ie(i){let e=Z(i,ie);return e&&e.dom.querySelector("[main-field]")}function Ee(i){let e=Ie(i);e&&e==i.root.activeElement&&e.select()}const qe=i=>{let e=i.state.field(L,!1);if(e&&e.panel){let t=Ie(i);if(t&&t!=i.root.activeElement){let n=Y(i.state,e.query.spec);n.valid&&i.dispatch({effects:q.of(n)}),t.focus(),t.select()}}else i.dispatch({effects:[te.of(!0),e?q.of(Y(i.state,e.query.spec)):W.appendConfig.of(Bt)]});return!0},Te=i=>{let e=i.state.field(L,!1);if(!e||!e.panel)return!1;let t=Z(i,ie);return t&&t.dom.contains(i.root.activeElement)&&i.focus(),i.dispatch({effects:te.of(!1)}),!0},Tt=[{key:"Mod-f",run:qe,scope:"editor search-panel"},{key:"F3",run:V,shift:G,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:V,shift:G,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:Te,scope:"editor search-panel"},{key:"Mod-Shift-l",run:Et},{key:"Mod-Alt-g",run:ut},{key:"Mod-d",run:Ct,preventDefault:!0}];class Ot{constructor(e){this.view=e;let t=this.query=e.state.field(L).query.spec;this.commit=this.commit.bind(this),this.searchField=m("input",{value:t.search,placeholder:k(e,"Find"),"aria-label":k(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=m("input",{value:t.replace,placeholder:k(e,"Replace"),"aria-label":k(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=m("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=m("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=m("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function n(s,r,l){return m("button",{class:"cm-button",name:s,onclick:r,type:"button"},l)}this.dom=m("div",{onkeydown:s=>this.keydown(s),class:"cm-search"},[this.searchField,n("next",()=>V(e),[k(e,"next")]),n("prev",()=>G(e),[k(e,"previous")]),n("select",()=>It(e),[k(e,"all")]),m("label",null,[this.caseField,k(e,"match case")]),m("label",null,[this.reField,k(e,"regexp")]),m("label",null,[this.wordField,k(e,"by word")]),...e.state.readOnly?[]:[m("br"),this.replaceField,n("replace",()=>ce(e),[k(e,"replace")]),n("replaceAll",()=>qt(e),[k(e,"replace all")])],m("button",{name:"close",onclick:()=>Te(e),"aria-label":k(e,"close"),type:"button"},["×"])])}commit(){let e=new Fe({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:q.of(e)}))}keydown(e){ze(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?G:V)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),ce(this.view))}update(e){for(let t of e.transactions)for(let n of t.effects)n.is(q)&&!n.value.eq(this.query)&&this.setQuery(n.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(E).top}}function k(i,e){return i.state.phrase(e)}const K=30,H=/[\s\.,:;?!]/;function ne(i,{from:e,to:t}){let n=i.state.doc.lineAt(e),s=i.state.doc.lineAt(t).to,r=Math.max(n.from,e-K),l=Math.min(s,t+K),o=i.state.sliceDoc(r,l);if(r!=n.from){for(let a=0;a<K;a++)if(!H.test(o[a+1])&&H.test(o[a])){o=o.slice(a);break}}if(l!=s){for(let a=o.length-1;a>o.length-K;a--)if(!H.test(o[a-1])&&H.test(o[a])){o=o.slice(0,a);break}}return M.announce.of(`${i.state.phrase("current match")}. ${o} ${i.state.phrase("on line")} ${n.number}.`)}const $t=M.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),Bt=[L,Xe.low(Pt),$t];class he{constructor(e,t,n){this.from=e,this.to=t,this.diagnostic=n}}class A{constructor(e,t,n){this.diagnostics=e,this.panel=t,this.selected=n}static init(e,t,n){let s=n.facet(T).markerFilter;s&&(e=s(e,n));let r=e.slice().sort((u,y)=>u.from-y.from||u.to-y.to),l=new Se,o=[],a=0,c=n.doc.iter(),h=0,f=n.doc.length;for(let u=0;;){let y=u==r.length?null:r[u];if(!y&&!o.length)break;let b,g;if(o.length)b=a,g=o.reduce((d,w)=>Math.min(d,w.to),y&&y.from>b?y.from:1e8);else{if(b=y.from,b>f)break;g=y.to,o.push(y),u++}for(;u<r.length;){let d=r[u];if(d.from==b&&(d.to>d.from||d.to==b))o.push(d),u++,g=Math.min(d.to,g);else{g=Math.min(d.from,g);break}}g=Math.min(g,f);let B=!1;if(o.some(d=>d.from==b&&(d.to==g||g==f))&&(B=b==g,!B&&g-b<10)){let d=b-(h+c.value.length);d>0&&(c.next(d),h=b);for(let w=b;;){if(w>=g){B=!0;break}if(!c.lineBreak&&h+c.value.length>w)break;w=h+c.value.length,h+=c.value.length,c.next()}}let re=Jt(o);if(B)l.add(b,b,x.widget({widget:new jt(re),diagnostics:o.slice()}));else{let d=o.reduce((w,le)=>le.markClass?w+" "+le.markClass:w,"");l.add(b,g,x.mark({class:"cm-lintRange cm-lintRange-"+re+d,diagnostics:o.slice(),inclusiveEnd:o.some(w=>w.to>g)}))}if(a=g,a==f)break;for(let d=0;d<o.length;d++)o[d].to<=a&&o.splice(d--,1)}let p=l.finish();return new A(p,t,R(p))}}function R(i,e=null,t=0){let n=null;return i.between(t,1e9,(s,r,{spec:l})=>{if(!(e&&l.diagnostics.indexOf(e)<0))if(!n)n=new he(s,r,e||l.diagnostics[0]);else{if(l.diagnostics.indexOf(n.diagnostic)<0)return!1;n=new he(n.from,r,n.diagnostic)}}),n}function Kt(i,e){let t=e.pos,n=e.end||t,s=i.state.facet(T).hideOn(i,t,n);if(s!=null)return s;let r=i.startState.doc.lineAt(e.pos);return!!(i.effects.some(l=>l.is(Oe))||i.changes.touchesRange(r.from,Math.max(r.to,n)))}function Ht(i,e){return i.field(S,!1)?e:e.concat(W.appendConfig.of(Xt))}const Oe=W.define(),se=W.define(),$e=W.define(),S=ye.define({create(){return new A(x.none,null,null)},update(i,e){if(e.docChanged&&i.diagnostics.size){let t=i.diagnostics.map(e.changes),n=null,s=i.panel;if(i.selected){let r=e.changes.mapPos(i.selected.from,1);n=R(t,i.selected.diagnostic,r)||R(t,null,r)}!t.size&&s&&e.state.facet(T).autoPanel&&(s=null),i=new A(t,s,n)}for(let t of e.effects)if(t.is(Oe)){let n=e.state.facet(T).autoPanel?t.value.length?O.open:null:i.panel;i=A.init(t.value,n,e.state)}else t.is(se)?i=new A(i.diagnostics,t.value?O.open:null,i.selected):t.is($e)&&(i=new A(i.diagnostics,i.panel,t.value));return i},provide:i=>[ge.from(i,e=>e.panel),M.decorations.from(i,e=>e.diagnostics)]}),_t=x.mark({class:"cm-lintRange cm-lintRange-active"});function zt(i,e,t){let{diagnostics:n}=i.state.field(S),s,r=-1,l=-1;n.between(e-(t<0?1:0),e+(t>0?1:0),(a,c,{spec:h})=>{if(e>=a&&e<=c&&(a==c||(e>a||t>0)&&(e<c||t<0)))return s=h.diagnostics,r=a,l=c,!1});let o=i.state.facet(T).tooltipFilter;return s&&o&&(s=o(s,i.state)),s?{pos:r,end:l,above:!0,create(){return{dom:Nt(i,s)}}}:null}function Nt(i,e){return m("ul",{class:"cm-tooltip-lint"},e.map(t=>Ke(i,t,!1)))}const Qt=i=>{let e=i.state.field(S,!1);(!e||!e.panel)&&i.dispatch({effects:Ht(i.state,[se.of(!0)])});let t=Z(i,O.open);return t&&t.dom.querySelector(".cm-panel-lint ul").focus(),!0},fe=i=>{let e=i.state.field(S,!1);return!e||!e.panel?!1:(i.dispatch({effects:se.of(!1)}),!0)},Vt=i=>{let e=i.state.field(S,!1);if(!e)return!1;let t=i.state.selection.main,n=R(e.diagnostics,null,t.to+1);return!n&&(n=R(e.diagnostics,null,0),!n||n.from==t.from&&n.to==t.to)?!1:(i.dispatch({selection:{anchor:n.from,head:n.to},scrollIntoView:!0}),Ne(i,n.from,1,{tooltip:He,until:s=>s.docChanged||s.newSelection.main.head<n.from||s.newSelection.main.head>n.to}),!0)},Gt=[{key:"Mod-Shift-m",run:Qt,preventDefault:!0},{key:"F8",run:Vt}],T=J.define({combine(i){return{sources:i.map(e=>e.source).filter(e=>e!=null),...X(i.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:ue,tooltipFilter:ue,needsRefresh:(e,t)=>e?t?n=>e(n)||t(n):e:t,hideOn:(e,t)=>e?t?(n,s,r)=>e(n,s,r)||t(n,s,r):e:t,autoPanel:(e,t)=>e||t})}}});function ue(i,e){return i?e?(t,n)=>e(i(t,n),n):i:e}function Be(i){let e=[];if(i)e:for(let{name:t}of i){for(let n=0;n<t.length;n++){let s=t[n];if(/[a-zA-Z]/.test(s)&&!e.some(r=>r.toLowerCase()==s.toLowerCase())){e.push(s);continue e}}e.push("")}return e}function Ke(i,e,t){var n;let s=t?Be(e.actions):[];return m("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},m("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage(i):e.message),(n=e.actions)===null||n===void 0?void 0:n.map((r,l)=>{let o=!1,a=u=>{if(u.preventDefault(),o)return;o=!0;let y=R(i.state.field(S).diagnostics,e);y&&r.apply(i,y.from,y.to)},{name:c}=r,h=s[l]?c.indexOf(s[l]):-1,f=h<0?c:[c.slice(0,h),m("u",c.slice(h,h+1)),c.slice(h+1)],p=r.markClass?" "+r.markClass:"";return m("button",{type:"button",class:"cm-diagnosticAction"+p,onclick:a,onmousedown:a,"aria-label":` Action: ${c}${h<0?"":` (access key "${s[l]})"`}.`},f)}),e.source&&m("div",{class:"cm-diagnosticSource"},e.source))}class jt extends Ve{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return m("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class de{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=Ke(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class O{constructor(e){this.view=e,this.items=[];let t=s=>{if(!(s.ctrlKey||s.altKey||s.metaKey)){if(s.keyCode==27)fe(this.view),this.view.focus();else if(s.keyCode==38||s.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(s.keyCode==40||s.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(s.keyCode==36)this.moveSelection(0);else if(s.keyCode==35)this.moveSelection(this.items.length-1);else if(s.keyCode==13)this.view.focus();else if(s.keyCode>=65&&s.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:r}=this.items[this.selectedIndex],l=Be(r.actions);for(let o=0;o<l.length;o++)if(l[o].toUpperCase().charCodeAt(0)==s.keyCode){let a=R(this.view.state.field(S).diagnostics,r);a&&r.actions[o].apply(e,a.from,a.to)}}else return;s.preventDefault()}},n=s=>{for(let r=0;r<this.items.length;r++)this.items[r].dom.contains(s.target)&&this.moveSelection(r)};this.list=m("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t,onclick:n}),this.dom=m("div",{class:"cm-panel-lint"},this.list,m("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>fe(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(S).selected;if(!e)return-1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return-1}update(){let{diagnostics:e,selected:t}=this.view.state.field(S),n=0,s=!1,r=null,l=new Set;for(e.between(0,this.view.state.doc.length,(o,a,{spec:c})=>{for(let h of c.diagnostics){if(l.has(h))continue;l.add(h);let f=-1,p;for(let u=n;u<this.items.length;u++)if(this.items[u].diagnostic==h){f=u;break}f<0?(p=new de(this.view,h),this.items.splice(n,0,p),s=!0):(p=this.items[f],f>n&&(this.items.splice(n,f-n),s=!0)),t&&p.diagnostic==t.diagnostic?p.dom.hasAttribute("aria-selected")||(p.dom.setAttribute("aria-selected","true"),r=p):p.dom.hasAttribute("aria-selected")&&p.dom.removeAttribute("aria-selected"),n++}});n<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)s=!0,this.items.pop();this.items.length==0&&(this.items.push(new de(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),s=!0),r?(this.list.setAttribute("aria-activedescendant",r.id),this.view.requestMeasure({key:this,read:()=>({sel:r.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:o,panel:a})=>{let c=a.height/this.list.offsetHeight;o.top<a.top?this.list.scrollTop-=(a.top-o.top)/c:o.bottom>a.bottom&&(this.list.scrollTop+=(o.bottom-a.bottom)/c)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),s&&this.sync()}sync(){let e=this.list.firstChild;function t(){let n=e;e=n.nextSibling,n.remove()}for(let n of this.items)if(n.dom.parentNode==this.list){for(;e!=n.dom;)t();e=n.dom.nextSibling}else this.list.insertBefore(n.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=this.view.state.field(S),n=R(t.diagnostics,this.items[e].diagnostic);n&&this.view.dispatch({selection:{anchor:n.from,head:n.to},scrollIntoView:!0,effects:$e.of(n)})}static open(e){return new O(e)}}function Ut(i,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${e}>${encodeURIComponent(i)}</svg>')`}function _(i){return Ut(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${i}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const Yt=M.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:_("#f11")},".cm-lintRange-warning":{backgroundImage:_("orange")},".cm-lintRange-info":{backgroundImage:_("#999")},".cm-lintRange-hint":{backgroundImage:_("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:"#86714a80"},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:"#2e343e"}}});function Zt(i){return i=="error"?4:i=="warning"?3:i=="info"?2:1}function Jt(i){let e="hint",t=1;for(let n of i){let s=Zt(n.severity);s>t&&(t=s,e=n.severity)}return e}const He=Qe(zt,{hideOn:Kt}),Xt=[S,M.decorations.compute([S],i=>{let{selected:e,panel:t}=i.field(S);return!e||!t||e.from==e.to?x.none:x.set([_t.range(e.from,e.to)])}),He,Yt],li=[Ge(),je(),pe(),we(),nt(),xe(),Ue(),ke.allowMultipleSelections.of(!0),st(),Ce(Me,{fallback:!0}),rt(),ot(),at(),Ye(),Ze(),Je(),gt(),be.of([...ct,...Le,...Tt,...Re,...lt,...ht,...Gt])],oi=[pe(),we(),xe(),Ce(Me,{fallback:!0}),be.of([...Le,...Re])];export{M as EditorView,li as basicSetup,oi as minimalSetup};
|