/* 筆記頁段落書籤 — 樣式
   .bm-toggle  標題旁的收藏掣（低調，hover / 已收藏才明顯）
   .bm-flash   由書籤庫跳入時短暫高亮
   .bm-fab     右下 floating 掣，顯示呢科收藏總數 */

.bm-anchor { position: relative; scroll-margin-top: 76px; }

.bm-toggle {
  display: inline-flex; align-items: center; justify-content: center;
  width: 22px; height: 22px; margin-left: 8px;
  vertical-align: middle; cursor: pointer;
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: 13px; line-height: 1;
  border-radius: 999px;
  background: transparent;
  border: 1px solid var(--border, rgba(0, 0, 0, .12));
  color: var(--ink-3, #6D6358);
  opacity: .38;
  transition: opacity .16s, background .16s, border-color .16s, color .16s;
  -webkit-tap-highlight-color: transparent;
}
.bm-anchor:hover .bm-toggle,
.bm-toggle:focus { opacity: 1; }

.bm-toggle.is-on {
  opacity: 1;
  background: var(--accent, #A83E2E);
  border-color: var(--accent, #A83E2E);
  color: #fff;
}

.bm-flash {
  animation: bm-flash 2.2s ease-out 1;
  border-radius: 4px;
}
@keyframes bm-flash {
  0%   { background: rgba(239, 159, 39, .28); }
  70%  { background: rgba(239, 159, 39, .16); }
  100% { background: transparent; }
}
@media (prefers-reduced-motion: reduce) {
  .bm-flash { animation: none; }
}

.bm-fab {
  position: fixed; right: 18px; bottom: 18px; z-index: 60;
  padding: 9px 15px; border-radius: 999px;
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: 12.5px; letter-spacing: .03em;
  text-decoration: none;
  background: var(--paper-2, #F4EEE3);
  border: 1px solid var(--border, rgba(0, 0, 0, .12));
  color: var(--ink-2, #4A4239);
  box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
  transition: background .16s, border-color .16s, color .16s, transform .16s;
}
.bm-fab:hover { transform: translateY(-1px); border-color: var(--accent, #A83E2E); }
.bm-fab.has-item {
  background: var(--accent, #A83E2E);
  border-color: var(--accent, #A83E2E);
  color: #fff;
}

@media print {
  .bm-toggle, .bm-fab { display: none !important; }
}
