:root { --fg:#111; --bg:#fff; --muted:#666; --line:#e3e3e3; }
@media (prefers-color-scheme: dark) {
  :root { --fg:#eee; --bg:#141414; --muted:#999; --line:#2c2c2c; }
}
* { box-sizing: border-box; }
body { margin:0; font:16px/1.5 system-ui,sans-serif; color:var(--fg); background:var(--bg); }
header { display:flex; gap:1rem; align-items:center; padding:1rem;
         border-bottom:1px solid var(--line); }
header h1 { font-size:1.1rem; margin:0; letter-spacing:-0.02em; }
#q { flex:1; padding:.6rem .8rem; font-size:1rem; border:1px solid var(--line);
     border-radius:6px; background:transparent; color:inherit; }
main { display:grid; grid-template-columns:240px 1fr; gap:2rem; padding:1.5rem;
       align-items:start; }
@media (max-width:720px) { main { grid-template-columns:1fr; } }
#facets fieldset { border:0; border-top:1px solid var(--line); margin:0 0 1rem; padding:.75rem 0 0; }
#facets legend { font-size:.75rem; text-transform:uppercase; letter-spacing:.06em;
                 color:var(--muted); }
#facets label { display:flex; gap:.5rem; align-items:baseline; font-size:.9rem;
                padding:.15rem 0; cursor:pointer; }
#facets .count { margin-left:auto; color:var(--muted); font-variant-numeric:tabular-nums; }
#results { list-style:none; margin:0; padding:0; display:grid; gap:.5rem; }
#results li { border:1px solid var(--line); border-radius:8px; padding:.75rem 1rem; }
#results .name { font-weight:600; }
#results .meta { color:var(--muted); font-size:.85rem; }
/* Staleness is surfaced, not hidden (spec section 7). Muted, but present
   on every card - a record nobody has re-scraped in two years should say
   so rather than look as current as one updated this morning. */
#results .updated { display:block; margin-top:.25rem; color:var(--muted);
                    font-size:.75rem; font-variant-numeric:tabular-nums; }
#status { color:var(--muted); font-size:.9rem; }
#more { margin-top:1rem; padding:.6rem 1rem; }
