
html { scroll-behavior: smooth; }
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.6; color: #212529; background: #FFFFFF; margin: 0; font-size: 18px;
}
.sidebar {
  width: 15%; position: fixed; top: 0; left: 0; height: 100%;
  background: #F8F9FA; border-right: 1px solid #DEE2E6; padding: 2rem; box-sizing: border-box; overflow-y: auto;
}
.sidebar ul { list-style: none; padding: 0; margin: 0; }
.sidebar li { margin-bottom: 1em; } .sidebar li:last-child { margin-bottom: 0; }
.sidebar a { display: block; padding: 0.1rem 0; color: #495057; text-decoration: none; }
.sidebar a:hover { color: #2d2b4e; }
.content { margin-left: 15%; padding: 2rem 8rem; }
section { padding-top: 2rem; margin-bottom: 2rem; border-bottom: 1px solid #DEE2E6; }
section:last-child { border-bottom: none; }
.intro-container { display: grid; grid-template-columns: 30% auto; gap: 4rem; align-items: start; }
.logo { display: block; width: 100%; margin: 0 auto 1rem; mix-blend-mode: multiply; }
#introduction h2 { text-align: left; border-bottom: none; margin-bottom: 0; padding-bottom: 0.25rem; }
h2 { font-size: 2rem; margin-top: 0; padding-bottom: 0.5rem; border-bottom: 1px solid #DEE2E6; color: #2d2b4e; }
h3 { font-size: 1.5rem; color: #343A40; }
p, .content li { margin-bottom: 1rem; }
a { color: #184e75; text-decoration: none; }
a:hover { color: #0278b3; text-decoration: none; }
code {
  background: #E9ECEF; padding: 0.2em 0.4em; font-size: 85%; border-radius: 3px;
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
pre { background: #E9ECEF; border: 1px solid #DEE2E6; border-radius: 4px; padding: 1rem; white-space: pre-wrap; word-wrap: break-word; }
pre code { background: transparent; padding: 0; font-size: 100%; }
@media (max-width: 768px) {
  .sidebar { display: none; }
  .content { margin-left: 0; padding: 2rem 1.5rem; }
}

table.minimal { border-collapse: collapse; width: 100%; }
table.minimal th, table.minimal td { padding: 0.75rem 0.5rem; }
table.minimal thead th { text-align: left; border-bottom: 2px solid #DEE2E6; padding-bottom: 1rem; }
table.minimal tbody tr:nth-child(odd) { background-color: #f8f9fa; }
table.minimal tbody tr:nth-child(even) { background-color: #ffffff; }
.intro-link { display: inline-block; margin: 0.25rem 0 0.75rem; }