/* Compatibility for gg-fixed-template. Keep all overrides within its markup. */
body.ggp-fixed-template .native-page .native-editor,
.native-page .native-editor:has(.ggp-page) {
  max-width: none;
  width: 100%;
  margin-inline: 0;
}
body.ggp-fixed-template .native-page .native-wide,
.native-page .native-wide:has(.ggp-page) {
  max-width: none;
  width: 100%;
  margin-inline: 0;
}
.entry-content .ggp-page {
  font-size: 16px;
  line-height: 1.85;
  overflow-wrap: break-word;
}
.entry-content .ggp-page .ggp-section {
  padding-block: 0;
}
.entry-content .ggp-page h2,
.entry-content .ggp-page h3 {
  border: 0;
  padding: 0;
  scroll-margin-top: 110px;
}
/* The plugin emits h2 here but its stylesheet only styles h1. */
.entry-content .ggp-page .ggp-hero h2 {
  font-size: clamp(30px, 3.3vw, 46px);
  line-height: 1.35;
  letter-spacing: -.035em;
  margin: 16px 0 18px;
  font-weight: 750;
}
.entry-content .ggp-page .ggp-toc-title {
  font-size: 13px;
  letter-spacing: .14em;
  color: var(--ggp-muted);
  margin: 0 0 17px;
  font-weight: 550;
}
.entry-content .ggp-page .ggp-section h2 {
  font-size: 25px;
  line-height: 1.5;
  margin: 0;
  letter-spacing: -.02em;
  font-weight: 650;
}
.entry-content .ggp-page .ggp-card h3 {
  font-size: 19px;
  line-height: 1.18;
  font-weight: 600;
  margin: 6px 0 8px;
}
.entry-content .ggp-page a { color: inherit; }
.entry-content .ggp-page .ggp-toc a { color: #acafb8; }
.entry-content .ggp-page .ggp-toc a span { color: #777b88; }
.entry-content .ggp-page .ggp-toc a:hover,
.entry-content .ggp-page .ggp-toc a[aria-current="location"] { color: #fff; }
.entry-content .ggp-page .ggp-toc a[aria-current="location"] span { color: var(--ggp-red); }
.entry-content .ggp-page .ggp-source a { color: #e0e2e7; }

/* 正文站内链接(internal_links.contextual) */
.ggp-page a.ggp-il,
.entry-content .ggp-page a.ggp-il {
  color: #efc36a !important;
  font-weight: inherit !important;
  text-decoration-line: underline !important;
  text-decoration-color: rgba(239, 195, 106, .5) !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}
.ggp-page a.ggp-il:hover,
.entry-content .ggp-page a.ggp-il:hover {
  color: #fff !important;
  text-decoration-color: #e31b3d !important;
}

/* 相关阅读区块(internal_links.related) */
.ggp-page #ggp-related a,
.ggp-page .ggp-related-list a,
.entry-content .ggp-page #ggp-related a,
.entry-content .ggp-page .ggp-related-list a {
  color: #efc36a !important;
}
.ggp-page #ggp-related a:hover,
.ggp-page .ggp-related-list a:hover,
.entry-content .ggp-page #ggp-related a:hover,
.entry-content .ggp-page .ggp-related-list a:hover {
  color: #fff !important;
  text-decoration-line: underline !important;
}
.entry-content .ggp-page .ggp-intro { color: #bfc0c8; }
.entry-content .ggp-page .ggp-figure img {
  height: 100%;
  border-radius: 0;
}
.entry-content .ggp-page .ggp-table {
  display: table;
  margin: 0;
  font-size: 14px;
}
.entry-content .ggp-page .ggp-table th,
.entry-content .ggp-page .ggp-table td {
  border: 0;
  padding: 14px 20px;
}
.entry-content .ggp-page .ggp-table td {
  border-top: 1px solid var(--ggp-line);
  padding: 18px 20px;
}
.entry-content .ggp-page .ggp-section { scroll-margin-top: 110px; }
.entry-content .ggp-page .ggp-sidebar { top: 110px; }
/* Theme information and tag blocks below the full-width plugin content. */
body.ggp-fixed-template .native-editor > .gg-information,
body.ggp-fixed-template .native-editor > .gg-topic-links,
body.ggp-fixed-template .native-editor > .native-comments {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
}
@media (max-width: 760px) {
  .entry-content .ggp-page .ggp-hero h2 {
    font-size: 30px;
    margin: 13px 0 14px;
  }
  .entry-content .ggp-page .ggp-toc-title {
    font-size: 12px;
    margin-bottom: 12px;
  }
  .entry-content .ggp-page .ggp-section h2 { font-size: 22px; }
  .entry-content .ggp-page .ggp-sidebar { position: static; }
  .entry-content .ggp-page .ggp-table th { padding: 12px 16px; }
  .entry-content .ggp-page .ggp-table td { padding: 15px 16px; }
}
