.writing-main{max-width:1320px;margin:auto;padding:36px 5% 60px}.writing-main h1{font-size:2.5rem;margin:12px 0}.writing-options{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin:24px 0}.writing-main label{display:block;font-weight:600;font-size:1rem}.writing-main input,.writing-main select,.writing-main textarea{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);font:inherit;margin:7px 0 16px}.writing-main textarea{resize:vertical;line-height:1.8}.writing-main textarea:focus-visible{outline:3px solid #f29936;outline-offset:2px}.writing-workspace{display:grid;grid-template-columns:0.85fr 1.15fr;gap:24px;align-items:start}.writing-panel{padding:26px;background:white;border:1px solid var(--line);border-radius:16px;min-width:0}.writing-panel h2{margin-top:0}.writing-title{display:flex;justify-content:space-between;gap:12px}.writing-title span{white-space:nowrap}.writing-main .small{font-size:.875rem;color:var(--muted)}.writing-main a:not(.button){text-decoration:underline}.writing-main table{width:100%;border-collapse:collapse;font-size:.95rem}.writing-main th,.writing-main td{padding:10px;border:1px solid var(--line);text-align:left}.writing-main #availability{padding:12px 16px;background:#eef3fc;border-radius:8px}.writing-main #visual-preview{max-width:100%;max-height:420px;object-fit:contain}.writing-main button:disabled{opacity:.55;cursor:not-allowed}.criteria-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.criterion{padding:18px;background:var(--paper);border-radius:10px}.criterion h3{font-size:1rem;margin:0 0 10px}.criterion strong{font-size:1.6rem;color:var(--teal)}#writing-result{margin-top:24px}#essay{min-height:440px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#corrections p{overflow-wrap:anywhere;border-left:3px solid var(--teal);padding-left:14px}@media(max-width:800px){.writing-workspace,.writing-options,.criteria-grid{grid-template-columns:1fr}.writing-main{padding:24px 4%}.writing-panel{padding:20px}.writing-main h1{font-size:2rem}.writing-title{flex-wrap:wrap}}
.correction-list{display:grid;gap:16px;margin:16px 0 28px}.correction-card{overflow-wrap:anywhere;border:1px solid #dce4ee;border-radius:12px;padding:18px;background:#fff}.feedback-label{display:block;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;margin-top:4px}.mistake-label,.mistake-text{color:#a4261d}.replacement-label,.replacement-text{color:#08783f}#corrections .mistake-text,#corrections .replacement-text,.mistake-text,.replacement-text{font-weight:700;margin:6px 0 14px;padding-left:12px;border-left:4px solid currentColor;white-space:pre-line}.correction-context{font-size:.82rem;color:var(--muted);font-weight:700;margin:0 0 12px}.correction-explanation{margin:4px 0 0;color:var(--ink)}.model-replacement{background:#edf8f2;border-left:4px solid #08783f;border-radius:10px;padding:18px;margin:18px 0 28px}.model-replacement h3{margin-top:0}.model-replacement p{white-space:pre-line;margin-bottom:0}

.task1-chart-scroll{overflow-x:auto;margin:16px 0;background:white;border:1px solid #dce4ef;border-radius:8px}.task1-chart-scroll svg{display:block;max-width:none}.task1-chart-scroll table{min-width:520px;width:100%;font-size:16px;border-collapse:collapse}.task1-chart-scroll th,.task1-chart-scroll td{padding:12px;text-align:left;border:1px solid #dce4ef}.task1-chart-scroll caption{padding:12px;font-weight:600}.task1-chart-scroll th{background:#eaf0ff}#sample-question h3{font-size:20px;margin-top:24px}

.task1-writing .writing-main{max-width:1740px;padding-left:3%;padding-right:3%}.task1-writing .writing-workspace{grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr)}.task1-chart-scroll svg{width:100%;max-width:760px;height:auto;margin:auto}.task1-chart-scroll table{min-width:0;overflow-wrap:anywhere}.writing-main #visual-preview{width:auto;max-width:100%;max-height:none;height:auto}@media(max-width:1100px){.task1-writing .writing-workspace{grid-template-columns:1fr}.task1-writing .writing-workspace>.writing-panel{width:100%}}@media(max-width:600px){.task1-writing .writing-main{padding-left:4%;padding-right:4%}.task1-chart-scroll th,.task1-chart-scroll td{padding:7px;font-size:14px}}
