*{box-sizing:border-box}body{color:#222;background:#e9e6e0;margin:0;font:16px/1.6 Georgia,Times New Roman,serif}.paper-app{max-width:900px;margin:0 auto;padding:20px}.paper-app header{justify-content:space-between;align-items:center;margin-bottom:16px;font:700 14px system-ui;display:flex}.brand{color:#a95440;letter-spacing:.08em;text-decoration:none}.paper{background:#fff;min-height:70vh;padding:clamp(22px,5vw,56px);box-shadow:0 3px 14px #0001}.paper h1{font-size:28px}.test-head{border-bottom:2px solid #222;justify-content:space-between;margin-bottom:20px;padding-bottom:12px;display:flex}.test-head div{display:grid}.test-head span{color:#666}#question-list{gap:24px;display:grid}.reading-passage{background:#f7f5f0;border-left:3px solid #a95440;max-width:72ch;margin:0 auto 8px;padding:18px 20px;line-height:1.8}.question{border-bottom:1px solid #ddd;padding:0 0 16px}.question p{margin:0 0 10px}.options{gap:6px;display:grid}.options label{align-items:flex-start;gap:10px;font:16px/1.5 Georgia;display:flex}.primary,.secondary,.button-link{color:#fff;cursor:pointer;background:#222;border:1px solid #333;margin-top:22px;padding:11px 18px;font:600 15px system-ui;text-decoration:none;display:inline-block}.secondary{color:#222;background:#fff}button:disabled{opacity:.65;cursor:wait}textarea{border:1px solid #888;width:100%;margin-top:8px;padding:12px;font:16px/1.6 Georgia;display:block}#speaking-questions{gap:14px;display:grid}.speak-card{border:1px solid #ddd;padding:12px}.speak-card button{margin-left:8px}#record-status{color:#74412f;min-height:1.6em;display:block}.result-row{border-bottom:1px solid #ddd;padding:12px 0}.error{color:#9e2d26}#clock{font:700 18px system-ui}@media (width<=600px){.paper-app{padding:10px}.paper{padding:22px 16px}.test-head{gap:10px}.reading-passage{padding:14px}}#question-list[hidden],#speaking-box[hidden],#writing-box[hidden]{display:none!important}.writing-prompt{background:#f7f5f0;border-left:3px solid #a95440;margin:8px 0 18px;padding:16px;font-weight:600}.question-loading{color:#74412f;background:#f7f5f0;border-left:3px solid #a95440;margin:18px 0;padding:16px;font:600 16px system-ui}#login-panel[hidden],#intro[hidden]{display:none!important}#placement-login-form{gap:10px;max-width:460px;font:600 15px system-ui;display:grid}#placement-login-form input{border:1px solid #aaa;border-radius:8px;width:100%;padding:12px;font:16px system-ui}#login-error{color:#9e2d26;min-height:1.5em}.placement-validation{color:#76271e;background:#fff2ee;border:1px solid #a23f31;border-left-width:4px;border-radius:6px;padding:12px 14px;font:600 15px/1.5 system-ui}.question:focus{outline-offset:5px;border-radius:4px;outline:3px solid #d08a4d}
