:root{
  --ink:#132d27;--muted:#60736d;--green:#176b52;--green2:#258164;
  --mint:#e4f1eb;--cream:#f7f4ec;--gold:#d9aa43;--line:#dce6e1;
  --white:#fff;--shadow:0 22px 60px rgba(20,54,44,.09)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.75}
a{color:inherit;text-decoration:none}
.wrap{width:min(1160px,calc(100% - 36px));margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(247,244,236,.94);border-bottom:1px solid rgba(23,107,82,.12);backdrop-filter:blur(14px)}
.nav{min-height:76px;display:flex;align-items:center;gap:18px}
.brand{display:flex;align-items:center;gap:12px;margin-right:auto}
.mark{width:50px;height:50px;border-radius:17px;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:900;font-size:14px}
.brand b{display:block;font-size:18px}.brand small{display:block;color:var(--muted)}
.nav-links{display:flex;align-items:center;gap:12px;font-weight:750}
.button,.nav-links a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;border:1px solid var(--line);border-radius:13px;background:#fff}
.button.primary{background:var(--green);border-color:var(--green);color:#fff}
.hero{padding:76px 0 48px;background:radial-gradient(circle at 84% 0,rgba(37,129,100,.18),transparent 35%)}
.eyebrow{color:var(--green);font-weight:900;letter-spacing:.13em;font-size:13px;text-transform:uppercase}
h1,h2{font-family:Georgia,"Noto Serif SC","Songti SC",serif;line-height:1.22}
h1{font-size:clamp(38px,6vw,68px);max-width:900px;margin:16px 0}
h2{font-size:clamp(29px,4vw,42px);margin:8px 0 20px}
h3{line-height:1.4}
.lead{max-width:790px;color:var(--muted);font-size:18px}
.crumbs{font-size:14px;color:var(--muted);margin-bottom:18px}.crumbs a{color:var(--green);font-weight:750}
.subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:28px 0 80px}
.subject{position:relative;background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:0 12px 34px rgba(20,54,44,.05);transition:.2s}
.subject:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.subject .icon{width:54px;height:54px;border-radius:18px;background:var(--mint);display:grid;place-items:center;font-size:25px}
.subject h2{font:800 24px/1.35 Inter,"Microsoft YaHei",sans-serif;margin:20px 0 8px}
.subject p{color:var(--muted);min-height:58px}.subject .go{color:var(--green);font-weight:900}
.subject .status{position:absolute;right:20px;top:20px;padding:4px 10px;border-radius:999px;background:var(--mint);color:var(--green);font-size:12px;font-weight:850}
.subject .status.pending{background:#f3eee2;color:#85651e}
.course-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start;padding:34px 0 80px}
.toc{position:sticky;top:100px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px}
.toc b{display:block;margin-bottom:10px}.toc a{display:block;padding:8px 10px;border-radius:10px;color:var(--muted);font-size:14px}.toc a:hover{background:var(--mint);color:var(--green)}
.lesson{min-width:0}.lesson-meta{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}.pill{padding:6px 11px;border-radius:999px;background:var(--mint);color:var(--green);font-size:13px;font-weight:800}
.knowledge{scroll-margin-top:100px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;margin:0 0 20px;box-shadow:0 10px 28px rgba(20,54,44,.04)}
.knowledge h2{font-size:30px}.knowledge h3{margin-top:24px}
.key{border-left:4px solid var(--gold);background:#fff9e9;border-radius:0 14px 14px 0;padding:14px 17px;margin:18px 0}
.formula{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.formula div{background:var(--mint);border-radius:14px;padding:15px}
.compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.compare>div{border:1px solid var(--line);border-radius:16px;padding:17px}.compare b{color:var(--green)}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:16px}
table{width:100%;min-width:920px;border-collapse:collapse;background:#fff;font-size:14px}
.knowledge>table{display:block;max-width:100%;overflow-x:auto;border-radius:16px}
th,td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:center;white-space:nowrap}th{background:var(--green);color:#fff;position:sticky;top:0}tr:nth-child(even) td{background:#f8fbf9}
.quiz{border:1px solid #b9d8ca;background:#f1f8f5;border-radius:17px;padding:18px;margin:20px 0}.quiz b{color:var(--green)}.quiz ul{margin-bottom:8px}.answer{margin-top:10px;padding-top:10px;border-top:1px dashed #b9d8ca}
.treatments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.treatment{border:1px solid var(--line);border-radius:16px;padding:17px}.treatment b{color:var(--green)}
.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.summary-grid div{background:var(--mint);border-radius:15px;padding:16px}
.diagram{margin:18px 0;border:1px solid var(--line);border-radius:18px;background:#fbfdfc;padding:12px;overflow:auto}
.diagram a{display:block}.diagram img{display:block;width:100%;min-width:720px;height:auto;border-radius:11px}.diagram figcaption{padding:10px 4px 2px;color:var(--muted);font-size:13px;text-align:center}
.source-note{font-size:13px;color:var(--muted);padding:16px 0 40px}
.notice{background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;margin:30px 0 80px;text-align:center}
footer{border-top:1px solid var(--line);padding:30px 0 45px;color:var(--muted);font-size:14px}
@media(max-width:850px){.subject-grid{grid-template-columns:1fr}.course-layout{grid-template-columns:1fr}.toc{position:static}.toc nav{columns:2}.formula,.compare,.treatments,.summary-grid{grid-template-columns:1fr}.nav-links a:not(.button){display:none}}
@media(max-width:560px){.wrap{width:min(100% - 24px,1160px)}.hero{padding:48px 0 30px}.brand small{display:none}.nav-links .button{padding:8px 11px}.knowledge{padding:22px}.toc nav{columns:1}h1{font-size:40px}}
@media print{.site-header,.toc,.button,footer{display:none}.course-layout{display:block}.knowledge{box-shadow:none;break-inside:avoid}.hero{padding:20px 0}}
