.page-disclaimer{
  --doc-link:#8A5B14;
  --toc-w:230px;
  --doc-gap:clamp(1.5rem,3vw,2.75rem);
  padding-bottom:clamp(2.5rem,6vw,4.5rem);
}
.page-disclaimer .breadcrumb-list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.4rem;
  margin:0;
  padding:clamp(1rem,2.5vw,1.5rem) 0 0;
  list-style:none;
  font-family:var(--font-mono);
  font-size:var(--fs-xs);
  color:var(--star);
}
.page-disclaimer .breadcrumb-link{
  color:var(--star);
  text-decoration:none;
  border-bottom:1px solid transparent;
}
.page-disclaimer .breadcrumb-link:hover,
.page-disclaimer .breadcrumb-link:focus-visible{
  color:var(--gold);
  border-bottom-color:var(--line-gold);
}
.page-disclaimer .breadcrumb-sep{ color:rgba(143,166,191,.55); }
.page-disclaimer .breadcrumb-current{ color:var(--paper); }

/* 首屏 */
.page-disclaimer .agreement-hero{
  position:relative;
  margin-top:clamp(.75rem,2vw,1.25rem);
  padding:clamp(1.5rem,4vw,2.75rem) 0 clamp(1.5rem,3.5vw,2.5rem);
  background:
    radial-gradient(880px 320px at 10% -20%, rgba(47,168,160,.18), transparent 66%),
    radial-gradient(720px 300px at 92% -5%, rgba(232,179,57,.14), transparent 62%);
  border-bottom:1px solid var(--line);
}
.page-disclaimer .agreement-hero::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  background:linear-gradient(90deg,
    var(--cyan) 0 20%,
    var(--white) 20% 40%,
    var(--red) 40% 60%,
    var(--green) 60% 80%,
    var(--yellow) 80% 100%);
  opacity:.5;
}
.page-disclaimer .agreement-hero-inner{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:clamp(1.25rem,3vw,2.25rem);
  align-items:start;
}
.page-disclaimer .agreement-hero .eyebrow{ color:var(--gold); }
.page-disclaimer .agreement-hero h1{
  margin:.5rem 0 0;
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1.12;
  letter-spacing:-.02em;
  color:var(--white);
}
.page-disclaimer .agreement-hero .lede{
  margin:1rem 0 0;
  max-width:34em;
  font-size:clamp(1rem,1.4vw,1.125rem);
  line-height:1.8;
  color:rgba(247,244,236,.86);
}
.page-disclaimer .agreement-meta{
  margin:0;
  padding:1.1rem 1.25rem;
  background:var(--ink-panel);
  border:1px solid var(--line-gold);
  border-radius:var(--radius-m);
  display:grid;
  gap:.55rem;
}
.page-disclaimer .meta-row{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:baseline;
  gap:.35rem 1rem;
  padding-bottom:.55rem;
  border-bottom:1px dashed var(--line);
}
.page-disclaimer .meta-row:last-child{
  padding-bottom:0;
  border-bottom:0;
}
.page-disclaimer .meta-row dt{
  font-family:var(--font-mono);
  font-size:var(--fs-xs);
  letter-spacing:.04em;
  color:var(--star);
}
.page-disclaimer .meta-row dd{
  margin:0;
  font-size:var(--fs-sm);
  color:var(--paper);
  text-align:right;
}
.page-disclaimer .meta-row dd.data-num{
  font-family:var(--font-mono);
  color:var(--gold);
  word-break:break-all;
}

/* 顶部横幅 */
.page-disclaimer .agreement-banner{
  margin:clamp(1.5rem,3vw,2.25rem) auto 0;
  padding:0 var(--gutter);
}
.page-disclaimer .agreement-banner img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
  border:1px solid var(--line-gold);
  border-radius:var(--radius-l);
  filter:saturate(.92) brightness(.92);
}
.page-disclaimer .agreement-banner-cap{
  margin:.7rem 0 0;
  font-family:var(--font-mono);
  font-size:var(--fs-xs);
  line-height:1.6;
  color:var(--star);
}

