/* ===== 隐私政策页专属样式 ===== */
.page-privacy{
  --pp-muted:#44516C;
  --pp-line:#D6DDEB;
  --pp-soft:#F7F9FC;
  position:relative;
  background:var(--white);
  color:var(--text-dark);
}

/* ---- 页面顶部主视觉 ---- */
.page-privacy .pp-hero{
  position:relative;
  background:var(--grad-primary);
  color:var(--text-light);
  padding:1.75rem 0 3.25rem;
  overflow:hidden;
}
.page-privacy .pp-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size:28px 28px;
  pointer-events:none;
}
.page-privacy .pp-hero::after{
  content:"";
  position:absolute;
  top:-30%;
  right:-8%;
  width:44%;
  aspect-ratio:1;
  background:rgba(34,255,136,.14);
  border-radius:32% 68% 58% 42% / 44% 40% 60% 56%;
  filter:blur(28px);
  pointer-events:none;
}

.page-privacy .pp-hero-grid{
  display:grid;
  gap:2rem;
  margin-top:2.25rem;
}
.page-privacy .pp-hero-copy{
  position:relative;
  z-index:1;
}
.page-privacy .pp-overline{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  margin:0 0 1rem;
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.75rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--e-green);
}
.page-privacy .pp-hero h1{
  margin:0 0 1.1rem;
  font-size:clamp(1.85rem,4vw,2.8rem);
  line-height:1.18;
  color:var(--white);
}
.page-privacy .pp-lead{
  margin:0 0 .9rem;
  font-size:clamp(.98rem,1.4vw,1.1rem);
  line-height:1.85;
  color:rgba(226,232,240,.88);
  max-width:42rem;
}
.page-privacy .pp-hero-media{
  position:relative;
  z-index:1;
  margin:0;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:var(--shadow-xl);
  background:linear-gradient(135deg,rgba(34,255,136,.14),rgba(255,255,255,.05));
}
.page-privacy .pp-hero-media img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}
.page-privacy .pp-hero-media figcaption{
  padding:.75rem 1rem;
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.72rem;
  letter-spacing:.18em;
  color:rgba(226,232,240,.72);
  background:rgba(10,14,26,.5);
}

/* ---- 主体双栏布局 ---- */
.page-privacy .pp-layout{
  display:grid;
  gap:2rem;
  padding:3rem 0 4rem;
}

/* ---- 左侧目录索引 ---- */
.page-privacy .pp-index-inner{
  position:relative;
  background:var(--night);
  color:var(--text-light);
  border-radius:16px;
  padding:1.75rem 1.25rem;
  overflow:hidden;
  border:1px solid rgba(160,174,192,.18);
  box-shadow:var(--shadow-xl);
}
.page-privacy .pp-index-inner::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size:20px 20px;
  pointer-events:none;
}
.page-privacy .pp-index-head{
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:baseline;
}
.page-privacy .pp-index-title{
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.78rem;
  letter-spacing:.2em;
  color:var(--e-green);
  text-transform:uppercase;
}
.page-privacy .pp-index-meta{
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.68rem;
  letter-spacing:.12em;
  color:rgba(160,174,192,.6);
}
.page-privacy .pp-index-list{
  position:relative;
  list-style:none;
  margin:1.4rem 0 0;
  padding:0;
  display:grid;
  gap:.2rem;
}
.page-privacy .pp-index-list a{
  display:flex;
  align-items:baseline;
  gap:.75rem;
  padding:.55rem .65rem;
  border-radius:8px;
  color:rgba(226,232,240,.86);
  text-decoration:none;
  line-height:1.25;
  transition:background var(--transition-fast),color var(--transition-fast);
}
.page-privacy .pp-index-list a:hover{
  background:rgba(124,58,237,.25);
  color:var(--white);
}
.page-privacy .pp-index-num{
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.8rem;
  color:var(--e-green);
}
.page-privacy .pp-print-btn{
  position:relative;
  display:block;
  width:100%;
  margin-top:1.75rem;
  padding:.75rem 1rem;
  background:transparent;
  border:1px solid var(--e-green);
  color:var(--e-green);
  border-radius:8px;
  cursor:pointer;
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.85rem;
  letter-spacing:.08em;
  transition:background var(--transition-fast),color var(--transition-fast);
}
.page-privacy .pp-print-btn:hover{
  background:var(--e-green);
  color:var(--night);
}

/* ---- 右侧内容区 ---- */
.page-privacy .pp-content{
  display:grid;
  gap:1.5rem;
  align-content:start;
}
.page-privacy .pp-docbar{
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:.5rem 1rem;
  border-bottom:1px solid var(--pp-line);
  padding-bottom:.85rem;
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.78rem;
  letter-spacing:.06em;
  color:var(--pp-muted);
}

/* ---- 政策章节卡片 ---- */
.page-privacy .pp-panel{
  position:relative;
  background:var(--white);
  border:1px solid var(--pp-line);
  border-left:4px solid var(--e-purple);
  border-radius:8px;
  padding:2rem 1.5rem;
  box-shadow:0 8px 24px rgba(10,14,26,.05);
  scroll-margin-top:6rem;
}
.page-privacy .pp-panel-num{
  display:inline-block;
  margin-bottom:1.1rem;
  padding:.28rem .7rem;
  border:1px solid rgba(124,58,237,.28);
  border-radius:5px;
  background:rgba(124,58,237,.07);
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.78rem;
  letter-spacing:.1em;
  color:var(--e-purple);
}
.page-privacy .pp-panel h2{
  margin:.4rem 0 1rem;
  font-size:clamp(1.35rem,2.2vw,1.8rem);
  line-height:1.3;
  color:var(--night);
}
.page-privacy .pp-panel p{
  margin:0 0 1rem;
  line-height:1.9;
  color:var(--pp-muted);
}

