:root{--bg:#0f1115;--surface:#171a21;--surface-2:#1e232d;--border:#2a303c;--text:#e6e9ef;--text-dim:#9aa3b2;--accent:#6ea8fe;--accent-dim:#2b4a7a;--good:#4ade80;--warn:#fbbf24;--bad:#f87171}*{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(--accent);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:#5a4614}.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:#0b0d11;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:#0b0d11;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}