:root {
  --bg-top: #dce7f2;
  --bg-bottom: #f7fafc;
  --panel: rgba(255, 255, 255, 0.82);
  --panel-strong: rgba(250, 252, 255, 0.94);
  --line: rgba(17, 41, 71, 0.10);
  --text: #162235;
  --muted: #60748a;
  --accent: #1d67c2;
  --accent-soft: #eaf2fb;
  --hero-start: #10273f;
  --hero-end: #2a5f95;
  --radius-xl: 30px;
  --radius-lg: 22px;
  --radius-md: 16px;
  --shadow-lg: 0 22px 60px rgba(22, 40, 69, 0.10);
  --shadow-md: 0 14px 36px rgba(22, 40, 69, 0.08);
}
* {
  box-sizing: border-box;
}
html, body {
  margin: 0;
  min-height: 100%;
}
body {
  color: var(--text);
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.68), transparent 28%),
    radial-gradient(circle at top right, rgba(29, 103, 194, 0.10), transparent 24%),
    linear-gradient(180deg, var(--bg-top) 0%, #eaf1f7 35%, var(--bg-bottom) 100%);
  font-family: "PingFang SC", "Hiragino Sans GB", "Helvetica Neue", "Segoe UI", sans-serif;
  overflow-x: hidden;
}
a {
  color: var(--accent);
  text-decoration: none;
}
img,
svg,
video,
iframe {
  max-width: 100%;
  height: auto;
}
.site-shell {
  position: relative;
  width: min(1240px, calc(100% - 32px));
  margin: 0 auto;
  padding: 22px 0 48px;
}
.site-header {
  position: sticky;
  top: 12px;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 20px;
  padding: 16px 18px;
  border: 1px solid rgba(255, 255, 255, 0.42);
  border-radius: 999px;
  background: rgba(245, 248, 252, 0.72);
  backdrop-filter: blur(18px);
  box-shadow: var(--shadow-md);
}
.nav-brand-wrap {
  min-width: 0;
}
.nav-brand {
  display: inline-block;
  color: #10273f;
  font-family: "Songti SC", "STSong", Georgia, serif;
  font-size: 24px;
  letter-spacing: -0.03em;
  font-weight: 700;
}
.nav-caption {
  color: var(--muted);
  font-size: 12px;
}
.nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  min-width: 0;
}
.nav-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 14px;
}
.nav-utility-cluster {
  display: flex;
  align-items: center;
  min-width: 0;
}
.nav-utility-cluster:empty {
  display: none;
}
.nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
  border-radius: 999px;
  color: #2f4b69;
  font-size: 13px;
  font-weight: 600;
}
.nav-link.nav-link-external {
  background: rgba(29, 103, 194, 0.10);
  color: #1b579d;
}
.nav-link.nav-link-external::after,
.action-link.action-link-external::after {
  content: "\2197";
  display: inline-block;
  margin-left: 0.45em;
  font-size: 0.82em;
  line-height: 1;
}
.nav-link.nav-link-repo {
  position: relative;
  padding: 8px 0;
  border-radius: 0;
  background: transparent;
  color: #4a657f;
  white-space: nowrap;
}
.nav-link.nav-link-repo.nav-link-external {
  background: transparent;
}
.nav-link.nav-link-repo:hover {
  color: #1b579d;
}
.nav-actions[data-has-language-switcher='true'] .nav-link.nav-link-repo {
  padding-left: 16px;
}
.nav-actions[data-has-language-switcher='true'] .nav-link.nav-link-repo::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1px;
  height: 22px;
  transform: translateY(-50%);
  background: rgba(17, 41, 71, 0.12);
}
.nav-link.is-active {
  background: rgba(29, 103, 194, 0.12);
  color: #164e94;
}
.site-main {
  display: grid;
  gap: 18px;
}
.page-hero,
.home-hero-card,
.detail-hero {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-lg);
}
.page-hero {
  padding: 28px 30px 26px;
  border: 1px solid rgba(255, 255, 255, 0.20);
  background:
    radial-gradient(circle at top right, rgba(255, 255, 255, 0.18), transparent 34%),
    linear-gradient(135deg, var(--hero-start) 0%, var(--hero-end) 100%);
  color: #f5fbff;
}
.hero-kicker {
  margin-bottom: 8px;
  color: rgba(235, 242, 252, 0.82);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.page-title,
.home-title,
.detail-title {
  margin: 0;
  font-family: "Songti SC", "STSong", Georgia, serif;
  font-size: clamp(34px, 5vw, 54px);
  line-height: 0.98;
  letter-spacing: -0.04em;
}
.home-hero-card,
.detail-hero,
.home-section,
.detail-content,
.repo-cta-card,
.pager-row,
.archive-block {
  border: 1px solid rgba(255, 255, 255, 0.34);
  background: var(--panel);
  backdrop-filter: blur(16px);
}
.home-hero-card {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(260px, 0.9fr);
  gap: 20px;
  padding: 24px;
}
.home-dek,
.detail-dek {
  max-width: 70ch;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.6;
}
.hero-actions,
.card-actions,
.detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.home-hero-copy,
.hero-stats,
.detail-hero-main,
.detail-hero-side,
.trend-card,
.topic-card,
.pager-card {
  min-width: 0;
}
.hero-actions {
  margin-top: 18px;
}
.hero-stats,
.detail-hero-side {
  display: grid;
  gap: 10px;
}
.detail-hero-main {
  display: grid;
  align-content: start;
}
.detail-stream-row {
  margin-bottom: 10px;
}
.meta-panel {
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.46);
  border-radius: var(--radius-md);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.62), rgba(245, 249, 253, 0.86));
}
.meta-panel-label {
  margin-bottom: 6px;
  color: #7187a0;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.meta-panel-value {
  color: #1f3248;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 600;
}
.home-section,
.detail-content,
.repo-cta-card,
.archive-block {
  padding: 20px;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}
