:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#233544;background:#f4f6f5;font-size:15px;line-height:1.55;font-synthesis:none;--ink:#18323b;--teal:#13665f;--border:#d7e0dd;--muted:#52666d}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,select{cursor:pointer}button{border:1px solid var(--teal);border-radius:7px;background:var(--teal);color:white;padding:.55rem .85rem;min-height:44px;text-align:left;line-height:1.4}button:hover{background:#0c504a}button:disabled,select:disabled{cursor:default;opacity:.65}button.secondary{background:white;color:var(--teal);border-color:#a7bdb6}button.secondary:hover{background:#edf4f1}button.text-button{background:transparent;color:var(--teal);border-color:transparent;text-decoration:underline;text-underline-offset:3px;padding:.4rem .15rem}button.text-button:hover{color:#073e39}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #b46d13;outline-offset:3px}h1,h2,h3,h4{color:var(--ink);line-height:1.25;overflow-wrap:anywhere}h1{font-size:2rem;letter-spacing:-.04em;margin:.6rem 0}h2{font-size:1.45rem;margin:0 0 .7rem;letter-spacing:-.025em}h3{font-size:1.08rem;margin:0 0 .7rem}h4{font-size:.95rem;margin:1rem 0 .5rem}p{margin:.55rem 0 1rem;overflow-wrap:anywhere}ul{padding-left:1.1rem}label{font-size:.82rem;font-weight:650;display:block;margin-bottom:.4rem}input,select{border:1px solid #a7b8b3;border-radius:6px;padding:.65rem .75rem;background:#fff;color:var(--ink);max-width:100%;min-height:44px}input{width:100%}.app-shell{max-width:1560px;margin:auto;padding:2rem 2.5rem 1rem}.masthead{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;padding-bottom:1.8rem}.wordmark{font-size:.82rem;font-weight:750;letter-spacing:.06em;color:var(--teal);margin:0}.brand-mark{font-size:1.1rem}.subtitle{color:var(--muted);margin:0;max-width:45rem}.session-actions{display:flex;align-items:center;gap:1rem;padding-top:.5rem;flex-wrap:wrap}.brain-bar{display:flex;align-items:center;gap:2rem;border-block:1px solid var(--border);padding:1rem 0;margin-bottom:1.4rem}.brain-field{width:300px;max-width:100%}.brain-field select{width:100%}.read-only{font-size:.8rem;font-weight:650;letter-spacing:.02em;border:1px solid var(--border);border-radius:999px;padding:.3rem .8rem;color:var(--teal);margin:1.2rem 0 0}.explorer-grid{display:grid;grid-template-columns:245px minmax(0,1fr) 330px;gap:1.2rem;align-items:start}.panel{background:white;border:1px solid var(--border);border-radius:12px;padding:1.2rem;min-width:0}.workspace{display:flex;flex-direction:column;gap:1.2rem;min-width:0}.empty-workspace{min-height:300px}.panel-heading,.title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.count{font-size:.8rem;font-variant-numeric:tabular-nums;color:var(--muted);border:1px solid var(--border);padding:.1rem .5rem;border-radius:999px}.eyebrow{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;font-weight:750;color:var(--teal);margin:0 0 .6rem}.muted,.coverage{color:var(--muted);font-size:.84rem}.coverage{border-left:3px solid #bfd3c9;padding-left:.6rem;margin:.8rem 0}.coverage-detail{display:block;font-size:.75rem;margin-top:.2rem}.badge-row{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.badge{display:inline-flex;border:1px solid #c9d8d0;background:#f0f5f2;color:#3d594c;border-radius:5px;padding:.1rem .4rem;font-size:.7rem;font-weight:650;white-space:normal;line-height:1.5}.badge-governing{background:#e4f2ef;color:#155c52;border-color:#afcfc4}.badge-historical{background:#f0f0f3;color:#545767;border-color:#d4d3db}.badge-proposed{background:#fbf1df;color:#73541a;border-color:#e5d5b2}.concept-list,.relationship-list,.claim-list,.proposal-list{list-style:none;padding:0;margin:.8rem 0}.concept-list li+li{margin-top:.35rem}.concept-choice{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;border-color:transparent;background:transparent;color:var(--ink);padding:.7rem}.concept-choice:hover{background:#eff5f2}.concept-choice.active{background:#e8f2ee;border-color:#b4d1c4;color:#0b5149}.concept-list{max-height:68vh;overflow:auto;scrollbar-gutter:stable}.catalogue{position:sticky;top:1rem}.empty{color:var(--muted);font-size:.9rem}.loading{color:var(--teal);font-size:.88rem}.error{color:#872e29;background:#fcf1ef;border:1px solid #e8cbc6;border-radius:6px;padding:.7rem;font-size:.86rem}.global-notice{margin-bottom:1rem}.governance{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--border)}.governance p{font-size:.88rem}.metadata{margin-top:1rem;font-size:.78rem;color:var(--muted)}summary{cursor:pointer;min-height:36px;padding:.4rem 0}.metadata dl{margin:.4rem 0}.metadata dt{font-weight:650;margin-top:.55rem}.metadata dd{margin:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;white-space:pre-wrap}.relationship-list li,.claim-list li,.proposal-list li{border-top:1px solid var(--border);padding:1rem 0}.relationship-list li.selected{border-left:3px solid var(--teal);padding-left:.75rem}.relationship-list .direction{font-size:.8rem;font-weight:650;color:var(--teal);margin:0 0 .5rem}.relationship-list p,.claim-list p,.proposal-list p{font-size:.9rem}.relation-type{font-size:.75rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted)}.actions,.evidence-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.actions button{font-size:.78rem}.graph-disclosure{margin-top:.8rem}.concept-graph{width:100%;height:auto;display:block;overflow:visible}.graph-node rect{fill:#fff;stroke:#9ab7ab;stroke-width:2}.graph-node text{fill:#233c3d;font-size:17px;font-weight:600;pointer-events:none}.graph-node.root rect{fill:#17685f;stroke:#17685f}.graph-node.root text{fill:white}.graph-node{cursor:pointer}.graph-node:hover rect,.graph-node:focus rect{stroke:#ad6c17;stroke-width:3}.edge-line{stroke:#7a9690;stroke-width:2;fill:none;pointer-events:none}.arrow-head{fill:#627e77}.edge-hit{stroke:transparent;stroke-width:18;fill:none;cursor:pointer}.edge-label{font-size:13px;fill:#516a62;pointer-events:none;paint-order:stroke;stroke:white;stroke-width:4px}.graph-edge.selected .edge-line,.graph-edge:focus-within .edge-line,.graph-edge:hover .edge-line{stroke:#ad6c17;stroke-width:3}.graph-edge:focus-within .edge-hit{outline:none}.inspector{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto;scrollbar-gutter:stable}.record-meaning{font-size:1rem;line-height:1.65}.inspector h3{margin-top:1.2rem}.inspector .evidence-actions{display:grid;gap:.5rem;margin-top:1rem}.source-view{margin-top:1.5rem;border-top:2px solid var(--border);padding-top:1rem}.source-chunk pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.8rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f6f4;border:1px solid var(--border);border-radius:7px;padding:.9rem;max-width:100%}.section-context{font-size:.75rem;color:var(--muted)}.verified{font-size:.75rem;color:var(--teal)}footer{font-size:.75rem;color:var(--muted);padding:1.5rem 0 .5rem}.welcome{max-width:720px;margin:2rem auto}.skip-link{position:fixed;top:-80px;left:1rem;background:var(--ink);color:white;padding:.7rem;z-index:10}.skip-link:focus{top:1rem}.local-notice{background:#eaf0ed;border-bottom:1px solid var(--border);padding:.5rem 2rem;font-size:.8rem;color:var(--ink)}.local-login{max-width:480px;margin:4rem auto;padding:2rem}.local-login select{width:100%;margin-bottom:1rem}
@media(max-width:1150px){.app-shell{padding:1.5rem}.explorer-grid{grid-template-columns:230px minmax(0,1fr)}.inspector{grid-column:2;position:static;max-height:none}.catalogue{grid-row:span 2}.concept-graph{max-height:520px}.masthead{gap:1rem}.session-actions{gap:.4rem}}
@media(max-width:720px){:root{font-size:15px}.app-shell{padding:1rem}.masthead{display:block;padding-bottom:1rem}h1{font-size:1.7rem}.session-actions{margin-top:1rem}.brain-bar{gap:.7rem;align-items:flex-start;flex-direction:column}.read-only{margin:0}.explorer-grid{display:flex;flex-direction:column}.catalogue,.workspace,.inspector{width:100%;position:static;max-height:none}.concept-list{max-height:240px}.panel{padding:1rem}.concept-graph{min-width:0}.title-row{align-items:flex-start}.graph-node text{font-size:18px}.inspector{overflow:visible}.local-notice{padding:.5rem 1rem}.local-login{margin:2rem 1rem}.source-chunk pre{font-size:.8rem}button{min-height:44px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.public-shell{max-width:440px;margin:15vh auto;padding:1rem}.public-shell h1{font-size:1.8rem}.public-shell button{min-height:44px}

/* Evidence continues the existing inspection, with space for contextual reading. */
.evidence-reader{grid-column:2 / -1;position:static;max-height:none;overflow:visible}
.source-view{max-width:76ch}.source-chunk h5{font:inherit;font-weight:650;margin:1rem 0 .4rem}
.cited-chunk>pre{border-left:4px solid var(--teal);background:#eef6f2}
.adjacent-context{border-left:2px dashed #a8b6b1;padding-left:.8rem}
.adjacent-context pre{background:#fafafa;border-style:dashed}
.source-navigation{margin-top:1.5rem;border-top:1px solid var(--border);padding-top:1rem}
.structure-entry{padding:.7rem 0;border-bottom:1px solid var(--border)}
.source-view .actions{margin-block:1rem}.source-chunk pre{tab-size:4;white-space:break-spaces;word-break:normal}

/* E4: the integrated response leads; receipts and exact bytes expand on demand. */
.explorer-tabs { display:flex; gap:.7rem; padding:.5rem 2rem 1rem; }
.explorer-tabs [aria-current="page"] { background:var(--ink,#213e39); color:white; }
.answers-layout { max-width:1120px; margin:0 auto; padding:0 1.5rem 2rem; }
.answers-workspace { display:grid; gap:1.3rem; min-width:0; }
.answers-workspace textarea { box-sizing:border-box; display:block; width:100%; margin:.6rem 0 1rem; padding:.8rem; font:inherit; line-height:1.5; border:1px solid #a8b9ae; border-radius:.6rem; background:#fffefa; color:#203a32; resize:vertical; }
.answer-question { font-size:1.1rem; font-weight:600; }
.answer-statements { list-style:none; padding:0; margin:0; }
.answer-statements li { padding:.8rem 0 1.2rem; border-bottom:1px solid #d8e1d9; }
.answer-statements p { font-size:1.05rem; line-height:1.8; }
.statement-controls { display:flex; gap:.8rem; flex-wrap:wrap; align-items:center; }
.statement-controls button { font-size:.85rem; padding:.45rem .8rem; }
.selected-statement { margin-top:1rem; border-top:3px solid #769e89; padding-top:1rem; }
.answer-reference,.answer-source { border:1px solid #ccd9cd; border-radius:.6rem; padding:1rem; margin:.8rem 0; }
.answers-workspace pre { white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; font-size:.8rem; max-height:32rem; overflow:auto; padding:1rem; background:#f0f3ed; }
.answers-workspace details { margin:1rem 0; }
.answers-workspace summary { cursor:pointer; font-weight:600; padding:.5rem 0; }
.answers-workspace .badge { white-space:normal; }
.answers-workspace [aria-pressed="true"] { outline:3px solid #426c55; outline-offset:2px; }
@media(max-width:720px){ .answers-layout{padding:0 .7rem 1rem}.explorer-tabs{padding:.5rem .7rem 1rem}.answer-statements p{font-size:1rem}.answer-reference,.answer-source{padding:.7rem} }

/* E5 observations and suggestions stay outside the stored graph. */
.gaps-workspace{display:grid;gap:1.3rem;min-width:0}.gap-filters{display:flex;flex-wrap:wrap;gap:1rem}.gap-filters>div{flex:1;min-width:160px}.gap-filters select{width:100%}.gap-list{list-style:none;padding:0}.gap-list li{padding:1rem 0;border-bottom:1px solid var(--border)}.gap-group{margin-top:1.5rem}.gaps-workspace pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-height:28rem;overflow:auto;padding:1rem;background:#f0f3ed;font-size:.8rem}.gaps-workspace input{width:100%;box-sizing:border-box;margin:.5rem 0}.finding-detail{border-top:4px solid var(--teal)}.gaps-workspace .badge{white-space:normal}.explorer-tabs{flex-wrap:wrap}.gap-summary article{border-top:1px solid var(--border);margin-top:.5rem}.gaps-workspace [aria-pressed="true"]{outline:3px solid #426c55;outline-offset:2px}
