:root{--sp-navy:#123b6d;--sp-blue:#1668d4;--sp-green:#19a968;--sp-mint:#eaf8f1;--sp-ink:#14283d;--sp-line:#d8e2ec;--sp-warm:#fff6dc}
.sp-landing,.sp-result,.sp-feedback{min-height:75vh;background:#f5f8fb;color:var(--sp-ink);padding:44px 20px 72px}.sp-hero{width:min(1120px,100%);margin:auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:36px;align-items:center;background:#fff;border:1px solid var(--sp-line);border-top:7px solid var(--sp-green);padding:clamp(28px,5vw,64px)}.sp-kicker{display:block;color:#087b51;font-weight:800;font-size:13px;letter-spacing:.1em}.sp-hero h1{font-size:clamp(34px,5vw,58px);line-height:1.13;margin:10px 0 18px;color:var(--sp-navy)}.sp-hero h1 strong{color:var(--sp-green)}.sp-hero p{font-size:18px;line-height:1.7;color:#4c6175}.sp-facts{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.sp-facts span{padding:8px 12px;background:#eff5fb;border-radius:99px;font-size:14px}.sp-primary{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 22px;border:0;border-radius:8px;background:var(--sp-navy);color:#fff!important;font:800 16px inherit;text-decoration:none;cursor:pointer}.sp-primary:hover{background:#0d2d55}.sp-restart{display:inline;margin-left:12px}.sp-restart button{border:0;background:transparent;color:#526b83;text-decoration:underline;cursor:pointer}.sp-hero aside{display:grid;gap:2px;background:var(--sp-line)}.sp-route{display:flex;gap:14px;align-items:center;background:#f8fbfd;padding:18px}.sp-route b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--sp-navy);color:#fff}.sp-route span{display:grid}.sp-route small{color:#64788b;margin-top:3px}.sp-before{width:min(1120px,100%);margin:34px auto 0}.sp-before h2{text-align:center;color:var(--sp-navy)}.sp-before>div{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.sp-before article{background:#fff;border:1px solid var(--sp-line);padding:22px;text-align:center}.sp-before article>span{font-size:32px}.sp-before h3{margin:8px 0}.sp-before p{color:#627487;margin:0;line-height:1.6}
.sp-test{min-height:calc(100vh - 80px);background:#f4f7fa;color:var(--sp-ink);padding-bottom:48px}.sp-test-head{height:68px;padding:0 max(18px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--sp-line);position:sticky;top:0;z-index:10}.sp-test-head>a{font-weight:900;color:var(--sp-navy);text-decoration:none}.sp-test-head>div{display:flex;align-items:center;gap:18px}.sp-test-head strong{min-width:76px;padding:8px 12px;background:var(--sp-navy);color:#fff;border-radius:6px;text-align:center;font-variant-numeric:tabular-nums}.sp-test-head strong.urgent{background:#b42318}.sp-progress{height:5px;background:#dfe8ef;position:sticky;top:68px;z-index:10}.sp-progress span{display:block;height:100%;width:2%;background:var(--sp-green);transition:width .25s}.sp-stage{width:min(1180px,calc(100% - 32px));min-height:560px;margin:28px auto 0}.sp-save{text-align:center;color:#657789;font-size:13px}.sp-ready{width:min(700px,100%);margin:70px auto;background:#fff;border:1px solid var(--sp-line);border-top:6px solid var(--sp-green);padding:48px;text-align:center}.sp-ready>span{color:#087b51;font-weight:800}.sp-ready h1{font-size:38px;color:var(--sp-navy);margin:12px}.sp-ready p{color:#607488;font-size:17px;line-height:1.7}.sp-question-no{display:block;color:var(--sp-navy);font-size:22px;font-weight:900;margin-bottom:18px}.sp-listening-one{width:min(820px,100%);margin:auto;text-align:center;background:#fff;border:1px solid var(--sp-line);padding:26px}.sp-listening-one img{display:block;width:100%;max-height:450px;object-fit:contain;background:#eef2f5}.sp-listening-one.no-image{padding:80px 26px}.sp-listen-wave{color:var(--sp-blue);font-size:38px;letter-spacing:6px;margin:35px}.sp-choices{display:grid;gap:10px;margin-top:16px}.sp-choices.compact{grid-template-columns:repeat(4,1fr);max-width:620px;margin:22px auto 0}.sp-choices button{min-height:52px;display:flex;align-items:center;gap:12px;border:2px solid #cbd7e3;border-radius:8px;background:#fff;color:var(--sp-ink);padding:10px 14px;text-align:left;font:500 15px inherit;cursor:pointer}.sp-choices button b{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#edf3f8;color:var(--sp-navy)}.sp-choices button.selected{border-color:var(--sp-green);background:var(--sp-mint)}.sp-choices button.selected b{background:var(--sp-green);color:#fff}.sp-listening-set>header{margin-bottom:18px}.sp-listening-set>header span{font-weight:900;color:var(--sp-navy);font-size:22px}.sp-listening-set>header p{margin:4px 0;color:#607488}.sp-question-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.sp-question-grid article,.sp-reading-question{background:#fff;border:1px solid var(--sp-line);padding:20px}.sp-question-grid h2,.sp-reading-question h2{font-size:17px;line-height:1.6;margin:0}.sp-question-grid h2 b,.sp-reading-question h2 b{display:inline-grid;place-items:center;width:32px;height:32px;margin-right:9px;border-radius:50%;background:var(--sp-navy);color:#fff;font-size:14px}.sp-audio-resume{display:block;margin:0 auto 16px;border:0;background:var(--sp-warm);color:#735300;padding:12px 18px;border-radius:7px;font-weight:800;cursor:pointer}.sp-q-nav{display:flex;justify-content:center;gap:8px;margin-bottom:18px}.sp-q-nav button{width:44px;height:44px;border:1px solid #bccddd;background:#fff;border-radius:6px;cursor:pointer}.sp-q-nav button.answered{border-color:var(--sp-green);box-shadow:inset 0 -4px var(--sp-green)}.sp-q-nav button.active{background:var(--sp-navy);color:#fff}.sp-p5{width:min(820px,100%);margin:auto}.sp-p5 nav{display:flex;justify-content:space-between;margin-top:14px}.sp-p5 nav button{min-width:130px;min-height:46px;border:1px solid #b9c8d6;background:#fff;border-radius:6px;cursor:pointer}.sp-p5 nav button:disabled{opacity:.4}.sp-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.sp-passage{background:#fff;border:1px solid var(--sp-line);padding:22px;position:sticky;top:96px}.sp-passage>span{display:block;color:#087b51;font-weight:900;margin-bottom:13px}.sp-passage pre{white-space:pre-wrap;font:500 16px/1.75 inherit;margin:0}.sp-reading-list{display:grid;gap:14px}.sp-part7 .sp-passages{display:grid;gap:14px}.sp-part7 .sp-passage{position:static}.sp-stage.is-locked{pointer-events:none;opacity:.65}
.sp-result{display:grid;gap:22px}.sp-result>section,.sp-result>nav{width:min(960px,100%);margin:auto}.sp-result-score{background:#fff;border:1px solid var(--sp-line);border-top:7px solid var(--sp-green);padding:38px;text-align:center}.sp-result-score h1{color:var(--sp-navy);font-size:36px}.sp-score-ring{width:150px;height:150px;margin:22px auto;display:grid;place-content:center;border:12px solid #d9f1e5;border-top-color:var(--sp-green);border-radius:50%}.sp-score-ring strong{font-size:48px;color:var(--sp-navy);line-height:1}.sp-score-ring span{color:#607488}.sp-subscores{display:flex;justify-content:center;gap:12px}.sp-subscores div{min-width:150px;padding:14px;background:#f2f6f9}.sp-subscores span{display:block;color:#64778a}.sp-result-score>p{color:#6b7c8c;font-size:13px}.sp-signals{padding:28px;background:#fff;border:1px solid var(--sp-line)}.sp-signals h2{color:var(--sp-navy)}.sp-signals>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.sp-signals article{padding:18px;background:#f4f8fb;border-left:4px solid var(--sp-blue)}.sp-signals p{margin:6px 0 0;line-height:1.6}.sp-trial-card{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--sp-mint);border:1px solid #b7e5ce;padding:30px}.sp-trial-card h2{color:var(--sp-navy);margin:7px 0}.sp-trial-card p{margin:0;line-height:1.7}.sp-result-actions{display:flex;justify-content:center;gap:25px}.sp-feedback>section{width:min(720px,100%);margin:auto;background:#fff;border:1px solid var(--sp-line);border-top:7px solid var(--sp-green);padding:36px}.sp-feedback h1{color:var(--sp-navy);font-size:36px}.sp-feedback form{display:grid;gap:20px;margin-top:28px}.sp-feedback fieldset{border:1px solid var(--sp-line);padding:18px}.sp-feedback label{display:grid;gap:7px;font-weight:700}.sp-feedback textarea{width:100%;box-sizing:border-box;border:1px solid #aabccc;border-radius:6px;padding:12px;font:inherit}.sp-rating{display:flex;gap:10px}.sp-rating input{position:absolute;opacity:0}.sp-rating span{display:grid;place-items:center;width:48px;height:48px;border:2px solid #b9cad9;border-radius:50%;cursor:pointer}.sp-rating input:checked+span{background:var(--sp-green);border-color:var(--sp-green);color:#fff}.sp-feedback-note{font-size:13px;color:#687b8d}
@media(max-width:760px){.sp-landing,.sp-result,.sp-feedback{padding:18px 12px 44px}.sp-hero{grid-template-columns:1fr;padding:26px 20px}.sp-hero h1{font-size:34px}.sp-hero p{font-size:16px}.sp-before>div,.sp-signals>div{grid-template-columns:1fr}.sp-test-head{padding:0 14px}.sp-test-head>div{gap:8px}.sp-test-head>div>span{font-size:12px}.sp-stage{width:min(100% - 20px,1180px);margin-top:16px}.sp-ready{padding:32px 18px;margin-top:35px}.sp-ready h1{font-size:29px}.sp-listening-one{padding:14px}.sp-listening-one.no-image{padding:55px 14px}.sp-choices.compact{gap:8px}.sp-choices.compact button{justify-content:center;padding:7px}.sp-question-grid{grid-template-columns:1fr}.sp-question-grid article,.sp-reading-question{padding:16px}.sp-split{grid-template-columns:1fr}.sp-passage{position:static}.sp-part7 .sp-passages{max-height:none}.sp-q-nav{gap:4px}.sp-q-nav button{width:38px;height:40px}.sp-trial-card{display:block;padding:22px}.sp-trial-card .sp-primary{margin-top:18px;width:100%}.sp-subscores div{min-width:0;flex:1}.sp-result-score{padding:28px 18px}.sp-result-score h1,.sp-feedback h1{font-size:30px}.sp-result-actions{flex-direction:column;align-items:center}.sp-feedback>section{padding:26px 18px}.sp-rating{justify-content:space-between}.sp-rating span{width:44px;height:44px}}
.sp-feedback-note{margin-top:18px}.sp-feedback-error{margin:0;padding:10px 12px;background:#fff0ef;border:1px solid #f1b8b3;color:#a12b24;font-weight:800}.sp-feedback-error[hidden]{display:none}
