/* The credits and licences pages (doc.html, rendered by tools/mdhtml.py): long prose and tables in the viewer's
   theme (viewer.css), scrolling, no panes. */
html, body { height: auto; }
body.doc-page { display: block; font: 15px/1.55 system-ui, -apple-system, "Helvetica Neue", sans-serif; letter-spacing: 0; min-height: 100vh; }
.doc-page header { position: sticky; top: 0; z-index: 2; background: var(--bg); font: 13px/1.4 "DIN Condensed", "Futura", system-ui, sans-serif; letter-spacing: 0.02em; }
.doc-page header nav.docs { margin-left: auto; display: flex; gap: 14px; }
.doc-page header nav.docs a { color: var(--dim); text-decoration: none; text-transform: uppercase; letter-spacing: 0.1em; }
.doc-page header nav.docs a:hover { color: var(--text); }
.doc-page header nav.docs a[aria-current] { color: var(--accent); }
.doc-page main.doc { display: block; max-width: 1080px; margin: 0 auto; padding: 24px 40px 80px; }
.doc h1, .doc h2, .doc h3, .doc h4 { font-family: "DIN Condensed", "Futura", system-ui, sans-serif; font-weight: normal;
  letter-spacing: 0.08em; text-transform: uppercase; scroll-margin-top: 64px; }
.doc h1 { font-size: 28px; letter-spacing: 0.2em; margin: 18px 0 14px; }
.doc h2 { font-size: 21px; color: var(--accent); margin: 40px 0 10px; border-bottom: 1px solid var(--line); padding-bottom: 6px; }
.doc h3 { font-size: 17px; margin: 28px 0 8px; }
.doc h4 { font-size: 15px; margin: 22px 0 6px; color: var(--dim); }
.doc p, .doc li { color: #c6c7c3; max-width: 78ch; }
.doc a { color: var(--accent); text-decoration: none; border-bottom: 1px solid rgba(230, 179, 90, 0.35); overflow-wrap: anywhere; }
.doc a:hover { border-bottom-color: var(--accent); }
.doc a[id]:not([href]) { border: 0; }
.doc code { font: 13px ui-monospace, Menlo, monospace; color: #e2d6bd; background: var(--panel); padding: 0 3px; overflow-wrap: anywhere; }
.doc pre { background: var(--panel); border: 1px solid var(--line); padding: 10px 12px; overflow-x: auto; }
.doc pre code { background: none; padding: 0; }
.doc blockquote { margin: 12px 0; padding: 2px 16px; border-left: 2px solid var(--accent); background: rgba(21, 23, 26, 0.6); }
.doc .tbl { overflow-x: auto; margin: 12px 0 18px; }
.doc table { border-collapse: collapse; font-size: 13.5px; line-height: 1.45; min-width: 640px; }
.doc th, .doc td { text-align: left; vertical-align: top; padding: 6px 10px; border-bottom: 1px solid var(--line); }
.doc th { color: var(--dim); font-weight: normal; text-transform: uppercase; letter-spacing: 0.06em; font-size: 12px; border-bottom-color: #3a3e44; }
.doc td:first-child { color: var(--text); min-width: 160px; }
.doc td { color: #bdbfbb; }
@media (max-width: 720px) {
  .doc-page main.doc { padding: 16px 16px 60px; }
  .doc-page header { flex-wrap: wrap; gap: 10px; }
}
