/* ===== VetMate 法律與隱私中心：Apple 風 · 統一字級系統 ===== */
:root{
  --fs-hero: 27px;   /* 頁面主標 */
  --fs-sec: 20px;    /* 區塊標題 */
  --fs-sub: 16px;    /* 內文主條 (##) */
  --fs-subsub: 15px; /* 內文子項 (###) */
  --fs-body: 15px;   /* 內文/摘要/清單 (固定) */
  --fs-small: 13px;  /* 註腳/meta */
  --lc-bg: #ffffff;
  --lc-tint: #f4f7f7;
  --lc-tint2: #eef4f4;
  --lc-line: #e6e9ec;
  --lc-ink: #1f2933;
  --lc-soft: #5b6670;
}
body{ display:block; background:var(--lc-bg); color:var(--lc-ink);
  font-family:-apple-system,"Segoe UI","Noto Sans TC",sans-serif;
  -webkit-font-smoothing:antialiased; line-height:1.7; }

/* ---- Hero ---- */
.lc-hero{ max-width:1040px; margin:0 auto; padding:46px 24px 8px; }
.lc-logo{ font-size:15px; font-weight:700; color:var(--accent); letter-spacing:.3px; }
.lc-hero h1{ font-size:var(--fs-hero); font-weight:700; margin:8px 0 8px; letter-spacing:-.2px; }
.lc-hero .lc-lead{ font-size:var(--fs-body); color:var(--lc-soft); margin:0 0 12px; max-width:640px; }
.lc-meta{ font-size:var(--fs-small); color:var(--lc-soft); }
.lc-draft{ display:flex; gap:9px; align-items:flex-start; margin:16px 0 0; padding:12px 15px;
  background:#fff7ed; border:1px solid #fde0bf; border-radius:12px;
  font-size:var(--fs-small); color:#9a3412; line-height:1.6; max-width:720px; }

/* ---- 信任摘要列 ---- */
.lc-trust{ max-width:1040px; margin:24px auto 8px; padding:0 24px;
  display:flex; flex-wrap:wrap; gap:8px; }
.lc-trust li{ list-style:none; display:flex; align-items:center; gap:7px;
  background:var(--lc-tint); border:1px solid var(--lc-line); border-radius:999px;
  padding:7px 13px; font-size:var(--fs-small); color:var(--lc-ink); }
.lc-trust .ck{ color:var(--accent); font-weight:700; }
.lc-trust ul{ margin:0; padding:0; }

/* ---- 版型：側邊導覽 + 內容 ---- */
.lc-layout{ max-width:1040px; margin:14px auto 0; padding:0 24px 100px;
  display:grid; grid-template-columns:228px 1fr; gap:52px; align-items:start; }
.lc-nav{ position:sticky; top:22px; align-self:start; }
.lc-nav .nav-title{ font-size:var(--fs-small); font-weight:700; color:var(--lc-soft);
  text-transform:uppercase; letter-spacing:.6px; margin:0 0 10px 12px; }
.lc-nav a{ display:block; padding:8px 12px; margin:2px 0; border-radius:9px;
  font-size:var(--fs-body); color:var(--lc-soft); text-decoration:none;
  border-left:2px solid transparent; transition:background .15s,color .15s; }
.lc-nav a:hover{ background:var(--lc-tint); color:var(--lc-ink); }
.lc-nav a.active{ background:var(--lc-tint2); color:var(--accent-d); font-weight:600; }

.lc-content{ min-width:0; max-width:684px; }
.lc-content .loading{ color:var(--lc-soft); font-size:var(--fs-body); }

/* ---- 區塊 ---- */
.legal-section{ scroll-margin-top:22px; padding:30px 0 8px; border-top:1px solid var(--lc-line); }
.legal-section:first-child{ border-top:0; padding-top:6px; }
.sec-title{ font-size:var(--fs-sec); font-weight:700; margin:0 0 14px; letter-spacing:-.2px; }
.sec-summary{ background:var(--lc-tint); border:1px solid var(--lc-line); border-radius:14px;
  padding:15px 18px; margin:0 0 22px; }
.sec-summary p{ margin:0; font-size:var(--fs-body); color:#39434d; line-height:1.65; }
.sec-summary p + p{ margin-top:8px; }

/* ---- 內文（統一字級，不忽大忽小）---- */
.sec-body{ font-size:var(--fs-body); color:#33404a; }
.sec-body h2{ font-size:var(--fs-sub); font-weight:700; color:var(--lc-ink); margin:24px 0 8px; }
.sec-body h3{ font-size:var(--fs-subsub); font-weight:700; color:var(--lc-ink); margin:18px 0 6px; }
.sec-body h4{ font-size:var(--fs-body); font-weight:600; color:var(--lc-soft); margin:14px 0 4px; }
.sec-body p{ font-size:var(--fs-body); margin:8px 0; line-height:1.75; }
.sec-body ul,.sec-body ol{ margin:8px 0; padding-left:22px; }
.sec-body li{ font-size:var(--fs-body); margin:5px 0; line-height:1.7; }
.sec-body strong{ color:var(--lc-ink); }
.sec-body a{ color:var(--accent); }
.sec-body code{ background:var(--lc-tint2); border-radius:5px; padding:1px 6px; font-size:13.5px; }
.sec-body hr{ border:0; border-top:1px solid var(--lc-line); margin:18px 0; }
.sec-body blockquote{ margin:12px 0; padding:12px 16px; background:var(--lc-tint);
  border-left:3px solid var(--accent); border-radius:0 10px 10px 0;
  font-size:var(--fs-body); color:#3a4650; line-height:1.7; }
.sec-body blockquote strong{ color:var(--accent-d); }
.sec-body table{ border-collapse:collapse; width:100%; margin:14px 0; font-size:14px; }
.sec-body th,.sec-body td{ border:1px solid var(--lc-line); padding:9px 11px; text-align:left; vertical-align:top; line-height:1.55; }
.sec-body th{ background:var(--lc-tint2); font-weight:600; }

/* ---- footer ---- */
.lc-foot{ max-width:1040px; margin:0 auto; padding:26px 24px 60px;
  border-top:1px solid var(--lc-line); font-size:var(--fs-small); color:var(--lc-soft); line-height:1.7; }
.lc-foot a{ color:var(--accent); text-decoration:none; }
.lc-foot a:hover{ text-decoration:underline; }

/* ---- 行動裝置 ---- */
@media (max-width:860px){
  .lc-layout{ grid-template-columns:1fr; gap:0; }
  .lc-nav{ position:sticky; top:0; z-index:5; margin:0 -24px 14px; padding:10px 18px;
    background:rgba(255,255,255,.92); backdrop-filter:saturate(180%) blur(12px);
    border-bottom:1px solid var(--lc-line); }
  .lc-nav .nav-title{ display:none; }
  .lc-nav .nav-links{ display:flex; gap:6px; overflow-x:auto; -webkit-overflow-scrolling:touch; padding-bottom:2px; }
  .lc-nav a{ flex:0 0 auto; white-space:nowrap; border-left:0; padding:7px 13px;
    border:1px solid var(--lc-line); border-radius:999px; margin:0; font-size:var(--fs-small); }
  .lc-nav a.active{ background:var(--accent); color:#fff; border-color:var(--accent); }
  .lc-content{ max-width:none; }
  .lc-hero{ padding-top:34px; }
}
