:root{--canvas:#f3f4f2;--surface:#ffffff;--surface-soft:#f8f8f6;--ink:#161d1b;--muted:#66706d;--rule:#d9dedb;--rule-strong:#b9c1bd;--brand:#2449a8;--brand-soft:#edf1ff;--fail:#b93d42;--fail-soft:#fff1f0;--pass:#217052;--pass-soft:#edf8f2;--warn:#946716;--warn-soft:#fff7e5;--code-bg:#f5f6f4;--shadow:0 18px 50px rgba(22,29,27,0.08);color-scheme:light}:root[data-theme=dark]{--canvas:#0e1211;--surface:#171c1a;--surface-soft:#1c2320;--ink:#edf0ed;--muted:#a0aaa5;--rule:#303834;--rule-strong:#59635e;--brand:#9bb0ff;--brand-soft:#242d4a;--fail:#ff8688;--fail-soft:#351f20;--pass:#75d1a5;--pass-soft:#193128;--warn:#ddbb74;--warn-soft:#332b1d;--code-bg:#101513;--shadow:0 18px 50px rgba(0,0,0,0.28);color-scheme:dark}*{box-sizing:border-box}body,html{min-height:100%}body,html{overflow-x:clip}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a,button,summary{color:inherit;font:inherit}button,summary{cursor:pointer}a{text-decoration:none}.eyebrow,.panel-label,.recorded-badge,code,pre,time{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.workbench{min-height:100vh}.command-bar{position:sticky;z-index:20;top:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-height:62px;padding:0 max(22px,calc((100vw - 1360px) / 2));border-bottom:1px solid var(--rule);background:var(--surface)}.wordmark{display:flex;gap:10px;align-items:center;padding-right:24px}.wordmark span{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;color:white;background:var(--brand);font-size:13px;font-weight:800}.wordmark strong{font-size:15px;letter-spacing:-.02em}.crumbs{display:flex;min-width:0;gap:8px;align-items:center;color:var(--muted);font-size:12px}.crumbs strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.crumbs b{color:var(--rule-strong);font-weight:400}.command-actions{display:flex;gap:7px;align-items:center}.command-actions button,.panel-row button,.review-actions button{min-height:36px;padding:0 12px;border:1px solid var(--rule);border-radius:9px;background:var(--surface)}.command-actions button:hover,.panel-row button:hover,.review-actions button:hover{border-color:var(--rule-strong);background:var(--surface-soft)}.command-actions button:disabled{cursor:not-allowed;opacity:.48}.recorded-badge{display:flex;gap:7px;align-items:center;margin-right:8px;color:var(--muted);font-size:10px}.recorded-badge span{color:var(--ink);font-weight:700}.recorded-badge b{color:var(--rule-strong);font-weight:400}.recorded-badge i{width:7px;height:7px;border-radius:2px;background:var(--brand)}.case-switcher{display:flex;max-width:1360px;gap:24px;align-items:center;margin:18px auto 0;padding:0 22px}.case-switcher>span{flex:0 0 auto;color:var(--muted);font-size:12px}.case-switcher>div{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.case-switcher button{display:grid;grid-template-columns:24px auto 1fr;gap:8px;align-items:center;min-height:46px;padding:6px 12px;border:1px solid var(--rule);border-radius:11px;color:var(--muted);text-align:left;background:var(--surface)}.case-switcher button:hover{border-color:var(--rule-strong)}.case-switcher button.active{border-color:var(--brand);color:var(--ink);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.case-switcher small{font:10px SFMono-Regular,monospace}.case-switcher strong{font-size:12px}.case-switcher em{overflow:hidden;font:normal 10px SFMono-Regular,monospace;text-align:right;text-overflow:ellipsis;white-space:nowrap}.review-shell{display:grid;max-width:1360px;gap:18px;margin:0 auto;padding:24px 22px 58px}.review-heading{display:flex;gap:30px;justify-content:space-between;align-items:flex-end}.eyebrow{color:var(--brand);font-size:10px;font-weight:700;letter-spacing:.08em}.review-heading h1{margin:7px 0 4px;font-size:clamp(29px,3.2vw,42px);font-weight:650;letter-spacing:-.045em}.review-heading p{max-width:760px;margin:0;color:var(--muted);font-size:14px;line-height:1.55}.review-actions{display:flex;gap:8px;align-items:center;flex:0 0 auto}.review-actions .primary-action{border-color:var(--brand);color:white;background:var(--brand)}.review-actions .primary-action:hover{background:var(--brand);filter:brightness(1.08)}.review-actions button:disabled{cursor:default;opacity:.55}.review-actions details{position:relative}.review-actions summary{display:grid;min-height:36px;padding:0 12px;place-items:center;border:1px solid var(--rule);border-radius:9px;background:var(--surface);font-size:12px;list-style:none}.review-actions summary::-webkit-details-marker{display:none}.review-actions details>div{position:absolute;z-index:10;top:42px;right:0;display:grid;min-width:148px;gap:6px;padding:8px;border:1px solid var(--rule);border-radius:11px;background:var(--surface);box-shadow:var(--shadow)}.verdict-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding:20px 22px;border:1px solid color-mix(in srgb,var(--fail) 42%,var(--rule));border-radius:16px;background:var(--fail-soft)}.verdict-hero.running{border-color:color-mix(in srgb,var(--brand) 42%,var(--rule));background:var(--brand-soft)}.verdict-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;color:white;background:var(--fail);font-size:24px}.verdict-hero.running .verdict-icon{background:var(--brand);font-size:15px}.verdict-copy>span{color:var(--fail);font:700 9px SFMono-Regular,monospace;letter-spacing:.1em}.verdict-hero.running .verdict-copy>span{color:var(--brand)}.verdict-copy h2{margin:4px 0;font-size:24px;letter-spacing:-.03em}.verdict-copy p{max-width:690px;margin:0;color:var(--muted);font-size:12px;line-height:1.5}.verdict-summary{display:grid;grid-template-columns:repeat(3,auto);gap:24px;margin:0}.verdict-summary div{display:grid;gap:4px}.verdict-summary dt{color:var(--muted);font-size:10px}.verdict-summary dd{max-width:170px;margin:0;font-size:11px;font-weight:650}.evidence-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);gap:18px}.analysis-card,.diff-sheet,.evidence-pipeline,.finding-preview,.trace-drawer{overflow:hidden;border:1px solid var(--rule);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.finding-preview>header,.sheet-bar,.subhead{display:flex;min-height:54px;padding:10px 16px;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}.finding-preview>header,.sheet-bar>div{display:grid;gap:4px}.finding-preview header span,.sheet-bar span,.subhead small{color:var(--muted);font-size:10px}.finding-preview header strong,.sheet-bar strong{font-size:12px}.sheet-bar>span{display:flex;gap:10px;font-family:SFMono-Regular,monospace}.code-diff{min-height:148px;margin:0;padding:14px 0;overflow:auto;background:var(--code-bg);font-size:12px;line-height:1.9}.code-diff>span{display:grid;min-width:max-content;grid-template-columns:46px 22px 1fr;padding-right:18px}.code-diff i{padding-right:11px;color:var(--muted);font-style:normal;text-align:right;user-select:none}.code-diff b{font-weight:400;text-align:center}.code-diff .remove{color:var(--fail);background:color-mix(in srgb,var(--fail) 10%,transparent)}.code-diff .add{color:var(--pass);background:color-mix(in srgb,var(--pass) 10%,transparent)}.code-diff .context{color:var(--muted)}.fail-text{color:var(--fail)!important}.add-text{color:var(--pass)!important}.finding-preview>header{align-items:flex-start}.counterexample{display:block;margin:16px;padding:16px;border-radius:10px;color:var(--fail);background:var(--fail-soft);font-size:15px;overflow-wrap:anywhere}.behavior-compare{display:grid;grid-template-columns:1fr 1fr;margin:0 16px 16px;border:1px solid var(--rule);border-radius:10px}.behavior-compare div{min-width:0;padding:12px;border-right:1px solid var(--rule)}.behavior-compare div:last-child{border-right:0}.behavior-compare span{display:block;margin-bottom:6px;color:var(--muted);font-size:9px}.behavior-compare strong{font-size:11px;line-height:1.45}.behavior-compare div:first-child strong{color:var(--pass)}.behavior-compare div:last-child strong{color:var(--fail)}.finding-locked{display:grid;min-height:160px;padding:24px;place-content:center;color:var(--muted);text-align:center}.finding-locked span{color:var(--ink);font-weight:650}.finding-locked p{margin:5px 0 0;font-size:12px}.subhead>div{display:grid;gap:3px}.subhead span{font-size:13px;font-weight:650}.subhead strong{color:var(--brand);font:10px SFMono-Regular,monospace}.stage-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:12px;gap:7px}.stage-list>button{display:grid;min-width:0;min-height:120px;grid-template-rows:auto 1fr auto;padding:12px;border:1px solid var(--rule);border-radius:10px;text-align:left;background:var(--surface-soft)}.stage-list>button:hover{border-color:var(--rule-strong)}.stage-list>button:disabled{cursor:not-allowed;opacity:.64}.stage-list>button.selected{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.stage-state{display:grid;width:24px;height:24px;margin-bottom:9px;place-items:center;border:1px solid;border-radius:50%;font:12px SFMono-Regular,monospace}.stage-list .pass .stage-state{color:var(--pass)}.stage-list .warn .stage-state{color:var(--warn)}.stage-list .fail .stage-state{color:var(--fail)}.stage-copy{display:grid;min-width:0;align-content:start;gap:4px}.stage-copy small,.stage-list time{color:var(--muted);font:9px SFMono-Regular,monospace}.stage-copy strong{font-size:11px;line-height:1.35}.stage-copy em{overflow:hidden;color:var(--muted);font-size:10px;font-style:normal;line-height:1.35;text-overflow:ellipsis}.stage-list time{margin-top:8px}.stage-detail{display:grid;grid-template-columns:1.1fr 1.3fr .8fr;border-top:1px solid var(--rule);background:var(--code-bg)}.stage-detail>div{min-width:0;min-height:78px;padding:13px 15px;border-right:1px solid var(--rule)}.stage-detail>div:last-child{border-right:0}.stage-detail span{display:block;margin-bottom:7px;color:var(--muted);font-size:9px}.stage-detail code,.stage-detail p{display:block;margin:0;font-size:11px;line-height:1.45;overflow-wrap:anywhere}.ledger-tabs{display:flex;gap:4px;padding:8px;border-bottom:1px solid var(--rule)}.ledger-tabs button{min-height:38px;padding:0 14px;border:0;border-radius:8px;color:var(--muted);background:transparent;font-size:12px}.ledger-tabs button[aria-selected=true]{color:var(--brand);background:var(--brand-soft);font-weight:650}.ledger-tabs button:disabled{cursor:not-allowed;opacity:.42}.ledger-panel{padding:20px}.ledger-panel>p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.evidence-gated{display:grid;min-height:130px;place-content:center;text-align:center}.panel-label{display:block;margin:0 0 9px;color:var(--muted);font-size:9px;letter-spacing:.08em}.finding-panel,.scope-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}.finding-panel>div:first-child>p{margin:0 0 14px;font-size:13px}.shrink-trace{display:grid;padding:0;margin:0;list-style:none}.shrink-trace li{display:grid;grid-template-columns:32px 1fr;padding:9px 0;border-top:1px solid var(--rule);font-size:10px}.shrink-trace span{color:var(--muted)}.shrink-trace code{overflow-wrap:anywhere}.review-guidance{align-self:start;padding:16px;border-radius:11px;background:var(--pass-soft)}.review-guidance span{color:var(--pass);font-size:10px;font-weight:700}.review-guidance strong{display:block;margin:7px 0;font-size:14px;line-height:1.4}.review-guidance p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.panel-row{display:flex;justify-content:space-between;align-items:center}.generated-test{margin:8px 0 14px;padding:15px;overflow:auto;border:1px solid var(--rule);border-radius:10px;background:var(--code-bg);font-size:11px;line-height:1.6;white-space:pre-wrap}.scope-list{display:grid;gap:10px;padding:0;margin:0;list-style:none}.scope-list li{position:relative;padding-left:22px;font-size:12px;line-height:1.45}.scope-list li:before{position:absolute;left:0;font-family:monospace}.scope-list.verified li:before{content:"✓";color:var(--pass)}.scope-list.unverified li:before{content:"·";color:var(--warn)}.scope-columns>div>p{margin:16px 0 0;color:var(--muted);font-size:11px}.provenance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 16px;overflow:hidden;border:1px solid var(--rule);border-radius:10px;background:var(--rule)}.provenance div{min-width:0;padding:12px;background:var(--surface)}.provenance dt{margin-bottom:5px;color:var(--muted);font-size:9px}.provenance dd{margin:0;font-size:11px;line-height:1.45;overflow-wrap:anywhere}.provenance a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}.trace-drawer{box-shadow:none}.trace-toggle{display:flex;width:100%;min-height:44px;padding:0 16px;justify-content:space-between;align-items:center;border:0;background:transparent}.trace-body,.trace-toggle{font:10px SFMono-Regular,monospace}.trace-body{display:grid;grid-template-columns:110px 18px 1fr;gap:8px;padding:13px 16px;border-top:1px solid var(--rule);background:var(--code-bg)}.trace-body>span{color:var(--muted)}.trace-body b{color:var(--brand);font-weight:400}.trace-body b.fail{color:var(--fail)}.trace-body b.pass{color:var(--pass)}.trace-body b.warn{color:var(--warn)}@media (max-width:980px){.command-bar{padding:0 16px}.crumbs,.recorded-badge{display:none}.command-bar{grid-template-columns:1fr auto}.case-switcher{display:grid;gap:9px}.review-heading{align-items:flex-start;flex-direction:column}.verdict-hero{grid-template-columns:auto 1fr}.verdict-summary{grid-column:1/-1;padding-left:62px}.evidence-grid{grid-template-columns:1fr}.stage-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:660px){.case-switcher>div{display:flex;overflow-x:auto}.case-switcher button{min-width:160px;grid-template-columns:22px 1fr}.case-switcher em{display:none}.review-shell{padding:20px 14px 44px}.case-switcher{padding:0 14px}.review-actions{width:100%}.review-actions .primary-action{flex:1}.verdict-hero{grid-template-columns:1fr}.verdict-icon{width:36px;height:36px}.verdict-summary{grid-column:auto;grid-template-columns:1fr;gap:10px;padding-left:0}.stage-list{display:flex;overflow-x:auto}.stage-list>button{min-width:150px}.behavior-compare,.finding-panel,.provenance,.scope-columns,.stage-detail{grid-template-columns:1fr}.behavior-compare div{border-right:0;border-bottom:1px solid var(--rule)}.behavior-compare div:last-child{border-bottom:0}.stage-detail>div{border-right:0;border-bottom:1px solid var(--rule)}.ledger-tabs{overflow-x:auto}.ledger-tabs button{white-space:nowrap}.trace-body{grid-template-columns:72px 15px 1fr;overflow:auto}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}