/* ============================================================
   留资组件 LeadForm · 可复用样式（lf- 前缀隔离，避免与站点类名冲突）
   依赖宿主页的 CSS 变量：
     --bg --card --card2 --gold --goldl --goldd --bd --bdg --text --text2 --muted
   若宿主未定义，下方 :root 提供兜底（仍沿用深蓝/金色调）。
   ============================================================ */
:root{
  --lf-bg:#0b1d33; --lf-card:#16324e; --lf-card2:#12283f;
  --lf-gold:#c9a961; --lf-goldl:#e0c98f; --lf-goldd:rgba(201,169,97,.12);
  --lf-bd:rgba(255,255,255,.07); --lf-bdg:rgba(201,169,97,.28);
  --lf-text:#e8e6e3; --lf-text2:#dde1e7; --lf-muted:#a9b2bc;
  --lf-red:#f87171; --lf-green:#4ade80;
}
.lf-wrap{
  margin-top:22px;
  background:var(--lf-card,var(--card));
  border:1px solid var(--lf-bdg,var(--bdg));
  border-radius:14px;
  padding:22px 20px;
}
.lf-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:6px}
.lf-head .lf-ic{font-size:22px;line-height:1;flex:0 0 auto;margin-top:2px}
.lf-head h3{font-family:var(--serif,'Noto Serif SC',serif);font-size:17px;color:var(--lf-goldl,var(--goldl));line-height:1.5;margin:0}
.lf-sub{font-size:12.5px;color:var(--lf-muted,var(--muted));line-height:1.7;margin:0 0 16px;padding-left:34px}
.lf-sub b{color:var(--lf-goldl,var(--goldl))}
.lf-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
@media(max-width:560px){.lf-grid{grid-template-columns:1fr}}
.lf-field{display:flex;flex-direction:column;gap:6px}
.lf-field.full{grid-column:1 / -1}
.lf-label{font-size:12.5px;color:var(--lf-text2,var(--text2));display:flex;align-items:center;gap:6px}
.lf-req{color:var(--lf-red);font-weight:700}
.lf-opt{font-size:11px;color:var(--lf-muted,var(--muted));border:1px solid var(--lf-bd,var(--bd));border-radius:999px;padding:1px 8px}
.lf-input,.lf-select{
  width:100%;background:var(--lf-card2,var(--card2));
  border:1px solid var(--lf-bd,var(--bd));border-radius:9px;
  padding:11px 12px;font-size:14px;color:var(--lf-text,var(--text));
  font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s;
  appearance:none;-webkit-appearance:none;
}
.lf-select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' stroke='%23a9b2bc' stroke-width='1.6' fill='none' stroke-linecap='round'/></svg>");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
.lf-input::placeholder{color:var(--lf-muted,var(--muted));opacity:.7}
.lf-input:focus,.lf-select:focus{border-color:var(--lf-gold,var(--gold));box-shadow:0 0 0 3px var(--lf-goldd,var(--goldd))}
.lf-hint{font-size:11px;color:var(--lf-muted,var(--muted));line-height:1.5}
.lf-checks{display:flex;flex-wrap:wrap;gap:8px 18px}
.lf-check{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:var(--lf-text2,var(--text2));cursor:pointer;line-height:1.5;min-width:140px;flex:1 1 auto}
.lf-check input{margin-top:3px;width:15px;height:15px;accent-color:var(--lf-gold,var(--gold));flex:0 0 auto;cursor:pointer}
.lf-check a{color:var(--lf-gold,var(--gold));text-decoration:none;border-bottom:1px solid rgba(201,169,97,.4)}
.lf-check a:hover{color:var(--lf-goldl,var(--goldl))}
.lf-pit{background:var(--lf-card2,var(--card2));border:1px dashed var(--lf-bdg,var(--bdg));border-radius:9px;padding:10px 12px;font-size:12.5px;color:var(--lf-text2,var(--text2));line-height:1.6}
.lf-pit b{color:var(--lf-goldl,var(--goldl))}
.lf-submit{
  margin-top:16px;width:100%;border:none;cursor:pointer;
  background:var(--lf-gold,var(--gold));color:var(--lf-bg,#0b1d33);
  font-size:15px;font-weight:700;font-family:inherit;letter-spacing:.5px;
  border-radius:10px;padding:13px 16px;transition:background .15s,transform .05s;
}
.lf-submit:hover{background:var(--lf-goldl,var(--goldl))}
.lf-submit:active{transform:translateY(1px)}
.lf-submit:disabled{opacity:.6;cursor:not-allowed}
.lf-err{display:none;margin-top:10px;font-size:12.5px;color:var(--lf-red);text-align:center}
.lf-err.show{display:block}
.lf-note{margin-top:10px;font-size:11px;color:var(--lf-muted,var(--muted));text-align:center;line-height:1.6}
.lf-success{display:none;text-align:center;padding:8px 4px}
.lf-success.show{display:block}
.lf-success .lf-ok{font-size:34px;line-height:1;margin-bottom:10px}
.lf-success h4{font-family:var(--serif,'Noto Serif SC',serif);font-size:17px;color:var(--lf-goldl,var(--goldl));margin:0 0 8px}
.lf-success p{font-size:13px;color:var(--lf-text2,var(--text2));line-height:1.8;margin:0 0 6px}
.lf-success .lf-rel{font-size:12px;color:var(--lf-muted,var(--muted))}
