:root {
  --bg: #eceef0; --surface: #fafafb; --ink: #1b1d21; --muted: #5d636b; --line: #cfd3d8; --focus: #2a5bd7;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { --bg: #16181b; --surface: #1e2125; --ink: #eceef0; --muted: #9aa1a9; --line: #353a41; --focus: #7aa2ff; }
}
:root[data-theme="dark"] { --bg: #16181b; --surface: #1e2125; --ink: #eceef0; --muted: #9aa1a9; --line: #353a41; --focus: #7aa2ff; }
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink);
       font: 16px/1.6 ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
main { max-width: 720px; margin: 0 auto; padding: 40px 20px 64px; }
.back { display: inline-block; margin-bottom: 28px; color: var(--muted); font-size: .92rem; }
h1 { font-size: 1.9rem; line-height: 1.2; margin: 0 0 6px; font-weight: 720; letter-spacing: 0.01em; text-transform: uppercase; }
.updated { color: var(--muted); font-size: .9rem; margin: 0 0 28px; }
h2 { font-size: 1.1rem; margin: 30px 0 8px; }
p, li { color: var(--ink); }
ul { padding-left: 20px; }
li { margin: 4px 0; }
a { color: var(--ink); }
a:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.note { background: var(--surface); border: 1px solid var(--line); border-radius: 10px; padding: 14px 16px; }
footer { margin-top: 44px; padding-top: 16px; border-top: 1px solid var(--line); color: var(--muted); font-size: .88rem; }
footer a { color: var(--muted); }
