/* ==========================================================================
   tools/forgetting-review.css — 遗忘曲线复习排程
   ========================================================================== */

.fr-main { max-width: 860px; }

/* ---- 通用板块 ---- */
.fr-sec { padding: 1.6rem 1.8rem; margin-bottom: 1.4rem; }
.fr-sub { display: flex; align-items: center; gap: 0.6rem; font-size: 1.05rem; margin: 0 0 0.5rem; }
.fr-no {
  font-size: 0.72rem; font-weight: 700; color: var(--life, #2f7d5d);
  border: 1px solid currentColor; border-radius: 999px; padding: 0.05rem 0.55rem;
}
.fr-sec-lead { font-size: 0.9rem; color: var(--muted, #667); margin: 0 0 1rem; }
.fr-count { font-size: 0.85rem; color: var(--muted, #667); margin: 0 0 0.7rem; }
.fr-hint { font-size: 0.85rem; color: #b3541e; margin: 0.6rem 0 0; min-height: 1.2em; }

/* ---- 添加表单 ---- */
.fr-form { display: flex; flex-wrap: wrap; gap: 0.6rem; }
.fr-form input {
  flex: 1 1 220px; padding: 0.6rem 0.8rem; font-size: 0.92rem;
  border: 1px solid rgba(0,0,0,0.14); border-radius: 8px; background: #fff; color: inherit;
}
.fr-form input:focus { outline: 2px solid var(--life, #2f7d5d); outline-offset: 1px; }
.fr-addbtn { flex: 0 0 auto; white-space: nowrap; }

/* ---- 复习队列 ---- */
.fr-group {
  font-size: 0.78rem; font-weight: 700; letter-spacing: 0.06em;
  color: var(--muted, #667); margin: 1rem 0 0.45rem;
  text-transform: uppercase;
}
.fr-row {
  border: 1px solid rgba(0,0,0,0.08); border-left: 3px solid rgba(0,0,0,0.12);
  border-radius: 8px; padding: 0.55rem 0.8rem; margin-bottom: 0.45rem; background: #fff;
}
.fr-row.now { border-left-color: #2f7d5d; background: rgba(47,125,93,0.05); }
.fr-row.late { border-left-color: #b3541e; background: rgba(179,84,30,0.06); }
.fr-row-head { display: flex; align-items: center; flex-wrap: wrap; gap: 0.45rem; }
.fr-row-text { font-weight: 600; font-size: 0.92rem; }
.fr-round { font-size: 0.78rem; color: var(--muted, #667); }
.fr-cattag {
  font-size: 0.72rem; color: var(--life, #2f7d5d);
  border: 1px solid currentColor; border-radius: 999px; padding: 0.02rem 0.5rem;
}
.fr-badge {
  font-size: 0.72rem; font-weight: 700; color: #fff;
  background: #2f7d5d; border-radius: 999px; padding: 0.06rem 0.5rem;
}
.fr-overdue { font-size: 0.72rem; font-weight: 700; color: #b3541e; }
.fr-donebtn {
  margin-left: auto; font-size: 0.78rem; cursor: pointer;
  border: 1px solid var(--life, #2f7d5d); color: var(--life, #2f7d5d);
  background: #fff; border-radius: 999px; padding: 0.18rem 0.7rem;
}
.fr-donebtn:hover { background: var(--life, #2f7d5d); color: #fff; }
.fr-empty { font-size: 0.88rem; color: var(--muted, #667); margin: 0.5rem 0; }
.fr-pace-note { font-size: 0.85rem; color: var(--muted, #667); margin: 0 0 0.6rem; }

/* ---- 知识点列表 ---- */
.fr-item {
  border: 1px solid rgba(0,0,0,0.08); border-radius: 8px;
  padding: 0.6rem 0.8rem; margin-bottom: 0.5rem; background: #fff;
}
.fr-item.done { opacity: 0.72; }
.fr-item-head { display: flex; align-items: center; flex-wrap: wrap; gap: 0.45rem; }
.fr-item-text { font-weight: 600; font-size: 0.92rem; }
.fr-delbtn {
  margin-left: auto; border: 0; background: none; cursor: pointer;
  color: var(--muted, #667); font-size: 0.85rem; padding: 0.1rem 0.3rem;
}
.fr-delbtn:hover { color: #b3541e; }
.fr-item-meta {
  display: flex; align-items: center; flex-wrap: wrap; gap: 0.6rem;
  margin-top: 0.4rem; font-size: 0.78rem; color: var(--muted, #667);
}
.fr-dots { display: inline-flex; gap: 0.25rem; }
.fr-dots i {
  width: 9px; height: 9px; border-radius: 50%;
  border: 1px solid rgba(0,0,0,0.25); background: transparent;
}
.fr-dots i.on { background: #2f7d5d; border-color: #2f7d5d; }
.fr-cleared { color: #2f7d5d; font-weight: 700; }

/* ---- 底部操作 ---- */
.fr-actions { display: flex; gap: 0.8rem; flex-wrap: wrap; margin: 1.4rem 0 0.8rem; }
.fr-privacy { font-size: 0.78rem; color: var(--muted, #667); margin-bottom: 1.6rem; }

/* ---- hero 不换行（与各工具页惯例一致） ---- */
.page-hero .lead {
  white-space: nowrap;
  max-width: none;
  font-size: clamp(0.7rem, 1.9vw, 1.05rem);
}

/* ---- 使用建议区微调 ---- */
.fr-usage .card h3 { font-size: 1.02rem; }

@media (max-width: 640px) {
  .fr-sec { padding: 1.2rem 1rem; }
  .fr-donebtn { margin-left: 0; }
}

/* 窄屏允许 lead 换行：单行 nowrap 在移动端会横向溢出（2026-09-22 全站视觉打磨） */
@media (max-width: 680px) {
  .page-hero .lead,
  .lead { white-space: normal; }
}

/* 队列行「讲不清？」按钮（2026-11-05） */
.fr-row-head .tl-link { flex: 0 0 auto; }
@media (max-width: 620px) {
  .fr-row-head .tl-link { order: 5; }
}
