@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--ink:#173e35;--muted:#6f7c72;--line:#dce3d8;--paper:#fafbf6;--green:#24725b;--mint:#e7efe5;--yellow:#edf2b7;--white:#fff;--radius:20px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans SC',sans-serif;font-size:15px;line-height:1.65}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #7aa68c;outline-offset:4px}.header{height:100px;max-width:1280px;margin:auto;padding:0 44px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:17px}.brand small{display:block;font-size:9px;font-weight:500;letter-spacing:2.1px;color:var(--muted)}.logo{width:43px;height:43px;border-radius:14px;background:var(--ink);color:var(--yellow);font:italic 38px Georgia;display:flex;align-items:center;justify-content:center;position:relative;padding-right:5px}.logo span{position:absolute;font:bold 17px sans-serif;right:4px;top:0}.header-note{font-size:12px;color:var(--muted)}.tiny-star{color:#849550;font-size:23px;margin-left:16px}main{max-width:1192px;margin:30px auto 64px;padding:0 28px;min-height:calc(100vh - 270px)}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:700;display:flex;align-items:center;gap:9px}.eyebrow:before{content:'';width:7px;height:7px;background:var(--green);border-radius:50%}.home-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:65px;align-items:start}.hero{padding:26px 0}.hero h1{font-size:54px;line-height:1.35;font-weight:600;letter-spacing:-2px;margin:25px 0 19px}.hero h1 em{font-style:normal;position:relative;white-space:nowrap;z-index:0}.hero h1 em:after{content:'';position:absolute;background:var(--yellow);height:18px;bottom:4px;left:0;right:0;z-index:-1;border-radius:5px;transform:rotate(-2deg)}.subtext{color:var(--muted);font-size:15px;line-height:1.9}.hero-art{height:255px;background:#eaf0e5;border-radius:24px;margin-top:32px;position:relative;overflow:hidden}.hero-art svg{width:100%;height:100%;display:block}.art-label{position:absolute;left:24px;bottom:17px;font-size:10px;letter-spacing:1.4px;color:#687f6c}.step-tag{font:12px 'DM Sans',sans-serif;color:#8b9888;letter-spacing:1px}.setup{background:white;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:0 9px 30px #173e3504}.setup h2{font-size:21px;margin:2px 0 21px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label.field{font-weight:500;font-size:13px;display:block}.field input,.field select{width:100%;margin-top:9px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:12px;color:var(--ink);min-height:48px}.field input::placeholder{color:#9ba499}.version-label{margin:25px 0 12px;font-size:13px;font-weight:500}.version-card{width:100%;text-align:left;border:1.5px solid var(--line);background:white;border-radius:14px;padding:15px 17px;margin-bottom:11px;display:flex;gap:13px;align-items:center;color:var(--ink);position:relative}.version-card.active{background:#f3f7ed;border-color:#679077}.version-icon{flex-shrink:0;width:40px;height:40px;background:var(--mint);border-radius:12px;display:grid;place-items:center;font-size:24px}.version-card.advanced .version-icon{background:#f5efdc;color:#9b813c}.version-card strong{font-size:16px;display:block}.version-card small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.version-card .radio{margin-left:auto;border:1.5px solid #bdcbbd;border-radius:50%;width:18px;height:18px;flex-shrink:0}.version-card.active .radio{border:5px solid var(--green)}.version-meta{font-size:11px;color:var(--muted);margin:2px 0 22px}.btn{border:0;border-radius:10px;padding:13px 22px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:47px;transition:background .15s,transform .15s}.btn:active{transform:translateY(1px)}.primary{background:var(--ink);color:white}.primary:hover{background:#285c4b}.secondary{background:#edf1e8;color:var(--ink)}.text-btn{border:0;background:none;color:var(--muted);padding:8px;font-size:12px}.full{width:100%}.start-note{font-size:10px;color:#8c978a;text-align:center;margin:12px 0 0}.form-error{font-size:12px;color:#b04439;min-height:0;margin:8px 0}.form-error:empty{display:none}.features{display:flex;gap:30px;margin-top:25px;font-size:12px;color:var(--muted)}.features span:before{content:'✓';color:var(--green);margin-right:7px}footer{max-width:1192px;margin:auto;padding:22px 28px 28px;border-top:1px solid var(--line);color:#8c978b;font-size:11px;display:flex;justify-content:space-between}.resume-banner{background:#edf2dc;padding:14px 18px;border-radius:12px;margin-bottom:22px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px}.resume-banner button{padding:8px 14px;font-size:12px}.exam-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:20px}.exam-title h1{font-size:27px;margin:0 0 5px}.exam-title p{font-size:12px;color:var(--muted);margin:0}.timer{background:white;border:1px solid var(--line);padding:11px 20px;border-radius:12px;white-space:nowrap}.timer small{display:block;color:var(--muted);font-size:10px}.timer strong{font-size:23px;font-variant-numeric:tabular-nums;letter-spacing:1px}.exam-grid{display:grid;grid-template-columns:205px minmax(0,1fr);gap:24px}.sidebar{position:sticky;top:20px;align-self:start}.nav-card{border:1px solid var(--line);border-radius:16px;background:white;padding:18px}.nav-card h3{font-size:13px;margin:0 0 14px}.section-tab{display:block;width:100%;padding:10px 12px;margin-bottom:5px;border:0;border-radius:8px;text-align:left;background:none;color:var(--muted);font-size:12px}.section-tab.active{background:var(--mint);color:var(--ink);font-weight:600}.section-tab span{float:right;font-size:10px}.nav-divider{height:1px;background:var(--line);margin:16px 0}.answer-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.answer-num{height:29px;font-size:11px;background:#f6f7f2;border:1px solid var(--line);border-radius:6px;color:var(--muted)}.answer-num.done{color:white;background:var(--green);border-color:var(--green)}.legend{font-size:10px;color:var(--muted);margin:12px 0 0}.progress-info{display:flex;justify-content:space-between;font-size:11px;margin:17px 0 7px;color:var(--muted)}.progress-track{height:5px;border-radius:3px;background:#e3e9de;overflow:hidden}.progress-track i{display:block;height:100%;background:var(--green);transition:width .2s}.save-note{font-size:10px;text-align:center;color:var(--muted);margin:13px 0}.content-card{background:white;border:1px solid var(--line);border-radius:20px;padding:30px}.section-kicker{font-size:10px;letter-spacing:1.5px;color:var(--green);font-weight:600}.content-card h2{font-size:23px;margin:6px 0 8px}.instruction{font-size:12px;color:var(--muted);margin:0 0 24px}.passage{background:#f6f8f1;padding:24px;border:1px solid #e4e9dd;border-radius:13px;margin-bottom:26px;font-family:Georgia,'Times New Roman',serif;font-size:17px;line-height:1.95;color:#2d4036}.passage p{margin:0 0 15px}.passage p:last-child{margin-bottom:0}.passage h3{font-size:17px;margin:0 0 8px}.passage article+article{border-top:1px solid #d9e0d0;margin-top:18px;padding-top:18px}.blank-ref{display:inline-block;color:var(--green);font:bold 13px 'DM Sans',sans-serif;border-bottom:1px solid #7e9a77;min-width:38px;text-align:center;padding:0 5px}.question{padding:24px 0;border-top:1px solid #e9ede4;scroll-margin-top:28px}.question:first-of-type{padding-top:0;border-top:0}.q-heading{display:flex;gap:12px;margin:0 0 14px;align-items:baseline}.q-no{color:#668b72;font:600 13px 'DM Sans',sans-serif;min-width:25px}.q-text{font-family:Georgia,'Times New Roman','Noto Sans SC',serif;font-size:18px;font-weight:400;white-space:pre-line;line-height:1.6}.options{display:grid;gap:9px;margin-left:37px}.option{border:1px solid #e0e6db;border-radius:9px;padding:11px 14px;display:flex;gap:12px;align-items:baseline;cursor:pointer;line-height:1.5;color:#415447;transition:background .15s}.option:hover{background:#f6f8f1}.option.selected{background:#eef5e9;border-color:#6e9976;color:#173e35}.option input{position:absolute;opacity:0;pointer-events:none}.option:focus-within{outline:2px solid #7aa68c;outline-offset:2px}.option-letter{height:24px;min-width:24px;text-align:center;line-height:24px;background:#f0f3ec;border-radius:6px;font-size:11px;font-weight:600}.selected .option-letter{background:var(--green);color:white}.option-text{font-family:Georgia,'Times New Roman',serif;font-size:16px}.question-image{display:block;width:min(100%,520px);margin:12px 0 18px 0;border-radius:7px}.fill-input{margin-left:37px;background:#fafbf6;border:1px solid #cfdccd;border-radius:9px;padding:12px 15px;color:var(--ink);width:min(300px,calc(100% - 37px));font-family:'DM Sans',sans-serif}.section-actions{display:flex;justify-content:space-between;margin-top:24px;gap:12px}.section-actions .btn{font-size:13px}.result-wrap{max-width:650px;margin:45px auto;text-align:center}.result-check{width:64px;height:64px;margin:auto;background:#e6edda;border-radius:50%;display:grid;place-items:center;font-size:26px}.result-wrap h1{font-size:32px;margin:18px 0 8px}.result-sub{font-size:13px;color:var(--muted);margin-bottom:28px}.result-card{border:1px solid var(--line);border-radius:24px;background:white;padding:34px;box-shadow:0 10px 35px #173e3504}.result-person{display:flex;justify-content:center;gap:20px;color:var(--muted);font-size:13px;padding-bottom:24px;border-bottom:1px dashed var(--line);overflow-wrap:anywhere}.score-caption{font-size:12px;margin-top:27px;color:var(--muted)}.score{font:600 80px 'DM Sans',sans-serif;line-height:1.2;letter-spacing:-4px;margin:10px 0 24px}.score span{font-size:28px;font-weight:400;color:#99a491;letter-spacing:0;margin-left:9px}.score-metrics{display:grid;grid-template-columns:1fr 1fr;background:#f5f7ef;border-radius:13px;padding:21px}.score-metrics div+div{border-left:1px solid var(--line)}.score-metrics strong{display:block;font-size:25px;font-weight:500;font-variant-numeric:tabular-nums}.score-metrics small{font-size:11px;color:var(--muted)}.result-note{font-size:11px;color:var(--muted);margin-top:20px}.result-wrap>.btn{margin-top:25px}dialog{border:1px solid var(--line);border-radius:22px;padding:30px;max-width:420px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 30px 90px #152b3520}dialog::backdrop{background:#14372d66;backdrop-filter:blur(3px)}dialog h2{font-size:21px;margin:12px 0}dialog p{font-size:13px;color:var(--muted);line-height:1.8}.dialog-icon{font-size:22px;background:var(--mint);border-radius:12px;width:45px;height:45px;display:grid;place-items:center}.dialog-actions{display:flex;gap:12px;margin-top:24px}.dialog-actions .btn{flex:1;font-size:13px;padding:12px}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 20px;border-radius:10px;font-size:12px;z-index:10;display:none}@media(min-width:1400px){main{margin-top:55px}.hero h1{font-size:58px}}@media(max-width:900px){.home-grid{gap:30px}.hero h1{font-size:43px}.setup{padding:24px}.exam-grid{grid-template-columns:175px minmax(0,1fr);gap:16px}.nav-card{padding:14px}.answer-grid{gap:5px}.content-card{padding:23px}}@media(max-width:680px){.header{height:80px;padding:0 20px}.brand{font-size:15px}.logo{width:37px;height:37px;font-size:32px}.header-note{display:none}main{padding:0 18px;margin:15px auto 35px}.home-grid{grid-template-columns:1fr;gap:12px}.hero{padding:10px 4px 18px}.hero h1{font-size:39px;margin:16px 0 12px;letter-spacing:-1px}.subtext{font-size:13px}.hero-art{height:170px;margin-top:22px}.features{gap:20px;margin-top:17px;font-size:11px}.setup{padding:23px 20px;border-radius:20px}.setup h2{font-size:19px}.exam-top{gap:10px;margin-bottom:18px}.exam-title h1{font-size:22px}.timer{padding:8px 12px}.timer strong{font-size:20px}.exam-grid{display:block}.sidebar{position:static;margin-bottom:16px}.nav-card{padding:12px}.nav-card>h3,.nav-divider,.legend,.answer-grid{display:none}.nav-sections{display:flex;overflow-x:auto;gap:5px}.section-tab{white-space:nowrap;width:auto;flex-shrink:0;margin:0;padding:8px 10px;font-size:11px}.section-tab span{float:none;margin-left:8px}.progress-info{margin-top:11px}.save-note{margin:8px 0 0;font-size:9px}.content-card{padding:21px 17px;border-radius:15px}.content-card h2{font-size:21px}.passage{padding:17px 15px;font-size:16px;line-height:1.95}.q-text{font-size:17px}.options{margin-left:0}.option{padding:11px}.q-heading{gap:8px}.q-no{min-width:24px}.option-text{font-size:16px}.fill-input{margin-left:32px}.section-actions .btn{padding:11px 14px;font-size:12px}.result-wrap{margin:30px auto}.result-card{padding:26px 20px}.result-wrap h1{font-size:28px}.score{font-size:72px}.score-metrics strong{font-size:21px}.result-person{gap:12px;flex-wrap:wrap}footer{padding:18px;font-size:10px}footer span{display:none}.resume-banner{font-size:11px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.region-note{font-size:11px;color:var(--muted);margin:-14px 0 16px}.reading-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}.reading-layout.has-passage{grid-template-columns:minmax(300px,.92fr) minmax(0,1.08fr);align-items:start}.reading-layout.has-passage .passage-pane{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto}.reading-layout.has-passage .passage-pane .passage{margin:0}.questions-pane .question:first-child{padding-top:0;border-top:0}@media(max-width:900px){.reading-layout.has-passage{grid-template-columns:1fr}.reading-layout.has-passage .passage-pane{position:static;max-height:none}.reading-layout.has-passage .passage-pane .passage{margin-bottom:0}}
.result-actions{display:flex;justify-content:center;gap:12px;margin:22px 0 6px}.share-note{font-size:11px;color:var(--muted);word-break:break-all}.review-card{margin-top:26px;text-align:left}.review-card h2{font-size:20px;margin:0 0 14px}.review-item{background:white;border:1px solid var(--line);border-left:4px solid #b44a42;border-radius:10px;padding:14px 16px;margin:10px 0}.review-item.is-correct{border-left-color:var(--green)}.review-head{display:flex;justify-content:space-between;font-size:13px}.review-item.is-correct .review-head span{color:var(--green)}.review-item.is-wrong .review-head span{color:#b44a42}.review-question{font-family:Georgia,'Times New Roman',serif;font-size:15px;white-space:pre-line}.review-item p{margin:6px 0;font-size:12px;color:var(--muted)}.review-item b{color:var(--ink)}@media print{.header,footer,.result-actions,.share-note,#back-home,.result-check{display:none!important}body{background:#fff}.result-wrap{max-width:none;margin:0}.result-card,.review-item{box-shadow:none;break-inside:avoid}.review-card{margin-top:10px}}
