.page-privacy {
  --pp-measure: 66ch;
  --pp-text: #C7D5E2;
  --pp-pad: clamp(20px, 4.6vw, 56px);
}

/* 页头 */
.page-privacy .pp-head {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--c-ink);
  border-bottom: 1px solid var(--c-line);
}
.page-privacy .pp-head-img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.4;
}
.page-privacy .pp-head::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(58% 72% at 84% 6%, rgba(0, 229, 255, 0.18), transparent 66%),
    linear-gradient(180deg, rgba(11, 27, 43, 0.62) 0%, rgba(11, 27, 43, 0.94) 62%, #0B1B2B 100%);
}
.page-privacy .pp-head-inner {
  max-width: var(--maxw);
  margin-inline: auto;
  padding: clamp(22px, 4.4vw, 40px) var(--gutter) clamp(44px, 7vw, 88px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.page-privacy .breadcrumb {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 0;
  margin: 0;
  font-size: 12px;
  color: var(--c-muted);
}
.page-privacy .breadcrumb li + li::before {
  content: "/";
  margin-right: 8px;
  color: var(--c-line);
}
.page-privacy .breadcrumb a {
  color: var(--c-muted);
  text-decoration: none;
  border-bottom: 1px solid transparent;
}
.page-privacy .breadcrumb a:hover,
.page-privacy .breadcrumb a:focus-visible {
  color: var(--c-cyan);
  border-bottom-color: var(--c-cyan);
}
.page-privacy .pp-head h1 {
  margin: 0;
  max-width: 20ch;
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(30px, 7vw, 62px);
  line-height: 1.02;
  letter-spacing: -0.01em;
  color: var(--c-paper);
}
.page-privacy .pp-lede {
  margin: 0;
  max-width: 54ch;
  font-size: clamp(15px, 2.2vw, 17px);
  line-height: 1.85;
  color: var(--pp-text);
}
.page-privacy .pp-stamp {
  margin: 6px 0 0;
  padding-top: 14px;
  border-top: 1px solid rgba(143, 163, 184, 0.22);
  max-width: 62ch;
  font-size: 12.5px;
  line-height: 1.7;
  color: var(--c-muted);
}
.page-privacy .pp-stamp .num {
  color: var(--c-cyan);
  letter-spacing: 0.06em;
}

/* 主体框架 */
.page-privacy .pp-shell {
  max-width: var(--maxw);
  margin-inline: auto;
  padding: clamp(32px, 6vw, 72px) var(--gutter) clamp(40px, 7vw, 88px);
  background: var(--c-ink);
}
.page-privacy .pp-body {
  display: block;
}

/* 目录 */
.page-privacy .pp-toc {
  margin-bottom: clamp(26px, 5vw, 44px);
}
.page-privacy .pp-toc-title {
  margin: 0 0 10px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c-lime);
}
.page-privacy .pp-toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: thin;
}
.page-privacy .pp-toc-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  border: 1px solid var(--c-line);
  color: var(--c-muted);
  font-size: 13px;
  text-decoration: none;
  white-space: nowrap;
  transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.page-privacy .pp-toc-link .num {
  color: var(--c-cyan);
  font-size: 11px;
}
.page-privacy .pp-toc-link:hover,
.page-privacy .pp-toc-link:focus-visible {
  color: var(--c-paper);
  border-color: var(--c-cyan);
}

