:root{--color-white:#fff;--color-black:#000;--color-bg-primary:#fafaf9;--color-bg-secondary:#f5f5f4;--color-border:#e7e5e4;--color-border-hover:#d6d3d1;--color-text-primary:#1c1917;--color-text-secondary:#57534e;--color-text-tertiary:#78716c;--color-text-disabled:#a8a29e;--color-brand-primary:#4a6cf7;--color-brand-primary-dark:#3b5bdb;--color-brand-light:#edf2ff;--color-success:#10b981;--color-success-dark:#059669;--color-success-light:#d1fae5;--color-warning:#d97706;--color-warning-dark:#b45309;--color-warning-light:#fef3c7;--color-error:#dc2626;--color-error-dark:#b91c1c;--color-error-light:#fef2f2;--color-info:#2563eb;--color-info-dark:#1e40af;--color-info-light:#dbeafe}.writers-room-config{max-width:900px;margin:0 auto;padding:2rem;background:var(--color-white);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 1px 3px rgba(0,0,0,.1)}.config-header{margin-bottom:2rem}.config-header h3{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .5rem}.config-subtitle{font-size:.95rem;color:var(--color-text-secondary);margin:0}.config-toggle{margin-bottom:2rem;padding:1rem;background:var(--color-bg-secondary);border-radius:8px}.toggle-label{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle-input{width:20px;height:20px;margin-right:.75rem;cursor:pointer;accent-color:var(--color-brand-primary)}.toggle-text{font-weight:500;color:var(--color-text-primary)}.presets-section{margin-bottom:2rem}.section-title{font-size:1rem;color:var(--color-text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.5px}.presets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.preset-card{padding:1.25rem;background:var(--color-white);border:2px solid var(--color-border);transition:all .2s ease}.preset-card:hover{border-color:var(--color-brand-primary);box-shadow:0 4px 12px rgba(74,108,247,.1);transform:translateY(-2px)}.preset-card.selected{border-color:var(--color-brand-primary);background:var(--color-brand-light);box-shadow:0 4px 12px rgba(74,108,247,.15)}.preset-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.preset-name{font-size:1rem;color:var(--color-text-primary);margin:0}.selected-badge{display:inline-block;padding:.25rem .75rem;background:var(--color-brand-primary);colour:var(--color-white);border-radius:4px;font-size:.75rem;font-weight:600}.preset-description{font-size:.875rem;color:var(--color-text-secondary);margin:0 0 .75rem;line-height:1.4}.preset-metrics{display:flex;flex-direction:column;gap:.5rem}.metric{display:flex;justify-content:space-between;font-size:.875rem}.metric .label{color:var(--color-text-tertiary);font-weight:500}.metric .value{color:var(--color-text-primary);font-weight:600}.custom-settings-section{margin-bottom:2rem}.custom-settings-toggle{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--color-bg-secondary);border-radius:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:500;color:var(--color-text-primary)}.custom-settings-toggle:hover{background:var(--color-border)}.custom-indicator{display:inline-block;padding:.25rem .75rem;background:var(--color-warning-light);color:var(--color-warning-dark);border-radius:4px;font-size:.75rem;font-weight:600}.custom-settings-content{padding:1.5rem;background:var(--color-bg-secondary);border-radius:0 0 8px 8px;display:flex;flex-direction:column;gap:1.5rem}.settings-fieldset{border:1px solid var(--color-border);border-radius:8px;padding:1rem;background:var(--color-white)}.settings-fieldset legend{padding:0 .5rem;font-weight:600;color:var(--color-text-primary)}.stage-checkbox{display:flex;align-items:flex-start;padding:.75rem 0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.stage-checkbox input[type=checkbox]{width:18px;height:18px;margin-right:.75rem;margin-top:2px;cursor:pointer;accent-color:var(--color-brand-primary);flex-shrink:0}.stage-label{display:flex;flex-direction:column;gap:.25rem;flex:1}.stage-name{font-weight:500;color:var(--color-text-primary)}.stage-cost{font-size:.875rem;color:var(--color-text-tertiary)}.stage-badge{display:inline-block;padding:.25rem .5rem;background:var(--color-info-light);color:var(--color-info-dark);border-radius:3px;font-size:.75rem;font-weight:600;width:-moz-fit-content;width:fit-content}.settings-group{display:flex;flex-direction:column}.settings-group label{font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.input-field,.select-field{padding:.75rem;border:1px solid var(--color-border);border-radius:6px;font-size:.95rem;colour:var(--color-text-primary);background:var(--color-white);transition:border-color .2s ease}.input-field:hover,.select-field:hover{border-color:var(--color-border-hover)}.input-field:focus,.select-field:focus{outline:none;border-color:var(--color-brand-primary);box-shadow:0 0 0 3px rgba(74,108,247,.1)}.field-hint{font-size:.875rem;color:var(--color-text-tertiary);margin-top:.5rem}.cost-estimate{padding:1.25rem;background:var(--color-bg-secondary);margin-bottom:1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.estimate-item{display:flex;justify-content:space-between;align-items:center}.estimate-label{font-weight:500;colour:var(--color-text-primary)}.estimate-value{font-weight:600;colour:var(--color-brand-primary);font-size:1.1rem}.save-button{width:100%;padding:.875rem 1.5rem;background:var(--color-brand-primary);colour:var(--color-white);border:none;border-radius:6px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease}.save-button:hover{background:var(--color-brand-primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px rgba(74,108,247,.3)}.save-button:active{transform:translateY(0)}.button-primary,.button-secondary{padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease}.button-primary{background:var(--color-brand-primary);colour:var(--color-white)}.button-primary:hover{background:var(--color-brand-primary-dark)}.button-secondary{background:var(--color-bg-secondary);colour:var(--color-text-primary);border:1px solid var(--color-border)}.button-secondary:hover{background:var(--color-border)}.validation-results{max-width:900px;margin:0 auto;padding:2rem;background:var(--color-white);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 1px 3px rgba(0,0,0,.1)}.results-header{margin-bottom:2rem}.results-header h3{font-size:1.5rem;color:var(--color-text-primary);margin:0 0 .5rem}.results-subtitle{font-size:.95rem;colour:var(--color-text-secondary);margin:0}.overall-score{display:flex;gap:2rem;padding:2rem;background:var(--color-bg-secondary);border-radius:8px;margin-bottom:2rem;align-items:center}.score-circle,.score-circle-small{flex-shrink:0}.score-details{flex:1}.score-summary{font-size:1.1rem;font-weight:600;colour:var(--color-text-primary);margin:0 0 .5rem}.score-stats{font-size:.95rem;colour:var(--color-text-secondary);margin:0 0 .5rem}.score-cost,.score-tokens{font-size:.9rem;colour:var(--color-text-tertiary);margin:.25rem 0}.validation-success{padding:2rem;background:linear-gradient(135deg,var(--color-success-light) 0,rgba(16,185,129,.05) 100%);border:1px solid var(--color-success);border-radius:8px;text-align:center;margin-bottom:2rem}.success-icon{font-size:3rem;margin-bottom:1rem}.validation-success p{font-size:1.1rem;font-weight:600;colour:var(--color-success-dark);margin:0}.failed-scenes{margin-bottom:2rem}.failed-scenes h4{font-size:1rem;font-weight:600;colour:var(--color-text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.5px}.scene-issues{padding:1.5rem;background:var(--color-bg-secondary);border-radius:8px;margin-bottom:1rem;border-left:4px solid var(--color-warning)}.scene-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.scene-title{font-weight:600;colour:var(--color-text-primary);margin:0}.scene-score{padding:.25rem .75rem;border-radius:4px;font-weight:600;font-size:.875rem}.scene-score.score-excellent{background:var(--color-success-light);colour:var(--color-success-dark)}.scene-score.score-good{background:var(--color-info-light);colour:var(--color-info-dark)}.scene-score.score-warning{background:var(--color-warning-light);colour:var(--color-warning-dark)}.scene-score.score-critical{background:var(--color-error-light);colour:var(--color-error-dark)}.issues-list{list-style:none;margin:0;padding:0}.issue{padding:1rem;margin-bottom:.75rem;background:var(--color-white);border-left:3px solid var(--color-text-tertiary);border-radius:4px}.issue.severity-critical{border-left-color:var(--color-error);background:rgba(220,38,38,.03)}.issue.severity-high{border-left-color:var(--color-warning);background:rgba(217,119,6,.03)}.issue.severity-medium{border-left-color:var(--color-info);background:rgba(37,99,235,.03)}.issue.severity-low{border-left-color:var(--color-text-tertiary)}.issue-type{display:inline-block;padding:.25rem .5rem;background:var(--color-brand-light);color:var(--color-brand-primary);border-radius:3px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;margin-bottom:.5rem}.issue-message{colour:var(--color-text-primary);margin:.5rem 0;line-height:1.5}.issue-suggestion{colour:var(--color-text-secondary);margin:.5rem 0 0;font-style:italic;padding-top:.5rem;border-top:1px solid var(--color-border)}.continuity-issues{margin-bottom:2rem;padding:1.5rem;background:var(--color-bg-secondary);border-radius:8px}.continuity-issues h4{font-size:1rem;font-weight:600;colour:var(--color-text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.5px}.issue-header{justify-content:space-between;margin-bottom:.5rem}.severity-badge{padding:.25rem .5rem;border-radius:3px;font-size:.75rem;font-weight:600;text-transform:uppercase}.severity-badge.severity-critical{background:var(--color-error-light);colour:var(--color-error-dark)}.severity-badge.severity-high{background:var(--color-warning-light);colour:var(--color-warning-dark)}.severity-badge.severity-medium{background:var(--color-info-light);colour:var(--color-info-dark)}.severity-badge.severity-low{background:var(--color-bg-secondary);colour:var(--color-text-secondary)}.issue-location{font-size:.875rem;colour:var(--color-text-tertiary);margin:.5rem 0 0}.auto-fixed-notice{padding:1.5rem;background:linear-gradient(135deg,var(--color-success-light) 0,rgba(16,185,129,.05) 100%);border:1px solid var(--color-success);border-radius:8px;margin-bottom:2rem}.notice-content{display:flex;gap:1rem;margin-bottom:1rem}.notice-icon{font-size:2rem;flex-shrink:0}.notice-title{font-weight:600;colour:var(--color-success-dark);margin:0}.notice-description{font-size:.95rem;colour:var(--color-text-primary);margin:.5rem 0 0;line-height:1.5}.notice-actions{display:flex;gap:1rem;flex-wrap:wrap}.results-footer{padding:1.5rem;background:var(--color-bg-secondary);border-radius:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;border-top:2px solid var(--color-border)}.footer-stat{display:flex;flex-direction:column}.stat-label{font-size:.875rem;colour:var(--color-text-tertiary);font-weight:500;margin-bottom:.25rem}.stat-value{font-size:1.25rem;font-weight:600;colour:var(--color-text-primary)}.stat-value.score-excellent{colour:var(--color-success-dark)}.stat-value.score-good{colour:var(--color-info-dark)}.stat-value.score-warning{colour:var(--color-warning-dark)}.stat-value.score-critical{colour:var(--color-error-dark)}.debate-transcript{max-width:900px;margin:0 auto;padding:2rem;background:var(--color-white);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 1px 3px rgba(0,0,0,.1)}.transcript-header{margin-bottom:2rem}.transcript-header h3{font-size:1.5rem;font-weight:600;colour:var(--color-text-primary);margin:0 0 .5rem}.transcript-subtitle{font-size:.95rem;colour:var(--color-text-secondary);margin:0}.session-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;padding:1.5rem;background:var(--color-bg-secondary);border-radius:8px;margin-bottom:2rem}.overview-item{display:flex;flex-direction:column;align-items:center;text-align:center}.overview-score{margin-bottom:1rem}.overview-label{font-size:.875rem;colour:var(--color-text-tertiary);font-weight:500;margin-bottom:.5rem}.overview-value{font-size:1.1rem;font-weight:600;colour:var(--color-text-primary)}.overview-value.cost{colour:var(--color-brand-primary)}.approved-badge{background:var(--color-success-light);colour:var(--color-success-dark)}.approved-badge,.revision-badge{display:inline-block;padding:.35rem .75rem;border-radius:4px;font-weight:600;font-size:.9rem}.revision-badge{background:var(--color-warning-light);colour:var(--color-warning-dark)}.debate-rounds{margin-bottom:2rem}.rounds-title{font-size:1rem;font-weight:600;colour:var(--color-text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.5px}.round-container{margin-bottom:1rem;border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.round-summary{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--color-bg-secondary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:600;colour:var(--color-text-primary);transition:background .2s ease}.round-summary:hover{background:var(--color-border)}.round-number{font-size:1rem;font-weight:600}.round-agents{font-size:.875rem;colour:var(--color-text-secondary);font-weight:400}.round-content{padding:1.5rem;background:var(--color-white)}.agent-responses{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.agent-response{padding:1.5rem;background:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border)}.response-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.agent-name{font-weight:600;colour:var(--color-text-primary);margin:0;flex:1}.response-score{margin-left:1rem}.score-circle-small{display:block}.score-text-small{font-weight:600;font-size:12px}.response-section{margin-bottom:1rem}.response-section:last-child{margin-bottom:0}.section-title{font-weight:600;colour:var(--color-text-primary);margin:0 0 .75rem;font-size:.95rem;display:flex;align-items:center;gap:.5rem}.section-icon{font-size:1.1rem}.strengths-section .section-icon{colour:var(--color-success)}.weaknesses-section .section-icon{colour:var(--color-warning)}.critical-section .section-icon{colour:var(--color-error)}.suggestions-section .section-icon{colour:var(--color-info)}.section-list{list-style:none;margin:0;padding:0}.list-item{padding:.5rem 0;colour:var(--color-text-primary);font-size:.9rem;line-height:1.4}.list-item:before{content:"•";margin-right:.5rem;font-weight:600}.strengths-section .list-item:before{colour:var(--color-success)}.weaknesses-section .list-item:before{colour:var(--color-warning)}.critical-list .list-item:before{colour:var(--color-error)}.suggestions-section .list-item:before{colour:var(--color-info)}.synthesis-section{padding:1.5rem;background:var(--color-white);border-radius:8px;border-left:3px solid var(--color-info);margin-top:1.5rem}.synthesis-title{font-weight:600;margin:0 0 .75rem}.synthesis-text,.synthesis-title{colour:var(--color-text-primary);font-size:.95rem}.synthesis-text{margin:0;line-height:1.6}.final-consensus{margin-bottom:2rem}.final-consensus h4{font-size:1rem;font-weight:600;colour:var(--color-text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.5px}.consensus-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.consensus-vote{padding:1.25rem;background:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border)}.vote-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.vote-agent{font-weight:600;colour:var(--color-text-primary);margin:0;font-size:.95rem}.vote-badge{display:inline-block;padding:.25rem .5rem;border-radius:3px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.vote-approve{background:var(--color-success-light);colour:var(--color-success-dark)}.vote-reject{background:var(--color-error-light);colour:var(--color-error-dark)}.vote-revise{background:var(--color-warning-light);colour:var(--color-warning-dark)}.vote-score{display:flex;justify-content:space-between;align-items:center}.vote-label{font-size:.875rem;colour:var(--color-text-secondary);font-weight:500}.vote-value{font-weight:600;colour:var(--color-brand-primary);font-size:1.1rem}.transcript-details{margin-top:2rem}.transcript-summary{padding:1rem;background:var(--color-bg-secondary);border-radius:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:600;colour:var(--color-text-primary);transition:background .2s ease}.transcript-summary:hover{background:var(--color-border)}.transcript-content{padding:1.5rem;background:var(--color-white);border:1px solid var(--color-border);border-top:none;border-radius:0 0 8px 8px}.transcript-text{margin:0;padding:0;colour:var(--color-text-primary);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;line-height:1.6;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word}@media (max-width:768px){.debate-transcript,.validation-results,.writers-room-config{padding:1rem}.agent-responses,.consensus-grid,.cost-estimate,.presets-grid,.session-overview{grid-template-columns:1fr}.overall-score{flex-direction:column;text-align:center}.results-footer{grid-template-columns:1fr}.notice-actions{flex-direction:column}.button-primary,.button-secondary,.save-button{width:100%}}.button-primary:focus,.button-secondary:focus,.input-field:focus,.preset-card:focus,.save-button:focus,.select-field:focus,.toggle-input:focus{outline:2px solid var(--color-brand-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.button-primary,.button-secondary,.input-field,.preset-card,.round-summary,.save-button,.select-field,.transcript-summary{transition:none}.button-primary:hover,.save-button:hover{transform:none}}.writers-room-config-panel{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.writers-room-config-panel h2{margin:0 0 8px;font-size:24px;font-weight:600;color:#111827}.config-description{color:#6b7280;margin-bottom:24px}.preset-selector{margin-bottom:32px}.preset-selector h3{font-size:18px;font-weight:600;margin-bottom:16px;color:#111827}.preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.preset-card{border:2px solid #e5e7eb;border-radius:8px;padding:16px;text-align:left;background:#fff;cursor:pointer;transition:all .2s}.preset-card:hover{border-color:#3b82f6;box-shadow:0 4px 6px rgba(0,0,0,.1)}.preset-card.selected{border-color:#3b82f6;background:#eff6ff}.preset-name{font-size:16px;font-weight:600;margin-bottom:4px;color:#111827}.preset-description{font-size:14px;color:#6b7280;margin-bottom:8px}.preset-cost{font-size:14px;font-weight:600;color:#059669;margin-bottom:4px}.preset-quality{font-size:13px;color:#6b7280}.custom-config{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;padding:16px;margin-bottom:24px}.custom-config h3{margin:0 0 8px;font-size:16px;color:#92400e}.custom-config .warning{margin:0;color:#92400e;font-size:14px}.advanced-settings{border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:24px}.advanced-settings summary{cursor:pointer;font-size:16px;font-weight:600;color:#111827;list-style:none}.advanced-settings summary::-webkit-details-marker{display:none}.advanced-settings summary:after{content:" ▼";font-size:12px;color:#6b7280}.advanced-settings[open] summary:after{content:" ▲"}.stage-toggles{margin-top:16px}.stage-toggles h4{font-size:15px;font-weight:600;margin-bottom:12px;color:#111827}.stage-toggle{display:flex;gap:12px;padding:12px;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:8px;cursor:pointer}.stage-toggle:hover{background:#f9fafb}.stage-toggle input[type=checkbox]{margin-top:2px;cursor:pointer}.stage-info{flex:1}.stage-info strong{display:inline-block;margin-right:8px;color:#111827}.stage-cost{background:#dbeafe;color:#1e40af;font-size:13px;margin-right:8px}.badge-recommended,.stage-cost{display:inline-block;padding:2px 8px;border-radius:4px;font-weight:600}.badge-recommended{background:#dcfce7;color:#166534;font-size:12px}.stage-info p{margin:4px 0 0;font-size:14px;color:#6b7280}.budget-cap,.mode-selection,.strictness-selection{margin-top:24px}.budget-cap h4,.mode-selection h4,.strictness-selection h4{font-size:15px;font-weight:600;margin-bottom:8px;color:#111827}.mode-selection label{display:block;margin-bottom:8px;cursor:pointer}.budget-cap input,.strictness-selection select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.help-text{font-size:13px;color:#6b7280;margin-top:4px}.cost-estimate{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:24px}.cost-estimate h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#111827}.cost-breakdown{font-size:14px;color:#6b7280;margin-bottom:12px}.cost-breakdown div{margin-bottom:4px}.cost-total{color:#111827;padding-top:12px;border-top:1px solid #e5e7eb}.cost-total,.save-config-btn{font-size:16px;font-weight:600}.save-config-btn{width:100%;padding:12px 24px}.retroactive-validation-dialog{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.dialog-overlay{position:absolute;inset:0;background:rgba(0,0,0,.5)}.dialog-content{position:relative;background:#fff;border-radius:12px;max-width:800px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px rgba(0,0,0,.1)}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.dialog-header h2{margin:0;font-size:24px;font-weight:600;color:#111827}.close-btn{background:none;border:none;font-size:32px;color:#6b7280;cursor:pointer;line-height:1;padding:0;width:32px;height:32px}.close-btn:hover{color:#111827}.dialog-body{padding:24px}.dialog-description{color:#6b7280;margin-bottom:24px}.validation-type-selector h3{font-size:18px;font-weight:600;margin-bottom:16px;color:#111827}.validation-type-option{display:flex;gap:12px;padding:16px;border:2px solid #e5e7eb;border-radius:8px;margin-bottom:12px;cursor:pointer;transition:all .2s}.validation-type-option:hover{border-color:#3b82f6;background:#f9fafb}.validation-type-option input[type=radio]:checked~.option-info{color:#1e40af}.validation-type-option input[type=radio]{margin-top:2px;cursor:pointer}.option-info{flex:1}.option-info .cost,.option-info strong{display:inline-block;margin-right:8px}.option-info .cost{background:#dbeafe;color:#1e40af;padding:2px 8px;border-radius:4px;font-size:13px;font-weight:600}.option-info p{margin:4px 0 0;font-size:14px;color:#6b7280}.dialog-actions{display:flex;gap:12px;margin-top:24px}.dialog-actions button{flex:1}.validation-progress{padding:48px 24px;text-align:center}.spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(1turn)}}.validation-results{padding:24px}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.results-header h3{margin:0;font-size:20px;font-weight:600;color:#111827}.overall-score{text-align:center}.score-circle{margin-bottom:8px}.score-label{font-size:14px;color:#6b7280}.results-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.summary-item{background:#f9fafb;border-radius:8px;padding:16px;text-align:center}.summary-item strong{display:block;font-size:28px;font-weight:700;color:#111827;margin-bottom:4px}.summary-item span{font-size:14px;color:#6b7280}.summary-item.critical strong{color:#dc2626}.issues-list,.recommendations-list{margin-bottom:24px}.issues-list h4,.recommendations-list h4{font-size:18px;font-weight:600;margin-bottom:12px;color:#111827}.issue-item{border-left:4px solid;background:#f9fafb;border-radius:6px;padding:16px;margin-bottom:12px}.issue-header{display:flex;gap:8px;align-items:center;margin-bottom:8px}.issue-severity{display:inline-block;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase}.issue-category,.issue-chapter{font-size:13px;color:#6b7280;font-weight:500}.issue-description{color:#374151;margin-bottom:8px}.issue-fix{font-size:14px;color:#059669}.recommendation-item{background:#f0fdfa;border:1px solid #99f6e4;border-radius:6px;padding:16px;margin-bottom:12px}.recommendation-action{font-weight:600;color:#115e59;margin-bottom:4px}.recommendation-cost,.recommendation-impact{font-size:14px;color:#6b7280;margin-top:4px}.validation-history{padding:24px}.validation-history h3{font-size:20px;font-weight:600;margin-bottom:16px;color:#111827}.no-history{text-align:center;color:#6b7280;padding:48px 24px}.history-list{margin-bottom:24px}.history-item{border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:12px;cursor:pointer;transition:all .2s}.history-item:hover{border-color:#3b82f6;box-shadow:0 2px 4px rgba(0,0,0,.1)}.history-header{display:flex;justify-content:space-between;margin-bottom:8px}.history-type{font-weight:600;color:#111827;text-transform:capitalize}.history-date{font-size:14px;color:#6b7280}.history-score{font-size:24px;font-weight:700;margin-bottom:4px}.history-issues{font-size:14px;color:#6b7280}.config-error,.config-loading{padding:48px 24px;text-align:center;color:#6b7280}.config-error{color:#dc2626}.btn-primary,.btn-secondary{padding:12px 24px;border:none;border-radius:6px;font-weight:600;font-size:16px;cursor:pointer;transition:all .2s ease}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover{background:#e5e7eb}.skip-controls{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:16px}.skip-controls.cancelled,.skip-controls.completed,.skip-controls.failed,.skip-controls.loading{text-align:center;padding:32px 20px}.skip-controls .status-icon{font-size:48px;margin-bottom:12px}.skip-controls.completed .status-icon{color:#22c55e}.skip-controls.cancelled .status-icon{color:#6b7280}.skip-controls.failed .status-icon{color:#ef4444}.skip-controls .status-message{font-size:16px;color:#374151;margin:0}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.progress-header h4{margin:0;font-size:16px;font-weight:600;color:#111827}.progress-percent{font-size:18px;font-weight:700;color:#3b82f6}.progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:12px}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:width .3s ease}.progress-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:14px;color:#6b7280}.current-agent{font-weight:500;color:#374151;margin:0}.agent-count{color:#6b7280;font-weight:400;margin-left:8px}.elapsed-time{margin:0;font-variant-numeric:tabular-nums}.btn-skip{width:100%;padding:10px 16px;background:#fff;border:2px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:600;color:#374151;cursor:pointer;transition:all .2s}.btn-skip:hover{border-color:#3b82f6;color:#3b82f6}.btn-skip:disabled{opacity:.5;cursor:not-allowed}.cancel-confirm{background:#fef3c7;border:1px solid #fbbf24;border-radius:6px;padding:16px;margin-top:16px}.cancel-confirm p{margin:0 0 8px;color:#92400e}.cancel-confirm .confirm-message{font-size:14px;margin-bottom:16px}.confirm-actions{display:flex;gap:8px}.confirm-actions button{flex:1;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-danger{background:#dc2626;border:none;color:#fff}.btn-danger:hover{background:#b91c1c}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.cost-dashboard,.quality-dashboard{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.cost-dashboard.empty,.cost-dashboard.loading,.quality-dashboard.empty,.quality-dashboard.loading{text-align:center;padding:48px 24px}.cost-dashboard .help-text,.quality-dashboard .help-text{font-size:14px;color:#6b7280;margin-top:8px}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.dashboard-header h3{margin:0;font-size:20px;font-weight:600;color:#111827}.dashboard-header select{padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;cursor:pointer}.cost-summary-grid,.quality-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}.summary-card{background:#f9fafb;border-radius:8px;padding:20px;text-align:center}.summary-card .card-label{font-size:13px;color:#6b7280;margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.summary-card .card-value{font-size:32px;font-weight:700;color:#111827;margin-bottom:4px}.summary-card .card-value.score{font-size:40px}.summary-card .card-meta{font-size:14px;color:#6b7280}.summary-card .card-meta .critical{color:#ef4444;font-weight:600}.cost-breakdown,.quality-breakdown{margin-bottom:32px}.cost-breakdown h4,.quality-breakdown h4{font-size:16px;font-weight:600;margin-bottom:16px;color:#111827}.breakdown-list{display:flex;flex-direction:column;gap:12px}.breakdown-item{display:grid;grid-template-columns:150px 1fr 80px;gap:12px;align-items:center}.breakdown-label{font-size:14px;font-weight:500;color:#374151}.breakdown-bar{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.breakdown-fill{height:100%;background:#3b82f6;transition:width .3s ease}.breakdown-fill.model{background:#8b5cf6}.breakdown-value{text-align:right;font-size:14px;font-weight:600;color:#111827}.cost-trend,.quality-trend{margin-top:32px}.cost-trend h4,.quality-trend h4{font-size:16px;font-weight:600;margin-bottom:16px;color:#111827}.trend-chart{display:flex;align-items:flex-end;gap:4px;height:200px;background:#f9fafb;border-radius:8px;padding:16px;margin-bottom:12px}.trend-bar-container{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.trend-bar{width:100%;background:#3b82f6;border-radius:4px 4px 0 0;transition:height .3s ease;cursor:pointer}.trend-label{font-size:11px;color:#6b7280;margin-top:4px}.trend-legend{display:flex;justify-content:space-between;font-size:14px;color:#6b7280}@media (max-width:768px){.breakdown-item{grid-template-columns:1fr;gap:4px}.breakdown-value{text-align:left}.cost-summary-grid,.quality-summary-grid{grid-template-columns:repeat(2,1fr)}}