/* ===== 选型计算书 · 浅色工业风（与首页同色系） ===== */
:root{
  --bg:#f3f6fa;
  --paper:#ffffff;
  --ink:#16202e;
  --sub:#3d4d63;
  --dim:#637286;
  --line:#dfe7f1;
  --line2:#c9d7e7;
  --acc:#e2701a;
  --acc2:#b9540b;
  --acc-soft:rgba(226,112,26,.08);
  --hl:#c2430f;
  --hl-soft:#fff3ea;
  --ok:#0d8a5c;
  --mono:"Bahnschrift","DIN Alternate","Franklin Gothic Medium","Segoe UI",system-ui,-apple-system,"Microsoft YaHei",sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{overflow-x:hidden}
body{
  font-family:var(--mono);
  color:var(--ink);
  background:
    radial-gradient(1000px 460px at 88% -10%, rgba(226,112,26,.10), transparent 60%),
    radial-gradient(800px 420px at -8% 28%, rgba(27,127,166,.06), transparent 55%),
    var(--bg);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  padding:28px 18px 48px;
}
body::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(226,112,26,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(226,112,26,.04) 1px, transparent 1px);
  background-size:44px 44px;
  -webkit-mask-image:radial-gradient(ellipse 85% 65% at 50% 18%, #000 15%, transparent 75%);
  mask-image:radial-gradient(ellipse 85% 65% at 50% 18%, #000 15%, transparent 75%);
}
.page{position:relative;z-index:1;max-width:980px;margin:0 auto}

/* ---------- 动效 ---------- */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* ---------- 文档头 ---------- */
.doc-head{
  position:relative;overflow:hidden;
  background:linear-gradient(155deg,#111b2a 0%,#0b121c 58%,#0a1018 100%);
  border:1px solid #223349;
  border-radius:16px;padding:26px 30px 22px;color:#eef3f9;
  box-shadow:0 16px 40px rgba(6,12,20,.35), inset 0 1px 0 rgba(255,255,255,.05);
}
.doc-head::before{
  content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:repeating-linear-gradient(45deg,var(--acc) 0 10px,#171208 10px 20px);opacity:.9;
}
.doc-head::after{
  content:"";position:absolute;right:-110px;top:-130px;width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,138,61,.16), transparent 65%);pointer-events:none;
}
.dh-top{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}
.dh-company{font-size:14px;letter-spacing:2px;color:#ffcf9e;font-weight:700}
.dh-company small{display:block;font-size:9px;letter-spacing:1.6px;color:#7e8ba0;margin-top:3px;font-weight:400}
.dh-code{
  font-size:12px;color:#ffd9b3;letter-spacing:1px;border:1px solid rgba(255,138,61,.4);
  background:rgba(255,138,61,.08);border-radius:6px;padding:5px 12px;white-space:nowrap;
}
.doc-head h1{
  position:relative;z-index:1;font-size:29px;letter-spacing:2px;font-weight:800;margin-top:16px;
}
.doc-head h1 em{font-style:normal;background:linear-gradient(90deg,var(--acc),#ff9d4d);-webkit-background-clip:text;background-clip:text;color:transparent}
.dh-sub{position:relative;z-index:1;font-size:12.5px;color:#8fa1b8;margin-top:8px;letter-spacing:.6px}
.dh-meta{
  position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:16px;padding-top:14px;
  border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#a9b8ca;
}
.dh-meta b{color:#fff;font-weight:700;font-variant-numeric:tabular-nums;margin-left:6px}

/* ---------- 章节 ---------- */
.doc-body{
  background:var(--paper);border:1px solid var(--line);border-radius:16px;margin-top:16px;
  padding:30px 36px 26px;box-shadow:0 10px 28px rgba(21,42,63,.08);
}
section{margin-top:30px}
section:first-child{margin-top:0}
.sec-title{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.sec-idx{
  flex:none;font-size:12.5px;font-weight:800;color:var(--acc);letter-spacing:1px;
  border:1px solid rgba(226,112,26,.35);background:var(--acc-soft);border-radius:6px;padding:3px 9px;
}
.sec-title h2{font-size:19px;font-weight:800;letter-spacing:1px;color:var(--ink);white-space:nowrap}
.sec-title .line{flex:1;height:1px;background:linear-gradient(90deg,var(--line2),transparent)}

/* ---------- 轻量化表格 ---------- */
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
table{width:100%;border-collapse:collapse;font-size:15px;min-width:620px}
thead th{
  background:linear-gradient(180deg,#fdf3e8,#fbe7d3);color:var(--acc2);
  font-size:14px;font-weight:800;letter-spacing:.8px;text-align:left;
  padding:11px 14px;border-bottom:2px solid #eed9c2;white-space:nowrap;
}
tbody td{padding:10px 14px;border-bottom:1px solid var(--line);color:var(--sub);vertical-align:middle}
tbody tr:last-child td{border-bottom:none}
tbody tr:nth-child(even){background:#faf6f1}
tbody tr:hover{background:var(--acc-soft)}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
td.ctr,th.ctr{text-align:center}
.param-name{color:var(--ink);font-weight:700;white-space:nowrap}
.unit{color:var(--dim);font-size:13.5px;white-space:nowrap}
.result{color:var(--hl);font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.pass{
  display:inline-block;color:var(--ok);font-weight:700;font-size:13.5px;
  border:1px solid rgba(13,138,92,.35);background:rgba(13,138,92,.08);border-radius:5px;padding:1px 10px;
}

/* ---------- 重点结果卡 ---------- */
.hero-result{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;
  background:linear-gradient(135deg,#fff6ee,#ffeedd);border:1px solid #f3d4b8;border-radius:12px;
  padding:16px 20px;
}
.hero-result .lab{font-size:14.5px;color:#8a5a30;letter-spacing:.5px}
.hero-result .val{font-size:28px;font-weight:800;color:var(--hl);font-variant-numeric:tabular-nums;letter-spacing:.5px}
.hero-result .val small{font-size:14px;font-weight:700;color:#b0724a;margin-left:4px}

/* ---------- 文本与列表 ---------- */
p.note,li{color:var(--sub);font-size:15px}
ul.spec,ol.spec{margin:6px 0 0 4px;list-style:none}
ul.spec li{position:relative;padding:5px 0 5px 20px}
ul.spec li::before{
  content:"";position:absolute;left:2px;top:14px;width:7px;height:7px;border-radius:2px;
  background:linear-gradient(135deg,#ff9d4d,var(--acc2));transform:rotate(45deg);
}
ol.spec{counter-reset:item}
ol.spec li{position:relative;padding:6px 0 6px 34px;counter-increment:item}
ol.spec li::before{
  content:counter(item,decimal-leading-zero);position:absolute;left:0;top:7px;
  font-size:11px;font-weight:800;color:var(--acc);letter-spacing:.5px;
  border:1px solid rgba(226,112,26,.3);background:var(--acc-soft);border-radius:5px;padding:1px 5px;
}
.spec b,.spec strong{color:var(--ink)}
.hint{
  margin-top:12px;font-size:14px;color:var(--dim);background:#fdf6ee;border-left:3px solid var(--acc);
  border-radius:0 8px 8px 0;padding:10px 14px;line-height:1.7;
}

/* ---------- 页脚 ---------- */
.doc-foot{margin-top:16px;display:flex;flex-direction:column;gap:10px}
.foot-card{
  background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px 20px;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 14px;
  box-shadow:0 6px 18px rgba(21,42,63,.06);
}
.fl-label{font-size:13.5px;font-weight:800;color:var(--acc);letter-spacing:1px}
.foot-card a{
  font-size:13.5px;color:var(--sub);text-decoration:none;border:1px solid var(--line2);border-radius:999px;
  padding:4px 14px;transition:all .2s ease;background:#f7fafd;
}
.foot-card a:hover{color:var(--acc);border-color:var(--acc);box-shadow:0 0 10px rgba(226,112,26,.18)}
.foot-note{text-align:center;font-size:11.5px;color:var(--dim)}

/* ---------- 打印按钮 ---------- */
.print-btn{
  position:fixed;right:26px;bottom:26px;z-index:50;cursor:pointer;
  font-family:var(--mono);font-size:13px;font-weight:700;letter-spacing:1px;
  color:#fff;background:linear-gradient(135deg,#ff9d4d,var(--acc2));border:none;border-radius:999px;
  padding:12px 22px;box-shadow:0 10px 24px rgba(185,84,11,.35);
  display:flex;align-items:center;gap:8px;transition:transform .2s ease,box-shadow .2s ease;
}
.print-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(185,84,11,.45)}
.print-btn svg{width:16px;height:16px}

/* ---------- 响应式 ---------- */
@media(max-width:720px){
  body{padding:14px 10px 32px}
  .doc-head{padding:20px 18px 16px}
  .doc-head h1{font-size:20px;letter-spacing:1px}
  .dh-meta{gap:8px 16px;font-size:11.5px}
  .doc-body{padding:20px 16px}
  .sec-title h2{font-size:16px;white-space:normal}
  table{font-size:14px;min-width:560px}
  thead th,tbody td{padding:9px 10px}
  .hero-result .val{font-size:22px}
  .print-btn{right:14px;bottom:14px;padding:10px 18px}
}
@media(max-width:420px){
  .doc-head h1{font-size:17px;letter-spacing:0;white-space:normal;word-break:break-all}
  .dh-company{font-size:12px;letter-spacing:1px}
  .sec-title h2{font-size:15px}
}

/* ---------- 打印适配 ---------- */
@media print{
  @page{size:A4;margin:14mm 12mm}
  body{background:#fff;padding:0;font-size:12.5px}
  body::before,.print-btn{display:none !important}
  .page{max-width:none}
  .reveal{opacity:1 !important;transform:none !important;transition:none}
  .doc-head{
    border-radius:0;box-shadow:none;color:#111;background:#fff;border:none;
    border-bottom:3px solid #111b2a;padding:0 0 12px;
  }
  .doc-head::before,.doc-head::after{display:none}
  .doc-head h1{color:#111;font-size:20px}
  .doc-head h1 em{background:none;color:#b9540b;-webkit-text-fill-color:#b9540b}
  .dh-company,.dh-company small{color:#333}
  .dh-code{color:#b9540b;border-color:#d9b28c;background:none}
  .dh-sub,.dh-meta{color:#444}
  .dh-meta{border-top-color:#ccc}
  .dh-meta b{color:#000}
  .doc-body{border:none;border-radius:0;box-shadow:none;padding:0;margin-top:8px}
  section{margin-top:18px;page-break-inside:avoid}
  .sec-idx{color:#b9540b;border-color:#d9b28c;background:none}
  .tbl-wrap{overflow:visible;border-color:#bbb}
  table{min-width:0;font-size:12.5px}
  thead th{background:#fbe7d3 !important;color:#8a3f08;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  tbody tr:hover{background:none}
  .hero-result{background:#fdf3ea !important;border-color:#d9b28c;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .result{color:#b03a08}
  .pass{border-color:#7fbf9f;background:#eef7f2 !important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .hint{background:#f7f3ee !important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .foot-card{display:none}
  .foot-note{color:#666;margin-top:14px}
}
