/* ADR-0316: 問題を1問ずつ見て回る表示。左に一覧、右に受験者と同じ見え方のカード。 */
.question-browse-toolbar { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: flex-end; margin: 8px 0; }
.question-browse-toolbar label { min-width: 0; }
.question-browse-toolbar select, .question-browse-toolbar input { max-width: 100%; }
.question-browse { display: grid; grid-template-columns: minmax(280px, 380px) minmax(0, 1fr); gap: 16px; align-items: start; }
.question-browse-list { position: sticky; top: 8px; max-height: calc(100vh - 32px); overflow-y: auto; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); padding: 8px; min-width: 0; }
.question-browse-index { list-style: none; margin: 0; padding: 0; }
.question-browse-index li { display: grid; gap: 2px; padding: 6px 8px; border-left: 3px solid transparent; border-radius: 4px; }
.question-browse-index li.is-current { background: #e6fffb; border-left-color: var(--accent); }
.question-browse-index li.status-confirmed { border-left-color: #16a34a; }
.question-browse-index li.status-needs-fix { border-left-color: #dc2626; }
.question-browse-index li.is-current.status-confirmed, .question-browse-index li.is-current.status-needs-fix { background: #e6fffb; }
.question-browse-index button { text-align: left; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; padding: 0; line-height: 1.45; max-height: 2.9em; white-space: normal; }
.question-browse-viewer { min-width: 0; overflow-wrap: anywhere; }
.question-browse-nav { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; margin-bottom: 12px; }
.question-browse-nav [data-review-position], .question-browse-nav [data-browse-position] { font-weight: 700; min-width: 5em; text-align: center; }
.question-browse-viewer .task-card-head { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.question-browse-viewer .task-card-head h3 { flex-basis: 100%; margin: 6px 0 0; }
/* 見て回る画面は回答しない。選択肢は読むだけで、正解だけを色と文字で示す。 */
.question-browse-choice .choice-label { cursor: default; }
.question-browse-choice .choice-label:hover { border-color: var(--line); background: var(--panel); }
.question-browse-choice .choice-label.is-correct, .question-browse-choice .choice-label.is-correct:hover { border-color: #16a34a; background: #f0fdf4; }
.question-browse-correct { color: #15803d; margin-left: auto; white-space: nowrap; }
.question-browse-explanation, .question-browse-rubric, .question-browse-materials-block, .question-browse-key { max-width: 760px; margin-top: 16px; }
.question-browse-explanation p { line-height: 1.7; }
.question-browse-materials { padding-left: 1.2em; }
.question-browse-materials li { margin: 4px 0; }
.question-browse-review { max-width: 760px; margin-top: 16px; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); }
.question-browse-more { margin-top: 16px; }
.question-browse-tabs { display: flex; gap: 8px; margin: 8px 0; }
.question-browse-tabs button[aria-selected="true"] { background: var(--accent); color: #fff; border-color: var(--accent); }
.question-browse.is-list-collapsed { grid-template-columns: minmax(0, 1fr); }
.question-browse.is-list-collapsed .question-browse-list { display: none; }
.question-browse-key { max-width: none; }
.question-browse-key-scroll { overflow-x: auto; max-width: 100%; }
.question-browse-key-table { border-collapse: collapse; width: 100%; font-size: 14px; line-height: 1.55; }
.question-browse-key-table th, .question-browse-key-table td { border: 1px solid var(--line); padding: 6px 8px; text-align: left; vertical-align: top; }
.question-browse-key-table th { background: var(--panel-2); white-space: nowrap; }
.question-browse-key-table td.num { text-align: right; white-space: nowrap; }
.question-browse-key-table td:nth-child(2) { font-weight: 700; }
.question-browse-key-table td:nth-child(4) { white-space: nowrap; }
.question-browse-key-table.is-small { width: auto; font-size: 13px; }
.question-browse-key-json { margin-top: 8px; }
@media (max-width: 860px) {
  .question-browse { grid-template-columns: 1fr; }
  .question-browse-list { position: static; max-height: 240px; }
}
