:root{color-scheme:light;--bg:#f3f3f3;--surface:#ffffff;--surface-2:#f5f2ff;--border:#eae6f5;--text:#1a1a1a;--text-dim:#555555;--accent:#25005d;--accent-on:#ffffff;--link:#473d92;--violet:#7868f8;--accent-soft:#ebe5fb;--accent-dim:#c9a8e8;--good:#0f7a52;--warn:#7a5a00;--bad:#a4001e;--warn-bg:#f9f1dc;--warn-border:#d8c184}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.55}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.topnav{display:flex;align-items:center;gap:2rem;padding:.8rem 1.5rem;background:var(--surface);border-bottom:1px solid var(--border)}.brand{font-weight:700;font-size:1.05rem;color:var(--text);letter-spacing:.02em}.navlinks{display:flex;gap:1.25rem}.navlinks a{color:var(--text-dim)}.navlinks a:hover{color:var(--text);text-decoration:none}.container{max-width:900px;margin:0 auto;padding:2rem 1.5rem 4rem}h1{font-size:1.5rem;margin-bottom:.35rem}h2{font-size:1.1rem;margin:1.8rem 0 .7rem}.sub{color:var(--text-dim);margin-bottom:1.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1rem 1.2rem;margin-bottom:.75rem}.card h3{font-size:1rem;margin-bottom:.2rem}.meta{color:var(--text-dim);font-size:.85rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:.75rem;gap:.75rem}.fact{border-left:3px solid var(--accent-dim);padding:.5rem .9rem;margin-bottom:.6rem;background:var(--surface);border-radius:0 8px 8px 0}.fact .meta{margin-top:.25rem}.chat{margin-top:1rem}.chat-q{color:var(--text-dim);margin:1rem 0 .3rem;font-weight:600}.chat-a{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:.9rem 1.1rem;white-space:pre-wrap}.chat-a.ungrounded{border-color:var(--warn)}.citations{margin-top:.6rem;display:flex;flex-wrap:wrap;gap:.4rem}.chip{font-size:.75rem;background:var(--accent-dim);color:var(--text);border-radius:99px;padding:.1rem .6rem}.chip.warn{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn)}.askrow{display:flex;gap:.6rem;margin-top:.5rem}input,select,textarea{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.55rem .75rem;font:inherit;width:100%}input:focus,select:focus,textarea:focus{outline:1px solid var(--accent)}button{background:var(--accent);color:var(--accent-on);font:inherit;font-weight:600;border:0;border-radius:8px;padding:.55rem 1.1rem;cursor:pointer;white-space:nowrap}button:disabled{opacity:.5;cursor:default}a.button{display:inline-block;background:var(--accent);color:var(--accent-on);font-weight:600;border-radius:8px;padding:.55rem 1.1rem;text-decoration:none}a.button:hover{filter:brightness(1.08)}button.secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}button.danger{background:transparent;color:var(--bad);border:1px solid var(--bad)}.pending{border:1px solid var(--border);border-radius:10px;padding:1rem 1.2rem;margin-bottom:.9rem;background:var(--surface)}.pending .question{color:var(--warn);font-size:.9rem;margin:.4rem 0}.pending .controls{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem;align-items:center}.pending .controls input,.pending .controls select{width:auto;min-width:140px}.status-done{color:var(--good);font-weight:600}.status-gone{color:var(--text-dim)}.error{color:var(--bad);font-size:.85rem;margin-top:.4rem}.empty{color:var(--text-dim);padding:2rem 0;text-align:center}.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:.8rem;gap:.8rem;margin-bottom:.8rem}label{display:block;font-size:.85rem;color:var(--text-dim)}label>*{margin-top:.25rem}label.full{display:block;margin-bottom:.8rem}.code,pre.code{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:.8rem 1rem;overflow-x:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;white-space:pre-wrap;word-break:break-all}.keylist{list-style:none;margin-top:.8rem}.keylist li{display:flex;align-items:center;gap:.8rem;padding:.5rem 0;border-top:1px solid var(--border)}.keylist li>span:first-child{font-weight:600}.keylist li .meta{flex:1 1}.keylist li button{padding:.3rem .7rem;font-size:.8rem}input[type=file]{border:0;padding:0;color:var(--text-dim);font-size:.85rem}.login{max-width:340px;margin:3rem auto}.login form{display:grid;grid-gap:.9rem;gap:.9rem;margin-top:1.5rem}.login label{display:grid;grid-gap:.3rem;gap:.3rem;font-size:.85rem;color:var(--text-dim)}.userchip{display:flex;align-items:center;gap:.9rem;margin-left:auto;font-size:.9rem}.userchip a{color:var(--text-dim)}.userchip a:hover{color:var(--text);text-decoration:none}.linkbutton{background:none;border:none;padding:0;font:inherit;color:var(--text-dim);cursor:pointer}.linkbutton:hover{color:var(--text)}.settings{display:grid;grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}.settings form{display:grid;grid-gap:.6rem;gap:.6rem;max-width:380px}.settings label{display:grid;grid-gap:.3rem;gap:.3rem;font-size:.85rem;color:var(--text-dim)}.settings button{justify-self:start}.notice{color:var(--good);font-size:.85rem;margin-top:.4rem}ul.plain{list-style:disc;padding-left:1.2rem;color:var(--text-dim)}ul.plain li{margin-bottom:.5rem}label.row{display:flex;align-items:center;gap:.6rem;margin:.6rem 0;flex-wrap:wrap}label.row input[type=number]{width:10rem}:where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--violet);outline-offset:2px}.filterbar{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1rem}.filterbar .chip{text-decoration:none}.filterbar .chip:hover{background:var(--accent-soft)}.filterbar .chip.on{color:var(--accent-on)}.filterbar .chip.on,.filterbar .chip.on:hover{background:var(--accent)}.tablewrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.logtable{width:100%;border-collapse:collapse;font-size:.85rem}.logtable td,.logtable th{text-align:left;padding:.5rem .8rem;border-bottom:1px solid var(--border)}.logtable thead th{color:var(--text-dim);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.logtable tbody tr:last-child td{border-bottom:none}.logtable tbody tr:hover{background:var(--surface-2)}.logtable .nowrap{white-space:nowrap}.logtable .addr{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.logtable .subj{max-width:34ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clientgroup{border:1px solid var(--border);border-radius:10px;padding:.7rem 1rem;margin-bottom:.6rem;background:var(--surface)}.clientgroup .head{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.clientgroup .name{font-weight:600;margin-right:auto}.clientgroup .status-done{margin-left:.8rem}.groupfacts{list-style:none;margin-top:.7rem;max-height:28rem;overflow-y:auto;border-top:1px solid var(--border)}.groupfacts li{padding:.45rem 0;border-bottom:1px solid var(--border)}.groupfacts label{display:flex;gap:.6rem;align-items:flex-start;color:var(--text);font-size:.9rem}.groupfacts label>*{margin-top:0}.groupfacts input[type=checkbox]{width:auto;margin-top:.25rem}.groupfacts .meta{display:block;margin-left:1.6rem;font-size:.78rem}.flag{display:inline-block;margin:.35rem 0;font-size:.78rem}.groupfacts li .flag{margin-left:1.6rem}.autolist li{display:grid;grid-gap:.25rem;gap:.25rem}.autolist li button{justify-self:start;padding:.25rem .7rem;font-size:.8rem}.autolist li .meta{margin-left:0}.quoteline{border-left:3px solid var(--accent-dim);padding-left:.6rem;margin:.3rem 0}.keywordform{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem;align-items:center}.keywordform input,.keywordform select{width:auto;min-width:160px}.clienthead{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.clienthead button{padding:.25rem .7rem;font-size:.8rem}.clientfilter{max-width:22rem;margin-bottom:.8rem}.domainchips .chip{display:inline-flex;align-items:center;gap:.35rem}.domainchips .linkbutton{font-size:1rem;line-height:1}.askhistory{margin-top:1.2rem}.askhistory ul{list-style:none;margin-top:.5rem}.askhistory li{padding:.35rem 0;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:.5rem;align-items:baseline}.askhistory li button{text-align:left;color:var(--link)}.askhistory li button:hover{text-decoration:underline}.factgroup{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:.9rem 1.1rem;margin-bottom:.8rem}.factgroup h3{font-size:.98rem;margin-bottom:.5rem}.factgroup .point{padding:.4rem 0;border-top:1px solid var(--border)}.factgroup .point:first-of-type{border-top:0}.factgroup .history{margin-top:.5rem;border-top:1px solid var(--border);padding-top:.5rem}.factgroup .history .point{color:var(--text-dim);font-size:.9rem;border-top:0}.factgroup summary{cursor:pointer;color:var(--link);font-size:.85rem}.briefing{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:.9rem 1.1rem;margin-bottom:.8rem}.briefing>.meta{margin-bottom:.6rem}.briefsection{padding:.5rem 0;border-top:1px solid var(--border)}.briefsection:first-of-type{border-top:0}.briefsection h3{font-size:.98rem;margin-bottom:.4rem}.briefsection ul{margin:0;padding-left:1.2rem}.briefsection li{margin-bottom:.45rem}.briefsection .sources summary{cursor:pointer;color:var(--link);font-size:.8rem}.briefsection .sources .point{color:var(--text-dim);font-size:.88rem;padding:.3rem 0 .3rem .6rem;border-left:2px solid var(--accent-dim);margin-top:.3rem}.routed{margin-top:.5rem}.crumbs{font-size:.85rem;color:var(--text-dim);margin-bottom:.2rem}.thingmap{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:.6rem .8rem;margin:0 0 .8rem}.thingmap svg{width:100%;height:auto;display:block}.thingmap .spoke{stroke:var(--border);stroke-width:1}.thingmap .tie{stroke:var(--accent-dim);stroke-linecap:round;opacity:.8}.thingmap .hub{fill:var(--surface-2);stroke:var(--link);stroke-width:1.5}.thingmap .hublabel{font-weight:600}.thingmap .hublabel,.thingmap .nodelabel{font-size:12px;fill:var(--text)}.thingmap a:hover .nodelabel{fill:var(--link);text-decoration:underline}.thingmap .node{stroke:var(--surface);stroke-width:2}.key.project:before,.thingmap .node.project{fill:#473d92;background:#473d92}.key.system:before,.thingmap .node.system{fill:#1f7a8c;background:#1f7a8c}.key.contact:before,.thingmap .node.contact{fill:#b8641a;background:#b8641a}.key.process:before,.thingmap .node.process{fill:#4f8a2b;background:#4f8a2b}.key:before{content:"";display:inline-block;width:.6rem;height:.6rem;border-radius:50%;margin-right:.25rem;vertical-align:baseline}.thingindex{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:.4rem 1.2rem;gap:.4rem 1.2rem;margin-bottom:.8rem}.thingindex h3{font-size:.95rem;margin:.3rem 0}.related,.shared,.thingindex ul{margin:0;padding-left:1.1rem}.related li,.shared li,.thingindex li{margin-bottom:.3rem}.lineactions{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .9rem}.lineactions>.correct,.lineactions>.correct-done,.lineactions>details[open]{flex-basis:100%}.correct-open{font-size:.8rem}.correct{margin-top:.4rem}.correct-done{margin-top:.2rem}.correct .controls,.question .controls{display:flex;gap:.9rem;align-items:center;margin-top:.4rem}.questions,.savedanswers{display:grid;grid-gap:.6rem;gap:.6rem;margin-bottom:.8rem}.question{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:.7rem .9rem}.question>.meta{margin:.2rem 0 .4rem}.chip.stale{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn)}.chip.conflict{background:#fbe4e8;border:1px solid #e2a5b1;color:var(--bad)}.chip.gap{background:var(--surface-2);border:1px solid var(--accent-dim);color:var(--link)}.savedanswer{border-left:3px solid var(--accent-dim);background:var(--surface);border-radius:0 8px 8px 0;padding:.6rem .9rem}.savedanswer .q{font-weight:600;margin-bottom:.25rem}.savedanswer .a{white-space:pre-wrap}.savedanswer .sources summary{cursor:pointer;color:var(--link);font-size:.8rem}.savedanswer .sources .point{color:var(--text-dim);font-size:.88rem;padding:.3rem 0 .3rem .6rem;border-left:2px solid var(--accent-dim);margin-top:.3rem}.start{margin-bottom:1.2rem}.start>ul{margin:0 0 .6rem;padding-left:1.2rem}.start>ul li{margin-bottom:.45rem}.start h3{font-size:.98rem;margin:.8rem 0 .4rem}.start .card p{margin:.3rem 0 .5rem;font-size:.92rem;color:var(--text)}