.mock-page{background:var(--paper);color:var(--ink)}
.mock-page .site-header{color:var(--paper)}
.mock-page .header-account{margin-left:auto}
.mock-page main{padding-top:44px;padding-bottom:64px}
.mock-page h1{font-size:clamp(30px,4vw,48px);margin:0 0 20px}
.mock-page h2{font-size:30px;margin:30px 0 18px}
.mock-page h3{font-size:23px;margin:22px 0 14px}
.mock-page p{margin:0 0 18px;line-height:1.7}
.mock-page [hidden]{display:none!important}
.mock-lede{font-size:20px;max-width:48em}
.mock-small{font:14px/1.6 var(--study-interface);color:#565448}
.mock-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:28px 0;padding:0;list-style:none}
.mock-overview li{padding:20px;border:1px solid #bdb8a9;background:#fbf8f1;display:grid;gap:8px}
.mock-overview b{font:700 22px/1.3 var(--study-reading)}
.mock-overview span{font-size:14px}
.mock-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;position:sticky;top:64px;z-index:10;background:var(--paper);border-bottom:2px solid var(--ink);padding:16px 0;margin-bottom:18px}
.mock-toolbar p,.mock-toolbar h2{margin:0}
.mock-toolbar #mock-step{font-size:13px}
#mock-clock{font:600 30px/1.4 var(--study-interface);font-variant-numeric:tabular-nums}
.mock-part-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.mock-part-tabs button{padding:10px 16px;border:1px solid var(--ink);background:#fbf8f1;font-size:15px}
.mock-part-tabs button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.mock-part{padding:8px 0}
.mock-question{margin:0 0 24px;min-width:0}
.mock-question label{display:block;margin-bottom:10px;font:18px/1.6 var(--study-reading)}
.mock-question input,.mock-question select,.mock-page textarea{width:100%;max-width:100%;padding:12px;border:1px solid #8d9589;background:#fff;color:#202c23;font:17px/1.6 var(--study-interface)}
.mock-question select{font-size:15px}
.mock-question input{max-width:430px}
.mock-reading-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;align-items:start}
.mock-passage{position:sticky;top:175px;max-height:calc(100vh - 195px);overflow:auto;overscroll-behavior:contain;padding:24px;background:#fbf8f1;border:1px solid #c8c4b9;font:18px/1.85 var(--study-reading)}
.mock-passage p{line-height:1.85}
.mock-passage strong{margin-right:6px}
.mock-writing-task{padding:24px;background:#fbf8f1;border:1px solid #c8c4b9;margin:24px 0}
.mock-prompt{font:19px/1.8 var(--study-reading)}
.mock-writing-task>label{display:block;font-weight:600;margin:20px 0 10px}
.mock-page textarea{font:18px/1.8 var(--study-reading);resize:vertical;min-height:180px}
.mock-table{overflow:auto;margin:24px 0}
.mock-table table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}
.mock-table caption{text-align:left;font-size:15px;padding-bottom:12px}
.mock-table th,.mock-table td{padding:12px;border:1px solid #b4bdaf;text-align:center}
.mock-table th{background:#e8efdf}
.mock-phase-clock{font-weight:600;font-variant-numeric:tabular-nums}
.mock-speaking-prompts{font:20px/1.8 var(--study-reading);padding-left:28px;max-width:48em}
.mock-speaking-prompts li{margin:16px 0}
.mock-recorder{border-top:1px solid #c8c4b9;margin:30px 0;padding-top:24px}
.mock-finish{margin:32px 0}
.mock-score-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0}
.mock-score-card{padding:24px;border:1px solid #a8bba2;background:#f4f8ed}
.mock-score-card strong{font-size:34px}
.mock-page details{border:1px solid #c8c4b9;padding:20px;margin:22px 0;background:#fbf8f1}
.mock-page summary{font-weight:600;cursor:pointer;line-height:1.5}
.mock-answer-item{padding:16px 0;border-bottom:1px solid #d7d5cb}
.mock-answer-item p{margin:6px 0}
.mock-correct{color:#29613c}.mock-incorrect{color:#843722}
.mock-review-task{border:1px solid #c8c4b9;padding:24px;margin:24px 0;background:#fbf8f1}
.mock-review-task pre{white-space:pre-wrap;overflow-wrap:anywhere;font:18px/1.8 var(--study-reading)}
.mock-feedback{margin-top:20px}.mock-feedback p,.mock-feedback li{overflow-wrap:anywhere}
.mock-feedback h4{margin:20px 0 8px}
.mock-result-actions{display:flex;gap:16px;flex-wrap:wrap;margin:32px 0}
.mock-format-link{margin-top:48px!important;font-size:13px}
#mock-recording-result audio{display:block;width:min(100%,600px);margin:20px 0}
@media(max-width:900px){.mock-overview{grid-template-columns:1fr 1fr}.mock-reading-layout{grid-template-columns:1fr}.mock-passage{position:static;max-height:none;overflow:visible}.mock-toolbar{top:64px}.mock-toolbar h2{font-size:24px}}
@media(max-width:560px){.mock-overview,.mock-score-grid{grid-template-columns:1fr}.mock-toolbar{gap:12px}#mock-clock{font-size:25px}.mock-toolbar h2{font-size:20px}.mock-writing-task,.mock-review-task,.mock-passage{padding:18px 14px}.mock-page .btn{white-space:normal;max-width:100%}.mock-question select{font-size:16px}.mock-part-tabs button{padding:8px 12px}}
