/* EGF Site Stylesheet (standards-style, text-first)
   Path: /assets/egf.css
*/

:root{
  --ink:#111;
  --muted:#444;
  --rule:#ccc;
  --bg:#fff;
  --link:#003366;
  --soft:#f6f6f6;
  --soft2:#fafafa;
}

*{ box-sizing:border-box; }

html, body{
  margin:0;
  padding:0;
  background:var(--bg);
  color:var(--ink);
}

body{
  font-family: Georgia, "Times New Roman", serif;
  font-size:12pt;
  line-height:1.65;
  -webkit-text-size-adjust:100%;
  text-rendering:optimizeLegibility;

  /* Layout fallback (so pages without .container still look correct) */
  max-width: 900px;
  margin: 70px auto;
  padding: 0 22px;
}

/* Layout (optional wrapper) */
.container{
  max-width: 900px;
  margin: 0 auto;     /* body already centres; container won’t add extra spacing */
  padding: 0;
}

/* Links */
a{
  color: var(--link);
  text-decoration:none;
}
a:hover{ text-decoration:underline; }

/* “Primary” link style used on index registry */
a.primary{
  font-weight: bold;
  text-decoration: none;
}
a.primary:hover{
  text-decoration: underline;
}

/* Headings */
h1{ font-size:24pt; font-weight:normal; margin: 0 0 8px 0; }
h2{ font-size:16pt; font-weight:normal; margin: 36px 0 10px 0; }
h3{ font-size:13.5pt; font-weight:normal; margin: 24px 0 8px 0; }

p{ margin: 12px 0; }

/* Lists */
ul, ol{ margin: 10px 0 10px 24px; padding:0; }
li{ margin: 6px 0; }

/* Index “document registry” list items (no bullets, cleaner spacing) */
li.doc{
  list-style: none;
  margin: 14px 0;
}
.desc{
  margin-left: 1.2em;
  font-size: 0.95em;
  color: #333;
}
.status{
  margin-left: 1.2em;
  font-size: 0.9em;
  color: #666;
}
.citation{
  margin-left: 1.2em;
  margin-top: 0.4em;
  font-size: 0.85em;
  color: #555;
}

/* Horizontal rule */
hr{
  border:0;
  border-top:1px solid var(--rule);
  margin: 26px 0;
}

/* Metadata block (common in your docs) */
.meta{
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  padding: 12px 0;
  margin: 20px 0 30px 0;
  font-size:11pt;
  color:var(--muted);
}

/* Footer (support both .footer class and <footer> element) */
footer, .footer{
  margin-top:50px;
  padding-top:15px;
  border-top:1px solid var(--rule);
  font-size:11pt;
  color:var(--muted);
}

footer p {
  line-height: 1.4;
}

/* Simple nav row (optional) */
.navline{
  font-size:11pt;
  color:var(--muted);
  margin: 10px 0 0 0;
}

/* Callouts (optional, use sparingly) */
.callout{
  border: 1px solid var(--rule);
  background: var(--soft2);
  padding: 12px 14px;
  margin: 16px 0;
}
.callout strong{ font-weight: bold; }

/* Inline code + pre */
code{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 0.95em;
  background: var(--soft);
  padding: 0 4px;
  border-radius: 4px;
}
pre{
  background: var(--soft);
  padding: 12px 14px;
  overflow:auto;
  border: 1px solid var(--rule);
  border-radius: 6px;
}
pre code{
  background: transparent;
  padding:0;
  border-radius:0;
}

/* Tables */
table{
  width:100%;
  border-collapse:collapse;
  margin: 14px 0;
  font-size: 11.5pt;
}
th, td{
  border: 1px solid var(--rule);
  padding: 8px 10px;
  vertical-align: top;
}
th{
  background: var(--soft2);
  font-weight: normal;
}

/* Print-friendly */
@media print{
  body{ margin: 0; max-width: none; padding: 0; }
  .container{ margin: 0; max-width: none; }
  a{ color: #000; text-decoration: none; }
}

/* Mobile */
@media (max-width: 600px){
  body{
    font-size: 11.5pt;
    margin: 28px auto;
    padding: 0 14px;
  }
  h1{ font-size: 20pt; }
  h2{ font-size: 15pt; }
  h3{ font-size: 13pt; }
}
