
/* v3 editorial layout extension for PHP templates */
.editorial-lede{font-family:var(--font-head);font-size:24px;line-height:1.45;letter-spacing:-.015em}.figure-cap{color:var(--muted);font-size:12px;padding-top:12px;line-height:1.55}.editorial-utility{font-size:12px;color:var(--muted);line-height:1.5}.editorial-utility strong{color:var(--ink)}
.source-list{padding:0;list-style:none;border-top:1px solid var(--line);margin:24px 0}.source-list li{display:grid;grid-template-columns:40px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.source-list .source-index{color:var(--blue);font-weight:800;font-size:11px}.source-list a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.source-list .source-publisher{color:var(--muted);font-size:13px;margin:7px 0 0}.cite-inline{display:inline-block;vertical-align:super;font-size:12px;font-family:var(--font-ui);margin-left:2px;color:var(--blue);font-weight:700;text-decoration:underline}
.article-body section{scroll-margin-top:18px}.article-body .source-policy-brief{border-left:3px solid var(--blue);padding:11px 20px;margin:20px 0;background:#eef0fc;font-family:var(--font-ui);font-size:13px;line-height:1.65}.article-body ol,.article-body ul{padding-left:28px;line-height:1.83}.article-body li{margin:8px 0}.article-body .notice{background:#eff0fb;border-left:3px solid var(--blue);padding:19px 22px;font-size:15px;line-height:1.65}.article-body .rule-list li::marker{color:var(--red);font-weight:700}.editorial-kicker{display:inline-block;margin:15px 0 0;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.article-shell .toc nav{display:flex;flex-direction:column;gap:13px}.game-num{font-variant-numeric:tabular-nums}.game-entry[hidden]{display:none!important}.result-empty[hidden]{display:none!important}.result-empty{padding:28px 0;border-top:1px solid var(--line)}.reference-menu{background:var(--white);padding:32px;border:1px solid var(--line);margin:30px 0}.reference-menu a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.policy-body{max-width:790px;margin:50px auto 100px}.policy-body h2{font:500 36px/1.15 var(--font-head);margin:36px 0 12px}.policy-body p,.policy-body li{font:400 16px/1.8 var(--font-ui);color:#484c5e}.policy-body a{color:var(--blue);text-decoration:underline}.directory-note{padding:18px 0 25px;max-width:720px;font-size:13px;line-height:1.65;color:var(--muted)}
.search-q{height:57px}.not-found{padding:110px 0;text-align:center}.not-found h1{font:500 65px/1 var(--font-head)}.author-strip{display:flex;gap:16px;flex-wrap:wrap;margin:17px 0 0}.author-strip span{font-size:12px;color:var(--muted)}
@media(max-width:700px){.source-list li{grid-template-columns:25px 1fr}.article-body .notice{padding:15px}.editorial-lede{font-size:22px}}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* V1.1 typography correction — section rhythm must not rely on h2:first-child.
   Design-v3.css sets margin-top:0 on each section's first heading. */
.article-body > section + section { margin-top: clamp(64px, 7vw, 92px); }
.article-body > section > h2 { margin: 0 0 24px; line-height: 1.08; }
.article-body > section > h2 + p { margin-top: 0; }
.article-body > section > h2 + .faq { margin-top: 8px; }
.article-body > section > .source-list { margin-top: 28px; }
.article-body > section > .notice:last-child { margin-bottom: 0; }
.article-body > section > :last-child { margin-bottom: 0; }
.article-body section { scroll-margin-top: 30px; }
@media (max-width: 700px) {
  .article-body > section + section { margin-top: 56px; }
  .article-body > section > h2 { margin-bottom: 18px; line-height: 1.13; }
}

/* V1.3: historical research sections, legible rule version labels */
.article-body .rule-edition-note{background:#f1f2fc;border:1px solid #dfe3f6;padding:16px 20px;font:400 14px/1.65 var(--font-ui);color:var(--ink);margin:18px 0 20px}
.article-body .rule-edition-note a{color:var(--blue);font-weight:700;text-underline-offset:3px}
.history-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--blue);font:800 11px/1.5 var(--font-ui);margin-bottom:14px}
.history-status{display:flex;gap:18px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;margin:12px 0 25px;font-family:var(--font-ui)}
.history-status span{font:700 11px/1.3 var(--font-ui);color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.history-status strong{font-size:13px;font-weight:700;color:var(--ink)}
@media(max-width:700px){.history-status{align-items:flex-start;gap:7px;flex-direction:column}}

/* V3.6: concise encyclopedia entry */
.primer-title { padding-top: 68px; }
.primer-title h1 { max-width: 860px; }
.primer-shell { padding-bottom: 82px; }
.primer-shell .reference-menu { line-height: 1.7; }
.primer-shell .reference-menu p { font-size: 15px; margin: 8px 0 0; }
.primer-shell .reference-menu strong { font: 600 24px/1.2 var(--font-head); }
@media(max-width:700px){.primer-title { padding-top: 48px; }.primer-shell { padding-bottom: 55px; }}

/* V5: simple footer & institutional pages */
.site-footer.footer-minimal {padding:25px 0 33px;background:var(--paper);border-top:1px solid var(--line)}
.footer-minimal .footer-links {display:flex;gap:38px;justify-content:center;flex-wrap:wrap;align-items:center}
.footer-minimal .footer-links a {font:700 13px/1.4 var(--font-ui);color:var(--ink);text-decoration:none}
.footer-minimal .footer-links a:hover {color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.static-page {max-width:790px;padding-bottom:100px}
.static-page .page-title-block {padding-bottom:26px}
.static-page .static-content {border-top:1px solid var(--line);padding-top:32px}
.static-page .static-content p {font:400 21px/1.6 var(--font-head);margin:0 0 22px;color:var(--ink)}
.static-page .static-content h2 {font:500 34px/1.13 var(--font-head);margin:40px 0 13px}
.static-page .static-content a {color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.static-page .sitemap-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;list-style:none;padding:0;margin:14px 0 30px}
.static-page .sitemap-list li {border-bottom:1px solid var(--line);padding:9px 0}
.static-page .sitemap-list a {font:600 16px/1.4 var(--font-ui);text-decoration:none}
@media(max-width:650px){.footer-minimal .footer-links{gap:23px}.static-page .sitemap-list{grid-template-columns:1fr}.static-page .static-content p{font-size:19px}}
