:root{color:#17202a;background:#f6f7f9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}.eyebrow{color:#5f6c7b;text-transform:uppercase;margin:0 0 12px;font-size:.875rem;font-weight:700}h1{margin:0;font-size:2.5rem;font-weight:800}.summary{color:#415064;max-width:52ch;margin:16px 0 0;font-size:1.125rem}button,input,textarea{font:inherit}button{color:#fff;cursor:pointer;background:#215a9b;border:0;border-radius:6px;min-height:40px;padding:0 16px;font-weight:700}button:disabled{cursor:not-allowed;opacity:.55}.compact-button{min-height:32px;padding:0 10px;font-size:.8125rem}.secondary-button{color:#344358;background:#fff;border:1px solid #b9c4d1}.danger-button{background:#a33a3a}.app-nav{z-index:10;background:#fff;border-bottom:1px solid #d8dde6;justify-content:space-between;align-items:center;padding:14px 32px;display:flex;position:sticky;top:0}.app-nav button{color:#344358;background:0 0;border:1px solid #0000;min-height:36px;padding:0 12px}.app-nav button:hover,.app-nav button.is-active{color:#174a83;background:#eef4fb;border-color:#c8d4e2}.app-nav .brand-button{color:#17202a;font-size:1rem;font-weight:800}.nav-menu{align-items:center;gap:8px;display:flex}.app-shell{min-height:calc(100vh - 65px);padding:48px 32px}.placeholder{max-width:1180px;margin:0 auto;padding:48px 0}.source-page,.project-page,.dashboard-page{min-height:calc(100vh - 65px);padding:32px}.source-header,.project-header,.dashboard-header{max-width:1180px;margin:0 auto 28px}.dashboard-header{padding-top:32px}.dashboard-links{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.dashboard-links a,.dashboard-links span{color:#344358;background:#fff;border:1px solid #d8dde6;border-radius:6px;padding:8px 10px;font-size:.875rem;font-weight:700;text-decoration:none}.dashboard-links a{color:#174a83;border-color:#9fb8d4}.source-layout,.project-layout{grid-template-columns:minmax(0,1fr) minmax(320px,440px);align-items:start;gap:24px;max-width:1180px;margin:0 auto;display:block}.workflow-section{background:#fff;border:1px solid #d8dde6;border-radius:8px;max-width:1180px;margin:24px auto 0;padding:24px;box-shadow:0 12px 32px #17202a12}.export-form{gap:18px;display:grid}.export-form fieldset{border:1px solid #d8dde6;border-radius:8px;padding:16px}.export-options{flex-wrap:wrap;gap:12px 24px;margin-top:12px;display:flex}.export-options label{align-items:center;gap:8px;display:flex}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.status-panel{justify-items:start;gap:8px;display:grid}.status-panel p{margin:0}.status-pill{color:#24415f;background:#e9eff7;border-radius:999px;padding:6px 10px;font-size:.8125rem;font-weight:800}.status-running{color:#174a83;background:#eef4fb}.status-failed{color:#9b2c2c;background:#fff1f1}.status-completed{color:#24573a;background:#e8f3ec}.review-draft{color:#174a83;background:#eef4fb}.review-needsreview{color:#76520f;background:#fff7df}.artifact-results{gap:20px;margin-top:20px;display:grid}.artifact-group{gap:12px;display:grid}.artifact-group-heading,.artifact-item-heading,.artifact-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.artifact-group-heading span{color:#24415f;background:#e9eff7;border-radius:999px;padding:6px 10px;font-size:.8125rem;font-weight:800}.artifact-items{gap:10px;display:grid}.artifact-item{background:#f8fafc;border:1px solid #e3e8ef;border-radius:8px;padding:16px}.artifact-item-unsupported{background:#fffaf0;border-color:#d69e2e}.artifact-item h4{color:#17202a;margin:0;font-size:1rem;line-height:1.35}.artifact-item p{color:#415064;white-space:pre-wrap;margin:10px 0 0}.artifact-item .unsupported-warning{color:#6f4a0b;background:#fff7df;border:1px solid #e8c779;border-radius:6px;padding:8px 10px;font-size:.875rem;font-weight:800}.artifact-meta{flex-wrap:wrap;justify-content:flex-start;margin-top:12px}.artifact-meta span{color:#5f6c7b;background:#fff;border-radius:999px;padding:5px 8px;font-size:.8125rem;font-weight:700}.artifact-meta .unsupported-flag{color:#fff;background:#8a5a12}.confidence-pill{border-radius:999px;padding:5px 8px;font-size:.8125rem;font-weight:800;display:inline-flex}.confidence-high{color:#24573a}.confidence-medium{color:#76520f;background:#fff7df}.confidence-low{color:#9b2c2c;background:#fff1f1}.confidence-unavailable{color:#5f6c7b}.artifact-meta .confidence-high{color:#24573a;background:#e8f3ec}.artifact-meta .confidence-medium{color:#76520f;background:#fff7df}.artifact-meta .confidence-low{color:#9b2c2c;background:#fff1f1}.artifact-meta .confidence-unavailable{color:#5f6c7b;background:#edf0f4}.artifact-details-button{margin-top:12px}.artifact-inline-details{gap:10px;margin-top:14px;display:grid}.artifact-details-workspace{border-top:1px solid #d8dde6;gap:16px;margin-top:24px;padding-top:24px;display:grid}.artifact-details-panel{background:#fff;border:1px solid #d8dde6;border-radius:8px;gap:16px;padding:18px;display:grid}.artifact-details-unsupported{background:#fffaf0;border-color:#d69e2e}.artifact-details-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.artifact-details-header h3{font-size:1.15rem;line-height:1.35}.artifact-details-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;display:grid}.artifact-details-grid div{background:#f8fafc;border:1px solid #e3e8ef;border-radius:6px;padding:10px}.artifact-details-grid dt{color:#5f6c7b;font-size:.8125rem;font-weight:800}.artifact-details-grid dd{color:#17202a;word-break:break-word;margin:4px 0 0;font-size:.875rem;font-weight:700}.artifact-detail-block{gap:8px;display:grid}.artifact-detail-block h4{color:#17202a;margin:0;font-size:.95rem}.artifact-detail-block p{color:#415064;white-space:pre-wrap;margin:0}.revision-history{gap:8px;margin:0;padding:0;display:grid}.revision-history li{color:#415064;background:#f8fafc;border:1px solid #e3e8ef;border-radius:6px;padding:10px;list-style:none}.revision-history-heading{color:#17202a;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.875rem;display:flex}.revision-history-heading span{color:#5f6c7b;font-weight:700}.review-action-bar,.review-edit-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.review-edit-form{gap:10px;display:grid}.review-edit-form .field{margin-bottom:0}.review-edit-form textarea{min-height:140px}.artifact-detail-list{gap:8px;margin:0;padding:0;display:grid}.artifact-detail-list li{color:#415064;background:#f8fafc;border:1px solid #e3e8ef;border-radius:6px;padding:10px;list-style:none}.criterion-review-row{align-items:flex-start;gap:8px;width:100%;display:flex}.criterion-review-row>span:not(.status-pill),.criterion-review-row .review-edit-form{flex:260px}.artifact-evidence-list{gap:10px;display:grid}.artifact-evidence-list figure{background:#f8fafc;border:1px solid #d9e2ec;border-radius:6px;gap:8px;margin:0;padding:10px;display:grid}.artifact-evidence-list figcaption{color:#24415f;flex-wrap:wrap;gap:8px;font-size:.8125rem;font-weight:800;display:flex}.artifact-evidence-list blockquote{color:#2d3846;margin:0}.criterion-evidence{border-left:3px solid #2f6f9f;gap:10px;margin-top:14px;padding:12px 0 0 14px;display:grid}.criterion-evidence strong{color:#17202a;font-size:.875rem}.criterion-evidence figure{background:#fff;border:1px solid #d9e2ec;border-radius:6px;margin:0;padding:10px}.criterion-evidence figcaption{color:#24415f;flex-wrap:wrap;gap:8px;font-size:.8125rem;font-weight:800;display:flex}.criterion-evidence figcaption span{color:#8a5a12}.criterion-evidence figcaption .confidence-high{color:#24573a}.criterion-evidence figcaption .confidence-medium{color:#76520f}.criterion-evidence figcaption .confidence-low{color:#9b2c2c}.criterion-evidence figcaption .confidence-unavailable{color:#5f6c7b}.criterion-evidence blockquote{color:#2d3846;margin:8px 0 0;font-size:.9375rem;line-height:1.5}.criterion-evidence p{color:#66758a;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:.8125rem;display:flex}.criterion-evidence-warning{border-left-color:#b7791f}.traceability-table-wrap{background:#fff;border:1px solid #d8dde6;border-radius:8px;overflow-x:auto}.traceability-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:1100px}.traceability-table th,.traceability-table td{color:#2d3846;text-align:left;vertical-align:top;word-break:break-word;border-bottom:1px solid #e3e8ef;padding:10px;font-size:.875rem}.traceability-table th{color:#24415f;background:#eef4fb;font-size:.8125rem;font-weight:800}.traceability-table tbody tr:last-child td{border-bottom:0}.traceability-row-unsupported td{background:#fffaf0}.source-inspector{background:#f8fafc;border:1px solid #c8d4e2;border-radius:8px;gap:14px;margin-top:16px;padding:16px;display:grid}.source-modal-backdrop{z-index:50;background:#0f172a7a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.source-modal{background:#fff;border-radius:10px;width:min(980px,100%);max-height:min(760px,100vh - 48px);overflow:auto;box-shadow:0 24px 70px #0f172a52}.source-modal .source-inspector{background:#fff;border:0;border-radius:10px;margin-top:0}.source-inspector-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.source-inspector-meta{flex-wrap:wrap;gap:8px;display:flex}.source-inspector-meta span{color:#24415f;background:#e9eff7;border-radius:999px;padding:5px 8px;font-size:.8125rem;font-weight:800}.source-content-highlighted mark{color:inherit;background:#fff0a8;border-radius:3px;padding:1px 2px}.supported-flag,.unsupported-flag{border-radius:999px;padding:5px 8px;font-size:.8125rem;font-weight:800;display:inline-flex}.supported-flag{color:#24573a}.unsupported-flag{color:red;white-space:nowrap}.source-intake{gap:18px;display:grid}.source-list,.project-list{margin:0 0 15px}.source-form,.source-list,.project-form,.project-list{background:#fff;border:1px solid #d8dde6;border-radius:8px;padding:24px;box-shadow:0 12px 32px #17202a12}.form-heading,.list-heading,.form-footer,.source-item{justify-content:space-between;align-items:center;gap:16px;display:flex}.form-heading,.list-heading{margin-bottom:20px}h2,h3{margin:0}h2{font-size:1.25rem}h3{color:#17202a;font-size:1rem}.source-pill,.source-badges span,.source-badges strong{color:#24415f;background:#e9eff7;border-radius:999px;padding:6px 10px;font-size:.8125rem;font-weight:700}.field{color:#344358;gap:8px;margin-bottom:18px;font-weight:700;display:grid}.field input,.field textarea{color:#17202a;border:1px solid #b9c4d1;border-radius:6px;width:100%;padding:12px}.field input[type=file]{background:#fff}.field textarea{resize:vertical;min-height:280px}.validation-message,.muted,.source-item p{color:#5f6c7b}.validation-message{font-size:.9375rem}.validation-message.is-error,.error-banner,.failure-message{color:#9b2c2c}.error-banner{background:#fff1f1;border:1px solid #efb4b4;border-radius:6px;padding:12px}.source-items{gap:12px;display:grid}.empty-state{background:#f8fafc;border:1px dashed #b9c4d1;border-radius:8px;justify-items:start;gap:10px;padding:16px;display:grid}.empty-state p{margin:0}.source-item,.project-item{border:1px solid #e3e8ef;border-radius:8px;padding:16px}.source-edit-form{gap:12px;width:100%;display:grid}.source-edit-form .field{margin-bottom:0}.source-edit-form textarea{min-height:180px}.source-item p,.project-item p,.project-item small{color:#5f6c7b;margin:6px 0 0;font-size:.875rem}.project-items{gap:12px;display:grid}.project-item{justify-content:space-between;align-items:center;gap:16px;display:flex}.source-badges{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.source-content-panel{border-top:1px solid #e3e8ef;gap:14px;margin-top:20px;padding-top:20px;display:grid}.content-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.source-content{color:#17202a;white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #d8dde6;border-radius:6px;max-height:420px;margin:0;padding:14px;font-family:Cascadia Mono,Segoe UI Mono,Consolas,monospace;font-size:.875rem;line-height:1.6;overflow:auto}.source-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.source-badges strong{color:#24573a;background:#e8f3ec}.source-badges button{min-height:34px}.dashboard-nav{background:#fff;border-bottom:1px solid #d8dde6;justify-content:space-between;align-items:center;padding:14px 32px;display:flex}.dashboard-nav span{color:#24573a;background:#e8f3ec;border-radius:999px;padding:6px 10px;font-size:.8125rem;font-weight:700}.rf-home{background:linear-gradient(#f6f7f9 0%,#eef3f8 52%,#f6f7f9 100%);min-height:calc(100vh - 65px);padding:48px 32px;overflow-x:hidden}.rf-hero,.rf-section,.rf-cta{max-width:1180px;margin:0 auto}.rf-hero{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);align-items:center;gap:32px;min-height:calc(100vh - 180px);display:grid}.rf-hero__content{min-width:0}.rf-eyebrow{color:#5f6c7b;letter-spacing:0;text-transform:uppercase;margin:0 0 12px;font-size:.8125rem;font-weight:800}.rf-hero h1{color:#17202a;max-width:820px;line-height:.98}.rf-hero__summary,.rf-section p,.rf-cta p{color:#415064}.rf-hero__summary{max-width:72ch;margin:22px 0 0;font-size:1.125rem}.rf-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.rf-button{border-radius:6px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.rf-button--primary{color:#fff;background:#215a9b}.rf-button--secondary{color:#174a83;background:#fff;border:1px solid #9fb8d4}.rf-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:32px 0 0;display:grid}.rf-metric{background:#ffffffd1;border:1px solid #d8dde6;border-radius:8px;padding:16px}.rf-metric dt{color:#17202a;font-size:1.35rem;font-weight:900}.rf-metric dd{color:#5f6c7b;margin:4px 0 0;font-size:.9rem}.rf-hero-card{background:#fff;border:1px solid #d8dde6;border-radius:8px;gap:16px;padding:22px;display:grid;box-shadow:0 18px 48px #17202a1a}.rf-card-header{color:#344358;align-items:center;gap:10px;font-weight:800;display:flex}.rf-status-dot{background:#2f8f57;border-radius:999px;width:10px;height:10px}.rf-artifact-card{background:#f8fafc;border:1px solid #e3e8ef;border-radius:8px;padding:18px}.rf-artifact-card h2{color:#17202a;margin-top:12px;font-size:1.15rem;line-height:1.35}.rf-artifact-card ul{color:#415064;gap:8px;margin:14px 0 0;padding-left:18px;display:grid}.rf-tag{color:#24573a;background:#e8f3ec;border-radius:999px;padding:6px 10px;font-size:.8125rem;font-weight:800;display:inline-flex}.rf-evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.rf-evidence-grid div{background:#fff;border:1px solid #e3e8ef;border-radius:8px;padding:14px}.rf-evidence-value,.rf-evidence-label{display:block}.rf-evidence-value{color:#174a83;font-size:1.4rem;font-weight:900}.rf-evidence-label{color:#5f6c7b;font-size:.8125rem;font-weight:700}.rf-section{padding:56px 0 0}.rf-section__heading{max-width:760px}.rf-section h2,.rf-cta h2{color:#17202a;line-height:1.15}.rf-workflow{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.rf-workflow-card,.rf-capability-panel,.rf-cta{background:#fff;border:1px solid #d8dde6;border-radius:8px}.rf-workflow-card{padding:18px}.rf-workflow-card span{color:#174a83;font-weight:900}.rf-workflow-card h3{margin-top:10px}.rf-section--split{grid-template-columns:minmax(0,.9fr) minmax(320px,1fr);align-items:start;gap:24px;display:grid}.rf-capability-panel{gap:10px;padding:18px;display:grid}.rf-capability{align-items:center;gap:10px;display:flex}.rf-capability span{color:#24573a;background:#e8f3ec;border-radius:999px;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-weight:900;display:inline-flex}.rf-capability p{margin:0;font-weight:700}.rf-cta{justify-content:space-between;align-items:center;gap:24px;margin-top:56px;padding:24px;display:flex}@media (width<=820px){.app-nav{flex-direction:column;align-items:stretch;gap:10px;padding:12px 20px}.nav-menu{grid-template-columns:1fr 1fr;display:grid}.app-shell{min-height:calc(100vh - 113px);padding:32px 20px}.source-page,.project-page{padding:20px}.source-layout,.project-layout{grid-template-columns:1fr}.form-footer,.source-item,.project-item{flex-direction:column;align-items:stretch}.source-badges{justify-content:flex-start}.content-heading{flex-direction:column;align-items:stretch}.artifact-group-heading,.artifact-item-heading,.artifact-details-header{flex-direction:column;align-items:flex-start}.artifact-details-grid{grid-template-columns:1fr}.artifact-detail-list li{flex-direction:column}.rf-home{padding:32px 20px}.rf-hero,.rf-section--split,.rf-cta{grid-template-columns:1fr}.rf-hero{min-height:0}.rf-metrics,.rf-workflow,.rf-evidence-grid{grid-template-columns:1fr}.rf-cta{flex-direction:column;align-items:stretch}.rf-button{width:100%}.dashboard-nav{flex-direction:column;align-items:stretch;gap:10px;padding:14px 20px}}.artifact-heading-badges{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.quality-score-badge{border:1px solid;border-radius:999px;padding:.3rem .65rem;font-size:.82rem;font-weight:800}.quality-high{color:#166534;background:#dcfce7}.quality-medium{color:#92400e;background:#fef3c7}.quality-low{color:#991b1b;background:#fee2e2}.quality-report-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.quality-report-heading h4{margin:0}.quality-report-heading strong{font-size:1.35rem}.quality-issue-list{gap:.75rem;margin-top:1rem;display:grid}.quality-issue{border:1px solid var(--border-color,#d8dee9);border-left:4px solid #64748b;border-radius:.5rem;padding:.75rem}.quality-issue-high{border-left-color:#b42318}.quality-issue-medium{border-left-color:#b54708}.quality-issue-low{border-left-color:#175cd3}.quality-issue-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.generation-progress{margin-top:1rem}.generation-progress-label{justify-content:space-between;gap:1rem;margin-bottom:.45rem;display:flex}.generation-progress progress{accent-color:#6366f1;width:100%;height:.75rem}.success-banner{color:#166534;background:#f0fdf4;border:1px solid #86efac;border-radius:.75rem;padding:.85rem 1rem}
