/* Answering fits the visible phone height; settings remain below, in the same page. */
.quiz-entry{display:flex;align-items:center;gap:12px;width:100%;padding:16px 14px;margin:12px 0;border:1px solid #a795e3;background:linear-gradient(120deg,#6951bd,#443786);color:#fff;border-radius:15px;text-align:left;min-height:76px}.quiz-entry>span:last-child{margin-left:auto;font-size:22px}.quiz-entry b{display:block;font-size:17px}.quiz-entry small{display:block;font-size:11px;color:#e0d7f6;margin-top:5px}.quiz-entry .quiz-entry-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#ffffff20;font-size:26px;font-weight:800}.onboard-panel>.quiz-entry{margin:0 0 22px}.practice-round-head{display:flex;align-items:center;gap:9px;min-height:32px}.quiz-mini-boss{width:32px;height:32px;position:relative;flex-shrink:0}.quiz-mini-boss img{width:100%;height:100%;object-fit:contain;filter:brightness(.28);opacity:.75}.quiz-mini-boss i{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-style:normal;font-weight:800;font-size:19px}.quiz-mode-name{font-weight:800;font-size:14px;color:#344666}.question-index{margin-left:auto;font-size:21px;font-weight:800}.question-index small{font-size:10px;margin-left:4px;color:#708199}.round-summary{display:flex;justify-content:space-between;align-items:center;gap:8px;line-height:1.6;font-size:11px;color:#687b95;margin:3px 0 7px}.round-summary>span:first-child{min-width:0;overflow-wrap:anywhere}.round-summary>span:not(:first-child):last-child{white-space:nowrap}.quiz-battle .question-card h1{margin:8px 0 6px;line-height:1.6}.quiz-battle .answer-message{min-height:34px;line-height:1.5;padding:5px 0 0;flex-wrap:wrap}.quiz-battle .cockpit{padding:12px 14px 9px}.quiz-battle .options{gap:7px}.quiz-battle .option{min-height:54px;padding:8px 9px;font-size:14px;line-height:1.4}.quiz-battle .option>span:last-child{min-width:0;overflow-wrap:anywhere}.quiz-battle .option img{max-height:40px;width:76px;object-fit:contain}.quiz-battle .option .prefecture-picture{height:48px;width:70px}.quiz-battle .flag-stage.map-question{height:clamp(100px,calc(100svh - 400px),195px);aspect-ratio:auto;margin:6px 0 10px}.quiz-battle .flag-stage.japan-question{height:clamp(90px,calc(100svh - 440px),145px)}.quiz-battle .japan-question .prefecture-picture{max-height:100%;width:170px}.quiz-battle .flag-stage.name-question{height:26px;margin:0 0 6px}.quiz-battle .picture-question-mark{font-size:28px;line-height:1}.quiz-practice .practice-console{margin-top:24px}.quiz-combat .enemy-stage{height:110px}.quiz-combat .enemy-sprite{height:65px;width:65px;top:42px}.quiz-combat .target-ring{height:60px;width:60px;top:44px}.quiz-combat .target-coordinate{display:none}
@media(max-width:600px){body[data-screen=quiz] .site-header{padding:5px 12px;min-height:52px}body[data-screen=quiz] .brand-logo{width:108px;height:auto}body[data-screen=quiz] .brand-reading{font-size:11px}body[data-screen=quiz] main{padding:0 10px 16px}.quiz-battle .flag-stage:not(.map-question):not(.japan-question):not(.name-question){height:80px;margin:5px 0 10px}.quiz-battle .flag-stage img{height:76px;max-height:76px;max-width:140px}.quiz-battle .option img{max-height:38px;width:70px}.quiz-battle .question-card h1{font-size:15px}.quiz-battle .round-summary{font-size:10px}.quiz-battle .option{font-size:13px;min-height:52px}.quiz-battle .console-top{font-size:10px}.quiz-battle .console-top>b{font-size:20px}.quiz-battle .option ruby rt{font-size:8px}}
@media(max-height:620px){.quiz-battle[data-choices="6"] .flag-stage.map-question{height:100px}.quiz-battle .cockpit{padding-top:8px}.quiz-battle .option{min-height:48px;padding-top:6px;padding-bottom:6px}.quiz-battle .question-card h1{margin-top:5px}.quiz-battle .answer-message{min-height:30px}.quiz-combat .enemy-stage{height:90px}.quiz-combat .enemy-sprite{height:48px;width:48px;top:39px}}

/* Opponent is in front of both the gauge and the cockpit rim; answers stay clear. */
.persistent-enemy[data-view=quiz]{z-index:6}
.persistent-enemy[data-view=quiz] .enemy-sprite{z-index:3;width:158px;height:158px;top:-4px;transition:none;transform-origin:50% 55%}
.persistent-enemy[data-view=quiz] .target-ring{width:130px;height:130px;top:1px;opacity:.4}
.persistent-enemy[data-view=quiz] .target-coordinate{display:none}
.persistent-enemy[data-view=quiz] .enemy-status{padding:8px 14px 7px}
.persistent-enemy[data-view=quiz] .enemy-tag{max-width:calc(50% - 70px);font-size:8px;line-height:1.4}
.quiz-combat .console-top{min-height:25px}
.answer-projectile{position:fixed;z-index:8;pointer-events:none;opacity:0;width:23px;height:23px;border-radius:50%;background:radial-gradient(circle at 65% 50%,#fff 0 20%,#fff6aa 35%,#ffb448 65%,#fa6938);box-shadow:0 0 13px #ffc75f,0 0 32px #ff9e4280}
.answer-projectile:before{content:'';position:absolute;right:45%;top:23%;width:70px;height:54%;border-radius:50%;background:linear-gradient(90deg,transparent,#ffd97c);filter:blur(3px)}
.answer-impact{position:fixed;z-index:8;pointer-events:none;width:68px;height:68px;border-radius:50%;border:3px solid #fff1ad;background:radial-gradient(circle,#fff8bd 0 12%,#ffaf42aa 22%,transparent 67%);box-shadow:0 0 20px #ffbd5388}
@media(max-height:620px){.persistent-enemy[data-view=quiz] .enemy-sprite{width:132px;height:132px;top:-3px}.persistent-enemy[data-view=quiz] .target-ring{width:108px;height:108px;top:0}}

.answer-projectile[data-volley]{filter:hue-rotate(calc(var(--strike-hue,0) * 1deg))}

/* Keep feedback above SVG maps, and the opponent above its HP gauge in every view. */
.quiz-battle .flag-stage{isolation:isolate}
.quiz-battle .flag-stage>.country-quiz-map{position:relative;z-index:0}
.quiz-battle .flag-stage>.verdict{z-index:9;pointer-events:none}
.persistent-enemy .enemy-sprite{z-index:3}
.adult-age-screen{max-width:420px;margin:36px auto;padding:0 16px}
.adult-age-screen h1{font-size:25px}.adult-age-screen label{display:block;margin-top:24px;font-size:14px}
.age-input-row{display:flex;align-items:center;gap:12px;margin:12px 0 16px}.age-input-row input{min-width:0;width:170px;min-height:64px;padding:12px 16px;border:1px solid #8999c1;border-radius:14px;background:#17243d;color:#fff;font:inherit;font-size:30px}.age-input-row input:focus{outline:3px solid #d6f6b5;outline-offset:3px}
.adult-age-screen .footnote{line-height:1.8}.adult-age-screen .text-button{display:block;margin:20px auto}

/* A short introduction replaces the options; it does not add another tall panel. */
.map-lesson{padding:10px 0;text-align:center}.lesson-label{font-size:17px;font-weight:800;color:#286e74}.map-lesson .flag-stage{margin:8px 0 12px}.lesson-country{display:flex;align-items:center;justify-content:center;gap:12px;font-size:25px}.lesson-country img{object-fit:contain;filter:drop-shadow(0 1px 3px #20364730)}.lesson-copy{font-size:14px;margin:10px 0 16px}.map-lesson .primary{min-height:48px;padding:12px 18px}.map-hint-button{display:block;margin:8px auto 0;border:1px solid #9bb9c3;border-radius:20px;padding:8px 18px;background:#eef6fa;color:#245a68;font-size:14px;min-height:40px}
.map-lesson .country-quiz-map{width:auto;max-width:100%;aspect-ratio:1.6}

/* One compact, readable progress box: current question and accuracy share a single line. */
.quiz-progress{margin-left:auto;display:flex;align-items:center;flex-shrink:0;white-space:nowrap;background:#e5edf7;color:#2b4567;border:1px solid #cbd8e8;border-radius:10px;padding:6px 9px;gap:9px;line-height:1;font-variant-numeric:tabular-nums}
.quiz-progress>span{display:flex;align-items:baseline;gap:3px}.quiz-progress b{font-size:20px;line-height:1.1}.quiz-progress small{font-size:10px;font-weight:600}.quiz-progress .progress-accuracy{border-left:1px solid #b8c9dc;padding-left:9px;gap:5px}.quiz-progress .progress-accuracy>b{color:#246e6a}.quiz-battle .console-top{gap:8px;align-items:center}.quiz-battle .console-top>span{min-width:0}.quiz-mode-name{min-width:0}
@media(max-width:360px){.quiz-progress{padding:6px;gap:6px}.quiz-progress b{font-size:17px}.quiz-progress .progress-accuracy{padding-left:6px;gap:3px}.practice-round-head{gap:6px}.quiz-mode-name{font-size:12px}.quiz-mini-boss{width:26px;height:26px}}

.japan-context-map{background:#dceefa}
