:root { --bg: #faf7f2; --text: #1f1a17; --muted: #5d5148; --accent: #8a2e3b; --border: #d9cfc4; color-scheme: light; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { --bg: #16130f; --text: #f1ebe3; --muted: #b9ada0; --accent: #e59aa4; --border: #4a4138; color-scheme: dark; }
}
:root[data-theme="dark"] { --bg: #16130f; --text: #f1ebe3; --muted: #b9ada0; --accent: #e59aa4; --border: #4a4138; color-scheme: dark; }
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--text); font: 16px/1.6 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
a { color: var(--accent); }
.top { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; max-width: 46rem; margin: 0 auto; padding: 16px; border-bottom: 1px solid var(--border); }
.top nav { display: flex; gap: 12px; }
.top [aria-current="page"] { font-weight: 700; }
main { max-width: 46rem; margin: 0 auto; padding: 8px 16px 48px; }
h1 { font-size: 1.75rem; line-height: 1.2; }
h2 { font-size: 1.25rem; margin-top: 32px; }
.updated { color: var(--muted); }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }
