/* ===== 隐私政策 · 窄版条款阅读 ===== */
.page-privacy {
  --pv-measure: 880px;
}

.page-privacy section[id] {
  scroll-margin-top: 104px;
}

/* —— 首屏摘要 —— */
.page-privacy .pv-intro {
  padding-top: clamp(30px, 6vw, 62px);
}

.page-privacy .pv-kicker {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 18px;
}

.page-privacy .pv-kicker::before {
  content: "";
  flex: none;
  width: 34px;
  height: 5px;
  background: var(--yj-teal);
}

.page-privacy .pv-intro__grid {
  display: grid;
  gap: clamp(26px, 4vw, 52px);
  margin-top: 18px;
}

.page-privacy .pv-intro__text .pv-lede {
  max-width: 54ch;
}

.page-privacy .pv-update {
  margin: 24px 0 0;
  padding-top: 14px;
  border-top: 1px solid var(--yj-line-soft);
  font-size: 13px;
  line-height: 1.9;
  letter-spacing: 0.03em;
  color: var(--yj-text-dim);
}

.page-privacy .pv-intro__fig {
  margin: 0;
}

.page-privacy .pv-intro__fig img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--yj-line-soft);
}

@media (min-width: 900px) {
  .page-privacy .pv-intro__grid {
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.8fr);
    align-items: end;
  }
}

/* —— 条款目录 —— */
.page-privacy .pv-toc {
  margin-top: clamp(32px, 5vw, 56px);
  padding-top: clamp(18px, 3vw, 28px);
  border-top: 1px solid var(--yj-line-soft);
}

.page-privacy .pv-toc .yj-index__title {
  margin: 0 0 12px;
  font-family: var(--yj-font-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--yj-text-dim);
}

.page-privacy .pv-toc__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.page-privacy .pv-toc .yj-index__link {
  display: flex;
  align-items: baseline;
  gap: 14px;
  padding: 13px 2px;
  border-bottom: 1px dashed var(--yj-line-soft);
  text-decoration: none;
  font-size: 15px;
  line-height: 1.6;
  color: var(--yj-text);
  transition: color 0.25s var(--yj-ease), padding-left 0.25s var(--yj-ease);
}

.page-privacy .pv-toc .yj-index__link:hover,
.page-privacy .pv-toc .yj-index__link.is-active {
  color: var(--yj-amber);
  padding-left: 8px;
}

.page-privacy .pv-toc__no {
  flex: none;
  font-family: var(--yj-font-mono);
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.12em;
  color: var(--yj-amber);
}

@media (min-width: 760px) {
  .page-privacy .pv-toc__list {
    columns: 2;
    column-gap: clamp(28px, 4vw, 60px);
  }

  .page-privacy .pv-toc__item {
    break-inside: avoid;
  }
}

/* —— 条款主体 —— */
.page-privacy .pv-clause {
  max-width: var(--pv-measure);
  margin-inline: auto;
  display: grid;
  gap: 12px;
}

.page-privacy .pv-clause__no {
  font-family: var(--yj-font-mono);
  font-weight: 700;
  font-size: clamp(17px, 1.5vw, 20px);
  letter-spacing: 0.16em;
  line-height: 1;
  padding-top: 8px;
  color: var(--yj-amber);
  transition: color 0.25s var(--yj-ease), transform 0.25s var(--yj-ease);
}

.page-privacy .pv-clause:hover .pv-clause__no {
  color: var(--yj-orange);
  transform: translateX(4px);
}

.page-privacy .yj-band--paper .pv-clause__no {
  color: var(--yj-ink-700);
}

.page-privacy .yj-band--paper .pv-clause:hover .pv-clause__no {
  color: var(--yj-orange);
}

@media (min-width: 768px) {
  .page-privacy .pv-clause {
    grid-template-columns: 86px minmax(0, 1fr);
    gap: clamp(24px, 4vw, 48px);
  }
}

/* —— 小节标题 —— */
.page-privacy .pv-head {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0 0 18px;
}

.page-privacy .pv-head__rule {
  display: block;
  width: 36px;
  height: 5px;
  background: var(--yj-teal);
}

/* —— 段落与要点 —— */
.page-privacy .pv-text + .pv-text {
  margin-top: 14px;
}

.page-privacy .pv-list {
  list-style: none;
  margin: 18px 0 0;
  padding: 0;
  display: grid;
  gap: 13px;
}

.page-privacy .pv-list > li {
  position: relative;
  padding-left: 24px;
  font-size: 16px;
  line-height: 1.9;
}

.page-privacy .pv-list > li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.82em;
  width: 12px;
  height: 3px;
  background: var(--yj-teal);
}

.page-privacy .pv-list strong {
  font-weight: 600;
}

@media (min-width: 768px) {
  .page-privacy .pv-list > li {
    font-size: 17px;
  }
}

/* —— 旁注 —— */
.page-privacy .pv-note {
  margin: 22px 0 0;
  padding: 14px 18px;
  border-left: 3px solid var(--yj-amber);
  background: rgba(217, 154, 43, 0.1);
  font-size: 15px;
  line-height: 1.85;
}

/* —— 联系条目 —— */
.page-privacy .pv-contact {
  list-style: none;
  margin: 22px 0 0;
  padding: 0;
  border-top: 1px solid var(--yj-line-soft);
}

.page-privacy .pv-contact > li {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  gap: 16px;
  align-items: baseline;
  padding: 13px 0;
  border-bottom: 1px dashed var(--yj-line-soft);
}

.page-privacy .pv-contact__k {
  font-size: 13px;
  letter-spacing: 0.08em;
  color: var(--yj-text-dim);
}

.page-privacy .yj-band--paper .pv-contact__k {
  color: var(--yj-ink-700);
}

.page-privacy .pv-contact__v {
  font-size: 16px;
  line-height: 1.7;
  word-break: break-word;
}

.page-privacy .pv-contact__v--mono {
  font-family: var(--yj-font-mono);
  font-weight: 700;
  letter-spacing: 0.02em;
}

@media (max-width: 560px) {
  .page-privacy .pv-contact > li {
    grid-template-columns: minmax(0, 1fr);
    gap: 4px;
  }
}

/* —— 正文内链 —— */
.page-privacy .pv-clause__body a {
  color: var(--yj-amber);
  text-decoration: none;
  border-bottom: 1px solid rgba(217, 154, 43, 0.4);
  transition: border-color 0.25s var(--yj-ease), color 0.25s var(--yj-ease);
}

.page-privacy .pv-clause__body a:hover {
  border-bottom-color: var(--yj-orange);
  color: var(--yj-orange);
}

.page-privacy .yj-band--paper .pv-clause__body a {
  color: var(--yj-ink-700);
  border-bottom-color: rgba(27, 53, 80, 0.35);
}

.page-privacy .yj-band--paper .pv-clause__body a:hover {
  color: var(--yj-orange);
  border-bottom-color: var(--yj-orange);
}
