/* ==========================================================================
   隐私政策页 · privacy.css
   依赖 style.css 中的设计令牌（色彩 / 圆角 / 阴影 / 字体 / 容器 / 按钮）
   只新增本页专属类，不覆盖 index.html / verify.html / developers.html 的既有规则
   编写方式：移动优先，min-width 断点 640 / 768
   ========================================================================== */

/* ---------- 1. 本页局部令牌 ---------- */
body.page-privacy {
  background: var(--paper);
}

/* ---------- 2. 页面骨架 ---------- */
.pp-main {
  padding-top: 104px;                              /* 固定头部 80 + 呼吸，与 verify/devs 同数字 */
  padding-bottom: clamp(56px, 8vw, 96px);
}
@media (min-width: 768px) {
  .pp-main { padding-top: 148px; }
}

/* 政策属长文本，按「一行 40~55 字」排最易读 —— 比溯源页（880）再窄一档。
   写成 .container.pp-shell 而不是 .pp-shell：两者与 .container 同为单类选择器，
   只靠引入顺序取胜太脆，加一层提高权重更稳（verify.css / developers.css 同款处理）。 */
.container.pp-shell { max-width: 820px; }

/* ---------- 3. 页头区 ---------- */
.pp-title {
  font-size: clamp(30px, 7.4vw, 44px);
  line-height: 1.16;
  font-weight: 700;
  letter-spacing: .01em;
  color: var(--ink);
}
.pp-lead {
  margin-top: 16px;
  max-width: 56ch;
  font-size: 15px;
  line-height: 1.9;
  color: var(--ink-3);
}
@media (min-width: 768px) {
  .pp-lead { font-size: 16.5px; }
}

/* 生效/更新日期这类"读之前要先确认的事实"，放在页头而不是文末 */
.pp-meta {
  margin-top: 22px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  font-size: 13px;
  line-height: 1.7;
  color: var(--ink-3);
}
.pp-meta b { color: var(--ink-2); font-weight: 600; }

/* ---------- 4. 小节 ---------- */
/* 用 1px 细线分节而不是大段留白：长文档要让人一眼看出"换主题了"。
   间距比全站 --sec-y（84–168）小得多 —— 那是首页大区块的节奏，这里用会滑好几屏。 */
.pp-sec {
  padding-block: clamp(34px, 4.6vw, 52px);
  border-top: 1px solid var(--line-2);
}
.pp-sec:first-of-type { border-top: 0; }

.pp-sec__title {
  display: flex;
  gap: 12px;
  align-items: baseline;
  font-size: clamp(19px, 3.2vw, 23px);
  letter-spacing: .02em;
  color: var(--ink);
}
/* 条款编号：等宽字体 + 弱色，只做定位用，不抢标题 */
.pp-sec__no {
  flex: none;
  font-family: var(--mono);
  font-size: .74em;
  letter-spacing: .06em;
  color: var(--moss-500);
}

.pp-p {
  margin-top: 14px;
  font-size: 15px;
  line-height: 1.95;
  color: var(--ink-2);
}
.pp-p--note {
  font-size: 14px;
  color: var(--ink-3);
}
.pp-p a,
.pp-item__v a,
.pp-callout a {
  color: var(--forest-600);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.pp-list {
  margin-top: 14px;
  display: grid;
  gap: 10px;
  list-style: none;
}
.pp-list li {
  position: relative;
  padding-left: 20px;
  font-size: 15px;
  line-height: 1.9;
  color: var(--ink-2);
}
.pp-list li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: .74em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--sage-300);
}

/* ---------- 5. 处理清单（场景 → 我们做什么）---------- */
/* 不用表格：三列表格在手机上要么横滚、要么挤成一团。
   改成"卡片 + 结论标签"，窄屏天然堆叠，且每条结论一眼可见。 */
.pp-items {
  margin-top: 18px;
  display: grid;
  gap: 12px;
}
.pp-item {
  padding: 18px 20px;
  background: var(--white);
  border: 1px solid var(--line-2);
  border-radius: var(--r-md);
  box-shadow: var(--sh-xs);
}
.pp-item__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
}
.pp-item__k {
  font-size: 15px;
  font-weight: 600;
  color: var(--ink);
}
.pp-item__tag {
  flex: none;
  padding: 3px 9px;
  border-radius: var(--r-pill);
  /* 12px 是本项目的正文下限（design-audit 会拦 <12px）。初版写 11.5px，
     在 1440/390 两档都被抓出来 —— 标签再小也是给人读的，不是装饰。 */
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .04em;
}
/* 标签两态：绿=我们不碰你的信息（good）/ 灰=需要你知道的技术细节（neutral）。
   绿底 #EDF3EE 上是 #2A6248，对比度 ≈ 6.4:1，小字也读得清。 */
.pp-item__tag--no {
  background: #EDF3EE;
  color: #2A6248;
}
.pp-item__tag--note {
  background: var(--paper-2);
  color: var(--ink-3);
}
.pp-item__v {
  margin-top: 9px;
  font-size: 14.5px;
  line-height: 1.9;
  color: var(--ink-3);
}

/* ---------- 6. 强调框 ---------- */
/* "本站不写 cookie / 不接统计代码"这类反常识事实，光写在正文里没人会注意到 */
.pp-callout {
  margin-top: 20px;
  padding: 18px 20px;
  background: var(--paper-2);
  border-left: 3px solid var(--moss-500);
  border-radius: var(--r-sm);
}
.pp-callout p {
  font-size: 14.5px;
  line-height: 1.9;
  color: var(--ink-2);
}
.pp-callout p + p { margin-top: 10px; }
.pp-callout strong { color: var(--ink); }

/* ---------- 7. 联系方式 ---------- */
/* 1px 细线分格（gap:1px + 底色透出），与 developers.css 的 .dv-meta 同一手法 */
.pp-contact {
  margin-top: 18px;
  display: grid;
  gap: 1px;
  border: 1px solid var(--line-2);
  border-radius: var(--r-md);
  overflow: hidden;
  background: var(--line-2);
}
.pp-contact__row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 14px;
  padding: 14px 18px;
  background: var(--white);
}
.pp-contact__k {
  flex: none;
  width: 72px;
  font-size: 13px;
  color: var(--ink-3);
}
.pp-contact__v {
  font-size: 14.5px;
  color: var(--ink);
}
.pp-contact__v a {
  color: var(--forest-600);
  text-decoration: underline;
  text-underline-offset: 3px;
  /* 触摸目标：行内元素的 rect 高度由字体度量决定，邮箱那行实测只有 20px（<24px 硬下限）。
     display:inline-block + 上下各 2px 把它抬到 24px；不动 line-height，
     因为 line-height 不改变行内元素的 getBoundingClientRect 高度。 */
  display: inline-block;
  padding-block: 2px;
}

/* ---------- 8. 底部动作 ---------- */
.pp-back {
  margin-top: clamp(34px, 5vw, 52px);
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
