:root{--bg-color: #ffffff;--text-color: #333333;--secondary-text: #616161;--border-color: #cccccc;--header-bg: #f5f5f5;--cell-focus-bg: #f0f8ff;--primary-color: #3b21fe;--primary-hover: #1976d2;--primary-text-color: #ffffff;--hover-color: #f0f0f0;--modal-bg: #ffffff;--modal-header-bg: #f5f5f5;--toast-bg: #333333;--toast-color: #ffffff;--spinner-bg: rgba(255, 255, 255, .7);--formula-bar-bg: #f8f8f8;--formula-bar-border: #dddddd;--formula-fx-bg: #e8e8e8;--file-content-bg: #f8f9fa;--switch-bg-color: #f5f5f5;--warning-color: #ffc107;--bg-secondary-color: #f0f0f0;--agent-indicator-bg: #ddd9ff;--input-bg: #ffffff;--code-bg: #f8f9fa;--code-color: #333333}.dark-mode{--bg-color: #1e1e1e;--text-color: #e0e0e0;--secondary-text: #9e9e9e;--border-color: #444444;--header-bg: #2d2d2d;--cell-focus-bg: #2c3e50;--primary-color: #3498db;--primary-hover: #2980b9;--primary-text-color: #ffffff;--hover-color: #333333;--modal-bg: #2d2d2d;--modal-header-bg: #3d3d3d;--toast-bg: #e0e0e0;--toast-color: #1e1e1e;--spinner-bg: rgba(30, 30, 30, .7);--input-bg: #383838;--input-text: #e0e0e0;--input-placeholder: #999999;--formula-bar-bg: #383838;--formula-bar-border: #555555;--formula-fx-bg: #444444;--file-content-bg: #2d3748;--switch-bg-color: #383838;--warning-color: #ffc107;--bg-secondary-color: #333333;--agent-indicator-bg: #4a4a5e;--code-bg: #2d3748;--code-color: #e0e0e0}.dark-mode input,.dark-mode select,.dark-mode textarea{background-color:var(--input-bg);color:var(--input-text);border-color:var(--border-color)}.dark-mode input::placeholder,.dark-mode textarea::placeholder{color:var(--input-placeholder)}.dark-mode .tab-button{color:var(--text-color)}.dark-mode .tab-button.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.dark-mode .primary-button{background-color:var(--primary-color);color:#fff}.dark-mode .primary-button:hover{background-color:var(--primary-hover)}.dark-mode .secondary-button{background-color:#555;color:var(--text-color);border:1px solid var(--border-color)}.dark-mode .secondary-button:hover{background-color:#666}.dark-mode .danger-button{background-color:#e74c3c;color:#fff}.dark-mode .danger-button:hover{background-color:#c0392b}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;background-color:var(--bg-color);color:var(--text-color);transition:background-color .3s,color .3s;display:flex}.spreadsheet-container{position:relative;overflow:visible;padding-bottom:20px;padding-right:20px;width:max-content}table{border-collapse:separate;border-spacing:0;position:relative;width:max-content;table-layout:fixed;min-width:100%}td,th{border:1px solid var(--border-color);padding:0;position:relative;min-width:60px;overflow:hidden}th{background-color:var(--header-bg);padding:8px;text-align:center;font-weight:700;color:var(--text-color);-webkit-user-select:none;user-select:none}td{height:35px;vertical-align:top;position:relative}.spreadsheet-container textarea{width:100%;height:100%;border:none;padding:4px 8px;margin:0;text-align:left;outline:none;box-sizing:border-box;resize:none;font-family:inherit;font-size:14px;background:transparent;position:absolute;top:0;left:0;white-space:pre-wrap;overflow-y:auto;color:var(--text-color)}.spreadsheet-container th:first-child,.spreadsheet-container td:first-child{width:50px;min-width:50px;max-width:50px}textarea{position:static;font-family:inherit;font-size:14px;color:var(--text-color)}td:not([style*="height:"]) textarea{white-space:nowrap;text-overflow:ellipsis}td[style*="height:"] textarea{white-space:pre-wrap;overflow-y:auto}textarea:focus{background-color:var(--cell-focus-bg)}.cell-spinner{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--spinner-bg);display:flex;justify-content:center;align-items:center;z-index:10}.agent-indicator{position:absolute;top:2px;right:2px;min-width:16px;height:16px;max-width:calc(100% - 8px);background-color:var(--agent-indicator-bg);color:var(--primary-color);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;z-index:15;pointer-events:auto;cursor:pointer;box-shadow:0 1px 3px #0003;transition:transform .2s ease,box-shadow .2s ease;padding:0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:1px solid var(--primary-color)}.agent-indicator:hover{transform:scale(1.1);box-shadow:0 2px 6px #0000004d}.agent-indicator:focus{outline:2px solid var(--primary-color);outline-offset:2px;transform:scale(1.1);box-shadow:0 2px 6px #0000004d}.agent-flyout{position:absolute;background:var(--modal-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;padding:16px;min-width:280px;max-width:400px;z-index:1000;opacity:0;transform:translateY(-5px);transition:opacity .2s ease,transform .2s ease}.agent-flyout.show{opacity:1;transform:translateY(0)}.agent-flyout:focus{outline:none;box-shadow:0 4px 12px #00000026,0 0 0 2px var(--primary-color)}.agent-flyout-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.agent-flyout-title{font-weight:700;color:var(--primary-color);font-size:16px;display:flex;align-items:center;gap:6px}.agent-flyout-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-color);padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.agent-flyout-close:hover{background:var(--hover-color)}.agent-flyout-close:focus{outline:2px solid var(--primary-color);outline-offset:1px;background:var(--hover-color)}.agent-flyout-content{margin-bottom:12px}.agent-flyout-field{margin-bottom:8px}.agent-flyout-label{font-weight:500;color:var(--text-color);margin-bottom:4px;font-size:13px}.agent-flyout-value{color:var(--secondary-text);font-size:13px;line-height:1.4;word-wrap:break-word;background:var(--input-bg);padding:6px 8px;border-radius:4px;border:1px solid var(--border-color)}.agent-flyout-formula{font-family:Consolas,Monaco,Courier New,monospace;font-size:12px;background:var(--code-bg);color:var(--code-color);padding:8px;border-radius:4px;border:1px solid var(--border-color);white-space:pre-wrap;word-break:break-all}.agent-flyout-actions{display:flex;gap:8px;justify-content:flex-end}.agent-flyout-edit-btn{background:var(--primary-color);color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:background-color .2s ease}.agent-flyout-edit-btn:hover{background:var(--primary-hover)}.agent-flyout-edit-btn:focus{outline:2px solid var(--primary-color);outline-offset:2px;background:var(--primary-hover)}.agent-flyout-refresh-btn{background:var(--bg-secondary-color);color:var(--text-color);border:1px solid var(--border-color);padding:8px 16px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:background-color .2s ease,border-color .2s ease}.agent-flyout-refresh-btn:hover{background:var(--hover-color);border-color:var(--primary-color)}.agent-flyout-refresh-btn:focus{outline:2px solid var(--primary-color);outline-offset:2px;background:var(--hover-color);border-color:var(--primary-color)}.agent-flyout-refresh-btn:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-secondary-color);border-color:var(--border-color)}.agent-flyout-refresh-btn:disabled:hover{background:var(--bg-secondary-color);border-color:var(--border-color)}.spinner-border{display:inline-block;width:24px;height:24px;border:3px solid rgba(0,123,255,.3);border-radius:50%;border-top-color:var(--primary-color);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.resize-handle{position:absolute;background:transparent;z-index:100}.column-resize-handle{cursor:col-resize;width:8px;height:100%;top:0;right:-4px}.row-resize-handle{cursor:row-resize;height:8px;width:100%;bottom:-4px;left:0}.resize-handle:hover,.resize-handle.resizing{background-color:var(--primary-color)}td,th{border:1px solid var(--border-color)}.resize-handle-container{position:absolute;top:0;right:0;width:8px;height:100%;z-index:100}td,th{position:relative}.controls-container{margin-bottom:20px}.header-container h1{margin:0;display:inline-flex;align-items:center}.header-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}@media (max-width: 1750px){.onboarding-open .header-container h1{font-size:1.5rem}.onboarding-open .header-container h1{margin-bottom:10px}.onboarding-open .header-container{flex-direction:column;align-items:flex-start}}@media (max-width: 1376px){.header-container{flex-direction:column;align-items:flex-start}.header-container h1{margin-bottom:10px}.header-buttons{margin-left:0}.onboarding-open .header-container h1{font-size:1.2rem}}@media (max-width: 680px){.header-container h1{font-size:1.5rem}}.header-container #settings-button{margin-left:10px;order:0}.header-container span{display:flex;align-items:center;gap:8px;padding:0 8px}.api-controls{margin-bottom:20px;padding:15px;background:#f5f5f5;border-radius:4px}.api-selector{margin-bottom:15px;display:flex;flex-wrap:nowrap;justify-content:flex-start;width:100%;gap:16px;padding:5px 0}.api-selector label{display:flex;align-items:center;cursor:pointer;color:var(--text-color);padding:5px;border-radius:4px;min-width:auto}.api-selector label:hover{background-color:#0000000d}.dark-mode .api-selector label:hover{background-color:#ffffff0d}.api-selector input[type=radio]{margin-right:10px;width:16px;height:16px;flex-shrink:0}.api-input-container{display:flex;gap:15px;align-items:flex-start}.model-select-container{flex:1;display:flex;align-items:center}.api-key-input{display:flex;flex-direction:column;gap:10px;margin-bottom:15px;width:100%;box-sizing:border-box}.api-key-input input{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background-color:var(--bg-color);color:var(--text-color);box-sizing:border-box}.api-key-input button{padding:8px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer;align-self:flex-end}.provider-buttons{display:flex;gap:10px;margin-top:15px;justify-content:flex-end}.provider-buttons button{margin-top:0}.provider-buttons .primary-button{background-color:var(--primary-color);color:var(--primary-text-color);justify-content:center}.provider-buttons .secondary-button{background-color:var(--bg-color);color:var(--text-color)}.provider-buttons .secondary-button:hover{background-color:var(--warning-color);color:var(--text-color)}.model-select,.model-input{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background-color:var(--bg-color);color:var(--text-color);height:36px}.model-input:focus{outline:none;border-color:var(--primary-color)}#endpoint-container{width:100%;margin-top:15px;margin-bottom:15px;display:none;box-sizing:border-box}#endpoint-container.visible{display:block}#endpoint-container input{width:100%;margin-bottom:5px;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background-color:var(--bg-color);color:var(--text-color);box-sizing:border-box}#endpoint-container .endpoint-info,.endpoint-container .endpoint-info{font-size:12px;color:#888;margin-top:5px;margin-bottom:0;line-height:1.4;word-wrap:break-word;box-sizing:border-box;max-width:100%;overflow-wrap:break-word}.dark-mode #endpoint-container .endpoint-info{color:#aaa}.control-button{padding:8px 16px;background:transparent;color:var(--text-color);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:5px;height:fit-content;transition:all .2s ease}.control-button:hover{background:#0000000d;border-color:var(--primary-color);color:var(--primary-color)}.control-button.active{background:var(--bg-secondary-color);border-color:var(--primary-color);color:var(--text-color)}.dark-mode .control-button:hover{background:#ffffff1a}.dark-mode .control-button.active{background:var(--bg-secondary-color);border-color:var(--primary-color);color:var(--text-color)}.tiny-font textarea{font-size:10px}.small-font textarea{font-size:12px}.large-font textarea{font-size:16px}.font-size-select{width:100px;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background-color:var(--bg-color);color:var(--text-color);cursor:pointer}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:2000;justify-content:center;align-items:center;overflow:hidden}.modal-content{background-color:var(--modal-bg);border-radius:8px;box-shadow:0 4px 20px #0000004d;width:800px;max-width:90%;max-height:90vh;overflow-y:auto;position:relative;margin:auto;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--border-color);background-color:var(--modal-header-bg);border-radius:8px 8px 0 0;position:relative}.modal-header h2,.modal-header h3{margin:0;font-size:18px;color:var(--text-color)}.modal-footer{padding:1rem}.close-button{background:none;border:none;font-size:22px;cursor:pointer;color:var(--text-color);position:absolute;right:15px;top:12px;z-index:10;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.close-button:hover{color:var(--primary-color)}.modal-body{width:100%;padding:1rem}#settings-modal .modal-body{padding:0}.settings-section{margin-bottom:20px;width:100%;box-sizing:border-box}.settings-section h3{margin-top:0;margin-bottom:10px;font-size:16px;color:var(--text-color)}.model-select-container{width:100%;margin-bottom:15px}.model-select{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background-color:var(--bg-color);color:var(--text-color)}.display-settings{display:flex;flex-direction:column;gap:15px}.settings-row{display:flex;align-items:center;justify-content:space-between}.settings-row-full-width{display:grid;grid-template-columns:100px 1fr;gap:10px;align-items:center}.temperature-control,.max-tokens-control{display:flex;align-items:center;width:100%;gap:10px}.temperature-control input[type=range],.max-tokens-control input[type=range]{flex:1;min-width:0}.temperature-control span,.max-tokens-control span{min-width:50px;text-align:right}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.toggle-slider{background-color:var(--primary-color)}input:checked+.toggle-slider:before{transform:translate(26px)}.toast{position:fixed;bottom:20px;right:20px;background-color:var(--toast-bg);color:var(--toast-color);padding:12px 20px;border-radius:4px;box-shadow:0 4px 8px #0003;z-index:1100;opacity:0;transform:translateY(20px);transition:opacity .3s,transform .3s}.toast.show{opacity:1;transform:translateY(0)}.main-layout{display:flex;width:100%;transition:all .3s ease}.spreadsheet-wrapper{flex:1;overflow:auto;transition:width .3s ease,margin-right .3s ease;width:calc(100vw - 40px);max-width:none;height:calc(100vh - 150px);border:1px solid var(--border-color)}.main-layout.inspector-open .spreadsheet-wrapper{width:calc(100vw - 350px);margin-right:10px}.inspector-panel{width:0;background-color:var(--modal-bg);border-left:0px solid var(--border-color);overflow:hidden;transition:all .3s ease;opacity:0}.main-layout.inspector-open .inspector-panel{width:300px;border-left-width:1px;opacity:1;box-shadow:-2px 0 10px #0000001a}.inspector-header{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background-color:var(--modal-header-bg);border-bottom:1px solid var(--border-color);position:relative}.inspector-header h2{margin:0;font-size:16px;color:var(--text-color)}.inspector-content{padding:15px;overflow-y:auto;max-height:calc(100vh - 140px)}.inspector-section{margin-bottom:20px}.inspector-section h3{margin-top:0;margin-bottom:10px;font-size:14px;color:var(--text-color);padding-bottom:5px;border-bottom:1px solid var(--border-color)}.info-row{display:flex;margin-bottom:15px;font-size:13px;align-items:flex-start;gap:4px}.info-label{flex:1;font-weight:700;color:var(--text-color)}.info-value{flex:2;color:var(--text-color);word-break:break-word}.header-buttons{display:flex;gap:10px;align-items:center}.agents-modal-content{width:900px;max-width:95%;max-height:85vh;overflow-y:auto}.agents-layout{display:flex;gap:20px;height:100%}.agents-sidebar{width:250px;flex-shrink:0;display:flex;flex-direction:column}.agents-sidebar h3{margin-top:0;margin-bottom:10px}.agents-list{flex:1;max-height:300px;min-height:200px;overflow-y:auto;border:1px solid var(--border-color);border-radius:4px;margin-bottom:10px}.agent-item,.file-item{padding:10px;margin-bottom:5px;border-radius:4px;cursor:pointer;transition:background-color .2s;background-color:var(--item-bg)}.agent-item:hover,.file-item:hover{background-color:var(--item-hover-bg)}.agent-item-header,.file-item-header{display:flex;justify-content:space-between;margin-bottom:3px}.agent-name,.file-name{font-weight:600;color:var(--primary-color)}.agent-model{font-size:.8em;color:var(--secondary-text);font-family:monospace}.agent-description,.file-description{font-size:.9em;color:var(--secondary-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-message{padding:10px;text-align:center;color:var(--secondary-text);font-style:italic}.tab-container{display:flex;margin-bottom:15px;border-bottom:1px solid var(--border-color)}#settings-modal .tab-container{display:flex;flex-direction:row;border-bottom:none;margin-bottom:0;height:100%;min-height:400px}#settings-modal .tab-header{display:flex;flex-direction:column;width:120px;min-width:120px;border-right:1px solid var(--border-color);border-bottom:none;margin-bottom:0;padding-right:0}#settings-modal .tab-button{flex:none;padding:12px 16px;background:none;border:none;cursor:pointer;transition:border-color .2s,color .2s,background-color .2s;color:var(--text-color);font-size:14px;font-weight:500;position:relative;text-align:left;border-radius:0;border-left:3px solid transparent;margin-bottom:0}#settings-modal .tab-button.active{border-left:3px solid var(--primary-color);color:var(--primary-color);background-color:var(--hover-color);border-bottom:none}#settings-modal .tab-button:hover:not(.active){background-color:var(--hover-color)}#settings-modal .tab-content{flex:1;overflow-y:auto}#settings-modal .tab-pane{display:none}#settings-modal .tab-pane.active{display:block}.tab-header{display:flex;width:100%;border-bottom:1px solid var(--border-color);margin-bottom:20px}.tab-button{flex:1;padding:12px 16px;background:none;border:none;cursor:pointer;transition:border-color .2s,color .2s;color:var(--text-color);font-size:14px;font-weight:500;position:relative}.tab-button.active{border-bottom:2px solid var(--primary-color);color:var(--primary-color)}.tab-button:hover:not(.active){background-color:var(--hover-color)}.tab-content{width:100%;padding:1rem}.tab-pane{display:none}.tab-pane.active{display:block}.item-list{max-height:300px;overflow-y:auto;border:1px solid var(--border-color);border-radius:4px;margin-bottom:10px}.dark-mode .agent-model{background-color:#ffffff1a;color:#ccc}.dark-mode .agent-description{color:#aaa}.dark-mode .agent-form{background-color:#ffffff0d}.dark-mode .agents-help code{background-color:#ffffff1a}@media (max-width: 768px){.agents-layout{flex-direction:column}.agents-sidebar{width:100%;margin-bottom:20px}.agents-list{max-height:150px}}.agent-form textarea{width:100%;height:180px;min-height:150px;font-family:monospace;white-space:pre;resize:vertical;padding:12px;border:1px solid var(--border-color);border-radius:6px;background-color:var(--bg-color);color:var(--text-color);display:block;position:static;line-height:1.5;font-size:14px;box-shadow:inset 0 1px 3px #0000000d;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.agent-form textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:inset 0 1px 3px #0000000d,0 0 0 3px #4299e133}.modal-column{background-color:var(--modal-bg);padding:15px;border-radius:4px;border:1px solid var(--border-color)}.left-column,.right-column{overflow-y:auto;max-height:70vh}.inspector-header .close-button{position:relative;right:auto;top:auto;margin-left:10px}#agents-modal .modal-content{height:700px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}#agents-modal .modal-body{flex:1;overflow:hidden;padding:0}#agents-modal .modal-body>div{height:100%;overflow:hidden}#agent-form,#file-form{overflow-y:auto;max-height:100%;padding-bottom:25px!important}.agent-form textarea{margin-bottom:15px}#agent-form input,#agent-form select,#agent-form textarea,#file-form input,#file-form select,#file-form textarea{width:100%;box-sizing:border-box}.form-group{margin-bottom:20px;position:relative}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color)}#agent-prompt,#file-contents{min-height:120px;resize:vertical;font-family:monospace;padding:12px;line-height:1.6;font-size:14px;border:1px solid var(--border-color);border-radius:6px;background-color:var(--bg-color);color:var(--text-color);box-shadow:inset 0 1px 3px #0000000d;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}#agent-prompt:focus,#file-contents:focus{outline:none;border-color:var(--primary-color);box-shadow:inset 0 1px 3px #0000000d,0 0 0 3px #4299e133}.toast-error{background-color:#f44336}.toast-success{background-color:#4caf50}.toast-warning{background-color:#ff9800}.toast-info{background-color:var(--toast-bg)}.main-container{display:flex;flex-direction:column;height:100vh;padding:24px;min-width:480px}.primary-button{background-color:var(--primary-color);color:#fff;border:none;border-radius:4px;padding:8px 16px;cursor:pointer;font-size:14px;white-space:nowrap;display:flex;align-items:center;gap:4px}.primary-button:hover{background-color:var(--primary-hover)}.secondary-button{background-color:#f5f5f5;color:#333;border:1px solid #ddd;border-radius:4px;padding:8px 16px;cursor:pointer;font-size:14px}.secondary-button:hover{background-color:#e8e8e8}.danger-button{background-color:#e74c3c;color:#fff;border:none;border-radius:4px;padding:8px 16px;cursor:pointer;font-size:14px}.danger-button:hover{background-color:#c0392b}.value-row,.formula-row{margin-bottom:5px}.info-value-container{display:flex;align-items:flex-start;margin-bottom:15px;border:1px solid var(--border-color);border-radius:4px;padding:8px;background-color:#00000008;position:relative}.dark-mode .info-value-container{background-color:#ffffff0d}.info-value-content{flex:1;white-space:pre-wrap;word-break:break-word;min-height:20px;font-family:monospace;padding-right:30px}.copy-button{background:transparent;border:none;cursor:pointer;padding:3px;border-radius:3px;color:var(--text-color);opacity:.7;transition:all .2s ease}.copy-button:hover{opacity:1;background-color:#0000000d}.dark-mode .copy-button:hover{background-color:#ffffff1a}.copy-notification{position:absolute;top:-25px;right:0;background-color:var(--primary-color);color:#fff;font-size:12px;padding:3px 6px;border-radius:3px;opacity:0;animation:fadeInOut 1.5s ease}@keyframes fadeInOut{0%{opacity:0}20%{opacity:1}80%{opacity:1}to{opacity:0}}.markdown-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000d9;z-index:3500;display:flex;justify-content:center;align-items:center;padding:20px;overflow:hidden}.markdown-preview-container{background-color:var(--bg-color);border-radius:8px;width:90vw;height:90vh;max-width:1200px;display:flex;flex-direction:column;box-shadow:0 5px 25px #0000004d}.markdown-preview-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--border-color);background-color:var(--modal-header-bg);border-top-left-radius:8px;border-top-right-radius:8px;position:relative}.markdown-preview-header h2{margin:0;font-size:18px;color:var(--text-color)}.markdown-preview-header .close-button{position:absolute;right:15px;top:50%;transform:translateY(-50%);width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:24px;background:transparent;border:none;cursor:pointer;color:var(--text-color);opacity:.8;transition:opacity .2s;z-index:10}.markdown-preview-header .close-button:hover{opacity:1;color:var(--primary-color)}.markdown-preview-content{flex:1;padding:20px;overflow:auto;color:var(--text-color);line-height:1.5}.markdown-preview-content h1,.markdown-preview-content h2,.markdown-preview-content h3,.markdown-preview-content h4,.markdown-preview-content h5,.markdown-preview-content h6{margin-top:1.5em;margin-bottom:.5em;color:var(--text-color)}.markdown-preview-content h1{font-size:2em;border-bottom:1px solid var(--border-color);padding-bottom:.3em}.markdown-preview-content h2{font-size:1.5em;border-bottom:1px solid var(--border-color);padding-bottom:.3em}.markdown-preview-content p{margin:1em 0}.markdown-preview-content a{color:var(--primary-color);text-decoration:none}.markdown-preview-content a:hover{text-decoration:underline}.markdown-preview-content code{font-family:monospace;background-color:#0000000d;padding:.2em .4em;border-radius:3px;font-size:.9em}.dark-mode .markdown-preview-content code{background-color:#ffffff1a}.markdown-preview-content pre{background-color:#0000000d;padding:1em;border-radius:5px;overflow-x:auto}.dark-mode .markdown-preview-content pre{background-color:#ffffff0d}.markdown-preview-content pre code{background-color:transparent;padding:0}.markdown-preview-content blockquote{border-left:4px solid var(--border-color);padding-left:1em;margin-left:0;color:#777}.markdown-preview-container.is-mermaid{max-width:1400px}.mermaid-code-tabs{display:flex;gap:8px;padding:0 8px 8px;border-bottom:1px solid var(--border-color)}.mermaid-code-tabs .tab-btn{background:var(--bg-secondary-color, #1e1e1e);border:1px solid var(--border-color);padding:6px 14px;border-radius:4px 4px 0 0;cursor:pointer;font-size:13px;color:var(--text-color)}.mermaid-code-tabs .tab-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.code-action-buttons{display:flex;gap:8px;justify-content:flex-end;padding:8px}.icon-btn{background:var(--bg-secondary-color, #1e1e1e);border:1px solid var(--border-color);color:var(--text-color);padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;display:flex;align-items:center;gap:4px}.icon-btn:hover{background:var(--hover-color)}.icon-btn:active{transform:translateY(1px)}.graph-code-toolbar .btn{padding:8px 16px;background:transparent;color:var(--text-color);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;font-size:14px}.view-toggle-btn{background:var(--bg-secondary-color, #1e1e1e);border:1px solid var(--border-color);color:var(--text-color);padding:6px 14px;border-radius:4px;cursor:pointer;font-size:13px;align-self:flex-start}.graph-code-toolbar .btn:hover{background:var(--hover-color)}.graph-code-toolbar .btn:active{transform:translateY(1px)}.graph-code-toolbar{display:flex;gap:8px;justify-content:flex-end;align-items:center;padding:4px 8px 8px}.code-preview-content{overflow:hidden;background:var(--code-bg, #0f0f0f);border:1px solid var(--border-color);border-radius:4px;margin:0 8px 12px;position:relative;display:flex;flex-direction:column}.code-editor-host{flex:1;overflow:auto;font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;line-height:1.4;padding:8px;color:var(--code-color, #dcdcdc)}.cm-editor{height:100%;background:transparent}.cm-scroller{font-family:Consolas,Monaco,Courier New,monospace}.is-mermaid .mermaid-preview-content{display:flex;align-items:center;justify-content:center;overflow:auto}.is-mermaid .mermaid-preview-content svg{display:block;margin:0 auto;height:auto;max-width:1200px}.is-mermaid .mermaid-preview-content .mermaid-figure{display:inline-block;margin:0 auto;text-align:center;height:90%}.dark-mode .markdown-preview-content blockquote{color:#aaa}.markdown-preview-content table{border-collapse:collapse;width:100%;margin:1em 0;display:block;overflow-x:auto}.markdown-preview-content th,.markdown-preview-content td{border:1px solid var(--border-color);padding:8px 12px;text-align:left}.markdown-preview-content th{background-color:#0000000d;font-weight:600}.dark-mode .markdown-preview-content th{background-color:#ffffff0d}.markdown-preview-content ul,.markdown-preview-content ol{padding-left:2em}.markdown-preview-content img{max-width:100%;height:auto}.view-markdown-button{top:8px;right:35px;background:transparent;border:none;cursor:pointer;padding:3px;border-radius:3px;color:var(--text-color);opacity:.7;transition:all .2s ease}.view-markdown-button:hover{opacity:1;background-color:#0000000d}.dark-mode .view-markdown-button:hover{background-color:#ffffff1a}.icon-button{background:transparent;border:none;padding:8px;cursor:pointer;color:var(--text-color);display:flex;align-items:center;justify-content:center;transition:color .2s ease}.help-icon{width:32px;height:32px;padding:0}.icon-button:hover{color:var(--primary-color)}input,select{display:block;width:100%;padding:8px 12px;font-size:14px;line-height:1.5;color:var(--text-color);background-color:var(--bg-color);background-clip:padding-box;border:1px solid var(--border-color);border-radius:6px;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;box-shadow:inset 0 1px 3px #0000000d}input:focus,select:focus{color:var(--text-color);background-color:var(--bg-color);border-color:var(--primary-color);outline:0;box-shadow:inset 0 1px 3px #0000000d,0 0 0 3px #4299e133}#agent-form input,#agent-form select,#file-form input,#file-form select{padding:10px 12px;margin-bottom:15px}.menu-container{position:relative;display:inline-block}.menu-dropdown{display:none;position:absolute;right:0;top:100%;min-width:120px;background-color:var(--modal-bg);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 2px 10px #0000001a;z-index:1000;overflow:hidden}.menu-item{padding:8px 12px;cursor:pointer;transition:background-color .2s;color:var(--text-color);white-space:nowrap}.menu-item:hover{background-color:#0000000d}.dark-mode .menu-item:hover{background-color:#ffffff0d}.menu-separator{height:1px;background-color:var(--border-color);margin:4px 0}#formula-bar{display:flex;align-items:center;background-color:var(--formula-bar-bg);border:1px solid var(--formula-bar-border);border-bottom:2px solid var(--formula-bar-border);padding:6px 10px;margin-bottom:10px;border-radius:4px;box-shadow:0 1px 3px #0000001a;position:relative}.formula-cell-ref{min-width:40px;padding:6px 10px;background-color:var(--formula-fx-bg);border-radius:4px;text-align:center;font-weight:700;font-size:12px;margin-right:8px;flex-shrink:0}.formula-icons{display:flex;align-items:center;margin-right:8px;flex-shrink:0}.formula-icon-button{background:none;border:none;border-radius:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-color);margin-right:2px;transition:background-color .2s;flex-shrink:0}.formula-icon-button:hover{background-color:#0000000d}.dark-mode .formula-icon-button:hover{background-color:#ffffff1a}.formula-input-container{flex:1;min-width:0;margin-right:8px;position:relative}#formula-input{width:100%;padding:6px 8px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-color);color:var(--text-color);font-family:monospace;font-size:14px;box-sizing:border-box}.formula-fx{opacity:.5}.formula-input-has-formula .formula-fx{opacity:1}.touch-button{display:flex;align-items:center;gap:4px;background-color:var(--button-bg);color:var(--text-color);border:1px solid var(--border-color);border-radius:4px;padding:2px 6px;font-size:12px;cursor:pointer;margin-left:8px;transition:background-color .2s}.touch-button:hover{background-color:var(--button-hover-bg)}.dark-mode .touch-button:hover{background-color:#fff3}.touch-button svg{width:14px;height:14px}.temperature-control{display:flex;align-items:center;gap:10px}.temperature-control input[type=range]{flex:1;background:var(--border-color);border-radius:5px;outline:none}.temperature-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--primary-color);cursor:pointer}.temperature-control input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--primary-color);cursor:pointer;border:none}.temperature-control #temperature-value{min-width:28px;text-align:center}.spreadsheet-container table{border-collapse:separate;border-spacing:0;position:relative}.spreadsheet-container th:first-child{position:sticky;left:0;z-index:2;background-color:var(--header-bg)}.spreadsheet-container tr:first-child th{position:sticky;top:0;z-index:2;background-color:var(--header-bg)}.spreadsheet-container tr:first-child th:first-child{position:sticky;top:0;left:0;z-index:3;background-color:var(--header-bg)}.spreadsheet-container th{border:1px solid var(--border-color);box-shadow:0 1px 0 var(--border-color),1px 0 0 var(--border-color)}.spreadsheet-container tr:first-child th{box-shadow:0 1px 0 var(--border-color),0 2px 2px #0000001a}.spreadsheet-container th:first-child{box-shadow:1px 0 0 var(--border-color),2px 0 2px #0000001a}.spreadsheet-container tr:first-child th:first-child{box-shadow:1px 1px 0 var(--border-color),2px 2px 2px #0000001a}.filename-display{font-size:14px;padding:8px 20px 8px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px;display:flex;align-items:center;gap:8px;color:var(--primary-color);font-weight:500}.filename-display svg{flex-shrink:0;color:var(--primary-color)}.filename-text{overflow:hidden;text-overflow:ellipsis}.file-item{transition:background-color .2s}.file-item:hover{background-color:var(--hover-color)}.file-item:last-child{border-bottom:none!important}.file-item button{opacity:.7;transition:opacity .2s}.file-item button:hover{opacity:1}.formula-editor-container{width:100%;height:70vh;display:flex;flex-direction:column;font-size:1.2rem;padding:10px 10px 10px 0}.formula-editor-textarea{background-color:var(--bg-color);color:var(--text-color);line-height:1.5;-moz-tab-size:2;tab-size:2;font-size:.8em;white-space:pre-wrap;overflow-x:auto;overflow-y:auto}#formula-editor-modal .modal-content{max-height:90vh;width:80%!important;max-width:1200px;margin-left:auto;margin-right:auto}#formula-editor-modal .modal-body{padding:15px;height:calc(100% - 60px)}.formula-editor-textarea:focus{background-color:var(--bg-color)!important;outline:none;border-color:var(--primary-color)}.edit-formula-button,.view-formula-markdown-button,.copy-formula-button{top:8px;background:transparent;border:none;cursor:pointer;padding:3px;border-radius:3px;color:var(--text-color);opacity:.7;transition:all .2s ease}.edit-formula-button{right:62px}.view-formula-markdown-button{right:35px}.copy-formula-button{right:8px}.edit-formula-button:hover,.view-formula-markdown-button:hover,.copy-formula-button:hover{opacity:1;color:var(--primary-color)}.modal *,.modal *:before,.modal *:after{box-sizing:border-box}.file-picker-button{width:100%;height:100%;border:none;background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark, #0056b3));color:#fff;font-size:12px;font-weight:500;cursor:pointer;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:4px;min-height:30px}.file-picker-button:hover{background:linear-gradient(135deg,var(--primary-color-dark, #0056b3),var(--primary-color));transform:translateY(-1px);box-shadow:0 2px 8px #007bff4d}.file-picker-button:active{transform:translateY(0);box-shadow:0 1px 4px #007bff33}.files-list .file-item{transition:all .2s ease}.files-list .file-item:hover{background-color:var(--hover-color, rgba(0, 123, 255, .1))!important;border-color:var(--primary-color)}.onboarding-panel{top:0;left:0;width:0;height:100vh;background-color:var(--modal-bg);border-right:0px solid var(--border-color);transition:all .3s ease;opacity:0;z-index:1000;display:none}body.onboarding-open .onboarding-panel{display:block;width:420px;border-right-width:1px;opacity:1;box-shadow:2px 0 10px #0000001a}.onboarding-overlay{top:0;left:0;width:100vw;height:100vh;background-color:#00000080;z-index:999;opacity:0;transition:opacity .3s ease;display:none}body.onboarding-open .onboarding-overlay{display:block;opacity:1;position:absolute}body.onboarding-open{transition:margin-left .3s ease}.onboarding-content{padding:44px 25px;height:100vh;width:420px;overflow-y:auto;display:flex;flex-direction:column;align-items:center}.onboarding-icon{margin-bottom:20px;color:var(--primary-color);font-size:36px}.congrats-icon{font-size:80px}.onboarding-content h3,.onboarding-content h2{margin:0 0 15px;color:var(--text-color);font-weight:700;line-height:100%;letter-spacing:2%;text-align:center;vertical-align:middle}.onboarding-content h2{font-size:28px}.onboarding-content h3{font-size:24px;margin-bottom:36px}.onboarding-subtitle{font-size:16px;line-height:1.5;color:var(--secondary-text);margin-bottom:30px;text-align:center}.onboarding-steps{width:100%;margin-bottom:30px}.onboarding-step{display:flex;align-items:flex-start;margin-bottom:20px;text-align:left}.step-number{width:32px;height:32px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;margin-right:15px;flex-shrink:0}.step-content h3{margin:0 0 5px;font-size:16px;font-weight:600;color:var(--text-color)}.step-content p{margin:0;font-size:14px;line-height:1.4;color:var(--secondary-text)}.landing-content{display:flex;flex-direction:column;align-items:center;flex-grow:2;height:100%;justify-content:center}.step-1.onboarding-actions{display:flex;flex-direction:row;gap:10px;width:100%;margin-top:100px;margin-bottom:30px;justify-content:center}.onboarding-actions button{font-size:16px}.step-2 .onboarding-actions{gap:32px}.onboarding-actions{display:flex;flex-direction:column;gap:32px;width:100%;margin-bottom:30px;justify-content:center;align-items:center}.onboarding-actions-bottom{display:flex;flex-direction:row;gap:10px;width:100%;margin-bottom:30px;justify-content:center}.onboarding-actions .primary-button,.onboarding-actions .secondary-button{justify-content:center;border-radius:25px}.onboarding-footer{margin-top:auto;padding-top:20px;width:100%;text-align:center}.onboarding-footer p{margin:0;font-size:12px;color:var(--secondary-text)}.provider-tabs{display:flex;margin-bottom:25px;border-radius:38px;overflow:hidden;border:1px solid var(--border-color);background-color:var(--switch-bg-color);width:100%}.provider-tab{flex:1;padding:12px 16px;color:var(--secondary-text);border:none;cursor:pointer;font-weight:600;font-size:16px;transition:all .2s ease;border-radius:38px;background-color:var(--switch-bg-color)}.provider-tab:last-child{border-right:none}.provider-tab.active{background-color:var(--primary-color);color:#fff}.provider-config{margin-top:25px;margin-bottom:25px;width:100%}.model-section,.api-key-section,.endpoint-section{margin-bottom:20px}.model-section label,.api-key-section label,.endpoint-section label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-color)}.recommend-text{font-weight:400;color:var(--secondary-text);font-size:14px}.model-section select,.api-key-section input,.endpoint-section input{width:100%;border:1px solid var(--border-color);border-radius:6px;background-color:var(--input-bg);color:var(--text-color);font-size:14px;transition:border-color .2s ease}.model-section select:focus,.api-key-section input:focus,.endpoint-section input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6ee01a}.key-help,.endpoint-help{margin-top:6px;margin-bottom:0;font-size:12px;color:var(--secondary-text);line-height:1.4}.validation-message{margin:15px 0;padding:10px 12px;border-radius:6px;background-color:#ffc1071a;border:1px solid rgba(255,193,7,.3);display:none}.validation-message.error{background-color:#dc35451a;border-color:#dc35454d}.validation-message.success{background-color:#28a7451a;border-color:#28a7454d}.validation-message.error,.validation-message.success,.validation-message.info{display:block}.validation-text{font-size:14px;color:var(--text-color);font-style:italic}
