.guide-lead { font-size: var(--text-sm); color: var(--text-secondary); line-height: 1.8; margin: 0 0 14px; }

.guide-toc { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 28px; }
.guide-toc a {
  display: inline-flex; align-items: center; gap: 7px;
  padding-block: 6px; padding-inline: 8px 13px; border-radius: 999px;
  background: var(--bg-surface); border: 1px solid var(--border-color);
  color: var(--text-primary); font-weight: 700; font-size: var(--text-sm);
  text-decoration: none; line-height: 1.4;
}
.guide-toc a:hover { border-color: var(--primary); color: var(--text-primary); }
.guide-toc__n {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 24px; height: 24px; padding: 0 6px; border-radius: 12px;
  background: var(--primary); color: #fff; font-size: 12px; font-weight: 800;
}

.guide-sec { margin: 0 0 30px; scroll-margin-top: 84px; }
.guide-shot {
  display: block; max-width: 720px; margin: 0 auto 14px;
  border-radius: 16px; overflow: hidden;
  border: 1px solid var(--border-color); box-shadow: 0 4px 18px rgba(0, 0, 0, .08);
  background: #F7F2EF;
}
.guide-shot img { display: block; width: 100%; height: auto; }
.guide-top { display: block; text-align: center; font-size: var(--text-sm); font-weight: 700; color: var(--primary-ink); margin: 4px 0 0; }

.gv { position: fixed; inset: 0; z-index: 10050; background: #0c0a09; }
.gv[hidden] { display: none; }
.gv-stage { position: absolute; inset: 0; overflow: hidden; touch-action: none; cursor: grab; }
.gv-stage:active { cursor: grabbing; }
.gv-img {
  position: absolute; inset-block-start: 0; max-width: none;
  transform-origin: 0 0; user-select: none; -webkit-user-drag: none;
}
.gv-bar {
  position: absolute; inset-inline: 0; margin-inline: auto; width: max-content;
  inset-block-end: calc(16px + env(safe-area-inset-bottom, 0px));
  display: flex; gap: 8px; padding: 6px; border-radius: 999px;
  background: var(--bg-surface); box-shadow: 0 6px 24px rgba(0, 0, 0, .35);
}
.gv-close {
  position: absolute; inset-block-start: calc(12px + env(safe-area-inset-top, 0px)); inset-inline-end: 12px;
  background: var(--bg-surface); box-shadow: 0 6px 24px rgba(0, 0, 0, .35);
}
.gv-lock, .gv-lock body { overflow: hidden; }
.guide-shot { cursor: zoom-in; }