/* 正文 */
.page-privacy .pp-doc {
  max-width: var(--pp-measure);
}
.page-privacy .pp-sec {
  padding: clamp(28px, 5vw, 48px) 0;
  border-top: 1px solid var(--c-line);
}
.page-privacy .pp-sec:first-child {
  border-top: 0;
  padding-top: 0;
}
.page-privacy .pp-sec-head {
  display: flex;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 18px;
}
.page-privacy .pp-num {
  font-family: var(--font-mono);
  font-size: clamp(20px, 3.4vw, 28px);
  line-height: 1;
  color: var(--c-orange);
  letter-spacing: 0.02em;
}
.page-privacy .pp-sec h2 {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 800;
  font-size: clamp(20px, 3.6vw, 28px);
  line-height: 1.24;
  letter-spacing: -0.005em;
  color: var(--c-paper);
}
.page-privacy .pp-p {
  margin: 0 0 16px;
  font-size: 15px;
  line-height: 1.9;
  color: var(--pp-text);
}
.page-privacy .pp-p a,
.page-privacy .pp-note a,
.page-privacy .pp-tail a {
  color: var(--c-cyan);
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 229, 255, 0.42);
}
.page-privacy .pp-p a:hover,
.page-privacy .pp-note a:hover,
.page-privacy .pp-tail a:hover {
  border-bottom-color: var(--c-cyan);
}
.page-privacy .pp-list {
  list-style: none;
  margin: 0 0 18px;
  padding: 0;
}
.page-privacy .pp-list li {
  padding: 14px 0 14px 16px;
  border-top: 1px solid rgba(30, 42, 54, 0.9);
  border-left: 1px solid var(--c-line);
  font-size: 14.5px;
  line-height: 1.85;
  color: var(--pp-text);
}
.page-privacy .pp-list li:first-child {
  border-top: 0;
  padding-top: 6px;
}
.page-privacy .pp-list strong {
  display: block;
  margin-bottom: 3px;
  font-weight: 600;
  color: var(--c-paper);
  font-size: 14.5px;
}
.page-privacy .pp-key {
  margin: 18px 0;
  padding: 14px 0 14px 16px;
  border-left: 2px solid var(--c-cyan);
  font-size: 14.5px;
  line-height: 1.85;
  font-weight: 600;
  color: var(--c-paper);
}
.page-privacy .pp-note {
  margin: 0;
  font-size: 13px;
  line-height: 1.8;
  color: var(--c-muted);
}

/* 高亮条款面板 */
.page-privacy .pp-sec--panel {
  margin-top: clamp(28px, 5vw, 44px);
  padding: clamp(24px, 4vw, 38px) clamp(18px, 3.4vw, 32px);
  background: var(--c-ink-3);
  border-top: 1px solid rgba(0, 229, 255, 0.28);
  border-left: 2px solid var(--c-cyan);
}

/* 折叠条款 */
.page-privacy .pp-acc {
  margin: 20px 0 26px;
  border-top: 1px solid rgba(143, 163, 184, 0.22);
}
.page-privacy .pp-acc details {
  border-bottom: 1px solid rgba(143, 163, 184, 0.22);
}
.page-privacy .pp-acc summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px 0;
  cursor: pointer;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--c-paper);
  list-style: none;
}
.page-privacy .pp-acc summary::-webkit-details-marker {
  display: none;
}
.page-privacy .pp-acc summary::after {
  content: "+";
  flex: none;
  font-family: var(--font-mono);
  font-size: 16px;
  color: var(--c-cyan);
}
.page-privacy .pp-acc details[open] summary::after {
  content: "\2013";
}
.page-privacy .pp-acc summary:hover {
  color: var(--c-cyan);
}
.page-privacy .pp-acc details .pp-p {
  margin: 0 0 16px;
  font-size: 14px;
  color: var(--pp-text);
}

/* 联系方式块 */
.page-privacy .pp-contact {
  padding-top: 22px;
  border-top: 1px solid rgba(0, 229, 255, 0.24);
}
.page-privacy .pp-contact-title {
  margin: 0 0 14px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c-lime);
}
.page-privacy .pp-contact-list {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: grid;
  gap: 10px;
}
.page-privacy .pp-contact-list li {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 10px;
  font-size: 14px;
  line-height: 1.7;
  color: var(--pp-text);
  word-break: break-word;
}
.page-privacy .pp-contact-list span {
  color: var(--c-muted);
  font-size: 12.5px;
  letter-spacing: 0.04em;
}
.page-privacy .pp-contact-list a {
  color: var(--c-cyan);
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 229, 255, 0.42);
}
.page-privacy .pp-contact-list a:hover {
  border-bottom-color: var(--c-cyan);
}

/* 结尾 */
.page-privacy .pp-tail {
  margin-top: clamp(30px, 5vw, 48px);
  padding-top: 22px;
  border-top: 1px solid var(--c-line);
  font-size: 14px;
  color: var(--c-muted);
}
.page-privacy .pp-backtotop {
  margin: 22px 0 0;
}
.page-privacy .pp-backtotop .btn {
  font-size: 13px;
}
.page-privacy .pp-legal {
  margin: 26px 0 0;
  font-family: var(--font-mono);
  font-size: 11.5px;
  letter-spacing: 0.04em;
  line-height: 1.8;
  color: var(--c-muted);
}

