*{box-sizing:border-box;margin:0;padding:0}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;--bg-primary: #1e1e1e;--bg-secondary: #2d2d2d;--text-primary: #e0e0e0;--border-color: #404040;--bubble-user: #0084ff;--bubble-user-text: #ffffff;--bubble-assistant: #2d2d2d;--bubble-assistant-text: #e0e0e0;--accent: #0084ff;color:var(--text-primary, #e0e0e0);background-color:var(--bg-primary, #1e1e1e);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh}#root{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#1e1e1e}::-webkit-scrollbar-thumb{background:#404040;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#505050}html,body{overflow-x:hidden;-webkit-text-size-adjust:100%}@media(max-width:768px){button,select,input,textarea{min-height:44px}input,textarea,select{font-size:16px}}.app{display:flex;flex-direction:row;height:100vh;background:var(--bg-primary, #1e1e1e);color:var(--text-primary, #e0e0e0);overflow:hidden}.sessions-sidebar{width:240px;min-height:100vh;background:var(--bg-secondary, #2d2d2d);border-right:1px solid var(--border-color, #404040);display:flex;flex-direction:column;flex-shrink:0;transition:width .2s ease;overflow:hidden}.sessions-sidebar.collapsed{width:42px}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.sidebar-header{display:flex;align-items:center;gap:6px;padding:10px 8px;border-bottom:1px solid var(--border-color, #404040);min-height:50px;flex-shrink:0}.sidebar-title{flex:1;font-size:.78rem;font-weight:700;opacity:.55;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}.new-chat-btn{background:var(--accent, #0084ff);border:none;border-radius:5px;color:#fff;font-size:1rem;cursor:pointer;width:26px;height:26px;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1;padding:0}.new-chat-btn:hover{opacity:.82}.sidebar-toggle{background:none;border:none;color:inherit;opacity:.4;cursor:pointer;font-size:.72rem;padding:2px 4px;flex-shrink:0}.sidebar-toggle:hover{opacity:.85}.sessions-sidebar.collapsed .new-chat-btn{display:none}.sessions-sidebar.collapsed .sidebar-header{justify-content:center;padding:10px 0}.session-list{flex:1;overflow-y:auto;padding:4px 0}.session-item{display:flex;align-items:center;padding:7px 10px;cursor:pointer;border-radius:5px;margin:1px 4px;min-height:42px;position:relative;gap:4px;transition:background .12s}.session-item:hover{background:#ffffff12}.session-item:hover .session-actions{display:flex}.session-item.active{background:#0084ff29;border-left:2px solid #0084ff;padding-left:8px}.session-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.session-name{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.session-time{font-size:.69rem;opacity:.4}.session-actions{display:none;gap:2px;flex-shrink:0}.session-btn{background:none;border:none;cursor:pointer;font-size:.72rem;padding:2px 4px;border-radius:3px;opacity:.55;color:inherit}.session-btn:hover{opacity:1;background:#ffffff1a}.session-btn.danger:hover{color:#ff6b6b;background:#c0392b26}.session-rename-input{width:100%;background:var(--bg-primary, #1e1e1e);border:1px solid var(--accent, #0084ff);border-radius:4px;color:inherit;font-size:.82rem;padding:3px 6px;outline:none}.header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:var(--bg-secondary, #2d2d2d);border-bottom:1px solid var(--border-color, #404040);flex-shrink:0}.header h1{margin:0;font-size:1.5rem;color:#0084ff}.draft-toggle{padding:.5rem 1rem;background:#404040;border:1px solid #606060;border-radius:4px;color:#e0e0e0;cursor:pointer;transition:all .2s}.draft-toggle:hover{background:#505050}.draft-toggle.active{background:#0084ff;border-color:#0084ff;color:#fff}.chat-container{flex:1;overflow-y:auto;padding:2rem;display:flex;flex-direction:column;gap:1rem}.load-more-indicator,.load-more-btn{text-align:center;padding:.5rem 1rem;font-size:.8rem;color:var(--text-muted, #888);align-self:center;margin-bottom:.5rem}.load-more-btn{background:var(--bg-secondary, #1a1a2e);border:1px solid var(--border, #2a2a2a);border-radius:6px;cursor:pointer;transition:background .15s,border-color .15s}.load-more-btn:hover{background:var(--bg-hover, #252540);border-color:var(--accent, #0084ff);color:var(--text, #eee)}.load-more-indicator{font-style:italic;opacity:.7}.message{max-width:70%;padding:1rem;border-radius:8px;line-height:1.5}.message.user{align-self:flex-end;background:var(--bubble-user, #0084ff);color:var(--bubble-user-text, #ffffff);border:1px solid var(--border-color, #404040)}.message.assistant{align-self:flex-start;background:var(--bubble-assistant, #2d2d2d);border:1px solid var(--border-color, #404040);color:var(--bubble-assistant-text, #e0e0e0)}.message.loading .message-content:after{content:"";animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.thinking{margin-bottom:.5rem;padding:.5rem .75rem;background:#1c1c2e;border:1px solid #3a3a5c;border-radius:6px;font-size:.8rem;color:#888;max-height:400px;overflow:hidden}.thinking[open]{max-height:none}.thinking summary{cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:.4rem;color:#7070a0;font-family:monospace}.thinking summary:before{content:"▶";font-size:.65rem;transition:transform .15s}.thinking[open] summary:before{transform:rotate(90deg)}.thinking-char-count{font-size:.7rem;color:#556;margin-left:auto}.thinking-live{color:#5a9e5a;font-weight:700;animation:pulse 1s infinite}.tool-status-badge{display:inline-flex;align-items:center;gap:.3rem;color:#e0a040;font-size:.9rem}.tool-status-badge code{background:#e0a04026;padding:.05rem .35rem;border-radius:4px;font-size:.82rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.thinking-content{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #2e2e4e;white-space:pre-wrap;font-family:monospace;font-size:.78rem;color:#8080a0;max-height:350px;overflow-y:auto}.message-content{white-space:pre-wrap}.input-container{display:flex;flex-direction:column;gap:.5rem;padding:1rem 2rem;background:var(--bg-secondary, #2d2d2d);border-top:1px solid var(--border-color, #404040)}.input-row{display:flex;gap:.75rem;align-items:flex-end}.input-row textarea{flex:1;padding:.75rem;background:#1e1e1e;border:1px solid #404040;border-radius:4px;color:#e0e0e0;font-family:inherit;font-size:1rem;resize:vertical;min-height:60px;max-height:200px}.input-row textarea:focus{outline:none;border-color:#0084ff}.input-row button{padding:.75rem 2rem;background:#0084ff;border:none;border-radius:4px;color:#fff;font-size:1rem;cursor:pointer;transition:background .2s}.input-row button:hover:not(:disabled){background:#0073e6}.input-row button:disabled{background:#404040;cursor:not-allowed;opacity:.5}.attach-btn{padding:.75rem!important;background:#404040!important;font-size:1.2rem!important;min-width:44px;display:flex;align-items:center;justify-content:center}.attach-btn:hover:not(:disabled){background:#505050!important}.emoji-picker-wrapper{position:relative;display:flex;align-items:center}.emoji-toggle-btn{padding:.75rem!important;background:#404040!important;font-size:1.2rem!important;min-width:44px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;cursor:pointer;color:#e6edf3;transition:background .15s}.emoji-toggle-btn:hover{background:#505050!important}.emoji-picker-popup{position:absolute;bottom:calc(100% + 8px);left:0;width:320px;max-height:340px;background:#1c1c1c;border:1px solid #333;border-radius:10px;box-shadow:0 8px 24px #00000080;z-index:1000;display:flex;flex-direction:column;overflow:hidden;animation:emoji-fade-in .15s ease-out}@keyframes emoji-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.emoji-category-tabs{display:flex;gap:2px;padding:6px 8px;border-bottom:1px solid #333;background:#161616;flex-shrink:0}.emoji-cat-btn{flex:1;padding:4px;font-size:1.1rem;background:transparent;border:none;border-radius:6px;cursor:pointer;opacity:.55;transition:all .12s}.emoji-cat-btn:hover{background:#2a2a2a;opacity:.85}.emoji-cat-btn.active{background:#333;opacity:1}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px;overflow-y:auto;flex:1}.emoji-grid::-webkit-scrollbar{width:6px}.emoji-grid::-webkit-scrollbar-thumb{background:#444;border-radius:3px}.emoji-cell{padding:4px;font-size:1.35rem;background:transparent;border:none;border-radius:6px;cursor:pointer;text-align:center;line-height:1;transition:background .1s,transform .1s}.emoji-cell:hover{background:#2d2d2d;transform:scale(1.2)}.pending-files{display:flex;flex-wrap:wrap;gap:.5rem;padding:.25rem 0}.file-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .6rem;background:#353535;border:1px solid #505050;border-radius:6px;font-size:.85rem;color:#ccc;max-width:200px}.file-chip.error{border-color:#f44;color:#f88}.file-chip-thumb{width:28px;height:28px;object-fit:cover;border-radius:4px}.file-chip-icon{font-size:1rem}.file-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.file-chip-remove{background:none!important;border:none!important;color:#888!important;cursor:pointer;font-size:1.1rem;padding:0 .2rem!important;line-height:1;min-width:auto!important}.file-chip-remove:hover{color:#f44!important}.message-attachments{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}.attachment-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;background:#ffffff14;border-radius:4px;font-size:.8rem;color:#aaa}.attachment-thumb{width:40px;height:40px;object-fit:cover;border-radius:4px}.attachment-icon{font-size:.9rem}.attachment-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-controls{display:flex;align-items:center;gap:12px}.tools-used-badges{display:inline-flex;flex-wrap:wrap;gap:4px;margin-left:8px}.tool-badge{display:inline-flex;align-items:center;gap:3px;font-size:.7rem;padding:1px 6px;border-radius:10px;background:#6366f126;color:#a5aaffd9;border:1px solid rgba(99,102,241,.25);font-family:var(--font-mono, monospace);white-space:nowrap}.tool-badge:hover{background:#6366f140;color:#c8c8ff}.fallback-badge{display:inline-block;margin-left:8px;padding:2px 6px;font-size:.7rem;background:#ffc10733;border:1px solid rgba(255,193,7,.4);border-radius:4px;color:#ffc107;vertical-align:middle}.generated-image-container{margin-top:12px;text-align:center}.generated-image{max-width:100%;max-height:512px;border-radius:8px;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:transform .2s ease}.generated-image:hover{transform:scale(1.02)}.generated-image-actions{margin-top:6px}.image-download-btn{display:inline-block;padding:4px 12px;font-size:.8rem;color:#ccc;text-decoration:none;border:1px solid #444;border-radius:6px;transition:background .15s,color .15s}.image-download-btn:hover{background:#444;color:#fff}.engine-toggle{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#363636;border-radius:20px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.engine-toggle:hover{background:#404040}.engine-label{font-size:.85rem;color:gray;transition:color .2s}.engine-label.active{color:#fff;font-weight:600}.toggle-switch{position:relative;width:44px;height:24px;background:#ff9800;border-radius:12px;transition:background .3s}.toggle-switch.nexus{background:#0084ff}.toggle-slider{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .3s;box-shadow:0 2px 4px #0000004d}.toggle-switch.nexus .toggle-slider{transform:translate(20px)}.engine-badge{display:inline-block;margin-left:8px;font-size:.9rem;vertical-align:middle;opacity:.7}.engine-badge.nexus{opacity:1}.engine-badge.bare{opacity:.8}.response-time{display:inline-block;margin-left:8px;padding:2px 6px;font-size:.75rem;background:#6464644d;border-radius:4px;color:#a0a0a0;vertical-align:middle;font-family:monospace}.response-time.live{background:#0084ff33;color:#0084ff;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.admin-btn{background:none;border:1px solid #444;border-radius:6px;color:#888;cursor:pointer;font-size:1rem;padding:.3rem .5rem;transition:border-color .15s,color .15s}.admin-btn:hover{border-color:#0084ff;color:#0084ff}.logout-btn{background:none;border:1px solid #444;border-radius:6px;color:#888;cursor:pointer;font-size:1rem;padding:.3rem .5rem;transition:border-color .15s,color .15s}.logout-btn:hover{border-color:#f87171;color:#f87171}.user-badge{font-size:.75rem;color:#666;background:#1a1a1a;border:1px solid #333;border-radius:4px;padding:.2rem .5rem;font-family:monospace}@media(max-width:768px){.header{padding:.6rem .75rem;gap:.5rem}.header h1{font-size:1.1rem;white-space:nowrap}.header-controls{gap:6px;flex-shrink:0}.user-badge{display:none}.engine-toggle{padding:4px 8px;gap:5px}.engine-label{font-size:.75rem}.toggle-switch{width:36px;height:20px}.toggle-slider{width:16px;height:16px}.toggle-switch.nexus .toggle-slider{transform:translate(16px)}.chat-container{padding:.75rem;gap:.6rem}.message{max-width:92%;padding:.65rem .8rem;font-size:.95rem}.thinking{font-size:.82rem}.input-container{padding:.5rem .6rem}.input-row{gap:.4rem}.input-row textarea{min-height:44px;font-size:16px;padding:.5rem}.input-row button{padding:.6rem 1rem;font-size:.9rem}.attach-btn{min-width:40px;padding:.6rem!important}.draft-toggle{padding:.35rem .6rem;font-size:.85rem}.admin-btn,.logout-btn{font-size:.9rem;padding:.25rem .4rem}.generated-image{max-height:300px}.fallback-badge,.response-time,.tool-badge{display:inline-block;font-size:.65rem;margin-left:4px;padding:1px 4px}.engine-badge{font-size:.8rem}.pending-files{gap:.35rem}.file-chip{font-size:.78rem;padding:.25rem .45rem;max-width:160px}.attachment-thumb{width:32px;height:32px}}@media(max-width:380px){.header h1{font-size:.95rem}.engine-label{font-size:0;width:0;overflow:hidden}.message{max-width:96%}}.content-wrapper{display:flex;flex-direction:row;flex:1;min-height:0;overflow:hidden}.chat-area{display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden}.split-handle{width:5px;background:var(--border, #2a2a2a);cursor:col-resize;flex-shrink:0;transition:background .15s;position:relative}.split-handle:hover,.split-handle:active{background:#0084ff}.split-handle:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:3px;height:32px;border-radius:2px;background:#ffffff26}.doc-panel-container{display:flex;flex-direction:column;min-width:0;flex-shrink:0;border-left:1px solid var(--border, #2a2a2a);background:var(--bg-secondary, #111);overflow:hidden}.task-panel-container{width:320px;flex-shrink:0;min-width:0;overflow:hidden}.content-wrapper.with-tasks .chat-area{flex:1}.cog-panel-container{width:380px;flex-shrink:0;min-width:0;overflow:hidden;border-left:1px solid var(--border, #2a2a2a);background:var(--bg-secondary, #111)}.content-wrapper.with-cog .chat-area{flex:1}@media(max-width:768px){.cog-panel-container,button.cog-panel-btn{display:none!important}}.doc-panel-btn{background:none;border:none;font-size:1.1rem;cursor:pointer;padding:4px 8px;border-radius:6px;opacity:.6;transition:opacity .15s,background .15s}.doc-panel-btn:hover{opacity:1;background:#ffffff14}.doc-panel-btn.active{opacity:1;background:#0084ff2e}.doc-workspace{display:flex;flex-direction:column;height:100%;overflow:hidden;font-family:inherit}.doc-topbar{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--border, #2a2a2a);background:var(--bg-secondary, #111);flex-shrink:0}.doc-list-btn{background:none;border:none;font-size:1rem;cursor:pointer;padding:4px 6px;border-radius:5px;opacity:.7;flex-shrink:0}.doc-list-btn:hover{opacity:1;background:#ffffff14}.doc-title{flex:1;font-size:.85rem;font-weight:600;color:var(--text, #e0e0e0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;padding:3px 6px;border-radius:4px;transition:background .15s}.doc-title:hover{background:#ffffff0f}.doc-title-input{flex:1;background:var(--bg, #1a1a1a);border:1px solid #0084ff;border-radius:4px;color:var(--text, #e0e0e0);font-size:.85rem;font-weight:600;padding:3px 8px;outline:none}.doc-topbar-actions{display:flex;gap:6px;flex-shrink:0}.doc-btn{background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:5px;color:var(--text, #e0e0e0);font-size:.75rem;padding:4px 8px;cursor:pointer;transition:background .15s;white-space:nowrap}.doc-btn:hover:not(:disabled){background:#ffffff21}.doc-btn:disabled{opacity:.4;cursor:not-allowed}.doc-btn.small{font-size:.7rem;padding:3px 6px}.server-save-btn{border-color:#0084ff4d}.server-save-btn:hover:not(:disabled){background:#0084ff26}.doc-privacy-overlay{position:absolute;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:50;border-radius:0}.doc-panel-container{position:relative}.doc-privacy-box{background:var(--bg, #1a1a1a);border:1px solid var(--border, #2a2a2a);border-radius:10px;padding:24px;max-width:340px;width:90%}.doc-privacy-box h3{margin:0 0 12px;font-size:1rem;color:var(--text, #e0e0e0)}.doc-privacy-box p{font-size:.82rem;color:#ffffffa6;margin:0 0 10px;line-height:1.5}.privacy-commitment{background:#0084ff1a;border:1px solid rgba(0,132,255,.25);border-radius:6px;padding:10px 12px!important;color:#fffc!important}.privacy-actions{display:flex;gap:8px;margin-top:16px}.doc-list-panel{background:var(--bg, #1a1a1a);border-bottom:1px solid var(--border, #2a2a2a);max-height:220px;overflow-y:auto;flex-shrink:0}.doc-list-header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;font-size:.75rem;color:#ffffff80;border-bottom:1px solid var(--border, #2a2a2a)}.doc-list-empty{padding:12px;font-size:.78rem;color:#fff6;text-align:center}.doc-list-item{display:flex;align-items:center;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.04);cursor:pointer;transition:background .12s}.doc-list-item:hover{background:#ffffff0d}.doc-list-item.active{background:#0084ff1f}.doc-list-item-info{flex:1;min-width:0}.doc-list-name{display:block;font-size:.82rem;color:var(--text, #e0e0e0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-list-meta{display:block;font-size:.7rem;color:#fff6;margin-top:2px}.doc-role-tag{font-size:.65rem;border-radius:3px;padding:0 3px;font-weight:600;letter-spacing:.02em}.doc-role-edit{color:#64c8ffe6}.doc-role-ref{color:#b4ffa0bf}.doc-list-delete{background:none;border:none;color:#ffffff4d;cursor:pointer;padding:2px 6px;font-size:.75rem;border-radius:4px;flex-shrink:0}.doc-list-delete:hover{color:#f44;background:#ff44441a}.doc-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#fff6;font-size:.88rem}.doc-editor{flex:1;background:var(--bg, #111);border:none;color:var(--text, #e0e0e0);font-size:.88rem;line-height:1.7;padding:16px 18px;resize:none;outline:none;font-family:Georgia,Times New Roman,serif;overflow-y:auto}.doc-editor::placeholder{color:#ffffff40}.doc-diff-container{flex:1;display:flex;flex-direction:column;overflow:hidden}.diff-header{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-secondary, #111);border-bottom:1px solid var(--border, #2a2a2a);flex-shrink:0}.diff-title{font-size:.82rem;font-weight:600;color:var(--text, #e0e0e0);flex:1}.diff-stats{display:flex;gap:8px;font-size:.78rem;font-weight:600}.diff-stat.added{color:#4caf50}.diff-stat.removed{color:#f44336}.diff-body{flex:1;overflow-y:auto;font-family:Georgia,Times New Roman,serif;font-size:.86rem;line-height:1.65}.diff-line{display:flex;align-items:baseline;padding:0 12px}.diff-line.diff-equal{background:transparent;color:var(--text, #e0e0e0)}.diff-line.diff-added{background:#4caf502e;color:#a5d6a7}.diff-line.diff-removed{background:#f443362e;color:#ef9a9a;text-decoration:line-through;opacity:.8}.diff-gutter{width:16px;flex-shrink:0;font-size:.75rem;font-family:monospace;opacity:.6;-webkit-user-select:none;user-select:none;margin-right:4px}.diff-content{flex:1;word-break:break-word}.doc-statusbar{display:flex;align-items:center;gap:16px;padding:5px 12px;background:var(--bg-secondary, #111);border-top:1px solid var(--border, #2a2a2a);font-size:.7rem;color:#fff6;flex-shrink:0}.doc-modified{margin-left:auto}.btn-accept{background:#4caf5033;border:1px solid rgba(76,175,80,.4);color:#a5d6a7;border-radius:5px;padding:4px 12px;font-size:.78rem;cursor:pointer;transition:background .15s}.btn-accept:hover{background:#4caf5059}.btn-reject{background:#f443361f;border:1px solid rgba(244,67,54,.3);color:#ef9a9a;border-radius:5px;padding:4px 12px;font-size:.78rem;cursor:pointer;transition:background .15s}.btn-reject:hover{background:#f4433640}.btn-primary{background:#0084ff;border:none;color:#fff;border-radius:6px;padding:8px 16px;font-size:.82rem;cursor:pointer;transition:background .15s}.btn-primary:hover{background:#006bd6}.btn-secondary{background:#ffffff12;border:1px solid rgba(255,255,255,.15);color:var(--text, #e0e0e0);border-radius:6px;padding:8px 16px;font-size:.82rem;cursor:pointer;transition:background .15s}.btn-secondary:hover{background:#ffffff1f}.doc-context-toggle{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#ffffff80;border-radius:5px;padding:3px 9px;font-size:.75rem;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.doc-context-toggle:hover{background:#ffffff1a;color:#fffc}.doc-context-toggle.active{background:#00c86426;border-color:#00c86466;color:#80e0aa}.doc-context-toggle.active:hover{background:#00c86440}.doc-context-check{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.18);border-radius:4px;background:transparent;color:#ffffff59;font-size:.72rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s;margin-right:4px}.doc-context-check:hover{border-color:#00c86480;color:#00c864b3;background:#00c86412}.doc-context-check.checked{background:#00c86426;border-color:#00c86480;color:#80e0aa}.doc-list-context-hint{padding:6px 12px;font-size:.7rem;color:#ffffff59;border-top:1px solid rgba(255,255,255,.06);font-style:italic}.doc-status-context{color:#80e0aa}.doc-injection-warning h3{color:#ffcc80}.injection-matches{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.injection-match-tag{background:#f4433626;border:1px solid rgba(244,67,54,.3);color:#ef9a9a;border-radius:4px;padding:2px 7px;font-size:.75rem;font-family:monospace}.injection-match-more{color:#fff6;font-size:.75rem;align-self:center}.btn-danger{background:#f4433633;border:1px solid rgba(244,67,54,.4);color:#ef9a9a;border-radius:6px;padding:8px 16px;font-size:.82rem;cursor:pointer;transition:background .15s}.btn-danger:hover{background:#f4433659}.doc-comment-banner{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:#0084ff1a;border-bottom:1px solid rgba(0,132,255,.25);font-size:.8rem;color:#ffffffd9;line-height:1.5;flex-shrink:0}.doc-comment-banner--error{background:#ff503c1f;border-bottom-color:#ff503c59}.doc-comment-icon{font-size:1rem;flex-shrink:0;margin-top:1px}.doc-comment-body{flex:1}.doc-comment-dismiss{flex-shrink:0;background:transparent;border:none;color:#fff6;cursor:pointer;font-size:.85rem;padding:0 2px;line-height:1;align-self:flex-start}.doc-comment-dismiss:hover{color:#fffc}.doc-comment-placeholder{background:#ffb3002e;border:1px solid rgba(255,179,0,.35);color:#ffd54f;border-radius:3px;padding:0 4px;font-family:monospace;font-size:.78rem;cursor:pointer}.diff-truncated{color:#ffffff59;font-style:italic}.export-menu-wrapper{display:inline-block}.export-dropdown{position:absolute;top:calc(100% + 4px);right:0;z-index:200;background:#1e1e2e;border:1px solid rgba(255,255,255,.12);border-radius:8px;box-shadow:0 8px 24px #00000080;padding:6px;min-width:210px;display:flex;flex-direction:column;gap:2px}.export-dropdown-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#ffffff59;padding:4px 8px 2px}.export-option{display:block;width:100%;text-align:left;background:transparent;border:none;border-radius:5px;color:#ffffffd9;font-size:.82rem;padding:7px 10px;cursor:pointer;transition:background .12s}.export-option:hover{background:#ffffff14;color:#fff}.doc-status-syncing{color:#ffffff73;animation:pulse-opacity 1s infinite}.doc-status-synced{color:#4caf50}.doc-status-offline{color:#ff7043;cursor:default}@keyframes pulse-opacity{0%,to{opacity:.45}50%{opacity:1}}.code-block{border-radius:8px;overflow:hidden;margin:10px 0;background:#13131f;border:1px solid rgba(255,255,255,.08)}.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:5px 10px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.07)}.code-lang{font-size:.7rem;font-family:Menlo,Cascadia Code,monospace;color:#ffffff73;text-transform:lowercase;letter-spacing:.05em}.code-block-actions{display:flex;gap:6px}.code-btn{font-size:.72rem;padding:2px 8px;border-radius:4px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:#ffffffb3;cursor:pointer;transition:background .15s,color .15s}.code-btn:hover{background:#ffffff1f;color:#fff}.run-btn{border-color:#50c87859;color:#7ee8a2}.run-btn:hover{background:#50c87826}.code-body{margin:0;padding:14px 16px;overflow-x:auto;font-family:Menlo,Cascadia Code,Fira Code,Courier New,monospace;font-size:.8rem;line-height:1.65;color:#e0e0e8;white-space:pre;tab-size:4}.inline-code{font-family:Menlo,Cascadia Code,monospace;font-size:.82em;background:#ffffff17;border-radius:3px;padding:1px 5px;color:#c9b1ff}.md-h1,.md-h2,.md-h3,.md-h4{margin:.75em 0 .3em;font-weight:600;line-height:1.3;color:#f0f0ff}.md-h1{font-size:1.3rem}.md-h2{font-size:1.1rem}.md-h3{font-size:.97rem}.md-h4{font-size:.9rem;color:#fffc}.md-li{margin:2px 0;padding-left:8px}.md-oli{list-style-type:decimal}.md-hr{border:none;border-top:1px solid rgba(255,255,255,.12);margin:10px 0}.md-table-wrapper{overflow-x:auto;margin:8px 0;border-radius:6px}.md-table{width:100%;border-collapse:collapse;font-size:.9em;line-height:1.5}.md-table th,.md-table td{padding:6px 12px;border:1px solid var(--border, rgba(255,255,255,.12));text-align:left}.md-table th{background:var(--bg-secondary, rgba(255,255,255,.06));font-weight:600;white-space:nowrap}.md-table tr:nth-child(2n){background:#ffffff05}.md-table tr:hover{background:#ffffff0d}.code-runner{flex-shrink:0;display:flex;flex-direction:column;height:220px;background:#0d0d17;border-top:1px solid rgba(255,255,255,.1)}.code-runner-header{display:flex;align-items:center;justify-content:space-between;padding:5px 12px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.07);flex-shrink:0}.code-runner-title{font-size:.78rem;font-family:Menlo,monospace;color:#fff9;display:flex;align-items:center;gap:6px}.runner-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.runner-dot.running{background:#f0b429;animation:pulse-dot .9s infinite}.runner-dot.ok{background:#5ab552}.runner-dot.err{background:#f85149}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.code-runner-actions{display:flex;gap:6px}.runner-btn{font-size:.71rem;padding:2px 7px;border-radius:4px;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:#ffffffa6;cursor:pointer;transition:background .12s}.runner-btn:hover{background:#ffffff1a;color:#fff}.runner-btn.runner-close{color:#ff3c3cb3}.runner-btn.runner-close:hover{background:#ff3c3c1f;color:#ff6b6b}.code-runner-output{flex:1;overflow-y:auto;overflow-x:auto;padding:8px 14px;font-family:Menlo,Cascadia Code,monospace;font-size:.78rem;line-height:1.6}.runner-line{white-space:pre}.runner-line.stdout{color:#e0e0e8}.runner-line.stderr{color:#ff8a8a}.runner-line.info{color:#fff6;font-style:italic}.runner-line.done{color:#ffffff4d;font-style:italic}@media(max-width:900px){.sessions-sidebar{width:42px}.sessions-sidebar .new-chat-btn,.sessions-sidebar .sidebar-title{display:none}.sessions-sidebar .sidebar-header{justify-content:center;padding:10px 0}.sessions-sidebar .session-name,.sessions-sidebar .session-meta{display:none}.sessions-sidebar .session-actions{display:none!important}.sessions-sidebar .session-item{justify-content:center;padding:8px 0}.message{max-width:88%}.chat-container{padding:1rem}.input-container{padding:.5rem 1rem}.header{padding:.6rem 1rem}.header h1{font-size:1.2rem}}@media(max-width:600px){.sessions-sidebar{width:42px!important;min-width:42px!important}.message{max-width:94%}.chat-container{padding:.5rem .6rem;gap:.6rem}.input-container{padding:.4rem .6rem}.input-row textarea{font-size:.94rem;min-height:46px;padding:.5rem .6rem}.input-row button{padding:.5rem .9rem;font-size:.92rem}.attach-btn,.emoji-toggle-btn{padding:.5rem!important;min-width:38px;font-size:1rem!important}.emoji-picker-popup{width:280px;max-height:300px}.emoji-grid{grid-template-columns:repeat(7,1fr)}.emoji-cell{font-size:1.15rem}.header{padding:.45rem .75rem;gap:6px}.header h1{font-size:.98rem}.thinking-content{max-height:200px}.file-chip{max-width:140px;font-size:.78rem}.app.doc-open{flex-direction:column}.doc-panel{width:100%!important;height:45vh;border-left:none;border-top:1px solid var(--border-color, #404040)}}.message.proactive{border-left:3px solid rgba(147,130,220,.5);background:#9382dc0a;padding-left:12px;margin-left:4px}.proactive-label{font-size:.7rem;color:#9382dcb3;margin-bottom:4px;font-weight:500;letter-spacing:.02em}.settings-widget{position:relative}.settings-toggle{background:transparent;border:none;font-size:24px;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s}.settings-toggle:hover{background:#ffffff1a}.settings-panel{position:absolute;top:100%;right:0;width:380px;max-height:80vh;overflow-y:auto;background:#1a1a1a;border:1px solid #333;border-radius:12px;box-shadow:0 8px 32px #0006;z-index:1000}@media(max-width:768px){.settings-panel{position:fixed;inset:0;width:100%;max-height:100vh;border-radius:0;border:none}}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #333}.settings-header h3{margin:0;color:#fff;font-size:18px}.close-btn{background:transparent;border:none;color:#888;font-size:24px;cursor:pointer;padding:0;line-height:1}.close-btn:hover{color:#fff}.settings-tabs{display:flex;gap:4px;padding:12px 16px 0;border-bottom:1px solid #333;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.settings-tabs::-webkit-scrollbar{display:none}.settings-menu{display:flex;flex-direction:column;padding:8px}.settings-menu-item{display:flex;align-items:center;gap:12px;padding:14px 12px;background:transparent;border:none;border-bottom:1px solid #2a2a2a;color:#fff;cursor:pointer;text-align:left;transition:background .15s;font-family:inherit}.settings-menu-item:last-child{border-bottom:none}.settings-menu-item:hover{background:#2a2a2a;border-radius:8px}.menu-icon{font-size:20px;flex-shrink:0;width:28px;text-align:center}.menu-text{flex:1;display:flex;flex-direction:column;gap:2px}.menu-label{font-weight:600;font-size:14px;color:#e0e0e0}.menu-desc{font-size:12px;color:#888}.menu-arrow{font-size:20px;color:#555;flex-shrink:0}.settings-sub-header{padding:6px 12px;border-bottom:1px solid #333}.back-btn{background:transparent;border:none;color:#4a9eff;cursor:pointer;font-size:14px;font-family:inherit;padding:6px 4px;transition:color .15s}.back-btn:hover{color:#6cb5ff}.settings-tabs button{flex:0 0 auto;padding:10px 8px;background:transparent;border:none;color:#888;cursor:pointer;font-size:12px;border-radius:6px 6px 0 0;transition:all .2s;white-space:nowrap}.settings-tabs button.active{color:#fff;background:#333}.settings-tabs button:hover{color:#fff}.settings-section{padding:16px}.settings-section h4{margin:0 0 12px;color:#fff;font-size:14px}.model-options{display:flex;flex-direction:column;gap:8px}.model-option{display:flex;align-items:center;gap:12px;padding:12px;background:#2a2a2a;border:1px solid #333;border-radius:8px;cursor:pointer;text-align:left;color:#fff;transition:all .2s}.model-option:hover{border-color:#4a9eff}.model-option.active{border-color:#4a9eff;background:#1a3a5a}.model-option:disabled{opacity:.5;cursor:not-allowed}.model-icon{font-size:20px}.model-info{flex:1;display:flex;flex-direction:column}.model-label{font-weight:600;color:#fff}.model-desc{font-size:12px;color:#888}.check{color:#4a9eff;font-size:18px}.fallback-notice{margin-top:12px;padding:10px;background:#3a2a1a;border:1px solid #5a4a2a;border-radius:6px;font-size:12px;color:#fa0}.copilot-section{margin-top:20px;padding-top:16px;border-top:1px solid #333}.copilot-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-weight:600;font-size:14px;color:#e0e0e0}.copilot-logo{font-size:18px;background:linear-gradient(135deg,#7c3aed,#2563eb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.copilot-badge{font-size:10px;font-weight:500;background:linear-gradient(135deg,#7c3aed22,#2563eb22);color:#a78bfa;border:1px solid #7c3aed44;border-radius:4px;padding:2px 6px;margin-left:auto}.copilot-model{border-color:#3b2d5b;background:#1e1633}.copilot-model:hover{border-color:#7c3aed}.copilot-model.active{border-color:#7c3aed;background:#2d1f4e}.copilot-cost{margin-left:8px;font-size:.65em;font-weight:500;background:#ffffff0d;color:#a78bfa;border-radius:3px;padding:1px 5px;vertical-align:middle}.copilot-quota-hint{margin-top:8px;font-size:11px;color:#666;text-align:center}.user-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.user-option{display:flex;align-items:center;gap:12px;padding:12px;background:#2a2a2a;border:1px solid #333;border-radius:8px;cursor:pointer;text-align:left;color:#fff;transition:all .2s}.user-option:hover{border-color:#4a9eff}.user-option.active{border-color:#4a9eff;background:#1a3a5a}.user-icon{font-size:20px}.user-info{flex:1;display:flex;flex-direction:column}.user-name{font-weight:600;color:#fff}.user-region{font-size:12px;color:#888}.user-hint{margin-top:12px;font-size:12px;color:#888}.user-hint strong{color:#4a9eff}.slider-hint{font-size:12px;color:#888;margin-bottom:16px;line-height:1.4}.gauge-row{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #2a2a2a}.gauge-row:last-child{border-bottom:none;margin-bottom:0}.gauge-row.compact{margin-bottom:12px;padding-bottom:10px}.gauge-row.compact .gauge-header{margin-bottom:4px}.gauge-row.compact .gauge-labels{margin-top:2px}.gauge-row.compact .gauge-desc{display:none}.gauge-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.gauge-icon{font-size:16px}.gauge-name{flex:1;font-weight:600;color:#fff;font-size:14px}.gauge-value{font-size:14px;color:#4a9eff;font-weight:600;min-width:40px;text-align:right}.gauge-slider{width:100%;height:6px;-webkit-appearance:none;appearance:none;background:#333;border-radius:3px;outline:none;cursor:pointer}.gauge-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:#4a9eff;border-radius:50%;cursor:pointer;transition:transform .1s}.gauge-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.gauge-slider::-moz-range-thumb{width:18px;height:18px;background:#4a9eff;border-radius:50%;cursor:pointer;border:none}.gauge-labels{display:flex;justify-content:space-between;font-size:10px;color:#666;margin-top:6px}.gauge-labels .low,.gauge-labels .high{color:#888}.gauge-desc{font-size:11px;color:#4a9eff;margin-top:6px;font-style:italic}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:12px;color:#888;font-weight:500}.form-group input,.form-group textarea{width:100%;padding:10px 12px;background:#2a2a2a;border:1px solid #333;border-radius:6px;color:#fff;font-size:14px;font-family:inherit;transition:border-color .2s;box-sizing:border-box}.form-group input::placeholder,.form-group textarea::placeholder{color:#666}.form-group input:focus,.form-group textarea:focus{border-color:#4a9eff;outline:none}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:flex;gap:12px}.form-group.half{flex:1}.interest-grid{display:flex;flex-wrap:wrap;gap:6px}.interest-chip{padding:6px 12px;background:#2a2a2a;border:1px solid #333;border-radius:16px;color:#888;font-size:11px;cursor:pointer;transition:all .2s}.interest-chip.selected{background:#1a3a5a;border-color:#4a9eff;color:#fff}.interest-chip:hover{border-color:#4a9eff;color:#fff}.create-btn{width:100%;padding:14px;background:#4a9eff;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;margin-top:20px;transition:background .2s}.create-btn:disabled{background:#333;color:#666;cursor:not-allowed}.create-btn:hover:not(:disabled){background:#5aafff}.settings-panel::-webkit-scrollbar{width:8px}.settings-panel::-webkit-scrollbar-track{background:#1a1a1a}.settings-panel::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.settings-panel::-webkit-scrollbar-thumb:hover{background:#444}.feat-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.feat-actions{display:flex;gap:6px}.feat-form{display:flex;flex-direction:column;gap:8px}.feat-form label{font-size:12px;color:#888;margin-bottom:-4px}.feat-form input,.feat-form textarea{width:100%;padding:8px 10px;background:#2a2a2a;border:1px solid #333;border-radius:6px;color:#fff;font-family:inherit;font-size:13px;box-sizing:border-box;resize:vertical}.feat-form input:focus,.feat-form textarea:focus{outline:none;border-color:#4a9eff}.feat-summary{display:flex;flex-direction:column;gap:8px}.feat-row{display:flex;gap:10px;font-size:13px}.feat-label{color:#888;min-width:90px;flex-shrink:0;font-size:12px;padding-top:1px}.feat-multiline{white-space:pre-wrap;word-break:break-word}.mode-card{padding:12px;background:#2a2a2a;border:1px solid #333;border-radius:8px;margin-bottom:8px}.mode-card.mode-active{border-color:#4a9eff;background:#1a2f4a}.mode-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.mode-name{font-weight:600;color:#fff;font-size:14px}.mode-desc{font-size:12px;color:#888;margin:4px 0 8px}.mode-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.badge-active{font-size:11px;color:#4a9eff;font-weight:600}.badge-public{font-size:11px;color:#7ec87e;font-weight:600}.active-mode-badge{font-size:11px;color:#4a9eff;margin-top:3px}.tab-dot{color:#4a9eff}.modes-subtabs{display:flex;gap:6px;margin:8px 0 12px;border-bottom:1px solid #333;padding-bottom:8px}.subtab-btn{background:transparent;border:none;color:#888;font-size:13px;cursor:pointer;padding:4px 10px;border-radius:6px;font-family:inherit}.subtab-btn:hover{color:#ccc;background:#2a2a2a}.subtab-btn.subtab-active{color:#4a9eff;background:#1a2f4a;font-weight:600}.library-grid{display:flex;flex-direction:column;gap:10px}.library-card{padding:12px;background:#1e1e1e;border:1px solid #333;border-radius:8px}.library-card-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.library-author{font-size:11px;color:#666}.library-meta{display:flex;flex-direction:column;gap:4px;margin:6px 0}.star-row{display:flex;align-items:center;gap:3px}.star-btn{background:transparent;border:none;cursor:pointer;font-size:16px;padding:0 1px;line-height:1}.star-btn.star-filled{color:#f5c518}.star-btn.star-empty{color:#444}.star-count{font-size:11px;color:#888;margin-left:4px}.usage-count{font-size:11px;color:#666}.empty-state{color:#666;font-size:13px;font-style:italic;padding:8px 0}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.btn-sm{padding:5px 12px;border-radius:6px;font-size:12px;cursor:pointer;border:none;font-family:inherit;transition:background .15s,color .15s}.btn-primary{background:#4a9eff;color:#fff}.btn-primary:hover{background:#5aafff}.btn-primary:disabled{background:#333;color:#666;cursor:not-allowed}.btn-ghost{background:transparent;color:#888;border:1px solid #444}.btn-ghost:hover{color:#fff;border-color:#888}.btn-danger{background:transparent;color:#ff5e5e;border:1px solid #ff5e5e}.btn-danger:hover{background:#ff5e5e;color:#fff}@media(max-width:768px){.settings-tabs{padding:8px 8px 0;gap:2px}.settings-tabs button{padding:8px 6px;font-size:11px}.settings-section{padding:12px}.model-option{padding:10px;gap:10px}.model-label{font-size:13px}.model-desc{font-size:11px}.form-row{flex-direction:column;gap:0}.form-group.half{flex:none;width:100%}.gauge-slider::-webkit-slider-thumb{width:24px;height:24px}.gauge-slider::-moz-range-thumb{width:24px;height:24px}.interest-chip{padding:8px 12px;font-size:12px}.mode-card{padding:10px}.mode-actions{flex-wrap:wrap}.btn-sm{padding:6px 14px;font-size:13px}.feat-row{flex-direction:column;gap:2px}.feat-label{min-width:auto}}
