/* World Navigation Resources — print-first CSS (US Letter) */

@page {
  size: Letter;
  margin: 1in;
}

:root {
  --text: #000;
  --bg: #fff;
}

html, body {
  height: 100%;
}

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 11pt;
  line-height: 1.25;
}

.page {
  /* 8.5in - 2in margins = 6.5in usable width */
  max-width: 6.5in;
  margin: 0 auto;
  padding: 0;
}

h1 {
  font-size: 18pt;
  margin: 0 0 6pt 0;
}

h2 {
  font-size: 14pt;
  margin: 18pt 0 6pt 0;
}

h3 {
  font-size: 12pt;
  margin: 12pt 0 4pt 0;
}

p { margin: 0 0 8pt 0; }

.subtitle { margin-top: 2pt; }
.meta { margin-top: 6pt; }
.note {
  border-left: 3pt solid #000;
  padding-left: 10pt;
  margin-top: 10pt;
}

.toc {
  margin-top: 14pt;
  padding-top: 10pt;
  border-top: 1pt solid #000;
}

.toc ol {
  margin: 6pt 0 0 18pt;
  padding: 0;
}

.region {
  margin-top: 10pt;
}

.mla {
  margin: 6pt 0 10pt 0;
  padding-left: 0;
  list-style-position: outside;
}

.mla li {
  margin: 0 0 6pt 18pt;
  padding-left: 1.5em;   /* hanging indent */
  text-indent: -1.5em;
  overflow-wrap: anywhere;
  word-break: break-word;
}

a {
  color: inherit;
  text-decoration: underline;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.hint {
  margin: 6pt 0 10pt 0;
  padding: 8pt 10pt;
  border: 1pt solid #000;
}

.small {
  font-size: 9.5pt;
}

.doc-footer {
  margin-top: 18pt;
  padding-top: 10pt;
  border-top: 1pt solid #000;
}

/* Print behavior */
@media print {
  body { background: #fff; }

  /* Page breaks before major regions, except the first one */
  .region { break-before: page; }
  #global.region { break-before: auto; }

  /* Avoid awkward breaks within MLA entries */
  .mla li { break-inside: avoid; }
}