/* 桌面端：左侧锚点目录 + 连续正文 */
@media (min-width: 980px) {
  .page-privacy .pp-body {
    display: grid;
    grid-template-columns: 218px minmax(0, 1fr);
    gap: clamp(32px, 5vw, 64px);
    align-items: start;
  }
  .page-privacy .pp-toc {
    position: sticky;
    top: 32px;
    margin-bottom: 0;
    padding-top: 4px;
  }
  .page-privacy .pp-toc-list {
    flex-direction: column;
    gap: 0;
    overflow: visible;
  }
  .page-privacy .pp-toc-link {
    border: 0;
    border-left: 1px solid var(--c-line);
    padding: 9px 0 9px 14px;
    white-space: normal;
    font-size: 13po px;
  }
  .page-privacy .pp-toc-link:hover,
  .page-privacy .pp-toc-link:focus-visible {
    border-left-color: var(--c-cyan);
    color: var(--c-paper);
  }
  .page-privacy .pp-doc {
    padding-bottom: 8px;
  }
  .page-privacy .pp-contact-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .page-privacy .pp-contact-list li {
    grid-template-columns: 76px minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-privacy .pp-toc-link,
  .page-privacy .pp-acc summary {
    transition: none;
  }
}
</｜｜DSML｜｜<main id="main-content" class="page-privacy">

  <div class="pp-head">
    <img class="pp-head-img" src="{zhanqunpic:h:600w:1200}" width="1200" height="600" alt="深色背景上抽象数据流线条汇聚成锁形几何，带轻微霓虹光">
    <div class="pp-head-inner">
      <nav aria-label="面包屑">
        <ol class="breadcrumb">
          <li><a href="/">赛场首页</a></li>
          <li aria-current="page">隐私声明</li>
        </ol>
      </nav>
      <p class="eyebrow">信息与隐私</p>
      <h1>隐私声明：爱游戏赛场如何保护你的订阅与提醒信息</h1>
      <p class="pp-lede">查赛程、订阅联赛、开手机提醒，本可以只留下很少的个人信息。这份声明把话讲明白：我们会拿到哪些内容、拿来做什么、什么时候删，以及你想改想撤的时候找谁。</p>
      <p class="pp-stamp"><span class="num">当前版本</span> · 服务地区：湖北 · 适用于赛程查询、多联赛订阅、手机提醒与测试版会员权益领取</p>
    </div>
  </div>

  <div class="pp-shell">
    <div class="pp-body">

      <aside class="pp-toc" aria-label="条款目录">
        <p class="pp-toc-title">条款目录</p>
        <ol class="pp-toc-list">
          <li><a class="pp-toc-link" href="#collect"><span class="num">01</span>信息收集</a></li>
          <li><a class="pp-toc-link" href="#reminders"><span class="num">02</span>提醒数据</a></li>
          <li><a class="pp-toc-link" href="#member"><span class="num">03</span>会员测试</a></li>
          <li><a class="pp-toc-link" href="#storage"><span class="num">04</span>本地存储</a></li>
          <li><a class="pp-toc-link" href="#rights"><span class="num">05</span>你的权利</a></li>
        </ol>
      </aside>

      <div class="pp-doc">

        <section class="pp-sec" id="collect" aria-labelledby="collect-h" data-reveal>
          <div class="pp-sec-head">
            <span class="pp-num num">01</span>
            <h2 id="collect-h">我们收集哪些信息</h2>
          </div>
          <p class="pp-p">在首页看重点场次、翻赛前前瞻，你什么都不用填。只有当你要把提醒发到手机上、把联赛订阅保存下来、或者提交一份工单时，才会涉及下面几类信息，且只到够用为止。</p>
          <ul class="pp-list">
            <li><strong>登录与访问记录</strong>手机号或邮箱、验证码、登录设备类型与时间。用来认出是你本人，避免提醒发到别人的手机上。电脑端重新登录后即可继续查看赛程。</li>
            <li><strong>订阅与关注设置</strong>你选中的联赛（一次最多 5 个）、关注的球队、提醒开关状态和希望提前多久收到通知。这是生成提醒的全部依据。</li>
            <li><strong>提醒送达状态</strong>手机系统的推送通道标识，以及每条提醒是已送达还是被系统拦截。用于排查“为什么没收到”这类问题。</li>
            <li><strong>服务往来内容</strong>你通过客服邮箱或工单提交时写的联系方式、问题描述和截图。我们用它定位故障、回复你，并在处理完成后按期限清理。</li>
          </ul>
          <p class="pp-key">浏览赛程、查看比分和阅读赛前前瞻不需要登录，也不会因此建立个人画像。需要登录的地方只有订阅保存、手机同步提醒和会员权益领取。</p>
        </section>

        <section class="pp-sec" id="reminders" aria-labelledby="reminders-h" data-reveal>
          <div class="pp-sec-head">
            <span class="pp-num num">02</span>
            <h2 id="reminders-h">订阅提醒如何使用信息</h2>
          </div>
          <p class="pp-p">订阅的价值在于准时。你把三个联赛设成关注，比赛前一小时手机响一下——这背后只用到你的订阅清单、提醒开关和推送通道，不会再牵扯别的东西。</p>
          <ul class="pp-list">
            <li><strong>生成通知</strong>根据你订阅的联赛与关注球队，在开赛前按你设定的提前量推送对阵、开赛时间与联赛名称。</li>
            <li><strong>合并推送</strong>同一天有多场在关注列表里的比赛，会合并成一条汇总提醒，减少打扰。</li>
            <li><strong>失败重试</strong>推送未送达时，我们会记录通道状态并在下一次提醒中调整，记录本身不包含消息正文以外的内容。</li>
          </ul>
          <p class="pp-p">想停下来很简单：在手机端提醒设置里逐项关闭开赛前提醒、球队提醒或联赛汇总；也可以在订阅列表中直接取消某个联赛，取消后该联赛不再触发任何通知。退出登录会同步关闭本机的提醒开关。</p>
          <p class="pp-note">订阅信息只用于生成你主动要求的提醒，以及在你反馈问题时比对推送记录。了解完整的功能边界，可以查看<a href="/catalog/">赛程服务矩阵</a>中的提醒说明。</p>
        </section>

        <section class="pp-sec" id="member" aria-labelledby="member-h" data-reveal>
          <div class="pp-sec-head">
            <span class="pp-num num">03</span>
            <h2 id="member-h">会员测试通道的信息处理</h2>
          </div>
          <p class="pp-p">测试版领会员中心在导航第二项，权益领取和问题反馈都在那里完成。这条通道会多处理两类内容：一是领取记录，二是你写下的反馈。</p>
          <ul class="pp-list">
            <li><strong>领取记录</strong>领取的权益名称、领取时间、绑定账号与设备型号，用于确认权益归属，避免同一份权益被重复领取。</li>
            <li><strong>反馈内容</strong>你描述的问题、出现的页面、手机型号与版本号。写清这些，我们复现问题的速度会快很多。</li>
            <li><strong>回访联系方式</strong>只有你主动填写时我们才会拿到，也只在需要追问细节或告知处理结果时使用。</li>
          </ul>
          <p class="pp-key">测试阶段收集的反馈用于改进功能，不会用于向你推送营销信息。反馈中附带的截图若包含你不希望保留的内容，可以在提交前先做遮挡。</p>
          <p class="pp-p">会员权益在测试期可能调整，涉及权益变更时，我们会在<a href="/press/">赛场动态</a>中说明，并在工单回复中同步给你。</p>
        </section>

        <section class="pp-sec" id="storage" aria-labelledby="storage-h" data-reveal>
          <div class="pp-sec-head">
            <span class="pp-num num">04</span>
            <h2 id="storage-h">Cookie 与本地存储</h2>
          </div>
          <p class="pp-p">再次打开页面时，订阅选择和提醒设置还在原位，靠的是浏览器里的 Cookie 与本地存储。它们记住的是偏好，不是你的身份。</p>
          <ul class="pp-list">
            <li><strong>登录状态</strong>Cookie 让你在一段时间内不用反复输入验证码，关闭浏览器或主动退出后失效。</li>
            <li><strong>订阅与提醒偏好</strong>本地存储保存你勾选的联赛、提醒开关和上次查看的日期，下次打开直接还原。</li>
            <li><strong>显示偏好</strong>列表密度、是否优先显示重点场次标记这类小设置，同样存在本地。</li>
          </ul>
          <p class="pp-p">清理方式：在浏览器设置中清除该站点的 Cookie 与站点数据；手机端可在系统设置里清除应用缓存。清理后页面会回到默认状态，需要重新登录并重新订阅联赛，已领取的会员权益不会因此失效。</p>
        </section>

        <section class="pp-sec pp-sec--panel" id="rights" aria-labelledby="rights-h" data-reveal>
          <div class="pp-sec-head">
            <span class="pp-num num">05</span>
            <h2 id="rights-h">你的权利与联系路径</h2>
          </div>
          <p class="pp-p">对自己的信息，你有四项可以随时行使的权利：查询我们保存了什么、更正不准确的部分、删掉不需要的部分、撤回此前给出的同意。撤回提醒同意后，提醒立即停止，其余功能照常使用。</p>

          <div class="pp-acc">
            <details>
              <summary>怎么申请查询与更正</summary>
              <p class="pp-p">用客服邮箱 info@aiyouxi-sports-joy.com.cn 发信，写明注册手机号或邮箱、需要查询的项目。核对身份后，我们会把订阅清单、提醒设置和领取记录整理给你；发现错漏可直接在同一封回信里指出，我们更正后回复确认。</p>
            </details>
            <details>
              <summary>怎么申请删除</summary>
              <p class="pp-p">同样通过客服邮箱或工单提交删除请求。删除订阅与提醒配置通常在 3 个工作日内完成；账号注销会一并清除关注球队、提醒偏好与推送通道标识。工单往来记录与权益领取记录因涉及账务核对，会在对应周期结束后清理。</p>
            </details>
            <details>
              <summary>怎么撤回提醒同意</summary>
              <p class="pp-p">最快的方式是在手机端提醒设置里关闭对应开关，或取消联赛订阅，立即生效。也可以通过工单提出，由客服代为关闭。撤回后不影响你继续查看赛程与赛前前瞻。</p>
            </details>
            <details>
              <summary>信息会保留多久</summary>
              <p class="pp-p">账户有效期内的订阅与提醒设置会持续保留，方便你随时接着用；取消订阅后，相关提醒配置在 30 天内清除。客服工单与反馈记录保留 12 个月用于问题追溯，到期后删除。法律法规另有要求的，按相应要求处理。</p>
            </details>
          </div>

          <div class="pp-contact">
            <p class="pp-contact-title">联系我们处理隐私问题</p>
            <ul class="pp-contact-list">
              <li><span>客服邮箱</span><a href="mailto:info@aiyouxi-sports-joy.com.cn">info@aiyouxi-sports-joy.com.cn</a></li>
              <li><span>客服电话</span><a href="tel:18520901878">18520901878</a></li>
              <li><span>通信地址</span>湖北省武汉市洪山区珞喻路152号</li>
              <li><span>回复时间</span>工作日 9:00-18:00</li>
            </ul>
            <p class="pp-note">赛程订阅与会员问题，建议优先在导航第二项的测试版领会员中心提交工单，处理进度可以随时查看。合作与内容反馈请走<a href="/contact/">联系我们</a>页面。</p>
          </div>
        </section>

        <p class="pp-p pp-tail">访问规则与赛程信息说明见<a href="/instructions/">使用说明</a>；想了解平台的运营团队与本地赛事合作情况，可以回到<a href="/">赛场首页</a>或阅读品牌故事。</p>

        <p class="pp-backtotop"><a class="btn btn--ghost" href="#main-content">返回顶部</a></p>

        <p class="pp-legal">爱游戏赛场 · 服务地区：湖北 · 鄂ICP备27881315号-3</p>

      </div>
    </div>
  </div>

</main>

.page-privacy {
  --pp-measure: 66ch;
  --pp-text: #C7D5E2;
  --pp-pad: clamp(20px, 4.6vw, 56px);
}

/* 页头 */
.page-privacy .pp-head {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--c-ink);
  border-bottom: 1px solid var(--c-line);
}
.page-privacy .pp-head-img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.4;
}
.page-privacy .pp-head::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(58% 72% at 84% 6%, rgba(0, 229, 255, 0.18), transparent 66%),
    linear-gradient(180deg, rgba(11, 27, 43, 0.62) 0%, rgba(11, 27, 43, 0.94) 62%, #0B1B2B 100%);
}
.page-privacy .pp-head-inner {
  max-width: var(--maxw);
  margin-inline: auto;
  padding: clamp(22px, 4.4vw, 40px) var(--gutter) clamp(44px, 7vw, 88px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.page-privacy .breadcrumb {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 0;
  margin: 0;
  font-size: 12px;
  color: var(--c-muted);
}
.page-privacy .breadcrumb li + li::before {
  content: "/";
  margin-right: 8px;
  color: var(--c-line);
}
.page-privacy .breadcrumb a {
  color: var(--c-muted);
  text-decoration: none;
  border-bottom: 1px solid transparent;
}
.page-privacy .breadcrumb a:hover,
.page-privacy .breadcrumb a:focus-visible {
  color: var(--c-cyan);
  border-bottom-color: var(--c-cyan);
}
.page-privacy .pp-head h1 {
  margin: 0;
  max-width: 20ch;
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(30px, 7vw, 62px);
  line-height: 1.02;
  letter-spacing: -0.01em;
  color: var(--c-paper);
}
.page-privacy .pp-lede {
  margin: 0;
  max-width: 54ch;
  font-size: clamp(15px, 2.2vw, 17px);
  line-height: 1.85;
  color: var(--pp-text);
}
.page-privacy .pp-stamp {
  margin: 6px 0 0;
  padding-top: 14px;
  border-top: 1px solid rgba(143, 163, 184, 0.22);
  max-width: 62ch;
  font-size: 12.5px;
  line-height: 1.7;
  color: var(--c-muted);
}
.page-privacy .pp-stamp .num {
  color: var(--c-cyan);
  letter-spacing: 0.06em;
}

/* 主体框架 */
.page-privacy .pp-shell {
  max-width: var(--maxw);
  margin-inline: auto;
  padding: clamp(32px, 6vw, 72px) var(--gutter) clamp(40px, 7vw, 88px);
  background: var(--c-ink);
}
.page-privacy .pp-body {
  display: block;
}

/* 目录 */
.page-privacy .pp-toc {
  margin-bottom: clamp(26px, 5vw, 44px);
}
.page-privacy .pp-toc-title {
  margin: 0 0 10px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c-lime);
}
.page-privacy .pp-toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: thin;
}
.page-privacy .pp-toc-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  border: 1px solid var(--c-line);
  color: var(--c-muted);
  font-size: 13px;
  text-decoration: none;
  white-space: nowrap;
  transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.page-privacy .pp-toc-link .num {
  color: var(--c-cyan);
  font-size: 11px;
}
.page-privacy .pp-toc-link:hover,
.page-privacy .pp-toc-link:focus-visible {
  color: var(--c-paper);
  border-color: var(--c-cyan);
}

