:root{color-scheme:light;--green:#245c4f;--ink:#202c29;--muted:#66736e;--border:#dbe2dc;--paper:#fffefa;--bg:#f4f6f2;font-family:system-ui,-apple-system,"Segoe UI","Malgun Gothic",sans-serif;font-size:15px;color:var(--ink);background:var(--bg)}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,select:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b77c21;outline-offset:4px}button{transition:background .15s,border-color .15s}h1,h2,p{margin:0}h1{font-size:27px;line-height:1.5;letter-spacing:-.9px;word-break:keep-all}h2{font-size:16px;line-height:1.5}p{line-height:1.85;word-break:keep-all;overflow-wrap:anywhere}a{color:inherit}.skip{position:fixed;top:-60px;left:16px;background:var(--green);color:white;padding:12px;z-index:20}.skip:focus{top:12px}
.header{background:var(--paper);border-bottom:1px solid var(--border)}.header-inner{max-width:1120px;margin:auto;padding:26px 28px 0}.heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.heading strong{font-size:23px;letter-spacing:-.7px}.heading span{font-size:12px;color:var(--muted)}.main-tabs{display:flex;gap:28px;margin-top:22px}.main-tabs button{border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);padding:0 2px 14px;font-weight:650}.main-tabs button.active{color:var(--green);border-color:var(--green)}
main{max-width:1120px;margin:0 auto;padding:24px 28px 40px;min-height:70vh}.unit-tabs{display:flex;gap:8px;flex-wrap:wrap}.unit-button{padding:9px 15px;border:1px solid var(--border);border-radius:7px;background:var(--paper);font-size:13px;color:var(--muted);line-height:1.5}.unit-button:hover{border-color:#98b3a4}.unit-button.selected{background:#e4eee8;border-color:#99b3a4;color:var(--green);font-weight:650}.concept-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:24px;margin-top:22px;align-items:start}.contents{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto}.contents h2{font-size:13px;color:var(--muted);padding:6px 11px 14px;display:flex;justify-content:space-between;gap:8px}.contents h2 span{font-weight:400;font-size:11px}.contents nav{display:flex;flex-direction:column;gap:3px}.contents nav button{background:none;border:0;text-align:left;padding:11px;border-radius:6px;color:var(--muted);font-size:13px;line-height:1.6;word-break:keep-all}.contents nav button:hover{background:#e9eee8}.contents nav button.current{background:#e4eee8;color:var(--green);font-weight:650}.mobile-label,#lesson-select{display:none}
.concept{background:var(--paper);border:1px solid var(--border);border-radius:10px;padding:30px 34px}.article-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px;margin-bottom:13px}.article-meta span{white-space:nowrap}.core{font-size:16px;font-weight:600;background:#eaf1eb;border-left:3px solid var(--green);padding:16px 18px;margin-top:22px;border-radius:0 5px 5px 0}.points section{margin-top:24px}.points h2{font-size:15px;margin-bottom:6px}.points p{font-size:14px;color:#46534d}.example{background:#f6f1e6;border-radius:6px;padding:16px 18px;margin-top:25px}.example strong{font-size:12px;color:#7e6230}.example p{font-size:13px;margin-top:5px}.confusion{margin-top:18px;padding:14px 0;border-top:1px solid var(--border);font-size:13px;color:var(--muted)}summary{cursor:pointer;line-height:1.7}details p{margin-top:12px}.supplement{font-size:11px;color:var(--muted);margin-top:10px}.primary,.secondary{border:1px solid var(--green);border-radius:7px;min-height:43px;padding:10px 20px;font-size:13px;font-weight:650}.primary{background:var(--green);color:white}.primary:hover:not(:disabled){background:#194c40}.primary:disabled{background:#9caba2;border-color:#9caba2;opacity:.65}.secondary{background:transparent;color:var(--green);border-color:#aabfb1}.text-button{background:none;border:0;color:var(--green);padding:5px 0;font-size:12px;line-height:1.7}.text-button:hover{text-decoration:underline}.concept-quiz{margin-top:9px}.lesson-nav{display:flex;justify-content:space-between;margin-top:27px;padding-top:20px;border-top:1px solid var(--border);gap:20px}
.quiz-intro,.result{max-width:760px;margin:26px auto;background:var(--paper);border:1px solid var(--border);border-radius:10px;padding:34px}.lead{color:var(--muted);font-size:14px;margin-top:12px}.scope-picker{margin:28px 0}.scope-picker h2{font-size:13px;margin-bottom:13px}.small-note{color:var(--muted);font-size:11px;margin-top:15px}.quiz-top{max-width:760px;margin:8px auto 15px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--muted);font-size:11px}.question{max-width:760px;margin:auto;background:var(--paper);border:1px solid var(--border);border-radius:10px;padding:28px 34px}.question-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.progress{height:3px;background:#e9eee8;border-radius:2px;margin:13px 0 26px;overflow:hidden}.progress i{display:block;height:100%;background:var(--green)}.question h1{font-size:22px;line-height:1.65;letter-spacing:-.5px}.choices{display:flex;flex-direction:column;gap:10px;margin-top:25px}.choice{display:flex;align-items:flex-start;gap:12px;text-align:left;border:1px solid var(--border);background:white;border-radius:7px;padding:14px;line-height:1.7;color:var(--ink);font-size:14px}.choice:hover:not(:disabled){border-color:#7fa18d;background:#f7faf6}.letter{background:#f0f3ee;width:26px;min-width:26px;height:26px;text-align:center;border-radius:5px;line-height:26px;color:var(--muted);font-size:11px;font-weight:650}.choice.chosen{border-color:var(--green);background:#edf4ee}.choice.correct{border-color:#61977c;background:#eaf4eb}.choice.incorrect{border-color:#bf8c7e;background:#fbefeb}.choice:disabled{opacity:1}.answer-tag{display:inline-block;margin-left:9px;font-size:10px;color:var(--green);white-space:nowrap}.answer-hint{font-size:11px;color:var(--muted);margin-top:18px}.feedback{border-radius:6px;padding:16px 18px;margin-top:21px;background:#edf4ee}.feedback.wrong{background:#f9f0e8}.feedback strong{font-size:14px}.feedback p{font-size:13px;margin:7px 0}.question-bottom{text-align:right;margin-top:22px;border-top:1px solid var(--border);padding-top:18px}.kicker{font-size:12px;color:var(--muted);margin-bottom:12px}.result h1{font-size:38px;color:var(--green)}.result h1 span{font-size:18px;color:var(--ink);font-weight:500}.result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.review-title{margin-top:32px;margin-bottom:12px;font-size:15px}.review{border-top:1px solid var(--border);padding:15px 0;font-size:13px}.review summary{font-weight:600}.review p{font-size:13px}.my-answer{color:#9c5745}.correct-answer{color:var(--green);font-weight:600}footer{max-width:1120px;margin:0 auto;padding:0 28px 26px;color:#78827d;font-size:10px;line-height:1.8}footer p+p{margin-top:5px}
@media(max-width:760px){.header-inner{padding:20px 18px 0}.heading{align-items:flex-start}.heading strong{font-size:20px}.heading span{font-size:10px;line-height:1.6;text-align:right;max-width:140px}.main-tabs{margin-top:20px;gap:26px}.main-tabs button{font-size:14px}main{padding:20px 16px 30px}.unit-tabs{gap:7px}.unit-button{font-size:12px;padding:8px 12px}.concept-layout{display:block;margin-top:17px}.contents{position:static;max-height:none;overflow:visible;margin-bottom:17px}.contents h2{padding:0 0 9px;font-size:12px}.contents nav{display:none}.mobile-label{display:none}#lesson-select{display:block;width:100%;border:1px solid var(--border);border-radius:7px;background:var(--paper);color:var(--ink);padding:11px;font-size:13px;line-height:1.5;min-width:0}.concept{padding:23px 20px}h1{font-size:22px;line-height:1.55}.core{font-size:14px;padding:13px 15px}.points p{font-size:13px}.points section{margin-top:21px}.article-meta{font-size:10px}.example{padding:13px 15px}.concept-quiz{width:100%}.quiz-intro,.result{margin:10px auto;padding:25px 20px}.question{padding:23px 20px}.question h1{font-size:19px}.choice{font-size:13px;padding:12px;gap:10px}.question-bottom .primary{width:100%}.result h1{font-size:32px}.result h1 span{font-size:16px}.quiz-top{align-items:flex-start;font-size:10px}.quiz-top .text-button{padding:0;font-size:11px;white-space:nowrap}footer{padding:0 18px 22px}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