/* 目录 + 正文 */
.page-disclaimer .agreement-body{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--doc-gap);
  margin-top:clamp(1.75rem,4vw,3rem);
}
.page-disclaimer .agreement-toc{
  align-self:start;
  padding:1.15rem 1.25rem;
  background:var(--ink-panel);
  border:1px solid var(--line);
  border-left:3px solid var(--gold);
  border-radius:var(--radius-m);
}
.page-disclaimer .toc-title{
  margin:0 0 .85rem;
  font-family:var(--font-mono);
  font-size:var(--fs-xs);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--gold);
}
.page-disclaimer .toc-list{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:.15rem;
}
.page-disclaimer .toc-link{
  display:flex;
  gap:.6rem;
  align-items:baseline;
  padding:.45rem .35rem;
  border-radius:var(--radius-s);
  color:rgba(247,244,236,.84);
  font-size:var(--fs-sm);
  line-height:1.5;
  text-decoration:none;
  transition:background .16s ease, color .16s ease;
}
.page-disclaimer .toc-link:hover,
.page-disclaimer .toc-link:focus-visible{
  background:rgba(232,179,57,.12);
  color:var(--gold);
}
.page-disclaimer .toc-num{
  flex:0 0 auto;
  font-family:var(--font-mono);
  font-size:var(--fs-xs);
  color:var(--cyan);
}
.page-disclaimer .toc-link:hover .toc-num,
.page-disclaimer .toc-link:focus-visible .toc-num{ color:var(--gold); }
.page-disclaimer .toc-foot{
  margin:1rem 0 0;
  padding-top:.85rem;
  border-top:1px dashed var(--line);
  font-size:var(--fs-xs);
  line-height:1.7;
  color:var(--star);
}
.page-disclaimer .toc-foot a{
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(47,168,160,.4);
}

/* 纸张正文 */
.page-disclaimer .agreement-doc{
  padding:clamp(1.25rem,3.4vw,2.75rem);
  background:
    linear-gradient(180deg, rgba(217,201,170,.22), rgba(217,201,170,0) 140px),
    var(--paper);
  border-radius:var(--radius-l);
  color:var(--ink-text);
  box-shadow:0 18px 48px -32px rgba(7,19,36,.85);
}
.page-disclaimer .clause{
  scroll-margin-top:6rem;
  padding-block:clamp(1.25rem,2.6vw,1.9rem);
  border-top:1px dashed var(--paper-line);
}
.page-disclaimer .clause:first-child{
  padding-top:0;
  border-top:0;
}
.page-disclaimer .clause-head{
  display:flex;
  align-items:baseline;
  gap:.75rem;
  margin-bottom:.9rem;
}
.page-disclaimer .clause-num{
  flex:0 0 auto;
  font-family:var(--font-mono);
  font-size:clamp(1.1rem,2.2vw,1.5rem);
  font-weight:700;
  line-height:1;
  color:#B8891F;
}
.page-disclaimer .clause h2{
  margin:0;
  font-size:clamp(1.15rem,2.2vw,1.5rem);
  font-weight:800;
  letter-spacing:-.01em;
  line-height:1.35;
  color:var(--ink-text);
}
.page-disclaimer .clause p{
  margin:0 0 .85rem;
  max-width:40em;
  font-size:var(--fs-base);
  line-height:1.85;
}
.page-disclaimer .clause p:last-child{ margin-bottom:0; }
.page-disclaimer .clause a{
  color:var(--doc-link);
  text-decoration:none;
  border-bottom:1px solid rgba(138,91,20,.45);
}
.page-disclaimer .clause a:hover,
.page-disclaimer .clause a:focus-visible{
  color:#5F3D08;
  border-bottom-color:#5F3D08;
}
.page-disclaimer .rule-list{
  margin:0 0 .9rem;
  padding:0;
  list-style:none;
  display:grid;
  gap:.6rem;
  max-width:42em;
}
.page-disclaimer .rule-list li{
  position:relative;
  padding-left:1.1rem;
  font-size:var(--fs-base);
  line-height:1.8;
}
.page-disclaimer .rule-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.72em;
  width:.42rem;
  height:.42rem;
  background:var(--gold);
  border-radius:1px;
}
.page-disclaimer .rule-list strong{
  color:#2A1A05;
  font-weight:700;
}