/* 正文 */
.page-privacy .pp-doc {
  max-width: var(--pp-measure);
}
.page-privacy .pp-sec {
  padding: clamp(28px, 5vw, 48px) 0;
  border-top: 1px solid var(--c-line);
}
.page-privacy .pp-sec:first-child {
  border-top: 0;
  padding-top: 0;
}
.page-privacy .pp-sec-head {
  display: flex;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 18px;
}
.page-privacy .pp-num {
  font-family: var(--font-mono);
  font-size: clamp(20px, 3.4vw, 28px);
  line-height: 1;
  color: var(--c-orange);
  letter-spacing: 0.02em;
}
.page-privacy .pp-sec h2 {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 800;
  font-size: clamp(20px, 3.6vw, 28px);
  line-height: 1.24;
  letter-spacing: -0.005em;
  color: var(--c-paper);
}
.page-privacy .pp-p {
  margin: 0 0 16px;
  font-size: 15px;
  line-height: 1.9;
  color: var(--pp-text);
}
.page-privacy .pp-p a,
.page-privacy .pp-note a,
.page-privacy .pp-tail a {
  color: var(--c-cyan);
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 229, 255, 0.42);
}
.page-privacy .pp-p a:hover,
.page-privacy .pp-note a:hover,
.page-privacy .pp-tail a:hover {
  border-bottom-color: var(--c-cyan);
}
.page-privacy .pp-list {
  list-style: none;
  margin: 0 0 18px;
  padding: 0;
}
.page-privacy .pp-list li {
  padding: 14px 0 14px 16px;
  border-top: 1px solid rgba(30, 42, 54, 0.9);
  border-left: 1px solid var(--c-line);
  font-size: 14.5px;
  line-height: 1.85;
  color: var(--pp-text);
}
.page-privacy .pp-list li:first-child {
  border-top: 0;
  padding-top: 6px;
}
.page-privacy .pp-list strong {
  display: block;
  margin-bottom: 3px;
  font-weight: 600;
  color: var(--c-paper);
  font-size: 14.5px;
}
.page-privacy .pp-key {
  margin: 18px 0;
  padding: 14px 0 14px 16px;
  border-left: 2px solid var(--c-cyan);
  font-size: 14.5px;
  line-height: 1.85;
  font-weight: 600;
  color: var(--c-paper);
}
.page-privacy .pp-note {
  margin: 0;
  font-size: 13px;
  line-height: 1.8;
  color: var(--c-muted);
}

