*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,sans-serif;font-size:15px;background:#f5f6f8;color:#1a1b1e;height:100dvh;overflow:hidden}.layout{display:grid;grid-template-columns:48px var(--sidebar-w, 260px) 1fr;grid-template-rows:45px 1fr;height:var(--app-h, 100dvh);position:fixed;top:0;left:0;right:0}.sidebar-global-header{grid-column:1/3;grid-row:1;display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 16px;background:#fff;border-right:1px solid #e0e2e8;border-bottom:1px solid #e0e2e8;cursor:pointer;transition:background .15s;z-index:10;container-type:inline-size}.sidebar-global-header:hover{background:#f0f1f4}@container (max-width: 340px){.sidebar-brand-text{display:none}}.sidebar{grid-row:2;background:#fff;border-right:1px solid #e0e2e8;display:flex;flex-direction:column;overflow:hidden}.sidebar-resizer{position:absolute;top:45px;bottom:0;left:calc(48px + var(--sidebar-w, 260px));width:6px;margin-left:-3px;cursor:col-resize;z-index:50}.sidebar-resizer:hover{background:#4f6ef740}.activity-bar{grid-row:2;background:#fff;border-right:1px solid #e0e2e8;display:flex;flex-direction:column;justify-content:space-between;width:48px;flex-shrink:0}.activity-bar-top,.activity-bar-bottom{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 0}.activity-btn{background:none;border:none;width:36px;height:36px;border-radius:8px;color:#6b7280;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s,color .12s}.activity-btn:hover{background:#f0f1f4;color:#1a1b1e}.activity-btn.active{color:#4f6ef7;background:#eef0fe}.activity-btn--signout:hover{color:#dc2626;background:#dc262612}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px;border-bottom:1px solid #e0e2e8}.sidebar-header--clickable{cursor:pointer;transition:background .15s}.sidebar-header--clickable:hover{background:#f0f1f4}.sidebar-brand{font-weight:700;font-size:16px;letter-spacing:-.3px}.sidebar-brand-icon{color:#4f6ef7;margin-right:7px}.btn-new{background:#4f6ef7;color:#fff;border:none;border-radius:6px;width:28px;height:28px;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.btn-new:hover{background:#3a59e8}.btn-new--secondary{background:none;border:1px solid #4f6ef7;color:#4f6ef7;font-size:14px;margin-left:8px}.btn-new--secondary:hover{background:#eef0fe}.search-box{display:flex;align-items:center;gap:6px;flex:1;min-width:0;margin:0 12px;padding:5px 10px;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:7px;cursor:text}.search-icon{color:#6b7280;font-size:12px;flex-shrink:0}.search-input{flex:1;min-width:0;border:none;background:none;outline:none;font-size:13px;color:#1a1b1e}.search-input::placeholder{color:#6b7280}.search-scope-toggle{flex-shrink:0;font-size:11px;color:#6b7280;background:none;border:1px solid #e0e2e8;border-radius:5px;padding:3px 7px;cursor:pointer;white-space:nowrap;transition:background .12s,color .12s,border-color .12s}.search-scope-toggle:hover{background:#fff}.search-scope-toggle.active{color:#4f6ef7;border-color:#4f6ef7;background:#eef0fe}.chat-list-header{padding:4px 8px;border-bottom:1px solid #e0e2e8;flex-shrink:0}.chat-list{flex:1;overflow-y:auto;padding:6px 0}.chat-item{display:flex;align-items:center;gap:6px;padding:9px 12px;cursor:pointer;border-radius:8px;margin:1px 6px;transition:background .12s}.chat-item:hover{background:#f0f1f4}.chat-item.active .chat-actions,.chat-item:hover .chat-actions{max-width:120px}.chat-item.sensitive .chat-title{font-style:italic}.chat-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.chat-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.chat-item-content .chat-title{flex:unset}.chat-summary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;opacity:.55}.chat-summary--editable{cursor:pointer}.chat-summary--editable:hover{text-decoration:underline;text-decoration-style:dotted}.chat-summary--placeholder{cursor:pointer;font-style:italic}.chat-summary--placeholder:hover{opacity:.8}.inline-edit-textarea{width:100%;min-height:50px;resize:vertical;background:#fff;border:1px solid #4f6ef7;border-radius:6px;padding:6px 8px;font-size:12px;font-family:system-ui,-apple-system,sans-serif;color:#1a1b1e;outline:none}.topic-chips{display:flex;flex-wrap:wrap;gap:4px}.topic-chip{display:inline-flex;align-items:center;font-size:11px;color:#6b7280;background:#f5f6f8;border:1px solid #e0e2e8;border-radius:4px;padding:1px 6px;white-space:nowrap}.chat-actions{display:flex;gap:2px;flex-shrink:0;max-width:0;overflow:hidden;transition:max-width .15s ease}.chat-actions button{background:none;border:none;cursor:pointer;font-size:13px;padding:2px 3px;border-radius:4px;opacity:.6;transition:opacity .1s}.chat-actions button:hover{opacity:1}.rename-input{flex:1;background:#fff;border:1px solid #4f6ef7;border-radius:4px;padding:2px 6px;color:#1a1b1e;font-size:14px;outline:none}.empty-hint{text-align:center;color:#6b7280;font-size:13px;padding:24px 12px}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-top:1px solid #e0e2e8;font-size:13px}.user-name{color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.btn-signout{background:none;border:1px solid #e0e2e8;border-radius:6px;color:#6b7280;font-size:12px;padding:4px 8px;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s}.btn-signout:hover{border-color:#dc2626;color:#dc2626}.panel-placeholder{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px 20px;color:#6b7280;text-align:center}.panel-placeholder-title{font-size:15px;font-weight:600;color:#1a1b1e}.panel-placeholder-hint{font-size:13px;line-height:1.5}.main{grid-row:1/3;grid-column:3;display:flex;flex-direction:column;overflow:hidden;background:#f5f6f8}.chat-empty{display:flex;align-items:center;justify-content:center;height:100%;color:#6b7280}.messages-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:40px 0;color:#6b7280;font-size:14px;align-self:center}.messages-loading--older{padding:12px 0}.messages-skeleton{display:flex;flex-direction:column;gap:14px;padding:16px 0}@keyframes skeleton-pulse{0%,to{opacity:.6}50%{opacity:1}}.skeleton-bubble{height:44px;border-radius:10px;background:#f0f1f4;animation:skeleton-pulse 1.4s ease-in-out infinite}.skeleton-bubble--user{align-self:flex-end;width:45%}.skeleton-bubble--assistant{align-self:flex-start;width:70%;height:64px}.chat-empty-state{display:flex;align-items:center;justify-content:center;height:100%}.welcome{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.welcome h2{font-size:20px;color:#1a1b1e}.welcome p{color:#6b7280;font-size:14px}.welcome-actions{display:flex;gap:10px;align-items:center;margin-top:4px}.chat-view{display:flex;flex-direction:column;height:100%}.chat-view--private,.chat-view--private .messages{background:#f3eefc}.chat-view--private .chat-header,.chat-view--private .input-area{background:#ece2fa}.chat-header{display:flex;align-items:center;gap:12px;padding:10px 20px;border-bottom:1px solid #e0e2e8;background:#fff;flex-shrink:0;position:sticky;top:0;z-index:5}.chat-header h2,.chat-header .chat-header-spacer{flex:1}.chat-header h2{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.chat-header .project-chip{max-width:180px;overflow:hidden;text-overflow:ellipsis;display:block;line-height:18px}.header-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.model-select{background:#f0f1f4;border:1px solid #e0e2e8;border-radius:6px;padding:5px 10px;color:#1a1b1e;font-family:system-ui,-apple-system,sans-serif;font-size:13px;cursor:pointer;outline:none;transition:border-color .15s}.model-select:focus{border-color:#4f6ef7}.model-select:disabled{opacity:.5;cursor:default}.btn-icon{background:none;border:1px solid transparent;border-radius:6px;color:#6b7280;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:background .12s,color .12s,border-color .12s}.btn-icon:hover{background:#f0f1f4;color:#1a1b1e;border-color:#e0e2e8}.btn-icon.active{color:#4f6ef7;border-color:#eef0fe;background:#eef0fe}.settings-panel.new-chat-settings{background:#f5f6f8;border-bottom:1px solid #e0e2e8}.settings-panel.new-chat-settings textarea{rows:2}.settings-panel{background:#fff;border-bottom:1px solid #e0e2e8;padding:16px 20px;display:flex;flex-direction:column;gap:10px;flex-shrink:0}.settings-panel label{font-size:13px;color:#6b7280;font-weight:500}.system-prompt-input{background:#f0f1f4;border:1px solid #e0e2e8;border-radius:8px;padding:10px 12px;color:#1a1b1e;font-family:system-ui,-apple-system,sans-serif;font-size:14px;resize:vertical;outline:none;line-height:1.5;transition:border-color .15s}.system-prompt-input:focus{border-color:#4f6ef7;background:#fff}.settings-actions{display:flex;justify-content:flex-end;gap:8px;align-items:center}.settings-actions .btn-icon{width:auto;padding:0 10px;gap:5px}.settings-actions .btn-icon span{font-size:13px}.btn-sm{padding:6px 14px;font-size:13px;display:flex;align-items:center;gap:6px}.messages-wrap{flex:1;position:relative;overflow:hidden;display:flex;flex-direction:column}.messages{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.scroll-fabs{position:absolute;bottom:12px;right:14px;display:flex;flex-direction:column;gap:6px;pointer-events:none}.scroll-fab{width:32px;height:32px;border-radius:50%;border:1px solid #e0e2e8;background:#fff;color:#6b7280;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;pointer-events:all;box-shadow:0 2px 8px #0000001a;transition:background .15s,color .15s,opacity .2s;opacity:.75}.scroll-fab:hover{background:#f0f1f4;color:#1a1b1e;opacity:1}.scroll-fab--down{opacity:0;pointer-events:none}.scroll-fab--down.visible{opacity:.75;pointer-events:all}.scroll-fab--down.visible:hover{opacity:1}.message{display:flex;flex-direction:column;position:relative;max-width:100%}.message.user{align-self:flex-end}.message.assistant{align-self:flex-start}.bubble-row{display:flex;align-items:center;gap:3px;margin-top:4px}.message.user .bubble-row{padding-right:2px}.message.assistant .bubble-row{padding-left:2px}.action-btn{background:none;border:1px solid #e0e2e8;border-radius:5px;color:#6b7280;cursor:pointer;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:11px;transition:color .12s,border-color .12s,background .12s}.action-btn:hover{color:#4f6ef7;border-color:#4f6ef7;background:#4f6ef70f}.action-btn.action-btn--danger:hover{color:#e05252;border-color:#e05252;background:#e052520f}.sibling-btn{background:none;border:1px solid #e0e2e8;border-radius:5px;color:#6b7280;cursor:pointer;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:11px;transition:color .12s,border-color .12s,background .12s}.sibling-btn:hover:not(:disabled){color:#4f6ef7;border-color:#4f6ef7;background:#4f6ef70f}.sibling-btn:disabled{opacity:.35;cursor:default}.sibling-label{font-size:11px;color:#6b7280;min-width:28px;text-align:center;font-variant-numeric:tabular-nums}.message-content{padding:11px 15px;border-radius:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word;font-size:15px;max-width:750px;box-shadow:0 1px 3px #00000012}.message-content:has(table){max-width:min(1100px,100%)}.message.user .message-content{background:#4f6ef7;color:#fff;border-bottom-right-radius:4px}.message.assistant .message-content{background:#fff;border:1px solid #e0e2e8;border-bottom-left-radius:4px}.cursor{display:inline-block;animation:blink .8s step-end infinite;margin-left:2px;color:#4f6ef7}@keyframes blink{50%{opacity:0}}.error-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 24px;background:#fef2f2;border-top:1px solid #fecaca;color:#dc2626;font-size:13px;flex-shrink:0}.error-banner button{background:none;border:none;cursor:pointer;color:#dc2626;font-size:14px;padding:0 4px;opacity:.7}.error-banner button:hover{opacity:1}.error-banner.warning{background:#fffbeb;border-top-color:#fde68a;color:#92640a}.error-banner.warning span{flex:1}.error-banner.warning button{color:#92640a}.research-panel{flex-shrink:0;display:flex;flex-direction:column;gap:10px;padding:11px 15px;border-radius:14px 14px 14px 4px;background:#fff;border:1px solid #e0e2e8;max-width:750px;box-shadow:0 1px 3px #00000012}.research-panel-header{display:flex;align-items:center;gap:8px;font-weight:600;color:#3a59e8}.research-panel-plan{display:flex;flex-direction:column;gap:12px}.research-panel-status{display:flex;align-items:center;gap:8px;color:#6b7280;font-size:14px}.research-panel-status.research-panel-status--error{color:#dc2626}.research-panel-section{border:1px solid #e0e2e8;border-radius:8px;padding:10px 12px;background:#f5f6f8}.research-panel-section h4{display:flex;align-items:center;gap:6px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin-bottom:8px}.research-panel-section ul,.research-panel-section ol{padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.45}.research-panel-section ul{list-style:disc}.research-panel-section ol{list-style:decimal}.research-panel-section li::marker{color:#6b7280}.research-panel-researcher{display:flex;flex-direction:column;gap:8px}.research-panel-researcher h4{align-items:flex-start;font-size:14px;text-transform:none;letter-spacing:0;color:#1a1b1e;margin-bottom:0}.research-panel-researcher h4 svg{margin-top:3px;flex-shrink:0;color:#6b7280}.research-panel-steps{display:flex;flex-direction:column;gap:6px}.research-panel-finding{font-size:14px;line-height:1.45;padding-left:20px;border-left:2px solid #eef0fe}.research-panel-count{font-size:11px;font-weight:600;padding:1px 6px;border-radius:999px;background:#fff;border:1px solid #e0e2e8;letter-spacing:0}.research-panel-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.research-panel-hint{font-size:13px;color:#6b7280}.research-panel-findings{list-style:none;display:flex;flex-direction:column;gap:4px;font-size:14px}.research-panel-findings svg{color:#4f6ef7;margin-right:4px}.input-area{flex-shrink:0;display:flex;flex-direction:column;border-top:1px solid #e0e2e8;background:#fff}.stats-bar{display:flex;gap:16px;padding:6px 24px 2px;font-size:11px;color:#6b7280;flex-wrap:wrap}.usage-stats{display:flex;gap:6px;align-items:center}.usage-stats .usage-label{font-weight:600;opacity:.7}.usage-stats .usage-tokens{font-family:monospace}.msg-timestamp-label{font-size:11px;color:#6b7280;opacity:.7;margin-bottom:4px}.msg-meta{font-size:11px;color:#6b7280;opacity:.7;margin-top:6px;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}.msg-meta .msg-meta-item{display:flex;align-items:center;gap:4px;white-space:nowrap}.composer-toolbar{display:flex;align-items:center;gap:8px;padding:8px 24px 0;overflow-x:auto;scrollbar-width:none}.composer-toolbar::-webkit-scrollbar{display:none}.composer-toolbar>*{flex-shrink:0}.composer-toolbar .btn-private-toggle{border-radius:999px;padding:4px 10px}.composer-toolbar .composer-research-picker,.composer-toolbar .composer-thinking-picker{max-width:88px}.composer-select{background:#f0f1f4;border:1px solid #e0e2e8;border-radius:999px;padding:4px 8px;max-width:160px;color:#6b7280;font-family:system-ui,-apple-system,sans-serif;font-size:12px;cursor:pointer;outline:none;transition:border-color .15s,color .15s}.composer-select:hover:not(:disabled){color:#1a1b1e}.composer-select:focus{border-color:#4f6ef7}.composer-select:disabled{opacity:.5;cursor:default}.project-picker-wrap{position:relative;display:inline-flex;align-items:center}.project-picker-wrap .project-picker-icon{position:absolute;left:0;right:0;margin:auto;font-size:12px;color:#6b7280;pointer-events:none}.project-picker-wrap.is-empty .project-picker{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:30px;min-width:30px;padding:4px;color:transparent}.project-picker-wrap.is-empty .project-picker option,.project-picker-wrap.is-empty:hover .project-picker-icon{color:#1a1b1e}.input-bar{display:flex;gap:10px;padding:10px 24px 16px;background:#fff;align-items:flex-end}.message-input{flex:1;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:10px;padding:10px 14px;color:#1a1b1e;font-family:system-ui,-apple-system,sans-serif;font-size:15px;resize:none;outline:none;line-height:1.5;transition:border-color .15s}.message-input:focus{border-color:#4f6ef7;background:#fff}.message-input::placeholder{color:#6b7280}.message-input:disabled{opacity:.5}.btn-send{background:#4f6ef7;color:#fff;border:none;border-radius:10px;width:44px;height:44px;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.btn-send:hover:not(:disabled){background:#3a59e8}.btn-send:disabled{opacity:.4;cursor:default}.btn-send.btn-stop{background:#c0392b}.btn-send.btn-stop:hover{background:#a93226}.message-queued{opacity:.6}.message-queued .message-queued-label{text-align:right;font-size:12px;color:#6b7280;margin-top:-4px}.splash{display:flex;align-items:center;justify-content:center;height:100dvh;background:#f5f6f8;color:#6b7280}.splash.error{flex-direction:column;gap:16px;color:#dc2626}.login-card{background:#fff;border:1px solid #e0e2e8;border-radius:20px;padding:52px 64px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px;min-width:340px;box-shadow:0 4px 24px #00000014}.login-card h1{font-size:28px;font-weight:700;letter-spacing:-.5px}.login-card p{color:#6b7280}.login-logo{width:72px;height:72px;background:linear-gradient(135deg,#4f6ef7,#844ff7);border-radius:20px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:32px;box-shadow:0 4px 16px #4f6ef759}.btn-primary{background:#4f6ef7;color:#fff;border:none;border-radius:8px;padding:10px 24px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s}.btn-primary:hover{background:#3a59e8}.btn-primary.btn-lg{padding:13px 36px;font-size:16px}.btn-secondary{background:#fff;color:#1a1b1e;border:1px solid #e0e2e8;border-radius:8px;padding:10px 22px;font-size:15px;cursor:pointer;transition:border-color .15s}.btn-secondary:hover{border-color:#6b7280}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000052;display:flex;align-items:center;justify-content:center;z-index:300;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog{background:#fff;border-radius:14px;width:460px;max-width:calc(100vw - 40px);max-height:min(640px,100vh - 64px);display:flex;flex-direction:column;box-shadow:0 16px 48px #00000038;overflow:hidden}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #e0e2e8;flex-shrink:0}.dialog-title{font-size:15px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-body{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.model-settings{display:flex;flex-direction:column;gap:10px;padding-top:10px;margin:4px 0 16px;border-top:1px solid #e0e2e8}.model-settings>.pref-label{margin-bottom:-2px}.privacy-summary{font-size:11px;line-height:1.4;color:#6b7280;margin:0}.model-setting-row{display:flex;flex-direction:column;gap:5px}.setting-label{display:flex;align-items:center;gap:7px;font-size:13px;color:#6b7280;font-weight:500}.setting-label svg{flex-shrink:0}.setting-label .setting-value{margin-left:auto;font-weight:400;font-family:system-ui,-apple-system,sans-serif;color:#1a1b1e;font-size:12px;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:4px;padding:1px 6px;cursor:default}.setting-label .setting-value:not(:disabled){cursor:pointer}.setting-label .setting-value:not(:disabled):hover{background:#eef0fe;border-color:#4f6ef7;color:#3a59e8}.setting-slider{width:100%;accent-color:#4f6ef7;cursor:pointer;height:4px}.effort-buttons{display:flex;gap:5px}.effort-btn{flex:1;padding:5px 0;font-size:12px;font-family:system-ui,-apple-system,sans-serif;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:6px;color:#6b7280;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.effort-btn:hover{background:#e4e6eb;color:#1a1b1e}.effort-btn.active{background:#eef0fe;border-color:#4f6ef7;color:#4f6ef7;font-weight:600}.model-setting-row--inline{flex-direction:row;align-items:center}.model-setting-row--inline .setting-label{flex:1}.toggle-btn{padding:4px 12px;font-size:12px;font-family:system-ui,-apple-system,sans-serif;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:6px;color:#6b7280;cursor:pointer;min-width:40px;text-align:center;transition:background .12s,color .12s,border-color .12s}.toggle-btn:hover{background:#e4e6eb;color:#1a1b1e}.toggle-btn.active{background:#eef0fe;border-color:#4f6ef7;color:#4f6ef7;font-weight:600}.waiting-indicator{display:flex;align-items:center;gap:8px;color:#6b7280;font-size:14px;padding:2px 0}.long-wait-notice{color:#6b7280;font-size:13px;padding:2px 0 0 22px}.thinking-block{margin-bottom:10px;border:1px solid #e0e2e8;border-radius:8px;overflow:hidden;font-size:13px}.thinking-header{display:flex;align-items:center;gap:7px;width:100%;background:#f0f1f4;border:none;padding:7px 10px;cursor:pointer;color:#6b7280;font-size:13px;text-align:left;transition:background .12s}.thinking-header:hover{background:#e7e9ee}.thinking-header .thinking-chevron{transition:transform .2s;transform:rotate(-90deg)}.thinking-header .thinking-chevron.rotated{transform:rotate(0)}.thinking-header .thinking-brain{color:#4f6ef7}.thinking-header .thinking-spinner{margin-left:auto}.thinking-body{padding:10px 12px;background:#fff;color:#6b7280;white-space:pre-wrap;word-break:break-word;line-height:1.55;max-height:300px;overflow-y:auto;font-family:monospace;font-size:12px}.search-results{display:flex;flex-direction:column;gap:6px;padding:8px 0 4px}.search-result-card{display:flex;gap:10px;padding:8px 10px;border:1px solid #e0e2e8;border-radius:8px;background:#fff;text-decoration:none;color:inherit;transition:background .12s,border-color .12s}.search-result-card:hover{background:#eef0fe;border-color:#4f6ef7}.search-result-card .src-index{flex-shrink:0;width:20px;height:20px;background:#4f6ef7;color:#fff;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;margin-top:1px}.search-result-card .src-body{display:flex;flex-direction:column;gap:2px;min-width:0}.search-result-card .src-title{font-size:13px;font-weight:600;color:#1a1b1e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-card .src-url{display:flex;align-items:center;gap:5px;font-size:11px;color:#4f6ef7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-card .src-url svg{flex-shrink:0;font-size:10px}.search-result-card .src-desc{font-size:12px;color:#6b7280;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.search-result-card.disabled{cursor:default;opacity:.6}.search-result-card.disabled:hover{background:#fff;border-color:#e0e2e8}.tool-pill{margin-bottom:8px;border:1px solid #e0e2e8;border-radius:8px;overflow:hidden;font-size:13px}.tool-pill.pending .tool-status{color:#6b7280}.tool-pill.error .tool-status{color:#dc2626}.tool-pill:not(.pending):not(.error) .tool-status{color:#16a34a}.tool-pill-header{display:flex;align-items:center;gap:7px;width:100%;background:#f0f1f4;border:none;padding:7px 10px;cursor:pointer;color:#1a1b1e;font-size:13px;text-align:left;transition:background .12s}.tool-pill-header:hover{background:#e7e9ee}.tool-pill-header .tool-icon{color:#4f6ef7;flex-shrink:0}.tool-pill-header .tool-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#6b7280}.tool-pill-header .tool-status{flex-shrink:0}.tool-pill-header .tool-chevron{flex-shrink:0;color:#6b7280;font-size:11px}.tool-pill-progress{padding:0 10px 7px 31px;background:#f0f1f4;color:#6b7280;font-size:12px;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-result-body{padding:10px 12px;background:#fff;border-top:1px solid #e0e2e8}.tool-result-body pre{white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.5;color:#6b7280;margin:0;max-height:300px;overflow-y:auto}.memory-update-card{display:flex;flex-direction:column;gap:6px}.memory-update-card .memory-update-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.memory-update-card .memory-update-op{font-size:12px;font-weight:600;color:#1a1b1e}.memory-update-card .memory-update-cat{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#4f6ef7;background:#eef0fe;border-radius:4px;padding:1px 6px}.memory-update-card .memory-update-text{font-size:13px;line-height:1.5;color:#1a1b1e;white-space:pre-wrap;word-break:break-word}.memory-update-card .memory-update-result{font-size:11px;color:#6b7280}.md{line-height:1.65}.md p{margin:0 0 .75em}.md p:last-child{margin-bottom:0}.md h1,.md h2,.md h3,.md h4{font-weight:600;margin:1em 0 .4em;line-height:1.3}.md h1{font-size:1.25em}.md h2{font-size:1.1em}.md h3{font-size:1em}.md ul,.md ol{padding-left:1.4em;margin:.4em 0 .75em}.md li{margin-bottom:.2em}.md .inline-code{font-family:SF Mono,Fira Code,monospace;font-size:.875em;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:4px;padding:1px 5px}.md pre{margin:.6em 0;overflow-x:auto}.md blockquote{border-left:3px solid #4f6ef7;margin:.5em 0;padding:4px 12px;color:#6b7280}.md .md-table-wrap{overflow-x:auto;margin:.6em 0}.md table{border-collapse:collapse;min-width:100%;font-size:.9em}.md table th,.md table td{border:1px solid #e0e2e8;padding:6px 10px;text-align:left}.md table th{background:#f0f1f4;font-weight:600}.md a{color:#4f6ef7;text-decoration:none}.md a:hover{text-decoration:underline}.md hr{border:none;border-top:1px solid #e0e2e8;margin:1em 0}.message.user .md .inline-code{background:#ffffff26;border-color:#fff3;color:#fff}.message.user .md a{color:#ffffffe6}.message.user .md blockquote{border-left-color:#ffffff80;color:#ffffffbf}.code-block{border-radius:8px;overflow:hidden;margin:.6em 0;border:1px solid #3a3a4a}.code-block .code-block-header{display:flex;align-items:center;justify-content:space-between;background:#282c34;padding:5px 12px;min-height:30px}.code-block .code-lang{font-size:11px;font-family:SF Mono,Fira Code,monospace;color:#abb2bf;text-transform:lowercase}.code-block .code-copy-btn{display:flex;align-items:center;gap:5px;font-size:11px;font-family:system-ui,-apple-system,sans-serif;background:transparent;border:1px solid #4a4a5a;border-radius:4px;color:#abb2bf;padding:2px 8px;cursor:pointer;transition:background .12s,color .12s;margin-left:auto}.code-block .code-copy-btn:hover{background:#ffffff14;color:#fff}.code-block>div{border-radius:0!important}.toaster{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;font-size:14px;box-shadow:0 4px 16px #00000026;pointer-events:all;max-width:340px}.toast--success{background:#ecfdf5;color:#065f46;border:1px solid #6ee7b7}.toast--error{background:#fef2f2;color:#991b1b;border:1px solid #fca5a5}.toast--info{background:#eff6ff;color:#1e40af;border:1px solid #93c5fd}.toast-text{flex:1}.toast-link{background:none;border:none;cursor:pointer;padding:0;margin-left:8px;font:inherit;font-weight:600;text-decoration:underline;color:inherit}.toast-memory-cards{flex:1;display:flex;flex-direction:column;gap:8px}.toast-dismiss{background:none;border:none;cursor:pointer;opacity:.5;font-size:13px;padding:0;line-height:1}.toast-dismiss:hover{opacity:1}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#e0e2e8;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#c3c7d2}.btn-hamburger,.btn-header-new-chat{display:none}@media (max-width: 720px){.layout{display:flex;flex-direction:column}.sidebar-global-header{position:fixed;top:0;left:0;height:45px;width:calc(48px + min(300px,85vw - 48px));z-index:201;transform:translate(-100%);transition:transform .25s ease;padding:0 10px;gap:8px}.main{flex:1;min-height:0;grid-column:unset;grid-row:unset}.sidebar-resizer{display:none}.activity-bar,.sidebar{position:fixed;top:45px;bottom:0;z-index:200;transition:transform .25s ease}.activity-bar{left:0;width:48px;box-shadow:none;transform:translate(-100%)}.sidebar{left:48px;width:min(300px,85vw - 48px);box-shadow:4px 0 24px #0000001f;transform:translate(calc(-100% - 48px))}.sidebar-open .sidebar-global-header,.sidebar-open .activity-bar,.sidebar-open .sidebar{transform:translate(0)}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:199;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.btn-hamburger,.btn-header-new-chat{display:flex;flex-shrink:0}.chat-header{padding:8px 10px;gap:8px}.chat-header h2{font-size:14px}.chat-header .project-chip{max-width:120px}.header-controls{gap:4px}.composer-toolbar{gap:6px;padding:8px 10px 0}.composer-toolbar>*{flex-shrink:1}.composer-select{max-width:108px;min-width:56px}.composer-research-picker,.composer-thinking-picker{max-width:76px}.project-picker{max-width:72px}.btn-private-toggle{padding:4px 8px}.btn-private-label{display:none}}@media (max-width: 720px) and (max-width: 360px){.composer-select{max-width:96px;min-width:52px}.composer-research-picker,.composer-thinking-picker{max-width:66px}.project-picker{max-width:64px}}@media (max-width: 720px){.bubble-row{padding:0 8px}.message.user{max-width:90%}.message.assistant{max-width:98%}.input-bar{padding:8px 10px 12px;gap:8px}.stats-bar{padding:4px 12px 2px}.message-input{font-size:16px;min-height:42px}.btn-send{width:40px;height:40px;font-size:16px}.scroll-fabs{right:8px;bottom:8px}.toaster{left:12px;right:12px;transform:none}.toast{max-width:100%}.settings-panel{padding:10px 12px}.dialog-backdrop{align-items:flex-end}.dialog{width:100%;max-width:100%;max-height:80vh;border-radius:16px 16px 0 0;box-shadow:0 -8px 32px #00000038}}.edit-banner{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;background:#eef0fe;border:1px solid rgba(79,110,247,.25);border-radius:6px;font-size:13px;color:#4f6ef7;margin-bottom:4px}.edit-banner .edit-banner-cancel{background:none;border:none;cursor:pointer;color:#6b7280;font-size:13px;padding:0 4px}.edit-banner .edit-banner-cancel:hover{color:#1a1b1e}.attachment-tray{display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px 0}.attachment-tray-item{display:flex;align-items:center;gap:6px;padding:4px 8px;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:8px;font-size:12px;color:#ccc;max-width:220px}.attachment-tray-item.uploading{opacity:.7}.attachment-tray-item.error{border-color:#c0392b;color:#e74c3c}.attachment-tray-item .tray-thumbnail{width:36px;height:36px;object-fit:cover;border-radius:4px}.attachment-tray-item .tray-file-icon{color:#888;font-size:20px}.attachment-tray-item .tray-filename{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-tray-item .tray-spinner{color:#888}.attachment-tray-item .tray-error{color:#e74c3c;font-weight:700;cursor:help}.attachment-tray-item .tray-mode-btn{display:flex;align-items:center;gap:4px;font-size:11px;padding:2px 6px;border-radius:4px;background:#333;border:none;color:#aaa;cursor:pointer}.attachment-tray-item .tray-mode-btn.rich{color:#5dade2}.attachment-tray-item .tray-mode-btn:hover{background:#444}.attachment-tray-item .tray-remove{background:none;border:none;color:#888;cursor:pointer;padding:0 2px;line-height:1}.attachment-tray-item .tray-remove:hover{color:#e74c3c}.btn-attach{background:none;border:none;color:#888;cursor:pointer;padding:8px;font-size:16px;border-radius:6px;transition:color .15s}.btn-attach:hover:not(:disabled){color:#ccc}.btn-attach:disabled{opacity:.4;cursor:not-allowed}.prefs-panel{display:flex;flex-direction:column;flex:1;overflow:hidden}.prefs-panel h3{font-size:14px;font-weight:600;margin-bottom:4px}.prefs-panel .prefs-desc{font-size:12px;color:#6b7280;margin-bottom:14px}.prefs-tabs{display:flex;border-bottom:2px solid #e0e2e8;flex-shrink:0;background:#fff;padding:0 4px}.prefs-tab{flex:1;padding:10px 6px;font-size:13px;font-family:system-ui,-apple-system,sans-serif;font-weight:500;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;color:#6b7280;cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap}.prefs-tab:hover{color:#1a1b1e}.prefs-tab.active{color:#4f6ef7;border-bottom-color:#4f6ef7;font-weight:600}.prefs-tab-content{flex:1;min-height:0;overflow-y:auto;padding:12px}.prefs-tab-content .prefs-desc{font-size:12px;color:#6b7280;margin-bottom:14px}.prefs-tab-content .pref-section{margin-bottom:16px}.prefs-tab-content .pref-label{font-size:12px;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.prefs-tab-content .save-indicator{font-size:11px;font-weight:400;text-transform:none;letter-spacing:normal;margin-left:8px}.prefs-tab-content .save-indicator--saving{color:#6b7280}.prefs-tab-content .save-indicator--saved{color:#4f6ef7}.prefs-tab-content .save-indicator--error{color:#dc2626}.prefs-tab-content .pref-textarea{width:100%;min-height:80px;resize:vertical;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:6px;padding:8px;font-size:13px;font-family:system-ui,-apple-system,sans-serif;color:#1a1b1e;outline:none}.prefs-tab-content .pref-textarea:focus{border-color:#4f6ef7}.prefs-tab-content .pref-select{width:100%;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:6px;padding:6px 8px;font-size:13px;color:#1a1b1e;outline:none;cursor:pointer}.prefs-tab-content .pref-select:focus{border-color:#4f6ef7}.prefs-tab-content .pref-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.prefs-tab-content .pref-row .pref-row-label{font-size:13px}.prefs-tab-content .pref-hint{font-size:11px;color:#6b7280;margin-top:-6px;line-height:1.4}.prefs-tab-content .published-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.prefs-tab-content .published-links-item{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:6px;padding:6px 8px}.prefs-tab-content .published-links-main{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}.prefs-tab-content .published-links-url{font-size:12px;color:#1a1b1e;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prefs-tab-content .published-links-url:hover{color:#4f6ef7;text-decoration:underline}.prefs-tab-content .published-links-actions{display:flex;gap:4px;flex-shrink:0}.prefs-tab-content .share-qr{width:100%;display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 0 2px;border-top:1px solid #e0e2e8;font-size:11px;color:#6b7280}.prefs-tab-content .share-qr img{display:block;width:192px;max-width:100%;height:auto;background:#fff;border-radius:4px}.prefs-tab-content .saved-indicator{font-size:11px;color:#4f6ef7;margin-top:8px;min-height:16px;text-align:right}.memory-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.memory-panel .panel-header{display:flex;align-items:center;gap:8px;padding:16px;font-weight:600;border-bottom:1px solid #e0e2e8;flex-shrink:0}.memory-panel .panel-loading,.memory-panel .panel-empty{padding:16px;color:#6b7280;font-size:.875rem}.memory-panel .memory-list{flex:1;overflow-y:auto;padding:8px 0}.memory-hint{margin:10px 12px;padding:8px 12px;background:#eef0fe;border-left:3px solid #4f6ef7;border-radius:0 6px 6px 0;font-size:12px;color:#0b35ef;line-height:1.5}.memory-list{padding:8px 0}.memory-category{margin-bottom:8px}.memory-category-label{padding:4px 16px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.memory-item{display:flex;align-items:flex-start;gap:8px;padding:6px 16px;transition:background .15s}.memory-item:hover{background:#f0f1f4}.memory-item .memory-text{flex:1;font-size:.875rem;line-height:1.4;cursor:pointer}.memory-item .memory-text:hover{text-decoration:underline;text-decoration-style:dotted}.memory-item .memory-edit-textarea{flex:1;font-size:.875rem;line-height:1.4;font-family:system-ui,-apple-system,sans-serif;color:#1a1b1e;background:#fff;border:1px solid #4f6ef7;border-radius:6px;padding:4px 6px;resize:none;overflow-y:auto;max-height:300px;outline:none}.memory-item .memory-delete{flex-shrink:0;background:none;border:none;cursor:pointer;color:#6b7280;padding:2px 4px;opacity:0;transition:opacity .15s,color .15s}.memory-item .memory-delete:hover{color:#dc2626}.memory-item:hover .memory-delete{opacity:1}.attachment-block{margin:6px 0}.attachment-block--image{display:inline-block}.attachment-block--image a{display:block}.attachment-block--image .attachment-thumbnail{max-width:360px;max-height:300px;border-radius:8px;border:1px solid #3a3a3a;display:block}.attachment-block--doc .attachment-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:8px;color:#ccc;font-size:13px;text-decoration:none}.attachment-block--doc .attachment-chip:hover{border-color:#555;color:#fff}.attachment-block--doc .attachment-icon{color:#5dade2}.attachment-block--doc .attachment-mode{font-size:11px;color:#888}.browser-screenshots{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 4px}.browser-screenshots a{display:block}.browser-screenshots .attachment-thumbnail{max-width:360px;max-height:300px;border-radius:8px;border:1px solid #3a3a3a;display:block}.projects-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.panel-header{display:flex;align-items:center;gap:8px;padding:12px 14px;font-weight:600;font-size:13px;color:#6b7280;border-bottom:1px solid #e0e2e8;flex-shrink:0}.panel-header span{flex:1}.panel-header .panel-header-btn{background:none;border:none;cursor:pointer;color:#6b7280;font-size:14px;padding:2px 4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .12s,background .12s}.panel-header .panel-header-btn:hover{color:#4f6ef7;background:#eef0fe}.project-list{flex:1;overflow-y:auto;padding:4px 0}.project-item{display:flex;align-items:center;gap:5px;padding:7px 10px 7px 6px;cursor:pointer;border-radius:8px;margin:1px 6px;transition:background .12s}.project-item:hover{background:#f0f1f4}.project-item:hover .project-actions,.project-item.active .project-actions{max-width:90px}.project-item--editing{padding:4px 10px}.project-item--editing .rename-input{width:100%}.project-chevron{background:none;border:none;cursor:pointer;color:#6b7280;font-size:10px;padding:0 2px;flex-shrink:0;opacity:.6}.project-chevron:hover{opacity:1}.project-folder-icon{color:#4f6ef7;font-size:13px;flex-shrink:0}.project-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.project-actions{display:flex;gap:2px;flex-shrink:0;max-width:0;overflow:hidden;transition:max-width .15s ease}.project-actions button{background:none;border:none;cursor:pointer;font-size:13px;padding:2px 3px;border-radius:4px;opacity:.6;transition:opacity .1s}.project-actions button:hover{opacity:1}.project-subtree{margin:0 6px 4px 16px;border-left:1px solid #e0e2e8;padding-left:8px}.project-subtree-empty{font-size:12px;color:#6b7280;padding:3px 6px}.project-chat-item{display:flex;align-items:center;gap:6px;padding:5px 6px;cursor:pointer;border-radius:6px;transition:background .12s;font-size:13px}.project-chat-item:hover{background:#f0f1f4}.project-chat-item.active{background:#4f6ef721;color:#4f6ef7;font-weight:500}.project-chat-item:hover .chat-actions,.project-chat-item.active .chat-actions{max-width:80px}.project-chat-icon{font-size:11px;opacity:.5;flex-shrink:0}.project-chat-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-sub-header{display:flex;align-items:center;gap:5px;padding:4px 6px;margin-top:2px;cursor:pointer;border-radius:4px;font-size:12px;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:background .1s}.project-sub-header:hover{background:#f0f1f4;color:#1a1b1e}.project-sub-chevron{font-size:9px;opacity:.6}.project-sub-icon{font-size:11px;opacity:.7}.project-sub-items{padding:2px 0 4px 4px}.project-sub-item{display:flex;align-items:center;gap:5px;padding:3px 4px;font-size:12px;border-radius:4px;overflow:hidden}.project-sub-item:hover{background:#f0f1f4}.project-sub-item--clickable{cursor:pointer}.project-sub-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-sub-item-label{font-size:11px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.new-project-bar{padding:8px 12px;border-bottom:1px solid #e0e2e8;flex-shrink:0}.new-project-bar input{width:100%;padding:4px 8px;border:1px solid #e0e2e8;border-radius:10px;font-size:13px;font-family:system-ui,-apple-system,sans-serif;outline:none}.new-project-bar input:focus{border-color:#4f6ef7}.private-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#7c3aed;background:#ece2fa;border-radius:4px;padding:1px 6px;white-space:nowrap;flex-shrink:0}.btn-private-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-family:system-ui,-apple-system,sans-serif;color:#6b7280;background:#f0f1f4;border:1px solid #e0e2e8;border-radius:6px;padding:5px 10px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.btn-private-toggle:hover{background:#ece2fa;color:#7c3aed}.btn-private-toggle.active{color:#7c3aed;background:#ece2fa;border-color:#7c3aed}.private-footer{display:flex;align-items:center;gap:8px;padding:6px 24px 0;font-size:11px;color:#6b7280}.project-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#4f6ef7;background:#eef0fe;border-radius:4px;padding:1px 6px;cursor:pointer;white-space:nowrap;flex-shrink:0}.project-chip:hover{background:#dbdffd}.move-menu{position:absolute;right:0;top:100%;z-index:100;background:#fff;border:1px solid #e0e2e8;border-radius:10px;box-shadow:0 4px 12px #0000001a;min-width:160px;padding:4px 0}.move-menu .move-menu-item{padding:7px 14px;cursor:pointer;font-size:13px;transition:background .1s}.move-menu .move-menu-item:hover{background:#f0f1f4}.move-menu .move-menu-item.remove{color:#dc2626}.move-menu .move-menu-item.active{font-weight:600;color:#4f6ef7}.move-menu .move-menu-item.move-menu-new{color:#4f6ef7;border-bottom:1px solid #e0e2e8;margin-bottom:4px}.move-menu .rename-input{display:block;width:calc(100% - 20px);margin:4px 10px 8px}.project-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.project-view .project-view-header{padding:16px 20px;border-bottom:1px solid #e0e2e8;display:flex;align-items:center;gap:12px;flex-shrink:0;background:#fff}.project-view .project-view-header h2{font-size:18px;font-weight:600;flex:1;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-view .project-view-header h2:hover{text-decoration:underline}.project-view .project-view-body{flex:1;overflow-y:auto}.project-view .project-section{border-bottom:1px solid #e0e2e8;padding-bottom:8px}.project-view .project-section-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#6b7280}.project-view .project-drop-zone{min-height:40px;transition:background .15s}.project-view .project-drop-zone.drag-over{background:#eef0fe;outline:2px dashed #4f6ef7;outline-offset:-4px;border-radius:4px}.project-view .project-file-item{cursor:default}.project-view .project-file-item--selected{background:#eef0fe;border-left:2px solid #4f6ef7}.project-view .project-file-item .project-file-main{display:flex;align-items:center;gap:8px;padding:6px 16px;transition:background .15s;cursor:pointer}.project-view .project-file-item .project-file-main:hover{background:#f0f1f4}.project-view .project-file-item .file-icon{flex-shrink:0;color:#6b7280;font-size:13px}.project-view .project-file-item .file-icon.file-icon--error{color:#dc2626}.project-view .project-file-item .file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.project-view .project-file-item .file-name{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-view .project-file-item .file-micro-label{font-size:11px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.project-view .project-file-item .file-micro-label:hover{text-decoration:underline;text-decoration-style:dotted}.project-view .project-file-item .file-status{font-size:11px;color:#6b7280;display:flex;align-items:center;gap:4px}.project-view .project-file-item .file-status.file-status--error{color:#dc2626}.project-view .project-file-item .file-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;opacity:0;transition:opacity .15s}.project-view .project-file-item:hover .file-actions{opacity:1}.project-view .project-file-item .inclusion-select{font-size:11px;padding:2px 4px;border:1px solid #e0e2e8;border-radius:4px;background:#fff;color:#1a1b1e;cursor:pointer}.project-view .project-file-item .file-delete{background:none;border:none;cursor:pointer;color:#6b7280;padding:2px 4px}.project-view .project-file-item .file-delete:hover{color:#dc2626}.project-view .project-file-item .file-summary{padding:4px 16px 8px 37px;font-size:12px;color:#6b7280;line-height:1.5;white-space:pre-wrap;cursor:pointer}.project-view .project-file-item .file-summary:hover{background:#f0f1f4}.panel-loading{display:flex;align-items:center;gap:8px;padding:24px 16px;color:#6b7280;font-size:14px}.panel-empty{padding:24px 16px;color:#6b7280;font-size:13px;text-align:center}.btn-action{background:#4f6ef7;color:#fff;border:none;border-radius:6px;padding:7px 14px;font-size:13px;font-family:system-ui,-apple-system,sans-serif;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;transition:background .15s;flex-shrink:0}.btn-action:hover{background:#3a59e8}.btn-action:disabled{opacity:.5;cursor:default}.btn-action--sm{padding:4px 10px;font-size:11px}.layout{grid-template-columns:var(--sidebar-w, 280px) minmax(0,1fr)}.sidebar-global-header{grid-column:1;padding:8px}.sidebar-global-header .sidebar-brand{border:0;background:none;color:inherit;cursor:pointer;display:flex;gap:7px;align-items:center;font:inherit;font-weight:650;flex:1}.sidebar{grid-column:1;display:flex;flex-direction:column;min-height:0;overflow:visible}.main{grid-column:2}.sidebar-scroll{overflow-y:auto;flex:1;min-height:0;padding-bottom:30px}.sidebar-footer,.settings-nav{display:flex;gap:8px;padding:10px;border-top:1px solid #e0e2e8}.sidebar-footer button:not(.btn-signout),.settings-nav button,.nav-back{border:0;background:#f0f1f4;border-radius:8px;padding:10px;color:#1a1b1e;cursor:pointer}.sidebar-footer button{flex:1}.nav-back{margin:8px}.sidebar-navigation{display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.sidebar-navigation .chats-panel,.sidebar-navigation .projects-panel{display:flex;flex-direction:column;min-height:100px;overflow:visible;height:auto}.sidebar-navigation .chats-panel{flex:0 1 var(--sidebar-split, 60%)}.sidebar-navigation .projects-panel{flex:2 1 0}.sidebar-navigation .chat-list,.sidebar-navigation .project-list{flex:1;min-height:0;overflow-y:auto}.sidebar-divider{position:relative;flex:0 0 17px;cursor:row-resize;touch-action:none}.sidebar-divider:after{content:"";position:absolute;top:8px;left:12px;right:12px;border-top:1px solid #e0e2e8;transition:border-color .12s,border-width .12s}.sidebar-divider:hover:after,.sidebar-divider:focus-visible:after{border-color:#4f6ef7;border-width:2px}.sidebar-divider:focus-visible{outline:2px solid #4f6ef7;outline-offset:-2px}.sidebar .navigation-row{padding:5px 12px 5px 9px;border-left:3px solid transparent}.sidebar .navigation-row.active{background:#4f6ef721;border-left-color:#4f6ef7;color:#4f6ef7;font-weight:600}.sidebar .navigation-row.active:hover{background:#4f6ef72e}.sidebar .navigation-row>a{padding:6px 0}.private-chat-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;flex-shrink:0;color:#6b7280;background:transparent;border:0;border-radius:6px;cursor:pointer}.private-chat-toggle:hover{background:#f0f1f4;color:#1a1b1e}.private-chat-toggle[aria-pressed=true]{color:#4f6ef7}@media (max-width: 720px){.private-chat-toggle{width:40px;height:40px}}a.project-title,.project-chat-row a{color:inherit;text-decoration:none;min-width:0}a.project-title{padding:9px 0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #4f6ef7;outline-offset:3px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:10px}.form-actions button{padding:9px 14px;border-radius:8px;border:1px solid #e0e2e8;background:#fff;cursor:pointer}.new-project-bar{display:block}.new-project-bar input{width:100%}.item-menu{position:relative;flex-shrink:0}.item-menu summary{list-style:none;cursor:pointer;border-radius:8px;padding:10px;min-width:40px;min-height:40px;text-align:center}.item-menu summary::-webkit-details-marker{display:none}.item-menu[open]>summary{background:#f0f1f4}.item-menu-content{position:absolute;right:0;top:100%;z-index:70;min-width:210px;max-width:min(300px,85vw);background:#fff;border:1px solid #e0e2e8;border-radius:10px;box-shadow:0 5px 22px #0002;padding:5px}.item-menu-content button,.item-menu-content a{display:block;text-align:left;width:100%;padding:12px;border:0;background:none;color:#1a1b1e;text-decoration:none;font:inherit;cursor:pointer;border-radius:5px}.item-menu-content button:hover,.item-menu-content a:hover{background:#f0f1f4}.project-view .project-view-header h2{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default}.project-view .project-view-body{width:100%;max-width:1100px;margin:0 auto;padding:24px}.project-description{color:#6b7280;margin-bottom:16px}.project-composer{border:1px solid #e0e2e8;background:#fff;padding:18px;border-radius:14px;display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.project-composer label{font-weight:600}.project-composer textarea{width:100%;min-height:80px;resize:vertical;border:0;background:transparent;font:inherit}.project-composer button{align-self:flex-end;padding:10px 18px}.project-tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:1px solid #e0e2e8}.project-tabs button{border:0;background:transparent;padding:13px 18px;cursor:pointer;color:#6b7280;font:inherit}.project-tabs button[aria-pressed=true]{color:#4f6ef7;box-shadow:inset 0 -2px #4f6ef7}.section-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.section-toolbar .search-field{flex:1;width:auto;min-width:120px}.search-field{width:100%;padding:12px;border:1px solid #e0e2e8;border-radius:9px;font:inherit;background:#fff;color:#1a1b1e}.project-chat-row{display:flex;align-items:center;padding:14px 8px;border-bottom:1px solid #e0e2e8}.project-chat-row .chat-item-content{flex:1;display:flex;flex-direction:column;gap:6px}.project-chat-row small{color:#6b7280}.project-section-header{display:flex;justify-content:space-between;align-items:center}.knowledge-instructions{white-space:pre-wrap;line-height:1.6}.knowledge-sections .project-section{margin-bottom:28px}.project-view .project-file-item{padding:10px}.project-view .project-file-item details{padding:10px}.project-view .project-file-item details summary{cursor:pointer;padding:7px 0}.project-view .project-file-item details p{margin:10px 0;white-space:pre-wrap}.project-view .project-file-item details label{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.project-view .project-file-item details select{padding:9px;max-width:100%}.project-view .project-file-item details small{display:block;margin-top:10px;color:#6b7280}.project-view .project-file-item .file-info{display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}.memory-item .memory-text{min-width:0}.memory-item .memory-text p{white-space:pre-wrap}.memory-item .memory-text small,.memory-item .memory-text a{display:block;color:#6b7280;margin-top:6px;font-size:12px}.search-results{margin:16px 0}.search-result{width:100%;text-align:left;display:flex;flex-direction:column;gap:5px;padding:13px;background:#fff;border:0;border-bottom:1px solid #e0e2e8;cursor:pointer;color:#1a1b1e;font:inherit}.search-result:hover{background:#f0f1f4}.search-result span{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;color:#6b7280}.search-result small{color:#6b7280}.header-project-select{max-width:180px;min-width:0;border:1px solid #e0e2e8;border-radius:8px;padding:8px;color:#1a1b1e;background:#fff}.composer-options{position:relative}.composer-options summary{cursor:pointer;padding:8px;font-size:13px}.composer-options label{position:absolute;bottom:100%;left:0;background:#fff;border:1px solid #e0e2e8;border-radius:8px;padding:12px;min-width:160px;z-index:10}.composer-toolbar{overflow:visible;flex-wrap:wrap}@media (max-width: 720px){.sidebar-global-header{width:min(330px,88vw)}.sidebar{left:0;width:min(330px,88vw);transform:translate(-100%)}.main{grid-column:unset}.project-view .project-view-header{gap:6px;padding:8px}.project-view .project-view-header h2{font-size:16px}.project-view .project-view-header .btn-action{font-size:13px;padding:9px}.project-view .project-view-body{padding:16px 12px}.project-composer{padding:14px}.dialog{max-height:calc(var(--app-h, 100dvh) - 16px)}.dialog-body input,.dialog-body textarea,.project-composer textarea,.search-field{font-size:16px}.header-project-select{max-width:105px}.chat-header .project-chip{display:none}.composer-toolbar{gap:4px;padding:8px 10px}.composer-select{max-width:145px}.composer-research-picker{max-width:125px}.composer-options summary{font-size:12px}.btn-icon,.btn-new,.item-menu summary{min-width:40px;min-height:40px}.section-toolbar>.search-field{flex-basis:100%}}.unified-chat-row{display:flex;align-items:center}.unified-chat-row .chat-item-content{flex:1;min-width:0;color:inherit;text-decoration:none;display:flex;flex-direction:column;padding:6px 0}.unified-chat-row small{color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;margin-top:4px}.advanced-tools{padding:12px 0}.advanced-tools>summary{cursor:pointer;min-height:36px}.sidebar-global-header{gap:6px;cursor:default}.sidebar-global-header:hover{background:#fff}.sidebar-global-header .btn-new{width:34px;height:34px;background:transparent;color:#6b7280;border:1px solid transparent;font-size:16px}.sidebar-global-header .btn-new:hover{background:#f0f1f4;color:#1a1b1e;border-color:#e0e2e8}.sidebar-resizer{left:var(--sidebar-w, 280px)}@media (max-width: 720px){.sidebar-global-header .btn-new{width:40px;height:40px}}.visual-card{margin:12px 0;min-width:0;overflow:hidden;border:1px solid var(--border, #d8dce4);border-radius:12px;background:var(--bg-secondary, #fff)}.visual-card-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px 0}.visual-card-actions{display:flex;flex-wrap:wrap;gap:6px}.visual-card-actions button{font:inherit;font-size:13px;cursor:pointer;padding:5px 9px;border-radius:6px;border:1px solid var(--border, #d8dce4);background:transparent;color:inherit}.visual-summary{margin:8px 14px 12px;font-size:14px}.visual-frame{display:block;width:100%;border:0;background:#fff}.visual-data{padding:10px 14px}.visual-data summary{cursor:pointer}.visual-data table{width:100%;border-collapse:collapse}.visual-data th,.visual-data td{padding:8px;text-align:left;border-bottom:1px solid var(--border, #d8dce4)}.visual-table-scroll{overflow-x:auto}.visual-expanded{width:min(1100px,85vw);max-width:100%}.dialog.visual-dialog{width:min(1200px,100vw - 24px);max-width:1200px}.share-export-actions{display:flex;flex-wrap:wrap;gap:8px}