/* ---- 列表样式 ---- */
.page-privacy .pp-list{
  list-style:none;
  margin:1.25rem 0;
  padding:0;
  display:grid;
  gap:.9rem;
}
.page-privacy .pp-list li{
  position:relative;
  padding-left:1.5rem;
  line-height:1.8;
  color:var(--pp-muted);
}
.page-privacy .pp-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.72em;
  width:.55em;
  height:.55em;
  background:var(--e-green);
  clip-path:polygon(0 0,100% 0,100% 100%);
}
.page-privacy .pp-list strong{
  color:var(--night);
  font-weight:700;
}

/* ---- 数据保护网格 ---- */
.page-privacy .pp-protect-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:.9rem;
  margin:1.6rem 0;
}
.page-privacy .pp-protect-card{
  border:1px solid var(--pp-line);
  border-radius:10px;
  background:var(--pp-soft);
  padding:1.1rem 1.15rem;
  line-height:1.7;
  color:var(--pp-muted);
  border-left:3px solid var(--indigo);
}
.page-privacy .pp-protect-key{
  display:block;
  margin-bottom:.45rem;
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--e-purple);
}

/* ---- 可展开折叠 ---- */
.page-privacy .pp-fold{
  margin-top:1.5rem;
  border:1px solid var(--pp-line);
  border-radius:9px;
  background:var(--pp-soft);
}
.page-privacy .pp-fold summary{
  cursor:pointer;
  padding:1rem 1.2rem;
  font-weight:700;
  color:var(--night);
  line-height:1.5;
  list-style:none;
}
.page-privacy .pp-fold summary::-webkit-details-marker{
  display:none;
}
.page-privacy .pp-fold summary::after{
  content:"＋";
  float:right;
  margin-left:1rem;
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  color:var(--e-purple);
}
.page-privacy .pp-fold[open] summary::after{
  content:"－";
}
.page-privacy .pp-fold p{
  margin:0;
  padding:0 1.2rem 1.2rem;
  line-height:1.85;
  color:var(--pp-muted);
}

/* ---- 底部联系区块 ---- */
.page-privacy .pp-contact-block{
  margin-top:1rem;
  background:linear-gradient(135deg,var(--night),var(--teal));
  color:var(--text-light);
  border-radius:16px;
  padding:2rem 1.75rem;
  box-shadow:var(--shadow-xl);
  position:relative;
  overflow:hidden;
}
.page-privacy .pp-contact-block::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:24px 24px;
  pointer-events:none;
}
.page-privacy .pp-contact-code{
  display:inline-block;
  margin-bottom:.9rem;
  font-family:"Roboto Mono","JetBrains Mono",monospace;
  font-size:.75rem;
  letter-spacing:.18em;
  color:var(--e-green);
}
.page-privacy .pp-contact-block h2{
  margin:.2rem 0 1rem;
  font-size:clamp(1.3rem,2.2vw,1.7rem);
  color:var(--white);
}
.page-privacy .pp-contact-block p{
  position:relative;
  line-height:1.85;
  color:rgba(226,232,240,.86);
  margin-bottom:1rem;
}
.page-privacy .pp-contact-list{
  position:relative;
  list-style:none;
  margin:1.25rem 0;
  padding:0;
  display:grid;
  gap:.6rem;
}
.page-privacy .pp-contact-list li{
  position:relative;
  padding-left:1.5rem;
  color:rgba(226,232,240,.95);
  line-height:1.7;
}
.page-privacy .pp-contact-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.68em;
  width:.5em;
  height:.5em;
  background:var(--e-green);
  transform:rotate(45deg);
}
.page-privacy .pp-contact-note{
  font-size:.9rem;
}
.page-privacy .pp-contact-btn{
  display:inline-block;
  margin-top:.5rem;
  padding:.8rem 1.5rem;
  background:var(--e-green);
  color:var(--night);
  font-weight:700;
  border-radius:8px;
  text-decoration:none;
  transition:transform var(--transition-fast),box-shadow var(--transition-fast);
}
.page-privacy .pp-contact-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(34,255,136,.28);
}

/* ---- 桌面端布局 ---- */
@media (min-width: 900px){
  .page-privacy .pp-hero{
    padding:2.5rem 0 4rem;
  }
  .page-privacy .pp-hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:3.5rem;
    align-items:center;
  }
  .page-privacy .pp-layout{
    grid-template-columns:240px minmax(0,1fr);
    gap:2.5rem;
  }
  .page-privacy .pp-index-inner{
    position:sticky;
    top:2rem;
  }
  .page-privacy .pp-panel{
    padding:2.5rem 2.25rem;
  }
  .page-privacy .pp-protect-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* ---- 打印优化 ---- */
@media print{
  .page-privacy .pp-index{
    display:none;
  }
  .page-privacy .pp-hero-media{
    display:none;
  }
  .page-privacy .pp-print-btn{
    display:none;
  }
  .page-privacy .pp-panel,
  .page-privacy .pp-contact-block{
    break-inside:avoid;
    box-shadow:none;
  }
  .page-privacy .pp-fold{
    display:block;
  }
  .page-privacy .pp-fold summary{
    list-style:none;
  }
}
