/* ============================================================
   mj77.cn — Document page layer
   用于：主体公示 / 用户协议 / 隐私政策 / 举报页
   ============================================================ */
.doc-hero{padding-top:clamp(7rem,15vh,9.5rem);padding-bottom:clamp(2rem,5vh,3.5rem)}
.doc-eyebrow{
  display:flex;align-items:center;gap:.75rem;font-size:var(--t-xs);letter-spacing:.2em;
  text-transform:uppercase;color:var(--ink-3);margin-bottom:clamp(1.25rem,3vh,2rem);
}
.doc-eyebrow::before{content:"";width:clamp(28px,5vw,64px);height:1px;background:var(--accent)}
.doc-title{
  font-family:var(--font-display);font-size:var(--t-xxl);line-height:1.1;letter-spacing:-.03em;
  font-weight:400;max-width:18ch;
}
.doc-title em{font-style:italic;color:var(--accent)}
.doc-meta{
  display:flex;flex-wrap:wrap;gap:.5rem clamp(1.25rem,3vw,2.5rem);margin-top:clamp(1.5rem,4vh,2.5rem);
  padding-top:1.25rem;border-top:1px solid var(--rule);font-size:var(--t-xs);
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);
}
.doc-meta b{font-weight:500;color:var(--ink-2)}

/* 摘要提示条 */
.doc-callout{
  margin-top:clamp(1.75rem,4vh,2.5rem);padding:clamp(1.1rem,2.5vw,1.6rem) clamp(1.2rem,2.5vw,1.8rem);
  background:var(--accent-soft);border-left:2px solid var(--accent);
  font-size:var(--t-sm);line-height:1.9;color:var(--ink);max-width:var(--measure);
}
.doc-callout strong{font-weight:600}

/* 正文栅格：桌面端左侧目录 + 右侧正文 */
.doc-layout{display:grid;grid-template-columns:1fr;gap:clamp(2rem,5vw,4.5rem);padding-bottom:var(--section)}
@media(min-width:1000px){
  .doc-layout{grid-template-columns:auto minmax(0,1fr);align-items:start}
  .toc{position:sticky;top:6.5rem;width:15rem}
}
.toc{border-top:1px solid var(--rule);padding-top:1.25rem}
.toc h4{font-size:var(--t-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);font-weight:500;margin-bottom:1rem}
.toc ol{list-style:none;counter-reset:toc}
.toc li{counter-increment:toc;margin-bottom:.55rem}
.toc a{
  display:flex;gap:.65rem;font-size:var(--t-sm);color:var(--ink-2);line-height:1.5;
  transition:color .3s var(--ease);
}
.toc a::before{
  content:counter(toc,decimal-leading-zero);font-family:var(--font-display);font-style:italic;
  color:var(--ink-3);font-size:var(--t-xs);flex:none;padding-top:.15rem;transition:color .3s var(--ease);
}
.toc a:hover,.toc a.active{color:var(--ink)}
.toc a:hover::before,.toc a.active::before{color:var(--accent)}

/* 正文排版 */
.prose{max-width:var(--measure);border-top:1px solid var(--rule);padding-top:1.25rem}
.prose section{margin-bottom:clamp(2.5rem,6vh,4rem);scroll-margin-top:6rem}
.prose section:last-child{margin-bottom:0}
.prose h2{
  font-family:var(--font-display);font-size:var(--t-xl);font-weight:400;line-height:1.25;
  letter-spacing:-.02em;margin-bottom:1.1rem;display:flex;align-items:baseline;gap:.75rem;
}
.prose h2 i{
  font-size:var(--t-sm);font-style:italic;color:var(--accent);flex:none;
  font-family:var(--font-display);
}
.prose h3{
  font-size:var(--t-md);font-weight:600;margin:1.75rem 0 .75rem;letter-spacing:-.005em;
}
.prose p{color:var(--ink-2);line-height:1.95;margin-bottom:1.1rem;font-size:var(--t-sm)}
.prose p:last-child{margin-bottom:0}
.prose strong{color:var(--ink);font-weight:600}
.prose em{font-style:italic;color:var(--accent)}
.prose ul,.prose ol{margin:0 0 1.1rem 0;padding-left:1.35rem;color:var(--ink-2);font-size:var(--t-sm)}
.prose li{line-height:1.95;margin-bottom:.5rem}
.prose li::marker{color:var(--ink-3)}
.prose ul li::marker{content:"—  "}
.prose a{color:var(--accent);border-bottom:1px solid color-mix(in srgb,var(--accent) 35%,transparent);transition:border-color .3s var(--ease)}
.prose a:hover{border-bottom-color:var(--accent)}

/* 条文引用块 */
.law{
  border-left:2px solid var(--rule);padding:.15rem 0 .15rem 1.1rem;margin:1.25rem 0;
  font-size:var(--t-xs);color:var(--ink-3);line-height:1.85;
}
.law b{color:var(--ink-2);font-weight:500}

/* 信息公示表 */
.disclose{width:100%;border-collapse:collapse;margin:1.25rem 0;font-size:var(--t-sm)}
.disclose th,.disclose td{
  text-align:left;padding:.85rem 1rem;border-bottom:1px solid var(--rule);vertical-align:top;
}
.disclose th{
  width:12rem;color:var(--ink-3);font-weight:400;font-size:var(--t-xs);
  letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;
}
.disclose td{color:var(--ink)}
.disclose tr:first-child th,.disclose tr:first-child td{border-top:1px solid var(--rule)}
@media(max-width:640px){
  .disclose,.disclose tbody,.disclose tr,.disclose th,.disclose td{display:block;width:100%}
  .disclose th{border-bottom:0;padding-bottom:.2rem}
  .disclose td{padding-top:0;padding-bottom:1rem}
  .disclose tr:first-child td{border-top:0}
}

/* 待填占位高亮 */
.fill{
  background:var(--accent-soft);color:var(--accent);padding:.1rem .45rem;border-radius:3px;
  font-size:.9em;border:1px dashed color-mix(in srgb,var(--accent) 40%,transparent);
  white-space:nowrap;
}

/* 承诺列表 */
.pledge{list-style:none;padding:0;counter-reset:pl}
.pledge li{
  counter-increment:pl;position:relative;padding-left:2.4rem;margin-bottom:.9rem;
  color:var(--ink-2);font-size:var(--t-sm);line-height:1.95;
}
.pledge li::before{
  content:counter(pl,decimal-leading-zero);position:absolute;left:0;top:.15rem;
  font-family:var(--font-display);font-style:italic;color:var(--accent);font-size:var(--t-xs);
}

/* 底部签署区 */
.sign{
  margin-top:clamp(2.5rem,6vh,4rem);padding-top:1.5rem;border-top:1px solid var(--rule);
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;
  font-size:var(--t-sm);color:var(--ink-2);
}
.sign .sig{font-family:var(--font-display);font-size:1.15rem;color:var(--ink)}

/* 返回链接 */
.back{
  display:inline-flex;align-items:center;gap:.6rem;margin-top:2rem;font-size:var(--t-xs);
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);transition:gap .35s var(--ease),color .3s var(--ease);
}
.back:hover{color:var(--accent);gap:1rem}
.back svg{width:1rem;height:1rem}
