.lab-history{border-bottom:1px solid #ffffff1a}.lab-history.expanded{flex:1;min-height:150px}.lab-history .lab-section-icon,.lab-history .lab-section-title{color:var(--text-muted)}.lab-history-messages{flex-direction:column;gap:12px;display:flex}.lab-message-row{align-items:flex-start;gap:8px;width:100%;display:flex}.lab-message-row:has(.lab-message-user){justify-content:flex-end}.lab-message-row:has(.lab-message-assistant){justify-content:flex-start}.lab-message-row:has(.lab-message-system){justify-content:center}.lab-message{flex-direction:column;gap:4px;max-width:85%;display:flex}.lab-message-system{width:100%;max-width:100%}.lab-message-role{text-transform:uppercase;letter-spacing:.5px;cursor:pointer;background:0 0;border:none;outline:none;width:fit-content;padding:0;font-size:9px;font-weight:600}.lab-message-system .lab-message-role{color:var(--text-muted);align-self:center}.lab-message-user .lab-message-role{color:#93c5fdcc;text-align:right;align-self:flex-end}.lab-message-assistant .lab-message-role{color:var(--text-muted);text-align:left;align-self:flex-start}.lab-message-content{resize:vertical;border-radius:8px;outline:none;width:100%;min-height:40px;padding:8px 12px;font-family:monospace;font-size:12px}.lab-message-system .lab-message-content{color:var(--text-muted);text-align:center;background:0 0;border:1px dashed #fff3;font-style:italic}.lab-message-user .lab-message-content{color:#bfdbfe;background-color:#1e3a8a33;border:1px solid #1e40af80}.lab-message-user .lab-message-content:focus{border-color:#3b82f680}.lab-message-assistant .lab-message-content{background-color:var(--color-background);color:var(--text-normal);border:1px solid #ffffff1a}.lab-message-assistant .lab-message-content:focus{border-color:#ffffff4d}.lab-message-delete{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;margin-top:16px;padding:4px;transition:all .15s}.lab-message-row:hover .lab-message-delete{opacity:1}.lab-message-delete:hover{color:var(--color-red);background-color:#ff55551a}.lab-message-injected{background:#8b5cf60f;border:1px dashed #8b5cf640;border-radius:6px;width:100%;max-width:100%;margin-bottom:4px;padding:8px 10px}.lab-message-injected-header{align-items:center;gap:6px;margin-bottom:6px;display:flex}.lab-message-injected-icon{color:#8b5cf699}.lab-message-role-badge{text-transform:uppercase;letter-spacing:.5px;color:#8b5cf6e6;background:#8b5cf61f;border-radius:3px;padding:2px 6px;font-size:9px;font-weight:600;display:inline-block}.lab-message-content-readonly{color:var(--text-muted);white-space:pre-wrap;word-break:break-word;opacity:.85;font-family:Monaco,Menlo,Consolas,monospace;font-size:11px;line-height:1.4}.lab-message-injected-label{color:#8b5cf680;margin-top:6px;font-size:9px;font-style:italic}.lab-message-content-readonly.clickable{cursor:pointer;transition:background-color .15s}.lab-message-content-readonly.clickable:hover{background:#8b5cf61a;border-radius:4px}.view-full-hint{color:var(--color-primary);opacity:.7;margin-top:6px;font-size:10px;display:block}.lab-message-content-readonly.clickable:hover .view-full-hint{opacity:1}.message-full-content{white-space:pre-wrap;word-break:break-word;width:100%;max-height:60vh;color:var(--text-normal);background:var(--color-background);box-sizing:border-box;border:1px solid #ffffff1a;border-radius:6px;margin:0;padding:12px;font-family:Monaco,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;overflow-y:auto}.modal-copy-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 16px;font-size:12px;font-weight:500;transition:background-color .15s;display:flex}.modal-copy-btn:hover{background:var(--color-primary-hover)}
.grading-manager{border-top:1px solid #ffffff0f;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.grading-header{justify-content:space-between;align-items:center;display:flex}.grading-title{text-transform:uppercase;letter-spacing:.5px;color:#c084fce6;align-items:center;gap:6px;font-size:10px;font-weight:700;display:flex}.grading-add-btn{color:#c084fccc;cursor:pointer;background-color:#8b5cf61a;border:1px solid #8b5cf633;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:9px;transition:all .15s;display:flex}.grading-add-btn:hover{color:#c084fc;background-color:#8b5cf626;border-color:#8b5cf64d}.grading-list{flex-direction:column;gap:6px;display:flex}.validator-row{background-color:#00000040;border:1px solid #ffffff14;border-radius:4px;align-items:center;gap:6px;padding:4px 6px;transition:all .15s;display:flex}.validator-row:hover{border-color:#ffffff1f}.validator-row.passed{background-color:#4ade800d;border-color:#4ade804d}.validator-row.failed{background-color:#f871710d;border-color:#f871714d}.validator-row.loading{background-color:#c084fc0d;border-color:#c084fc4d}.validator-result{border-radius:50%;flex-shrink:0;width:6px;height:6px}.validator-result.passed{background-color:#4ade80e6}.validator-result.failed{background-color:#f87171e6}.validator-result.loading{background-color:#0000;justify-content:center;align-items:center;width:auto;height:auto;display:flex}.validator-spinner{color:#c084fce6;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.validator-type-select{flex-shrink:0;position:relative}.validator-type-select select{appearance:none;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted);cursor:pointer;background-color:#0000004d;border:1px solid #ffffff1a;border-radius:3px;outline:none;padding:4px 24px 4px 8px;font-size:9px;font-weight:600;transition:all .15s}.validator-type-select select:hover{border-color:#ffffff26}.validator-type-select select:focus{border-color:#c084fc66}.validator-select-arrow{color:var(--text-muted);pointer-events:none;opacity:.6;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.validator-model-select-wrapper{flex-shrink:0;position:relative}.validator-model-select{appearance:none;color:#c084fce6;cursor:pointer;background-color:#8b5cf61a;border:1px solid #8b5cf640;border-radius:3px;outline:none;min-width:100px;max-width:130px;padding:4px 24px 4px 8px;font-size:9px;font-weight:500;transition:all .15s}.validator-model-select:hover{border-color:#8b5cf666}.validator-model-select:focus{border-color:#c084fc80}.validator-model-select option{background-color:var(--color-background);color:var(--text-normal)}.validator-field{min-width:0;color:var(--text-normal);background-color:#0003;border:1px solid #ffffff14;border-radius:3px;outline:none;flex:1;padding:4px 8px;font-size:11px;transition:border-color .15s}.validator-field:focus{border-color:#c084fc66}.validator-field::placeholder{color:var(--text-muted);opacity:.5}.validator-field-code{color:#4ade80e6;resize:none;min-height:26px;font-family:Monaco,Menlo,Consolas,monospace;font-size:10px}.validator-field-prompt{color:#8bd3fee6;resize:none;min-height:26px;font-size:10px}.validator-expand-btn{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.validator-row:hover .validator-expand-btn{opacity:1}.validator-expand-btn:hover{color:#c084fce6;background-color:#ffffff0d}.validator-remove-btn{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.validator-row:hover .validator-remove-btn{opacity:1}.validator-remove-btn:hover{color:#f87171e6;background-color:#f871711a}.grading-empty{color:var(--text-muted);opacity:.6;justify-content:center;align-items:center;padding:12px;font-size:10px;display:flex}.grading-modal-textarea{color:#4ade80e6;font-family:Monaco,Menlo,Consolas,monospace}.grading-modal-textarea:focus{border-color:#c084fc80}.grading-modal-save{background-color:#c084fce6!important}.grading-modal-save:hover{background-color:#c084fc!important}.validator-option-toggle{color:var(--text-muted);cursor:pointer;opacity:.6;text-transform:uppercase;letter-spacing:.3px;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:3px 6px;font-size:9px;font-weight:600;transition:all .15s;display:flex}.validator-option-toggle:hover{opacity:1;border-color:#c084fc66}.validator-option-toggle.active{opacity:1;color:#c084fce6;background:#c084fc26;border-color:#c084fc66}.validator-flags{flex-shrink:0;gap:2px;display:flex}.validator-flag-btn{width:18px;height:18px;color:var(--text-muted);cursor:pointer;opacity:.5;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:2px;justify-content:center;align-items:center;font-family:Monaco,Menlo,Consolas,monospace;font-size:9px;font-weight:600;transition:all .15s;display:flex}.validator-flag-btn:hover{opacity:1;border-color:#4ade8066}.validator-flag-btn.active{opacity:1;color:#4ade80e6;background:#4ade8026;border-color:#4ade8066}.validator-help-wrapper{flex-shrink:0;position:relative}.validator-help-btn{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.validator-row:hover .validator-help-btn{opacity:.5}.validator-help-btn:hover,.validator-help-btn.active{opacity:1;color:#60a5fae6;background:#60a5fa1a}.validator-help-tooltip{background:var(--color-background);z-index:100;border:1px solid #ffffff26;border-radius:6px;width:280px;margin-top:6px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 8px 24px #0006}.validator-help-header{text-transform:uppercase;letter-spacing:.5px;color:#60a5fae6;background:#60a5fa1a;border-bottom:1px solid #ffffff1a;padding:8px 10px;font-size:10px;font-weight:700}.validator-help-desc{color:var(--text-normal);white-space:pre-wrap;padding:10px;font-size:11px;line-height:1.5}.validator-help-examples{border-top:1px solid #ffffff14;padding:8px 0}.validator-help-examples-title{text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted);padding:0 10px 6px;font-size:9px;font-weight:600}.validator-help-example{cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:6px 10px;transition:background .15s;display:flex}.validator-help-example:hover{background:#60a5fa1a}.validator-help-example code{color:#4ade80e6;word-break:break-all;background:#0000004d;border-radius:3px;padding:2px 6px;font-family:Monaco,Menlo,Consolas,monospace;font-size:10px}.validator-help-example span{color:var(--text-muted);font-size:9px}
.scenario-definition{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.scenario-content{flex-direction:column;flex:1;gap:16px;min-height:0;padding-bottom:80px;padding-right:4px;display:flex;overflow-y:auto}.scenario-content::-webkit-scrollbar{width:4px}.scenario-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.scenario-content::-webkit-scrollbar-thumb:hover{background:#fff3}.scenario-content.hidden{display:none}.scenario-block{flex-direction:column;display:flex}.scenario-block-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.scenario-block-title-row{align-items:center;gap:12px;display:flex}.scenario-block-title{text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;font-size:10px;font-weight:700;display:flex}.scenario-block-title-user{color:#60a5fae6}.scenario-block-title-expected{color:#c084fce6}.scenario-block-actions{align-items:center;gap:4px;display:flex}.scenario-add-expected-btn{color:#c084fccc;cursor:pointer;background-color:#8b5cf61a;border:1px solid #8b5cf633;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:9px;transition:all .15s;display:flex}.scenario-add-expected-btn:hover{color:#c084fc;background-color:#8b5cf626;border-color:#8b5cf64d}.scenario-maximize-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.scenario-maximize-btn:hover{color:#60a5fae6;background-color:#ffffff0d}.scenario-remove-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.scenario-remove-btn:hover{color:#f87171e6}.scenario-input-container{background-color:#0000004d;border:1px solid #ffffff1a;border-radius:6px;flex-direction:column;min-height:120px;transition:border-color .15s,background-color .15s;display:flex;position:relative}.scenario-input-container:focus-within{border-color:#60a5fa66}.scenario-input-container.dragging{background-color:#60a5fa0d;border-color:#60a5fa99}.scenario-drag-overlay{z-index:10;background-color:#60a5fa1a;border:2px dashed #60a5fa80;border-radius:6px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.scenario-drag-overlay span{color:#60a5fae6;background-color:#0009;border-radius:4px;padding:8px 16px;font-size:12px;font-weight:600}.scenario-textarea{min-height:80px;color:var(--text-normal);resize:none;background:0 0;border:none;outline:none;flex:1;padding:12px;font-family:Monaco,Menlo,Consolas,monospace;font-size:12px}.scenario-textarea::placeholder{color:var(--text-muted);opacity:.6}.scenario-attachments{flex-wrap:wrap;gap:8px;padding:0 12px 10px;display:flex}.scenario-attachment-chip{color:var(--text-normal);background-color:#0006;border:1px solid #ffffff1a;border-radius:4px;align-items:center;gap:6px;padding:4px 8px;font-size:10px;display:flex}.scenario-attachment-icon{opacity:.5;color:#60a5facc}.scenario-attachment-name{text-overflow:ellipsis;white-space:nowrap;max-width:80px;overflow:hidden}.scenario-attachment-remove{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;transition:opacity .15s;display:flex}.scenario-attachment-chip:hover .scenario-attachment-remove{opacity:1}.scenario-attachment-remove:hover{color:#f87171e6}.scenario-toolbar{background-color:#00000026;border-top:1px solid #ffffff0f;border-radius:0 0 6px 6px;justify-content:space-between;align-items:center;padding:6px 8px;display:flex}.scenario-toolbar-actions{align-items:center;gap:2px;display:flex}.scenario-toolbar-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;transition:all .15s;display:flex}.scenario-toolbar-btn:hover{color:#60a5fae6;background-color:#ffffff0d}.scenario-toolbar-btn:nth-child(2):hover{color:#c084fce6}.scenario-toolbar-btn:nth-child(3):hover{color:#ef4444e6}.scenario-toolbar-btn.recording{color:#ef4444;animation:1s infinite pulse}.scenario-recording-indicator{color:#ef4444;align-items:center;gap:6px;margin-left:4px;font-size:10px;font-weight:500;display:flex}.recording-dot{background:#ef4444;border-radius:50%;width:8px;height:8px;animation:1s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.scenario-toolbar-hint{color:var(--text-muted);opacity:.5;font-size:9px}.scenario-expected-textarea{min-height:100px;color:var(--text-normal);resize:vertical;background-color:#0000004d;border:1px solid #ffffff1a;border-radius:6px;outline:none;padding:12px;font-family:Monaco,Menlo,Consolas,monospace;font-size:12px;transition:border-color .15s}.scenario-expected-textarea:focus{border-color:#c084fc66}.scenario-expected-textarea::placeholder{color:var(--text-muted);opacity:.6}
.results-tab{flex-direction:column;flex:1;gap:12px;min-height:0;padding-bottom:80px;padding-right:4px;display:flex;overflow-y:auto}.results-tab::-webkit-scrollbar{width:4px}.results-tab::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.results-tab::-webkit-scrollbar-thumb:hover{background:#fff3}.results-tab-batch{padding-bottom:0}.results-view-toggle{background-color:#0003;border-radius:4px;flex-shrink:0;gap:4px;margin-bottom:8px;padding:4px;display:flex}.results-view-toggle button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;align-items:center;gap:4px;padding:6px 12px;font-size:10px;font-weight:500;transition:all .15s;display:flex}.results-view-toggle button:hover{color:var(--text-normal);background-color:#ffffff0d}.results-view-toggle button.active{color:var(--text-normal);background-color:#ffffff1a}.results-status{justify-content:space-between;align-items:center;display:flex}.results-badge{border-radius:4px;align-items:center;gap:6px;padding:4px 10px;font-size:10px;font-weight:600;display:flex}.results-badge.passed{color:#4ade80e6;background-color:#4ade801a;border:1px solid #4ade8033}.results-badge.failed{color:#f87171e6;background-color:#f871711a;border:1px solid #f8717133}.results-badge.streaming{color:#60a5fae6;background-color:#60a5fa1a;border:1px solid #60a5fa33}.results-badge.validating{color:#c084fce6;background-color:#c084fc1a;border:1px solid #c084fc33}.results-metrics{align-items:center;gap:12px;display:flex}.results-metric{color:var(--text-muted);align-items:center;gap:4px;font-size:10px;display:flex}.results-output-container{flex-direction:column;flex:1;min-height:100px;display:flex}.results-output-header{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:6px;font-size:9px;font-weight:600}.results-output{color:var(--text-normal);white-space:pre-wrap;word-break:break-word;background-color:#0000004d;border:1px solid #ffffff1a;border-radius:6px;flex:1;padding:12px;font-family:Monaco,Menlo,Consolas,monospace;font-size:12px;overflow-y:auto}.results-output-empty,.results-output-placeholder{color:var(--text-muted);opacity:.5;font-style:italic}.results-output.streaming{border-color:#60a5fa4d}.results-cursor{color:#60a5fae6;animation:1s infinite blink}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.results-validators{flex-direction:column;display:flex}.results-validators-header{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:6px;font-size:9px;font-weight:600}.results-validators-grid{flex-direction:column;gap:4px;display:flex}.results-validator{background-color:#0003;border:1px solid #ffffff14;border-radius:4px;flex-direction:column;display:flex;overflow:hidden}.results-validator-main{align-items:center;gap:8px;padding:6px 8px;display:flex}.results-validator.passed{border-color:#4ade8033}.results-validator.failed{border-color:#f8717133}.results-validator.failed.has-error{border-color:#f871714d}.results-validator.failed.has-error .results-validator-main:hover{background-color:#f871710d}.results-validator.loading{background-color:#c084fc0d;border-color:#c084fc4d}.results-validator.pending{opacity:.6;border-color:#ffffff1a}.results-validator-icon{flex-shrink:0}.results-validator-icon.passed{color:#4ade80e6}.results-validator-icon.failed{color:#f87171e6}.results-validator-icon.loading{color:#c084fce6}.results-validator-spinner{animation:1s linear infinite spin}.results-validator-type{text-transform:uppercase;color:var(--text-muted);flex-shrink:0;font-size:9px;font-weight:600}.results-validator-value{color:var(--text-normal);opacity:.8;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:10px;overflow:hidden}.results-validator-expand-indicator{flex-shrink:0;align-items:center;margin-left:auto;padding-left:8px;transition:color .15s;display:flex}.results-validator-expand-indicator.failed{color:#f87171b3}.results-validator-expand-indicator.passed{color:#4ade80b3}.results-validator-main:hover .results-validator-expand-indicator{opacity:1}.results-validator-reasoning{white-space:pre-wrap;border-top:1px solid #ffffff14;padding:10px 12px}.results-validator-reasoning.failed{background-color:#f8717114;border-top-color:#f8717126}.results-validator-reasoning.passed{background-color:#4ade800d;border-top-color:#4ade8026}.results-validator-reasoning-text{word-break:break-word;font-size:11px;line-height:1.5;display:block}.results-validator-reasoning.failed .results-validator-reasoning-text{color:#f87171e6}.results-validator-reasoning.passed .results-validator-reasoning-text{color:#4ade80e6}.results-validator.has-reasoning .results-validator-main{cursor:pointer}.results-validator.has-reasoning .results-validator-main:hover{background-color:#ffffff08}.results-validator-icon.pending{color:#fff6}.results-badge.neutral{color:var(--text-muted);background-color:#ffffff0d;border:1px solid #ffffff1a}.results-empty{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.results-empty-icon{opacity:.3;color:#4ade8080}.results-empty span{font-size:11px}.results-empty-hint{opacity:.6;font-size:10px}.results-loading{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.results-spinner{color:#60a5facc;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.results-loading span{font-size:11px}.results-error{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.results-error-icon{color:#f87171cc}.results-error-title{color:#f87171e6;font-size:12px;font-weight:600}.results-error-message{text-align:center;opacity:.8;max-width:80%;font-size:10px}
.results-panel{background:var(--color-secondary);z-index:100;border-top:1px solid #ffffff26;border-left:1px solid #ffffff1a;flex-direction:column;width:500px;height:0;max-height:60vh;transition:transform .3s,height .3s;display:flex;position:fixed;bottom:0;right:0;transform:translateY(100%);box-shadow:0 -4px 20px #0000004d}.results-panel.open{height:300px;transform:translateY(0)}.results-panel-header{background-color:#0003;border-bottom:1px solid #ffffff1a;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.results-panel-title{text-transform:uppercase;letter-spacing:.5px;color:#4ade80e6;font-size:11px;font-weight:600}.results-panel-actions{align-items:center;gap:4px;display:flex}.results-panel-btn{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.results-panel-btn:hover{color:var(--text-normal);background-color:#ffffff1a}.results-panel-save-btn{color:#4ade80e6;cursor:pointer;background-color:#4ade8026;border:1px solid #4ade804d;border-radius:4px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:500;transition:all .15s;display:flex}.results-panel-save-btn:hover:not(:disabled){background-color:#4ade8040;border-color:#4ade8080}.results-panel-save-btn:disabled{opacity:.4;cursor:not-allowed}.results-panel-content{flex:1;padding:12px;overflow:hidden auto}.results-panel-content::-webkit-scrollbar{width:4px}.results-panel-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}
.test-list-header{border-bottom:1px solid var(--color-border);background:var(--color-secondary);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.test-list-title{color:var(--text-normal);font-size:13px;font-weight:600}.test-list-actions{align-items:center;gap:6px;display:flex}.test-action-btn{border:1px solid var(--color-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:4px;padding:5px 10px;font-size:11px;font-weight:500;transition:all .15s;display:flex}.test-action-btn:hover:not(:disabled){background:var(--color-hover);color:var(--text-normal)}.test-action-btn:disabled{opacity:.5;cursor:not-allowed}.test-action-btn.new-test{color:var(--color-primary);border-color:var(--color-primary)}.test-action-btn.new-test:hover:not(:disabled){background:#4169e11a}.test-action-btn.primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.test-action-btn.primary:hover:not(:disabled){background:var(--color-primary-hover)}
.test-list-controls{background:var(--color-background);border-bottom:1px solid var(--color-border);align-items:center;gap:8px;padding:6px 12px;display:flex}.test-select-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;padding:4px 8px;font-size:11px;transition:all .15s}.test-select-btn:hover{background:var(--color-hover);color:var(--text-normal)}.test-list-filters{align-items:center;gap:8px;margin-left:auto;display:flex}.test-list-filters input{border:1px solid var(--color-border);background:var(--color-secondary);color:var(--text-normal);border-radius:4px;padding:4px 8px;font-size:11px}.test-list-filters input::placeholder{color:var(--text-muted)}
.test-progress{background:var(--color-background);border-bottom:1px solid var(--color-border);flex-direction:column;gap:6px;padding:8px 12px;display:flex}.test-progress-bar{background:var(--color-secondary);border-radius:2px;width:100%;height:4px;overflow:hidden}.test-progress-fill{background:var(--color-primary);border-radius:2px;height:100%;transition:width .3s}.test-progress-text{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}
.test-list-item{cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:8px 12px;transition:background .15s;display:flex}.test-list-item:hover{background:var(--color-hover)}.test-list-item.selected{background:var(--color-active)}.test-list-item.disabled{opacity:.5}.test-list-item.running{background:rgba(var(--color-primary-rgb,65,105,225),.1)}.test-list-item.grouped{padding-left:24px}.test-list-checkbox{cursor:pointer;flex-shrink:0;width:14px;height:14px}.test-list-checkbox:disabled{cursor:not-allowed}.test-list-status{flex-shrink:0;justify-content:center;align-items:center;width:18px;display:flex}.test-list-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.test-list-name{color:var(--text-normal);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.test-list-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.test-list-result{color:var(--text-muted);font-size:11px}.test-list-result.passed{color:var(--color-green)}.test-list-result.failed{color:var(--color-red)}.test-list-result.error{color:var(--color-yellow)}.test-list-result.clickable{cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.test-list-result.clickable:hover{text-decoration-style:solid}.test-list-metrics{flex-shrink:0;align-items:center;gap:8px;display:flex}.test-list-tokens,.test-list-cost,.test-list-judge-cost,.test-list-latency{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap}.test-list-cost{color:var(--color-green)}.test-list-judge-cost{color:var(--color-purple)}.test-list-latency{color:var(--color-cyan)}.test-list-item-actions{opacity:0;flex-shrink:0;align-items:center;gap:4px;transition:opacity .15s;display:flex}.test-list-item:hover .test-list-item-actions{opacity:1}.test-list-action-btn{width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.test-list-action-btn:hover{background:var(--color-secondary);color:var(--text-normal)}.test-list-action-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}
.test-list-summary{border-top:1px solid var(--color-border);background:var(--color-background);padding:10px 12px}.summary-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.summary-row-main{margin-bottom:6px}.summary-row-main:last-child{margin-bottom:0}.summary-row-stats{font-size:11px}.summary-test-count{color:var(--text-muted);font-size:12px;font-weight:500}.pass-rate{border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600}.pass-rate.good{color:var(--color-green);background:#50fa7b1a}.pass-rate.moderate{color:var(--color-yellow);background:#f1fa8c1a}.pass-rate.poor{color:var(--color-red);background:#ff55551a}.summary-export{align-items:center;gap:6px;margin-left:auto;display:flex}.export-btn{border:1px solid var(--color-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;transition:all .15s;display:flex}.export-btn:hover{background:var(--color-hover);color:var(--text-normal)}.summary-stat{flex-direction:column;gap:1px;display:flex}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600}.stat-value{font-family:var(--font-mono);color:var(--text-normal)}.stat-range{color:var(--text-muted);margin-left:4px;font-size:10px}.stat-extra{color:var(--color-purple);margin-left:4px}
.result-detail-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.result-detail-dialog{background:var(--color-secondary);border-radius:8px;flex-direction:column;width:100%;max-width:600px;max-height:80vh;display:flex;box-shadow:0 4px 20px #0000004d}.result-detail-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.result-detail-header h4{align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;display:flex}.result-detail-header-actions{align-items:center;gap:8px;display:flex}.result-detail-copy-all,.result-detail-rerun{border:1px solid var(--color-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;transition:all .15s;display:flex}.result-detail-copy-all:hover,.result-detail-rerun:hover{background:var(--color-hover);color:var(--text-normal)}.result-detail-rerun:disabled{opacity:.5;cursor:not-allowed}.result-detail-close{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;display:flex}.result-detail-close:hover{background:var(--color-hover);color:var(--text-normal)}.result-detail-content{flex:1;padding:16px;overflow-y:auto}.result-detail-section{margin-bottom:16px}.result-detail-section:last-child{margin-bottom:0}.result-detail-section>label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.result-detail-section>span{color:var(--text-normal);font-size:13px}.section-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.section-header label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.copy-btn{border:1px solid var(--color-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:3px;align-items:center;gap:4px;padding:2px 6px;font-size:10px;display:flex}.copy-btn:hover{background:var(--color-hover);color:var(--text-normal)}.result-metrics-row{flex-wrap:wrap;gap:12px;display:flex}.metric-item{color:var(--text-normal);font-size:12px}.metric-label{color:var(--text-muted)}.result-detail-message,.result-detail-input,.result-detail-output{font-family:var(--font-mono);background:var(--color-background);white-space:pre-wrap;word-break:break-word;border-radius:4px;max-height:200px;margin:0;padding:10px;font-size:12px;overflow-y:auto}.result-detail-message.error{color:var(--color-red);border-left:3px solid var(--color-red)}.result-detail-configure-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:8px;margin-top:12px;padding:10px 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.result-detail-configure-btn:hover{background:var(--color-primary-hover)}.validator-results-list{flex-direction:column;gap:8px;display:flex}.validator-result-item{background:var(--color-background);border-left:3px solid var(--color-border);border-radius:4px;padding:10px}.validator-result-item.passed{border-left-color:var(--color-green)}.validator-result-item.failed{border-left-color:var(--color-red)}.validator-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.validator-status{font-weight:600}.validator-result-item.passed .validator-status{color:var(--color-green)}.validator-result-item.failed .validator-status{color:var(--color-red)}.validator-type{color:var(--text-normal);font-size:12px;font-weight:600}.validator-value{color:var(--text-muted);font-size:11px;font-family:var(--font-mono)}.validator-criteria{color:var(--text-muted);margin-bottom:4px;font-size:12px}.criteria-label{font-weight:500}.validator-reasoning{font-family:var(--font-mono);background:var(--color-secondary);white-space:pre-wrap;word-break:break-word;color:var(--text-muted);border-radius:3px;margin:6px 0 0;padding:8px;font-size:11px}.validator-error{color:var(--color-red);margin-top:4px;font-size:11px;display:block}.history-toggle{border:1px solid var(--color-border);color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border-radius:4px;align-items:center;gap:6px;width:100%;padding:6px 10px;font-size:12px;display:flex}.history-toggle:hover{background:var(--color-hover);color:var(--text-normal)}.history-toggle svg{transition:transform .2s}.history-toggle svg.rotated{transform:rotate(180deg)}.test-history-list{background:var(--color-background);border-radius:4px;margin-top:8px;padding:12px}.history-empty{color:var(--text-muted);text-align:center;font-size:12px;font-style:italic}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}
.confirm-dialog-overlay{z-index:1001;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog{background:var(--color-secondary);border-radius:8px;min-width:280px;max-width:400px;padding:20px;box-shadow:0 4px 20px #0000004d}.confirm-dialog h4{color:var(--text-normal);margin:0 0 8px;font-size:14px;font-weight:600}.confirm-dialog p{color:var(--text-muted);margin:0 0 16px;font-size:13px}.confirm-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.confirm-dialog-actions button{cursor:pointer;border-radius:4px;padding:6px 14px;font-size:12px;font-weight:500;transition:all .15s}.confirm-dialog-actions button:first-child{border:1px solid var(--color-border);color:var(--text-muted);background:0 0}.confirm-dialog-actions button:first-child:hover{background:var(--color-hover);color:var(--text-normal)}.confirm-dialog-actions button.primary{background:var(--color-primary);border:1px solid var(--color-primary);color:#fff}.confirm-dialog-actions button.primary:hover{background:var(--color-primary-hover)}.confirm-dialog-actions button.danger{background:var(--color-red);border:1px solid var(--color-red);color:#fff}.confirm-dialog-actions button.danger:hover{opacity:.9}
.context-menu-overlay{z-index:999;position:fixed;inset:0}.context-menu{z-index:1000;background:var(--color-secondary);border:1px solid var(--color-border);border-radius:6px;min-width:140px;padding:4px;position:fixed;box-shadow:0 4px 12px #0003}.context-menu-item{text-align:left;width:100%;color:var(--text-normal);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;transition:background .15s;display:flex}.context-menu-item:hover:not(:disabled){background:var(--color-hover)}.context-menu-item:disabled{opacity:.5;cursor:not-allowed}.context-menu-item.danger{color:var(--color-red)}.context-menu-item.danger:hover:not(:disabled){background:#ff55551a}.context-menu-icon{width:16px;color:inherit;justify-content:center;align-items:center;display:flex}.context-menu-divider{background:var(--color-border);height:1px;margin:4px 0}
.test-list-screen{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.test-list-header{border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.test-list-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-size:10px;font-weight:600}.test-list-actions{align-items:center;gap:8px;display:flex}.test-action-btn{color:var(--text-muted);cursor:pointer;background-color:#ffffff0d;border:1px solid #ffffff1a;border-radius:3px;align-items:center;gap:4px;padding:4px 8px;font-size:10px;font-weight:500;transition:all .15s;display:flex}.test-action-btn:hover:not(:disabled){color:var(--text-normal);background-color:#ffffff1a;border-color:#ffffff26}.test-action-btn:disabled{opacity:.4;cursor:not-allowed}.test-action-btn.new-test{color:var(--color-primary);background-color:#4169e11a;border-color:#4169e133}.test-action-btn.new-test:hover:not(:disabled){background-color:#4169e133;border-color:#4169e14d}.test-action-btn.primary{color:#4ade80e6;background-color:#4ade801a;border-color:#4ade8033}.test-action-btn.primary:hover:not(:disabled){background-color:#4ade8033;border-color:#4ade804d}.test-list-controls{border-bottom:1px solid #ffffff0d;flex-shrink:0;align-items:center;padding:8px 20px;display:flex}.test-select-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;padding:4px 8px;font-size:10px;transition:all .15s}.test-select-btn:hover{color:var(--text-normal);background-color:#ffffff0d}.test-progress{border-bottom:1px solid #ffffff0d;flex-shrink:0;padding:12px 20px}.test-progress-bar{background-color:#ffffff1a;border-radius:2px;height:4px;margin-bottom:8px;overflow:hidden}.test-progress-fill{background-color:var(--color-primary);height:100%;transition:width .3s}.test-progress-text{color:var(--text-muted);font-size:10px}.test-list-content{flex-direction:column;flex:1;min-height:0;padding:8px 12px;display:flex;overflow-y:auto}.test-list-content::-webkit-scrollbar{width:4px}.test-list-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.test-list-item{cursor:pointer;border-left:2px solid #0000;border-radius:3px;align-items:center;gap:8px;padding:6px 10px;transition:background-color .15s;display:flex}.test-list-item:hover{background-color:#ffffff0d}.test-list-item.selected{background-color:#ffffff08}.test-list-item.disabled{opacity:.5}.test-list-item.running{border-left-color:var(--color-primary);background-color:#60a5fa0d}.test-list-checkbox{cursor:pointer;flex-shrink:0;width:14px;height:14px}.test-list-status{flex-shrink:0;align-items:center;display:flex}.test-list-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.test-list-name{color:var(--text-normal);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.test-list-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.test-list-result{white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.test-list-result.passed{color:var(--color-green)}.test-list-result.failed{color:var(--color-red)}.test-list-result.error{color:var(--color-yellow)}.test-list-latency{color:var(--text-muted);flex-shrink:0;font-family:monospace;font-size:10px}.test-list-metrics{flex-shrink:0;align-items:center;gap:8px;display:flex}.test-list-tokens{color:var(--text-muted);opacity:.8;font-family:monospace;font-size:9px}.test-list-cost{color:var(--color-cyan);opacity:.9;font-family:monospace;font-size:9px}.test-list-judge-cost{color:var(--color-purple);opacity:.9;font-family:monospace;font-size:9px}.test-list-item-actions{opacity:0;align-items:center;gap:4px;transition:opacity .15s;display:flex}.test-list-item:hover .test-list-item-actions{opacity:1}.test-list-action-btn{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;transition:all .15s;display:flex}.test-list-action-btn:hover:not(:disabled){color:var(--text-normal);background-color:#ffffff1a}.test-list-action-btn:disabled{opacity:.3;cursor:not-allowed}.test-list-summary{color:var(--text-muted);background-color:#00000026;border-top:1px solid #ffffff14;flex-direction:column;flex-shrink:0;gap:6px;padding:8px 12px;font-size:11px;display:flex}.summary-row{align-items:center;gap:12px;display:flex}.summary-row-main{justify-content:space-between}.summary-row-stats{border-top:1px solid #ffffff0d;flex-wrap:wrap;gap:16px;padding-top:4px}.test-list-summary .pass-rate{font-weight:600}.test-list-summary .pass-rate.good{color:var(--color-green)}.test-list-summary .pass-rate.moderate{color:var(--color-yellow)}.test-list-summary .pass-rate.poor{color:var(--color-red)}.summary-test-count{flex-shrink:0;font-weight:500}.summary-stat{align-items:center;gap:6px;font-family:monospace;font-size:10px;display:flex}.stat-label{color:var(--text-muted);opacity:.7;text-transform:uppercase;letter-spacing:.3px;font-size:9px}.stat-value{color:var(--text-normal);align-items:center;gap:4px;display:flex}.stat-range{color:var(--text-muted);opacity:.6;font-size:9px}.stat-extra{color:var(--color-purple);opacity:.8}.test-list-empty,.test-list-loading,.test-list-error{min-height:120px;color:var(--text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:20px;font-size:12px;display:flex}.test-list-empty .hint{opacity:.7;font-size:11px}.test-list-loading{color:var(--color-primary)}.test-list-error{color:var(--color-red)}.context-menu-overlay{z-index:999;position:fixed;inset:0}.test-context-menu{z-index:1000;background-color:var(--color-secondary);border:1px solid #ffffff1a;border-radius:6px;min-width:140px;padding:4px;position:fixed;box-shadow:0 4px 12px #0000004d}.test-context-menu button{width:100%;color:var(--text-normal);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;padding:8px 12px;font-size:11px;transition:background-color .15s;display:flex}.test-context-menu button:hover:not(:disabled){background-color:#ffffff1a}.test-context-menu button:disabled{opacity:.4;cursor:not-allowed}.test-context-menu button.danger{color:var(--color-red)}.test-context-menu button.danger:hover{background-color:#f871711a}.context-menu-divider{background-color:#ffffff1a;height:1px;margin:4px 0}.delete-confirm-overlay{z-index:1000;background-color:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.delete-confirm-dialog{background-color:var(--color-secondary);text-align:center;border:1px solid #ffffff1a;border-radius:8px;width:300px;padding:20px}.delete-confirm-dialog h4{color:var(--text-normal);margin:0 0 8px;font-size:14px;font-weight:600}.delete-confirm-dialog p{color:var(--text-muted);margin:0 0 16px;font-size:12px}.delete-confirm-actions{justify-content:center;gap:8px;display:flex}.delete-confirm-actions button{cursor:pointer;border-radius:4px;padding:8px 16px;font-size:12px;transition:all .15s}.delete-confirm-actions button:first-child{color:var(--text-muted);background:0 0;border:1px solid #ffffff26}.delete-confirm-actions button:first-child:hover{background-color:#ffffff0d}.delete-confirm-actions button.danger{color:#fff;background-color:var(--color-red);border:none}.delete-confirm-actions button.danger:hover{background-color:#f87171e6}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.test-list-result.clickable{cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.test-list-result.clickable:hover{text-decoration-style:solid}.result-detail-overlay{z-index:1001;background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.result-detail-dialog{background-color:var(--color-secondary);border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;width:90%;max-width:650px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 8px 32px #0006}.result-detail-header{background-color:#0003;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.result-detail-header h4{color:var(--text-normal);align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;display:flex}.result-detail-header h4 svg{flex-shrink:0}.result-detail-close{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.result-detail-close:hover{color:var(--text-normal);background-color:#ffffff1a}.result-detail-content{flex-direction:column;flex:1;gap:16px;padding:16px;display:flex;overflow-y:auto}.result-detail-content::-webkit-scrollbar{width:4px}.result-detail-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.result-detail-section{flex-direction:column;gap:6px;display:flex}.result-detail-section label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-size:10px;font-weight:600}.result-detail-section>span{color:var(--text-normal);font-size:12px}.result-detail-message,.result-detail-output,.result-detail-input{color:var(--text-normal);white-space:pre-wrap;word-break:break-word;background-color:#0000004d;border:1px solid #ffffff14;border-radius:4px;max-height:200px;margin:0;padding:12px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:11px;overflow-y:auto}.result-detail-input{max-height:150px}.result-detail-message.error{color:var(--color-red);border-color:#f871714d}.result-detail-message::-webkit-scrollbar{width:4px}.result-detail-output::-webkit-scrollbar{width:4px}.result-detail-input::-webkit-scrollbar{width:4px}.result-detail-message::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.result-detail-output::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.result-detail-input::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.result-metrics-row{color:var(--text-normal);flex-wrap:wrap;gap:16px;font-family:monospace;font-size:12px;display:flex}.metric-item{gap:4px;display:flex}.metric-label{color:var(--text-muted)}.validator-results-list{flex-direction:column;gap:8px;display:flex}.validator-result-item{background-color:#0003;border-left:3px solid;border-radius:4px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.validator-result-item.passed{border-left-color:var(--color-green)}.validator-result-item.failed{border-left-color:var(--color-red)}.validator-header{align-items:center;gap:8px;display:flex}.validator-status{font-size:14px;font-weight:600}.validator-result-item.passed .validator-status{color:var(--color-green)}.validator-result-item.failed .validator-status{color:var(--color-red)}.validator-type{color:var(--text-normal);font-size:11px;font-weight:500}.validator-value{color:var(--color-cyan);text-overflow:ellipsis;white-space:nowrap;background:#0003;border-radius:3px;max-width:300px;padding:2px 6px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:10px;overflow:hidden}.validator-criteria{color:var(--text-muted);border-left:2px solid var(--color-purple);background:#00000026;border-radius:3px;margin-top:4px;padding:6px 8px;font-size:10px}.criteria-label{color:var(--color-purple);font-weight:500}.validator-reasoning{color:var(--text-muted);white-space:pre-wrap;word-break:break-word;background:#0003;border-radius:3px;max-height:120px;margin:4px 0 0;padding:8px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:10px;overflow-y:auto}.validator-reasoning::-webkit-scrollbar{width:4px}.validator-reasoning::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.validator-error{color:var(--color-red);margin-top:4px;font-size:10px}.result-detail-header-actions{align-items:center;gap:8px;display:flex}.copy-btn,.result-detail-copy-all{color:var(--text-muted);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:3px;align-items:center;gap:4px;padding:4px 8px;font-size:9px;transition:all .15s;display:flex}.copy-btn:hover,.result-detail-copy-all:hover{color:var(--text-normal);background:#ffffff1a;border-color:#ffffff26}.result-detail-rerun{color:var(--color-green);cursor:pointer;background:#4ade801a;border:1px solid #4ade8033;border-radius:3px;align-items:center;gap:4px;padding:4px 10px;font-size:10px;transition:all .15s;display:flex}.result-detail-rerun:hover:not(:disabled){background:#4ade8033;border-color:#4ade804d}.result-detail-rerun:disabled{opacity:.5;cursor:not-allowed}.section-header{justify-content:space-between;align-items:center;display:flex}.summary-export{gap:6px;margin-left:auto;padding-left:12px;display:flex}.export-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:3px;align-items:center;gap:4px;padding:3px 8px;font-size:9px;transition:all .15s;display:flex}.export-btn:hover{color:var(--text-normal);background:#ffffff0d;border-color:#fff3}.history-toggle{color:var(--text-muted);cursor:pointer;text-align:left;background:#ffffff0d;border:1px solid #ffffff14;border-radius:4px;align-items:center;gap:6px;width:100%;padding:8px 12px;font-size:10px;font-weight:500;transition:all .15s;display:flex}.history-toggle:hover{background:#ffffff14;border-color:#ffffff1f}.history-toggle svg{transition:transform .2s}.history-toggle svg.rotated{transform:rotate(180deg)}.test-history-list{flex-direction:column;gap:4px;margin-top:8px;display:flex}.history-item{background:#00000026;border-left:2px solid #0000;border-radius:4px;align-items:center;gap:8px;padding:8px 12px;font-size:10px;display:flex}.history-item.passed{border-left-color:var(--color-green)}.history-item.failed{border-left-color:var(--color-red)}.history-item .history-status{font-weight:600}.history-item.passed .history-status{color:var(--color-green)}.history-item.failed .history-status{color:var(--color-red)}.history-date{color:var(--text-muted);flex:1}.history-latency{color:var(--text-muted);font-family:monospace}.history-empty,.history-loading{color:var(--text-muted);background:#0000001a;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:10px;display:flex}
.lab-panel{background-color:var(--color-secondary);border-left:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;width:500px;min-height:0;display:flex;overflow:hidden}.lab-editor-screen{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.lab-nav-bar{background-color:#00000026;border-bottom:1px solid #ffffff14;flex-shrink:0;align-items:center;gap:10px;padding:6px 10px;display:flex}.lab-back-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:3px;align-items:center;gap:4px;padding:4px 8px;font-size:10px;font-weight:500;transition:all .15s;display:flex}.lab-back-btn:hover{color:var(--text-normal);background-color:#ffffff0d;border-color:#ffffff26}.lab-nav-title{color:var(--text-normal);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.lab-nav-name-input{min-width:0;color:var(--text-normal);background:0 0;border:1px solid #0000;border-radius:3px;flex:1;padding:4px 8px;font-size:11px;font-weight:500;transition:all .15s}.lab-nav-name-input:hover{background-color:#0000001a;border-color:#ffffff1a}.lab-nav-name-input:focus{background-color:#0003;border-color:#4ade8066;outline:none}.lab-nav-name-input::placeholder{color:var(--text-muted);font-style:italic}.lab-nav-save-btn{color:#4ade80e6;cursor:pointer;white-space:nowrap;background-color:#4ade801a;border:1px solid #4ade8033;border-radius:3px;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-weight:500;transition:all .15s;display:flex}.lab-nav-save-btn:hover:not(:disabled){background-color:#4ade8033;border-color:#4ade804d}.lab-nav-save-btn:disabled{opacity:.5;cursor:not-allowed}.lab-panel-content{flex:1;min-height:0;overflow:hidden auto}.lab-panel-content::-webkit-scrollbar{width:4px}.lab-panel-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.lab-tools-section{border-top:1px solid #ffffff14}.lab-tools-section .lab-section-icon{color:#fb923ccc}.lab-add-tool-btn{color:#fb923ccc!important}.lab-add-tool-btn:hover{background-color:#fb923c1a!important}.lab-tools-list{flex-direction:column;gap:8px;display:flex}.lab-tool-card{background-color:#00000026;border:1px solid #ffffff14;border-radius:4px;padding:8px}.lab-tool-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.lab-tool-name-row{flex:1;align-items:center;gap:6px;display:flex}.lab-tool-label{color:var(--text-muted);text-transform:uppercase;font-size:9px}.lab-tool-name-input{color:var(--text-normal);background:0 0;border:none;border-bottom:1px solid #ffffff1a;flex:1;padding:2px 4px;font-family:monospace;font-size:11px}.lab-tool-name-input:focus{border-bottom-color:#fb923c80;outline:none}.lab-tool-remove-btn{width:20px;height:20px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;transition:all .15s;display:flex}.lab-tool-remove-btn:hover{color:var(--color-red);background-color:#f871711a}.lab-tool-body{flex-direction:column;gap:4px;display:flex}.lab-tool-return-header{justify-content:space-between;align-items:center;display:flex}.lab-tool-expand-btn{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;transition:all .15s;display:flex}.lab-tool-expand-btn:hover{color:var(--text-normal);background-color:#ffffff1a}.lab-tool-textarea{width:100%;color:var(--text-normal);resize:none;background-color:#0003;border:1px solid #ffffff1a;border-radius:3px;padding:6px;font-family:monospace;font-size:10px}.lab-tool-textarea:focus{border-color:#fb923c66;outline:none}.lab-tool-textarea.invalid{border-color:#f8717180}.lab-panel-placeholder{justify-content:center;align-items:center;gap:var(--size-4-2);height:100%;color:var(--text-muted);flex-direction:column;font-size:11px;display:flex}
.pg-section{border-bottom:1px solid #ffffff14;flex-direction:column;display:flex}.pg-section.collapsed{flex-shrink:0}.pg-section.expanded{min-height:80px}.pg-section-header{cursor:default;background-color:#00000026;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.pg-section-header:hover{background-color:#0003}.pg-section-title{text-transform:uppercase;letter-spacing:.5px;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-muted);align-items:center;gap:6px;font-size:10px;font-weight:600;display:flex}.pg-section-icon{opacity:.7}.pg-chevron{opacity:.5;margin-left:2px}.pg-section-controls{align-items:center;gap:6px;display:flex}.pg-section-badge{color:var(--text-muted);background:#ffffff0d;border-radius:3px;padding:2px 6px;font-family:monospace;font-size:9px}.pg-badge-passed{color:var(--color-green);margin-right:4px}.pg-badge-failed{color:var(--color-red)}.pg-section-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;align-items:center;gap:3px;padding:3px 6px;font-size:9px;transition:all .15s;display:flex}.pg-section-btn:hover{color:var(--text-normal);background-color:#ffffff14}.pg-section-btn.danger:hover{color:var(--color-red)}.pg-section-btn.active{color:var(--color-primary)}.pg-section-content{background-color:#0000000d;flex-direction:column;gap:6px;padding:8px 12px;display:flex}.pg-empty-state{color:var(--text-muted);text-align:center;padding:12px;font-size:10px;font-style:italic}.pg-variables .pg-section-icon{color:var(--color-yellow)}.pg-variables .pg-section-title{color:#facc15cc}.pg-variables-list{gap:0}.pg-var-row{border-bottom:1px solid #ffffff0a;align-items:center;gap:6px;padding:4px 0;display:flex}.pg-var-row:last-child{border-bottom:none}.pg-var-name{color:var(--text-normal);text-overflow:ellipsis;white-space:nowrap;min-width:60px;max-width:80px;font-size:10px;font-weight:500;overflow:hidden}.pg-var-value{min-width:0;color:var(--text-normal);background-color:#0000004d;border:1px solid #ffffff1a;border-radius:3px;outline:none;flex:1;padding:4px 6px;font-family:monospace;font-size:10px}.pg-var-value:focus{border-color:#facc1566}.pg-var-expand{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pg-var-expand:hover{color:var(--text-normal);background-color:#ffffff1a}.pg-var-type{color:var(--text-muted);background-color:#ffffff14;border-radius:2px;flex-shrink:0;padding:1px 4px;font-family:monospace;font-size:8px}.pg-var-type-string{color:var(--color-green);background:#50fa7b26}.pg-var-type-number{color:var(--color-cyan);background:#8be9fd26}.pg-var-type-boolean{color:var(--color-purple);background:#bd93f926}.pg-var-type-array{color:var(--color-orange);background:#ffb86c26}.pg-var-type-object{color:var(--color-yellow);background:#f1fa8c26}.pg-var-type-enum{color:var(--color-pink);background:#ff79c626}.pg-var-type-switch{color:var(--color-purple);background:#bd93f926}.pg-var-type-map{color:var(--color-yellow);background:#f1fa8c26}.pg-var-select{min-width:0;color:var(--text-normal);cursor:pointer;appearance:none;background-color:#0000004d;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 4px center;background-repeat:no-repeat;border:1px solid #ffffff1a;border-radius:3px;outline:none;flex:1;padding:4px 18px 4px 6px;font-family:monospace;font-size:10px}.pg-var-select:focus{border-color:#facc1566}.pg-var-select option{background:var(--color-background);color:var(--text-normal)}.pg-var-switch-wrapper{flex:1;align-items:center;gap:4px;min-width:0;display:flex}.pg-var-switch-wrapper .pg-var-select{flex:none;min-width:50px;max-width:70px}.pg-var-switch-preview{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;background:#bd93f91a;border-radius:2px;max-width:80px;padding:2px 4px;font-family:monospace;font-size:9px;overflow:hidden}.pg-var-map-btn{color:var(--color-yellow);cursor:pointer;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#f1fa8c1a;border:1px solid #f1fa8c33;border-radius:3px;flex:1;padding:4px 6px;font-family:monospace;font-size:10px;transition:all .15s;overflow:hidden}.pg-var-map-btn:hover{background:#f1fa8c33;border-color:#f1fa8c66}.pg-history .pg-section-icon{color:var(--color-cyan)}.pg-history .pg-section-title{color:#8be9fdcc}.pg-history-messages{gap:6px}.pg-message{background:#0003;border-left:2px solid #0000;border-radius:4px;padding:6px 8px}.pg-message-injected{border-left-color:var(--color-purple);background:#8b5cf614}.pg-message-header{align-items:center;gap:6px;margin-bottom:4px;display:flex}.pg-message-icon{color:var(--color-purple)}.pg-message-role-badge{color:var(--text-muted);background:#ffffff1a;border-radius:2px;padding:1px 4px;font-family:monospace;font-size:9px}.pg-message-label{color:var(--text-muted);opacity:.7;font-size:9px}.pg-message-preview{color:var(--text-muted);white-space:pre-wrap;word-break:break-word;max-height:60px;font-size:10px;line-height:1.4;overflow:hidden}.pg-message-row{align-items:flex-start;gap:4px;display:flex}.pg-message-row .pg-message{flex:1}.pg-message-system{border-left-color:var(--color-purple)}.pg-message-user{border-left-color:var(--color-cyan)}.pg-message-assistant{border-left-color:var(--color-green)}.pg-message-role{color:var(--text-normal);background:#0000004d;border:1px solid #ffffff1a;border-radius:3px;outline:none;margin-bottom:4px;padding:2px 4px;font-size:9px}.pg-message-content{width:100%;color:var(--text-normal);resize:vertical;background:#0003;border:1px solid #ffffff14;border-radius:3px;outline:none;min-height:40px;padding:6px;font-family:inherit;font-size:10px}.pg-message-content:focus{border-color:#8be9fd66}.pg-message-delete{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;margin-top:2px;display:flex}.pg-message-delete:hover{color:var(--color-red);background:#ff55551a}.pg-message-preview.clickable{cursor:pointer;transition:background-color .15s}.pg-message-preview.clickable:hover{background:#8b5cf61a;border-radius:4px}.view-full-hint{color:var(--color-primary);opacity:.7;margin-top:6px;font-size:10px;display:block}.pg-message-preview.clickable:hover .view-full-hint{opacity:1}.message-full-content{white-space:pre-wrap;word-break:break-word;width:100%;max-height:60vh;color:var(--text-normal);background:var(--color-background);box-sizing:border-box;border:1px solid #ffffff1a;border-radius:6px;margin:0;padding:12px;font-family:Monaco,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;overflow-y:auto}.modal-copy-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 16px;font-size:12px;font-weight:500;transition:background-color .15s;display:flex}.modal-copy-btn:hover{background:var(--color-primary-hover)}.pg-tools-section .pg-section-icon{color:var(--color-orange)}.pg-tools-section .pg-section-title{color:#ffb86ccc}.pg-tools-list{gap:8px}.pg-tool-card{background:#0003;border:1px solid #ffffff14;border-radius:4px;padding:8px}.pg-tool-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.pg-tool-name-row{flex:1;align-items:center;gap:4px;display:flex}.pg-tool-label{color:var(--text-muted);font-family:monospace;font-size:9px}.pg-tool-name-input{color:var(--color-orange);background:#0000004d;border:1px solid #ffffff1a;border-radius:3px;outline:none;flex:1;padding:3px 6px;font-family:monospace;font-size:10px}.pg-tool-name-input:focus{border-color:#ffb86c66}.pg-tool-remove-btn{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;display:flex}.pg-tool-remove-btn:hover{color:var(--color-red);background:#ff55551a}.pg-tool-body{flex-direction:column;gap:4px;display:flex}.pg-tool-return-header{justify-content:space-between;align-items:center;display:flex}.pg-tool-expand-btn{width:16px;height:16px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:2px;justify-content:center;align-items:center;display:flex}.pg-tool-expand-btn:hover{color:var(--text-normal);background:#ffffff1a}.pg-tool-textarea{width:100%;color:var(--text-normal);resize:vertical;background:#00000040;border:1px solid #ffffff1a;border-radius:3px;outline:none;min-height:40px;padding:6px;font-family:monospace;font-size:10px}.pg-tool-textarea:focus{border-color:#ffb86c66}.pg-tool-textarea.invalid{border-color:#ff555580}.pg-empty-hint{opacity:.7;margin-top:4px;font-size:9px;display:block}.pg-input .pg-section-icon{color:var(--color-green)}.pg-input .pg-section-title{color:#50fa7bcc}.pg-input-content{gap:8px}.pg-input-textarea{width:100%;color:var(--text-normal);resize:vertical;background:#00000040;border:1px solid #ffffff1a;border-radius:4px;outline:none;min-height:60px;padding:8px;font-family:inherit;font-size:11px}.pg-input-textarea:focus{border-color:#50fa7b66}.pg-expected-output{border-top:1px solid #ffffff0f;padding-top:8px}.pg-expected-label{color:var(--text-muted);text-transform:uppercase;margin-bottom:4px;font-size:9px;display:block}.pg-expected-textarea{width:100%;color:var(--text-muted);resize:vertical;background:#0003;border:1px solid #ffffff14;border-radius:3px;outline:none;min-height:40px;padding:6px;font-family:inherit;font-size:10px}.pg-grading .pg-section-icon{color:var(--color-orange)}.pg-grading .pg-section-title{color:#ffb86ccc}.pg-grading-list{gap:4px}.pg-validator-row{background:#00000026;border-left:2px solid #0000;border-radius:3px;align-items:center;gap:4px;padding:4px 6px;display:flex}.pg-validator-row.passed{border-left-color:var(--color-green);background:#50fa7b0d}.pg-validator-row.failed{border-left-color:var(--color-red);background:#ff55550d}.pg-validator-row.loading{border-left-color:var(--color-cyan)}.pg-validator-result{border-radius:50%;flex-shrink:0;width:8px;height:8px}.pg-validator-result.passed{background-color:var(--color-green)}.pg-validator-result.failed{background-color:var(--color-red)}.pg-validator-result.loading{background:0 0}.pg-validator-spinner{color:var(--color-cyan);animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pg-validator-type{flex-shrink:0;position:relative}.pg-validator-type select{appearance:none;color:var(--text-normal);cursor:pointer;background:#0000004d;border:1px solid #ffffff1a;border-radius:3px;outline:none;padding:3px 18px 3px 6px;font-size:9px}.pg-validator-arrow{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.pg-validator-value{min-width:0;color:var(--text-normal);background:#00000040;border:1px solid #ffffff14;border-radius:3px;outline:none;flex:1;padding:3px 6px;font-family:monospace;font-size:10px}.pg-validator-value:focus{border-color:#ffb86c66}.pg-option-btn,.pg-flag-btn{color:var(--text-muted);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:2px;padding:2px 4px;font-size:8px}.pg-option-btn:hover,.pg-flag-btn:hover{background:#ffffff1a}.pg-option-btn.active,.pg-flag-btn.active{color:var(--color-orange);background:#ffb86c33;border-color:#ffb86c66}.pg-flags{gap:2px;display:flex}.pg-validator-help{position:relative}.pg-help-btn{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;display:flex}.pg-help-btn:hover,.pg-help-btn.active{color:var(--text-normal);background:#ffffff14}.pg-help-tooltip{background:var(--color-secondary);z-index:100;border:1px solid #ffffff26;border-radius:4px;width:200px;margin-top:4px;padding:8px;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #0000004d}.pg-help-header{color:var(--text-normal);margin-bottom:4px;font-size:10px;font-weight:600}.pg-help-desc{color:var(--text-muted);margin-bottom:6px;font-size:9px;line-height:1.4}.pg-help-examples{flex-direction:column;gap:2px;display:flex}.pg-help-example{text-align:left;width:100%;color:var(--text-muted);cursor:pointer;background:#0003;border:1px solid #ffffff14;border-radius:2px;padding:4px 6px;font-size:9px;display:block}.pg-help-example:hover{color:var(--text-normal);background:#0000004d}.pg-help-example code{color:var(--color-cyan);font-family:monospace}.pg-expand-btn,.pg-remove-btn{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pg-expand-btn:hover{color:var(--text-normal);background:#ffffff14}.pg-remove-btn:hover{color:var(--color-red);background:#ff55551a}.pg-modal-overlay{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pg-modal{background-color:var(--color-secondary);border:1px solid #ffffff26;border-radius:8px;flex-direction:column;width:90%;max-width:400px;max-height:60vh;display:flex;box-shadow:0 8px 32px #0006}.pg-modal-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.pg-modal-title{color:var(--text-normal);font-family:monospace;font-size:12px;font-weight:600}.pg-modal-close{width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;display:flex}.pg-modal-close:hover{color:var(--text-normal);background-color:#ffffff1a}.pg-modal-textarea{min-height:150px;color:var(--text-normal);resize:vertical;background-color:#0000004d;border:1px solid #ffffff1a;border-radius:4px;outline:none;flex:1;margin:10px 14px;padding:10px;font-family:monospace;font-size:11px}.pg-modal-textarea:focus{border-color:#ffffff40}.pg-modal-actions{border-top:1px solid #ffffff1a;justify-content:flex-end;gap:8px;padding:10px 14px;display:flex}.pg-modal-cancel,.pg-modal-save{cursor:pointer;border-radius:4px;padding:5px 12px;font-size:11px;transition:all .15s}.pg-modal-cancel{color:var(--text-muted);background:0 0;border:1px solid #fff3}.pg-modal-cancel:hover{color:var(--text-normal);background-color:#ffffff0d}.pg-modal-save{background-color:var(--color-primary);color:#fff;border:none;font-weight:500}.pg-modal-save:hover{opacity:.9}
.playground-panel{background-color:var(--color-secondary);border-left:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;width:500px;min-height:0;display:flex;overflow:hidden}.playground-content{flex:1;min-height:0;overflow:hidden auto}.playground-content::-webkit-scrollbar{width:4px}.playground-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.playground-input-section{padding:0 12px}.playground-save-section{margin-top:8px;padding:12px}.playground-save-btn{color:#4ade80e6;cursor:pointer;background-color:#4ade801a;border:1px solid #4ade8033;border-radius:4px;justify-content:center;align-items:center;gap:6px;width:100%;padding:10px 12px;font-size:11px;font-weight:500;transition:all .15s;display:flex}.playground-save-btn:hover:not(:disabled){background-color:#4ade8033;border-color:#4ade804d}.playground-save-btn:disabled{opacity:.4;cursor:not-allowed}.playground-save-modal-backdrop{z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.playground-save-modal{background:var(--color-background);border:1px solid #ffffff1f;border-radius:12px;width:100%;max-width:400px;overflow:hidden}.playground-save-modal-header{border-bottom:1px solid #ffffff1a;padding:16px 20px}.playground-save-modal-header h3{color:var(--text-normal);margin:0;font-size:15px;font-weight:600}.playground-save-modal-body{flex-direction:column;gap:14px;padding:20px;display:flex}.playground-save-field{flex-direction:column;gap:6px;display:flex}.playground-save-field label{color:var(--text-normal);font-size:12px;font-weight:600}.playground-save-field input{background:var(--color-secondary);color:var(--text-normal);border:1px solid #ffffff1f;border-radius:6px;padding:10px 12px;font-size:13px}.playground-save-field input:focus{border-color:var(--color-primary);outline:none}.playground-save-checkbox{color:var(--text-muted);cursor:pointer;align-items:center;gap:10px;font-size:12px;display:flex}.playground-save-checkbox input{cursor:pointer;width:16px;height:16px}.playground-save-modal-footer{border-top:1px solid #ffffff1a;justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.playground-save-modal-footer button{cursor:pointer;border-radius:6px;padding:8px 14px;font-size:12px;font-weight:600;transition:all .15s}.playground-save-cancel-btn{color:var(--text-muted);background:0 0;border:1px solid #ffffff1f}.playground-save-cancel-btn:hover{color:var(--text-normal);background:#ffffff14}.playground-save-submit-btn{color:#4ade80f2;background:#4ade8026;border:1px solid #4ade804d}.playground-save-submit-btn:hover:not(:disabled){background:#4ade8040}.playground-save-submit-btn:disabled{opacity:.5;cursor:not-allowed}.playground-save-section-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:12px;margin-bottom:8px;font-size:10px;font-weight:600}.playground-save-model-row{margin-bottom:8px}.playground-save-row{align-items:center;gap:16px;display:flex}.playground-save-field-inline{flex:1;align-items:center;gap:8px;display:flex}.playground-save-field-inline label{color:var(--text-muted);min-width:40px;font-size:11px}.playground-save-select-wrapper{flex:1;position:relative}.playground-save-select{appearance:none;background:var(--color-secondary);width:100%;color:var(--text-normal);cursor:pointer;border:1px solid #ffffff1f;border-radius:6px;padding:8px 28px 8px 10px;font-size:12px}.playground-save-select:focus{border-color:var(--color-primary);outline:none}.playground-save-select-chevron{pointer-events:none;color:var(--text-muted);position:absolute;top:50%;right:8px;transform:translateY(-50%)}.playground-save-select-small{flex:none;min-width:90px}.playground-save-input-small{background:var(--color-secondary);width:60px;color:var(--text-normal);border:1px solid #ffffff1f;border-radius:6px;padding:8px 10px;font-size:12px}.playground-save-input-small:focus{border-color:var(--color-primary);outline:none}
.outline-panel{background:var(--color-secondary);border-left:1px solid #ffffff1a;flex-direction:column;width:300px;height:100%;display:flex;overflow:hidden}.outline-panel-header{padding:var(--size-4-3)var(--size-4-4);background:var(--color-background);border-bottom:1px solid #ffffff1a;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.outline-panel-title{color:var(--color-foreground);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.outline-count{color:var(--color-muted);background:#ffffff0d;border-radius:10px;padding:2px 6px;font-size:11px;font-weight:500}.outline-panel-close{color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.outline-panel-close:hover{color:var(--color-foreground);background:#ffffff1a}.outline-panel-content{padding:var(--size-4-2);flex:1;overflow:hidden auto}.outline-panel-content::-webkit-scrollbar{width:8px}.outline-panel-content::-webkit-scrollbar-track{background:0 0}.outline-panel-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.outline-panel-content::-webkit-scrollbar-thumb:hover{background:#ffffff26}.outline-empty{justify-content:center;align-items:center;gap:var(--size-4-2);padding:var(--size-4-8)var(--size-4-4);text-align:center;color:var(--color-muted);flex-direction:column;height:100%;display:flex}.outline-empty p{color:var(--color-foreground);opacity:.5;margin:0;font-size:13px;font-weight:500}.outline-empty span{max-width:200px;font-size:11px;line-height:1.5}.outline-list{flex-direction:column;gap:1px;display:flex}.outline-item{cursor:pointer;text-align:left;color:var(--color-foreground);background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;width:100%;padding:6px 8px;font-size:12px;transition:background .1s;display:flex}.outline-item:hover{background:#ffffff0d}.outline-item:active{background:#ffffff14}.outline-item.indent-1{padding-left:8px}.outline-item.indent-2{padding-left:16px}.outline-item.indent-3{padding-left:24px}.outline-item.indent-4{padding-left:32px}.outline-item.indent-5{padding-left:40px}.outline-item.indent-6{padding-left:48px}.outline-item-icon{flex-shrink:0}.outline-item-text{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.outline-item.heading .outline-item-text{font-weight:500}.outline-item.injection .outline-item-text,.outline-item.variable .outline-item-text{font-family:Menlo,Monaco,monospace;font-size:11px}.outline-item-line{color:var(--color-muted);flex-shrink:0;font-family:Menlo,Monaco,monospace;font-size:10px}@media (max-width:768px){.outline-panel{z-index:1000;width:280px;position:fixed;top:0;bottom:0;right:0;box-shadow:-2px 0 8px #0000004d}}
.conversation-list{flex:1;min-width:0;position:relative}.conversation-list-trigger{color:var(--color-foreground);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:6px;width:100%;padding:6px 10px;font-size:12px;transition:all .15s;display:flex}.conversation-list-trigger:hover{background:#ffffff1a;border-color:#ffffff26}.conversation-list-trigger svg:first-child{color:var(--color-primary);flex-shrink:0}.conversation-list-trigger svg:last-child{color:var(--color-muted);flex-shrink:0;margin-left:auto}.conversation-list-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.conversation-list-dropdown{background:var(--color-background);z-index:100;border:1px solid #ffffff1a;border-radius:8px;min-width:240px;margin-top:4px;animation:.15s slideDown;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 4px 12px #0000004d}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.conversation-list-new{width:100%;color:var(--color-primary);cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ffffff1a;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:500;transition:background .15s;display:flex}.conversation-list-new:hover,.conversation-list-new.focused{background:#4169e11a}.conversation-list-new.focused{outline:2px solid var(--color-primary);outline-offset:-2px}.conversation-list-items{max-height:240px;overflow-y:auto}.conversation-list-items::-webkit-scrollbar{width:6px}.conversation-list-items::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.conversation-list-loading,.conversation-list-empty{text-align:center;color:var(--color-muted);padding:16px;font-size:12px}.conversation-list-item{cursor:pointer;align-items:center;padding:8px 12px;transition:background .15s;display:flex}.conversation-list-item:hover,.conversation-list-item.focused{background:#ffffff0d}.conversation-list-item.focused{outline:2px solid var(--color-primary);outline-offset:-2px}.conversation-list-item.focused .conversation-list-item-actions{opacity:1}.conversation-list-item.active{border-left:2px solid var(--color-primary);background:#4169e11a}.conversation-list-item-content{flex:1;min-width:0}.conversation-list-item-title{color:var(--color-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.conversation-list-item-meta{color:var(--color-muted);margin-top:2px;font-size:11px;display:block}.conversation-list-item-actions{opacity:0;gap:4px;transition:opacity .15s;display:flex}.conversation-list-item:hover .conversation-list-item-actions{opacity:1}.action-btn{width:22px;height:22px;color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.action-btn:hover{color:var(--color-foreground);background:#ffffff1a}.action-btn.delete:hover{color:var(--color-red)}.conversation-list-item-edit{align-items:center;gap:4px;width:100%;display:flex}.conversation-list-item-edit input{background:var(--color-secondary);border:1px solid var(--color-primary);color:var(--color-foreground);border-radius:4px;outline:none;flex:1;padding:4px 8px;font-size:12px}.edit-btn{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;padding:0;transition:all .15s;display:flex}.edit-btn.save{color:var(--color-green)}.edit-btn.save:hover{background:#50fa7b33}.edit-btn.cancel{color:var(--color-muted)}.edit-btn.cancel:hover{color:var(--color-foreground);background:#ffffff1a}
.diff-view{margin-top:var(--size-4-3);background:var(--color-background);border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.diff-view.diff-accepted{border-color:#50fa7b4d}.diff-view.diff-rejected{opacity:.6;border-color:#ff55554d}.diff-header{background:#ffffff08;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.diff-title{color:var(--color-muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.diff-stats{gap:8px;font-family:monospace;font-size:11px;display:flex}.diff-stat-add{color:var(--color-green)}.diff-stat-remove{color:var(--color-red)}.diff-content{flex-direction:column;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:12px;line-height:1.5;display:flex;overflow-x:auto}.diff-line{white-space:pre-wrap;word-break:break-word;padding:2px 12px;display:flex}.diff-line.diff-add{color:var(--color-green);background:#50fa7b1a}.diff-line.diff-remove{color:var(--color-red);background:#ff55551a;-webkit-text-decoration:line-through #ff555580;text-decoration:line-through #ff555580}.diff-line.diff-same{color:var(--color-muted)}.diff-prefix{text-align:center;width:16px;color:inherit;opacity:.7;-webkit-user-select:none;user-select:none;flex-shrink:0}.diff-text{flex:1;min-width:0}.diff-explanation{color:var(--color-foreground);background:#ffffff05;border-top:1px solid #ffffff0d;padding:10px 12px;font-size:12px;line-height:1.5}.diff-actions{background:#ffffff05;border-top:1px solid #ffffff1a;gap:8px;padding:10px 12px;display:flex}.diff-accept-btn,.diff-reject-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.diff-accept-btn{color:var(--color-green);background:#50fa7b26}.diff-accept-btn:hover{background:#50fa7b40}.diff-reject-btn{color:var(--color-red);background:#ff55551a}.diff-reject-btn:hover{background:#f553}.diff-status{text-transform:uppercase;letter-spacing:.5px;text-align:center;border-top:1px solid #ffffff1a;padding:8px 12px;font-size:11px;font-weight:600}.diff-status-accepted{color:var(--color-green);background:#50fa7b14}.diff-status-rejected{color:var(--color-red);background:#ff555514}
.quick-actions{flex-direction:column;align-items:center;gap:16px;padding:24px 16px;display:flex}.quick-actions-title{color:var(--color-muted);margin:0;font-size:14px}.quick-actions-list{flex-direction:column;gap:8px;width:100%;display:flex}.quick-action-btn{color:var(--color-foreground);cursor:pointer;text-align:left;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:10px;padding:12px 16px;font-size:13px;transition:all .15s;display:flex}.quick-action-btn:hover{border-color:var(--color-primary);background:#ffffff1a}.quick-action-btn:active{transform:scale(.98)}.quick-action-btn svg{color:var(--color-muted);flex-shrink:0}.quick-action-btn:hover svg{color:var(--color-primary)}
.selection-context{background:#4169e11a;border:1px solid #4169e14d;border-radius:6px;margin:0 12px 8px;padding:8px 12px}.selection-context-header{color:var(--color-primary);align-items:center;gap:6px;margin-bottom:4px;font-size:11px;display:flex}.selection-context-header span{flex:1}.selection-clear-btn{color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:2px;transition:all .15s;display:flex}.selection-clear-btn:hover{color:var(--color-foreground);background:#ffffff1a}.selection-context-text{color:var(--color-foreground);white-space:pre-wrap;word-break:break-word;font-size:12px;font-family:var(--font-mono,"Menlo","Monaco","Consolas",monospace);max-height:80px;line-height:1.4;overflow-y:auto}
.prompt-generator{flex-direction:column;gap:16px;height:100%;padding:20px 16px;display:flex}.prompt-generator-header{align-items:center;gap:10px;display:flex}.prompt-generator-icon{color:var(--color-primary)}.prompt-generator-title{color:var(--color-foreground);margin:0;font-size:16px;font-weight:600}.prompt-generator-description{color:var(--color-muted);margin:0;font-size:13px;line-height:1.5}.prompt-generator-examples{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.prompt-generator-examples-label{color:var(--color-muted);font-size:12px}.prompt-generator-example{color:var(--color-foreground);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;transition:all .15s;display:flex}.prompt-generator-example:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:#4169e11a}.prompt-generator-example:disabled{opacity:.5;cursor:not-allowed}.prompt-generator-example svg{flex-shrink:0}.prompt-generator-form{flex-direction:column;gap:12px;margin-top:auto;display:flex}.prompt-generator-input{width:100%;color:var(--color-foreground);resize:none;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;outline:none;padding:12px;font-family:inherit;font-size:13px;transition:all .15s}.prompt-generator-input::placeholder{color:var(--color-muted)}.prompt-generator-input:focus{border-color:var(--color-primary);background:#ffffff14}.prompt-generator-input:disabled{opacity:.6}.prompt-generator-submit{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.prompt-generator-submit:hover:not(:disabled){background:var(--color-primary-hover)}.prompt-generator-submit:disabled{opacity:.5;cursor:not-allowed}.prompt-generator-submit svg{flex-shrink:0}
.generated-prompt-preview{background:#ffffff08;border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;gap:12px;margin:12px;padding:16px;display:flex}.generated-prompt-header{justify-content:space-between;align-items:center;display:flex}.generated-prompt-label{color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.generated-prompt-streaming{color:var(--color-muted);align-items:center;gap:6px;font-size:11px;display:flex}.generated-prompt-streaming .spinning{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.generated-prompt-content{background:var(--color-background);border-radius:6px;max-height:300px;padding:12px;overflow-y:auto}.generated-prompt-content::-webkit-scrollbar{width:6px}.generated-prompt-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.generated-prompt-code{color:var(--color-foreground);white-space:pre-wrap;word-wrap:break-word;margin:0;font-family:JetBrains Mono,Fira Code,monospace;font-size:12px;line-height:1.6}.generated-prompt-empty{color:var(--color-muted);font-size:12px;font-style:italic}.generated-prompt-actions{gap:8px;display:flex}.generated-prompt-apply{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.generated-prompt-apply:hover:not(:disabled){background:var(--color-primary-hover)}.generated-prompt-apply:disabled{opacity:.5;cursor:not-allowed}.generated-prompt-regenerate{color:var(--color-foreground);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:13px;transition:all .15s;display:flex}.generated-prompt-regenerate:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff26}.generated-prompt-regenerate:disabled{opacity:.5;cursor:not-allowed}
.copilot-sidebar{background:var(--color-secondary);border-left:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;width:320px;height:100%;display:flex;overflow:hidden}.copilot-header{background:var(--color-background);border-bottom:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;gap:8px;padding:10px 12px;display:flex}.copilot-header-top{justify-content:space-between;align-items:center;display:flex}.copilot-header-bottom{align-items:center;gap:8px;display:flex}.copilot-title{color:var(--color-foreground);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.copilot-title svg{color:var(--color-primary)}.copilot-header-actions{align-items:center;gap:2px;display:flex}.copilot-action-btn{color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.copilot-action-btn:hover{color:var(--color-foreground);background:#ffffff1a}.copilot-close-btn{color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.copilot-close-btn:hover{color:var(--color-foreground);background:#ffffff1a}.copilot-content{flex-direction:column;flex:1;display:flex;overflow:hidden auto}.copilot-content::-webkit-scrollbar{width:8px}.copilot-content::-webkit-scrollbar-track{background:0 0}.copilot-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.copilot-content::-webkit-scrollbar-thumb:hover{background:#ffffff26}.chat-messages{flex-direction:column;flex:1;gap:12px;padding:12px;display:flex}.chat-messages-empty{justify-content:center;align-items:center;gap:var(--size-4-2);padding:var(--size-4-8)var(--size-4-4);text-align:center;color:var(--color-foreground);flex-direction:column;flex:1;display:flex}.chat-messages-empty p{margin:0;font-size:13px;font-weight:500}.chat-messages-empty .hint{color:var(--color-muted);max-width:240px;font-size:12px;line-height:1.5}.chat-messages-loading{justify-content:center;align-items:center;gap:var(--size-4-2);padding:var(--size-4-8)var(--size-4-4);color:var(--color-muted);flex-direction:column;flex:1;display:flex}.chat-messages-loading .loading-spinner{color:var(--color-primary);animation:1s linear infinite spin}.chat-messages-loading p{margin:0;font-size:12px}.chat-error-banner{color:var(--color-red);z-index:10;background:#ff555526;border:1px solid #ff55554d;border-radius:8px;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;font-size:12px;display:flex;position:sticky;top:0}.chat-error-banner svg:first-child{flex-shrink:0}.chat-error-message{flex:1;line-height:1.4}.chat-error-dismiss{width:20px;height:20px;color:var(--color-red);cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.chat-error-dismiss:hover{opacity:1;background:#f553}.chat-error-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.chat-error-retry{color:var(--color-foreground);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff26;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;transition:all .15s;display:flex}.chat-error-retry:hover{background:#ffffff26;border-color:#fff3}.chat-error-retry svg{flex-shrink:0}.chat-error{color:var(--color-red);background:#ff55551a;border:1px solid #f553;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chat-message{border-radius:12px;flex-direction:column;max-width:95%;padding:10px 12px;animation:.2s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.chat-message.user{background:#4169e126;border:1px solid #4169e140;border-bottom-right-radius:4px;margin-left:auto}.chat-message.assistant{background:var(--color-background);border:1px solid #ffffff1a;border-bottom-left-radius:4px;margin-right:auto}.chat-message-avatar{display:none}.chat-message-content{color:var(--color-foreground);white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.55;position:relative}.chat-message-copy{background:var(--color-secondary);width:22px;height:22px;color:var(--color-muted);cursor:pointer;opacity:0;border:1px solid #ffffff26;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex;position:absolute;top:-8px;right:-8px}.chat-message:hover .chat-message-copy{opacity:1}.chat-message-copy:hover{background:var(--color-background);color:var(--color-foreground);border-color:#fff3}.chat-message-copy.copied{color:var(--color-green);opacity:1;border-color:#50fa7b4d}.chat-message-footer{color:var(--color-muted);border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;margin-top:8px;padding-top:6px;font-size:10px;display:flex}.chat-message.user .chat-message-footer{justify-content:flex-end}.chat-message-time{opacity:.7}.chat-message-usage{font-family:var(--font-mono,monospace);align-items:center;gap:6px;font-size:9px;display:flex}.chat-message-usage .usage-in:before{content:"↑";opacity:.6;margin-right:2px}.chat-message-usage .usage-out:before{content:"↓";opacity:.6;margin-right:2px}.thinking-indicator{color:var(--color-muted);align-items:center;gap:8px;font-style:italic;display:flex}.thinking-spinner{color:var(--color-primary);animation:1s linear infinite spin}.typing-indicator{color:var(--color-muted);animation:1s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.streaming-indicator{color:var(--color-primary);margin-left:4px;animation:1s linear infinite spin;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.copilot-input{padding:var(--size-4-3);background:var(--color-background);border-top:1px solid #ffffff1a;flex-shrink:0;gap:8px;display:flex}.copilot-input-field{background:var(--color-secondary);min-height:36px;max-height:120px;color:var(--color-foreground);resize:none;border:1px solid #ffffff1a;border-radius:8px;flex:1;padding:8px 12px;font-family:inherit;font-size:13px;line-height:1.4;transition:border-color .15s}.copilot-input-field::placeholder{color:var(--color-muted)}.copilot-input-field:focus{border-color:var(--color-primary);outline:none}.copilot-input-field:disabled{opacity:.5;cursor:not-allowed}.copilot-send-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:all .15s;display:flex}.copilot-send-btn:hover:not(:disabled){background:var(--color-primary-hover)}.copilot-send-btn:disabled{opacity:.5;cursor:not-allowed}.copilot-send-btn.abort{color:var(--color-red);background:#f553}.copilot-send-btn.abort:hover{background:#ff55554d}@media (max-width:768px){.copilot-sidebar{z-index:1000;width:100%;max-width:320px;position:fixed;top:0;bottom:0;right:0;box-shadow:-2px 0 8px #0000004d}}
.editor-pane{background-color:var(--background-primary);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.editor-status-bar-bottom{background-color:var(--background-secondary);border-top:1px solid var(--border-color);flex-shrink:0;align-items:center;gap:12px;height:28px;padding:4px 12px;font-size:11px;font-weight:500;display:flex}.status-bar-item{color:var(--text-muted);align-items:center;gap:4px;display:inline-flex}.status-bar-item.lock-locked{color:orange}.status-bar-item.lock-editing{color:var(--color-green)}.status-bar-spacer{flex:1}.spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.editor-header{border-bottom:1px solid var(--border-color);background-color:var(--background-secondary);height:var(--panel-editor-header-height,48px);flex-shrink:0;justify-content:space-between;align-items:center;padding:0;display:flex}.editor-tabs{flex:1;align-items:center;display:flex;overflow:auto hidden}.editor-tab{align-items:center;gap:var(--size-4-2);padding:var(--size-4-3)var(--size-4-4);border:none;border-right:1px solid var(--border-color);cursor:pointer;white-space:nowrap;color:var(--text-muted);background-color:#0000;font-size:.9em;transition:background-color .2s;display:flex}.tab-syncing{font-size:.9em;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.tab-unsaved{color:var(--color-primary);font-size:.8em}.tab-saved{color:#50fa7b;font-size:.9em;font-weight:700}.tab-retrying{color:#ffb86c;font-size:.9em;animation:1.5s ease-in-out infinite pulse}.tab-error{color:#f55;font-size:.9em;animation:.5s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.save-indicator{border-radius:4px;padding:2px 8px;font-size:12px;font-weight:500}.save-indicator.saving{color:var(--color-primary)}.save-indicator.saved{color:var(--color-green,#50fa7b)}.save-indicator.retrying{color:var(--color-orange,#ffb86c);animation:1.5s ease-in-out infinite pulse}.save-indicator.error{color:var(--color-red,#f55)}.save-indicator.unsaved{color:var(--color-primary)}.editor-tab.active{background-color:var(--background-primary);color:var(--text-normal)}.editor-tab:hover{background-color:var(--background-modifier-hover)}.tab-close{color:var(--text-muted);cursor:pointer;margin-left:var(--size-4-2);background:0 0;border:none;padding:0;font-size:1.2em;line-height:1;transition:color .2s}.tab-close:hover{color:var(--dracula-red);box-shadow:none;background:0 0;transform:none}.editor-actions{align-items:center;gap:var(--size-4-1);padding:0 var(--size-4-3);border-left:1px solid var(--border-color);display:flex}.mode-toggle,.editor-action{padding:var(--size-4-2);cursor:pointer;color:var(--text-muted);border-radius:var(--size-4-1);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.1em;transition:all .2s;display:flex}.mode-toggle:hover,.editor-action:hover{background-color:var(--background-modifier-hover);color:var(--interactive-accent);box-shadow:none;transform:none}.mode-toggle.active{background-color:var(--interactive-accent);color:var(--background-primary)}.mode-toggle:disabled,.editor-action:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.deploy-btn{color:var(--color-primary)}.deploy-btn:hover:not(:disabled){background:var(--color-primary);color:#fff}.deploy-btn.deploying{animation:1s ease-in-out infinite pulse}.deploy-btn:disabled{opacity:.4;cursor:not-allowed}.editor-content{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.editor-main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.editor-textarea{background-color:var(--background-primary);width:100%;height:100%;color:var(--text-normal);padding:var(--size-4-6);resize:none;border:none;outline:none;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:1em;line-height:1.7;overflow:hidden auto}.editor-textarea::-webkit-scrollbar{width:12px}.editor-textarea::-webkit-scrollbar-track{background:var(--background-primary)}.editor-textarea::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:6px}.editor-textarea::-webkit-scrollbar-thumb:hover{background:var(--interactive-accent)}.editor-textarea::placeholder{color:var(--text-muted)}.editor-textarea:disabled{opacity:.7;cursor:not-allowed;background-color:var(--background-secondary)}.monaco-editor-container{touch-action:manipulation;-webkit-user-select:text;user-select:text;position:absolute;inset:0;overflow:hidden}.editor-preview{height:100%;padding:var(--size-4-6);max-width:900px;margin:0 auto;line-height:1.8;overflow:hidden auto}.editor-preview h1{margin-top:var(--size-4-8);margin-bottom:var(--size-4-4);color:var(--markdown-heading);border-bottom:2px solid var(--border-color);padding-bottom:var(--size-4-2);font-size:2em}.editor-preview h2{margin-top:var(--size-4-6);margin-bottom:var(--size-4-3);color:var(--markdown-heading);font-size:1.6em}.editor-preview h3{margin-top:var(--size-4-5);margin-bottom:var(--size-4-2);color:var(--markdown-heading);font-size:1.3em}.editor-preview p{margin-bottom:var(--size-4-4);color:var(--text-normal)}.editor-preview code{background-color:var(--markdown-code-bg);padding:var(--size-4-1)var(--size-4-2);border-radius:var(--size-4-1);color:var(--markdown-code);font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:.9em}.editor-preview pre{background-color:var(--background-secondary);padding:var(--size-4-4);border-radius:var(--border-radius);margin:var(--size-4-4)0;border:1px solid var(--border-color);overflow-x:auto}.editor-preview pre code{color:var(--text-normal);background:0 0;padding:0}.editor-preview ul,.editor-preview ol{margin-left:var(--size-4-6);margin-bottom:var(--size-4-4)}.editor-preview li{margin-bottom:var(--size-4-2);color:var(--text-normal)}.editor-preview hr{border:none;border-top:1px solid var(--border-color);margin:var(--size-4-6)0}.editor-preview strong{color:var(--markdown-bold);font-weight:600}.editor-preview em{color:var(--markdown-italic);font-style:italic}.editor-empty{height:100%;padding:var(--size-4-12);text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.editor-empty h2{margin-bottom:var(--size-4-4);color:var(--text-normal)}.editor-empty p{color:var(--text-faint)}.editor-preview::-webkit-scrollbar{width:12px}.editor-preview::-webkit-scrollbar-track{background:var(--background-primary)}.editor-preview::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:6px}.editor-preview::-webkit-scrollbar-thumb:hover{background:var(--interactive-accent)}@media (max-width:768px){.editor-header{height:56px;padding:0}.editor-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;overflow:auto hidden}.editor-tabs::-webkit-scrollbar{display:none}.editor-tab{padding:var(--size-4-4)var(--size-4-4);flex-shrink:0;min-height:56px;font-size:.95em}.tab-close{display:none}.editor-actions{gap:var(--size-4-1);padding:0 var(--size-4-2)}.mode-toggle,.editor-action{padding:var(--size-4-2);min-width:40px;min-height:40px;font-size:1.1em}.mode-toggle span:not(.icon),.editor-action span:not(.icon){display:none}.editor-textarea{padding:var(--size-4-4);font-size:15px;line-height:1.8}.editor-textarea::-webkit-scrollbar{width:20px}.editor-textarea::-webkit-scrollbar-thumb{background:var(--color-muted);border:4px solid var(--background-primary);border-radius:10px}.monaco-editor-container{-webkit-overflow-scrolling:touch;overflow:auto}.monaco-editor-container .monaco-editor,.monaco-editor-container .monaco-editor .overflow-guard,.monaco-editor-container .monaco-editor .monaco-scrollable-element{touch-action:manipulation!important}.monaco-editor-container .view-lines{-webkit-user-select:text!important;user-select:text!important}.editor-preview{padding:var(--size-4-4);max-width:100%;font-size:15px;line-height:1.8}.editor-preview h1{margin-top:var(--size-4-6);margin-bottom:var(--size-4-3);font-size:1.75em}.editor-preview h2{margin-top:var(--size-4-5);margin-bottom:var(--size-4-3);font-size:1.5em}.editor-preview h3{margin-top:var(--size-4-4);margin-bottom:var(--size-4-2);font-size:1.25em}.editor-preview pre{padding:var(--size-4-3);margin:var(--size-4-3)0;-webkit-overflow-scrolling:touch;overflow-x:auto}.editor-preview code{padding:2px var(--size-4-2);font-size:.85em}.editor-preview::-webkit-scrollbar{width:20px}.editor-preview::-webkit-scrollbar-thumb{background:var(--color-muted);border:4px solid var(--background-primary);border-radius:10px}.editor-empty{padding:var(--size-4-8)}.editor-empty h2{font-size:1.3em}.editor-empty p{font-size:.95em}}@media (max-width:480px){.editor-header{height:50px}.editor-tab{padding:var(--size-4-2)var(--size-4-3);min-height:50px;font-size:.9em}.editor-actions{padding:0 var(--size-4-2);gap:2px}.mode-toggle,.editor-action{min-width:36px;min-height:36px;padding:var(--size-4-1);font-size:1em}.editor-textarea,.editor-preview{padding:var(--size-4-3);font-size:14px}}
.status-bar{height:var(--panel-statusbar-height,30px);background-color:var(--background-secondary);border-top:1px solid var(--border-color);padding:0 var(--size-4-4);color:var(--text-muted);flex-shrink:0;justify-content:space-between;align-items:center;font-size:.75em;display:flex}.status-bar-left,.status-bar-center,.status-bar-right{align-items:center;gap:var(--size-4-3);display:flex}.status-bar-center{flex:1;justify-content:center}.status-item{align-items:center;gap:var(--size-4-1);white-space:nowrap;display:flex}.status-icon{font-size:1.1em}.status-separator{opacity:.5}.status-syncing{animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.status-lock-loading{color:var(--color-muted)}.status-lock-locked{color:orange}.status-lock-free{color:var(--color-green)}.status-lock-yours,.status-lock-editing{color:var(--color-primary)}.spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:768px){.status-bar-center{display:none}.status-bar-right{font-size:.7em}}
