:root{--dy-canvas: #0b0b0c;--dy-surface-0: #101011;--dy-surface-1: #161618;--dy-surface-2: #1c1c1f;--dy-surface-3: #252528;--dy-surface-hover: #2a2a2e;--dy-elevated: #1e1e22;--dy-text: #e8e8ed;--dy-text-muted: #8b8b96;--dy-text-faint: #5c5c66;--dy-accent: #3ecfb2;--dy-accent-hover: #4dd9c0;--dy-accent-soft: rgba(62, 207, 178, .12);--dy-accent-glow: rgba(62, 207, 178, .35);--dy-blue: #5b9cf5;--dy-success: #3dd68c;--dy-warning: #f0b429;--dy-error: #f07178;--dy-border: rgba(255, 255, 255, .06);--dy-border-strong: rgba(255, 255, 255, .1);--dy-shadow: 0 8px 32px rgba(0, 0, 0, .45);--dy-left-w: 272px;--dy-title-h: 44px;--dy-status-h: 24px;--dy-radius: 10px;--dy-radius-sm: 6px;--dy-radius-lg: 14px;--dy-radius-pill: 999px;--dy-font-size: 13.5px;--dy-font: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--dy-mono: "IBM Plex Mono", ui-monospace, "Cascadia Code", monospace}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html,body,#app{height:100%;margin:0}body{background:var(--dy-canvas);color:var(--dy-text);font-family:var(--dy-font);font-size:var(--dy-font-size);line-height:1.55;overflow:hidden;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}a{color:inherit}.shell{display:flex;flex-direction:column;height:100%;background:var(--dy-canvas)}.shell__body{flex:1;display:flex;min-height:0}.title-bar{height:var(--dy-title-h);display:flex;align-items:center;gap:12px;padding:0 14px 0 12px;background:var(--dy-surface-0);border-bottom:1px solid var(--dy-border);flex-shrink:0;user-select:none}.title-bar__brand{display:flex;align-items:center;gap:9px;min-width:0}.title-bar__mark{width:26px;height:26px;flex-shrink:0}.title-bar__mark svg{width:100%;height:100%;display:block}.title-bar__name{font-size:13px;font-weight:650;letter-spacing:-.02em;color:var(--dy-text)}.title-bar__spacer{flex:1}.server-pill{display:inline-flex;align-items:center;gap:7px;padding:4px 12px 4px 9px;border-radius:var(--dy-radius-pill);background:var(--dy-surface-2);border:1px solid var(--dy-border);font-size:12px;color:var(--dy-text-muted);transition:border-color .2s,background .2s}.server-pill--online{border-color:#3ecfb240;background:var(--dy-accent-soft);color:var(--dy-text)}.server-pill__dot{width:7px;height:7px;border-radius:50%;background:var(--dy-text-faint);flex-shrink:0}.server-pill--online .server-pill__dot{background:var(--dy-accent);box-shadow:0 0 8px var(--dy-accent-glow)}.server-pill__icon{display:flex;opacity:.7}.title-bar__actions{display:flex;align-items:center;gap:4px}.title-bar__settings-btn{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 12px;border-radius:var(--dy-radius-sm);background:var(--dy-surface-2);border:1px solid var(--dy-border-strong);color:var(--dy-text);font-size:13px;font-weight:550;transition:background .15s,border-color .15s,color .15s}.title-bar__settings-btn:hover{background:var(--dy-surface-hover);border-color:#ffffff24;color:var(--dy-text)}.title-bar__settings-icon{display:flex;color:var(--dy-text-muted)}.title-bar__settings-btn:hover .title-bar__settings-icon{color:var(--dy-text)}.left-panel{width:var(--dy-left-w);flex-shrink:0;display:flex;flex-direction:column;background:var(--dy-surface-0);border-right:1px solid var(--dy-border);min-height:0}.left-panel__header{position:relative;flex-shrink:0;padding:10px 8px 6px}.left-panel__header-row{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:28px}.left-panel__header-title{padding:4px 6px;border-radius:var(--dy-radius-sm);font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--dy-text-faint);text-align:left;transition:background .12s,color .12s}.left-panel__header-title:hover,.left-panel__header-title--open{background:var(--dy-surface-hover);color:var(--dy-text-muted)}.left-panel__header-actions{display:flex;align-items:center;gap:2px}.left-panel__header-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--dy-radius-sm);color:var(--dy-text-faint);transition:background .12s,color .12s}.left-panel__header-icon:hover,.left-panel__header-icon--active{background:var(--dy-surface-hover);color:var(--dy-text-muted)}.left-panel__search-wrap{position:relative;margin:6px 4px 2px}.left-panel__search-icon{position:absolute;left:8px;top:50%;transform:translateY(-50%);color:var(--dy-text-faint);display:flex;pointer-events:none}.left-panel__search{width:100%;padding:7px 10px 7px 30px;border-radius:var(--dy-radius-sm);border:1px solid var(--dy-border);background:var(--dy-surface-1);color:var(--dy-text);font-size:12.5px;outline:none;transition:border-color .15s,background .15s}.left-panel__search::placeholder{color:var(--dy-text-faint)}.left-panel__search:focus{border-color:#ffffff24;background:var(--dy-surface-2)}.left-panel__sort-menu{position:absolute;top:calc(100% - 2px);left:8px;right:8px;z-index:20;padding:4px;border-radius:var(--dy-radius-sm);background:var(--dy-elevated);border:1px solid var(--dy-border-strong);box-shadow:var(--dy-shadow)}.left-panel__sort-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 8px;border-radius:4px;font-size:12.5px;color:var(--dy-text-muted);text-align:left;transition:background .12s,color .12s}.left-panel__sort-item:hover{background:var(--dy-surface-hover);color:var(--dy-text)}.left-panel__sort-check{display:flex;width:14px;flex-shrink:0;color:var(--dy-text-muted)}.left-panel__sort-check--empty{visibility:hidden}.left-panel__add-menu{position:absolute;top:calc(100% - 2px);right:8px;z-index:20;min-width:180px;padding:4px;border-radius:var(--dy-radius-sm);background:var(--dy-elevated);border:1px solid var(--dy-border-strong);box-shadow:var(--dy-shadow)}.left-panel__add-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:4px;font-size:13px;color:var(--dy-text);text-align:left;transition:background .12s}.left-panel__add-menu-item:hover{background:var(--dy-surface-hover)}.left-panel__add-menu-icon{display:flex;flex-shrink:0;color:var(--dy-text-muted)}.left-panel__tree{flex:1;min-height:0;overflow:hidden}.left-panel__list{list-style:none;margin:0;padding:0 6px 12px;height:100%;overflow-y:auto}.left-panel__list::-webkit-scrollbar{width:6px}.left-panel__list::-webkit-scrollbar-thumb{background:var(--dy-surface-3);border-radius:3px}.left-panel__empty{padding:12px 10px;font-size:12px;color:var(--dy-text-faint);line-height:1.5}.left-panel__group{margin-bottom:2px}.left-panel__workspace{display:flex;align-items:center;gap:2px;min-height:34px;border-radius:var(--dy-radius-sm);transition:background .12s}.left-panel__workspace:hover{background:var(--dy-surface-hover)}.left-panel__workspace--connected .left-panel__workspace-btn{color:var(--dy-text)}.left-panel__workspace--connected .left-panel__workspace-icon{opacity:.9;color:var(--dy-text)}.left-panel__workspace--active{background:var(--dy-surface-3)}.left-panel__workspace--active:hover{background:var(--dy-surface-hover)}.left-panel__workspace--active .left-panel__workspace-btn{color:#fff;font-weight:600}.left-panel__workspace--active .left-panel__workspace-icon{color:var(--dy-accent);opacity:1}.left-panel__workspace--open{background:transparent}.left-panel__workspace--open .left-panel__workspace-btn{font-weight:500}.left-panel__workspace-btn{flex:1;display:flex;align-items:center;gap:8px;min-width:0;padding:7px 8px 7px 10px;text-align:left;font-size:13px;color:var(--dy-text)}.left-panel__workspace-icon{flex-shrink:0;display:flex;opacity:.9}.left-panel__workspace-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.left-panel__workspace-new,.left-panel__workspace-del,.left-panel__workspace-edit{width:24px;height:24px;margin-right:2px;border-radius:4px;font-size:15px;line-height:1;color:var(--dy-text-faint);opacity:1;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;transition:background .12s,color .12s}.left-panel__workspace-edit{font-size:13px}.left-panel__workspace-new:hover,.left-panel__workspace-edit:hover{background:var(--dy-surface-hover);color:var(--dy-text)}.left-panel__workspace-del:hover{background:#f0717826;color:var(--dy-error)}.left-panel__sessions{list-style:none;margin:0;padding:2px 0 6px 18px;display:flex;flex-direction:column;gap:1px}.left-panel__session{display:flex;align-items:center;gap:8px;width:100%;min-height:30px;padding:5px 10px;border-radius:var(--dy-radius-sm);font-size:12.5px;color:var(--dy-text);text-align:left;transition:background .12s,color .12s}.left-panel__session:hover{background:var(--dy-surface-hover)}.left-panel__session--active{background:var(--dy-surface-3);color:#fff}.left-panel__session-dot{width:6px;height:6px;border-radius:50%;background:#5b9cf5;flex-shrink:0}.left-panel__session-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.left-panel__session-age{flex-shrink:0;font-size:11px;color:var(--dy-text-faint)}.left-panel__session--active .left-panel__session-age{color:var(--dy-text-muted)}.left-panel__footer{flex-shrink:0;padding:0;border-top:none}.left-panel__footer-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;border-radius:var(--dy-radius-sm);font-size:12.5px;color:var(--dy-text-muted);border:1px dashed var(--dy-border);transition:background .12s,color .12s,border-color .12s}.left-panel__footer-btn:hover{background:var(--dy-surface-hover);color:var(--dy-text);border-color:var(--dy-border-strong)}.main{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--dy-canvas);position:relative}.welcome-panel{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;max-width:480px;margin:0 auto}.welcome-panel__mark{width:64px;height:64px;margin-bottom:24px;filter:drop-shadow(0 4px 24px var(--dy-accent-glow))}.welcome-panel__mark svg{width:100%;height:100%}.welcome-panel h1{margin:0 0 10px;font-size:22px;font-weight:650;letter-spacing:-.03em}.welcome-panel p{margin:0 0 28px;font-size:14px;color:var(--dy-text-muted);line-height:1.6}.welcome-panel__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.chat-panel{flex:1;display:flex;flex-direction:column;min-height:0;position:relative}.chat-panel__messages{flex:1;overflow-y:auto;padding:24px 20px 120px}.message-virtualizer__list{display:flex;flex-direction:column;gap:20px}.message-virtualizer__spacer{flex-shrink:0}.chat-panel__messages::-webkit-scrollbar{width:8px}.chat-panel__messages::-webkit-scrollbar-thumb{background:var(--dy-surface-3);border-radius:4px}.chat-panel__error{margin:0 20px 12px;padding:10px 14px;border-radius:var(--dy-radius-sm);background:#f071781a;border:1px solid rgba(240,113,120,.25);color:var(--dy-error);font-size:13px}.chat-panel__sse-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 20px 12px;padding:10px 14px;border-radius:var(--dy-radius-sm);font-size:13px}.chat-panel__sse-banner--reconnecting{background:#e5c07b1f;border:1px solid rgba(229,192,123,.35);color:var(--dy-warn, #e5c07b)}.chat-panel__sse-banner--disconnected{background:#f071781a;border:1px solid rgba(240,113,120,.25);color:var(--dy-error)}.chat-panel__sse-banner-text{flex:1;min-width:0}.chat-panel__cursor-login-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 20px 12px;padding:10px 14px;border-radius:var(--dy-radius-sm);font-size:13px;background:#61afef1a;border:1px solid rgba(97,175,239,.25);color:var(--dy-text-muted)}.chat-panel__cursor-login-text{flex:1;min-width:0}.chat-panel__cursor-login-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.host-key-dialog{width:min(420px,calc(100vw - 32px))}.host-key-dialog__hint{margin:0 0 14px;font-size:13px;line-height:1.55;color:var(--dy-text-muted)}.host-key-dialog__input{width:100%;margin-bottom:14px;padding:8px 10px;border:1px solid var(--dy-border);border-radius:var(--dy-radius-sm);background:var(--dy-surface-1);color:var(--dy-text);font-family:var(--dy-mono);font-size:13px}.chat-panel__sse-reconnect{flex-shrink:0;padding:6px 12px;border-radius:999px;border:1px solid currentColor;background:transparent;color:inherit;font-size:12px;cursor:pointer}.chat-panel__sse-reconnect:hover:not(:disabled){opacity:.85}.chat-panel__sse-reconnect:disabled{opacity:.5;cursor:default}.chat-panel__composer-wrap{position:absolute;bottom:0;left:0;right:0;padding:12px 20px 20px;background:linear-gradient(to top,var(--dy-canvas) 70%,transparent);pointer-events:none}.chat-panel__composer{pointer-events:auto;max-width:760px;margin:0 auto;position:relative}.chat-panel__composer-bar{display:flex;align-items:flex-end;gap:8px;padding:10px 10px 10px 12px;background:var(--dy-surface-2);border:1px solid var(--dy-border-strong);border-radius:28px;box-shadow:var(--dy-shadow);transition:border-color .2s,box-shadow .2s;min-height:52px;position:relative}.chat-panel__composer-bar:focus-within{border-color:#ffffff29;box-shadow:var(--dy-shadow),0 0 0 1px #ffffff0a}.chat-panel__agent-chip{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;align-self:center;max-width:160px;height:28px;padding:0 10px 0 8px;border-radius:8px;background:linear-gradient(180deg,#e8a84a2e,#c478301f);border:1px solid rgba(232,168,74,.28);color:#f0c48a;font-size:12.5px;font-weight:560;letter-spacing:.01em;line-height:1;box-shadow:inset 0 1px #ffdca014;transition:background .12s,border-color .12s,color .12s}.chat-panel__agent-chip:hover:not(:disabled){background:linear-gradient(180deg,#e8a84a42,#c478302e);border-color:#e8a84a66;color:#f6d4a4}.chat-panel__agent-chip--single{cursor:default}.chat-panel__agent-chip--single:hover{background:linear-gradient(180deg,#e8a84a2e,#c478301f);border-color:#e8a84a47;color:#f0c48a}.chat-panel__agent-chip>svg:first-child{width:14px;height:14px;opacity:.92;flex-shrink:0}.chat-panel__agent-chip>svg:last-child{width:11px;height:11px;opacity:.55;flex-shrink:0;margin-left:-2px}.chat-panel__agent-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-panel__input{flex:1;resize:none;border:none;background:transparent;outline:none;font-size:14px;line-height:1.45;max-height:160px;min-height:24px;padding:8px 4px;color:var(--dy-text);align-self:center}.chat-panel__input::placeholder{color:var(--dy-text-faint)}.chat-panel__input:disabled{opacity:.55}.chat-panel__controls{display:flex;align-items:center;gap:6px;flex-shrink:0;align-self:center;position:relative}.chat-panel__model{display:inline-flex;align-items:center;gap:3px;flex-shrink:0;height:28px;padding:0 8px 0 10px;border-radius:8px;color:#c4c4ce;font-size:13px;font-weight:550;letter-spacing:.01em;transition:background .12s,color .12s}.chat-panel__model:hover:not(:disabled){background:#ffffff0f;color:#ececf2}.chat-panel__model:disabled,.chat-panel__model--single{cursor:default}.chat-panel__model-label{line-height:1}.chat-panel__model svg{width:12px;height:12px;opacity:.72;flex-shrink:0}.chat-panel__model--single svg{opacity:.45}.chat-panel__shortcut{flex-shrink:0;max-width:200px;margin-right:2px;padding:0 2px;font-size:11.5px;line-height:1.3;color:var(--dy-text-faint);white-space:nowrap;user-select:none;pointer-events:none}.chat-panel__action{width:32px;height:32px;flex-shrink:0;border-radius:999px;display:flex;align-items:center;justify-content:center;transition:background .15s,opacity .15s,transform .12s}.chat-panel__action--send{background:#e07040;color:#fff}.chat-panel__action--send:hover:not(:disabled){background:#eb8152}.chat-panel__action--stop{background:#f2f2f4;color:#111113}.chat-panel__action--stop:hover{background:#fff}.chat-panel__action--install{width:auto;min-width:68px;height:32px;padding:0 16px;background:#e07040;color:#fff;font-size:13px;font-weight:600}.chat-panel__action--install:hover:not(:disabled){background:#eb8152}.chat-panel__action:disabled{opacity:.35;cursor:not-allowed}.chat-panel__native-select{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.chat-panel__menu{position:absolute;z-index:40;min-width:140px;padding:6px;background:var(--dy-elevated);border:1px solid var(--dy-border-strong);border-radius:12px;box-shadow:var(--dy-shadow);display:flex;flex-direction:column;gap:2px}.chat-panel__menu--agent{bottom:calc(100% + 8px);left:12px}.chat-panel__menu--model{bottom:calc(100% + 8px);right:0}.chat-panel__menu-item{text-align:left;padding:8px 10px;border-radius:8px;font-size:13px;color:var(--dy-text);transition:background .1s}.chat-panel__menu-item:hover{background:var(--dy-surface-hover)}.chat-panel__menu-item.is-active{background:var(--dy-accent-soft);color:var(--dy-accent)}.chat-panel__busy{color:var(--dy-accent);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-msg{max-width:720px;width:100%;margin:0 auto}.chat-msg--enter{animation:msg-in .2s ease-out}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-msg--user{align-self:stretch;display:flex;flex-direction:column;align-items:flex-end;gap:6px;padding:4px 0 8px}.chat-msg--user.chat-msg--sticky{position:sticky;top:0;z-index:5;padding:8px 0 10px;background:var(--dy-canvas);box-shadow:0 10px 16px -12px #000000d9}.chat-msg__bubble{max-width:min(560px,92%);max-height:4.65em;overflow:hidden;padding:8px 12px;background:var(--dy-surface-2);border:1px solid var(--dy-border);border-radius:12px;font-size:13.5px;line-height:1.45;white-space:pre-wrap;word-break:break-word;box-shadow:0 1px #00000040;mask-image:linear-gradient(to bottom,#000 70%,transparent 100%)}.chat-msg__worked{align-self:flex-start;width:100%;margin:0;padding-left:2px;font-size:12px;line-height:1.4;color:var(--dy-text-faint);user-select:none}.chat-msg__worked[hidden]{display:none}.chat-msg--agent{font-size:14px;line-height:1.65;color:var(--dy-text)}.chat-msg--agent.chat-msg--streaming,.chat-msg__stream{white-space:pre-wrap;word-break:break-word}.chat-msg__caret{display:inline-block;width:.55ch;height:1.05em;margin-left:1px;vertical-align:text-bottom;background:var(--dy-accent, #61afef);animation:chat-caret-blink 1s steps(1) infinite}@keyframes chat-caret-blink{0%,45%{opacity:1}50%,to{opacity:0}}.chat-msg--agent p{margin:0 0 .75em}.chat-msg--agent p:last-child{margin-bottom:0}.chat-msg--agent pre{margin:.75em 0;padding:12px 14px;background:var(--dy-surface-1);border:1px solid var(--dy-border);border-radius:var(--dy-radius-sm);overflow-x:auto;font-family:var(--dy-mono);font-size:12.5px;line-height:1.5}.chat-msg--agent code{font-family:var(--dy-mono);font-size:.9em;padding:.15em .4em;background:var(--dy-surface-2);border-radius:4px}.chat-msg--thinking{padding:0;background:transparent;border:none}.chat-msg--thinking-live .chat-msg__thinking-summary{color:var(--dy-accent);animation:pulse 1.5s ease-in-out infinite}.chat-msg__thinking{padding:0;background:transparent;border:none;font-size:13px;color:var(--dy-text-muted)}.chat-msg__thinking-summary{cursor:pointer;list-style:none;color:var(--dy-text-faint);font-style:normal;user-select:none}.chat-msg__thinking-summary::-webkit-details-marker{display:none}.chat-msg__thinking-summary:after{content:" ›";opacity:.7}.chat-msg__thinking[open]>.chat-msg__thinking-summary:after{content:" ›";display:inline-block;transform:rotate(90deg)}.chat-msg__thinking-body{margin-top:8px;padding:10px 14px;background:var(--dy-surface-1);border-left:3px solid var(--dy-blue);border-radius:0 var(--dy-radius-sm) var(--dy-radius-sm) 0;white-space:pre-wrap;font-style:normal;line-height:1.5;color:var(--dy-text-muted)}.chat-msg--tool_call,.chat-msg--tool_result{padding:0;background:transparent;border:none}.tool-card{border:1px solid var(--dy-border-strong);border-radius:10px;background:var(--dy-surface-1);overflow:hidden}.tool-card--pending{opacity:.92}.tool-card__header{display:flex;align-items:center;gap:8px;padding:8px 12px;min-height:36px;background:#ffffff05;border-bottom:1px solid var(--dy-border)}.tool-card__icon--term{flex-shrink:0;font-family:var(--dy-mono);font-size:11px;font-weight:600;color:var(--dy-text-muted);letter-spacing:-.04em}.tool-card__badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:18px;padding:0 5px;border-radius:4px;font-family:var(--dy-mono);font-size:9px;font-weight:700;letter-spacing:.02em;color:#fff;background:#5c5c66}.tool-card__badge--ts{background:#3178c6}.tool-card__badge--js{background:#c4a000;color:#1a1a1a}.tool-card__badge--go{background:#00add8;color:#0b1d24}.tool-card__badge--css{background:#563d7c}.tool-card__badge--json{background:#8b8b96;color:#111}.tool-card__badge--md{background:#4a6d8c}.tool-card__badge--py{background:#3572a5}.tool-card__badge--html{background:#e34c26}.tool-card__badge--rs{background:#dea584;color:#1a1a1a}.tool-card__badge--file{background:#3a3a42}.tool-card__titles{flex:1;min-width:0}.tool-card__title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:var(--dy-text-muted)}.tool-card__stats{display:inline-flex;gap:6px;flex-shrink:0;font-family:var(--dy-mono);font-size:11px;font-weight:600}.tool-card__stat--add{color:#3dd68c}.tool-card__stat--del{color:#f07178}.tool-card__chips{flex-shrink:0;max-width:28%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--dy-mono);font-size:11px;color:var(--dy-text-faint)}.tool-card__pending{flex-shrink:0;color:var(--dy-accent);animation:pulse 1.2s ease-in-out infinite}.tool-card__diff{max-height:320px;overflow:auto;font-family:var(--dy-mono);font-size:12px;line-height:1.5;background:#0e0e10}.tool-card__line{display:grid;grid-template-columns:40px 14px minmax(0,1fr);gap:0;padding:0 10px 0 0;white-space:pre;min-height:1.5em}.tool-card__line--del{background:#f0717829}.tool-card__line--add{background:#3dd68c1f}.tool-card__line--ctx{background:transparent}.tool-card__gutter{text-align:right;padding:0 6px;color:var(--dy-text-faint);user-select:none;font-variant-numeric:tabular-nums}.tool-card__mark{text-align:center;user-select:none;font-weight:600;color:var(--dy-text-faint)}.tool-card__line--del .tool-card__mark{color:#f07178}.tool-card__line--add .tool-card__mark{color:#3dd68c}.tool-card__code{overflow:hidden;text-overflow:ellipsis;color:var(--dy-text)}.tool-card__line--del .tool-card__code{color:#f5b4b8}.tool-card__line--add .tool-card__code{color:#b6ecc8}.tool-card__line--ctx .tool-card__code{color:var(--dy-text-muted)}.tool-card__line--meta .tool-card__code{color:var(--dy-text-faint);font-style:italic}.tool-card__output{margin:0;padding:10px 12px;max-height:180px;overflow:auto;font-family:var(--dy-mono);font-size:12px;line-height:1.5;color:var(--dy-text-muted);background:#141416;white-space:pre-wrap;word-break:break-word}.tool-card__details{border-top:1px solid var(--dy-border)}.tool-card__summary{cursor:pointer;list-style:none;padding:8px 12px;font-size:12px;color:var(--dy-text-faint);user-select:none}.tool-card__summary::-webkit-details-marker{display:none}.tool-card__summary:before{content:"› ";display:inline-block;transition:transform .12s ease}.tool-card__details[open]>.tool-card__summary:before{transform:rotate(90deg)}.tool-card__details .tool-card__output{border-top:1px solid var(--dy-border)}.chat-msg--system,.chat-msg--error{text-align:center;font-size:12px;color:var(--dy-text-faint)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:var(--dy-radius-sm);font-size:13px;font-weight:550;transition:background .15s,border-color .15s,color .15s}.btn--primary{background:var(--dy-accent);color:#0a1210}.btn--primary:hover{background:var(--dy-accent-hover)}.btn--ghost{color:var(--dy-text-muted);border:1px solid var(--dy-border);background:transparent}.btn--ghost:hover{background:var(--dy-surface-hover);color:var(--dy-text);border-color:var(--dy-border-strong)}.btn--icon{width:32px;height:32px;padding:0;border-radius:var(--dy-radius-sm);color:var(--dy-text-muted)}.btn--icon:hover{background:var(--dy-surface-hover);color:var(--dy-text)}.dialog-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0000008c;backdrop-filter:blur(4px);animation:fade-in .15s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.dialog{width:100%;max-width:400px;padding:22px 22px 18px;background:var(--dy-elevated);border:1px solid var(--dy-border-strong);border-radius:var(--dy-radius-lg);box-shadow:var(--dy-shadow);animation:dialog-in .2s ease-out}@keyframes dialog-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.dialog h2{margin:0 0 18px;font-size:15px;font-weight:650;letter-spacing:-.02em}.dialog label{display:block;margin-bottom:14px;font-size:12px;font-weight:500;color:var(--dy-text-muted)}.dialog input{display:block;width:100%;margin-top:6px;padding:9px 11px;background:var(--dy-surface-1);border:1px solid var(--dy-border);border-radius:var(--dy-radius-sm);outline:none;transition:border-color .15s}.dialog input:focus{border-color:#3ecfb266}.dialog select{display:block;width:100%;margin-top:6px;padding:9px 11px;background:var(--dy-surface-1);border:1px solid var(--dy-border);border-radius:var(--dy-radius-sm);outline:none;color:var(--dy-text)}.dialog select:focus{border-color:#3ecfb266}.settings-form__font-row{display:flex;align-items:center;gap:12px;margin-top:6px}.settings-form__font-row input[type=range]{flex:1;margin:0;padding:0;background:transparent;border:none}.font-size-value{min-width:40px;font-size:12px;color:var(--dy-text-muted);font-variant-numeric:tabular-nums}.font-size-preview{margin-top:10px;padding:10px 12px;background:var(--dy-surface-1);border:1px solid var(--dy-border);border-radius:var(--dy-radius-sm);line-height:1.5}.workdir-edit-dialog__agents{margin:0 0 14px;padding:12px;border:1px solid var(--dy-border);border-radius:var(--dy-radius-sm)}.workdir-edit-dialog__agents legend{padding:0 6px;font-size:12px;font-weight:500;color:var(--dy-text-muted)}.dialog__error{margin:-4px 0 12px;font-size:13px;color:var(--dy-error)}.dialog__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--dy-border)}.workdir-dialog__hint,.workdir-dialog__empty{margin:0 0 12px;font-size:12.5px;color:var(--dy-text-muted);line-height:1.5}.workdir-dialog__server-list{display:flex;flex-direction:column;gap:4px;margin-bottom:4px}.workdir-dialog__server-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border-radius:var(--dy-radius-sm);text-align:left;transition:background .12s}.workdir-dialog__server-item:hover{background:var(--dy-surface-hover)}.workdir-dialog__server-icon{display:flex;color:var(--dy-text-muted);flex-shrink:0}.workdir-dialog__server-text{display:flex;flex-direction:column;gap:2px;min-width:0}.workdir-dialog__server-name{font-size:13px;color:var(--dy-text)}.workdir-dialog__server-url{font-size:11.5px;color:var(--dy-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workdir-dialog__server-selected{margin:-4px 0 14px;font-size:12px;color:var(--dy-text-muted)}.server-dialog__workdir-list{display:flex;flex-direction:column;gap:6px;max-height:240px;overflow:auto;margin:0 0 16px;padding:4px 0}.server-dialog__workdir-item{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:var(--dy-radius-sm);background:var(--dy-surface-2);border:1px solid var(--dy-border)}.server-dialog__workdir-label{font-size:13px;color:var(--dy-text)}.server-dialog__workdir-path{font-size:11.5px;color:var(--dy-text-faint);font-family:var(--dy-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cursor-install-dialog__hint,.cursor-install-dialog__login{margin:0 0 14px;font-size:13px;line-height:1.55;color:var(--dy-text-muted)}.cursor-install-dialog__exhausted{margin:0 0 14px;font-size:13px;line-height:1.55;color:var(--dy-error)}.cursor-install-dialog__cmd-block{margin:0 0 16px;border:1px solid var(--dy-border);border-radius:var(--dy-radius);background:var(--dy-surface-1);overflow:hidden}.cursor-install-dialog__cmd-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid var(--dy-border);color:var(--dy-text-faint);font-size:12px}.cursor-install-dialog__copy{padding:2px 8px;font-size:12px;min-height:0}.cursor-install-dialog__command{margin:0;padding:12px 14px;background:transparent;font-family:var(--dy-mono);font-size:12.5px;line-height:1.5;color:var(--dy-accent);overflow-x:auto;white-space:pre-wrap;word-break:break-all}.cursor-install-dialog__progress{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:10px 12px;border-radius:var(--dy-radius-sm);background:var(--dy-accent-soft);color:var(--dy-accent);font-size:13px}.cursor-install-dialog__spinner{width:14px;height:14px;border:2px solid rgba(62,207,178,.25);border-top-color:var(--dy-accent);border-radius:50%;animation:cursor-spin .8s linear infinite;flex-shrink:0}.cursor-install-dialog__btn-spinner{width:12px;height:12px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:cursor-spin .8s linear infinite;flex-shrink:0;opacity:.75}@keyframes cursor-spin{to{transform:rotate(360deg)}}.cursor-install-dialog{width:min(440px,calc(100vw - 32px))}
