:root{--bg-canvas: #0a0b0d;--bg-panel: rgba(21, 22, 25, .72);--bg-panel-2: rgba(32, 33, 38, .55);--border-subtle: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--text-primary: #f6f2e8;--text-secondary: #9c9a92;--text-tertiary: #828179;--amber: #ff9d2e;--amber-hover: #ffb052;--amber-bg: rgba(255, 157, 46, .1);--amber-border: rgba(255, 157, 46, .4);--green: #58d69a;--green-bg: rgba(74, 197, 124, .14);--green-border: rgba(74, 197, 124, .35);--red: #ff6b6f;--red-bg: rgba(255, 107, 111, .14);--red-border: rgba(255, 107, 111, .35);--gold: #d3ab68;--gold-bg: rgba(211, 171, 104, .14);--gold-border: rgba(211, 171, 104, .35);--gray: #a8adb8;--gray-bg: rgba(154, 160, 171, .12);--gray-border: rgba(154, 160, 171, .28);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 10px;--font-display: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--shadow-diffuse: 0 24px 60px rgba(0, 0, 0, .4);--shadow-panel: 0 16px 40px rgba(0, 0, 0, .3);--motion-fast: .14s;--motion-medium: .22s;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg-canvas);background-image:radial-gradient(rgba(255,255,255,.055) 1px,transparent 1px);background-size:22px 22px;color:var(--text-primary);font-family:var(--font-display);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button{font-family:inherit}a{color:inherit}::selection{background:var(--amber-bg);color:var(--text-primary)}:focus{outline:none}:focus-visible{outline:none;box-shadow:0 0 0 3px var(--bg-canvas),0 0 0 6px var(--amber);border-radius:var(--radius-sm)}.panel-eyebrow{margin:0 0 10px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary)}.app-shell{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1.6fr) minmax(320px,1fr);gap:20px;max-width:1560px;margin:0 auto;padding:24px}.main-column{display:flex;flex-direction:column;gap:24px;min-width:0}.left-rail{display:flex;flex-direction:column;gap:28px;padding:20px 16px;background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);height:fit-content;position:sticky;top:24px}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:30px;height:30px;border-radius:9px;background:var(--amber);color:#1c1206;display:grid;place-items:center;font-weight:800;font-size:14px}.brand-name{font-weight:800;letter-spacing:-.01em;font-size:15px}.rail-label{margin:0 0 8px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.run-summary{display:flex;flex-direction:column;gap:4px}.run-goal{margin:0;font-size:13px;color:var(--text-primary);line-height:1.4}.run-id,.run-approved{margin:0;font-size:11px;color:var(--text-tertiary);font-family:var(--font-mono)}.run-summary-empty{margin:0;font-size:12px;color:var(--text-tertiary)}.rail-section-export{margin-top:auto}.export-button{width:100%;min-height:44px;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg-panel-2);color:var(--text-primary);font-size:13px;font-weight:600;cursor:pointer;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease}.export-button:hover:not(:disabled){border-color:var(--amber-border);background:var(--amber-bg)}.export-button:disabled{opacity:.5;cursor:not-allowed}.verdict-seal{position:relative;padding:40px 36px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-diffuse);overflow:hidden}.verdict-ring{position:absolute;top:-120px;right:-120px;width:320px;height:320px;border-radius:50%;filter:blur(10px);opacity:.5;pointer-events:none}.verdict-verified .verdict-ring{background:radial-gradient(circle,var(--green) 0%,transparent 70%)}.verdict-unverified .verdict-ring{background:radial-gradient(circle,var(--gray) 0%,transparent 70%)}.verdict-blocked .verdict-ring{background:radial-gradient(circle,var(--gold) 0%,transparent 70%)}.verdict-contradicted .verdict-ring{background:radial-gradient(circle,var(--red) 0%,transparent 70%)}.verdict-eyebrow{position:relative;margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary)}.verdict-headline{position:relative;margin:0 0 12px;font-size:clamp(40px,5.5vw,64px);font-weight:800;letter-spacing:-.03em;line-height:1}.verdict-verified .verdict-headline{color:var(--green)}.verdict-unverified .verdict-headline{color:var(--text-primary)}.verdict-blocked .verdict-headline{color:var(--gold)}.verdict-contradicted .verdict-headline{color:var(--red)}.verdict-detail{position:relative;margin:0 0 20px;max-width:52ch;color:var(--text-secondary);font-size:14px}.verdict-count{position:relative;margin:0;display:inline-block;padding:6px 12px;border-radius:999px;border:1px solid var(--border-strong);font-size:12px;font-weight:600;color:var(--text-secondary)}.requirements-section{padding:24px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-panel)}.requirement-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.requirement-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 12px;border-top:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;min-height:44px;transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease}.requirement-list li:first-child{border-top:none}.requirement-row:hover{background:var(--bg-panel-2)}.requirement-selected{background:var(--amber-bg);box-shadow:inset 3px 0 0 0 var(--amber)}.requirement-next-proof:not(.requirement-selected){box-shadow:inset 3px 0 0 0 var(--amber-border)}.requirement-selected:focus-visible,.requirement-next-proof:focus-visible{box-shadow:inset 3px 0 0 0 var(--amber),0 0 0 3px var(--bg-canvas),0 0 0 6px var(--amber)}.requirement-text{min-width:0}.requirement-description{margin:0 0 4px;font-size:14px;color:var(--text-primary)}.requirement-id{margin:0;font-size:11px;font-family:var(--font-mono);color:var(--text-tertiary)}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 6px;border-radius:999px;border:1px solid transparent;font-size:11px;font-weight:700;letter-spacing:.02em;white-space:nowrap;flex-shrink:0}.status-badge svg{width:16px;height:16px}.status-verified{color:var(--green);background:var(--green-bg);border-color:var(--green-border)}.status-unverified{color:var(--gray);background:var(--gray-bg);border-color:var(--gray-border)}.status-blocked{color:var(--gold);background:var(--gold-bg);border-color:var(--gold-border)}.status-contradicted{color:var(--red);background:var(--red-bg);border-color:var(--red-border)}.status-emphasis{color:var(--amber);background:var(--amber-bg);border-color:var(--amber-border)}.detail-rail{display:flex;flex-direction:column;gap:20px;min-width:0}.detail-column{display:flex;flex-direction:column;gap:20px}.evidence-panel,.next-proof-panel{padding:22px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-panel)}.panel-title{margin:0 0 4px;font-size:17px;letter-spacing:-.01em}.evidence-empty{margin:12px 0 0;font-size:13px;color:var(--text-tertiary)}.evidence-list{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}.evidence-entry{padding:14px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-panel-2)}.evidence-entry-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.evidence-kind-group{display:flex;align-items:center;gap:6px}.evidence-kind{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.evidence-repeat-badge{font-size:10px;font-weight:700;color:var(--text-tertiary);background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:999px;padding:1px 6px}.evidence-anchor{display:block;width:0;height:0;overflow:hidden}.evidence-outcome{font-size:11px;font-weight:700;text-transform:uppercase;padding:2px 8px;border-radius:999px}.evidence-outcome-pass{color:var(--green);background:var(--green-bg)}.evidence-outcome-fail{color:var(--red);background:var(--red-bg)}.evidence-outcome-unknown{color:var(--gray);background:var(--gray-bg)}.evidence-summary{margin:0 0 10px;font-size:13px;color:var(--text-primary)}.evidence-meta{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}.evidence-meta div{min-width:0}.evidence-meta dt{margin:0 0 2px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.evidence-meta dd{margin:0;font-size:12px;color:var(--text-secondary);font-family:var(--font-mono);overflow-wrap:anywhere}.evidence-digest{font-size:11px}.next-proof-panel{border-color:var(--gray-border)}.next-proof-active{border-color:var(--amber-border);background:linear-gradient(160deg,var(--amber-bg),transparent 60%)}.next-proof-done{border-color:var(--green-border)}.next-proof-head{margin-bottom:10px}.next-proof-title{margin:0 0 6px;font-size:15px;line-height:1.4}.next-proof-requirement{margin:0 0 14px;font-size:11px;font-family:var(--font-mono);color:var(--text-tertiary)}.next-proof-command{display:block;padding:10px 12px;border-radius:var(--radius-sm);background:#00000059;border:1px solid var(--border-subtle);font-family:var(--font-mono);font-size:12px;color:var(--amber-hover);overflow-wrap:anywhere}.loading-state{padding:60px 24px;text-align:center;color:var(--text-secondary);font-size:14px}.empty-state{padding:48px 32px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-panel);text-align:center;max-width:480px;margin:40px auto}.empty-state-title{margin:0 0 8px;font-size:20px;font-weight:700}.empty-state-detail{margin:0 0 20px;color:var(--text-secondary);font-size:13px;line-height:1.5}.empty-state-retry{min-height:44px;padding:10px 20px;border-radius:var(--radius-sm);border:1px solid var(--amber-border);background:var(--amber-bg);color:var(--amber-hover);font-weight:700;cursor:pointer}.empty-state-retry:hover{background:var(--amber);color:#1c1206}.primary-button,.secondary-button{min-height:44px;padding:10px 20px;border-radius:var(--radius-sm);font-size:13px;font-weight:700;cursor:pointer;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease,color var(--motion-fast) ease}.primary-button{border:1px solid var(--amber-border);background:var(--amber-bg);color:var(--amber-hover)}.primary-button:hover:not(:disabled){background:var(--amber);color:#1c1206}.secondary-button{border:1px solid var(--border-strong);background:var(--bg-panel-2);color:var(--text-primary)}.secondary-button:hover:not(:disabled){border-color:var(--amber-border);background:var(--amber-bg)}.primary-button:disabled,.secondary-button:disabled{opacity:.5;cursor:not-allowed}@keyframes proofline-appear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.screen{padding:32px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-panel);animation:proofline-appear var(--motion-medium) ease}.screen-title{margin:4px 0 10px;font-size:clamp(24px,3vw,32px);font-weight:800;letter-spacing:-.02em;line-height:1.2}.screen-subtitle{margin:0 0 24px;max-width:60ch;color:var(--text-secondary);font-size:14px;line-height:1.6}.new-run-form{display:flex;flex-direction:column;gap:10px;max-width:640px}.new-run-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary)}.new-run-textarea{padding:14px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:#00000040;color:var(--text-primary);font-family:inherit;font-size:14px;line-height:1.5;resize:vertical}.new-run-textarea:focus-visible{border-color:var(--amber-border)}.new-run-actions{display:flex;gap:12px;margin-top:4px;flex-wrap:wrap}.new-run-error{margin:4px 0 0;color:var(--red);font-size:13px}.new-run-validation{margin:4px 0 0;color:var(--gold);font-size:13px}.new-run-source-note{margin:24px 0 0;font-size:12px;color:var(--text-tertiary);font-family:var(--font-mono)}.contract-source{display:inline-flex;margin:0 0 20px;padding:7px 10px;border:1px solid var(--amber-border);border-radius:999px;color:var(--gold);background:var(--gold-bg);font:600 12px/1 var(--font-mono);letter-spacing:.02em}.contract-requirement-list{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:16px}.contract-requirement-row{padding:18px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-panel-2);display:flex;flex-direction:column;gap:8px}.contract-requirement-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary)}.contract-requirement-textarea{padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:#00000040;color:var(--text-primary);font-family:inherit;font-size:13px;line-height:1.5;resize:vertical}.permitted-kinds{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.permitted-kind-chip{padding:3px 9px;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg-panel);color:var(--text-secondary);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.permitted-kind-human{border-color:var(--gold-border);color:var(--gold)}.contract-review-actions{display:flex;gap:12px}.claim-card{padding:20px 22px;border-radius:var(--radius-lg);border:1px solid var(--gold-border);background:linear-gradient(160deg,var(--gold-bg),transparent 70%);box-shadow:var(--shadow-panel)}.claim-quote{margin:10px 0 0;padding:0 0 0 14px;border-left:2px solid var(--gold-border);animation:proofline-appear var(--motion-medium) ease}.claim-text{margin:0;font-size:15px;font-style:italic;color:var(--text-primary)}.claim-meta{display:flex;gap:10px;margin-top:6px;font-size:11px;color:var(--text-tertiary);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em}.claim-card-resolved{border-color:var(--border-subtle);background:var(--bg-panel-2);box-shadow:none}.claim-card-resolved .claim-quote{border-left-color:var(--border-subtle)}.claim-resolved-eyebrow{display:flex;align-items:center;gap:6px;color:var(--text-tertiary)}.claim-resolved-icon{width:13px;height:13px;color:var(--green);flex-shrink:0}.sandbox-actions-panel{padding:24px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-panel)}.sandbox-action-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.sandbox-action-button{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;min-height:44px;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg-panel-2);color:var(--text-primary);cursor:pointer;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease}.sandbox-action-button:hover:not(:disabled){border-color:var(--amber-border);background:var(--amber-bg)}.sandbox-action-button:disabled{opacity:.5;cursor:not-allowed}.sandbox-action-label{font-size:13px;font-weight:700}.sandbox-action-description{font-size:11px;color:var(--text-tertiary);line-height:1.4}.sandbox-actions-footer{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}.sandbox-reset-button{margin-left:auto}.sandbox-journal{list-style:none;margin:18px 0 0;padding:14px 0 0;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:8px}.sandbox-journal-entry{display:flex;gap:10px;font-size:12px;animation:proofline-appear var(--motion-fast) ease}.sandbox-journal-entry:first-child{color:var(--text-primary)}.sandbox-journal-time{flex-shrink:0;color:var(--text-tertiary);font-family:var(--font-mono)}.sandbox-journal-message{color:var(--text-secondary)}.contradiction-panel{padding:22px;border-radius:var(--radius-lg);border:1px solid var(--red-border);background:linear-gradient(160deg,var(--red-bg),transparent 65%);box-shadow:var(--shadow-panel);animation:proofline-appear var(--motion-medium) ease}.contradiction-eyebrow{color:var(--red)}.contradiction-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contradiction-column-label{margin:0 0 8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.contradiction-claim{margin:0 0 8px;padding:0 0 0 10px;border-left:2px solid var(--gold-border);font-style:italic;font-size:13px;color:var(--text-primary)}.contradiction-evidence{margin:0 0 8px;font-size:13px;color:var(--text-primary)}.contradiction-evidence a{color:var(--red);text-decoration:underline}.contradiction-empty{margin:0;font-size:12px;color:var(--text-tertiary)}.stale-notice{margin:10px 0 0;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--gold-border);background:var(--gold-bg);color:var(--gold);font-size:12px;font-weight:600;animation:proofline-appear var(--motion-medium) ease}.stale-chip{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:999px;border:1px solid var(--gold-border);background:var(--gold-bg);color:var(--gold);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:normal}.closeout-overall{display:flex;align-items:center;gap:14px;margin-bottom:24px}.closeout-generated{font-size:12px;color:var(--text-tertiary);font-family:var(--font-mono)}.closeout-requirement-list{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-direction:column;gap:14px}.closeout-requirement-row{padding:16px 18px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-panel-2)}.closeout-requirement-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.closeout-evidence-link{margin-top:8px;padding:0;border:none;background:none;color:var(--amber-hover);font-size:12px;font-weight:600;text-decoration:underline;cursor:pointer}.closeout-no-evidence{margin:8px 0 0;font-size:12px;color:var(--red)}.closeout-actions{display:flex;gap:12px;flex-wrap:wrap}.rail-nav{display:flex;flex-direction:column;gap:8px}.rail-nav-button{min-height:40px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:transparent;color:var(--text-secondary);font-size:12px;font-weight:600;text-align:left;cursor:pointer;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease,color var(--motion-fast) ease}.rail-nav-button:hover:not(:disabled){border-color:var(--amber-border);background:var(--amber-bg);color:var(--amber-hover)}.rail-nav-button:disabled{opacity:.4;cursor:not-allowed}.rail-new-run{display:flex;flex-direction:column;gap:6px}.rail-nav-button-confirm{border-color:var(--red-border);background:var(--red-bg);color:var(--red)}.rail-nav-button-confirm:hover:not(:disabled){border-color:var(--red-border);background:var(--red-bg);color:var(--red)}.rail-new-run-cancel{min-height:32px;padding:6px 12px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-tertiary);font-size:11px;font-weight:600;text-align:left;cursor:pointer;animation:proofline-appear var(--motion-fast) ease}.rail-new-run-cancel:hover{color:var(--text-primary)}@media(max-width:1180px){.app-shell{grid-template-columns:1fr}.left-rail{position:static;flex-direction:row;align-items:center;justify-content:space-between;gap:16px}.rail-section{display:none}.rail-section-export{display:block;margin-top:0}.export-button{width:auto}}@media(max-width:640px){.app-shell{padding:16px;gap:16px}.verdict-seal{padding:28px 22px}.evidence-meta{grid-template-columns:1fr}.screen{padding:22px}.contradiction-columns{grid-template-columns:1fr}.sandbox-reset-button{margin-left:0}}@media(prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}
