/* Focused quiz layout; game state, scores and form contracts remain unchanged. */
.activity-heading { margin:0 0 20px;max-width:760px }
.activity-heading h1 { margin:0 0 8px;font:600 clamp(28px,4vw,36px)/1.2 Georgia,serif;color:#153c30 }
.activity-heading p { margin:0;color:#53655b;font-size:16px;line-height:1.6 }
.quiz-home-grid,.quiz-room-entry-grid { grid-template-columns:repeat(2,minmax(0,1fr)) }
.quiz-home-grid>*,.quiz-room-entry-grid>*,.quiz-room-layout>*,.quiz-game-shell { min-width:0 }
.quiz-mode-card,.quiz-entry-card,.quiz-game-shell,.quiz-leaderboard-card,.quiz-explain-card,.quiz-room-header,.quiz-scoreboard { background:#fffdf8;border-color:#d5dfd3;border-radius:16px;box-shadow:0 4px 16px #123a2810 }
.quiz-mode-card::after { display:none }
.quiz-mode-card h2,.quiz-entry-card h2,.quiz-question-card h2,.quiz-explain-card h2,.quiz-leaderboard-card h2 { color:#153c30 }
.quiz-mode-card p,.quiz-mode-card ul,.quiz-entry-card p,.quiz-feedback p { color:#53655b;font-size:16px;line-height:1.6 }
.quiz-start-panel,.quiz-finished,.quiz-room-lobby { padding:20px 10px }
.quiz-start-panel h2 { margin-top:0 }
.quiz-game-top,.quiz-level-strip,.quiz-room-header,.quiz-section-head { flex-wrap:wrap;gap:10px }
.quiz-progress-line { grid-template-columns:auto minmax(0,1fr);font-size:14px }
.quiz-question-card { background:#fffdf8;border-color:#d5dfd3 }
.quiz-option { min-width:0;min-height:52px;font-size:16px;font-weight:650;overflow-wrap:anywhere }
.quiz-option.is-selected { background:#e9f1e8;border-color:#32654c }
.quiz-entry-card input,.quiz-entry-card select { min-width:0;width:100%;max-width:100%;min-height:48px;font-size:16px }
.quiz-entry-card .btn,.quiz-game-shell .btn { min-height:48px;white-space:normal }
.quiz-entry-card label { font-weight:650;color:#153c30 }
.quiz-difficulty-card { min-width:0 }
.quiz-difficulty-card small,.quiz-media-note,.quiz-points span,.quiz-my-score,.quiz-score-pill,.quiz-live-pill,.quiz-scoreboard li { font-size:14px }
.quiz-points,.quiz-score-pill { background:#153c30 }
.quiz-points span { color:#e5ede2 }
.quiz-room-code { max-width:100%;overflow-wrap:anywhere;font-size:clamp(28px,7vw,48px);letter-spacing:.08em;color:#153c30 }
.quiz-leaderboard li { grid-template-columns:30px minmax(0,1fr) auto }
.quiz-leaderboard li strong,.quiz-room-header p,.quiz-feedback { overflow-wrap:anywhere }
.quiz-scoreboard li { grid-template-columns:26px minmax(0,1fr) auto }
.quiz-room-shell .quiz-big-icon { display:none }
@media(max-width:820px) {
  .quiz-home-grid,.quiz-room-entry-grid,.quiz-room-layout { grid-template-columns:minmax(0,1fr) }
  .quiz-mode-card,.quiz-entry-card,.quiz-leaderboard-card,.quiz-explain-card { padding:18px }
  .quiz-start-panel,.quiz-finished,.quiz-room-lobby { padding:14px 0 }
}
@media(max-width:420px) {
  .quiz-leaderboard li { gap:6px;padding:10px 6px }
  .quiz-progress-line { grid-template-columns:minmax(0,1fr) }
}
/* Keep these functional screens compact when the shared theme is injected. */
html[data-jvk-theme] body .jvk-shell-main .activity-heading h1 { font-family:var(--jvk-sans,system-ui,sans-serif)!important;line-height:1.2!important;font-size:30px!important;font-weight:650!important }
html[data-jvk-theme] body .jvk-shell-main :is(.quiz-mode-card,.quiz-entry-card,.quiz-game-shell,.quiz-leaderboard-card,.quiz-explain-card,.quiz-room-header,.quiz-scoreboard,.quiz-question-card) { border-radius:12px!important;box-shadow:none!important;background:#fffdf8!important }
html[data-jvk-theme] body .quiz-entry-card form { padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important }
html[data-jvk-theme] body .quiz-entry-card label { font:600 16px/1.5 var(--jvk-sans,system-ui,sans-serif)!important }
html[data-jvk-theme] body .quiz-difficulty-card>span { border-radius:10px!important;box-shadow:none!important;background:#fffdf8!important;border-color:#ccd7c7!important }
html[data-jvk-theme] body .quiz-difficulty-card.is-selected>span { background:#eaf1e5!important;border-color:#48724f!important }
html[data-jvk-theme] body .quiz-difficulty-card strong { font:650 16px/1.4 var(--jvk-sans,system-ui,sans-serif)!important;color:#193e30!important }
html[data-jvk-theme] body .quiz-difficulty-card small { font:400 14px/1.5 var(--jvk-sans,system-ui,sans-serif)!important;color:#53655b!important }
html[data-jvk-theme] body .quiz-difficulty-card b { font:600 14px/1.4 var(--jvk-sans,system-ui,sans-serif)!important;color:#745728!important }
html[data-jvk-theme] body .quiz-option { font:600 16px/1.5 var(--jvk-sans,system-ui,sans-serif)!important }
