/* wgf-guide-related.css - the guide graph rails rendered by guide_related.py.
   Scope: .wgf-rg* only. Loaded by the guides shell, the profession guide shell and the
   farming route pages, so the same rail reads the same everywhere.
   Palette = the in-game one: slate panels, bronze/gold rules, gold links, parchment text.
   Flat fills only: no gradients, no glows, no green chrome. */

.wgf-rg {
  margin: 28px 0 0;
  padding: 18px 18px 14px;
  background: var(--wgf-panel, #14161c);
  border: 1px solid var(--wgf-border, #6e5a2a);
  color: var(--wgf-text, #f4ecd8);
}
.wgf-rg__title {
  margin: 0 0 6px;
  font-family: var(--font-display, "Morpheus", "Friz Quadrata", Georgia, serif);
  font-size: 1.15rem;
  font-weight: 600;
  letter-spacing: .02em;
  color: var(--wgf-gold, #ffd100);
}
.wgf-rg__intro {
  margin: 0 0 10px;
  color: var(--wgf-muted, #9d9d9d);
  font-size: .9rem;
}
.wgf-rg__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 6px 18px;
}
.wgf-rg__item { margin: 0; padding: 0; }
.wgf-rg__link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 6px;
  border-bottom: 1px solid var(--wgf-border-neutral, rgba(110, 90, 42, .45));
  text-decoration: none;
  color: inherit;
}
.wgf-rg__link:hover .wgf-rg__name,
.wgf-rg__link:focus-visible .wgf-rg__name { text-decoration: underline; }
.wgf-rg__icon {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  border: 1px solid var(--wgf-border, #6e5a2a);
  background: #0d0f14;
  object-fit: cover;
}
.wgf-rg__icon--blank { display: inline-block; }
.wgf-rg__text { display: flex; flex-direction: column; min-width: 0; }
.wgf-rg__name {
  color: var(--wgf-gold-link, #ffd100);
  font-weight: 600;
  line-height: 1.25;
}
.wgf-rg__sub {
  color: var(--wgf-muted, #9d9d9d);
  font-size: .82rem;
  line-height: 1.3;
}
.wgf-rg--materials .wgf-rg__list { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
/* the CMS guide footer is a wrapping flex row: the rails take the full width of it */
.gsh-guide-detail__footer .wgf-rg,
.gsh-guide-detail__footer .wgf-rg-pager { flex: 1 1 100%; }

/* prev / next inside a leveling series */
.wgf-rg-pager {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin: 28px 0 0;
}
.wgf-rg-pager__side {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  background: var(--wgf-panel, #14161c);
  border: 1px solid var(--wgf-border, #6e5a2a);
  color: inherit;
  text-decoration: none;
  min-height: 52px;
}
.wgf-rg-pager__side--next { flex-direction: row-reverse; text-align: right; }
.wgf-rg-pager__side--empty { visibility: hidden; }
.wgf-rg-pager__text { display: flex; flex-direction: column; min-width: 0; }
.wgf-rg-pager__word {
  color: var(--wgf-muted, #9d9d9d);
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.wgf-rg-pager__name { color: var(--wgf-gold-link, #ffd100); font-weight: 600; }
.wgf-rg-pager__side:hover .wgf-rg-pager__name { text-decoration: underline; }
@media (max-width: 560px) {
  .wgf-rg-pager { grid-template-columns: 1fr; }
  .wgf-rg-pager__side--empty { display: none; }
}

/* entity pages: Featured in guides */
.wgf-rg-section .wgf-rg__list { margin-top: 4px; }

/* the /guides/professions/ directory */
.wgf-rg-hub {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 16px;
  margin: 14px 0 0;
}
.wgf-rg-hub__group {
  padding: 14px 16px 12px;
  background: var(--wgf-panel, #14161c);
  border: 1px solid var(--wgf-border, #6e5a2a);
}
.wgf-rg-hub__heading {
  margin: 0 0 4px;
  font-family: var(--font-display, "Morpheus", "Friz Quadrata", Georgia, serif);
  font-size: 1.2rem;
  font-weight: 600;
}
.wgf-rg-hub__heading a {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--wgf-gold, #ffd100);
  text-decoration: none;
}
.wgf-rg-hub__heading a:hover span { text-decoration: underline; }
.wgf-rg-hub__heading .wgf-rg__icon { width: 36px; height: 36px; }
.wgf-rg-hub__partners {
  margin: 0 0 8px;
  color: var(--wgf-muted, #9d9d9d);
  font-size: .85rem;
}
.wgf-rg-hub__partners a { color: var(--wgf-gold-link, #ffd100); }
.wgf-rg-hub__guides { list-style: none; margin: 0; padding: 0; }
.wgf-rg-hub__guides li { border-top: 1px solid var(--wgf-border-neutral, rgba(110, 90, 42, .45)); }
.wgf-rg-hub__guides a {
  display: flex;
  flex-direction: column;
  padding: 7px 2px;
  color: inherit;
  text-decoration: none;
}
.wgf-rg-hub__guides a:hover .wgf-rg-hub__name { text-decoration: underline; }
.wgf-rg-hub__label {
  color: var(--wgf-muted, #9d9d9d);
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.wgf-rg-hub__name { color: var(--wgf-gold-link, #ffd100); font-weight: 600; line-height: 1.3; }
