
:root{color-scheme:light;--ink:#16334d;--muted:#60758a;--blue:#216fba;--line:#dce8f1;--paper:#fff;--bg:#f3f8fc;--coral:#d95344}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.7}
a{color:var(--blue)}header{background:#12579a;color:white;padding:18px max(20px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}header a{color:white;text-decoration:none;font-weight:700}.brand{font-size:1.2rem}.header-note{font-size:.86rem;opacity:.85}
main{max-width:1180px;margin:auto;padding:30px 20px 70px}.hero{background:linear-gradient(125deg,#e2f2ff,#fff 60%,#ffe9df);border:1px solid var(--line);border-radius:24px;padding:34px;margin-bottom:26px}.eyebrow{color:var(--coral);font-weight:700;letter-spacing:.06em;font-size:.86rem}.hero h1{font-size:clamp(1.8rem,4vw,3rem);line-height:1.2;margin:10px 0}.hero p{max-width:760px;color:var(--muted);margin:0}.pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.pill{background:white;border:1px solid var(--line);border-radius:99px;padding:5px 12px;font-size:.85rem}
.panel,.chapter-card,.scan-card{background:var(--paper);border:1px solid var(--line);border-radius:18px}.panel{padding:26px;margin-bottom:20px}.panel h1,.panel h2{line-height:1.35}.panel h1{margin:0 0 10px}.panel h2{font-size:1.18rem}.panel section{border-top:1px solid var(--line);padding-top:10px;margin-top:22px}.note{background:#f5f9fd;border-left:3px solid #73b8e8;padding:10px 14px;color:#516b81}.tag{display:inline-block;color:#a54639;background:#ffede8;border-radius:99px;padding:3px 10px;font-size:.8rem;font-weight:700}.chapter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.chapter-card{padding:18px}.chapter-card h2{margin:0 0 8px;font-size:1.05rem}.chapter-card p{font-size:.9rem;color:var(--muted);margin:0}.topic-links{display:grid;gap:10px}.topic-links a{display:flex;justify-content:space-between;gap:15px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;text-decoration:none;background:white}.topic-links a:hover{border-color:#7db6e4;background:#f7fbff}.chapter-card a{text-decoration:none;font-weight:650}.chapter-card a:hover{text-decoration:underline}
.scan-card{padding:18px}.scan-card img{width:100%;height:auto;border:1px solid #e3e7eb;border-radius:8px;display:block}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 18px}.button{display:inline-block;background:#1767ae;color:#fff;text-decoration:none;border-radius:9px;padding:8px 14px;font-weight:650}.button.secondary{background:#edf6fd;color:#1767ae}.pages{display:flex;flex-wrap:wrap;gap:7px}.pages a{display:inline-block;text-decoration:none;background:#e6f2fb;padding:3px 9px;border-radius:7px}.pages a.active{background:#1767ae;color:#fff}.footer{color:var(--muted);font-size:.85rem;margin-top:24px}.questions{border:1px dashed #8dbbdc;background:#f8fcff;border-radius:14px;padding:18px;margin-top:24px}.questions h2{margin:0 0 6px}.questions p{margin:0;color:var(--muted)}
@media(max-width:760px){header{padding:15px 20px}.header-note{display:none}.panel{padding:20px}}

.chapter-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.chapter-nav a{padding:7px 12px;background:#e6f2fb;border-radius:999px;text-decoration:none;font-weight:650}.chapter-nav a:hover{background:#cce8fa}.topic-meta{color:var(--muted);margin:4px 0 16px}.topic-links a small{color:var(--muted);white-space:nowrap}.chapter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.chapter-heading h2{margin:8px 0}.chapter-intro{color:var(--muted)}.breadcrumbs{color:var(--muted);margin-bottom:14px}.breadcrumbs a{text-decoration:none}.summary-list{padding-left:1.3rem}.summary-list li{margin:7px 0}.scan-card h2{margin:0 0 6px}.topic-nav{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}html{scroll-behavior:smooth}section[id^="ch-"]{scroll-margin-top:18px}











/* chapter extension */
.chapter-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.chapter-nav a{padding:7px 12px;background:#e6f2fb;border-radius:999px;text-decoration:none;font-weight:650}.chapter-nav a:hover{background:#cce8fa}.topic-meta{color:var(--muted);margin:4px 0 16px}.topic-links a small{color:var(--muted);white-space:nowrap}.chapter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.chapter-heading h2{margin:8px 0}.chapter-intro{color:var(--muted)}.breadcrumbs{color:var(--muted);margin-bottom:14px}.breadcrumbs a{text-decoration:none}.summary-list{padding-left:1.3rem}.summary-list li{margin:7px 0}.scan-card h2{margin:0 0 6px}.topic-nav{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}html{scroll-behavior:smooth}section[id^="ch-"]{scroll-margin-top:18px}

/* Inline reviewed questions */
.mistake-count{font-weight:700;color:#a94932}.questions{margin-top:28px}.inline-question{border:1px solid var(--line);border-radius:14px;background:#fff;padding:17px 18px;margin:15px 0}.question-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:10px}.question-head strong{font-size:1.04rem}.difficulty{color:#b97613;font-weight:800;letter-spacing:.07em;white-space:nowrap}.question-prompt{line-height:1.9;overflow-x:auto;overflow-y:hidden}.question-stem{margin-bottom:8px}.question-options{list-style:none;padding:0;margin:10px 0 2px;display:grid;gap:7px}.question-options li{display:grid;grid-template-columns:1.7em minmax(0,1fr);gap:6px;align-items:start;border-radius:8px;background:#f7fafc;padding:7px 10px}.option-letter{font-weight:800;color:#1767ae}.question-prompt .katex,.answer-body .katex{font-size:1.06em}.question-hint{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.question-hint summary{cursor:pointer;color:#1767ae;font-weight:700}.answer-body{background:#f4f9fd;border-left:3px solid #8bc4e9;padding:9px 11px;margin:10px 0 0;line-height:1.9;overflow-x:auto}.question-hint.note-flag .answer-body{background:#fff5ef;border-left-color:#dc9465}@media(max-width:600px){.inline-question{padding:14px}.question-prompt .katex,.answer-body .katex{font-size:1em}}
