[hidden]{display:none!important}.mode-options{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:32px auto;max-width:620px}.mode-option{font:inherit;color:inherit;cursor:pointer;text-align:left;padding:28px 24px;background:#fffaf0;border:2px solid #dec99a;border-radius:18px;box-shadow:0 5px 14px #55411b10}.mode-option strong{display:block;font-size:24px;margin-bottom:12px}.mode-option span{font-size:14px;line-height:1.7;color:#70634d}.mode-option:hover{border-color:#ab8340;background:#fff2d5}.mode-option:focus-visible{outline:3px solid #997029;outline-offset:3px}.mode-summary{display:flex;align-items:center;justify-content:space-between;gap:15px;max-width:620px;margin:0 auto 20px;color:#6a614f}.mode-summary button{font:inherit;font-size:13px;border:1px solid #d8ccaf;border-radius:9px;background:#fffaf0;padding:7px 12px;color:inherit;cursor:pointer}.thinking-timer{font-size:14px;color:#7a7468;margin:15px 0 0;min-height:24px}.thinking-timer.overtime{color:#a9442d;font-weight:600}#modeView{text-align:center;padding:30px 10px}#modeView h1{font-size:30px;margin:15px 0}.mode-caption{color:#787063;font-size:15px}.report-test-mode{white-space:nowrap}@media(max-width:580px){.mode-options{grid-template-columns:1fr;gap:14px;margin:24px auto}.mode-option{padding:20px}.mode-option strong{font-size:21px}.mode-summary{flex-wrap:wrap}.thinking-timer{font-size:13px}.report-test-mode{white-space:normal}}
.reading-entry{display:block;max-width:440px;width:100%;margin:32px auto 22px;padding:19px 24px;border:1px solid #c19746;border-radius:15px;background:linear-gradient(#f9d77b,#eab44a);color:#503b1d;font:inherit;font-size:20px;font-weight:700;cursor:pointer;box-shadow:0 4px 0 #b48b39}.reading-entry:hover{filter:brightness(1.04)}.listening-entry-note{font-size:13px;color:#7c7467;line-height:1.9}.listening-entry{border:0;border-bottom:1px solid #aaa08d;background:transparent;color:#776745;font:inherit;padding:1px 0;cursor:pointer}.reading-entry:focus-visible,.listening-entry:focus-visible{outline:3px solid #997029;outline-offset:4px}

/* Keep the default question compact; details scroll independently. */
#testView .push-meta{padding:10px 14px;margin-top:12px}
.compact-range{display:flex;align-items:center;justify-content:center;gap:14px;font-size:14px}.compact-range b{font-size:18px}
.calculation-details{margin-top:6px;font-size:12px}.calculation-details>summary{cursor:pointer;text-align:center;color:#82765f;padding:5px;list-style-position:inside}
.calculation-scroll{max-height:min(160px,22dvh);overflow-y:auto;overscroll-behavior:contain;padding:10px 6px 4px;scrollbar-gutter:stable;border-top:1px solid #ded4bd;margin-top:6px}
.calculation-scroll .decision-change{padding:7px 10px}.calculation-scroll .decision-change strong{font-size:14px}.calculation-scroll .group-status{margin:8px 0}.calculation-rule{line-height:1.7;margin:8px 0}
#testView .answer-actions,#testView .confirm.show{position:sticky;bottom:8px;z-index:20;background:#fffaf2ed;border-radius:14px;padding:10px;margin-top:12px;box-shadow:0 -5px 16px #5340240b}
@media(max-height:750px){#testView .word-card{padding-top:12px;padding-bottom:12px}#testView .word{font-size:clamp(36px,7vw,64px)}#testView .thinking-timer{margin-top:8px}#testView .calculation-scroll{max-height:80px}}
#testView .meaning:empty{display:none}
@media(max-height:750px){#testView{padding-top:20px;padding-bottom:20px}#testView .progress{margin-bottom:16px}#testView .word-card{min-height:0}#testView .hint{margin-top:10px}}

.revise-previous{display:block;margin:16px auto 0;padding:10px 18px;min-height:44px;border:1px solid #c8cdd5;border-radius:10px;background:white;color:#536173;font:inherit;cursor:pointer}.revise-previous[hidden]{display:none!important}
