:root {
  --ink: #17312f;
  --muted: #5d6e69;
  --paper: #f5f4ef;
  --card: #fffefa;
  --accent: #187c70;
  --accent-soft: #dcece7;
  --gold: #bb8b3b;
  --line: #d8ddd8;
  --danger: #9b3f35;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--paper); }
body {
  margin: 0 auto;
  max-width: 1180px;
  padding: 56px 68px 96px;
  background: radial-gradient(circle at top right, #e4eee8 0, var(--paper) 28rem);
  color: var(--ink);
  font: 16px/1.72 -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
}
h1 { font-size: clamp(2.2rem, 5vw, 4.6rem); line-height: 1.04; letter-spacing: -.045em; margin: 0 0 1.4rem; max-width: 12ch; }
h2 { margin: 3.8rem 0 1.2rem; padding-top: 1rem; border-top: 1px solid var(--line); font-size: 1.75rem; letter-spacing: -.02em; }
h3 { margin: 2.3rem 0 .8rem; font-size: 1.18rem; color: var(--accent); }
p, li { max-width: 78ch; }
blockquote { margin: 2rem 0; padding: 1.25rem 1.45rem; border-left: 5px solid var(--accent); background: var(--accent-soft); font-size: 1.16rem; font-weight: 650; }
code { padding: .16rem .38rem; border-radius: 5px; background: #e9ece8; color: #244944; }
pre { padding: 1.2rem 1.4rem; overflow: auto; border: 1px solid var(--line); border-radius: 12px; background: #18322f; color: #edf4f1; }
pre code { padding: 0; background: transparent; color: inherit; }
table { width: 100%; margin: 1.35rem 0 2rem; border-collapse: separate; border-spacing: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: var(--card); font-size: .92rem; }
th { text-align: left; background: #1e4a45; color: white; font-weight: 650; }
th, td { padding: .78rem .82rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); vertical-align: top; }
tr:last-child td { border-bottom: 0; }
th:last-child, td:last-child { border-right: 0; }
tbody tr:nth-child(even) { background: #f7f8f4; }
a { color: var(--accent); text-underline-offset: 3px; }
strong { color: #102d29; }
hr { border: 0; border-top: 1px solid var(--line); margin: 3rem 0; }
body > p:first-of-type { color: var(--muted); }
body > ul:first-of-type { padding: 1rem 1.25rem 1rem 2.3rem; border: 1px solid var(--line); border-radius: 12px; background: var(--card); }
#title-block-header { margin: -56px -68px 38px; padding: 70px 68px 48px; background: linear-gradient(135deg, #123a35, #1c5d54); color: white; }
#title-block-header h1 { max-width: 14ch; margin: 0; color: white; }
#TOC { margin: 0 0 2.4rem; padding: 1.3rem 1.4rem 1.2rem; border: 1px solid var(--line); border-radius: 12px; background: rgba(255, 254, 250, .86); }
#TOC::before { display: block; margin-bottom: .65rem; color: var(--gold); content: "决策目录"; font-weight: 750; letter-spacing: .12em; }
#TOC ul { margin: 0; columns: 2; column-gap: 2.2rem; }
#TOC li { break-inside: avoid; }
@media (max-width: 760px) {
  body { padding: 32px 18px 70px; }
  #title-block-header { margin: -32px -18px 26px; padding: 48px 18px 34px; }
  #TOC ul { columns: 1; }
  h1 { max-width: none; }
  table { display: block; overflow-x: auto; white-space: normal; }
  th, td { min-width: 132px; }
}
@media print {
  body { max-width: none; padding: 20mm; background: white; color: black; }
  h2 { break-before: page; }
  table, blockquote, pre { break-inside: avoid; }
}