.repo-cta-card {
  display: grid;
  gap: 12px;
}
.repo-cta-card .section-title {
  margin-bottom: 0;
}
.repo-cta-copy {
  margin: 0;
  max-width: 72ch;
  color: #4f647a;
  line-height: 1.65;
}
.split-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  gap: 18px;
}
.section-heading-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.section-heading-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}
.summary-heading {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.section-kicker {
  color: #6a8098;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.section-title {
  margin: 0 0 12px;
  color: #183453;
  font-family: "Songti SC", "STSong", Georgia, serif;
  font-size: 28px;
  letter-spacing: -0.03em;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.page-section-title {
  margin-bottom: 18px;
}
.summary-heading .section-title {
  margin-bottom: 0;
}
.paired-collection-layout {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
}
.collection-summary-section {
  display: grid;
  gap: 16px;
}
.summary-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.collection-section {
  display: grid;
  gap: 14px;
}
.collection-section .trend-grid {
  grid-template-columns: 1fr;
}
.trend-grid,
.topic-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.trend-card,
.topic-card,
.pager-card {
  display: grid;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background:
    linear-gradient(180deg, var(--panel-strong) 0%, rgba(245, 249, 253, 0.92) 100%);
}
.card-meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.card-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.meta-pill,
.topic-pill {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(29, 103, 194, 0.14);
  background: rgba(29, 103, 194, 0.08);
  color: #225693;
  font-size: 12px;
  font-weight: 600;
}
.nav-link,
.meta-pill,
.topic-pill,
.action-link,
.detail-summary {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}
.stream-pill {
  border-color: rgba(21, 98, 76, 0.16);
  background: rgba(21, 98, 76, 0.08);
  color: #1e6a55;
}
.meta-pill.subdued {
  border-color: rgba(17, 41, 71, 0.08);
  background: rgba(255, 255, 255, 0.65);
  color: var(--muted);
}
.topic-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}
.topic-pill-link:hover,
.stream-pill-link:hover,
.action-link:hover,
.trend-card a:hover,
.topic-card a:hover {
  opacity: 0.85;
}
.nav-brand:focus-visible,
.nav-link:focus-visible,
.action-link:focus-visible,
.topic-pill-link:focus-visible,
.stream-pill-link:focus-visible,
.pager-card:focus-visible,
.breadcrumbs a:focus-visible,
.language-switcher-link:focus-visible {
  opacity: 1;
  outline: 2px solid rgba(29, 103, 194, 0.36);
  outline-offset: 3px;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.92);
}
.meta-date {
  color: #6e849d;
  font-size: 13px;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.card-title,
.topic-card-title {
  margin: 14px 0 10px;
  color: #15253a;
  font-family: "Songti SC", "STSong", Georgia, serif;
  font-size: 26px;
  line-height: 1.08;
  letter-spacing: -0.03em;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.card-title a,
.topic-card-title a {
  color: inherit;
}
.card-excerpt {
  margin: 0 0 14px;
  color: #4f647a;
  line-height: 1.62;
}
.trend-insight-row,
.detail-insight-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.trend-insight-row {
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid rgba(29, 103, 194, 0.12);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(239, 245, 252, 0.92), rgba(247, 250, 254, 0.96));
}
.trend-insight-badge,
.detail-insight-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: #1d67c2;
  color: #f7fbff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.trend-insight-copy,
.detail-insight-copy {
  color: #33506f;
  font-size: 13px;
  font-weight: 600;
}
.trend-card .card-actions,
.detail-actions {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}
.action-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  background: #1d67c2;
  color: white;
  font-size: 13px;
  font-weight: 700;
}
.action-link.secondary {
  background: rgba(29, 103, 194, 0.10);
  color: #1b579d;
}
.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-bottom: 8px;
  color: #7489a1;
  font-size: 13px;
}
.detail-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(260px, 0.9fr);
  gap: 18px;
  padding: 22px;
}
.detail-summary {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  margin-bottom: 6px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(29, 103, 194, 0.09);
  color: #1c5da8;
  font-size: 13px;
  font-weight: 700;
}
.detail-insight-row {
  margin-bottom: 8px;
}
.detail-content {
  padding: 0;
}
.detail-content .document-flow {
  padding: 16px;
}
.detail-content .summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.detail-content .summary-grid.summary-grid-single {
  grid-template-columns: minmax(0, 1fr);
}
.detail-content .idea-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.detail-content .surface-card {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background:
    linear-gradient(180deg, var(--panel-strong), rgba(244, 248, 252, 0.92));
}
.detail-content .summary-grid .surface-card {
  margin-top: 0;
}
.detail-content .summary-card-primary {
  background:
    linear-gradient(180deg, rgba(235, 243, 253, 0.95), rgba(248, 251, 254, 0.96));
}
.detail-content .summary-card-secondary {
  background:
    linear-gradient(180deg, rgba(247, 250, 254, 0.95), rgba(251, 252, 254, 0.96));
}
.detail-content .idea-opportunities-section {
  background:
    radial-gradient(circle at top right, rgba(29, 103, 194, 0.08), transparent 30%),
    linear-gradient(180deg, rgba(243, 248, 254, 0.96), rgba(250, 252, 255, 0.98));
}
.detail-content .idea-section-intro {
  margin-bottom: 14px;
}
.detail-content .idea-opportunity-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.detail-content .idea-opportunity-card {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid rgba(24, 52, 83, 0.10);
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(252, 254, 255, 0.98), rgba(247, 250, 254, 0.96));
}
.detail-content .idea-opportunity-head,
.detail-content .idea-opportunity-body {
  display: grid;
  gap: 12px;
}
.detail-content .idea-opportunity-title {
  margin: 0;
  color: #183453;
  font-family: "Songti SC", "STSong", Georgia, serif;
  font-size: 24px;
  line-height: 1.08;
}
.detail-content .idea-opportunity-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.detail-content .idea-meta-pill {
  background: rgba(255, 255, 255, 0.88);
  border-color: rgba(24, 52, 83, 0.10);
  color: #34506f;
}
.detail-content .idea-meta-pill-label {
  color: #70849a;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.detail-content .idea-meta-pill-separator {
  margin: 0 6px;
  color: #9aabc0;
}
.detail-content .idea-opportunity-block {
  display: grid;
  gap: 6px;
}
.detail-content .idea-opportunity-block-role {
  padding: 12px 14px;
  border: 1px solid rgba(24, 52, 83, 0.10);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.82);
}
.detail-content .idea-opportunity-label {
  color: #6a8098;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.detail-content .idea-opportunity-copy {
  color: #213246;
}
.detail-content .idea-opportunity-role-value {
  color: #34506f;
  font-size: 14px;
  line-height: 1.5;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
  display: block;
}
.detail-content .idea-opportunity-copy p,
.detail-content .idea-opportunity-copy ul,
.detail-content .idea-opportunity-copy ol {
  margin: 0;
}
.detail-content .idea-opportunity-block-evidence {
  padding-top: 12px;
  border-top: 1px dashed rgba(24, 52, 83, 0.12);
}
.detail-content .idea-evidence-list ul,
.detail-content .idea-evidence-list ol {
  padding-inline-start: 1.08em;
}
.detail-content .highlight-card {
  background:
    linear-gradient(180deg, rgba(247, 250, 254, 0.95), rgba(241, 247, 253, 0.96));
}
.detail-content .evolution-section {
  background:
    radial-gradient(circle at top right, rgba(29, 103, 194, 0.10), transparent 32%),
    linear-gradient(180deg, rgba(236, 244, 253, 0.95), rgba(248, 251, 255, 0.98));
}
.detail-content .section-label {
  margin: 0 0 10px;
  color: #6a8098;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.detail-content .prose,
.detail-content .cluster-body {
  color: #213246;
  font-size: 15px;
  line-height: 1.66;
}
.detail-content .prose p,
.detail-content .cluster-body p {
  margin: 0 0 10px;
}
.detail-content .prose h3,
.detail-content .cluster-card h3 {
  margin: 14px 0 8px;
  color: #16395c;
  font-family: "Songti SC", "STSong", Georgia, serif;
  font-size: 24px;
  line-height: 1.08;
}
.detail-content .prose h4,
.detail-content .cluster-body h4 {
  margin: 12px 0 7px;
  color: #6e849d;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.detail-content .prose ul,
.detail-content .prose ol,
.detail-content .cluster-body ul,
.detail-content .cluster-body ol {
  margin: 8px 0 10px;
  padding-inline-start: 1.08em;
}
.detail-content .prose li,
.detail-content .cluster-body li {
  margin: 0 0 7px;
  padding-left: 0.12em;
}
.detail-content .prose blockquote,
.detail-content .cluster-body blockquote {
  margin: 12px 0;
  padding: 12px 14px;
  border-left: 3px solid rgba(29, 103, 194, 0.42);
  border-radius: 14px;
  background: var(--accent-soft);
  color: #24476d;
}
.detail-content .prose table,
.detail-content .cluster-body table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  margin: 12px 0;
  border-collapse: collapse;
}
.detail-content .prose pre,
.detail-content .cluster-body pre {
  max-width: 100%;
  overflow-x: auto;
}
.detail-content .prose th,
.detail-content .prose td,
.detail-content .cluster-body th,
.detail-content .cluster-body td {
  padding: 8px;
  border: 1px solid #d8e1eb;
  text-align: left;
  vertical-align: top;
}
.detail-content .prose th,
.detail-content .cluster-body th {
  background: #eff5fa;
}
.detail-content .topic-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.detail-content .evolution-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.detail-content .evolution-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.detail-content .evolution-stat,
.detail-content .history-pill,
.detail-content .evolution-badge {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(29, 103, 194, 0.14);
  background: rgba(29, 103, 194, 0.08);
  color: #1e5b9d;
  font-size: 12px;
  font-weight: 700;
}
.detail-content .evolution-stat.secondary,
.detail-content .history-pill {
  background: rgba(255, 255, 255, 0.88);
  color: #4d647d;
}
.detail-content .evolution-summary {
  margin-bottom: 14px;
}
.detail-content .evolution-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.detail-content .evolution-card {
  position: relative;
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(24, 52, 83, 0.10);
  border-radius: 18px;
  background: rgba(252, 254, 255, 0.96);
  overflow: hidden;
}
.detail-content .evolution-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  border-radius: 18px 0 0 18px;
  background: #7d94ae;
}
.detail-content .evolution-change-continuing::before {
  background: #2c6bc5;
}
.detail-content .evolution-change-emerging::before {
  background: #1d8b6f;
}
.detail-content .evolution-change-fading::before {
  background: #b66a35;
}
.detail-content .evolution-change-shifting::before {
  background: #7459c6;
}
.detail-content .evolution-change-polarizing::before {
  background: #c24d6b;
}
.detail-content .evolution-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.detail-content .evolution-card-title {
  margin: 0;
  color: #183453;
  font-family: "Songti SC", "STSong", Georgia, serif;
  font-size: 24px;
  line-height: 1.08;
}
.detail-content .evolution-badge {
  flex: 0 0 auto;
}
.detail-content .evolution-badge-continuing {
  background: rgba(29, 103, 194, 0.10);
  color: #1e5aa1;
}
.detail-content .evolution-badge-emerging {
  background: rgba(29, 139, 111, 0.10);
  color: #176d58;
  border-color: rgba(29, 139, 111, 0.16);
}
.detail-content .evolution-badge-fading {
  background: rgba(182, 106, 53, 0.11);
  color: #9c5a2b;
  border-color: rgba(182, 106, 53, 0.16);
}
.detail-content .evolution-badge-shifting {
  background: rgba(116, 89, 198, 0.10);
  color: #654bb0;
  border-color: rgba(116, 89, 198, 0.16);
}
.detail-content .evolution-badge-polarizing {
  background: rgba(194, 77, 107, 0.10);
  color: #a2415a;
  border-color: rgba(194, 77, 107, 0.16);
}
.detail-content .evolution-history-block {
  display: grid;
  gap: 8px;
}
.detail-content .evolution-history-label {
  color: #7589a0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.detail-content .evolution-history-track {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.detail-content .evolution-copy {
  margin-top: -2px;
}
.detail-content .evolution-expand {
  margin-top: -2px;
  border-top: 1px dashed rgba(24, 52, 83, 0.12);
  padding-top: 10px;
}
.detail-content .evolution-expand-toggle {
  display: block;
  cursor: pointer;
  list-style: none;
}
.detail-content .evolution-expand-toggle::-webkit-details-marker {
  display: none;
}
.detail-content .evolution-expand-summary-copy {
  display: block;
  color: #30485f;
  font-size: 14px;
  line-height: 1.66;
}
.detail-content .evolution-expand-label {
  display: inline-flex;
  align-items: center;
  margin-top: 10px;
  color: #1f5ea9;
  font-size: 12px;
  font-weight: 700;
}
.detail-content .evolution-expand-label::before {
  display: inline-block;
  margin-right: 6px;
}
.detail-content .evolution-expand-label-more::before {
  content: "+";
}
.detail-content .evolution-expand-label-less {
  display: none;
}
.detail-content .evolution-expand-label-less::before {
  content: "−";
}
.detail-content .evolution-expand[open] .evolution-expand-summary-copy,
.detail-content .evolution-expand[open] .evolution-expand-label-more {
  display: none;
}
.detail-content .evolution-expand[open] .evolution-expand-label-less {
  display: inline-flex;
}
.detail-content .evolution-expand-body {
  margin-top: 10px;
}
.detail-content .topic-pill {
  justify-content: center;
  min-height: 40px;
  background: rgba(248, 251, 255, 0.98);
  border: 1px solid #dbe4ef;
  color: #425a74;
}
.detail-content .cluster-columns {
  column-count: 2;
  column-gap: 14px;
}
.detail-content .cluster-card {
  display: inline-block;
  width: 100%;
  margin: 0 0 14px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(251, 253, 255, 0.96);
  break-inside: avoid;
}
.pager-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding: 16px;
}
.pager-card span {
  display: block;
  margin-bottom: 8px;
  color: #6f859d;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.pager-card strong {
  color: #16304f;
  font-size: 18px;
  line-height: 1.32;
}
.timeline-list,
.archive-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.timeline-item,
.archive-item {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(251, 253, 255, 0.86);
}
.timeline-item a,
.archive-item a {
  color: #162f4d;
  font-weight: 600;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.timeline-item span,
.archive-item span,
.topic-card-meta {
  color: #6b8098;
  font-size: 13px;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.empty-card {
  padding: 24px;
  border: 1px dashed rgba(17, 41, 71, 0.16);
  border-radius: 18px;
  color: var(--muted);
}
@media (max-width: 1080px) {
  .home-hero-card,
  .detail-hero,
  .split-layout {
    grid-template-columns: 1fr;
  }
  .trend-grid,
  .topic-card-grid,
  .summary-stats,
  .detail-content .summary-grid,
  .detail-content .idea-opportunity-grid,
  .detail-content .evolution-grid,
  .pager-row {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1040px) {
  .site-header {
    flex-wrap: wrap;
    align-items: center;
    column-gap: 14px;
    row-gap: 12px;
    padding: 14px 16px 16px;
    border-radius: 30px;
  }
  .nav-brand-wrap {
    flex: 1 1 auto;
  }
  .nav-brand {
    font-size: 22px;
    white-space: nowrap;
  }
  .nav-links {
    order: 3;
    flex: 1 1 100%;
    gap: 8px;
    padding-top: 10px;
    border-top: 1px solid rgba(17, 41, 71, 0.08);
  }
  .nav-links .nav-link {
    padding: 8px 12px;
    font-size: 12px;
  }
  .nav-actions {
    flex: 0 0 auto;
    margin-left: auto;
    gap: 12px;
  }
  .nav-actions[data-has-language-switcher='true'] .nav-link.nav-link-repo {
    padding-left: 12px;
  }
  .nav-actions[data-has-language-switcher='true'] .nav-link.nav-link-repo::before {
    height: 18px;
  }
}
@media (max-width: 820px) {
  .site-header {
    align-items: stretch;
    row-gap: 10px;
  }
  .nav-brand-wrap {
    width: 100%;
    flex: 1 1 100%;
  }
  .nav-actions {
    width: 100%;
    margin-left: 0;
    justify-content: space-between;
    gap: 10px;
  }
  .nav-utility-cluster {
    flex: 1 1 auto;
  }
  .nav-links {
    padding-top: 8px;
  }
}
@media (max-width: 760px) {
  .site-shell {
    width: calc(100% - 16px);
    max-width: 100%;
    padding-top: 12px;
  }
  .site-header {
    position: static;
    flex-direction: column;
    align-items: stretch;
    border-radius: 24px;
    padding: 16px;
  }
  .nav-links {
    width: 100%;
  }
  .nav-actions {
    width: 100%;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
  }
  .nav-links .nav-link {
    flex: 1 1 calc(50% - 5px);
    justify-content: center;
    text-align: center;
  }
  .nav-utility-cluster {
    flex: 1 1 auto;
  }
  .nav-actions .nav-link.nav-link-repo {
    flex: 0 0 auto;
  }
  .nav-actions[data-has-language-switcher='true'] .nav-link.nav-link-repo {
    padding-left: 0;
  }
  .nav-actions[data-has-language-switcher='true'] .nav-link.nav-link-repo::before {
    display: none;
  }
  .page-hero,
  .home-hero-card,
  .home-section,
  .detail-hero,
  .detail-content,
  .repo-cta-card,
  .archive-block {
    padding-left: 16px;
    padding-right: 16px;
  }
  .detail-content .document-flow {
    padding: 12px 0 0;
  }
  .section-heading-row {
    align-items: flex-start;
  }
  .section-heading-actions {
    width: 100%;
    justify-content: flex-start;
  }
  .hero-actions .action-link,
  .card-actions .action-link,
  .detail-actions .action-link {
    flex: 1 1 100%;
    justify-content: center;
  }
  .detail-summary {
    width: 100%;
  }
  .trend-insight-row,
  .detail-insight-row,
  .detail-content .evolution-card-head {
    align-items: flex-start;
  }
  .detail-content .topic-grid,
  .detail-content .cluster-columns {
    grid-template-columns: 1fr;
    column-count: 1;
  }
  .timeline-item,
  .archive-item {
    flex-direction: column;
  }
}
.language-switcher {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
  padding: 6px 8px 6px 12px;
  border: 1px solid rgba(16, 39, 63, 0.08);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.40);
}
.language-switcher-label {
  color: #6f859d;
  flex-shrink: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
}
.language-switcher-links {
  display: inline-flex;
  gap: 6px;
  flex-wrap: nowrap;
}
.language-switcher-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(16, 39, 63, 0.12);
  background: rgba(247, 250, 253, 0.92);
  color: #16304f;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}
@media (max-width: 1040px) {
  .language-switcher {
    gap: 8px;
    padding: 5px 6px 5px 8px;
  }
  .language-switcher-label {
    display: none;
  }
  .language-switcher-link {
    min-height: 32px;
    padding: 0 10px;
  }
}
.language-switcher-link.is-active {
  background: #16304f;
  border-color: #16304f;
  color: #f8fbff;
}
@media (max-width: 760px) {
  .language-switcher {
    gap: 8px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }
  .language-switcher-label {
    display: none;
  }
}
