:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;min-width:320px;min-height:100vh}#root{width:100%}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.toast{position:fixed;top:20px;right:20px;min-width:300px;max-width:500px;padding:16px 20px;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;gap:12px;z-index:9999;animation:slideIn .3s ease-out;background:#fff;border-left:4px solid}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.toast-info{border-left-color:#3b82f6}.toast-success{border-left-color:#10b981}.toast-warning{border-left-color:#f59e0b}.toast-error{border-left-color:#ef4444}.toast-loading{border-left-color:#8b5cf6}.toast-icon{font-size:20px;flex-shrink:0}.toast-message{flex:1;color:#374151;font-size:14px;line-height:1.5}.toast-close{background:none;border:none;font-size:24px;color:#9ca3af;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;flex-shrink:0}.toast-close:hover{background:#f3f4f6;color:#374151}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.error-boundary-content{background:#fff;border-radius:12px;padding:40px;max-width:600px;width:100%;box-shadow:0 10px 40px #0003;text-align:center}.error-icon{font-size:64px;margin-bottom:20px}.error-boundary-content h1{color:#333;margin-bottom:16px;font-size:28px}.error-message{color:#666;font-size:16px;line-height:1.6;margin-bottom:32px}.error-actions{display:flex;gap:12px;justify-content:center;margin-bottom:24px}.error-actions button{padding:12px 24px;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover{background:#e5e7eb;transform:translateY(-1px)}.error-details{text-align:left;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.error-details summary{cursor:pointer;color:#6b7280;font-size:14px;margin-bottom:12px}.error-details summary:hover{color:#374151}.error-stack{background:#f9fafb;border-radius:6px;padding:16px;margin-top:12px}.error-stack p{color:#dc2626;font-size:14px;margin-bottom:12px}.error-stack pre{color:#374151;font-size:12px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;white-space:pre-wrap;word-break:break-word;line-height:1.5;margin:0}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.auth-card{background:#fff;padding:40px;border-radius:10px;box-shadow:0 10px 25px #0003;width:100%;max-width:400px}.auth-card h1{margin:0 0 10px;font-size:24px;color:#333;text-align:center}.auth-card h2{margin:0 0 30px;font-size:20px;color:#666;text-align:center;font-weight:400}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#555;font-weight:500}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:5px;font-size:14px;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.password-hint{display:block;margin-top:5px;font-size:12px;color:#666;line-height:1.4}.btn-primary{width:100%;padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:5px;font-size:16px;font-weight:500;cursor:pointer;transition:transform .2s}.btn-primary:hover:not(:disabled){transform:translateY(-2px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#fee;color:#c33;padding:12px;border-radius:5px;margin-bottom:20px;font-size:14px}.auth-link{text-align:center;margin-top:20px;color:#666}.auth-link a{color:#667eea;text-decoration:none;font-weight:500}.auth-link a:hover{text-decoration:underline}.framework-selector{max-width:1200px;margin:0 auto;padding:40px 20px}.framework-selector h2{text-align:center;margin-bottom:40px;color:#333;font-size:28px}.framework-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.framework-card{background:#fff;padding:30px;border-radius:10px;box-shadow:0 2px 8px #0000001a;cursor:pointer;transition:all .3s ease;text-align:center}.framework-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #0003}.framework-card h3{margin:0 0 10px;color:#667eea;font-size:20px}.framework-card p{margin:0;color:#666;font-size:14px}.framework-loading,.framework-error{text-align:center;padding:60px 20px;color:#666}.framework-error{color:#c33}.btn-retry{margin-top:20px;padding:10px 30px;background:#667eea;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:14px}.btn-retry:hover{background:#5568d3}.question-renderer{background:transparent;padding:0;border-radius:0;box-shadow:none;margin-bottom:0;position:relative}.dimension-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;box-shadow:0 2px 4px #667eea33;flex-wrap:wrap;max-width:100%}.dimension-icon{font-size:11px}.dimension-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dimension-description{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#fff3;border-radius:4px;font-size:11px;font-weight:400;text-transform:none;letter-spacing:0;line-height:1.4;cursor:help;transition:all .2s ease;max-width:100%;width:100%;margin-top:6px}.dimension-description:hover{background:#ffffff4d}.info-icon{font-size:13px;flex-shrink:0}.description-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px}.question-renderer.loading{pointer-events:none}.loading-overlay{position:absolute;inset:0;background:#fffffff2;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loading-spinner{width:30px;height:30px;border:3px solid #e0e0e0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{margin-top:12px;color:#555;font-size:12px;font-weight:500}.question-box{margin-bottom:10px}.question-label{font-weight:600;color:#667eea;margin-bottom:6px;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.question-text{font-size:14px;color:#333;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.answer-form{display:flex;flex-direction:column;gap:8px}.answer-form textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;font-size:13px;font-family:inherit;resize:vertical;box-sizing:border-box;min-height:60px}.answer-form textarea:focus{outline:none;border-color:#667eea}.answer-form textarea:disabled{background:#f5f5f5;cursor:not-allowed}.btn-submit{align-self:flex-end;padding:8px 20px;font-size:13px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:5px;font-size:16px;font-weight:500;cursor:pointer;transition:transform .2s}@media(max-width:768px){.question-renderer{padding:20px}.question-text{font-size:16px}.answer-form textarea{font-size:15px;padding:12px}.btn-submit{width:100%;padding:14px 20px;font-size:15px}}@media(max-width:480px){.question-renderer{padding:15px}.question-label{font-size:13px}.question-text{font-size:15px}.answer-form textarea{font-size:14px;padding:10px;min-height:100px}}.synthesis-result{width:100%;padding:20px}.synthesis-result h2{text-align:center;color:#28a745;font-size:28px;margin-bottom:20px}.result-section{background:#fff;padding:25px;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px}.result-section h3{color:#333;font-size:18px;margin-bottom:15px}.refined-query{background:#f8f9fa;padding:20px;border-radius:5px;font-size:16px;line-height:1.6;color:#333;border-left:4px solid #667eea;margin-bottom:15px;white-space:pre-wrap;word-wrap:break-word}.structured-output{background:#f8f9fa;padding:20px;border-radius:5px;font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.6;color:#333;border-left:4px solid #28a745;margin-bottom:15px;overflow-x:auto}.json-object,.json-array{margin:4px 0}.json-property{margin:4px 0;display:flex;gap:8px}.json-key{color:#06c;font-weight:600}.json-string{color:#d14}.json-number{color:#099}.json-boolean{color:#905;font-weight:700}.json-null{color:#999;font-style:italic}.json-empty{color:#999}.json-array-item{margin:4px 0;display:flex;gap:8px}.json-index{color:#666;font-weight:600;min-width:40px}.result-actions{display:flex;gap:10px}.btn-secondary{padding:10px 20px;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:5px;font-size:14px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#667eea;color:#fff}.metadata{display:flex;flex-direction:column;gap:10px}.metadata-item{display:flex;padding:10px;background:#f8f9fa;border-radius:5px}.metadata-key{font-weight:600;color:#667eea;margin-right:10px}.metadata-value{color:#666}.feedback-form{display:flex;flex-direction:column;gap:15px}.feedback-field{display:flex;flex-direction:column;gap:8px}.feedback-field-title{font-weight:600;color:#333;font-size:14px;line-height:1.4}.feedback-intro{color:#666;font-size:14px;margin-bottom:10px;line-height:1.5}.feedback-questions{background:#f8f9fa;padding:15px;border-radius:5px;border-left:3px solid #667eea}.feedback-select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:5px;font-size:14px;background:#fff}.feedback-select:focus{outline:none;border-color:#667eea}.feedback-option-group{display:flex;flex-direction:column;gap:10px}.feedback-option{display:flex;gap:12px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer}.feedback-option input{margin-top:4px}.feedback-option.selected{border-color:#667eea;box-shadow:0 0 0 2px #667eea26}.feedback-option-content{display:flex;flex-direction:column;gap:4px}.feedback-option-title{font-weight:600;color:#2d3748;font-size:14px}.feedback-option-description{color:#4a5568;font-size:12px;line-height:1.4}.likert{display:flex;flex-direction:column;gap:8px}.likert-labels{display:flex;justify-content:space-between;color:#666;font-size:12px}.likert-options{display:flex;gap:10px;flex-wrap:wrap}.likert-option{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;-webkit-user-select:none;user-select:none}.likert-option input{margin:0}.likert-option.selected{border-color:#667eea;color:#333}.feedback-consent{background:#f8f9fa;border-radius:5px;padding:12px;border-left:3px solid #667eea}.feedback-consent-row{display:flex;gap:10px;align-items:flex-start;color:#333;font-size:14px;line-height:1.4}.feedback-consent-note{margin-top:8px;color:#666;font-size:12px;line-height:1.4}.feedback-error{background:#f8d7da;color:#721c24;padding:10px 12px;border-radius:5px;font-size:14px}.feedback-prompt{font-weight:600;color:#333;margin:0 0 10px}.feedback-guide{margin:0;padding-left:20px;color:#555;font-size:14px;line-height:1.8}.feedback-guide li{margin-bottom:5px}.constraint-block{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.constraint-header{display:flex;flex-direction:column;gap:6px}.constraint-title{font-weight:600;color:#2d3748;font-size:14px}.constraint-description{color:#4a5568;font-size:12px;line-height:1.5}.constraint-yes-no{display:flex;gap:12px}.yes-no-option{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid #e2e8f0;border-radius:20px;cursor:pointer;font-size:13px;color:#2d3748;background:#f8fafc}.yes-no-option.selected{border-color:#667eea;background:#eef2ff}.constraint-dimensions{display:flex;flex-direction:column;gap:8px}.constraint-dimensions-title{font-size:12px;font-weight:600;color:#2d3748}.constraint-empty{font-size:12px;color:#718096}.dimension-checklist{display:flex;flex-wrap:wrap;gap:10px}.dimension-option{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;font-size:12px;color:#2d3748;cursor:pointer}.dimension-option.selected{border-color:#667eea;background:#eef2ff}.feedback-form textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:5px;font-size:14px;font-family:inherit;resize:vertical;box-sizing:border-box}.feedback-form textarea:focus{outline:none;border-color:#667eea}.feedback-success{background:#d4edda;color:#155724;padding:15px;border-radius:5px;text-align:center;font-weight:500}.btn-submit{align-self:flex-start;padding:10px 25px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:5px;font-size:14px;font-weight:500;cursor:pointer;transition:transform .2s}.btn-submit:hover:not(:disabled){transform:translateY(-2px)}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.command-buttons{margin:8px 0 0;padding:10px;background:transparent;border-radius:0;box-shadow:none;border:none;border-top:1px solid #e0e4e8}.command-label{font-size:10px;font-weight:600;color:#667eea;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.command-sections{display:flex;flex-direction:column;gap:12px}.command-section{display:flex;flex-direction:column;gap:6px}.section-label{font-size:9px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px}.command-button-group{display:flex;gap:6px;flex-wrap:wrap}.command-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;transition:all .2s;font-size:11px;color:#555}.command-btn:hover:not(:disabled){background:#667eea;color:#fff;border-color:#667eea;transform:translateY(-1px);box-shadow:0 2px 4px #667eea4d}.command-btn:disabled{opacity:.4;cursor:not-allowed;background:#f9f9f9;color:#aaa;border-color:#e5e5e5}.command-icon{font-size:13px}.command-text{font-weight:500}@media(max-width:768px){.command-buttons{padding:15px}.command-label{font-size:13px}.command-button-group{gap:8px}.command-btn{padding:10px 16px;font-size:14px;flex:1 1 calc(50% - 4px);min-width:0;justify-content:center}.section-label{font-size:11px}}@media(max-width:480px){.command-buttons{padding:12px}.command-button-group{flex-direction:column;gap:8px}.command-btn{width:100%;padding:12px 16px;justify-content:center}.command-icon{font-size:18px}}.command-history-item{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;overflow:hidden;margin:15px 0;box-shadow:0 4px 12px #667eea40;animation:slideInCommand .3s ease-out}@keyframes slideInCommand{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.command-history-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.command-history-item .command-icon{font-size:20px}.command-history-item .command-text{font-family:Courier New,monospace;font-weight:600;color:#fff;font-size:14px}.command-badge{margin-left:auto;background:#ffffff4d;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:700;color:#fff;letter-spacing:.5px}.command-history-body{padding:16px;background:#fff;color:#333}.command-message{font-size:14px;line-height:1.6;color:#555;margin-bottom:12px}.command-summary{margin:12px 0;padding:12px;background:#f8f9fa;border-radius:8px;border-left:4px solid #667eea}.summary-stats{display:flex;gap:20px;flex-wrap:wrap}.summary-stats .stat{font-size:13px;color:#555}.summary-stats .stat strong{color:#667eea;margin-right:6px}.command-steps-list{margin:12px 0}.steps-header{font-size:13px;font-weight:600;color:#667eea;margin-bottom:10px}.steps-grid{display:flex;flex-direction:column;gap:8px}.step-badge{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:10px 12px;background:#f8f9fa;border-radius:8px;border-left:4px solid #ddd;transition:all .2s ease;font-size:13px}.step-badge:hover{background:#e9ecef;transform:translate(4px)}.step-badge.active{border-left-color:#667eea;background:linear-gradient(135deg,#f0f4ff,#e8f0ff)}.step-badge.complete{border-left-color:#28a745}.step-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fff;border-radius:50%;font-weight:700;font-size:12px;color:#667eea}.step-badge.active .step-number{background:#667eea;color:#fff}.step-badge.complete .step-number{background:#28a745;color:#fff}.step-name{font-weight:600;color:#333}.step-status{font-size:11px;padding:3px 8px;border-radius:10px;background:#e9ecef;color:#666;text-transform:capitalize}.step-badge.active .step-status{background:#667eea;color:#fff}.step-badge.complete .step-status{background:#28a745;color:#fff}.command-warning{margin:12px 0;padding:12px;background:#fff3cd;border-left:4px solid #ffc107;border-radius:8px;font-size:13px;color:#856404}.command-history-item.command-error{background:linear-gradient(135deg,#dc3545,#c82333)}.command-history-item.command-error .command-message{padding:12px 16px;background:#fff3cd;border-left:4px solid #dc3545;border-radius:8px;font-size:14px;font-weight:600;color:#721c24;margin-bottom:0}.command-history-item.command-error .command-message:before{content:"⚠️ ";margin-right:6px}.command-history-item.command-success .command-badge{background:#28a7454d}.command-history-item.command-pending{background:linear-gradient(135deg,#6c757d,#5a6268);opacity:.8}.framework-context{margin-bottom:16px;padding:12px;background:linear-gradient(135deg,#fff8e1,#ffe082);border-radius:8px;border-left:4px solid #ffa000}.context-label{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;color:#f57c00}.context-icon{font-size:16px}.context-details{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;margin-left:24px}.context-item{color:#555}.context-item strong{color:#e65100;margin-right:4px}.dimensions-detail{margin-top:16px}.dimensions-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;color:#667eea}.dimensions-icon{font-size:16px}.dimensions-list{display:flex;flex-direction:column;gap:10px}.dimension-item{padding:12px;background:#f8f9fa;border-radius:8px;border-left:4px solid #ddd;transition:all .2s ease}.dimension-item:hover{background:#e9ecef;transform:translate(2px)}.dimension-item.active{border-left-color:#667eea;background:linear-gradient(135deg,#f0f4ff,#e8f0ff);box-shadow:0 2px 8px #667eea26}.dimension-item.complete{border-left-color:#28a745}.dimension-item.skipped{border-left-color:#6c757d;opacity:.7}.dimension-item.needs_review{border-left-color:#ffc107;background:#fffbf0}.dimension-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.dimension-item .dimension-icon{font-size:18px}.dimension-name{font-weight:600;color:#333;flex:1}.dimension-badge{font-size:10px;padding:3px 8px;border-radius:10px;background:#e9ecef;color:#666;text-transform:capitalize;font-weight:600;letter-spacing:.3px}.dimension-badge.complete{background:#28a745;color:#fff}.dimension-badge.active,.dimension-badge.in_progress{background:#667eea;color:#fff}.dimension-badge.needs_review{background:#ffc107;color:#333}.dimension-badge.skipped{background:#6c757d;color:#fff}.dimension-value{margin:8px 0 4px 28px;font-size:12px;color:#555;line-height:1.5}.dimension-value strong{color:#667eea;margin-right:6px}.dimension-followups{display:flex;align-items:center;gap:6px;margin:4px 0 0 28px;font-size:11px;color:#888}.followup-icon{font-size:12px}.dimension-skipped{margin:4px 0 0 28px;font-size:11px;color:#6c757d;font-style:italic}.dimension-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.dimension-header.clickable:hover{background:#667eea0d;border-radius:6px;margin:-4px;padding:4px}.expand-icon{font-size:12px;color:#667eea;transition:transform .2s ease;width:16px;display:inline-block}.dimension-item.expanded .expand-icon{transform:rotate(0)}.dimension-expanded-content{margin-top:12px;padding:12px;background:#fff;border-radius:6px;border:1px solid #e9ecef;animation:expandContent .2s ease-out}@keyframes expandContent{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:500px;padding-top:12px;padding-bottom:12px}}.dimension-assembled-expanded{margin-bottom:16px;padding:12px;background:linear-gradient(135deg,#f0f4ff,#e8f0ff);border-radius:6px;border-left:3px solid #667eea}.dimension-assembled-expanded strong{color:#667eea;display:block;margin-bottom:8px;font-size:13px;font-weight:700}.assembled-value-text{margin:0;font-size:13px;line-height:1.6;color:#333;font-weight:500}.dimension-description{margin-bottom:12px}.dimension-description strong{color:#667eea;display:block;margin-bottom:6px;font-size:13px}.dimension-description p{margin:0;font-size:12px;line-height:1.6;color:#555}.dimension-dependencies{margin-bottom:12px}.dimension-dependencies strong{color:#667eea;display:block;margin-bottom:8px;font-size:13px}.dependency-list{display:flex;gap:6px;flex-wrap:wrap}.dependency-tag{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600}.dimension-conversation{margin-bottom:12px}.dimension-conversation strong{color:#667eea;display:block;margin-bottom:8px;font-size:13px}.conversation-list{display:flex;flex-direction:column;gap:12px}.conversation-exchange{background:#f8f9fa;padding:10px;border-radius:6px;border-left:3px solid #667eea}.conversation-question{margin-bottom:8px;display:flex;gap:8px}.conversation-response{display:flex;gap:8px}.exchange-label{font-weight:700;color:#667eea;font-size:11px;min-width:24px;flex-shrink:0}.exchange-text{font-size:12px;line-height:1.6;color:#333;flex:1}.conversation-question .exchange-text{color:#555;font-style:italic}.confirmation-dialog-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.confirmation-dialog{background:#fff;border-radius:8px;box-shadow:0 8px 24px #0003;max-width:500px;width:90%;animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.confirmation-dialog-header{padding:16px 20px;border-bottom:1px solid #e0e0e0;display:flex;align-items:center;gap:10px}.confirmation-dialog-header.warning{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-bottom-color:#ffb74d}.confirmation-dialog-header.danger{background:linear-gradient(135deg,#ffebee,#ffcdd2);border-bottom-color:#e57373}.confirmation-dialog-header.info{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-bottom-color:#64b5f6}.confirmation-icon{font-size:20px}.confirmation-dialog-header h3{margin:0;font-size:16px;font-weight:600;color:#333}.confirmation-dialog-body{padding:20px}.confirmation-dialog-body p{margin:0;font-size:14px;line-height:1.6;color:#555;white-space:pre-line}.confirmation-dialog-actions{padding:16px 20px;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end;gap:10px}.btn-cancel,.btn-confirm{padding:8px 20px;border-radius:5px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-cancel{background:#f5f5f5;color:#666}.btn-cancel:hover{background:#e0e0e0}.btn-confirm{color:#fff}.btn-confirm.warning{background:linear-gradient(135deg,#ff9800,#f57c00)}.btn-confirm.warning:hover{background:linear-gradient(135deg,#f57c00,#e65100)}.btn-confirm.danger{background:linear-gradient(135deg,#f44336,#d32f2f)}.btn-confirm.danger:hover{background:linear-gradient(135deg,#d32f2f,#c62828)}.btn-confirm.info{background:linear-gradient(135deg,#2196f3,#1976d2)}.btn-confirm.info:hover{background:linear-gradient(135deg,#1976d2,#1565c0)}.btn-confirm:hover,.btn-cancel:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.progress-indicator{background:#fff;border-radius:8px;padding:16px;margin:16px 0;box-shadow:0 2px 8px #0000001a}.progress-indicator.compact{padding:12px;margin:8px 0}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.progress-stage{font-weight:600;font-size:14px}.progress-percentage{font-weight:600;font-size:14px;color:#666}.progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;transition:width .3s ease,background-color .3s ease;border-radius:4px}.progress-message{font-size:13px;color:#555;margin-bottom:8px}.progress-metadata{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:#777}.progress-meta-item{display:inline-flex;align-items:center;gap:4px}.progress-error{margin-top:8px;padding:8px 12px;background:#fef2f2;border-left:3px solid #ef4444;border-radius:4px;font-size:13px;color:#dc2626}.progress-label{font-size:12px;color:#666;margin-top:4px}.progress-indicator.compact .progress-bar{height:6px;margin-bottom:4px}.progress-indicator.compact .progress-label{font-size:11px}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.progress-fill{position:relative;overflow:hidden}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#ffffff4d,#fff0);animation:shimmer 2s infinite}.refinement-page{min-height:100vh;background:#f5f7fa}.refinement-header{background:#fff;padding:12px 24px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.refinement-header h1{margin:0;font-size:18px;color:#333}.header-actions{display:flex;gap:20px}.btn-link{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;text-decoration:underline}.btn-link:hover{color:#5568d3}.btn-resume{font-weight:600;color:#10b981}.btn-resume:hover{color:#059669}.refinement-content{padding:16px 20px;max-width:1400px;margin:0 auto}.error-banner{background:#f8d7da;color:#721c24;padding:15px 20px;border-radius:5px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.error-banner button{background:none;border:none;color:#721c24;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px}.initial-query-form{max-width:800px;margin:0 auto;background:#fff;padding:40px;border-radius:10px;box-shadow:0 2px 8px #0000001a}.initial-query-form h2{margin:0 0 10px;color:#333}.initial-query-form p{margin:0 0 30px;color:#666}.initial-query-form textarea{width:100%;padding:15px;border:1px solid #ddd;border-radius:5px;font-size:16px;font-family:inherit;resize:vertical;margin-bottom:20px;box-sizing:border-box}.initial-query-form textarea:focus{outline:none;border-color:#667eea}.form-actions{display:flex;justify-content:space-between;gap:15px}.refinement-interface{display:flex;justify-content:center;align-items:start;height:calc(100vh - 90px)}.refinement-main{display:flex;flex-direction:column;height:100%;max-height:calc(100vh - 90px);width:100%;max-width:1200px;gap:12px}.history-panel{flex:0 0 auto;max-height:40vh;overflow-y:auto;background:#fff;border-radius:8px;padding:12px;box-shadow:0 2px 8px #00000014;border:1px solid #e0e4e8}.history-panel-header{font-size:11px;font-weight:600;color:#667eea;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #e0e4e8}.history-panel::-webkit-scrollbar{width:6px}.history-panel::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.history-panel::-webkit-scrollbar-thumb{background:#667eea;border-radius:3px}.history-panel::-webkit-scrollbar-thumb:hover{background:#5568d3}.conversation-container{flex:1;overflow-y:auto;padding-right:10px;margin-bottom:12px}.conversation-container::-webkit-scrollbar{width:8px}.conversation-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.conversation-container::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.conversation-container::-webkit-scrollbar-thumb:hover{background:#5568d3}.question-input-fixed{flex:0 0 auto;background:#fff;padding:12px;border-radius:8px;box-shadow:0 2px 8px #00000014;border:1px solid #e0e4e8}.conversation-history{display:flex;flex-direction:column;gap:8px}.history-item{background:#fff;padding:10px 12px;border-radius:6px;box-shadow:0 1px 4px #0000000f;transition:transform .2s ease,box-shadow .2s ease;animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.history-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.history-item.query{border-left:5px solid #667eea;background:linear-gradient(135deg,#fff,#f8f9ff)}.history-item.question{border-left:5px solid #ffc107;background:linear-gradient(135deg,#fff,#fffdf5)}.history-item.answer{border-left:5px solid #28a745;background:linear-gradient(135deg,#fff,#f8fff9)}.history-label{font-size:10px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;display:flex;align-items:center;gap:4px}.history-item.question .history-label{color:#ffc107}.history-item.answer .history-label{color:#28a745}.history-content{color:#333;line-height:1.5;font-size:12px;white-space:pre-wrap;word-wrap:break-word}.command-result{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;padding:0;margin-bottom:20px;box-shadow:0 4px 12px #667eea40;overflow:hidden}.command-result-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.command-result-header strong{color:#fff;font-size:14px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.command-result-close{background:#fff3;border:none;font-size:20px;color:#fff;cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.command-result-close:hover{background:#ffffff4d;transform:rotate(90deg)}.command-result-content{padding:20px;background:#fff;color:#333}.command-result-content>p{margin:0 0 16px;font-size:15px;line-height:1.6;color:#555}.status-details{margin-top:16px;padding:16px;background:#f8f9fa;border-radius:8px;border-left:4px solid #667eea}.status-details p{margin:8px 0;font-size:14px;display:flex;align-items:center}.status-details strong{color:#667eea;margin-right:8px;min-width:80px}.steps-list{margin-top:16px}.steps-list ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.steps-list li{padding:12px 16px;background:#f8f9fa;border-radius:8px;border-left:4px solid #ddd;transition:all .2s ease;font-size:14px}.steps-list li:hover{background:#e9ecef;border-left-color:#667eea;transform:translate(4px)}.steps-list li strong{color:#667eea;margin-right:8px}.next-question-notice{margin-top:20px;padding:16px;background:linear-gradient(135deg,#f0f4ff,#e8f0ff);border-radius:8px;border-left:4px solid #667eea;animation:slideIn .3s ease-out}.next-question-notice p{margin:0;color:#667eea;font-size:15px;display:flex;align-items:center;gap:8px}.next-question-notice strong{font-weight:600}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.refinement-interface{height:auto}.refinement-main{max-height:calc(100vh - 200px);padding:0 15px}.conversation-container{max-height:calc(100vh - 400px)}.initial-query-form{padding:30px 25px}}@media(max-width:768px){.refinement-header{flex-direction:column;gap:15px;align-items:flex-start;padding:15px 20px}.refinement-header h1{font-size:20px}.header-actions{width:100%;justify-content:space-between;gap:15px}.btn-link{font-size:13px}.refinement-content{padding:20px 10px}.refinement-interface{height:auto}.refinement-main{padding:0 10px}.conversation-container{max-height:calc(100vh - 450px);min-height:300px;padding-right:5px}.question-input-fixed{padding:15px 10px;border-radius:8px 8px 0 0}.history-item{padding:15px;border-radius:8px}.history-label{font-size:12px}.history-content{font-size:13px}.initial-query-form{padding:25px 20px}.initial-query-form h2{font-size:20px}.form-actions{flex-direction:column}.form-actions button{width:100%}}@media(max-width:480px){.refinement-header{padding:12px 15px}.refinement-header h1{font-size:18px}.refinement-content{padding:15px 8px}.refinement-main{padding:0 5px}.conversation-container{padding-right:3px}.history-item{padding:12px}.question-input-fixed{padding:12px 8px}.initial-query-form{padding:20px 15px}.command-result{border-radius:8px}.error-banner{padding:12px 15px;font-size:14px}}.saved-session-notice{max-width:700px;margin:40px auto;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:2px;box-shadow:0 4px 12px #667eea4d}.saved-session-notice>div{background:#fff;border-radius:10px;padding:32px;display:flex;gap:24px;align-items:flex-start}.notice-icon{font-size:48px;line-height:1;flex-shrink:0}.notice-content{flex:1}.notice-content h3{margin:0 0 8px;color:#1a202c;font-size:20px}.notice-content p{margin:0 0 24px;color:#4a5568;line-height:1.5}.notice-actions{display:flex;gap:12px;flex-wrap:wrap}.notice-actions .btn-primary,.notice-actions .btn-secondary{padding:10px 20px;font-size:14px}@media(max-width:640px){.saved-session-notice>div{flex-direction:column;align-items:center;text-align:center;padding:24px}.notice-icon{font-size:40px}.notice-actions{justify-content:center;width:100%}.notice-actions .btn-primary,.notice-actions .btn-secondary{flex:1;min-width:140px}}.workflow-complete-notice{max-width:600px;margin:60px auto;background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;padding:2px;box-shadow:0 4px 12px #10b9814d}.workflow-complete-notice>div:first-child{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px}.workflow-complete-notice .notice-icon{font-size:64px;color:#10b981;background:#fff;width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700}.workflow-complete-notice .notice-content{background:#fff;border-radius:10px;padding:40px}.workflow-complete-notice h2{margin:0 0 20px;color:#1a202c;font-size:28px}.workflow-complete-notice p{margin:12px 0;color:#4a5568;font-size:16px;line-height:1.6}.workflow-complete-notice p:last-child{color:#10b981;font-weight:600;margin-top:24px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.question-container{animation:fadeInUp .4s ease-out}.command-history-item{animation:fadeIn .3s ease-out}.command-btn,.btn-primary,.btn-secondary,.btn-link{transition:all .2s ease}.command-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.command-btn:active:not(:disabled){transform:translateY(0)}.aspect-status.completed{animation:pulse .5s ease}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.refinement-conversation,.refinement-workspace{transition:height .3s ease}.error-banner{animation:slideInRight .3s ease-out}.synthesis-result{animation:fadeIn .5s ease-out}.command-button-group .command-btn:nth-child(1){animation-delay:0s}.command-button-group .command-btn:nth-child(2){animation-delay:.05s}.command-button-group .command-btn:nth-child(3){animation-delay:.1s}.command-button-group .command-btn:nth-child(4){animation-delay:.15s}.confirmation-dialog-overlay{animation:fadeIn .2s ease-out}.confirmation-dialog{animation:fadeInUp .3s ease-out}.refinement-conversation{scroll-behavior:smooth}textarea:focus,input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transition:all .2s ease}.loading-indicator{animation:pulse 1.5s ease-in-out infinite}@keyframes checkmark{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.checkmark-icon{animation:checkmark .5s ease-out}.review-stage{max-width:1000px;margin:0 auto}.review-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px 40px;border-radius:10px;margin-bottom:30px;box-shadow:0 4px 12px #667eea4d}.review-header h2{margin:0 0 10px;font-size:28px;font-weight:600}.review-header p{margin:0;font-size:16px;opacity:.95;line-height:1.5}.review-header code{background:#fff3;padding:2px 8px;border-radius:4px;font-size:14px}.aspects-summary{background:#fff;padding:30px;border-radius:10px;margin-bottom:30px;box-shadow:0 2px 8px #0000001a}.aspects-summary h3{margin:0 0 20px;font-size:20px;color:#333;border-bottom:2px solid #667eea;padding-bottom:10px}.aspects-list{display:flex;flex-direction:column;gap:15px}.aspect-item{padding:15px 20px;border-radius:8px;border-left:4px solid #e5e7eb;background:#f9fafb;transition:all .2s ease}.aspect-item.complete{border-left-color:#10b981;background:#f0fdf4}.aspect-item.incomplete{border-left-color:#f59e0b;background:#fffbeb}.aspect-name{font-weight:600;font-size:16px;color:#1f2937;margin-bottom:8px}.aspect-value{color:#4b5563;font-size:14px;line-height:1.5;padding-left:20px}.aspect-skipped{color:#9ca3af;font-size:13px;font-style:italic;padding-left:20px}.review-actions{background:#fff;padding:30px;border-radius:10px;box-shadow:0 2px 8px #0000001a;text-align:center;margin-bottom:20px}.btn-synthesis{font-size:18px;padding:16px 48px;margin-bottom:15px;min-width:300px;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea66;transition:all .3s ease}.btn-synthesis:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #667eea80}.btn-synthesis:active:not(:disabled){transform:translateY(0)}.review-hint{margin:0;color:#6b7280;font-size:14px}.review-hint code{background:#f3f4f6;padding:2px 6px;border-radius:3px;font-size:13px;color:#667eea}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}
