:root { --paper: #fff8ec; --card: #fff; --ink: #2b2733; --muted: #7d7486; --line: #f0dfc2; --ai: #0f9e8e; --shu: #ff5a4e; }
@media (prefers-color-scheme: dark) { :root { --paper: #1d1a24; --card: #26222f; --ink: #f3eee6; --muted: #a39cab; --line: #3a3445; } }
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 16px/1.8 "Hiragino Sans", "Noto Sans JP", "PingFang SC", system-ui, sans-serif; }
main { max-width: 780px; margin: 0 auto; padding: 32px 16px 64px; }
header a { color: var(--ai); font-weight: 700; text-decoration: none; }
h1 { font-size: 1.7rem; margin: 0.6em 0 0.2em; }
h2 { font-size: 1.15rem; margin: 2em 0 0.4em; padding-left: 10px; border-left: 4px solid var(--shu); }
h3 { font-size: 1rem; margin: 1.4em 0 0.3em; }
.meta { color: var(--muted); font-size: 0.9rem; }
.zh { margin-top: 56px; padding-top: 24px; border-top: 2px dashed var(--line); }
table { width: 100%; border-collapse: collapse; margin: 0.8em 0; font-size: 0.95rem; }
th, td { border: 1px solid var(--line); padding: 8px 10px; text-align: left; vertical-align: top; }
th { background: var(--card); width: 32%; }
nav.links { margin-top: 48px; font-size: 0.9rem; color: var(--muted); }
nav.links a { color: var(--ai); margin-right: 1em; }
main a { color: var(--ai); }
math { font-size: 1.05em; }
