:root{--paper:#f7f8f6;--white:#fff;--ink:#232923;--muted:#788078;--line:#e6e9e3;--green:#426b51;--green-dark:#294532;--sage:#e8eee6;--accent:#c27651;--serif:Georgia,'Noto Sans TC',serif;--sans:'DM Sans','Noto Sans TC',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px}.site-head{height:82px;padding:0 max(6vw,24px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#f7f8f6ed}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);font-weight:700;font-size:18px}.brand-mark{display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:var(--green);color:white;font-family:var(--serif);font-size:19px}.brand small{display:block;font-size:8px;letter-spacing:.16em;color:var(--muted);font-weight:500;margin-top:3px}.nav{display:flex;align-items:center;gap:34px}.nav a,.site-foot a{font-size:13px;color:#555e56;text-decoration:none}.nav a:hover,.site-foot a:hover{color:var(--green)}.nav .nav-cta{padding:11px 17px;border:1px solid #cfd8cf;border-radius:5px}.menu-toggle{display:none}main{max-width:1120px;margin:auto;padding:0 28px;min-height:64vh}.home-wrap{padding-top:38px}.crumb{font-size:11px;color:#9aa199;letter-spacing:.08em;margin-bottom:25px}.hero{display:grid;grid-template-columns:1.12fr .88fr;min-height:340px;background:#eaf0e8;border-radius:7px;overflow:hidden}.hero-copy{padding:48px 5vw;align-self:center}.eyebrow{color:var(--green);font-size:10px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}.hero h1{font-family:var(--serif);font-weight:500;color:#2b3c2e;font-size:clamp(36px,5vw,58px);line-height:1.32;margin:17px 0 14px;letter-spacing:.015em}.hero p{color:#667067;line-height:1.9;font-size:14px;max-width:450px;margin:0}.hero-visual{position:relative;overflow:hidden;background:linear-gradient(145deg,#dbe6d8,#afc0ab)}.sun{position:absolute;width:126px;height:126px;background:#f1e7cb;border-radius:100%;top:45px;right:19%;opacity:.85}.hill{position:absolute;bottom:-100px;width:120%;height:230px;border-radius:50% 50% 0 0}.hill.one{background:#95a991;left:-30%;transform:rotate(-12deg)}.hill.two{background:#6f8d72;left:25%;bottom:-145px;transform:rotate(13deg)}.drone{position:absolute;top:41%;left:45%;width:92px;height:3px;background:#384e3d;transform:rotate(-8deg)}.drone:before,.drone:after{content:'';position:absolute;width:29px;height:8px;border:2px solid #384e3d;border-radius:50%;top:-5px}.drone:before{left:-11px}.drone:after{right:-11px}.drone i{position:absolute;width:14px;height:14px;background:#384e3d;border-radius:50%;left:39px;top:-6px}.section-head{display:flex;align-items:end;justify-content:space-between;margin:52px 0 18px}.section-head h2{font-family:var(--serif);font-size:27px;font-weight:500;margin:5px 0 0;color:#303a31}.section-head p{font-size:12px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.card{position:relative;background:white;border:1px solid var(--line);border-radius:6px;padding:22px 23px;min-height:195px;cursor:pointer;transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-3px);box-shadow:0 11px 28px #283c2c12}.card-top{display:flex;justify-content:space-between;align-items:center}.card .tag{font-size:10px;color:var(--green);letter-spacing:.07em;font-weight:700}.card .num{font-family:var(--serif);font-size:12px;color:#a2aaa1}.card h3{font-size:18px;color:#354137;margin:22px 0 8px}.card p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}.card .arrow{position:absolute;bottom:19px;right:22px;color:var(--green);font-size:13px}.guide{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:44px 0 54px;padding:24px;background:#f0f2ed;border-radius:5px}.guide h3{font-family:var(--serif);font-size:18px;font-weight:500;margin:0 0 8px;color:#344537}.guide p{font-size:12px;line-height:1.8;color:var(--muted);margin:0}.notice{padding-left:18px;border-left:1px solid #bdcbbd}.site-foot{padding:28px max(6vw,24px);border-top:1px solid var(--line);font-size:12px;color:var(--muted);display:flex;align-items:center;gap:18px}.site-foot>div{font-weight:700;color:#3e4e40;white-space:nowrap}.site-foot .brand-mark{display:inline-grid;width:25px;height:25px;font-size:13px;vertical-align:middle}.site-foot p{margin:0 auto 0 0}.site-foot a{white-space:nowrap;font-size:12px}#app{padding-bottom:10px}.exam-top{display:flex;align-items:center;justify-content:space-between;margin:42px 0 15px;color:var(--muted);font-size:13px}.back{border:0;background:none;color:var(--green);font:inherit;cursor:pointer}.progress{height:4px;background:#e3e8e1;border-radius:8px;margin-bottom:22px;overflow:hidden}.progress i{display:block;height:100%;background:var(--green);transition:width .2s}.qcard{background:white;border:1px solid var(--line);border-radius:7px;padding:clamp(22px,5vw,42px)}.qmeta{font-size:11px;color:var(--green);font-weight:700;letter-spacing:.06em}.qtext{font-size:clamp(18px,2.7vw,23px);line-height:1.75;margin:18px 0 26px;color:#2d3d31;font-weight:600}.answers{display:grid;gap:10px}.answer{display:flex;align-items:flex-start;gap:14px;text-align:left;width:100%;border:1px solid var(--line);border-radius:5px;padding:14px;background:white;font:inherit;line-height:1.7;cursor:pointer;color:var(--ink)}.answer:hover{border-color:#a5b8a3;background:#fafcf9}.answer.selected{border:2px solid var(--green);background:#f3f7f2;padding:13px}.letter{flex:0 0 27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#eff2ed;color:#566356;font-size:12px;font-weight:700}.selected .letter{background:var(--green);color:white}.actions{display:flex;justify-content:space-between;margin-top:23px;gap:12px}.btn{border:1px solid var(--line);background:white;color:#38443a;border-radius:5px;padding:11px 18px;font:600 13px var(--sans);cursor:pointer}.btn.primary{background:var(--green);border-color:var(--green);color:white}.btn:disabled{opacity:.4;cursor:default}.result{text-align:center;background:white;border:1px solid var(--line);border-radius:7px;padding:38px 27px;margin:42px 0}.score{font-size:72px;line-height:1;font-weight:600;color:var(--green-dark);margin:18px}.pass{display:inline-block;border-radius:24px;background:#e5f0e6;color:#356144;padding:7px 14px;font-size:12px;font-weight:700}.fail{background:#f6e8e4;color:#9f4837}.review{text-align:left;margin-top:34px}.review h2{font-family:var(--serif);font-size:22px;color:#344537;font-weight:500}.review-item{padding:17px 0;border-top:1px solid var(--line);line-height:1.75;font-size:13px}.wrong{color:#b34f42}.correct{color:#39724e}.result-actions{display:flex;justify-content:center;gap:10px;margin-top:24px}.loading{padding:80px 10px;color:var(--muted)}@media(max-width:760px){.site-head{height:69px;padding:0 20px}.nav{display:none;position:absolute;z-index:5;top:69px;left:0;right:0;background:var(--paper);padding:20px;flex-direction:column;gap:20px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.menu-toggle{display:block;border:0;background:none;font-size:20px;color:var(--green)}main{padding:0 17px}.home-wrap{padding-top:24px}.crumb{margin-bottom:17px}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:34px 27px}.hero h1{font-size:39px}.hero-visual{height:185px}.sun{width:80px;height:80px;top:18px}.hill{height:150px;bottom:-75px}.hill.two{bottom:-104px}.cards{grid-template-columns:1fr}.card{min-height:165px}.section-head{margin-top:37px;gap:12px}.section-head p{max-width:130px;text-align:right;line-height:1.6}.guide{grid-template-columns:1fr;gap:20px;margin:30px 0}.notice{padding-top:16px;padding-left:0;border-left:0;border-top:1px solid #bdcbbd}.site-foot{padding:22px 18px;flex-wrap:wrap;gap:10px}.site-foot p{order:3;width:100%}.site-foot a{margin-left:auto}.exam-top{margin-top:28px}.qcard{padding:21px 16px}.result{padding:30px 16px}}
.profile-links{display:flex;gap:18px;margin-top:20px;flex-wrap:wrap}.profile-links a{font-size:12px;color:var(--green);text-decoration:none;border-bottom:1px solid #aebfae;padding-bottom:3px}.profile-links a:hover{color:var(--green-dark)}.visual-caption{position:absolute;right:18px;bottom:14px;color:#f5f7f0;font-size:9px;letter-spacing:.16em}.footer-links{display:flex;gap:15px;white-space:nowrap}@media(max-width:760px){.footer-links{width:100%;order:4;justify-content:space-between}}

.review-question{font-size:16px;line-height:1.8;margin:0 0 8px}.review-status{font-size:13px;margin:0 0 12px}.review-options{list-style:none;padding:0;margin:0;display:grid;gap:8px}.review-option{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:6px;padding:12px;color:var(--ink)}.review-letter{font-weight:700;flex:0 0 20px}.review-option-text{flex:1;min-width:0;overflow-wrap:anywhere}.review-labels{display:flex;flex-wrap:wrap;gap:4px;max-width:150px;font-size:11px}.review-labels span{border:1px solid currentColor;border-radius:4px;padding:1px 5px;white-space:nowrap}.review-option.option-wrong{color:#b1322b;background:#fff1ef;border-color:#e7aaa5}.review-option.option-correct{color:#28613a;background:#eef7ef;border-color:#afcfb5}.review-wrong .review-question{color:#b1322b}@media(max-width:600px){.review-option{flex-wrap:wrap}.review-option-text{flex-basis:calc(100% - 30px)}.review-labels{margin-left:30px;max-width:100%}}

.exam-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:16px;padding:14px 0;background:var(--paper);border-bottom:1px solid var(--line);margin-top:24px;font-size:13px}.exam-toolbar #answered-count{margin-left:auto;color:var(--muted);white-space:nowrap}.exam-instructions{color:var(--muted);font-size:13px;line-height:1.8;margin:20px 0}.exam-paper{display:grid;gap:24px}.exam-question{min-width:0;margin:0}.exam-question legend{padding:0 8px}.exam-question .qtext{margin-top:8px;font-size:20px}.exam-choice{cursor:pointer;align-items:flex-start}.choice-check{appearance:none;-webkit-appearance:none;flex:0 0 24px;width:24px;height:24px;border:2px solid #a1afa1;border-radius:5px;margin:2px 0 0;display:grid;place-items:center;cursor:pointer;background:white}.choice-check:checked{background:var(--green);border-color:var(--green)}.choice-check:checked:after{content:'✓';font:bold 18px var(--sans);color:white;line-height:1}.choice-check:focus-visible{outline:3px solid #91b4d8;outline-offset:3px}.exam-choice:has(.choice-check:checked){border-color:var(--green);background:#f3f7f2}.exam-choice:has(.choice-check:checked) .letter{background:var(--green);color:white}.exam-submit{text-align:center;padding:30px 0}.exam-submit p{font-size:13px;color:var(--muted)}@media(max-width:600px){.exam-toolbar{gap:8px;flex-wrap:wrap;padding:10px 0}.exam-toolbar strong{font-size:12px}.exam-toolbar .btn{padding:9px 12px}.exam-toolbar .back{font-size:12px}.exam-question .qtext{font-size:18px}.exam-choice{gap:9px}.exam-choice .letter{flex-basis:24px}.choice-check{flex-basis:22px;width:22px;height:22px}}

.question-summary{text-align:left;margin-top:28px;padding:20px;border:1px solid #e7c0ba;background:#fff9f7;border-radius:8px}.question-summary h2,.question-summary h3{color:#a3332b;font-size:16px;margin:0 0 12px}.question-summary h3{font-size:14px;margin-top:18px}.question-summary p{font-size:12px;color:var(--muted);margin:14px 0 0}.question-number-links{display:flex;gap:8px;flex-wrap:wrap;align-items:center;color:#546255;font-size:13px}.question-number-links a{display:grid;place-items:center;min-width:36px;min-height:36px;padding:5px 8px;border-radius:5px;border:1px solid #deb1aa;background:white;color:#ad3029;font-weight:700;text-decoration:none}.question-number-links a:hover,.question-number-links a:focus-visible{background:#fbe6e2;outline:2px solid #b55146;outline-offset:2px}.unanswered-numbers a{border-style:dashed}.review-item{scroll-margin-top:24px}.review-item:target{outline:2px solid #ad3029;outline-offset:8px;border-radius:4px}

/* Keep the question number and chapter legible on desktop and mobile. */
.exam-question legend.qmeta{font-size:18px;font-weight:700;line-height:1.6;letter-spacing:.01em;color:var(--green-dark);max-width:100%;white-space:normal;padding:0 10px}
@media(max-width:600px){.exam-question legend.qmeta{font-size:16px;padding:0 6px}}

.question-number{font-weight:800;white-space:nowrap}.question-chapter{font-size:17px;line-height:1.7;font-weight:500;color:#56758f;margin:-14px 0 22px;overflow-wrap:anywhere}.exam-question .qtext{margin-bottom:20px}@media(max-width:600px){.question-chapter{font-size:16px;margin-top:-10px;margin-bottom:18px}}
