/* misc.css —— 跨页过渡、Toast、阅读进度条、返回顶部、跳转链接、打印。 */

/* ==========================================================================
   跨页过渡
   --------------------------------------------------------------------------
   同源文档间导航交给浏览器做：旧页在新页准备好之前保持可见，
   因此不再有「白屏一闪」。支持的浏览器自动生效，不支持的按原样跳转。
   ========================================================================== */

@view-transition { navigation: auto; }

::view-transition-old(root),
::view-transition-new(root) { animation-duration: .28s; }

/* ==========================================================================
   其他
   ========================================================================== */

.foot {
  margin-top: 64px;
  padding-top: 20px;
  border-top: 1px solid var(--rule);
  font-size: .74rem;
  color: var(--ink-3);
  line-height: 1.9;
}
.foot kbd {
  font: inherit;
  font-size: .95em;
  border: 1px solid var(--rule);
  border-bottom-width: 2px;
  border-radius: 3px;
  padding: 0 4px;
  color: var(--ink-2);
}

.toast {
  position: fixed;
  left: 50%;
  bottom: 30px;
  transform: translate(-50%, 10px);
  background: var(--ink);
  color: var(--paper);
  font-size: .82rem;
  padding: 10px 20px;
  border-radius: 3px;
  max-width: 86vw;
  text-align: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .22s var(--ease), transform .22s var(--ease), visibility .22s var(--ease);
  z-index: 120;
}
.toast.show { opacity: 1; visibility: visible; transform: translate(-50%, 0); }

.skip {
  position: absolute;
  left: -9999px;
}
.skip:focus {
  left: var(--gut);
  top: 10px;
  z-index: 200;
  background: var(--ink);
  color: var(--paper);
  padding: 8px 14px;
  border-radius: 3px;
  font-size: .82rem;
}

/* ── 调试模式 ────────────────────────────────────────
   按 \ 切换。给每个 [data-module] 描边并标出模块名，
   用于「对网页某部分截图 → 定位到具体文件」。 */

.nh-debug [data-module] {
  outline: 1px dashed rgba(190, 40, 40, .55);
  outline-offset: -1px;
  position: relative;
}

.nh-debug [data-module]::before {
  content: attr(data-module);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 998;
  background: rgba(190, 40, 40, .88);
  color: #fff;
  font: 10px/1.5 ui-monospace, Consolas, monospace;
  letter-spacing: .02em;
  padding: 0 5px;
  border-radius: 0 0 3px 0;
  pointer-events: none;
  white-space: nowrap;
}

.nh-debug-tip {
  position: fixed;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  z-index: 999;
  background: rgba(190, 40, 40, .92);
  color: #fff;
  font-size: .74rem;
  padding: 7px 14px;
  border-radius: 4px;
  max-width: 92vw;
  text-align: center;
  pointer-events: none;
}
