.integrity-viz{width:100%;color:var(--text-primary);font-family:var(--font-body);container-type:inline-size}.integrity-viz p{margin:0}.integrity-viz__steps{display:flex;flex-wrap:wrap;gap:6px;width:-moz-fit-content;width:fit-content;margin-bottom:24px;padding:4px;border:1px solid var(--border-default);border-radius:24px;background:var(--bg-elevated)}.integrity-viz__steps button{padding:8px 14px;border:0;border-radius:20px;background:transparent;color:var(--text-secondary);font:inherit;font-size:13px;cursor:pointer}.integrity-viz__steps button[aria-pressed=true]{background:var(--brand);color:var(--btn-primary-text)}.integrity-viz__steps button:focus-visible{outline:2px solid var(--brand-text);outline-offset:2px}.integrity-viz__columns{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:24px;min-height:600px}.integrity-viz__feed,.integrity-viz__plan{display:flex;flex-direction:column;gap:10px;min-width:0}.integrity-viz__plan{padding:20px;border:1px solid var(--border-default);border-radius:14px;background:var(--bg-elevated)}.integrity-viz__objective,.integrity-viz__opportunity{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 14px;border:1px solid var(--border-default);border-radius:8px;font-size:13px}.integrity-viz__objective{border-color:var(--brand-border);background:var(--brand-tint)}.integrity-viz__objective>span{color:var(--brand-text)}.integrity-viz__opportunity{border-top:3px solid var(--brand)}.integrity-viz__opportunity b{font-size:15px}.integrity-viz__kicker{color:var(--text-muted);font:11px var(--font-mono);text-transform:uppercase;letter-spacing:.06em}.integrity-viz__muted{color:var(--text-muted);font-size:12px;line-height:1.5}.integrity-viz__row{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.integrity-viz__row b{font-size:15px}.integrity-viz__solution{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--border-subtle);border-radius:10px;transition:opacity .3s}.integrity-viz__solution.is-rejected{opacity:.65}.integrity-viz__solution.is-backed{border-color:var(--brand-border);border-top:3px solid var(--success-text);box-shadow:0 0 0 3px var(--brand-tint)}.integrity-viz__struck{text-decoration:line-through}.integrity-viz__assumption{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:13px;line-height:1.5;color:var(--text-secondary)}.integrity-viz__assumption>span:first-child{flex:1 1 180px}.integrity-viz__badge{padding:2px 8px;border-radius:4px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:12px}.integrity-viz__badge--positive{background:var(--success-tint);color:var(--success-text)}.integrity-viz__badge--negative{background:var(--status-assumed-bg);color:var(--status-assumed)}.integrity-viz__empty{padding:16px;border:1px dashed var(--border-default);border-radius:10px;color:var(--text-secondary);font-size:13px;line-height:1.6}.integrity-viz__evidence{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--border-default);border-radius:10px;background:var(--bg-elevated);font-size:14px;line-height:1.5;animation:integrity-viz-enter .35s ease both}.integrity-viz__evidence.is-current{border-color:var(--brand-border);box-shadow:0 0 0 3px var(--brand-tint)}.integrity-viz__source{color:var(--text-secondary);font-size:12px}.integrity-viz__impact{color:var(--brand-text);font-size:12px}.integrity-viz__decision{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:10px;background:var(--band-ink);color:var(--band-ink-contrast);font-size:14px;line-height:1.5;animation:integrity-viz-enter .35s ease both}.integrity-viz__decision .integrity-viz__kicker{color:var(--band-ink-accent)}.integrity-viz__decision .integrity-viz__muted{color:var(--band-ink-muted)}@keyframes integrity-viz-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@container (max-width: 780px){.integrity-viz__columns{grid-template-columns:minmax(0,1fr);min-height:0}}@media (prefers-reduced-motion:reduce){.integrity-viz__decision,.integrity-viz__evidence{animation:none}.integrity-viz__solution{transition:none}}