/* ============================================================
   职盈学海 · 合规文档页样式
   适用：agreement / privacy / refund / ip-statement / disclaimer
   依赖：site.css（设计 Token）
   ============================================================ */

body.legal{
  margin:0;
  background:var(--surface-sunken);
  color:var(--text-body);
  font-family:var(--font-sans);
  font-size:var(--fs-body);
  line-height:var(--lh-normal);
  -webkit-font-smoothing:antialiased;
}
body.legal a{color:var(--blue-700)}
body.legal a:hover{color:var(--blue-800)}

/* ---- 顶部：面包屑 + 文档切换 ---- */
.legal-top{background:#fff;border-bottom:1px solid var(--border-subtle)}
.legal-top-in{
  display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;
  padding:var(--sp-4) 0;
}
.legal-crumb{font-size:var(--fs-sm);color:var(--text-muted)}
.legal-crumb a{color:var(--text-muted);text-decoration:none}
.legal-crumb a:hover{color:var(--blue-700)}
.legal-crumb span{margin:0 6px;color:var(--text-faint)}

.legal-tabs{
  display:flex;gap:var(--sp-2);flex-wrap:wrap;
  padding-bottom:var(--sp-4);
}
.legal-tab{
  display:inline-flex;align-items:center;
  min-height:36px;padding:0 var(--sp-4);
  border:1px solid var(--border-subtle);border-radius:var(--r-pill);
  background:#fff;color:var(--text-body);
  font-size:var(--fs-sm);text-decoration:none;
  transition:all var(--d-fast) var(--e-std);
}
.legal-tab:hover{border-color:var(--blue-400);color:var(--blue-700);text-decoration:none}
.legal-tab[aria-current="page"]{
  background:var(--blue-600);border-color:var(--blue-600);
  color:#fff;font-weight:600;
}

/* ---- 正文容器 ---- */
.legal-wrap{max-width:880px;margin:0 auto;padding:var(--sp-10) var(--sp-4) var(--sp-16)}
.legal-card{
  background:#fff;border:1px solid var(--border-subtle);border-radius:var(--r-lg);
  box-shadow:var(--e-2);padding:var(--sp-8) var(--sp-6);
}
@media(min-width:768px){ .legal-card{padding:var(--sp-12) var(--sp-12)} }

.legal-head h1{
  font-size:var(--fs-h2);font-weight:700;color:var(--text-title);
  letter-spacing:-.01em;margin:0 0 var(--sp-3);
}
.legal-head .legal-lead{
  font-size:var(--fs-lead);color:var(--gray-600);
  line-height:var(--lh-relaxed);margin:0 0 var(--sp-5);
}
.legal-meta{
  display:flex;gap:var(--sp-2) var(--sp-5);flex-wrap:wrap;
  font-size:var(--fs-xs);color:var(--text-muted);
  border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);
  padding:var(--sp-3) 0;margin-bottom:var(--sp-8);
}
.legal-meta b{color:var(--text-body);font-weight:600}

/* ---- 章节 ---- */
.legal-body h2{
  font-size:var(--fs-h3);font-weight:700;color:var(--text-title);
  margin:var(--sp-10) 0 var(--sp-4);padding-left:var(--sp-3);
  border-left:4px solid var(--blue-600);
}
.legal-body h2:first-child{margin-top:0}
.legal-body h3{
  font-size:var(--fs-h4);font-weight:600;color:var(--text-title);
  margin:var(--sp-6) 0 var(--sp-3);
}
.legal-body p{margin:0 0 var(--sp-4);line-height:var(--lh-relaxed)}
.legal-body ol,.legal-body ul{margin:0 0 var(--sp-4);padding-left:var(--sp-6)}
.legal-body li{margin-bottom:var(--sp-2);line-height:var(--lh-relaxed)}
.legal-body strong{color:var(--text-title);font-weight:600}

/* ---- 提示块 ---- */
.legal-callout{
  background:var(--blue-50);border:1px solid var(--blue-200);
  border-radius:var(--r-md);padding:var(--sp-4) var(--sp-5);
  margin:0 0 var(--sp-6);font-size:var(--fs-sm);line-height:var(--lh-relaxed);
}
.legal-callout.is-warn{background:var(--warning-bg);border-color:var(--warning-bd);color:var(--warning-fg)}
.legal-callout.is-warn strong{color:var(--warning-fg)}
.legal-callout p:last-child{margin-bottom:0}

/* ---- 关键信息表 ---- */
.legal-facts{
  width:100%;border-collapse:collapse;margin:0 0 var(--sp-6);
  font-size:var(--fs-sm);
}
.legal-facts th,.legal-facts td{
  border:1px solid var(--border-subtle);padding:var(--sp-3);
  text-align:left;vertical-align:top;line-height:var(--lh-normal);
}
.legal-facts th{
  background:var(--gray-50);color:var(--text-title);
  font-weight:600;white-space:nowrap;width:9.5em;
}

/* ---- 页脚 ---- */
.legal-foot{
  background:var(--surface-inverse);color:var(--text-inverse-muted);
  padding:var(--sp-10) 0;font-size:var(--fs-xs);line-height:var(--lh-relaxed);
}
.legal-foot .legal-foot-links{
  display:flex;gap:var(--sp-5);flex-wrap:wrap;justify-content:center;
  margin-bottom:var(--sp-5);
}
.legal-foot .legal-foot-links a{color:var(--text-inverse-muted)}
.legal-foot .legal-foot-links a:hover{color:#fff}
.legal-foot-note{
  border-top:1px solid rgba(255,255,255,.14);padding-top:var(--sp-5);text-align:center;
}
