/* web：问答驱动 — 窄栏正文 + 侧栏固定下载 */
body {
  margin: 0;
  background: #faf8fc;
  color: #2a2433;
  font-family: "Gill Sans", "Gill Sans MT", "PingFang SC", "Microsoft YaHei", sans-serif;
  line-height: 1.68;
}
.hdr {
  background: #3d2b56;
  color: #fff;
  padding: 10px 3vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}
.hdr strong a { color: #fff; text-decoration: none; font-size: 1.05rem; }
.hdr nav a {
  color: #e8dff5;
  text-decoration: none;
  margin-left: 16px;
  font-size: 0.92rem;
}
.hdr nav a.act { text-decoration: underline; text-underline-offset: 5px; font-weight: 700; }

.slim {
  background: #e8dff5;
  padding: 28px 3vw 24px;
}
.slim h1 {
  margin: 0 0 10px;
  font-size: 1.55rem;
  color: #3d2b56;
}
.slim p { margin: 0 0 14px; max-width: 50em; }
.slim .go {
  display: inline-block;
  background: #3d2b56;
  color: #fff;
  text-decoration: none;
  padding: 10px 18px;
  font-weight: 700;
}

.layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 28px;
  width: min(1040px, 94vw);
  margin: 28px auto 48px;
}
.ask {
  background: #fff;
  border: 1px solid #ddd4e8;
  margin-bottom: 18px;
  padding: 16px 18px 18px;
}
.ask h2 {
  margin: 0 0 10px;
  font-size: 1.12rem;
  color: #3d2b56;
  padding-left: 12px;
  border-left: 5px solid #7b5ea7;
}
.ask p { margin: 0 0 10px; }
.ask ul { margin: 0 0 10px 1.15em; }
.ask table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}
.ask th, .ask td { border: 1px solid #ddd4e8; padding: 7px 8px; }
.ask th { background: #3d2b56; color: #fff; }
.hazard { background: #fff5f3; border-color: #e2b8b2; }
.hazard h2 { border-left-color: #a33b3b; color: #7a2424; }
.side {
  position: sticky;
  top: 16px;
  align-self: start;
  background: #3d2b56;
  color: #f4eefc;
  padding: 16px 14px;
  font-size: 0.9rem;
}
.side h3 { margin: 0 0 10px; font-size: 1rem; }
.side a {
  display: block;
  color: #fff;
  background: #7b5ea7;
  text-decoration: none;
  padding: 8px 10px;
  margin: 6px 0;
  text-align: center;
}
.qa-item { margin-bottom: 14px; }
.qa-item h3 { margin: 0 0 6px; font-size: 1rem; color: #3d2b56; }
.qa-item p { margin: 0; color: #4a4354; }

.btm {
  background: #2a1d3a;
  color: #c9bdd6;
  padding: 24px 4vw 32px;
  font-size: 0.84rem;
}
.btm p { margin: 0 0 9px; }
.btm a { color: #d2b8f0; }

@media (max-width: 820px) {
  .layout { grid-template-columns: 1fr; }
  .side { position: static; }
}
