:root{--bg:#fff;--fg:#1c2a33;--muted:#576168;--line:#d9dee2;--accent:#1f6f3f;--card:#f6f8f9}
@media (prefers-color-scheme:dark){:root{--bg:#14191c;--fg:#e6ebee;--muted:#9aa6ad;--line:#2a3338;--accent:#58b87a;--card:#1b2227}}
*{box-sizing:border-box}
body{margin:0;font:16px/1.45 system-ui,sans-serif;background:var(--bg);color:var(--fg)}
header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--line)}
h1{font-size:1.15rem;margin:0}
main{max-width:60rem;margin:0 auto;padding:1rem}
button{font:inherit;padding:.5rem .9rem;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:6px;cursor:pointer}
button.tab{background:transparent;color:var(--fg);border-color:var(--line)}button.tab.on{background:var(--accent);color:#fff;border-color:var(--accent)}
input,select,textarea{font:inherit;padding:.45rem;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg);max-width:100%}
#q,#question{width:100%;margin-bottom:.5rem}
.filters{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.6rem}.filters label{display:flex;flex-direction:column;font-size:.85rem;color:var(--muted)}
.inline{display:inline-flex;align-items:center;gap:.4rem;margin:0 1rem .5rem 0}
nav{display:flex;gap:.5rem;margin-bottom:1rem}
ol{list-style:none;padding:0;margin:0}
li.hit{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:.6rem .8rem;margin:.5rem 0;cursor:pointer}
li.hit:hover{border-color:var(--accent)}
.sub{font-weight:600}.meta,.snip,#count{color:var(--muted);font-size:.9rem}
.tag{display:inline-block;border:1px solid var(--line);border-radius:4px;padding:0 .35rem;margin-left:.3rem;font-size:.75rem;color:var(--muted)}
#r-body{white-space:pre-wrap;word-wrap:break-word;font:inherit;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:.8rem}
dl{display:grid;grid-template-columns:max-content 1fr;gap:.2rem .8rem;margin:.5rem 0}dt{color:var(--muted)}dd{margin:0;word-break:break-word}
.msg{border-radius:8px;padding:.6rem .8rem;margin:.6rem 0;white-space:pre-wrap}.msg.u{background:var(--card);border:1px solid var(--line)}.msg.a{border-left:3px solid var(--accent);padding-left:.8rem}
.err{color:#b3261e}
@media (max-width:30rem){main{padding:.75rem}}
