body {
  max-width: 50em;
  margin: 0 auto;
  padding: 2em;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.6;
  color: #333;
}
h1, h2, h3, h4 { color: #2c3e50; margin-top: 1.5em; }
h1 { border-bottom: 2px solid #3498db; padding-bottom: 0.3em; }
h2 { border-bottom: 1px solid #ddd; padding-bottom: 0.2em; }
code { background: #f4f4f4; padding: 0.2em 0.4em; border-radius: 3px; font-size: 0.9em; }
pre { background: #f8f8f8; padding: 1em; border-radius: 5px; overflow-x: auto; border: 1px solid #ddd; }
pre code { background: none; padding: 0; }
table { border-collapse: collapse; width: 100%; margin: 1em 0; }
th, td { border: 1px solid #ddd; padding: 0.5em 1em; text-align: left; }
th { background: #f4f4f4; }
blockquote { border-left: 4px solid #3498db; margin: 1em 0; padding-left: 1em; color: #666; }
a { color: #3498db; text-decoration: none; }
a:hover { text-decoration: underline; }
nav#TOC { background: #f8f9fa; padding: 1.5em; border-radius: 5px; margin-bottom: 2em; }
nav#TOC ul { list-style: none; padding-left: 1em; margin: 0.5em 0; }
nav#TOC > ul { padding-left: 0; }
nav#TOC a { color: #2c3e50; }
.nav-links { display: flex; justify-content: space-between; margin: 2em 0; padding: 1em 0; border-top: 1px solid #ddd; }
.nav-links a { padding: 0.5em 1em; background: #f4f4f4; border-radius: 4px; }
header#title-block-header { margin-bottom: 1em; }
header#title-block-header h1.title { margin-top: 0; }
.breadcrumb { font-size: 0.9em; margin-bottom: 1em; }
.breadcrumb a { color: #666; }
@media (max-width: 600px) { body { padding: 1em; } }
