/* Общие стили статических страниц (правила, об игре) */
:root {
  --bg: #0b0c10;
  --gold: #d4af37;
  --gold-glow: rgba(212, 175, 55, 0.45);
  --text: #f0e6d2;
  --muted: #a39b8b;
  --body: #d8cfbd;
  --line: rgba(212, 175, 55, 0.35);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: radial-gradient(ellipse at top, #1a1a24 0%, var(--bg) 60%) fixed, var(--bg);
  color: var(--text);
  font-family: 'PT Serif', Georgia, 'Times New Roman', serif;
  font-size: 1.05rem;
  line-height: 1.65;
}
a { color: var(--gold); }
.wrap { max-width: 780px; margin: 0 auto; padding: 32px 16px 56px; }
.crumbs {
  font-family: 'Golos Text', -apple-system, 'Segoe UI', Roboto, sans-serif;
  font-size: 0.85rem;
  color: var(--muted);
}
.crumbs a { color: var(--muted); }
header.hero { text-align: center; margin: 24px 0 8px; }
header.hero img { width: 84px; height: 84px; border-radius: 50%; }
h1, h2, h3 { font-family: 'Playfair Display', Georgia, serif; color: var(--gold); line-height: 1.25; }
h1 { font-size: clamp(1.8rem, 5vw, 2.6rem); margin: 8px 0 4px; text-shadow: 0 0 14px var(--gold-glow); }
.lead { font-style: italic; color: var(--muted); margin: 0; }
h2 {
  font-size: 1.5rem;
  margin: 44px 0 12px;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--line);
}
h3 { font-size: 1.15rem; margin: 24px 0 6px; }
p, li { color: var(--body); }
ul, ol { padding-left: 22px; }
li { margin-bottom: 7px; }
strong { color: var(--text); }
nav.toc {
  margin: 28px 0 0;
  padding: 16px 20px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(20, 20, 25, 0.6);
  font-family: 'Golos Text', -apple-system, 'Segoe UI', Roboto, sans-serif;
  font-size: 0.95rem;
}
nav.toc ol { margin: 6px 0 0; }
nav.toc li { margin-bottom: 3px; }
.note {
  margin: 18px 0;
  padding: 14px 18px;
  border-left: 3px solid var(--gold);
  background: rgba(212, 175, 55, 0.06);
}
.cta {
  display: inline-block;
  margin-top: 8px;
  padding: 12px 28px;
  border: 1px solid var(--gold);
  border-radius: 8px;
  font-family: 'Golos Text', -apple-system, 'Segoe UI', Roboto, sans-serif;
  font-weight: 600;
  text-decoration: none;
  background: rgba(212, 175, 55, 0.08);
}
.cta:hover { background: rgba(212, 175, 55, 0.18); }
footer { margin-top: 56px; text-align: center; color: var(--muted); font-size: 0.9rem; }
blockquote {
  margin: 32px 0 0;
  padding: 18px 22px;
  border: 1px solid var(--line);
  border-radius: 8px;
  font-style: italic;
  text-align: center;
  color: var(--body);
}
figure { margin: 22px 0; }
figure img { display: block; width: 100%; height: auto; border: 1px solid var(--line); border-radius: 8px; }
figcaption { margin-top: 8px; font-size: 0.92rem; color: var(--muted); font-style: italic; text-align: center; }
dl.facts { display: grid; grid-template-columns: max-content 1fr; gap: 6px 18px; margin: 18px 0; padding: 16px 20px; border: 1px solid var(--line); border-radius: 8px; background: rgba(20, 20, 25, 0.6); }
dl.facts dt { color: var(--gold); font-family: 'Golos Text', -apple-system, 'Segoe UI', Roboto, sans-serif; font-size: 0.92rem; }
dl.facts dd { margin: 0; color: var(--body); }
@media (max-width: 480px) { dl.facts { grid-template-columns: 1fr; } dl.facts dd { margin-bottom: 8px; } }
.definition { font-size: 1.15rem; color: var(--text); }
