/* Minimal custom theme – replace or extend when repurposing your HTML */
:root {
  --color-bg: #0f0f0f;
  --color-fg: #e0e0e0;
  --color-muted: #888;
  --color-link: #6b9eed;
  --color-border: #2a2a2a;
  --font-sans: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --max-width: 720px;
}

* { box-sizing: border-box; }
body { margin: 0; font-family: var(--font-sans); background: var(--color-bg); color: var(--color-fg); line-height: 1.6; }
a { color: var(--color-link); }
a:hover { text-decoration: none; }

.site-header { border-bottom: 1px solid var(--color-border); padding: 1rem 0; }
.header-inner { max-width: var(--max-width); margin: 0 auto; padding: 0 1rem; display: flex; justify-content: space-between; align-items: center; }
.site-logo { font-weight: 700; text-decoration: none; color: inherit; }
.nav-list { list-style: none; margin: 0; padding: 0; display: flex; gap: 1.5rem; }
.nav-list a { text-decoration: none; color: var(--color-muted); }
.nav-list a:hover { color: var(--color-fg); }

.site-main { max-width: var(--max-width); margin: 0 auto; padding: 2rem 1rem; }
.home-header { margin-bottom: 2rem; }
.home-header h1 { margin: 0 0 0.5rem; font-size: 1.75rem; }
.lead { margin: 0; color: var(--color-muted); }
.home-sections h2 { font-size: 1rem; margin: 1.5rem 0 0.5rem; color: var(--color-muted); }
.post-list { list-style: none; margin: 0; padding: 0; }
.post-list li { margin-bottom: 0.75rem; }
.post-list .meta { font-size: 0.875rem; color: var(--color-muted); margin-left: 0.5rem; }
.section-nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 1rem; }

.list-header h1 { margin: 0 0 0.5rem; font-size: 1.5rem; }
.list-desc { color: var(--color-muted); margin-bottom: 1.5rem; }
.post-item { margin-bottom: 1.5rem; }
.post-item .summary { margin: 0.25rem 0 0; font-size: 0.9375rem; color: var(--color-muted); }
.pagination { margin-top: 2rem; }
.pagination ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 0.5rem; }

.single-header h1 { margin: 0 0 0.5rem; font-size: 1.5rem; }
.single-header .meta { font-size: 0.875rem; color: var(--color-muted); margin-bottom: 1.5rem; }
.single-content { margin-top: 1rem; }
.single-content h2 { font-size: 1.25rem; margin: 1.5rem 0 0.5rem; }
.single-content h3 { font-size: 1.1rem; }
.single-content p { margin: 0 0 1rem; }
.single-content ul, .single-content ol { margin: 0 0 1rem; padding-left: 1.5rem; }

.site-footer { border-top: 1px solid var(--color-border); padding: 1rem; margin-top: 2rem; }
.footer-inner { max-width: var(--max-width); margin: 0 auto; text-align: center; }
.footer-copy { margin: 0; font-size: 0.875rem; color: var(--color-muted); }

.error-page { text-align: center; padding: 3rem 0; }
.error-page h1 { margin: 0 0 0.5rem; font-size: 3rem; color: var(--color-muted); }
