.eval-surface{color-scheme:light dark;--eval-ink:light-dark(#203e2e,#e5efe8);--eval-green:light-dark(#174f38,#9bd4b2);--eval-paper:light-dark(#fff,#1d2a24);--eval-soft:light-dark(#f3f7f1,#24382c);--eval-line:light-dark(#d7e1d5,#4b6655);--eval-muted:light-dark(#52634e,#b7c6b5);--eval-orange:light-dark(#a13d00,#ffb17b);color:var(--eval-ink);background:var(--eval-paper);border:1px solid var(--eval-line);border-radius:22px;padding:clamp(18px,3vw,32px);margin-top:24px;font-family:Arial,Helvetica,sans-serif;line-height:1.6;min-width:0;text-align:left;overflow-wrap:anywhere}.eval-surface *{box-sizing:border-box}.eval-surface h2{font-size:clamp(23px,3vw,30px);line-height:1.25;margin:4px 0 12px;font-weight:750;color:var(--eval-ink)}.eval-surface h3{font-size:20px;line-height:1.4;margin:12px 0}.eval-surface h4{font-size:17px;margin:12px 0 6px}.eval-surface p{margin:10px 0}.eval-surface .eval-kicker{letter-spacing:.09em;font-size:12px;font-weight:700;color:var(--eval-green);margin:0}.eval-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.eval-surface button{font:inherit;line-height:1.4;min-height:44px;padding:11px 18px;border-radius:12px;border:1px solid var(--eval-line);cursor:pointer;font-weight:700;white-space:normal;text-align:center;max-width:100%}.eval-surface .eval-primary{background:var(--eval-green);color:light-dark(#fff,#14291c);border-color:var(--eval-green)}.eval-surface .eval-secondary{background:var(--eval-paper);color:var(--eval-green)}.eval-surface .eval-secondary[aria-pressed=true]{background:var(--eval-green);color:light-dark(#fff,#14291c)}.eval-surface button:disabled{opacity:.5;cursor:default}.eval-surface button:focus-visible,.eval-surface input:focus-visible,.eval-surface select:focus-visible,.eval-surface summary:focus-visible{outline:3px solid var(--eval-orange);outline-offset:3px}.eval-surface .eval-subtle{color:var(--eval-muted);font-size:14px}.eval-surface .eval-instruction{font-size:clamp(20px,2.6vw,25px);font-weight:750;color:var(--eval-orange);line-height:1.4;margin:24px 0 18px}.eval-passage{background:var(--eval-soft);border-left:4px solid var(--eval-green);padding:16px 22px;border-radius:0 14px 14px 0;margin:12px 0 24px}.eval-passage p{white-space:pre-line;font-size:18px;line-height:1.8}.eval-position{display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between;font-size:15px}.eval-surface progress{width:100%;height:9px;accent-color:var(--eval-green);margin:10px 0 20px}.eval-surface .eval-question-title{color:var(--eval-orange);font-size:23px}.eval-question-title span{font-size:15px;font-weight:400;white-space:nowrap}.eval-item{border:0;padding:0;margin:20px 0 28px;min-width:0}.eval-item legend{font-size:19px;font-weight:700;color:var(--eval-orange);padding:0 0 12px;width:100%}.eval-item legend span{font-size:13px;color:var(--eval-muted);font-weight:400;display:block}.eval-option{display:flex;align-items:flex-start;gap:12px;padding:13px 16px;border:1px solid var(--eval-line);border-radius:12px;margin:8px 0;cursor:pointer;font-size:17px;background:var(--eval-paper)}.eval-option input{appearance:auto;flex:0 0 18px;width:18px;height:18px;margin:5px 0 0;accent-color:var(--eval-green)}.eval-chosen{border-color:var(--eval-green);background:var(--eval-soft)}.eval-actions{display:flex;gap:12px;justify-content:flex-start;flex-wrap:wrap;margin:20px 0 8px}.eval-confirm,.eval-notice{background:var(--eval-soft);padding:16px 18px;border-radius:12px;margin:18px 0}.eval-confirm{border:2px solid var(--eval-green)}.eval-error{color:light-dark(#a02020,#ffb3a9);background:light-dark(#fff1ed,#402622);padding:14px;border-radius:12px}.eval-grade{background:var(--eval-soft);text-align:center;border-radius:18px;padding:20px;margin:24px 0}.eval-grade strong{font-size:60px;color:var(--eval-green);line-height:1.3}.eval-grade strong span{font-size:25px}.eval-corrections{margin:24px 0}.eval-surface summary{cursor:pointer;color:var(--eval-green);font-weight:700;padding:8px 0}.eval-corrections>div{padding:12px 0;border-bottom:1px solid var(--eval-line)}.eval-filter{margin:20px 0}.eval-filter label{display:flex;gap:6px;flex-direction:column;font-weight:700;max-width:600px}.eval-filter select{font:inherit;font-size:16px;background:var(--eval-paper);color:var(--eval-ink);border:1px solid var(--eval-line);border-radius:10px;padding:12px;max-width:100%;min-width:0;min-height:44px}.eval-table-wrap{overflow-x:auto}.eval-surface table{border-collapse:collapse;width:100%;font-size:15px}.eval-surface td,.eval-surface th{text-align:left;padding:16px 10px;border-bottom:1px solid var(--eval-line);vertical-align:top}.eval-surface th{color:var(--eval-muted);font-weight:700}.eval-surface td:nth-child(2){white-space:nowrap;min-width:100px}.eval-surface td small{display:block;color:var(--eval-muted)}.eval-surface td details{margin-top:8px;font-size:13px}.eval-surface td p{margin:10px 0}.eval-surface ul{padding-left:24px;margin:18px 0}.eval-surface li{margin:8px 0}@media(max-width:520px){.eval-surface{padding:17px;border-radius:16px}.eval-passage{padding:12px 15px}.eval-passage p{font-size:17px}.eval-surface td,.eval-surface th{padding:12px 8px}.eval-surface td:first-child{min-width:135px}.eval-option{padding:12px}.eval-surface button{padding:11px 13px}.eval-actions>*{flex:1 1 auto}}.eval-written-label{display:block;color:var(--eval-muted);font-size:14px;margin-bottom:5px}.eval-surface .eval-written{display:block;width:100%;border:2px solid var(--eval-line);background:var(--eval-paper);color:var(--eval-ink);padding:14px;border-radius:12px;font:inherit;font-size:20px;min-height:54px}.eval-item-source{margin-bottom:0}.eval-item-source p{font-size:18px}.eval-filter-grid{display:grid;grid-template-columns:150px minmax(180px,1fr);gap:16px}.eval-filter-grid label:last-child{grid-column:1/-1}.eval-filter input{font:inherit;padding:12px;border-radius:10px;border:1px solid var(--eval-line);background:var(--eval-paper);color:var(--eval-ink);min-width:0}.eval-listening{padding:20px;border:1px solid var(--eval-line);border-radius:14px;background:var(--eval-soft)}.eval-listening audio{width:100%}@media(max-width:520px){.eval-filter-grid{grid-template-columns:1fr}}