:root{--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", Consolas, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--sidebar:240px;--panel:400px}*{box-sizing:border-box}body{min-width:320px}button{font:inherit}.app-shell{background:var(--surface);min-height:100dvh;color:var(--ink);display:flex}.sidebar{width:var(--sidebar);flex-direction:column;flex:0 0 var(--sidebar);border-right:1px solid var(--line);min-height:100vh;padding:var(--space-4) var(--space-2);display:flex}.brand{padding:var(--space-2) var(--space-3) var(--space-6);color:var(--ink);justify-content:space-between;align-items:center;display:flex}.brand-caption,.sidebar-foot,.caption{color:var(--ink-tertiary);font-size:12px}.brand-caption{font-size:11px}.nav-section-label,.overline{color:var(--ink-tertiary);letter-spacing:.08em;text-transform:uppercase;font-size:11px;line-height:16px}.nav-section-label{padding:var(--space-2) var(--space-3)}.kp-nav-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar-spacer{flex:1}.sidebar-foot{gap:var(--space-1);padding:var(--space-3);border-top:1px solid var(--line);display:flex}.mono{font-family:var(--font-mono);letter-spacing:.03em;font-size:11px}.workspace{flex:1;min-width:0}.topbar{border-bottom:1px solid var(--line);height:56px;padding:0 var(--space-6);justify-content:space-between;align-items:center;display:flex}.crumbs,.top-actions,.intro-actions{align-items:center;gap:var(--space-3);display:flex}.crumbs{color:var(--ink-secondary);font-size:13px}.top-actions{gap:var(--space-2)}.icon-action,.lang-action{border-radius:var(--radius-sm);min-height:32px;color:var(--ink-secondary);cursor:pointer;padding:0 var(--space-2);background:0 0;border:1px solid #0000}.icon-action:hover,.lang-action:hover{background:var(--ink-soft);color:var(--ink)}.icon-action:focus-visible,.lang-action:focus-visible,.fallback-action:focus-visible{box-shadow:var(--focus-ring);outline:none}.content{max-width:1500px;padding:var(--space-8) var(--space-6);margin:0 auto}.page-intro{justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-6);align-items:flex-end;display:flex}h1,h2,p{margin:0}h1{letter-spacing:-.03em;margin:var(--space-1) 0 var(--space-2);font-size:clamp(24px,3vw,36px);line-height:1.15}h2{letter-spacing:-.01em;font-size:16px;line-height:22px}.lede{max-width:720px;color:var(--ink-secondary);line-height:22px}.page-intro .overline{color:var(--live)}.surface-panel{margin-top:var(--space-5);padding:var(--space-4);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-md)}.ask-row{gap:var(--space-2);display:flex}.ask-row input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-width:0;color:var(--ink);flex:1;padding:10px 12px}.ask-answer{margin-top:var(--space-4);color:var(--ink-secondary);line-height:22px}.run-controls{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.kp-banner{margin-bottom:var(--space-6)}.dashboard-grid{gap:var(--space-4);margin-top:var(--space-6);grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);display:grid}.search-row{margin:0 0 var(--space-5)}.table-scroll{max-width:100%;overflow-x:auto}.panel{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-md);min-width:0;padding:var(--space-4);overflow:hidden}.panel-wide{grid-column:span 1}.panel-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.panel-head .overline{margin-bottom:var(--space-1)}.coverage-stat{align-items:baseline;gap:var(--space-2);margin:var(--space-6) 0 var(--space-3);display:flex}.coverage-bars{gap:3px;height:8px;display:flex}.coverage-bars .bar{background:var(--line);border-radius:1px;flex:1}.coverage-bars .bar.on{background:var(--ink)}.coverage-bars+.caption{margin-top:var(--space-3);display:block}.graph-panel{overflow:hidden}.graph-canvas{min-height:244px;margin:0 calc(var(--space-4) * -1) var(--space-4);background:var(--canvas);border-bottom:1px solid var(--line);position:relative}.graph-node{color:var(--ink-secondary);text-align:center;place-items:center;gap:2px;font-size:11px;display:grid;position:absolute}.node-main{color:var(--ink);font-weight:600;top:35%;left:44%}.node-export{top:16%;left:18%}.node-facility{bottom:18%;left:16%}.node-regulator{top:19%;right:14%}.graph-edge{background:var(--edge);transform-origin:0;height:1px;position:absolute}.edge-a{width:150px;top:34%;left:31%;transform:rotate(14deg)}.edge-b{border-top:1px dashed var(--status-inferred);background:0 0;width:140px;top:39%;left:54%;transform:rotate(-28deg)}.live-badge{color:var(--live);font-family:var(--font-mono);letter-spacing:.06em;font-size:11px}.task-list{gap:var(--space-2);display:grid}.task-list .kp-task{width:100%}.footer-status{align-items:center;gap:var(--space-2);color:var(--ink-tertiary);padding:var(--space-6) 0 var(--space-2);font-size:12px;display:flex}.footer-spacer{flex:1}.status-dot{background:var(--success);border-radius:var(--radius-full);width:6px;height:6px}.fallback{min-height:100dvh;padding:var(--space-6);background:var(--surface);color:var(--ink);place-items:center;display:grid}.fallback-card{border:1px solid var(--line);background:var(--surface-raised);border-radius:var(--radius-md);max-width:520px;padding:var(--space-6)}.fallback-card h1{font-size:24px}.fallback-card p{margin:var(--space-3) 0;color:var(--ink-secondary)}.fallback-action{border:1px solid var(--line-strong);background:var(--ink);color:var(--ink-inverse);border-radius:var(--radius-sm);cursor:pointer;padding:8px 14px}@media (width<=1024px){.sidebar{flex-basis:190px;width:190px}.dashboard-grid{grid-template-columns:1fr}.panel-wide{grid-column:auto}}@media (width<=700px){.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);width:100%;max-width:100%;height:auto;min-height:auto;padding:var(--space-2);flex-direction:row;align-items:center;overflow:hidden}.brand{padding:var(--space-2);min-width:104px}.brand-caption,.nav-section-label,.sidebar-spacer,.sidebar-foot{display:none}.sidebar .kp-nav-item{white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;width:auto;min-width:0;height:32px;overflow:hidden}.topbar{padding:0 var(--space-3)}.crumbs{white-space:nowrap;text-overflow:ellipsis;max-width:38%;overflow:hidden}.top-actions .kp-btn{min-width:0;padding-inline:7px;display:flex}.content{padding:var(--space-6) var(--space-3)}.page-intro{display:block}.intro-actions{margin-top:var(--space-4)}.intro-actions .kp-btn{flex:1;justify-content:center}.kp-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding-inline:0;display:grid}.kp-tab{white-space:nowrap;text-align:center;min-width:0;padding-inline:4px}.kp-legend,.kp-contra-body{grid-template-columns:1fr}.kp-contra-rule{height:1px}.kp-delta{flex-wrap:wrap;align-items:flex-start}.kp-delta-body{min-width:calc(100% - 60px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.command-entry{gap:var(--space-2);display:grid}.command-entry label{color:var(--ink-secondary);font-size:13px;font-weight:600}.command-row{gap:var(--space-2);display:flex}.command-row input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-width:0;color:var(--ink);flex:1;padding:10px 12px}.investigation-context{align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--ink-secondary);flex-wrap:wrap;display:flex}.investigation-context strong{color:var(--ink);font-family:var(--font-mono);font-size:12px}@media (width<=700px){.command-row{align-items:stretch}.command-row .kp-btn{flex:none}.investigation-context{gap:var(--space-2)}}.intake-panel{border-color:var(--line-strong)}.intake-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.intake-grid label{color:var(--ink-secondary);gap:6px;font-size:12px;display:grid}.intake-grid input,.intake-grid select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--ink);padding:9px 10px}.intake-missing{margin:var(--space-3) 0;color:var(--status-contradicted,#b42318);font-size:13px}@media (width<=700px){.intake-grid{grid-template-columns:1fr}}.claim-inspector{z-index:20;background:var(--kp-surface,#fff);border-left:1px solid var(--kp-border,#d6d9df);width:min(440px,92vw);padding:24px;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-12px 0 32px #0f172a29}.claim-inspector .panel-head{align-items:flex-start}.inspector-claim-text{font-size:1.05rem;line-height:1.5}.inspector-grid{color:var(--kp-ink-muted,#5d6470);grid-template-columns:1fr 1fr;gap:8px;margin:16px 0;font-size:.8rem;display:grid}.inspector-evidence{border-top:1px solid var(--kp-border,#d6d9df);gap:5px;padding:12px 0;font-size:.82rem;display:grid}.inspector-warning{color:#a33b25;font-weight:600}.material-claim{cursor:pointer;border-radius:8px}.material-claim:focus-visible{outline:2px solid var(--kp-focus,#3568c5);outline-offset:3px}.investigation-canvas{background:var(--canvas);border-bottom:1px solid var(--line);min-height:244px;padding:12px}.canvas-status,.canvas-coverage{color:var(--ink-tertiary);font-size:11px;font-family:var(--font-mono);margin-bottom:8px}.canvas-lanes{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.canvas-lane{border-left:1px solid var(--line);min-width:0;padding-left:6px}.canvas-lane-title{text-transform:uppercase;color:var(--ink-tertiary);margin-bottom:6px;font-size:10px;display:block}.canvas-node{border:1px solid var(--line);background:var(--surface-raised);width:100%;color:var(--ink-secondary);text-align:left;text-overflow:ellipsis;white-space:nowrap;border-radius:4px;margin:3px 0;padding:5px;font-size:11px;display:block;overflow:hidden}.canvas-node.selected{border-color:var(--live);color:var(--ink)}@media (width<=700px){.canvas-lanes{grid-template-columns:1fr 1fr}.canvas-lane:last-child{grid-column:span 2}}.monitor-panel{border-color:color-mix(in srgb, var(--accent) 28%, var(--line))}.scenario-panel{border-color:color-mix(in srgb, var(--live) 28%, var(--line))}.scenario-panel h3{margin:18px 0 8px;font-size:13px}.scenario-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.scenario-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);gap:5px;padding:10px;font-size:12px;display:grid}@media (width<=700px){.scenario-grid{grid-template-columns:1fr}}.monitor-feed{gap:var(--space-3);margin-top:var(--space-4);display:grid}.monitor-item{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);background:var(--surface-raised)}.monitor-item h3{margin:0}.monitor-item .panel-head{align-items:flex-start}.report-metadata{margin:var(--space-3) 0;color:var(--ink-secondary)}.report-metadata summary{cursor:pointer;color:var(--ink-secondary);font-size:12px}.report-metadata summary:hover{color:var(--ink)}.report-provenance{gap:var(--space-2);margin:var(--space-2) 0 var(--space-3);display:grid}.report-provenance .kp-btn{justify-self:start}.report-provenance-detail{gap:var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-sunken);overflow-wrap:anywhere;display:grid}.report-section-editor{gap:var(--space-2);display:grid}html,body{overflow-x:hidden}:focus-visible{outline:2px solid var(--kp-focus,#3568c5);outline-offset:2px}[data-reduced-motion=true] *,[data-reduced-motion=true] :before,[data-reduced-motion=true] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.claim-inspector{max-width:100vw}.claim-inspector[role=dialog]:focus{outline:none}.status-dot{flex:none}@media (width<=390px){.content{padding-inline:12px}.topbar{gap:8px}.top-actions{gap:4px}.top-actions .kp-btn{font-size:12px}.brand{min-width:88px}.sidebar .kp-nav-item{padding-inline:5px;font-size:11px}.panel-head{flex-wrap:wrap}.run-controls>*{max-width:100%}.ask-row,.command-row{flex-wrap:wrap}.ask-row .kp-btn,.command-row .kp-btn{width:100%}}
