:root { --bg:#0b0d10; --fg:#e8ecf1; --muted:#9aa7b2; --card:#141922; --chip:#243245; --accent:#5aa0ff; }
html,body { background:var(--bg); color:var(--fg); margin:0; font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; }
header { padding:20px; border-bottom:1px solid #223; background:#0f1218; position:sticky; top:0; z-index:3; }
h1 { margin:0 0 6px; font-size:20px; }
.muted { color:var(--muted); }
.wrap { max-width:1100px; margin:0 auto; padding:16px; }
.controls { display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
select, input[type="search"] { background:#0d1520; color:var(--fg); border:1px solid #243145; border-radius:8px; padding:8px 10px; }
.grid { display:grid; grid-template-columns: 1.2fr 1fr 1fr; gap:12px; align-items:center; }
.thead { color:#cdd6df; text-transform:uppercase; letter-spacing:.04em; font-size:12px; opacity:.9; }
.topic { display:flex; align-items:center; gap:8px; }
.chip { background:var(--chip); padding:3px 8px; border-radius:999px; font-size:12px; color:#cfe2ff; }
.panel { background:var(--card); border:1px solid #212b39; border-radius:14px; padding:12px; min-height:44px; }
.item { margin:0 0 10px; }
.item a { color:var(--accent); text-decoration:none; }
.item a:hover { text-decoration:underline; }
.empty { color:var(--muted); font-style:italic; }
.counts { color:#9db1c3; font-size:12px; }
.footer { color:var(--muted); text-align:center; padding:24px 12px 40px; }
.sep { height:1px; background:#1d2430; margin:16px 0; opacity:.8; }
.sticky-head { position:sticky; top:72px; z-index:2; background:linear-gradient(#0f1218, #101521); padding:8px 0; border-bottom:1px solid #223; }
@media (max-width: 900px) { .grid { grid-template-columns: 1fr; } .thead { display:none; } }

.row { margin: 10px 0 8px; }