/* 旁注折叠卡 */
.page-disclaimer .agreement-note{
  margin:1.1rem 0 .2rem;
  padding:.8rem 1rem;
  max-width:42em;
  background:var(--white);
  border-left:4px solid var(--gold);
  border-radius:0 var(--radius-s) var(--radius-s) 0;
}
.page-disclaimer .agreement-note summary{
  cursor:pointer;
  font-size:var(--fs-sm);
  font-weight:700;
  line-height:1.6;
  color:#2A1A05;
  list-style:none;
  display:flex;
  align-items:baseline;
  gap:.6rem;
}
.page-disclaimer .agreement-note summary::-webkit-details-marker{ display:none; }
.page-disclaimer .agreement-note summary::after{
  content:"＋";
  margin-left:auto;
  font-family:var(--font-mono);
  font-weight:400;
  color:#B8891F;
}
.page-disclaimer .agreement-note[open] summary::after{ content:"－"; }
.page-disclaimer .note-body{
  margin-top:.65rem;
  padding-top:.65rem;
  border-top:1px dashed var(--paper-line);
}
.page-disclaimer .note-body p{
  margin:0 0 .5rem;
  font-size:var(--fs-sm);
  line-height:1.75;
  color:#33405A;
}
.page-disclaimer .note-body p:last-child{ margin-bottom:0; }

/* 联系块 */
.page-disclaimer .contact-block{
  margin:0 0 1rem;
  padding:1rem 1.1rem;
  max-width:42em;
  background:rgba(247,244,236,.72);
  border:1px solid var(--paper-line);
  border-radius:var(--radius-m);
}
.page-disclaimer .contact-item{
  margin:0 0 .55rem;
  display:flex;
  flex-wrap:wrap;
  gap:.35rem 1rem;
  align-items:baseline;
  font-size:var(--fs-sm);
  line-height:1.6;
}
.page-disclaimer .contact-item:last-child{ margin-bottom:0; }
.page-disclaimer .contact-item .contact-label{
  flex:0 0 5.5em;
  font-family:var(--font-mono);
  font-size:var(--fs-xs);
  letter-spacing:.04em;
  color:#8A6A2A;
}
.page-disclaimer .contact-item .contact-value{
  color:#2A1A05;
  word-break:break-all;
}
.page-disclaimer .contact-item .contact-value.data-num{ font-family:var(--font-mono); }
.page-disclaimer .agreement-print{
  margin-top:1.1rem;
  padding-top:.9rem;
  border-top:1px dashed var(--paper-line);
  font-family:var(--font-mono);
  font-size:var(--fs-xs);
  line-height:1.7;
  color:#6C6353;
}

@media (min-width:768px){
  .page-disclaimer .agreement-hero-inner{
    grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);
  }
}
@media (min-width:960px){
  .page-disclaimer .agreement-body{
    grid-template-columns:var(--toc-w) minmax(0,1fr);
    align-items:start;
  }
  .page-disclaimer .agreement-toc{
    position:sticky;
    top:1.5rem;
  }
}
@media (max-width:560px){
  .page-disclaimer .agreement-meta{ padding:.9rem 1rem; }
  .page-disclaimer .meta-row dd{ text-align:left; }
  .page-disclaimer .agreement-banner{ padding:0 1.25rem; }
  .page-disclaimer .agreement-doc{ border-radius:var(--radius-m); }
  .page-disclaimer .clause-head{ gap:.6rem; }
}

@media print{
  .page-disclaimer .breadcrumb,
  .page-disclaimer .agreement-banner,
  .page-disclaimer .agreement-toc,
  .page-disclaimer .agreement-hero::after{ display:none; }
  .page-disclaimer .agreement-hero{ background:none; border-bottom:1px solid #ccc; }
  .page-disclaimer .agreement-hero h1,
  .page-disclaimer .agreement-hero .lede,
  .page-disclaimer .agreement-meta,
  .page-disclaimer .meta-row dt,
  .page-disclaimer .meta-row dd{ color:#111; }
  .page-disclaimer .agreement-meta{ background:none; border:1px solid #ddd; }
  .page-disclaimer .agreement-doc{ background:#fff; box-shadow:none; color:#111; padding:0; }
  .page-disclaimer .clause{ break-inside:avoid; border-top:1px solid #ddd; }
  .page-disclaimer .agreement-body{ display:block; }
  .page-disclaimer .agreement-note{ break-inside:avoid; background:none; border-left:3px solid #999; }
}
@media (prefers-reduced-motion:reduce){
  .page-disclaimer .toc-link{ transition:none; }
}
<<<END>>>
