:root {
  color-scheme: light dark;
  --fg: #1c1c1c; --muted: #666; --bg: #fafafa; --card: #fff; --line: #e4e4e4; --accent: #1a73e8;
}
@media (prefers-color-scheme: dark) {
  :root { --fg: #e8e8e8; --muted: #9a9a9a; --bg: #121212; --card: #1c1c1c; --line: #2c2c2c; --accent: #8ab4f8; }
}
* { box-sizing: border-box; }
body { margin: 0; font: 16px/1.6 system-ui, -apple-system, "Noto Sans TC", sans-serif; color: var(--fg); background: var(--bg); }
header, main, footer { max-width: 44rem; margin: 0 auto; padding: 1rem 1.25rem; }
header { padding-top: 2.5rem; }
h1 { margin: 0; font-size: 2rem; letter-spacing: .02em; }
.tagline { margin: .25rem 0 .75rem; color: var(--muted); }
nav a { margin-right: 1rem; color: var(--accent); text-decoration: none; }
h2 { font-size: 1rem; color: var(--muted); font-weight: 600; margin: 2rem 0 .75rem; }
article { background: var(--card); border: 1px solid var(--line); border-radius: 10px; padding: 1rem 1.25rem; margin-bottom: .75rem; }
article h3 { margin: 0 0 .35rem; font-size: 1.1rem; }
article h3 a { color: inherit; text-decoration: none; }
article h3 a:hover { color: var(--accent); }
.summary { margin: 0 0 .5rem; }
.meta { margin: 0; font-size: .85rem; color: var(--muted); display: flex; flex-wrap: wrap; gap: .75rem; }
.meta a { color: var(--accent); text-decoration: none; }
.channel { font-weight: 600; }
.reasons { margin: .4rem 0 0; font-size: .8rem; color: var(--muted); }
.empty { color: var(--muted); }
footer { color: var(--muted); font-size: .85rem; border-top: 1px solid var(--line); margin-top: 2rem; }