/* 高亮条款面板 */
.page-privacy .pp-sec--panel {
  margin-top: clamp(28px, 5vw, 44px);
  padding: clamp(24px, 4vw, 38px) clamp(18px, 3.4vw, 32px);
  background: var(--c-ink-3);
  border-top: 1px solid rgba(0, 229, 255, 0.28);
  border-left: 2px solid var(--c-cyan);
}

/* 折叠条款 */
.page-privacy .pp-acc {
  margin: 20px 0 26px;
  border-top: 1px solid rgba(143, 163, 184, 0.22);
}
.page-privacy .pp-acc details {
  border-bottom: 1px solid rgba(143, 163, 184, 0.22);
}
.page-privacy .pp-acc summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px 0;
  cursor: pointer;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--c-paper);
  list-style: none;
}
.page-privacy .pp-acc summary::-webkit-details-marker {
  display: none;
}
.page-privacy .pp-acc summary::after {
  content: "+";
  flex: none;
  font-family: var(--font-mono);
  font-size: 16px;
  color: var(--c-cyan);
}
.page-privacy .pp-acc details[open] summary::after {
  content: "\2013";
}
.page-privacy .pp-acc summary:hover {
  color: var(--c-cyan);
}
.page-privacy .pp-acc details .pp-p {
  margin: 0 0 16px;
  font-size: 14px;
  color: var(--pp-text);
}

