:root{--bg:#f3f5f8;--paper:#fff;--ink:#233047;--muted:#637287;--line:#e0e6ee;--accent:#235ac7;--soft:#eef4ff;--sidebar:302px;scroll-behavior:smooth;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.85 system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #f5a623;outline-offset:3px}.skip{position:fixed;top:-60px;left:15px;background:white;padding:8px;z-index:100}.skip:focus{top:10px}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);overflow:auto;background:#15243b;color:#dbe6f4;padding:24px 20px;z-index:10}.brand{font-size:1.2rem;font-weight:750;color:white;line-height:1.5}.sidebar p{font-size:.8rem;color:#a8bad0}.sidebar a{color:#d6e2f3}.sidebar>details>summary{cursor:pointer;font-weight:650;margin:16px 0}.search-label{display:block;font-size:.8rem;margin-top:18px}input{width:100%;border:1px solid #526783;border-radius:6px;padding:9px 10px;color:white;background:#233750;font:inherit;font-size:.85rem}.module-nav{margin:12px 0}.module-nav>summary{cursor:pointer;font-size:.86rem;font-weight:650;line-height:1.6;padding:5px 0}.module-nav ol{list-style:none;padding:0 0 0 13px;margin:4px 0 12px}.module-nav li{margin:4px 0;font-size:.78rem;line-height:1.65}.module-nav a{display:block;padding:4px 6px;border-radius:4px}.module-nav a.active{background:#314f79;color:white}.search-status{min-height:1.5em}.book{margin-left:var(--sidebar);padding:36px 38px 80px;max-width:1540px}.cover,.roadmap,.module{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:36px 42px;margin:0 0 26px}.eyebrow{font-size:.8rem;letter-spacing:.12em;color:var(--accent);font-weight:750}.cover h1{font-size:2.25rem;line-height:1.35;margin:14px 0 18px}.lead{font-size:1.08rem;color:var(--muted)}.stats{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.stats span,.pill{font-size:.78rem;background:var(--soft);border-radius:5px;padding:4px 10px;color:#36557d}.cover button{border:0;background:var(--accent);color:white;padding:10px 17px;border-radius:6px;cursor:pointer;font:inherit;font-size:.85rem}.note,.checkpoint,.evolution{background:#f5f8fc;border-left:3px solid #a8bfdf;padding:14px 18px;margin:20px 0;font-size:.9rem}.evolution{border-color:#ddb75a;background:#fffaf0}.note p,.evolution p{margin:5px 0}.roadmap ol{padding-left:24px}.roadmap li{padding:5px 0}.roadmap small{display:block;color:var(--muted)}h2{font-size:1.65rem;line-height:1.5;margin:8px 0 18px}h3{font-size:1.28rem;line-height:1.55;margin:10px 0 18px}h4{font-size:1.05rem;margin:24px 0 8px}h5{font-size:1rem}p{margin:12px 0}.module-intro{color:var(--muted)}.module-head{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:24px}.lesson{padding:22px 0 34px;border-bottom:1px solid var(--line);scroll-margin-top:24px}.lesson:last-child{border-bottom:0}.lesson-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;color:var(--muted);font-size:.78rem;margin-bottom:8px}.lesson-nav{display:flex;justify-content:space-between;gap:18px;font-size:.8rem;margin-top:24px}.lesson-nav a{max-width:48%}.source-label{font-size:.8rem;color:var(--muted)}figure{margin:26px 0;text-align:center}img{display:block;max-width:100%;height:auto;margin:auto;border:1px solid var(--line);border-radius:6px}figcaption{font-size:.8rem;color:var(--muted);margin:8px 0}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{border:1px solid var(--line);padding:8px;text-align:left}th{background:#f5f7fa}code{font:.88em ui-monospace,monospace;background:#f0f3f8;padding:2px 4px}footer{color:var(--muted);font-size:.82rem;text-align:center}.back-top{position:fixed;bottom:20px;right:20px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:7px 13px;font-size:.8rem;box-shadow:0 3px 14px #0001}section[id]{scroll-margin-top:24px}[hidden]{display:none!important}@media(max-width:1050px){:root{--sidebar:256px}.book{padding:24px}.cover,.roadmap,.module{padding:28px}}@media(max-width:760px){.sidebar{position:relative;width:auto;padding:18px 22px}.sidebar>details{margin-top:8px}.sidebar>p{margin:5px 0}.book{margin-left:0;padding:16px 12px 60px}.cover,.roadmap,.module{padding:24px 18px;border-radius:8px}.cover h1{font-size:1.8rem}h2{font-size:1.4rem}h3{font-size:1.18rem}body{font-size:16px}.lesson-nav{flex-direction:column}.lesson-nav a{max-width:100%}table{display:block;overflow:auto}.back-top{bottom:12px;right:12px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}@media print{.sidebar,.back-top,.skip,.lesson-nav,.print-button{display:none}.book{margin:0;padding:0;max-width:none}.cover,.roadmap,.module{border:0;padding:12px 0;margin:0;break-before:page}.cover{break-before:auto}body{background:white;font-size:11pt}figure{break-inside:avoid}a{color:inherit}h2,h3,h4{break-after:avoid}}
