/* ===== 沐玄的小站 ===== */
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }

/* ---------- 首页（黑底拼贴墙） ---------- */
body.home-body {
  background: #000;
  color: #f0ede8;
  font-family: 'Noto Sans SC','PingFang SC','Microsoft YaHei',system-ui,sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }

.home-body .topbar {
  position: relative;
  text-align: center;
  padding: 36px 20px 24px;
}
.home-body .topline {
  font-family: 'Noto Serif SC','Songti SC','STSong',serif;
  font-size: 18px; font-weight: 600;
  color: #e8e4de;
  letter-spacing: 2px;
}
.home-body .hint {
  position: absolute;
  top: 40px;
  right: 24px;
  font-size: 11px;
  color: #666;
  letter-spacing: 1px;
}
.home-body .section { margin: 0 0 2px; }
.home-body .hotmap {
  position: relative;
  width: 100%;
  line-height: 0;
}
.home-body .hotmap img {
  width: 100%;
  height: auto;
  display: block;
}
.home-body .hotspot {
  position: absolute;
  display: block;
}
.home-body .hotspot:hover {
  background: rgba(255,255,255,.06);
}

/* ---------- 详情页（浅色底，第一版样式） ---------- */
body.detail-body {
  background: #f7f5f1;
  color: #1f1f1f;
  font-family: 'Noto Sans SC','PingFang SC','Microsoft YaHei',system-ui,sans-serif;
  font-size: 15px; line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}
.detail-body a { color: #3a5a8c; text-decoration: none; }
.detail-body a:hover { text-decoration: underline; }

.detail-body .topbar {
  background: rgba(247,245,241,.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid #e2ddd5;
  padding: 16px 32px;
  display: flex; justify-content: space-between; align-items: baseline;
  position: sticky; top: 0; z-index: 100;
}
.detail-body .brand {
  font-family: 'Noto Serif SC','Songti SC',serif;
  font-size: 17px; font-weight: 600; color: #1f1f1f;
}
.detail-body .brand:hover { text-decoration: none; }
.detail-body .dot { color: #3a5a8c; }
.detail-body nav a { color: #8a8580; font-size: 13px; }
.detail-body nav a:hover { color: #1f1f1f; text-decoration: none; }

.detail-body .detail-wrap {
  max-width: 1200px; margin: 0 auto; padding: 30px 32px 60px;
}
.detail-body .crumb { font-size: 13px; color: #8a8580; margin-bottom: 24px; }
.detail-body .crumb a { color: #8a8580; }
.detail-body .crumb a:hover { color: #3a5a8c; }
.detail-body .detail-title {
  font-family: 'Noto Serif SC',serif;
  font-size: 24px; margin-bottom: 8px;
  padding-bottom: 16px; border-bottom: 1px solid #e2ddd5;
}
.detail-body .doc-label {
  font-family: 'Noto Serif SC',serif;
  font-size: 17px; font-weight: 600; color: #1f1f1f;
  margin: 28px 0 10px;
}
.detail-body .doc-frame {
  width: 100%; height: 82vh;
  border: 1px solid #e2ddd5; border-radius: 4px;
  background: #fff;
}
.detail-body .doc-download { display: inline-block; font-size: 13px; color: #3a5a8c; margin: 10px 0 4px; }
.detail-body .video-link { font-size: 14px; margin: 8px 0 4px; }
.detail-body .video-wrap {
  width: 100%; border-radius: 6px; overflow: hidden;
  background: #000; margin-bottom: 8px;
}
.detail-body .video-wrap video,
.detail-body .video-wrap iframe { width: 100%; display: block; height: 500px; border: 0; }
.detail-body .gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px,1fr));
  gap: 12px;
}
.detail-body .gallery figure {
  background: #fff; border: 1px solid #e2ddd5;
  border-radius: 4px; overflow: hidden;
}
.detail-body .gallery img { width: 100%; display: block; }
.detail-body .gallery figcaption { font-size: 12px; color: #8a8580; padding: 8px 12px; }
.detail-body .gallery.gallery-large {
  grid-template-columns: 1fr;
  gap: 20px;
}
.detail-body .gallery.gallery-large figcaption { font-size: 13px; padding: 10px 14px; }
.detail-body footer {
  border-top: 1px solid #e2ddd5;
  padding: 24px 32px; text-align: center;
  font-size: 12px; color: #8a8580;
}

/* ---------- 响应式 ---------- */
@media (max-width: 768px) {
  .home-body .topbar { padding: 24px 16px 18px; }
  .home-body .topline { font-size: 14px; letter-spacing: 1px; }
  .home-body .hint { position: static; display: block; text-align: center; margin-top: 8px; right: auto; }
  .detail-body .topbar { padding: 12px 16px; }
  .detail-body .detail-wrap { padding: 20px 16px 40px; }
  .detail-body .doc-frame { height: 65vh; }
}

/* ---------- ICP备案号 ---------- */
.beian {
  display: block; text-align: center; padding: 16px 0 24px;
  font-size: 12px; letter-spacing: 0.5px; text-decoration: none;
}
.home-body .beian { color: #8a8a8a; }
.detail-body .beian { color: #6f6a64; }
