/* Textbook reference: left outline, wide article, right semantic margin notes.
   Course-authored figures and exercises remain in the flow. */
body.cs-platform.reader { --pb-reading-width:100%; --reader-ink:var(--cx-ink, #eef2ea); --reader-muted:var(--cx-muted, #9aa79a); }
body.cs-platform.reader .page,
body.cs-platform.reader.pb-studio-shell.pb-has-course-rail.pb-has-studio-inspector .page { max-width:1440px!important; width:100%!important; margin:0 auto!important; padding:28px 284px 90px 252px!important; min-width:0; }
.cs-platform.reader .lesson-shell { display:block!important; width:100%; max-width:none; margin:0!important; padding:0!important; }
.cs-platform.reader .lesson-toc,.cs-platform.reader .lesson-toc-mobile { display:none!important; }
.cs-platform.reader .lesson-main { width:100%; max-width:none; min-width:0; padding:0; }
.cs-platform.reader .teaching-block::before { color:var(--cx-accent, #63e68c)!important; }
.cs-platform.reader .teaching-block.mental-model::before { content:'心智模型'!important; }
.cs-platform.reader .source-switch { border:0; background:none; padding:0; margin-bottom:16px; gap:15px; }
.cs-platform.reader .source-switch a { color:var(--cx-muted, #9aa79a)!important; background:none!important; border:0!important; padding:0!important; font-size:11px; }
.cs-platform.reader .page > .eyebrow { font-size:11px; margin:8px 0; letter-spacing:.03em!important; color:var(--cx-muted, #9aa79a)!important; }
.cs-platform.reader .page > h1,.cs-platform.reader .pb-reader-intro h1,.cs-platform.reader .pb-studio-intro h1 { font-size:30px!important; font-family:var(--cs-font)!important; color:var(--cx-ink, #eef2ea)!important; line-height:1.45!important; margin:12px 0 14px!important; letter-spacing:-.7px; }
.cs-platform.reader .pb-reader-intro { border:0; padding:0; margin:0 0 24px; }
.cs-platform.reader .page p,.cs-platform.reader .page li { font-size:16px; line-height:1.9; }
.cs-platform.reader .page > .lede,.cs-platform.reader .pb-reader-intro .lede { font-size:15px!important; color:var(--cx-muted, #9aa79a)!important; line-height:1.85; margin-bottom:24px; }
.cs-platform.reader .page h2 { font-size:23px!important; margin:32px 0 14px!important; letter-spacing:-.3px; }
.cs-platform.reader .page h3 { font-size:17px!important; margin:24px 0 12px!important; }
.cs-platform.reader .page > section { margin:30px 0; }
.cs-platform.reader .pb-lesson-breadcrumb { font-size:11px; line-height:1.7; margin:0 0 14px; padding:0; }
.cs-platform.reader .pb-lesson-breadcrumb a { color:var(--cx-muted, #9aa79a); }
.cs-platform.reader .page > .course-path { display:none; }
.cs-platform.reader .reader-aside { position:fixed; top:90px; left:max(24px,calc((100vw - 1392px)/2)); width:194px; max-height:calc(100vh - 120px); border:0; padding:0 10px 20px 0; margin:0; font-size:12px; overflow:auto; }
.cs-platform.reader .reader-aside details { padding:0; border:0; background:none; margin:0; }
.cs-platform.reader .reader-aside summary { font-size:12px; color:var(--cx-muted, #9aa79a); font-family:var(--cs-mono); font-weight:600; letter-spacing:.03em; margin-bottom:12px; }
.cs-platform.reader .reader-aside summary::before { content:'// '; color:var(--cx-accent, #63e68c); opacity:.75; }
.cs-platform.reader .reader-aside a { font-size:12px; padding:7px 9px 7px 12px; margin:2px 0; line-height:1.65; font-weight:400; }
.cs-platform.reader .reader-aside a::before { display:none; }
.cs-platform.reader .reader-aside a.is-active { background:#edf3fc; color:var(--cx-accent, #63e68c); border-left:2px solid var(--cx-accent, #63e68c); font-weight:550; }
.cs-platform.reader .reader-outline-footer { margin-top:22px; padding-top:12px; border-top:1px solid var(--cs-line); }
.cs-platform.reader .reader-outline-footer a { font-size:11px; color:var(--cx-muted, #9aa79a); padding:5px 10px; }
.cs-platform.reader .reader-marginalia { position:fixed; top:98px; right:max(24px,calc((100vw - 1392px)/2)); width:220px; max-height:calc(100vh - 122px); overflow:auto; padding:0 0 15px; scrollbar-width:thin; scrollbar-color:var(--cx-line, #232922) transparent; }
.cs-platform.reader .reader-margin-note { padding:15px 15px 12px; border:1px solid var(--cx-line, #232922); border-radius:5px; background:var(--cx-surface, #12160f); margin:0 0 14px; }
.cs-platform.reader .reader-margin-note h2 { font-size:13px!important; font-weight:600; margin:0 0 9px!important; display:flex; align-items:center; gap:8px; letter-spacing:0; }
.cs-platform.reader .reader-margin-note h2 img { opacity:.55; width:18px; height:18px; }
.cs-platform.reader .reader-margin-note p { font-size:12px; line-height:1.85; color:var(--cx-muted, #9aa79a); margin:0; }
.cs-platform.reader .reader-margin-note a { font-size:10px; color:var(--cx-quiet, #6b766a); text-decoration:none; display:block; margin-top:8px; }
.cs-platform.reader .reader-margin-note .katex-display { overflow:auto; max-width:100%; font-size:11px; }
.cs-platform.reader .reader-margin-note[data-note=invariant] { background:rgba(99,230,140,.08); border-color:rgba(99,230,140,.25); }
.cs-platform.reader .reader-margin-note[data-note=misconception] { background:rgba(255,107,94,.08); border-color:rgba(255,107,94,.25); }
.cs-platform.reader .reader-margin-note[data-note=history] { background:rgba(224,164,88,.08); border-color:rgba(224,164,88,.25); }
.cs-platform.reader .reader-source-disclosure { border:0; background:none; padding:0 0 10px; margin:0 0 14px; font-size:11px; }
.cs-platform.reader .reader-source-disclosure summary { font-size:11px; color:var(--cx-quiet, #6b766a); }
.cs-platform.reader .page .reader-note { border:1px solid var(--cx-line, #232922); border-radius:5px; padding:15px 18px; background:var(--cx-surface, #12160f); margin:23px 0; }
.cs-platform.reader .page .reader-note h2,.cs-platform.reader .page .reader-note h3 { font-size:15px!important; margin:0 0 9px!important; }
.cs-platform.reader .reader-note[data-note=invariant] { background:rgba(99,230,140,.08); border-color:rgba(99,230,140,.25); }
.cs-platform.reader .reader-note[data-note=misconception],.cs-platform.reader .reader-note[data-note=failure] { background:rgba(255,107,94,.08); border-color:rgba(255,107,94,.25); }
.cs-platform.reader .page .mental-model p { font-size:14px; }
.cs-platform.reader .page pre { border-color:var(--cx-line, #232922)!important; background:var(--cx-dark, #070907)!important; font-size:13px!important; line-height:1.85!important; border-radius:5px; padding:48px 18px 18px!important; }
.cs-platform.reader .page pre::before { background:var(--cx-line, #232922); height:33px; border-color:var(--cx-line, #232922); font-size:11px; }
.cs-platform.reader .pb-copy-code { border:0; background:none; color:var(--cx-muted, #9aa79a); opacity:1; font-size:11px; min-width:62px; }
.cs-platform.reader .page pre code { font:inherit; }
.cs-platform.reader .page :not(pre) > code { background:var(--cx-surface, #12160f); color:var(--cx-accent, #63e68c); border:0; padding:1px 4px; border-radius:3px; font-size:.88em; }
.cs-platform.reader .page pre.cs-numbered-code { padding-left:54px!important; }
.cs-code-lines { position:absolute; top:48px; left:0; width:39px; padding-right:10px; border-right:1px solid #e2e9f3; color:var(--cx-quiet, #6b766a); text-align:right; pointer-events:none; user-select:none; font:inherit; line-height:inherit; white-space:pre; }
.cs-platform.reader .page .pb-table-scroll { border:1px solid var(--cx-line, #232922); border-radius:5px; margin:18px 0; scrollbar-width:thin; }
.cs-platform.reader .page .pb-table-scroll table { margin:0!important; border:0; font-size:13px; }
.cs-platform.reader .page .pb-table-scroll th { background:var(--cx-surface, #12160f); color:var(--cx-muted, #9aa79a); font-weight:500; }
.cs-platform.reader .page .pb-table-scroll th,.cs-platform.reader .page .pb-table-scroll td { padding:10px 13px; border-color:var(--cx-line, #232922); font-size:13px; }
.cs-platform.reader .page .quiz { border:1px solid var(--cx-line, #232922); background:var(--cx-surface, #12160f); padding:19px 21px; border-radius:5px; margin:24px 0; }
.cs-platform.reader .page .quiz h3,.cs-platform.reader .page .quiz h2 { margin:0 0 12px!important; font-size:16px!important; }
.cs-platform.reader .page .quiz-options { gap:4px; }
.cs-platform.reader .page .quiz-options button { position:relative; border:1px solid transparent; background:transparent; padding:8px 12px 8px 34px; border-radius:4px; font-size:14px; line-height:1.7; }
.cs-platform.reader .page .quiz-options button::before { content:''; position:absolute; top:14px; left:9px; width:13px; height:13px; border:1px solid var(--cx-line, #232922); border-radius:50%; background:var(--cx-dark, #070907); }
.cs-platform.reader .page .quiz-options button[aria-pressed=true]::before { border:4px solid var(--cx-accent, #63e68c); }
.cs-platform.reader .page .quiz-options button:hover { background:var(--cx-line, #232922); border-color:var(--cx-line, #232922); }
.cs-platform.reader .page .quiz-options button.is-correct { background:rgba(99,230,140,.1); border-color:rgba(99,230,140,.35); }
.cs-platform.reader .page .quiz-options button.is-incorrect { background:rgba(255,107,94,.1); border-color:rgba(255,107,94,.35); }
.cs-platform.reader .page .cs-quiz-check { display:block; margin:15px 0 0; padding:7px 16px; border:1px solid var(--cx-accent, #63e68c); border-radius:4px; color:#07130c; background:var(--cx-accent, #63e68c); font-weight:600; font-size:12px; }
.cs-platform.reader .page .cs-quiz-check:disabled { background:var(--cx-line, #232922); border-color:var(--cx-line, #232922); color:var(--cx-quiet, #6b766a); cursor:default; }
.cs-platform.reader details { border:1px solid var(--cx-line, #232922); background:var(--cx-surface, #12160f); padding:11px 15px; border-radius:4px; margin:10px 0; }
.cs-platform.reader summary { font-size:13px; color:var(--cx-accent, #63e68c); }
.cs-platform.reader .page .work-it-out { border-left:2px solid var(--cx-line, #232922); padding-left:18px; }
.cs-platform.reader .page .work-it-out textarea { font-size:14px; background:var(--cx-dark, #070907); }
.cs-platform.reader .page .then-now { display:grid; grid-template-columns:1fr 1fr; gap:12px 24px; }
.cs-platform.reader .page .then-now > h2 { grid-column:1/-1; }
.cs-platform.reader .page .cs-network-grid { display:grid!important; grid-template-columns:minmax(0,1.15fr) minmax(220px,1fr); align-items:start; gap:0; }
.cs-platform.reader .page .cs-network-main { padding:16px; }
.cs-platform.reader .page .cs-network-inspector { border:0; border-left:1px solid var(--cs-line); border-radius:0; padding:16px; font-size:12px; }
.cs-platform.reader .cs-network-scene { min-height:230px; }
.cs-platform.reader .cs-network-toolbar button { font-size:12px; padding:6px 10px; }
.cs-platform.reader .page .cs-network-figure { background:var(--cx-surface, #12160f); border:1px solid var(--cx-line, #232922); border-radius:5px; }
.cs-platform.reader .cs-network-header h3 { font-size:16px!important; }
.cs-platform.reader .cs-network-caption { font-size:12px; }
.cs-platform.reader .review-hero,.cs-platform.reader .review-bar { display:none!important; }
.cs-platform.reader .review-stage { border:0; border-bottom:1px solid var(--cs-line); padding:0 0 28px; margin:28px 0!important; }
.cs-platform.reader .review-stage header > span { color:var(--cx-muted, #9aa79a); font-size:11px; }
.cs-platform.reader .review-contract { gap:12px; }
.cs-platform.reader .review-contract > div,.cs-platform.reader .review-contract dl,.cs-platform.reader .review-loop dl > div,.cs-platform.reader .failure-grid > div { border-color:var(--cx-line, #232922); border-radius:4px; background:var(--cx-surface, #12160f); padding:15px; }
.cs-platform.reader .review-contract dt,.cs-platform.reader .review-loop dt { color:var(--cx-muted, #9aa79a); }
.cs-platform.reader .review-links a { background:none; border:0; padding:0; font-size:12px; }
.cs-platform.reader .review-shell .review-lede { font-family:var(--cs-font); }
.cs-platform.reader .math-reasoning__kicker,.cs-platform.reader .reasoning-workbook__kicker { color:var(--cx-quiet, #6b766a); font-size:11px; letter-spacing:.04em; }
.cs-platform.reader .math-reasoning__node { border-radius:4px; box-shadow:none; border-color:var(--cs-line); }
@media(min-width:1600px) { body.cs-platform.reader .page,body.cs-platform.reader.pb-studio-shell.pb-has-course-rail.pb-has-studio-inspector .page { max-width:1520px!important; padding-left:252px!important; padding-right:284px!important; }.cs-platform.reader .reader-aside { left:calc((100vw - 1472px)/2); }.cs-platform.reader .reader-marginalia { right:calc((100vw - 1472px)/2); } }
@media(max-width:1250px) {
  body.cs-platform.reader .page,body.cs-platform.reader.pb-studio-shell.pb-has-course-rail.pb-has-studio-inspector .page { padding:28px 36px 80px 238px!important; max-width:1200px!important; }
  .cs-platform.reader .reader-marginalia { display:none; }.cs-platform.reader .reader-aside { left:24px; width:178px; }
}
@media(max-width:900px) {
  body.cs-platform.reader .page,body.cs-platform.reader.pb-studio-shell.pb-has-course-rail.pb-has-studio-inspector .page { padding:24px max(24px,calc((100vw - 780px)/2)) 70px!important; }
  .cs-platform.reader .reader-aside { position:static; width:auto; max-height:none; padding:10px 14px; border:1px solid var(--cs-line); margin:18px 0 24px; background:var(--cx-surface, #12160f); border-radius:4px; }.cs-platform.reader .reader-aside summary { margin:0; }.cs-platform.reader .reader-aside nav { max-height:45vh; overflow:auto; margin-top:12px; }
}
@media(max-width:650px) {
  body.cs-platform.reader .page,body.cs-platform.reader.pb-studio-shell.pb-has-course-rail.pb-has-studio-inspector .page { padding:21px 20px 60px!important; }
  .cs-platform.reader .page > h1,.cs-platform.reader .pb-reader-intro h1,.cs-platform.reader .pb-studio-intro h1 { font-size:26px!important; }.cs-platform.reader .page h2 { font-size:21px!important; }.cs-platform.reader .page p,.cs-platform.reader .page li { font-size:15px; line-height:1.9; }
  .cs-platform.reader .page .cs-network-grid { display:block!important; }.cs-platform.reader .page .cs-network-inspector { border-left:0; border-top:1px solid var(--cs-line); }.cs-platform.reader .page .then-now { grid-template-columns:1fr; }.cs-platform.reader .page .quiz { padding:16px; }
}
