/* Final learning-workflow refinements; Vector's existing palette and type remain. */
:root { --supporting-copy-size: 13px; }
.helper, .compact-note, .stat-label, .course-context-picker label,
.confidence-labels, .more-menu small, .library-meta, .mini-title,
.quiz-list-copy small, .home-metrics span, .week-header > span,
.today-date, .section-title > span, .compact-disclosure, .badge {
  font-size: max(var(--supporting-copy-size), 0.8125rem);
}
#main :is(.helper, .compact-note, .stat-label, .confidence-labels, .mini-title,
  .library-meta, .compact-disclosure, .badge, .eyebrow, .inline-link, .text-button,
  .note, .course-grade, .course-meta, .today-date, .course-context-picker label,
  .home-shortcuts span, .home-metrics span, .week-header > span, .section-title > span,
  .unit-progress-row span, .unit-progress-row strong, .quiz-list-copy p,
  .quiz-list-action, .focus-top > span, .plan-step-copy p, .more-menu small, small) {
  font-size: 13px;
}
.bottom-nav a { font-size: 13px; }
.heading .course-pill { display: none; }
.course-context-picker { margin-bottom: 22px; gap: 10px; }
.course-context-picker select { min-width: 0; }
.waiting-review { display: flex; align-items: center; gap: 14px; padding: 17px 20px; margin: 0 0 22px; background: #fff5d9; color: #14233b; border: 1px solid #e8ddc6; border-radius: 15px; text-decoration: none; }
.waiting-review > svg { width: 22px; height: 22px; flex-shrink: 0; }
.waiting-review > span { flex: 1; }
.waiting-review strong, .waiting-review small { display: block; }
.waiting-review small { color: #536c7c; font-size: 13px; margin-top: 4px; line-height: 1.5; }
.compact-unit-lock { padding: 30px 24px; margin-bottom: 20px; }
.compact-unit-lock .btn { margin-top: 12px; }
.compact-unit-lock p { max-width: 48ch; margin-left: auto; margin-right: auto; }
.assignment-group { display: grid; gap: 12px; }
.assignment-group > h2 { margin: 0; }
.assignment .field:first-of-type { margin-top: 20px; }
.assignment .inline-link { display: inline-flex; align-items: center; gap: 8px; }
.assignment .inline-link svg { width: 17px; height: 17px; }
.assignment textarea[readonly] { background: #f4efe5; color: #536c7c; }
.tutor-feedback { border-left: 3px solid #766549; padding: 14px 18px; background: #fff5d9; border-radius: 0 12px 12px 0; margin: 16px 0; }
.tutor-feedback h3, .student-work h3 { font-size: 18px; margin: 0 0 7px; }
.tutor-feedback p:last-child, .student-work p:last-child { margin-bottom: 0; }
.selected-student-context { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; margin-bottom: 22px; }
.tutor-homework-heading { margin-top: 32px; }
.tutor-unit-card > .text-button { display: block; margin-top: 15px; }
.context-fields, .result-filters { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 20px 0; }
.context-fields > .field, .result-filters > .field { min-width: 0; }
.context-fields select, .result-filters select { min-width: 0; width: 100%; }
.checkin-practice { border: 0; padding: 0; margin: 0 0 23px; }
.result-history-card { margin-bottom: 24px; }
.repeat-history { border-top: 1px solid #e3ded4; padding: 16px 0; }
.repeat-history summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; cursor: pointer; list-style: none; }
.repeat-history summary::-webkit-details-marker { display: none; }
.repeat-history summary svg { width: 18px; height: 18px; flex-shrink: 0; transform: rotate(90deg); transition: transform .15s ease; }
.repeat-history[open] summary svg { transform: rotate(-90deg); }
.repeat-history summary strong { display: block; font-size: 15px; line-height: 1.5; }
.repeat-history small { display: block; color: #536c7c; font-size: 13px; line-height: 1.5; margin-top: 4px; }
.repeat-history ol { list-style: none; padding: 0; margin: 14px 0; }
.repeat-history li { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 12px 14px; background: #f4efe5; border-radius: 10px; margin-bottom: 8px; }
.repeat-history li > strong { font-size: 20px; font-family: Georgia, serif; white-space: nowrap; }
.sample-checker-progress { border-style: dashed; }
.progress-overview .stat-number { font-size: 30px; }
.answer-review summary:focus-visible, .repeat-history summary:focus-visible { outline: 3px solid #766549; outline-offset: 5px; border-radius: 5px; }
.quiz-feedback-summary { font-size: 13px; line-height: 1.7; color: #53636b; margin: 0 0 20px; }
.answer-review-copy { display: grid; gap: 6px; min-width: 0; }
.answer-review-label { display: block; color: #355a49; font-size: 11px; font-weight: 750; letter-spacing: .3px; }
.is-missed .answer-review-label { color: #79501c; }
.answer-review summary { align-items: flex-start; }
.answer-review-status { margin-top: 2px; }
.quiz-review .answer-review-body .helper { font-size: 11px; font-weight: 650; }
.quiz-review .answer-review-body .submitted-answer, .quiz-review .answer-review-body .correct-answer { font-size: 14px; line-height: 1.6; overflow-wrap: anywhere; }
.quiz-review .answer-explanation > strong { font-size: 11px; }
.quiz-review .answer-explanation p { margin: 5px 0 0; font-size: 13px; line-height: 1.7; }
@media (max-width: 560px) {
  .context-fields, .result-filters { grid-template-columns: 1fr; gap: 0; }
  .course-context-picker { flex-wrap: wrap; }
  .course-context-picker > label { width: auto; }
  .course-context-picker > select { flex: 1; max-width: 100%; }
  .waiting-review { padding: 15px; }
  .waiting-review strong { font-size: 14px; }
  .compact-unit-lock { padding: 26px 18px; }
  .result-actions { flex-wrap: wrap; }
  .result-actions > .btn { min-height: 44px; }
  .progress-overview .stat-number { font-size: 25px; }
}
@media (prefers-reduced-motion: reduce) { .repeat-history summary svg { transition: none; } }
@media (max-width: 359px) {
  .bottom-nav { gap: 3px; padding-inline: 8px; }
  .bottom-nav a { font-size: 11px; letter-spacing: 0; }
}

/* Assessment choices sit alongside the existing course and unit navigation. */
.assessment-navigation{display:flex;gap:6px;padding:5px;margin:4px 0 22px;border:1px solid var(--line,#dedbd3);border-radius:15px;background:#ebe8df}
.assessment-navigation button{flex:1;border:0;background:transparent;color:inherit;padding:12px 8px;border-radius:11px;font:700 .88rem 'Nunito Sans',sans-serif;cursor:pointer}
.assessment-navigation button.is-active{background:#fffdf8;box-shadow:0 1px 4px #242c3620}
.assessment-group{margin:28px 0}
.assessment-group>h2{margin-bottom:5px;font-size:1.5rem}
.assessment-group>.helper{margin:0 0 15px}
.assessment-setup h1{font-size:clamp(1.8rem,5vw,2.5rem);margin:8px 0 12px}
.assessment-setup>.eyebrow{margin-top:25px}
.assessment-setup>.btn{margin-top:12px}
.assessment-timing-options{border:0;padding:0;margin:25px 0}
.assessment-timing-options legend{font-weight:800;font-size:.95rem;margin-bottom:12px}
.assessment-timing-option{display:flex;align-items:center;gap:12px;border:1px solid #d6d6cc;border-radius:14px;background:#fffefa;padding:15px 14px;margin-bottom:10px;cursor:pointer}
.assessment-timing-option:has(input:checked){border-color:#456268;background:#eaf0ee;box-shadow:0 0 0 1px #456268}
.assessment-timing-option input{appearance:auto;width:19px;height:19px;min-width:19px;margin:0;accent-color:#38575f}
.assessment-timing-option span{display:grid;gap:4px}
.assessment-timing-option strong{font-size:.96rem}
.assessment-timing-option small{font-size:.82rem;line-height:1.4;color:#606765}
.unit-level-picker{margin:18px 0 22px;padding:16px;border:1px solid #d8ddd7;border-radius:16px;background:#f7faf7}
.unit-level-picker legend{padding:0 5px}
.unit-level-picker>.helper,.assessment-level-options>.helper{margin:0 0 13px;line-height:1.5}
.unit-level-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.unit-level-choices .assessment-timing-option{margin:0}
@media(max-width:540px){.unit-level-choices{grid-template-columns:1fr}}
.assessment-timer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;background:#e8eeeb;border:1px solid #d5ded7;padding:13px 16px;border-radius:14px;margin:0 0 22px}
.assessment-timer>span{font-weight:700;font-size:.84rem}
.assessment-timer strong{font-size:1.15rem;font-variant-numeric:tabular-nums}
.assessment-timer small{flex-basis:100%;font-size:.75rem;color:#555e5b}
.assessment-timer.is-short{background:#fff0cf;border-color:#ddc17b}
.assessment-result-time{border:1px solid #d7dfdb;border-radius:12px;padding:12px;background:#edf2ee;font-size:.88rem;line-height:1.5;margin:20px 0}
.assessment-question-jump{display:flex;flex-wrap:wrap;align-items:center;gap:9px 12px;margin-top:20px}
.assessment-question-jump label{margin:0;font-size:.8rem;flex-basis:100%}
.assessment-question-jump select{flex:1;min-width:150px;font-size:.9rem;padding:10px}
.assessment-question-jump .text-button{font-size:.85rem}
.question-progress{gap:3px}
.question-progress span{min-width:0}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#assessment-start-error{color:#8b403a;font-size:.9rem}