/* 联系方式块 */
.page-privacy .pp-contact {
  padding-top: 22px;
  border-top: 1px solid rgba(0, 229, 255, 0.24);
}
.page-privacy .pp-contact-title {
  margin: 0 0 14px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c-lime);
}
.page-privacy .pp-contact-list {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: grid;
  gap: 10px;
}
.page-privacy .pp-contact-list li {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 10px;
  font-size: 14px;
  line-height: 1.7;
  color: var(--pp-text);
  word-break: break-word;
}
.page-privacy .pp-contact-list span {
  color: var(--c-muted);
  font-size: 12.5px;
  letter-spacing: 0.04em;
}
.page-privacy .pp-contact-list a {
  color: var(--c-cyan);
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 229, 255, 0.42);
}
.page-privacy .pp-contact-list a:hover {
  border-bottom-color: var(--c-cyan);
}

/* 结尾 */
.page-privacy .pp-tail {
  margin-top: clamp(30px, 5vw, 48px);
  padding-top: 22px;
  border-top: 1px solid var(--c-line);
  font-size: 14px;
  color: var(--c-muted);
}
.page-privacy .pp-backtotop {
  margin: 22px 0 0;
}
.page-privacy .pp-backtotop .btn {
  font-size: 13px;
}
.page-privacy .pp-legal {
  margin: 26px 0 0;
  font-family: var(--font-mono);
  font-size: 11.5px;
  letter-spacing: 0.04em;
  line-height: 1.8;
  color: var(--c-muted);
}

/* 桌面端：左侧锚点目录 + 连续正文 */
@media (min-width: 980px) {
  .page-privacy .pp-body {
    display: grid;
    grid-template-columns: 218px minmax(0, 1fr);
    gap: clamp(32px, 5vw, 64px);
    align-items: start;
  }
  .page-privacy .pp-toc {
    position: sticky;
    top: 32px;
    margin-bottom: 0;
    padding-top: 4px;
  }
  .page-privacy .pp-toc-list {
    flex-direction: column;
    gap: 0;
    overflow: visible;
  }
  .page-privacy .pp-toc-link {
    border: 0;
    border-left: 1px solid var(--c-line);
    padding: 9px 0 9px 14px;
    white-space: normal;
    font-size: 13px;
  }
  .page-privacy .pp-toc-link:hover,
  .page-privacy .pp-toc-link:focus-visible {
    border-left-color: var(--c-cyan);
    color: var(--c-paper);
  }
  .page-privacy .pp-doc {
    padding-bottom: 8px;
  }
  .page-privacy .pp-contact-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .page-privacy .pp-contact-list li {
    grid-template-columns: 76px minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-privacy .pp-toc-link,
  .page-privacy .pp-acc summary {
    transition: none;
  }
}
