/* quiz.css（2026-07-23新規） — セクション末クイズ・キャップストーン課題
   QA指摘対応(HIGH: 小テスト・課題提出・添削・修了証のいずれも存在しない)。
   配色はbase.cssの既存トークンのみを使う（新規の色は追加しない）。 */

.quiz-block{padding:1.2em 1.3em 1.4em;margin-top:var(--space-3)}
.quiz-title{display:flex;align-items:center;gap:.6em;flex-wrap:wrap;margin-bottom:.3em}
.quiz-lead{font-size:.86rem;margin-bottom:1.1em}

.quiz-q{padding:1em 0;border-top:1px solid var(--color-border)}
.quiz-q:first-of-type{border-top:0;padding-top:0}
.quiz-q-text{margin-bottom:.7em}

.quiz-choices{display:flex;flex-direction:column;gap:.5em}
.quiz-choice{
  display:flex;align-items:flex-start;gap:.6em;padding:.6em .85em;
  border:1px solid var(--color-border);border-radius:var(--radius-sm);
  cursor:pointer;transition:background .15s,border-color .15s;font-size:.92rem;
}
.quiz-choice:hover{background:var(--color-bg-section)}
.quiz-choice input{margin-top:.25em;flex:none}
.quiz-choice span{flex:1}

.quiz-choice.is-correct-choice{border-color:var(--color-success);background:var(--color-success-bg)}
.quiz-choice.is-wrong-choice{border-color:var(--color-warning);background:var(--color-warning-bg)}

.quiz-explain{
  margin:.8em 0 0;padding:.8em 1em;background:var(--color-bg-section);
  border-left:3px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  font-size:.86rem;color:var(--color-text-muted);
}
.quiz-q.is-correct .quiz-explain{border-left-color:var(--color-success)}
.quiz-q.is-incorrect .quiz-explain{border-left-color:var(--color-warning)}

.quiz-actions{display:flex;align-items:center;gap:.8em;flex-wrap:wrap;margin-top:1.3em}
.quiz-result{font-size:.86rem;font-weight:700;color:var(--color-text-muted)}
.quiz-block.is-all-correct .quiz-result{color:var(--color-success)}
.quiz-passed-badge{margin-left:.3em}

/* ================= よくある質問（2026-07-25 AIOスコア引き上げP0-2追加）=================
   src/data/faqs/faqs-*.json 着地後のみ、クイズブロックの直後に描画される(render_faq_section_block()
   参照)。現時点では素材未着のため通常ビルドでは出現しない機構のみ実装(未着時はCSSも無効果)。 */
.faq-block{padding:1.2em 1.3em 1.3em;margin-top:var(--space-3)}
.faq-title{margin:0 0 .8em}
.faq-item{padding:.9em 0;border-top:1px solid var(--color-border)}
.faq-item:first-of-type{border-top:0;padding-top:0}
.faq-q{margin:0 0 .4em;font-weight:700}
.faq-a{margin:0;color:var(--color-text-muted);font-size:.92rem;line-height:1.7}

/* ================= レッスン単位クイズ+FAQ（2026-07-25 エンジン第3波C2新規）=================
   編/セクション末の.quiz-block(採点ボタン方式)とは別実装。.lq-choiceはクリック即時に
   正誤・解説を表示する(assets/js/lesson-quiz.js参照)。LESSON_QUIZZES_BY_LESSON_ID未着の
   レッスンではこれらのブロック自体が描画されないため、対応するCSSも無効果のまま温存される。 */
.lesson-quiz-block{padding:1.2em 1.3em 1.4em;margin-top:var(--space-3)}
.lesson-quiz-title{margin-bottom:.2em}
.lq-lead{font-size:.86rem;margin-bottom:1.1em}

.lq-item{padding:1em 0;border-top:1px solid var(--color-border)}
.lq-item:first-of-type{border-top:0;padding-top:0}
.lq-q{margin-bottom:.7em}

.lq-choices{display:flex;flex-direction:column;gap:.5em}
.lq-choice{
  display:block;width:100%;text-align:left;padding:.6em .85em;
  border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);
  cursor:pointer;transition:background .15s,border-color .15s;font-size:.92rem;color:var(--color-text);
}
.lq-choice:hover:not(:disabled){background:var(--color-bg-section)}
.lq-choice:disabled{cursor:default}
.lq-choice.is-correct-choice{border-color:var(--color-success);background:var(--color-success-bg)}
.lq-choice.is-wrong-choice{border-color:var(--color-warning);background:var(--color-warning-bg)}

.lq-explain{
  margin:.8em 0 0;padding:.8em 1em;background:var(--color-bg-section);
  border-left:3px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  font-size:.86rem;color:var(--color-text-muted);
}
.lq-item.is-correct .lq-explain{border-left-color:var(--color-success)}
.lq-item.is-incorrect .lq-explain{border-left-color:var(--color-warning)}

.lesson-faq-block{padding:1.2em 1.3em 1.3em;margin-top:var(--space-3)}
.lesson-faq-title{margin:0 0 .8em}
.lesson-faq-item{padding:.9em 0;border-top:1px solid var(--color-border)}
.lesson-faq-item:first-of-type{border-top:0;padding-top:0}
.lesson-faq-item summary{font-weight:700;cursor:pointer;list-style:revert}
.lesson-faq-a{margin:.5em 0 0;color:var(--color-text-muted);font-size:.92rem;line-height:1.7}

/* ================= キャップストーン課題（編VII末尾） ================= */
.capstone-block{padding:1.4em 1.5em 1.6em;margin-top:var(--space-4);border-color:var(--color-primary)}
.capstone-badge{
  display:inline-flex;align-items:center;font-size:.72rem;font-weight:800;letter-spacing:.02em;
  padding:.3em .7em;border-radius:var(--radius-pill);background:var(--color-primary);color:#fff;
}
.capstone-sections{margin:1em 0;padding-left:1.3em;display:flex;flex-direction:column;gap:.5em;font-size:.92rem}
.capstone-actions{display:flex;align-items:center;gap:1em;flex-wrap:wrap;margin-top:1.1em}
.capstone-actions .quiz-choice{flex:1;min-width:260px}
