:root{--bg: #0f1419;--panel: #1a2029;--panel-2: #222a35;--border: #2c3644;--text: #e6e9ee;--text-dim: #9aa4b2;--accent: #4f9dff;--accent-hover: #6cb0ff;--danger: #ff6b6b;--danger-bg: #3a2226;--ok: #5ad19a;--radius: 10px;font-size:16px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.5}.boot-screen{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--text-dim)}.spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px;display:inline-block;vertical-align:middle;margin-right:.5rem}@keyframes spin{to{transform:rotate(360deg)}}.login-wrap{height:100%;display:flex;align-items:center;justify-content:center;padding:1.5rem}.login-card{width:100%;max-width:380px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;display:flex;flex-direction:column;gap:1rem}.login-title{margin:0;font-size:1.8rem;letter-spacing:.5px}.login-sub{margin:0 0 .5rem;color:var(--text-dim);font-size:.95rem}.field{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:var(--text-dim)}.field input{font-size:1rem;padding:.6rem .7rem;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;color:var(--text)}.field input:focus{outline:none;border-color:var(--accent)}.field input:disabled{opacity:.6}.form-error{background:var(--danger-bg);border:1px solid var(--danger);color:#ffd7d7;padding:.6rem .75rem;border-radius:8px;font-size:.9rem}.btn-primary{font-size:1rem;padding:.65rem 1rem;background:var(--accent);color:#071019;border:none;border-radius:8px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.7;cursor:default}.btn-ghost{font-size:.9rem;padding:.4rem .8rem;background:transparent;color:var(--text);border:1px solid var(--border);border-radius:8px;cursor:pointer}.btn-ghost:hover:not(:disabled){border-color:var(--accent)}.btn-ghost:disabled{opacity:.6;cursor:default}.app-shell{height:100%;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;background:var(--panel);border-bottom:1px solid var(--border)}.app-brand{font-weight:700;font-size:1.2rem;letter-spacing:.5px}.app-user{display:flex;align-items:center;gap:1rem}.app-username{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-dim)}.system-stats-badge{font-size:.78rem;color:var(--text-dim);border:1px solid var(--border);border-radius:999px;padding:.15rem .6rem;white-space:nowrap;font-variant-numeric:tabular-nums}.system-stats-badge.is-loading{opacity:.5}.system-stats-badge.is-stale{opacity:.6;font-style:italic}.system-stats-badge.is-warn{color:#ffcf7a;border-color:#7a5a1e;background:#ffb04a1f}.system-stats-wrap{position:relative;display:inline-flex}.system-stats-badge.is-button{cursor:pointer;background:transparent;font-family:inherit}.system-stats-badge.is-button:hover{border-color:var(--text-dim)}.system-stats-panel{position:absolute;top:calc(100% + .4rem);right:0;z-index:40;min-width:20rem;max-width:min(28rem,90vw);background:var(--panel);border:1px solid var(--border);border-radius:.6rem;box-shadow:0 8px 28px #00000059;padding:.7rem .8rem;font-size:.8rem;color:var(--text)}.system-stats-panel-head{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.5rem}.system-stats-panel-head .ssp-summary{color:var(--text-dim);font-variant-numeric:tabular-nums}.ssp-alert{margin-bottom:.5rem;padding:.3rem .5rem;border-radius:.4rem;color:#ffcf7a;border:1px solid #7a5a1e;background:#ffb04a1f;font-size:.76rem}.ssp-table{width:100%;border-collapse:collapse}.ssp-table th,.ssp-table td{text-align:left;padding:.25rem .35rem;border-bottom:1px solid var(--border);vertical-align:middle}.ssp-table th{color:var(--text-dim);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}.ssp-table .ssp-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.ssp-empty{color:var(--text-dim);font-style:italic;text-align:center}.ssp-role{display:inline-block;font-size:.68rem;text-transform:uppercase;letter-spacing:.03em;padding:.05rem .4rem;border-radius:999px;border:1px solid var(--border);background:var(--panel-2)}.ssp-role-backend{color:#7ad0ff;border-color:#245a72}.ssp-role-runner{color:#9ae6a0;border-color:#2c6b34}.ssp-role-turn{color:#d9b3ff;border-color:#5a3c78}.ssp-label{color:var(--text-dim);font-size:.74rem}.system-stats-panel-foot{margin-top:.5rem;padding-top:.4rem;border-top:1px solid var(--border);color:var(--text-dim);font-variant-numeric:tabular-nums}.system-stats-panel-foot.ssp-stale{color:#ffcf7a;font-style:italic}.role-badge{font-size:.7rem;text-transform:uppercase;background:var(--panel-2);border:1px solid var(--border);border-radius:999px;padding:.1rem .5rem;color:var(--accent)}.app-main{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.empty-state{text-align:center;color:var(--text-dim);max-width:460px}.empty-state h2{color:var(--text);margin-bottom:.5rem}.app-main-workbench{display:block;padding:0;align-items:stretch;justify-content:stretch;overflow:hidden}.workbench{height:100%;display:flex;min-height:0}.workbench-main{flex:1;min-width:0;position:relative;display:flex;flex-direction:column}.sidebar{width:340px;flex:0 0 340px;border-right:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column;min-height:0}.sidebar-head{padding:.9rem 1rem;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:.7rem}.sidebar-title-row{display:flex;align-items:center;justify-content:space-between}.sidebar-title{margin:0;font-size:calc(1rem * var(--fleet-font-scale, 1))}.btn-new{font-size:.85rem;padding:.4rem .7rem}.sidebar-filter{font-size:.95rem;padding:.5rem .6rem;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;color:var(--text)}.sidebar-filter:focus{outline:none;border-color:var(--accent)}.offline-banner{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--danger-bg);color:#ffd7d7;font-size:.82rem;border-bottom:1px solid var(--danger)}.offline-dot{width:8px;height:8px;border-radius:50%;background:var(--danger);animation:pulse 1.2s ease-in-out infinite;flex:0 0 auto}@keyframes pulse{50%{opacity:.3}}.sidebar-list{flex:1;min-height:0;overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.4rem}.sidebar-info,.sidebar-error{padding:1rem;color:var(--text-dim);text-align:center;font-size:.9rem}.sidebar-info p{margin:.2rem 0}.sidebar-hint{font-size:.82rem;opacity:.8}.sidebar-error{color:#ffd7d7}.sidebar-error button{margin-top:.6rem}.session-card{text-align:left;width:100%;background:var(--panel-2);border:1px solid var(--border);border-left:3px solid transparent;border-radius:8px;padding:.6rem .7rem;cursor:pointer;color:var(--text);display:flex;flex-direction:column;gap:.3rem;font:inherit}.session-card:hover{border-color:var(--accent)}.session-card.is-active{border-left-color:var(--accent);background:#263143}.session-card-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.session-name{font-weight:600;font-size:calc(.86rem * var(--fleet-font-scale, 1));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-meta{font-size:calc(.72rem * var(--fleet-font-scale, 1));color:var(--text-dim);display:flex;gap:.35rem;overflow:hidden;white-space:nowrap;align-items:center}.session-sep{opacity:.5}.session-desk-badge{margin-left:auto;flex:0 0 auto;max-width:55%;overflow:hidden;text-overflow:ellipsis;padding:.05rem .4rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-size:.72rem}.session-preview{font-size:calc(.75rem * var(--fleet-font-scale, 1));color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.session-summary{font-style:italic}.session-needs{font-size:.8rem;color:#ffd27a}.handoff-tag{align-self:flex-start;margin-top:.15rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:.08rem .45rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-size:calc(.7rem * var(--fleet-font-scale, 1));cursor:pointer}.handoff-tag:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.handoff-tag-to{border-color:color-mix(in srgb,var(--text-dim) 45%,transparent);background:color-mix(in srgb,var(--text-dim) 12%,transparent);color:var(--text-dim)}.archived-group{opacity:.92}.session-card.is-archived{opacity:.72}.session-card.is-archived.is-active,.session-card.is-archived:hover{opacity:1}.status-badge{flex:0 0 auto;font-size:.68rem;text-transform:uppercase;letter-spacing:.3px;padding:.12rem .45rem;border-radius:999px;border:1px solid transparent;white-space:nowrap}.st-working{background:#14324d;color:#7cc0ff;border-color:#1f5680}.st-waiting{background:#4a3410;color:#ffcf7a;border-color:#7a591f}.st-idle{background:var(--panel);color:var(--text-dim);border-color:var(--border)}.st-queued{background:#2d2a4a;color:#b3aaff;border-color:#4a447a}.st-error{background:var(--danger-bg);color:#ff9d9d;border-color:var(--danger)}.st-unknown{background:var(--panel);color:var(--text-dim);border-color:var(--border)}.chat-pane{flex:1;min-height:0;display:flex;flex-direction:column}.chat-pane .empty-state{margin:auto;padding:2rem}.chat-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--panel);display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.chat-header-main{min-width:0;flex:1}.chat-back{display:none;flex:0 0 auto;background:none;border:1px solid var(--border);color:var(--text);border-radius:8px;font-size:1.5rem;line-height:1;cursor:pointer;padding:0 .6rem;align-self:center}.chat-header-actions{flex:0 0 auto;display:flex;gap:.5rem;align-items:center}.btn-ghost.is-on{border-color:var(--accent);color:var(--accent)}.chat-title{margin:0;font-size:calc(1rem * var(--fleet-font-scale, 1))}.chat-sub{font-size:calc(.76rem * var(--fleet-font-scale, 1));color:var(--text-dim);margin-top:.2rem}.chat-summary{font-style:italic;margin-top:.5rem}.toast{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:5;background:var(--panel-2);border:1px solid var(--accent);color:var(--text);padding:.6rem 1rem;border-radius:8px;font-size:.9rem;box-shadow:0 6px 20px #0006}.chat-scroll{flex:1;min-height:0;overflow-y:auto;padding:1rem 1.1rem;display:flex;flex-direction:column;gap:1.25rem;font-size:calc(.88rem * var(--fleet-font-scale, 1))}.chat-info,.chat-error{color:var(--text-dim);text-align:center;padding:1.5rem;margin:auto;max-width:460px}.chat-hint{font-size:.85rem;opacity:.8;margin-top:.3rem}.chat-error{color:#ffd7d7}.chat-error button{margin-top:.7rem}.turn{display:flex;flex-direction:column;gap:.75rem}.turn-prompt{display:flex;justify-content:flex-end}.bubble-user{max-width:80%;background:var(--accent);color:#071019;padding:.6rem .85rem;border-radius:12px 12px 2px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:1em}.turn-blocks{display:flex;flex-direction:column;gap:.6rem}.blk{max-width:92%}.blk-text{background:var(--panel);border:1px solid var(--border);border-radius:12px 12px 12px 2px;padding:.15rem .9rem;overflow-wrap:anywhere}.md>*:first-child{margin-top:.6rem}.md>*:last-child{margin-bottom:.6rem}.md pre{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.7rem .8rem;overflow-x:auto}.md code{background:var(--bg);border-radius:4px;padding:.05rem .3rem;font-size:.9em}.md pre code{background:none;padding:0}.md a{color:var(--accent)}.md table{border-collapse:collapse}.md th,.md td{border:1px solid var(--border);padding:.3rem .5rem}.blk-thinking{font-size:.85rem}.blk-thinking-toggle{background:none;border:none;color:var(--text-dim);cursor:pointer;font:inherit;font-style:italic;padding:.2rem 0}.blk-thinking-body{margin:.3rem 0 0;padding:.6rem .8rem;background:var(--panel);border:1px dashed var(--border);border-radius:8px;color:var(--text-dim);white-space:pre-wrap;overflow-x:auto}.blk-caret{display:inline-block;width:1rem}.blk-tool{background:var(--panel);border:1px solid var(--border);border-radius:8px;overflow:hidden}.blk-tool-error{border-color:var(--danger)}.blk-tool-head{width:100%;display:flex;align-items:center;gap:.5rem;background:var(--panel-2);border:none;color:var(--text);cursor:pointer;font:inherit;padding:.5rem .7rem;text-align:left}.blk-tool-head-static{cursor:default}.blk-tool-name{font-weight:600;font-family:ui-monospace,Cascadia Code,monospace;font-size:.9rem}.blk-tool-status{margin-left:auto;font-size:.75rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.3px}.blk-tool-body{padding:.6rem .7rem;display:flex;flex-direction:column;gap:.6rem}.blk-tool-section{display:flex;flex-direction:column;gap:.25rem}.blk-tool-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim)}.blk-code{margin:0;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.55rem .7rem;font-size:.82rem;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere}.blk-result{border-top:1px solid var(--border);padding-top:.7rem;display:flex;flex-direction:column;gap:.4rem}.blk-result-text{overflow-wrap:anywhere}.blk-result-meta{font-size:.78rem;color:var(--text-dim)}.blk-result-error{border-color:var(--danger)}.blk-result-badge{color:#ff9d9d;font-size:.82rem;font-weight:600}.turn-running{display:flex;align-items:center;gap:.6rem;color:var(--text-dim);font-size:.88rem}.turn-running-label{flex:0 0 auto}.turn-running.is-tool .turn-running-label{color:var(--accent)}.turn-running.is-thinking .turn-running-label{color:#c8a2ff}.btn-interrupt{margin-left:.4rem}.turn-final{font-size:.85rem}.turn-final-interrupted{color:#ffcf7a}.turn-final-error{color:#ff9d9d}.composer{border-top:1px solid var(--border);background:var(--panel);padding:.55rem .8rem .65rem;display:flex;flex-direction:column;gap:.4rem}.composer-error{background:var(--danger-bg);border:1px solid var(--danger);color:#ffd7d7;padding:.45rem .7rem;border-radius:8px;font-size:.85rem}.composer-hint{font-size:.8rem;color:var(--text-dim)}.composer-row{display:flex;gap:.45rem;align-items:flex-end}.composer-input{flex:1;min-width:0;resize:none;font:inherit;font-size:calc(.9rem * var(--fleet-font-scale, 1));padding:.5rem .65rem;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;color:var(--text);line-height:1.4;min-height:2.4rem;max-height:11rem;overflow-y:auto}.composer-input:focus{outline:none;border-color:var(--accent)}.composer-input:disabled{opacity:.6}.composer-send{flex:0 0 auto;min-width:76px}.mic{position:relative;display:inline-flex;flex:0 0 auto}.mic-row{display:flex;align-items:center;gap:.4rem}.mic-btn{flex:0 0 auto;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;transition:border-color .15s,background .15s}.mic-btn:hover:not(:disabled){border-color:var(--accent)}.mic-btn:disabled{opacity:.6;cursor:default}.mic-btn.is-listening{border-color:var(--danger);background:var(--danger-bg);color:#ffd7d7;animation:mic-pulse 1.2s ease-in-out infinite}.mic-btn.is-error{border-color:var(--danger)}@keyframes mic-pulse{0%,to{box-shadow:0 0 #dc505080}50%{box-shadow:0 0 0 5px #dc505000}}.mic-glyph{display:inline-block}.mic-level{position:absolute;bottom:calc(100% + .45rem);right:0;width:110px;height:6px;z-index:6;background:var(--panel-2);border:1px solid var(--border);border-radius:4px;overflow:hidden;box-shadow:0 4px 14px #00000059}.mic-level-bar{display:block;height:100%;background:var(--accent);transition:width .08s linear}.mic-status{position:absolute;bottom:calc(100% + .35rem);right:0;z-index:6;font-size:.76rem;color:var(--text-dim);white-space:nowrap;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:.2rem .5rem;box-shadow:0 4px 14px #00000059}.mic-error{position:absolute;bottom:calc(100% + .35rem);right:0;z-index:6;width:max-content;max-width:min(260px,70vw);font-size:.78rem;color:#ffd7d7;background:var(--danger-bg);border:1px solid var(--danger);border-radius:6px;padding:.3rem .5rem;box-shadow:0 4px 14px #00000059}.mic-hint{position:absolute;bottom:calc(100% + .35rem);right:0;z-index:6;width:max-content;max-width:min(260px,70vw);font-size:.76rem;color:var(--text-dim);background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:.25rem .5rem;box-shadow:0 4px 14px #00000059}.mic-compact .mic-btn{width:34px;height:34px;font-size:1rem}.perm-card{max-width:92%;background:#2a2410;border:1px solid #7a591f;border-radius:10px;padding:.7rem .8rem;display:flex;flex-direction:column;gap:.55rem}.perm-card-decided{opacity:.85;background:var(--panel);border-color:var(--border)}.perm-head{display:flex;align-items:center;gap:.5rem}.perm-icon{font-size:1rem}.perm-title{font-size:.92rem}.perm-tool{font-family:ui-monospace,Cascadia Code,monospace;font-weight:600;color:#ffcf7a}.perm-card-decided .perm-tool{color:var(--text)}.perm-badge{margin-left:auto;font-size:.7rem;text-transform:uppercase;letter-spacing:.3px;padding:.12rem .5rem;border-radius:999px;border:1px solid transparent;white-space:nowrap}.perm-approved{background:#12331f;color:#7fe0a8;border-color:#1f6b3f}.perm-denied{background:var(--danger-bg);color:#ff9d9d;border-color:var(--danger)}.perm-stale{background:var(--panel-2);color:var(--text-dim);border-color:var(--border)}.perm-toggle{align-self:flex-start;background:none;border:none;color:var(--text-dim);cursor:pointer;font:inherit;font-size:.82rem;padding:0}.perm-input{margin:0}.perm-error{background:var(--danger-bg);border:1px solid var(--danger);color:#ffd7d7;padding:.4rem .6rem;border-radius:6px;font-size:.82rem}.perm-actions{display:flex;gap:.6rem}.perm-approve{padding:.45rem 1rem}.perm-sending{display:flex;align-items:center;color:var(--text-dim);font-size:.85rem}.perm-note{font-size:.82rem;color:var(--text-dim)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:50}.modal{width:100%;max-width:480px;max-height:90vh;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 40px #00000080;outline:none}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--panel)}.modal-title{margin:0;font-size:1.2rem}.modal-close{background:none;border:none;color:var(--text-dim);font-size:1.6rem;line-height:1;cursor:pointer;padding:0 .25rem}.modal-close:hover{color:var(--text)}.modal-body{padding:1.25rem}.modal-info,.modal-error{color:var(--text-dim);text-align:center}.modal-error{color:#ffd7d7}.modal-error button,.modal-info .modal-actions{margin-top:.8rem}.modal-hint{font-size:.85rem;opacity:.85;margin-top:.4rem}.modal-warn{font-size:.85rem;line-height:1.4;padding:.6rem .75rem;border-radius:8px;border:1px solid color-mix(in srgb,#ffcf7a 45%,transparent);background:color-mix(in srgb,#ffcf7a 12%,transparent);color:#ffd8a0}.modal-warn code{background:color-mix(in srgb,#ffffff 10%,transparent);padding:0 .25rem;border-radius:4px}.modal-warn-github{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.modal-form{display:flex;flex-direction:column;gap:1rem}.modal-form .field span:first-child{color:var(--text);font-weight:600;font-size:.9rem}.modal-form select,.modal-form input[type=text]{font-size:1rem;padding:.55rem .7rem;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;color:var(--text)}.modal-form select:focus,.modal-form input:focus{outline:none;border-color:var(--accent)}.modal-form select:disabled,.modal-form input:disabled{opacity:.6}.field-note{font-size:.8rem;color:var(--text-dim)}.seg{display:flex;gap:0;border:1px solid var(--border);border-radius:8px;overflow:hidden;width:fit-content}.seg-btn{background:var(--panel-2);border:none;color:var(--text-dim);padding:.4rem .9rem;cursor:pointer;font:inherit;font-size:.88rem}.seg-btn+.seg-btn{border-left:1px solid var(--border)}.seg-btn.is-on{background:var(--accent);color:#071019;font-weight:600}.seg-btn:disabled{opacity:.5;cursor:default}.modal-actions{display:flex;justify-content:flex-end;gap:.7rem;margin-top:.3rem}.btn-sm{font-size:.8rem;padding:.3rem .6rem}.btn-danger:hover:not(:disabled){border-color:var(--danger)}.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;text-decoration:underline;padding:0 0 0 .4rem}.field-warn{color:#ffcf7a}.login-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;border-radius:999px;padding:.12rem .6rem;border:1px solid var(--border);white-space:nowrap}.ls-in{background:#10331f;color:#7ee2ad;border-color:#1f6a41}.ls-progress{background:#14324d;color:#7cc0ff;border-color:#1f5680}.ls-expired{background:#4a3410;color:#ffcf7a;border-color:#7a591f}.ls-error{background:var(--danger-bg);color:#ff9d9d;border-color:var(--danger)}.ls-out{background:var(--panel-2);color:var(--text-dim);border-color:var(--border)}.account-modal{width:min(560px,94vw)}.account-head-actions{margin-bottom:.8rem}.add-account-form{margin-bottom:1rem;padding:.9rem;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius)}.link-button{background:none;border:none;padding:0;cursor:pointer;color:var(--accent);font:inherit;font-size:.82rem}.link-button:hover:not(:disabled){color:var(--accent-hover);text-decoration:underline}.add-account-advanced-toggle{display:inline-block;margin:.4rem 0}.add-account-advanced{border-top:1px dashed var(--border);padding-top:.6rem;margin-top:.2rem}.add-account-form .field-note code{background:var(--panel);border:1px solid var(--border);border-radius:5px;padding:.05rem .35rem;font-size:.9em}.account-list{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.account-row{border:1px solid var(--border);border-radius:var(--radius);padding:.7rem .8rem;background:var(--panel-2);display:flex;flex-direction:column;gap:.5rem}.account-row-main{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.account-label{font-weight:600}.account-row-actions{display:flex;flex-wrap:wrap;gap:.4rem}.account-detail{margin:0}.account-github{border-top:1px dashed var(--border);padding-top:.5rem}.account-github-linked{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.github-badge{font-size:.85rem;color:var(--text-muted, var(--text))}.github-badge strong{color:var(--text)}.account-github-form{display:flex;flex-direction:column;gap:.5rem}.account-host{border-top:1px dashed var(--border);padding-top:.5rem}.account-host-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem}.account-host-caption{color:var(--text-dim)}.account-host select{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.2rem .4rem;font:inherit;font-size:.85rem}.host-modal{width:min(620px,94vw)}.host-list{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.host-row{border:1px solid var(--border);border-radius:var(--radius);padding:.7rem .8rem;background:var(--panel-2);display:flex;flex-direction:column;gap:.5rem}.host-row-main{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.host-name{font-weight:600}.host-tag,.host-platform{font-size:.72rem;border-radius:999px;padding:.08rem .5rem;border:1px solid var(--border);color:var(--text-dim);background:var(--panel)}.host-runners{margin-left:auto}.host-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;border-radius:999px;padding:.12rem .55rem;border:1px solid var(--border);white-space:nowrap}.host-badge-online{background:#10331f;color:#7ee2ad;border-color:#1f6a41}.host-badge-offline{background:var(--panel);color:var(--text-dim);border-color:var(--border)}.host-settings-summary{margin:0}.host-row-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.host-settings-form{border-top:1px dashed var(--border);padding-top:.6rem;display:flex;flex-direction:column;gap:.5rem}.host-notice{font-size:.82rem;color:#7cc0ff;background:#14324d;border:1px solid #1f5680;border-radius:6px;padding:.4rem .6rem}.host-token-card{margin-bottom:1rem;padding:.9rem;border-radius:var(--radius);background:var(--panel-2);border:1px solid var(--accent);display:flex;flex-direction:column;gap:.6rem}.host-token-value{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.host-token-code{flex:1 1 auto;min-width:0;word-break:break-all;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:.35rem .5rem;font-size:.85rem}.host-token-warning{margin:0}.login-modal{width:min(560px,94vw)}.login-body{display:flex;flex-direction:column;gap:.6rem}.login-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.login-steps li{border:1px solid var(--border);border-radius:var(--radius);padding:.8rem;background:var(--panel-2);display:flex;flex-direction:column;gap:.5rem}.login-steps li.is-current{border-color:var(--accent)}.login-step-title{font-weight:600}.login-url{word-break:break-all;color:var(--accent);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.9rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.5rem .6rem;text-decoration:none}.login-url:hover{border-color:var(--accent);text-decoration:underline}.login-code-form{display:flex;gap:.5rem}.login-code-input{flex:1;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.55rem .6rem;font:inherit}.login-code-input:focus{outline:none;border-color:var(--accent)}.login-success{text-align:center;display:flex;flex-direction:column;gap:.6rem;align-items:center}.login-check{width:48px;height:48px;border-radius:50%;background:#10331f;color:var(--ok);display:flex;align-items:center;justify-content:center;font-size:1.6rem;border:1px solid #1f6a41}.login-error-state{display:flex;flex-direction:column;gap:.4rem}.accounts-banner{display:flex;align-items:center;gap:.6rem;padding:.55rem 1.25rem;background:#4a3410;color:#ffcf7a;border-bottom:1px solid #7a591f;font-size:.9rem}.accounts-banner-dot{width:8px;height:8px;border-radius:50%;background:#ffcf7a;flex:0 0 auto}.accounts-banner button{margin-left:auto}.group-bar{margin-top:.6rem;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.group-bar-form{align-items:center}.group-bar-input{flex:1;min-width:120px;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.4rem .5rem;font:inherit;font-size:.9rem}.group-bar-input:focus{outline:none;border-color:var(--accent)}.group-bar-error{flex-basis:100%}.session-group{display:flex;flex-direction:column}.session-group-head{display:flex;align-items:center;gap:.5rem;width:100%;background:none;border:none;cursor:pointer;color:var(--text-dim);font:inherit;font-size:.78rem;text-transform:uppercase;letter-spacing:.4px;padding:.6rem .2rem .35rem;text-align:left}.session-group-head:hover{color:var(--text)}.group-caret{transition:transform .15s;display:inline-block}.group-caret.is-collapsed{transform:rotate(-90deg)}.group-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-count{background:var(--panel-2);border:1px solid var(--border);border-radius:999px;padding:.02rem .45rem;font-size:.72rem;color:var(--text-dim)}.session-card{cursor:pointer}.session-card:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.session-card.is-dragging{opacity:.5}.session-card-top-right{display:inline-flex;align-items:center;gap:.35rem;flex:0 0 auto}.session-menu-btn{background:none;border:1px solid transparent;color:var(--text-dim);cursor:pointer;font-size:1rem;line-height:1;border-radius:6px;padding:.05rem .3rem}.session-menu-btn:hover{background:var(--panel-2);border-color:var(--border);color:var(--text)}.vis-badge{margin-right:.3rem;font-size:.85rem}.session-menu{position:fixed;z-index:50;min-width:220px;max-width:260px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 30px #00000073;padding:.35rem;display:flex;flex-direction:column}.session-menu-section{font-size:.72rem;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);padding:.4rem .5rem .2rem;display:flex;align-items:center;gap:.5rem}.session-menu-back{background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:.75rem;padding:0}.session-menu-item{background:none;border:none;color:var(--text);cursor:pointer;font:inherit;text-align:left;padding:.45rem .5rem;border-radius:6px;font-size:.9rem}.session-menu-item:hover{background:var(--panel-2)}.session-menu-item.is-current,.session-menu-new{color:var(--accent)}.session-menu-empty,.session-menu-hint{padding:.4rem .5rem;color:var(--text-dim);font-size:.82rem}.session-menu-users{display:flex;flex-direction:column;gap:.15rem;max-height:160px;overflow-y:auto}.session-menu-user{display:flex;align-items:center;gap:.5rem;padding:.3rem .5rem;font-size:.9rem;cursor:pointer}.session-menu-user:hover{background:var(--panel-2);border-radius:6px}.session-menu-actions{display:flex;justify-content:flex-end;gap:.4rem;padding:.4rem .3rem .2rem}.sidebar-action-error{margin:0 .75rem .4rem;padding:.5rem .6rem;font-size:.85rem;background:var(--danger-bg);border:1px solid var(--danger);color:#ff9d9d;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.chat-body{flex:1;min-height:0;display:flex}.chat-body>.chat-scroll{flex:1}.btn-sm{padding:.4rem .8rem;font-size:.85rem}.btn-xs{padding:.25rem .55rem;font-size:.78rem;line-height:1.2;border-radius:6px;text-decoration:none;display:inline-block}.file-panel{flex:0 0 340px;width:340px;min-height:0;border-left:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column;overflow-y:auto}.file-panel-head{display:flex;align-items:center;justify-content:space-between;padding:.75rem .9rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--panel);z-index:1}.file-panel-title{margin:0;font-size:.95rem}.file-panel-head-actions{display:flex;align-items:center;gap:.4rem}.file-panel-close{background:none;border:none;color:var(--text-dim);font-size:1.3rem;line-height:1;cursor:pointer;padding:0 .2rem}.file-panel-close:hover{color:var(--text)}.file-drop{margin:.75rem .9rem;padding:1rem;text-align:center;border:1.5px dashed var(--border);border-radius:var(--radius);background:var(--panel-2);transition:border-color .15s,background .15s}.file-drop.is-over{border-color:var(--accent);background:#223047}.file-drop-hint{margin:0 0 .6rem;color:var(--text-dim);font-size:.85rem}.file-progress{position:relative;margin-top:.7rem;height:18px;border-radius:9px;background:var(--panel);border:1px solid var(--border);overflow:hidden}.file-progress-bar{height:100%;background:var(--accent);transition:width .15s}.file-progress-txt{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.72rem;color:var(--text)}.file-upload-error{margin-top:.7rem;padding:.5rem .6rem;font-size:.82rem;text-align:left;background:var(--danger-bg);border:1px solid var(--danger);color:#ff9d9d;border-radius:8px}.file-section-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);padding:.4rem .9rem .2rem}.file-chips{display:flex;flex-direction:column;gap:.4rem;padding-bottom:.4rem}.file-chip{display:flex;align-items:center;gap:.5rem;margin:0 .9rem;padding:.4rem .5rem;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;font-size:.82rem}.file-chip-thumb{width:28px;height:28px;object-fit:cover;border-radius:5px;flex:0 0 auto}.file-chip-badge{flex:0 0 auto;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700;color:var(--accent);background:var(--panel);border:1px solid var(--border);border-radius:5px}.file-chip-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim)}.file-chip-insert{flex:0 0 auto;background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:.78rem;text-decoration:underline;padding:0}.file-list-wrap{display:flex;flex-direction:column;min-height:0}.file-info{padding:1rem .9rem;color:var(--text-dim);font-size:.86rem}.file-info-error{color:#ffd7d7}.file-hint{font-size:.8rem;opacity:.8;margin-top:.3rem}.file-list{list-style:none;margin:0;padding:0 .5rem 1rem}.file-row{display:flex;flex-direction:column;gap:.3rem;padding:.5rem .4rem;border-bottom:1px solid var(--border)}.file-row-main{display:flex;flex-direction:column;min-width:0}.file-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-row-meta{font-size:.75rem;color:var(--text-dim)}.file-row-actions{display:flex;gap:.35rem;flex-wrap:wrap}.file-preview{margin-top:.4rem;max-width:100%;max-height:260px;border-radius:6px;border:1px solid var(--border)}.settings-modal{width:min(520px,94vw)}.settings-section{display:flex;flex-direction:column;gap:.8rem}.settings-title{margin:0 0 .2rem;font-size:1.05rem}.settings-note{font-size:.85rem;color:var(--text-dim);margin:.2rem 0 0}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .8rem;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius)}.settings-row-label{font-weight:600;font-size:.95rem}.settings-row-hint{font-size:.82rem;color:var(--text-dim);margin-top:.2rem}.settings-toggles{display:flex;flex-direction:column;gap:.5rem}.settings-toggle{display:flex;align-items:center;gap:.6rem;font-size:.95rem;cursor:pointer;padding:.3rem 0}.settings-toggle input[type=checkbox]{width:20px;height:20px;flex:0 0 auto;cursor:pointer;accent-color:var(--accent)}.settings-toggle-group{display:flex;flex-direction:column;gap:.2rem;padding-left:.4rem;border-left:2px solid var(--border)}.settings-toggle-group[aria-disabled=true]{opacity:.5}.settings-toggle-sub{font-size:.9rem;color:var(--text-dim)}.mobile-nav{display:none}.mobile-nav-track{display:flex;gap:.5rem;overflow-x:auto;padding:.5rem .75rem;-webkit-overflow-scrolling:touch}.mobile-nav-chip{position:relative;flex:0 0 auto;max-width:60vw;background:var(--panel-2);border:1px solid var(--border);border-radius:999px;color:var(--text);font:inherit;font-size:.9rem;padding:.5rem .9rem;min-height:44px;cursor:pointer;display:flex;align-items:center}.mobile-nav-chip.is-active{border-color:var(--accent);color:var(--accent)}.mobile-nav-chip.is-waiting{border-color:#7a591f}.mobile-nav-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-nav-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);margin-left:.5rem;flex:0 0 auto}.mobile-nav-chip.is-waiting .mobile-nav-dot{background:#ffcf7a}@media (max-width: 768px){html,body{overflow-x:hidden}.app-header{padding:.6rem .8rem}.app-brand{font-size:1.05rem}.app-user{gap:.5rem}.app-username{display:none}.app-header .btn-ghost{min-height:40px}.workbench.is-mobile{position:relative;flex-direction:column}.workbench.is-mobile .sidebar,.workbench.is-mobile .workbench-main{width:100%;flex:1 1 100%;border:none}.workbench.is-mobile.is-list .workbench-main,.workbench.is-mobile.is-chat .sidebar{display:none}.workbench.is-mobile .sidebar{flex-direction:column}.sidebar{width:100%;flex-basis:auto}.sidebar-list{padding-bottom:.5rem}.chat-back{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.chat-header{padding:.7rem .8rem;gap:.6rem}.chat-scroll{padding:.9rem .8rem}.bubble-user,.blk{max-width:100%}.composer{position:sticky;bottom:0;z-index:4;padding:.6rem .7rem calc(.7rem + env(safe-area-inset-bottom))}.composer-input{font-size:16px;min-height:46px}.composer-send{min-width:84px;min-height:46px}.sidebar-filter,.field input,.login-code-input,.group-bar-input,.modal-form select,.modal-form input[type=text],.settings-toggle,.composer-input{font-size:16px}.btn-primary,.btn-ghost,.btn-new,.session-menu-btn{min-height:44px}.session-card{padding:.7rem .8rem}.mobile-nav{display:block;flex:0 0 auto;border-top:1px solid var(--border);background:var(--panel);padding-bottom:env(safe-area-inset-bottom)}.modal{max-width:100%;max-height:92vh}.modal-overlay{padding:.5rem;align-items:flex-end}.app-offline-banner{font-size:.8rem}}.view-toggle{display:flex;gap:.25rem;padding:.4rem .6rem;border-bottom:1px solid var(--border);background:var(--panel);flex:0 0 auto}.view-toggle-btn{background:transparent;color:var(--text-dim);border:1px solid transparent;border-radius:var(--radius);padding:.3rem .8rem;font-size:.85rem;cursor:pointer}.view-toggle-btn.is-on{color:var(--text);background:var(--panel-2);border-color:var(--border)}.view-toggle-btn:hover{color:var(--text)}.desk-screen{flex:1;min-height:0;display:flex;flex-direction:column}.desk-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;border-bottom:1px solid var(--border);background:var(--panel);flex-wrap:wrap}.desk-bar-left{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;min-width:0}.desk-bar-label{font-size:.8rem;color:var(--text-dim)}.desk-select{background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:.3rem .5rem;max-width:240px}.desk-current-name{font-weight:600;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desk-dirty{color:var(--accent);font-size:.8rem}.desk-rename{display:inline-flex;align-items:center;gap:.35rem}.desk-rename-input{background:var(--panel-2);color:var(--text);border:1px solid var(--accent);border-radius:var(--radius);padding:.3rem .5rem}.desk-bar-actions{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.font-scale{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:8px;overflow:hidden}.font-scale-btn{border:none;border-radius:0;padding:.3rem .5rem;font-size:.78rem;line-height:1}.font-scale-btn+.font-scale-btn{border-left:1px solid var(--border)}.font-scale-btn:disabled{opacity:.45}.focus-mode .font-scale-btn{padding:.2rem .4rem;font-size:.72rem}.btn-danger{color:var(--danger)}.btn-danger:hover{border-color:var(--danger)}.desk-bar-note{padding:.5rem .75rem;font-size:.85rem;border-bottom:1px solid var(--border);background:var(--panel-2)}.desk-bar-error{color:var(--danger);background:var(--danger-bg)}.desk-bar-warn{color:var(--text)}.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;padding:0 .25rem;font:inherit}.desk-view{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto}.desk-toolbar{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;flex:0 0 auto}.desk-toolbar-hint{font-size:.78rem;color:var(--text-dim);margin-left:auto}.desk-arrange{display:inline-flex;align-items:center;gap:.3rem}.desk-arrange-label{font-size:.78rem;color:var(--text-dim)}.desk-arrange-btn{padding:.2rem .5rem;font-size:.78rem}.desk-switcher{display:inline-flex;align-items:center;gap:.35rem;margin-left:auto}.desk-switcher-label{font-size:.82rem;color:var(--text-dim)}.desk-grid{display:grid;gap:.6rem;padding:0 .75rem .75rem;align-content:start;position:relative}.desk-cell{position:relative;min-width:0;display:flex}.desk-cell.is-interacting{z-index:5}.desk-drop-ghost{border:2px dashed var(--accent);border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 12%,transparent);pointer-events:none;z-index:1}.desk-drop-ghost.is-expanding{border-color:var(--ok, #34c759);background:color-mix(in srgb,var(--ok, #34c759) 16%,transparent)}.desk-edge-zone{position:absolute;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:4;border:2px dashed color-mix(in srgb,var(--accent) 55%,transparent);border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 6%,transparent);color:var(--text-dim);transition:background .12s ease,border-color .12s ease,color .12s ease}.desk-edge-zone.right{top:0;bottom:0;right:0;width:3.25rem}.desk-edge-zone.bottom{left:0;right:0;bottom:0;height:2.75rem}.desk-edge-zone .desk-edge-label{font-size:.74rem;font-weight:600;white-space:nowrap;letter-spacing:.02em}.desk-edge-zone.right .desk-edge-label{writing-mode:vertical-rl;transform:rotate(180deg)}.desk-edge-zone.is-active{border-color:var(--ok, #34c759);border-style:solid;background:color-mix(in srgb,var(--ok, #34c759) 22%,transparent);color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--ok, #34c759) 40%,transparent)}.desk-resize-handle{position:absolute;right:2px;bottom:2px;width:16px;height:16px;cursor:nwse-resize;border-right:2px solid var(--text-dim);border-bottom:2px solid var(--text-dim);border-bottom-right-radius:4px;opacity:.6}.desk-resize-handle:hover{opacity:1;border-color:var(--accent)}.desk-panel{display:flex;flex-direction:column;width:100%;min-width:0;min-height:0;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.desk-panel.is-dragging{outline:2px solid var(--accent);opacity:.92}.desk-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .55rem;background:var(--panel-2);border-bottom:1px solid var(--border);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.desk-panel-head:active{cursor:grabbing}.desk-panel-titles{display:flex;flex-direction:column;min-width:0}.desk-panel-name{font-weight:600;font-size:calc(.8rem * var(--fleet-font-scale, 1));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desk-panel-sub{font-size:calc(.68rem * var(--fleet-font-scale, 1));color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desk-panel-actions{display:flex;align-items:center;gap:.15rem;flex:0 0 auto}.desk-panel-expand{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:.95rem;line-height:1;padding:0 .25rem;flex:0 0 auto}.desk-panel-expand:hover{color:var(--accent)}.desk-panel-close{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:.95rem;padding:0 .25rem;flex:0 0 auto}.desk-panel-close:hover{color:var(--danger)}.chat-modal-overlay{z-index:60;padding:2vh 2vw}.chat-modal{max-width:80vw;width:80vw;height:80vh;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.chat-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);background:var(--panel-2);flex:0 0 auto}.chat-modal-titles{display:flex;flex-direction:column;min-width:0;gap:.15rem}.chat-modal-title{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:1rem;min-width:0}.chat-modal-name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-modal-sub{font-size:.8rem;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-modal-body{flex:1;min-height:0;display:flex}.chat-modal-body>.chat-scroll{flex:1;min-height:0}.chat-modal-composer{flex:0 0 auto}@media (max-width: 768px){.chat-modal{width:96vw;max-width:96vw;height:90vh;max-height:90vh}.chat-modal-overlay{padding:.5rem}}.desk-panel-body{flex:1;min-height:0;display:flex}.desk-panel-scroll{flex:1;min-height:0;overflow-y:auto;padding:.5rem .6rem;font-size:calc(.84rem * var(--fleet-font-scale, 1))}.desk-panel-composer{border-top:1px solid var(--border);padding:.4rem .5rem;background:var(--panel);flex:0 0 auto}.desk-panel-composer .composer-row{gap:.35rem}.desk-panel-composer .composer-input{min-height:2.1rem;max-height:6rem;font-size:calc(.84rem * var(--fleet-font-scale, 1))}.desk-panel-composer .composer-send{min-width:auto;padding:.45rem .7rem}.desk-panel-placeholder{margin:auto;text-align:center;padding:1.2rem;color:var(--text-dim)}.desk-panel-placeholder-title{font-weight:600;color:var(--text);margin-bottom:.35rem}.desk-panel-placeholder-hint{font-size:.8rem}.desk-empty{margin:auto;text-align:center;color:var(--text-dim);padding:2rem}.desk-empty h3{color:var(--text);margin-bottom:.4rem}.desk-picker{margin:0 .75rem .5rem;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);max-height:280px;overflow:auto}.desk-picker-head{display:flex;align-items:center;justify-content:space-between;padding:.45rem .6rem;border-bottom:1px solid var(--border);font-size:.85rem;color:var(--text-dim)}.desk-picker-empty{padding:.75rem;color:var(--text-dim);font-size:.85rem}.desk-picker-list{list-style:none;margin:0;padding:.35rem}.desk-picker-item{display:flex;flex-direction:column;width:100%;text-align:left;gap:.15rem;background:transparent;border:1px solid transparent;border-radius:var(--radius);padding:.4rem .55rem;cursor:pointer;color:var(--text)}.desk-picker-item:hover{background:var(--panel);border-color:var(--border)}.desk-picker-name{font-weight:600;font-size:.85rem}.desk-picker-meta{font-size:.75rem;color:var(--text-dim)}.desk-view-stack .desk-stack-cell{padding:0 .6rem .6rem;height:70vh;display:flex}.focus-mode .app-header{padding:.1rem .6rem}.focus-mode .focus-hide{display:none!important}.focus-mode .view-toggle,.focus-mode .accounts-banner{display:none}.focus-exit{color:var(--accent)}.desk-focus-btn.is-on{color:var(--accent);border-color:var(--accent)}.focus-mode .desk-bar{padding:.15rem .5rem;gap:.4rem}.focus-mode .desk-toolbar{padding:.2rem .5rem}.focus-mode .desk-toolbar-hint{display:none}.focus-mode .desk-grid{gap:.4rem;padding:0 .5rem .5rem}.focus-mode .desk-panel-head{padding:.1rem .35rem;gap:.35rem}.focus-mode .desk-panel-titles{flex-direction:row;align-items:baseline;gap:.4rem;overflow:hidden}.focus-mode .desk-panel-name{font-size:calc(.74rem * var(--fleet-font-scale, 1));flex:0 1 auto}.focus-mode .desk-panel-sub{flex:1 1 auto;font-size:calc(.62rem * var(--fleet-font-scale, 1))}.focus-mode .chat-scroll{font-size:calc(.8rem * var(--fleet-font-scale, 1))}.focus-mode .desk-panel-scroll{font-size:calc(.78rem * var(--fleet-font-scale, 1))}.focus-mode .composer{padding:.35rem .55rem .45rem}.focus-mode .composer-input{padding:.3rem .5rem;min-height:1.7rem;font-size:calc(.8rem * var(--fleet-font-scale, 1));transition:min-height .12s ease}.focus-mode .composer-input:focus{min-height:2.6rem}.focus-mode .composer-send{min-width:auto;padding:.35rem .7rem}.focus-mode .desk-panel-composer{padding:.25rem .4rem}.focus-mode .desk-panel-composer .composer-input{max-height:4.5rem}.focus-mode .mic-btn{width:30px;height:30px;font-size:.9rem}@media (min-width: 769px){.focus-mode .workbench{position:relative}.focus-mode .sidebar{position:absolute;top:0;left:0;bottom:0;z-index:40;width:20px;flex:none;overflow:hidden;transition:width .12s ease}.focus-mode .sidebar:after{content:"›";position:absolute;top:50%;left:5px;transform:translateY(-50%);color:var(--text-dim);font-size:1.05rem;pointer-events:none}.focus-mode .sidebar:hover,.focus-mode .sidebar:focus-within{width:340px;overflow:auto;box-shadow:6px 0 24px #00000059}.focus-mode .sidebar:hover:after,.focus-mode .sidebar:focus-within:after{display:none}.focus-mode .workbench-main{margin-left:20px}}:root{--attn-green: var(--ok);--attn-green-glow: rgba(90, 209, 154, .45);--attn-red: var(--danger);--attn-red-glow: rgba(255, 107, 107, .42)}@keyframes attn-pulse-green{0%,to{box-shadow:inset 0 0 0 4px var(--attn-green),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-green),0 0 12px 1px var(--attn-green-glow)}50%{box-shadow:inset 0 0 0 4px var(--attn-green),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-green),0 0 18px 4px var(--attn-green-glow)}}@keyframes attn-pulse-red{0%,to{box-shadow:inset 0 0 0 4px var(--attn-red),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-red),0 0 12px 1px var(--attn-red-glow)}50%{box-shadow:inset 0 0 0 4px var(--attn-red),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-red),0 0 18px 4px var(--attn-red-glow)}}.desk-panel.attn-waiting{border-color:var(--attn-green);outline:2px solid var(--attn-green);outline-offset:-1px;animation:attn-pulse-green 2s ease-in-out infinite}.desk-panel.attn-error{border-color:var(--attn-red);outline:2px solid var(--attn-red);outline-offset:-1px;animation:attn-pulse-red 2s ease-in-out infinite}.session-card.attn-waiting{border-color:var(--attn-green);border-left-color:var(--attn-green);border-left-width:3px;box-shadow:0 0 0 1px var(--attn-green),0 0 12px 0 var(--attn-green-glow)}.session-card.attn-error{border-color:var(--attn-red);border-left-color:var(--attn-red);border-left-width:3px;box-shadow:0 0 0 1px var(--attn-red),0 0 12px 0 var(--attn-red-glow)}.chat-header.attn-waiting{border-bottom-color:var(--attn-green);box-shadow:inset 0 -2px 0 0 var(--attn-green),0 0 14px 0 var(--attn-green-glow)}.chat-header.attn-error{border-bottom-color:var(--attn-red);box-shadow:inset 0 -2px 0 0 var(--attn-red),0 0 14px 0 var(--attn-red-glow)}.attn-chip{display:inline-flex;align-items:center;gap:.25rem;flex:0 0 auto;font-size:.68rem;font-weight:600;padding:.1rem .45rem;border-radius:999px;border:1px solid transparent;white-space:nowrap;vertical-align:middle}.attn-chip .attn-chip-icon{font-size:.8rem;line-height:1}.attn-chip.attn-waiting{background:color-mix(in srgb,var(--attn-green) 20%,transparent);color:var(--attn-green);border-color:var(--attn-green)}.attn-chip.attn-error{background:var(--danger-bg);color:#ff9d9d;border-color:var(--attn-red)}.chat-title .attn-chip{margin-right:.5rem}.attn-dot{display:inline-flex;align-items:center;justify-content:center;margin-right:.3rem;font-size:.78rem;line-height:1;vertical-align:middle}.attn-dot.attn-waiting{color:var(--attn-green)}.attn-dot.attn-error{color:var(--attn-red)}.attn-counter{display:flex;align-items:center;gap:.5rem;margin:.5rem .9rem;width:calc(100% - 1.8rem);padding:.5rem .7rem;border:1px solid var(--attn-green);border-radius:8px;background:color-mix(in srgb,var(--attn-green) 14%,var(--panel));color:var(--text);font:inherit;font-weight:600;cursor:pointer;text-align:left;box-shadow:0 0 12px 0 var(--attn-green-glow)}.attn-counter:hover{background:color-mix(in srgb,var(--attn-green) 22%,var(--panel))}.attn-counter.is-on{background:color-mix(in srgb,var(--attn-green) 30%,var(--panel));outline:2px solid var(--attn-green);outline-offset:-1px}.attn-counter-icon{font-size:1rem;line-height:1;flex:0 0 auto}.attn-counter-text{flex:1 1 auto}.attn-counter-action{flex:0 0 auto;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:var(--attn-green)}@media (prefers-reduced-motion: reduce){.desk-panel.attn-waiting,.desk-panel.attn-error{animation:none}}.model-picker{display:inline-flex;align-items:center;gap:.4rem}.model-picker-field{display:inline-flex;align-items:center;gap:.35rem}.model-picker-caption{font-size:.78rem;color:var(--text-dim)}.model-picker select{font-size:.82rem;padding:.2rem .4rem;border:1px solid var(--border);border-radius:6px;background:var(--surface, #1b2330);color:inherit}.model-picker select:disabled{opacity:.6;cursor:progress}.model-picker-note{font-size:.72rem;color:var(--text-dim);white-space:nowrap}.model-picker-err{color:var(--danger)}@media (max-width: 768px){.model-picker-note:not(.model-picker-err){display:none}.model-picker-caption{display:none}}.desk-grid.is-ext-target{outline:2px dashed color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:-2px;border-radius:var(--radius)}.desk-drop-ghost.is-external{z-index:5}.desk-empty.is-drop-target{border:2px dashed var(--accent);border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--text)}@keyframes desk-panel-flash{0%,to{box-shadow:0 0 0 0 transparent}25%,75%{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 55%,transparent)}}.desk-cell.is-flash .desk-panel,.desk-stack-cell.is-flash .desk-panel{outline:2px solid var(--accent);animation:desk-panel-flash .8s ease 2}@media (prefers-reduced-motion: reduce){.desk-cell.is-flash .desk-panel,.desk-stack-cell.is-flash .desk-panel{animation:none}}.focus-mode .app-user{gap:.45rem}.focus-mode .focus-exit{padding:.1rem .5rem;font-size:.75rem;line-height:1.2}.focus-mode .system-stats-badge{font-size:.68rem;padding:.05rem .45rem}.focus-mode .desk-bar .btn-ghost,.focus-mode .desk-bar .btn-primary{padding:.15rem .45rem;font-size:.75rem;line-height:1.2}.focus-mode .desk-bar-left{gap:.35rem}.focus-mode .desk-bar-actions{gap:.25rem}.focus-mode .desk-select{padding:.1rem .35rem;font-size:.75rem;max-width:160px}.focus-mode .desk-dirty{font-size:.7rem}.focus-mode .desk-rename-input{padding:.1rem .35rem;font-size:.75rem}.focus-mode .font-scale-btn{padding:.12rem .35rem;font-size:.7rem}@media (min-width: 769px){.focus-mode .desk-toolbar{display:none}}.desk-bar-focus-tools{display:inline-flex;align-items:center;gap:.25rem}@media (max-width: 768px){.desk-bar-focus-tools{display:none}}.desk-more{position:relative;display:inline-flex}.desk-more-btn{font-weight:700}.desk-more-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:60;min-width:160px;padding:.25rem;display:flex;flex-direction:column;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #00000059}.desk-more-menu button{background:none;border:none;color:var(--text);text-align:left;padding:.4rem .6rem;font-size:.85rem;cursor:pointer;border-radius:6px}.desk-more-menu button:hover:not(:disabled){background:var(--panel)}.desk-more-menu button:disabled{opacity:.5;cursor:default}.desk-more-menu .btn-danger{color:var(--danger)}.focus-mode .desk-panel-sub{display:none}.focus-mode .desk-panel-name{font-size:calc(.72rem * var(--fleet-font-scale, 1))}.focus-mode .desk-panel-close{font-size:.8rem;line-height:1.2;padding:0 .2rem}.desk-gridwrap{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.desk-grid{flex:1;min-height:0;overflow:auto}.desk-grid{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-dim) 35%,transparent) transparent}.desk-grid::-webkit-scrollbar{width:10px;height:10px}.desk-grid::-webkit-scrollbar-track{background:transparent}.desk-grid::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-dim) 35%,transparent);border-radius:999px}.desk-grid::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-dim) 55%,transparent)}.desk-arrange-stepper{display:inline-flex;align-items:center;gap:.15rem}.desk-arrange-num{width:3rem;padding:.2rem .3rem;font:inherit;font-size:.78rem;text-align:center;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:6px}.focus-mode .desk-arrange-num{padding:.1rem .2rem;font-size:.72rem;width:2.6rem}.desk-view-auto{overflow:hidden}.desk-autogrid{flex:1;min-height:0;display:grid;gap:.5rem;padding:0 .75rem .75rem;position:relative;overflow:hidden}.desk-autogrid.is-scroll{overflow-y:auto;overflow-x:auto}.desk-autogrid.is-scroll{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-dim) 35%,transparent) transparent}.desk-auto-cell{position:relative;min-width:0;min-height:0;display:flex;animation:desk-auto-in .18s ease}@keyframes desk-auto-in{0%{opacity:.35;transform:scale(.985)}to{opacity:1;transform:none}}.desk-auto-cell.is-auto-dragging{z-index:10;pointer-events:none;opacity:.92;transition:none}.desk-auto-cell.is-auto-dragging .desk-panel{outline:2px solid var(--accent);box-shadow:0 12px 32px #0006}.desk-auto-cell.is-reorder-target .desk-panel{border-color:var(--accent)}.desk-auto-cell.is-swap-target .desk-panel{outline:3px solid var(--accent);outline-offset:-3px;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}.desk-auto-cell.is-swap-target:after{content:"⇄ scambia";position:absolute;z-index:7;top:50%;left:50%;transform:translate(-50%,-50%);padding:.28rem .72rem;border-radius:999px;font-size:.82rem;font-weight:600;color:#fff;background:var(--accent);box-shadow:0 4px 14px #00000059;pointer-events:none;white-space:nowrap}.desk-autogrid.is-append-target,.desk-autogrid.is-ext-target{outline:2px dashed color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:-2px;border-radius:var(--radius)}.desk-auto-cell.is-flash .desk-panel{outline:2px solid var(--accent);animation:desk-panel-flash .8s ease 2}.desk-mode-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;flex:0 0 auto}.desk-mode-btn{background:transparent;border:none;color:var(--text-dim);padding:.22rem .6rem;font:inherit;font-size:.78rem;cursor:pointer}.desk-mode-btn.is-on{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--text);font-weight:600}.desk-mode-btn:hover:not(.is-on){color:var(--text)}.focus-mode .desk-autogrid{gap:.4rem;padding:0 .5rem .5rem}.focus-mode .desk-mode-btn{padding:.12rem .4rem;font-size:.72rem}@media (prefers-reduced-motion: reduce){.desk-auto-cell,.desk-auto-cell.is-flash .desk-panel{animation:none}}.inline-rename{display:inline-flex;align-items:center;gap:.4rem;min-width:0;flex:1 1 auto}.inline-rename-input{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--accent);border-radius:6px;padding:.12rem .4rem;min-width:0;width:100%;max-width:24rem}.inline-rename-input:focus{outline:none;border-color:var(--accent-hover)}.inline-rename-input:disabled{opacity:.6}.inline-rename-error{color:var(--danger);font-size:.72rem;white-space:nowrap;flex:0 0 auto}.inline-rename-hint{color:var(--text-dim);font-size:.72rem;white-space:nowrap;flex:0 0 auto}.chat-title-name,.desk-panel-name-text{cursor:text}.session-name .inline-rename,.desk-panel-name .inline-rename{width:100%}@media (max-width: 768px){.inline-rename-input{font-size:16px}}:root{--attn-orange: #ff9d3c;--attn-orange-glow: rgba(255, 157, 60, .45);--attn-teal: #2ec9b4;--attn-teal-glow: rgba(46, 201, 180, .32)}@keyframes attn-pulse-working{0%,to{box-shadow:0 0 0 1px var(--attn-orange),0 0 8px 1px var(--attn-orange-glow)}50%{box-shadow:0 0 0 1px var(--attn-orange),0 0 15px 3px var(--attn-orange-glow)}}@keyframes attn-panel-working{0%,to{box-shadow:inset 0 0 0 4px var(--attn-orange),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-orange),0 0 10px 1px var(--attn-orange-glow)}50%{box-shadow:inset 0 0 0 4px var(--attn-orange),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-orange),0 0 16px 3px var(--attn-orange-glow)}}.desk-panel.attn-working{border-color:var(--attn-orange);outline:2px solid var(--attn-orange);outline-offset:-1px;box-shadow:0 0 0 1px var(--attn-orange),0 0 10px 1px var(--attn-orange-glow);animation:attn-panel-working 2.8s ease-in-out infinite}.desk-panel.attn-done{border-color:var(--attn-teal);outline:2px solid var(--attn-teal);outline-offset:-1px;box-shadow:0 0 0 1px var(--attn-teal),0 0 12px 1px var(--attn-teal-glow)}.session-card.attn-working{border-color:var(--attn-orange);border-left-color:var(--attn-orange);border-left-width:3px;box-shadow:0 0 0 1px var(--attn-orange),0 0 10px 0 var(--attn-orange-glow);animation:attn-pulse-working 2.8s ease-in-out infinite}.session-card.attn-done{border-color:var(--attn-teal);border-left-color:var(--attn-teal);border-left-width:3px;box-shadow:0 0 0 1px var(--attn-teal),0 0 12px 0 var(--attn-teal-glow)}.chat-header.attn-working{border-bottom-color:var(--attn-orange);box-shadow:inset 0 -2px 0 0 var(--attn-orange),0 0 12px 0 var(--attn-orange-glow);animation:attn-pulse-working 2.8s ease-in-out infinite}.chat-header.attn-done{border-bottom-color:var(--attn-teal);box-shadow:inset 0 -2px 0 0 var(--attn-teal),0 0 14px 0 var(--attn-teal-glow)}.attn-chip.attn-working{background:color-mix(in srgb,var(--attn-orange) 18%,transparent);color:var(--attn-orange);border-color:var(--attn-orange)}.attn-chip.attn-done{background:color-mix(in srgb,var(--attn-teal) 20%,transparent);color:var(--attn-teal);border-color:var(--attn-teal)}.attn-dot.attn-working{color:var(--attn-orange)}.attn-dot.attn-done{color:var(--attn-teal)}@media (prefers-reduced-motion: reduce){.desk-panel.attn-working,.session-card.attn-working,.chat-header.attn-working{animation:none}}.desk-auto-cell.drop-ind-left:after,.desk-cell.drop-ind-left:after,.desk-auto-cell.drop-ind-right:after,.desk-cell.drop-ind-right:after,.desk-auto-cell.drop-ind-bottom:after,.desk-cell.drop-ind-bottom:after{content:"";position:absolute;z-index:6;border-radius:2px;background:var(--accent);box-shadow:0 0 8px color-mix(in srgb,var(--accent) 70%,transparent);pointer-events:none}.desk-auto-cell.drop-ind-left:after,.desk-cell.drop-ind-left:after{left:-6px;top:4px;bottom:4px;width:3px}.desk-auto-cell.drop-ind-right:after,.desk-cell.drop-ind-right:after{right:-6px;top:4px;bottom:4px;width:3px}.desk-auto-cell.drop-ind-bottom:after,.desk-cell.drop-ind-bottom:after{left:4px;right:4px;bottom:-6px;height:3px}.desk-cell.is-reorder-target .desk-panel{border-color:var(--accent)}.desk-cell.is-drag-src{pointer-events:none}.session-group-head{cursor:default}.session-group-head.is-group-draggable{cursor:grab}.session-group-head.is-group-draggable:active{cursor:grabbing}.group-toggle{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;background:none;border:none;cursor:pointer;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;padding:0;text-align:left}.group-menu-btn{flex:0 0 auto}.session-group.group-empty .session-group-head{opacity:.7}.group-empty-hint{color:var(--text-dim);font-size:.78rem;font-style:italic;padding:0 .2rem .35rem 1.35rem}.session-group.group-new .session-group-head{animation:group-new-flash 1.8s ease-out;border-radius:8px}@keyframes group-new-flash{0%{background:color-mix(in srgb,var(--accent) 35%,transparent)}to{background:transparent}}.session-group-head.is-drop-target,.session-group-head.drop-target{background:color-mix(in srgb,var(--accent) 18%,transparent);outline:1px dashed var(--accent);outline-offset:-1px;border-radius:8px;color:var(--text)}.ungrouped-drop-zone .session-group-head{border:1px dashed var(--border);border-radius:8px;opacity:.85}.group-rename{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;text-transform:none;letter-spacing:normal}.group-menu-danger{color:var(--danger)}.group-menu-danger:hover{background:var(--danger-bg)}:root{--attn-teal-flash: rgba(46, 201, 180, .75)}@keyframes attn-flash-teal{0%,to{box-shadow:0 0 0 1px var(--attn-teal),0 0 12px 1px var(--attn-teal-glow)}50%{box-shadow:0 0 0 3px var(--attn-teal),0 0 26px 8px var(--attn-teal-flash)}}.desk-panel.attn-done,.session-card.attn-done,.chat-header.attn-done{animation:attn-flash-teal .7s ease-in-out 2}@media (prefers-reduced-motion: reduce){.desk-panel.attn-done,.session-card.attn-done,.chat-header.attn-done{animation:none}}.desk-auto-cell.attn-waiting>.desk-panel,.desk-cell.attn-waiting>.desk-panel{border-color:var(--attn-green);box-shadow:inset 0 0 0 4px var(--attn-green),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-green),0 0 14px 0 var(--attn-green-glow)}.desk-auto-cell.attn-error>.desk-panel,.desk-cell.attn-error>.desk-panel{border-color:var(--attn-red);box-shadow:inset 0 0 0 4px var(--attn-red),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-red),0 0 14px 0 var(--attn-red-glow)}.desk-auto-cell.attn-working>.desk-panel,.desk-cell.attn-working>.desk-panel{border-color:var(--attn-orange);box-shadow:inset 0 0 0 4px var(--attn-orange),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-orange),0 0 14px 0 var(--attn-orange-glow)}.desk-auto-cell.attn-done>.desk-panel,.desk-cell.attn-done>.desk-panel{border-color:var(--attn-teal);box-shadow:inset 0 0 0 4px var(--attn-teal),inset 0 0 0 6px var(--panel),inset 0 0 0 10px var(--attn-teal),0 0 14px 0 var(--attn-teal-glow)}.ctrl-zone{position:absolute;z-index:12;display:flex;align-items:center;justify-content:center;border:0;margin:0;padding:0;cursor:copy;color:var(--accent);font-size:.95rem;font-weight:700;line-height:1;border-radius:4px;background:color-mix(in srgb,var(--accent) 16%,transparent);opacity:.8}.ctrl-zone:hover,.ctrl-zone:focus-visible{opacity:1;background:color-mix(in srgb,var(--accent) 34%,transparent);box-shadow:0 0 8px color-mix(in srgb,var(--accent) 70%,transparent);outline:none}.ctrl-zone-before{left:-7px;top:4px;bottom:4px;width:14px}.ctrl-zone-after{right:-7px;top:4px;bottom:4px;width:14px}.ctrl-zone-below{left:4px;right:4px;bottom:-7px;height:14px}.ctrl-zone-empty{position:static;margin-top:1rem;padding:.5rem 1.1rem;font-size:1rem;border:1px dashed var(--accent)}.quick-summary-line{color:var(--text-dim);display:inline-flex;align-items:center;gap:.25rem;flex-wrap:wrap}.desk-panel-scroll,.chat-scroll{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-dim) 45%,transparent) transparent}.desk-panel-scroll::-webkit-scrollbar,.chat-scroll::-webkit-scrollbar{width:4px;height:4px}.desk-panel-scroll::-webkit-scrollbar-track,.chat-scroll::-webkit-scrollbar-track{background:transparent}.desk-panel-scroll::-webkit-scrollbar-thumb,.chat-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-dim) 45%,transparent);border-radius:999px}.desk-panel-scroll::-webkit-scrollbar-thumb:hover,.chat-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-dim) 65%,transparent)}@media (max-width: 768px){.composer-input,.desk-panel-composer .composer-input,.focus-mode .composer-input,.focus-mode .desk-panel-composer .composer-input{font-size:16px}}.fm-modal{width:min(1000px,92vw);max-width:92vw}.fm-body{flex:1;min-height:0;display:flex;overflow:hidden}.fm-projects{flex:0 0 240px;min-width:200px;border-right:1px solid var(--border);background:var(--panel-2);display:flex;flex-direction:column;overflow-y:auto}.fm-projects-head{display:flex;align-items:center;justify-content:space-between;padding:.6rem .8rem;font-weight:600;font-size:.9rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--panel-2)}.fm-project-list{list-style:none;margin:0;padding:.4rem;display:flex;flex-direction:column;gap:.25rem}.fm-project{width:100%;text-align:left;background:none;border:1px solid transparent;border-radius:var(--radius);color:var(--text);padding:.5rem .6rem;cursor:pointer;display:flex;flex-direction:column;gap:.1rem}.fm-project:hover{border-color:var(--border);background:var(--panel)}.fm-project.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.fm-project-name{font-weight:600;font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-project-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.fm-placeholder{padding:2rem;text-align:center}.fm-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem;padding:.6rem .9rem;border-bottom:1px solid var(--border)}.fm-crumb{display:inline-flex;align-items:center;gap:.15rem}.fm-crumb-btn{background:none;border:none;color:var(--accent);cursor:pointer;padding:.1rem .25rem;font-size:.9rem;border-radius:6px}.fm-crumb-btn:hover:not(:disabled){background:var(--panel-2)}.fm-crumb-btn:disabled{color:var(--text);cursor:default;font-weight:600}.fm-crumb-sep{color:var(--text-dim)}.fm-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;padding:.5rem .9rem;border-bottom:1px solid var(--border)}.fm-busy{display:inline-flex;align-items:center;gap:.35rem;margin-left:auto}.fm-clip{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding:.4rem .9rem;background:color-mix(in srgb,var(--accent) 10%,transparent);border-bottom:1px solid var(--border)}.fm-newfolder,.fm-rename-form{display:flex;gap:.4rem;align-items:center}.fm-newfolder{padding:.5rem .9rem;border-bottom:1px solid var(--border)}.fm-newfolder input,.fm-rename-form input{background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:.35rem .5rem;font-size:.9rem;min-width:0}.fm-newfolder input:focus,.fm-rename-form input:focus{outline:none;border-color:var(--accent)}.fm-rename-form,.fm-rename-form input{flex:1}.fm-notice{padding:.4rem .9rem;color:var(--ok);font-size:.85rem}.fm-main .form-error{margin:.4rem .9rem}.fm-list-wrap{flex:1;min-height:0;overflow-y:auto;padding:.4rem}.fm-list-wrap.is-drop{outline:2px dashed var(--accent);outline-offset:-6px;background:color-mix(in srgb,var(--accent) 6%,transparent)}.fm-empty{padding:2rem;text-align:center}.fm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.fm-row{display:grid;grid-template-columns:1.4rem 1fr auto auto auto;align-items:center;gap:.6rem;padding:.4rem .6rem;border:1px solid transparent;border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.fm-row:hover{background:var(--panel-2)}.fm-row.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.fm-row.is-cut{opacity:.55;font-style:italic}.fm-row.is-protected{cursor:default;color:var(--text-dim)}.fm-row.is-drop{outline:2px dashed var(--accent);outline-offset:-3px}.fm-row.is-renaming{grid-template-columns:1.4rem 1fr}.fm-icon{text-align:center}.fm-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-size,.fm-mtime{text-align:right;white-space:nowrap}.fm-tag{padding:.05rem .35rem;border:1px solid var(--border);border-radius:6px}@media (max-width: 768px){.fm-body{flex-direction:column}.fm-projects{flex:0 0 auto;max-height:32vh;border-right:none;border-bottom:1px solid var(--border)}.fm-row{grid-template-columns:1.4rem 1fr auto}.fm-mtime{display:none}.fm-newfolder input,.fm-rename-form input{font-size:16px}}
