/* ============================================================
   review-items.css — 考前複習：題目內容的共用樣式（integrate，1151101）
   1. 國語與題庫題（引擎 K1b 約定的 class）：tpr-stem、tpr-sentence、tpr-ruby、tpr-zy、tpr-blank、
      tpr-fill、tpr-word、tpr-line、tpr-opts、tpr-opt、tpr-opt--ans、tpr-tf、tpr-paren、tpr-ans。
      引擎已內嵌最基本的 inline style（空格寬度、底線、答案粗體），這裡補字級、注音位置與行距。
   2. 線上顯示（作答、結果、錯題本）不出卷面空格：直式題的結果列、直式除法的商、答案線。
   3. 「這題有問題」連結；作答專注模式不顯示右下回報浮鈕（會壓到下一題與鍵盤）。
   只用 --tp3-* 權杖（各帶 fallback）；不碰 tp-mk-*（數學符號與圖形仍由 math.css 負責）。
   ============================================================ */

/* ---------- 1. 國語與題庫題 ---------- */
.tpr-stem { margin: 0 0 8px; line-height: 1.8; }
.tpr-sentence { margin: 10px 0; font-size: 1.1em; line-height: 2.7; overflow-wrap: anywhere; }
ruby.tpr-ruby { ruby-position: over; ruby-align: center; }
rt.tpr-zy {
  font-family: var(--tp3-font-sans, "PingFang TC", "Microsoft JhengHei", sans-serif);
  font-size: 0.62em;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--tp3-ink-soft, #6E6558);
}
.tp-sheet rt.tpr-zy { font-size: 0.7em; }   /* 考卷上的注音再大一點，列印後仍看得清楚 */
.tpr-blank { vertical-align: baseline; }
.tpr-fill { padding: 0 0.15em; }
.tpr-word { margin: 6px 0; font-size: 1.6em; font-weight: 700; letter-spacing: 0.08em; line-height: 1.4; }
.tpr-line { margin: 8px 0; line-height: 2.2; }
.tpr-opts { margin-top: 8px; line-height: 2.2; }
.tpr-opts .tpr-opt { display: inline; padding: 0; border: 0; background: none; min-height: 0; font-size: inherit; white-space: nowrap; }
.tpr-opts .tpr-opt--ans { font-weight: 700; text-decoration: underline; }
.tpr-tf { display: flex; align-items: baseline; gap: 0.3em; line-height: 1.8; }
.tpr-paren { white-space: nowrap; }
.tpr-ans { margin-top: 6px; font-weight: 700; }

/* ---------- 2. 線上顯示不出卷面空格（作答、結果、錯題本） ---------- */
#answer-body .tp-q__ans, #answer-body .tp-mk-line, #answer-body .tp-mk-vcalc__result, #answer-body .tp-mk-longdiv__quotient,
#result-body .tp-q__ans, #result-body .tp-mk-line, #result-body .tp-mk-vcalc__result, #result-body .tp-mk-longdiv__quotient,
#tpm-list .tp-q__ans, #tpm-list .tp-mk-line, #tpm-list .tp-mk-vcalc__result, #tpm-list .tp-mk-longdiv__quotient {
  display: none !important;
}

/* ---------- 3. 回報 ---------- */
.tpr-reportlink {
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  margin-top: 4px;
  padding: 0 4px;
  border: 0;
  background: none;
  color: var(--tp3-link, #5B7183);
  font: inherit;
  font-size: 15px;
  text-decoration: underline;
  text-underline-offset: 0.18em;
  cursor: pointer;
}
.tpr-reportlink:hover { color: var(--tp3-primary, #A94A3C); }
.tpr-reportlink:focus-visible { outline: 3px solid var(--tp3-focus, #A94A3C); outline-offset: 2px; }
body.tpr-focus .tpr-fab { display: none !important; }
@media (max-width: 599px) and (max-height: 720px) {
  #step-answer .tpr-reportlink--q { display: none; }   /* 矮手機沒有多餘高度；結果頁每題都有 */
}
@media print { .tpr-reportlink { display: none !important; } }

/* ---------- 4. 保險：填空格寬度上限 ----------
   單元若傳了離譜的 width（g6-prime-factorization 的 `width: 190` 會變成 190em 寬），整張考卷會被撐寬，
   列印時瀏覽器縮成一小塊。單元的錯是另一條工作流的（已回報），這裡只防止它波及考卷與作答頁。 */
.tp-sheet .tp-mk-blank[style*="--cols"],
.tpr-q__prompt .tp-mk-blank[style*="--cols"],
.tpr-resultitem .tp-mk-blank[style*="--cols"] { max-width: 16em; }
