:root { --bg:#fff; --fg:#1f2328; --muted:#656d76; --line:#d8dee4; --accent:#0969da; --side:#f6f8fa; }
@media (prefers-color-scheme: dark) { :root { --bg:#0d1117; --fg:#e6edf3; --muted:#8b949e; --line:#30363d; --accent:#58a6ff; --side:#161b22; } }
* { box-sizing: border-box; }
body { margin:0; font:14px/1.5 system-ui, sans-serif; background:var(--bg); color:var(--fg); }
header { display:flex; gap:16px; align-items:baseline; padding:12px 16px; border-bottom:1px solid var(--line); flex-wrap:wrap; }
h1 { font-size:18px; margin:0; } #meta { color:var(--muted); }
.layout { display:grid; grid-template-columns:260px 1fr; min-height:calc(100vh - 50px); }
nav { background:var(--side); border-right:1px solid var(--line); padding:8px; overflow:auto; }
nav a { display:block; padding:4px 8px; border-radius:6px; color:var(--fg); text-decoration:none; }
nav a.type { font-weight:700; text-transform:uppercase; letter-spacing:.04em; margin-top:10px; } nav a.area { font-weight:600; padding-left:22px; } nav a.feature { padding-left:38px; color:var(--muted); }
nav a.active { background:color-mix(in srgb, var(--accent) 18%, transparent); color:var(--fg); }
main { padding:16px; min-width:0; }
#toolbar { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px; }
#toolbar input, #toolbar select { padding:6px 8px; border:1px solid var(--line); border-radius:6px; background:var(--bg); color:var(--fg); }
#search { flex:1 1 220px; }
table { width:100%; border-collapse:collapse; } th, td { text-align:left; padding:6px 8px; border-bottom:1px solid var(--line); vertical-align:top; }
a { color:var(--accent); }
.badge { display:inline-block; padding:0 8px; border-radius:10px; font-size:12px; border:1px solid var(--line); margin-right:4px; }
.badge.priority-high { border-color:#cf222e; color:#cf222e; } .badge.priority-medium { border-color:#bf8700; color:#bf8700; }
.badge.automation-manual, .badge.automation-planned, .badge.automation-draft { color:var(--muted); }
.block { margin:16px 0; } .block h3 { margin:0 0 4px; font-size:14px; } .block ol, .block ul { margin:0; padding-left:22px; }
.source, .empty { color:var(--muted); }
@media (max-width:760px) { .layout { grid-template-columns:1fr; } nav { border-right:0; border-bottom:1px solid var(--line); max-height:200px; } }
