.archive-index-link {
  display: inline-flex;
  font-size: .9rem;
}

.archive-original,
.archive-discussion {
  min-width: 0;
  padding: clamp(.95rem, 2.75vw, 2rem);
  border: 1px solid var(--line);
  border-radius: .75rem;
  overflow-wrap: anywhere;
  scroll-margin-block-start: 1rem;
}

.archive-original {
  margin: .85rem 0 1.5rem;
  background: var(--surface);
}

.archive-original-heading { margin-block-end: 1rem; }

.archive-reading-label {
  display: inline-block;
  margin: 0 0 .6rem;
  padding: .12rem .5rem;
  border-radius: .35rem;
  background: var(--mark);
  color: var(--accent);
  font-size: .8rem;
  font-weight: 700;
}

.archive-original .entry-tools { font-size: .9rem; }
.archive-citation-status:empty { margin: 0; }

.archive-discussion {
  --discussion-line: light-dark(#c6b7a2, #746556);
  margin-block-start: 1.75rem;
  border-block-start: .22rem solid var(--accent);
  background: light-dark(#f5efe4, #282520);
}

.discussion-section-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: .35rem 1rem;
  margin-block-end: .85rem;
  padding-block-end: .8rem;
  border-block-end: 1px solid var(--line);
}

.discussion-section-heading h2 { margin: 0; }
.discussion-section-heading a { font-size: .87rem; }

.discussion-section-count {
  margin-inline-start: .25rem;
  color: var(--muted);
  font-size: .85rem;
  font-weight: 500;
}

.discussion-ranking, .discussion-group-tools {
  border: 1px solid var(--line);
  border-radius: .35rem;
  padding: .4rem .65rem;
  margin-block: .5rem;
}
.discussion-ranking summary { cursor: pointer; }
.discussion-actions, .discussion-counts {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: .25rem .85rem;
}
.discussion-counts { font-size: .86rem; margin-block: .45rem; }
.discussion-group-tools p { margin-block: 0 .15rem; }
.discussion-group-tools [aria-current] { font-weight: 650; }
.discussion-group, .discussion-ranking { scroll-margin-top: .75rem; }
.discussion-pagination { padding-block: .45rem; }

.author-comments { margin-block: .5rem 1rem; }

.comments, .discussion-group > ol { list-style: none; margin: 0; padding: 0; }
.comments > li + li { margin-block-start: .95rem; }
.discussion-replies > ol > li + li { margin-block-start: .65rem; }

.comment {
  padding: .65rem .8rem;
  border: 1px solid var(--discussion-line);
  border-radius: .5rem;
  background: var(--surface);
  scroll-margin-block-start: 1rem;
}

.comments:not(.discussion-overflow) > li > .comment { border-inline-start: .22rem solid var(--accent); }
.comment-meta { margin-block: 0 .35rem; }
.comment-meta strong { color: var(--ink); }

.comment-depth {
  display: inline-block;
  margin-inline-end: .35rem;
  padding: 0 .35rem;
  border-radius: .25rem;
  background: var(--mark);
  color: var(--accent);
  font-size: .78rem;
  font-weight: 650;
  white-space: nowrap;
}

.discussion-replies {
  margin-inline-start: clamp(.25rem, 1vw, .55rem);
  padding-inline-start: clamp(.4rem, 1.5vw, .8rem);
  border-inline-start: 2px solid var(--discussion-line);
}

/* 深层仍标注实际层级，限制缩进以保留正文宽度。 */
.discussion-replies .discussion-replies .discussion-replies .discussion-replies .discussion-replies {
  margin-inline-start: 0;
  padding-inline-start: 0;
  border-inline-start: 0;
}

#comments:not(.has-comment-highlight) .comment:target,
.comment.is-highlighted { background: var(--mark); box-shadow: inset 2px 0 var(--accent); }

@media (forced-colors: active) {
  #comments:not(.has-comment-highlight) .comment:target,
  .comment.is-highlighted { outline: 2px solid Highlight; outline-offset: -2px; }
}

.citation-button {
  background: transparent;
  border: 0;
  color: var(--accent);
  cursor: pointer;
  font: inherit;
  padding: 0;
  text-decoration: underline;
  text-underline-offset: .15em;
}
