/* Penguin cpp manual: the same look as the download page, light or dark */
:root { --bg: #ffffff; --fg: #1d2330; --muted: #5b6475; --code: #f2f4f8; --line: #dde1e8; --accent: #1f6feb; }
@media (prefers-color-scheme: dark) {
  :root { --bg: #14171d; --fg: #e6e8ec; --muted: #9aa3b2; --code: #1e232c; --line: #2c3340; --accent: #6ea8fe; }
}
body { background: var(--bg); color: var(--fg); font: 16px/1.6 system-ui, sans-serif; margin: 0; }
main { max-width: 820px; margin: 0 auto; padding: 32px 16px 64px; }
h1 { font-size: 2rem; margin: 0 0 4px; }
h2 { font-size: 1.35rem; margin-top: 2.4rem; padding-top: 0.6rem; border-top: 1px solid var(--line); }
h3 { font-size: 1.08rem; margin-top: 1.6rem; }
p.lead, .muted { color: var(--muted); }
p.lead { margin-top: 0; }
a { color: var(--accent); }
pre { background: var(--code); border: 1px solid var(--line); border-radius: 8px; padding: 12px 14px; overflow-x: auto; }
code { font-family: ui-monospace, Menlo, monospace; font-size: 0.92rem; }
kbd { font-family: inherit; font-size: 0.88em; border: 1px solid var(--line); border-bottom-width: 2px; border-radius: 4px; padding: 0 5px; white-space: nowrap; }
table { border-collapse: collapse; width: 100%; margin: 12px 0; font-size: 0.95rem; }
th, td { border: 1px solid var(--line); padding: 6px 10px; text-align: left; vertical-align: top; }
th { background: var(--code); }
nav.toc { background: var(--code); border: 1px solid var(--line); border-radius: 8px; padding: 10px 18px; }
nav.toc ol { margin: 6px 0; padding-left: 20px; }
.lang { float: right; font-size: 0.9rem; }
.note { border-left: 4px solid var(--accent); padding: 4px 12px; background: var(--code); border-radius: 0 6px 6px 0; }
