/* Calm, optional motion; quiz grading and saved scores remain server-owned. */
.quiz-game-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.quiz-game-top .eyebrow{margin:0!important;font-size:11px!important;letter-spacing:.08em!important}.quiz-motion-control{font:600 12px/1.3 var(--sans);min-height:44px;border:1px solid var(--edge);border-radius:24px;padding:10px 14px;background:var(--surface);color:var(--text);cursor:pointer}.quiz-motion-control:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.quiz-path{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.quiz-path span{display:grid;place-items:center;border:1px solid var(--edge);border-radius:50%;width:30px;height:30px;font:650 12px var(--sans);color:var(--secondary);background:var(--surface)}.quiz-path .done{background:var(--selected);color:var(--accent);border-color:var(--accent)}.quiz-path .current{background:#edb939;color:#182944;border-color:#edb939;box-shadow:0 0 0 4px #edb93925}.quiz-game-card .quiz-option{transition:transform .15s,border-color .15s,background .15s;min-height:54px;box-sizing:border-box}.quiz-game-card .quiz-option:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.quiz-game-card .quiz-option:has(input:checked){box-shadow:inset 0 0 0 1px var(--accent)}.quiz-game-card .quiz-clock{font-size:13px;font-weight:500;color:var(--secondary);white-space:nowrap}.quiz-feedback{position:relative}.quiz-feedback-icon{display:inline-block;margin-right:8px;font-size:22px;color:var(--accent)}.quiz-feedback-success{animation:quiz-reveal .32s ease-out}.quiz-feedback-success .quiz-feedback-icon{animation:quiz-star .65s ease-out}.quiz-feedback-learn{background:var(--subtle);border-left:3px solid var(--edge)}.quiz-medal{display:grid;place-items:center;width:84px;height:84px;margin:12px auto 22px;background:#edb939;color:#182944;border:8px solid #ffe7a0;border-radius:50%;font-size:42px;box-shadow:0 8px 24px #edb93922;animation:quiz-star .65s ease-out}.quiz-earned-badge{display:inline-block;border:1px solid var(--edge);background:var(--selected);color:var(--accent);padding:8px 18px;border-radius:24px;font-weight:700}.quiz-result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0}.quiz-result-stats>div{border:1px solid var(--edge);border-radius:14px;padding:16px 8px;background:var(--surface)}.quiz-result-stats strong{display:block;font-size:clamp(24px,4vw,34px);color:var(--text)}.quiz-result-stats span{font-size:12px;color:var(--secondary)}.quiz-result-actions{justify-content:center;margin-top:20px}.quiz-game-result>p{font-size:14px;line-height:1.6;color:var(--secondary)}.quiz-game-result .quiz-earned-badge{color:var(--accent)}.quiz-end-invite{position:absolute;z-index:25;bottom:55px;left:50%;transform:translateX(-50%);width:min(420px,calc(100% - 24px));padding:20px;box-sizing:border-box;background:var(--surface);color:var(--text);border:1px solid var(--edge);border-radius:18px;box-shadow:0 8px 30px #0004;text-align:left}.quiz-end-invite p{font-size:14px;margin:8px 0 16px}.quiz-end-invite .btn{font-size:13px;min-height:44px}.quiz-end-invite .row{flex-wrap:wrap}.quiz-feedback [data-retry-action],[data-quiz-error] button{display:block;margin-top:12px}.quiz-viewport-header .btn{min-height:44px!important}.quiz-motion-off *{animation:none!important;transition:none!important}@keyframes quiz-reveal{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes quiz-star{0%{transform:scale(.8) rotate(-8deg)}60%{transform:scale(1.08) rotate(3deg)}100%{transform:none}}@media(prefers-reduced-motion:reduce){.quiz-feedback-success,.quiz-feedback-icon,.quiz-medal{animation:none!important}.quiz-game-card .quiz-option{transition:none}}@media(max-width:480px){.quiz-game-top{gap:8px}.quiz-motion-control{padding:8px 10px;font-size:11px}.quiz-result-stats{gap:6px}.quiz-result-stats strong{font-size:24px}.quiz-result-actions .btn{width:100%}.quiz-path{gap:6px}.quiz-path span{width:25px;height:25px}}
.quiz-time-note{font-size:12px!important;color:var(--secondary);margin:6px 0 0!important}.quiz-game-card .quiz-path{margin-top:12px}.quiz-game-card progress{margin:12px 0}@media(min-width:700px){.quiz-game-card fieldset{grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-game-card .quiz-option{min-width:0;overflow-wrap:anywhere}}

/* Graded answers must override the pre-submission selected state. */
.quiz-game-card .quiz-option.answer-wrong,
.quiz-game-card .quiz-option.answer-wrong:has(input:checked){border-color:#b93f46;background:#b93f461a;box-shadow:inset 0 0 0 1px #b93f46}
.quiz-game-card .quiz-option.answer-wrong input{accent-color:#b93f46}
.quiz-game-card .quiz-option.answer-correct,
.quiz-game-card .quiz-option.answer-correct:has(input:checked){border-color:#168568;background:#1685681a;box-shadow:inset 0 0 0 1px #168568}
/* Mobile practice owns the available lesson area and has one scrolling surface. */
@media(max-width:900px){
 .learning-layout:has(.quiz-active){overflow:hidden}
 .learning-screen:has(.quiz-active){position:relative;height:100%;padding:0;box-sizing:border-box;box-shadow:none}
 .learning-screen .player-stage.quiz-active,
 .learning-screen .player-stage.quiz-active:has(.portrait){height:100%;min-height:0;max-height:none;width:100%;aspect-ratio:auto}
 .learning-screen:has(.quiz-active) .player-status,
 .learning-layout:has(.quiz-active) .learning-description,
 .learning-layout:has(.quiz-active) .learning-sidebar{display:none}
}

/* Keep short practice rounds compact without reducing touch targets. */
.quiz-next-lesson{padding:12px;border:1px solid var(--edge);border-radius:12px;margin:12px 0;text-align:left;background:var(--selected)}
.quiz-next-lesson p{margin:5px 0 10px;font-size:13px}.quiz-next-lesson .row{flex-wrap:wrap}
.quiz-viewport-content .quiz-game-top{margin-bottom:10px}.quiz-viewport-content .quiz-card h2{margin:8px 0 14px}
.quiz-viewport-content .quiz-card fieldset{gap:8px;margin-bottom:12px}.quiz-viewport-content .quiz-option{padding:10px;min-height:46px}
.quiz-viewport-content .quiz-feedback{padding:12px;margin-bottom:12px}.quiz-viewport-content .quiz-feedback p{font-size:14px;line-height:1.45}
.quiz-viewport-content .quiz-medal{width:48px;height:48px;border-width:4px;font-size:28px;margin:8px auto}
.quiz-viewport-content .quiz-result-stats{margin:12px 0}.quiz-viewport-content .quiz-result-stats>div{padding:10px 6px}
