.written-response{background:#fff;color:#17253b;border:2px solid #52647e;border-radius:16px;padding:20px;text-align:left;max-width:900px;margin:18px auto;box-sizing:border-box}
.written-response-label{display:block;font-size:22px;font-weight:800;color:#15253e;margin-bottom:8px}
.written-response-help,.written-response-privacy,.written-response-status{font-size:16px;line-height:1.5;color:#263c56;margin:10px 0}
.written-response textarea{display:block;width:100%;min-height:170px;max-height:50vh;box-sizing:border-box;resize:vertical;background:#fff;color:#101c2d;border:2px solid #4d607a;border-radius:10px;padding:14px;font:20px/1.6 system-ui,sans-serif;white-space:pre-wrap}
.written-response textarea::placeholder{color:#536279;opacity:1}
.written-response textarea:focus-visible,.written-response input:focus-visible{outline:3px solid #155eef;outline-offset:3px}
.written-response textarea[readonly]{background:#edf2f8;color:#17253b}
.written-response-paper,.written-response-review{display:flex;align-items:flex-start;gap:12px;padding:12px 0;font-size:16px;line-height:1.5;color:#17253b}
.written-response input[type=checkbox]{flex:0 0 auto;width:22px;height:22px;margin:1px 0;accent-color:#1649ad}
.written-response-status{font-weight:700;min-height:1.5em}
.written-response-privacy{font-size:14px}
@media(max-width:600px){.written-response{padding:14px;margin:12px 0}.written-response textarea{font-size:18px;min-height:150px}.written-response-label{font-size:20px}}

.phonics-word-card{font-size:clamp(48px,9vw,108px);font-weight:800;text-align:center;letter-spacing:.03em;padding:20px;color:#172942;background:#fff;border-radius:20px;margin:16px auto}.phonics-word-card mark{background:#ffe38a;color:#503000;border-radius:5px}.phonics-guidance{font-size:16px;line-height:1.5;color:inherit}.oral-stage .writing-choice-help,.oral-stage .writing-choice-status{color:inherit}.oral-stage .writing-choice-help{background:#fff;color:#253b53;border-radius:8px;padding:8px 12px}

/* Keep the controls outside the scrolling evidence/model region. */
.game-first .oral-stage:has(.written-response){display:block;overflow:visible;flex:none}
.game-first .oral-attempt:has(.written-response){display:block}
.game-first .oral-stage:has(.written-response) .oral-model{display:block;text-align:left;margin:16px 0;padding:16px}
.game-first .oral-stage:has(.written-response) .oral-model h2{font-size:clamp(18px,2.2vw,26px);line-height:1.5;white-space:pre-wrap}
@media(max-height:800px){.written-response{padding:12px;margin:10px auto}.written-response textarea{min-height:110px;font-size:18px;padding:10px}.written-response-label{font-size:19px}.written-response-help,.written-response-status{font-size:14px;margin:6px 0}.written-response-privacy{font-size:12px;margin:5px 0}.written-response-paper,.written-response-review{font-size:14px;padding:7px 0}}

.oral-stage:has(.phonics-word-card){display:block}.oral-stage:has(.phonics-word-card) .oral-model{display:block;margin-top:14px}.oral-stage:has(.phonics-word-card) .oral-model h2{font-size:clamp(20px,2.8vw,34px);line-height:1.4}.phonics-assessment-limit{font-size:13px;line-height:1.4;margin:6px 0;color:inherit}
