:root {
  --ink: #14261e;
  --paper: #f2efe6;
  --acid: #d9ff43;
  --orange: #ff5a2f;
  --line: rgba(20, 38, 30, .18);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--font-noto), sans-serif; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
.shell { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.hero { min-height: 820px; position: relative; overflow: hidden; background: var(--ink); color: #f8f5ea; }
.hero::after { content: ""; position: absolute; width: 680px; height: 680px; border-radius: 50%; right: -180px; bottom: -330px; background: var(--orange); }
.hero-grid { position: absolute; inset: 0; opacity: .12; background-image: linear-gradient(rgba(255,255,255,.22) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.22) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, black, transparent 75%); }
.nav { height: 104px; display: flex; align-items: center; justify-content: space-between; position: relative; z-index: 2; border-bottom: 1px solid rgba(255,255,255,.16); }
.brand { display: flex; align-items: center; gap: 10px; font: 700 17px/14px var(--font-space), sans-serif; letter-spacing: -.05em; }
.brand small { font-size: 9px; letter-spacing: .18em; font-weight: 500; }
.brand-mark { width: 39px; height: 39px; display: grid; place-items: center; background: var(--acid); color: var(--ink); border-radius: 50% 50% 50% 8px; font-size: 23px; }
.nav-links { display: flex; gap: 42px; font: 500 13px var(--font-space), sans-serif; letter-spacing: .08em; }
.nav-links a { opacity: .72; transition: opacity .2s; }.nav-links a:hover { opacity: 1; }
.official-button { border: 1px solid rgba(255,255,255,.38); padding: 12px 17px; border-radius: 4px; font-size: 13px; display: flex; gap: 22px; transition: .2s; }
.official-button:hover { color: var(--ink); background: var(--acid); border-color: var(--acid); }

.hero-content { position: relative; z-index: 1; padding-top: 110px; }
.eyebrow, .section-index { font: 600 11px var(--font-space), sans-serif; letter-spacing: .19em; text-transform: uppercase; }
.eyebrow { color: var(--acid); }
h1 { margin: 28px 0; max-width: 900px; font: 700 clamp(58px, 8.6vw, 116px)/.92 var(--font-space), sans-serif; letter-spacing: -.075em; }
.hero-lede { max-width: 690px; margin: 0; color: rgba(248,245,234,.7); font-size: 17px; line-height: 1.9; }
.hero-actions { display: flex; align-items: center; gap: 34px; margin-top: 38px; }
.primary-button { display: inline-flex; align-items: center; gap: 54px; padding: 15px 18px; background: var(--acid); color: var(--ink); font-weight: 700; border-radius: 3px; }
.verified { font: 500 12px var(--font-space), sans-serif; letter-spacing: .05em; opacity: .72; }.verified i, .availability i { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: var(--acid); box-shadow: 0 0 0 4px rgba(217,255,67,.13); }
.signal { position: absolute; z-index: 2; bottom: 34px; left: 50%; transform: translateX(-50%); display: grid; grid-template-columns: repeat(3, 160px) 1fr; gap: 28px; align-items: end; }
.signal > div { display: flex; align-items: flex-end; gap: 10px; }
.signal strong { font: 600 44px/1 var(--font-space), sans-serif; letter-spacing: -.06em; }.signal span { font: 500 9px/1.4 var(--font-space), sans-serif; letter-spacing: .14em; opacity: .6; }
.signal .signal-note { justify-self: end; display: block; border-left: 1px solid rgba(255,255,255,.2); padding-left: 24px; }.signal-note p { margin: 7px 0 0; font: 600 12px/1.55 var(--font-space), sans-serif; letter-spacing: .08em; }

.course-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; padding: 128px 0 86px; align-items: end; }
.section-index { color: #708078; margin: 0 0 24px; }
h2 { margin: 0; font: 700 clamp(42px, 5.5vw, 72px)/1.02 var(--font-space), sans-serif; letter-spacing: -.06em; }
.course-intro > p, .section-heading > p:last-child { max-width: 570px; font-size: 16px; line-height: 1.9; color: #536159; }

.lectures { padding-bottom: 130px; }
.toolbar { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding: 24px 0; border-top: 1px solid var(--ink); }
.phase-tabs { display: flex; flex-wrap: wrap; gap: 8px; }.phase-tabs button { border: 1px solid var(--line); background: transparent; color: #68766e; padding: 8px 13px; border-radius: 30px; cursor: pointer; font-size: 12px; }.phase-tabs button.active, .phase-tabs button:hover { background: var(--ink); color: white; border-color: var(--ink); }
.search { min-width: 230px; display: flex; align-items: center; gap: 9px; border-bottom: 1px solid var(--line); padding: 7px 2px; }.search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--ink); font-size: 13px; }
.lecture-list { border-top: 1px solid var(--line); }
.lecture-row { border-bottom: 1px solid var(--line); transition: background .25s; }.lecture-row.open { background: #e8e4d8; }
.lecture-summary { width: 100%; display: grid; grid-template-columns: 80px 1fr 44px; gap: 24px; align-items: center; text-align: left; border: 0; background: transparent; color: inherit; padding: 27px 20px 27px 0; cursor: pointer; }
.lecture-number { font: 600 13px var(--font-space), sans-serif; color: #7a887f; }.lecture-title { display: grid; grid-template-columns: minmax(210px, .7fr) minmax(250px, 1fr); align-items: baseline; gap: 20px; }.lecture-title small { grid-column: 1 / -1; margin-bottom: -12px; font: 500 9px var(--font-space), sans-serif; color: #7b867f; letter-spacing: .12em; text-transform: uppercase; }.lecture-title strong { font: 600 26px var(--font-space), sans-serif; letter-spacing: -.035em; }.lecture-title em { color: #637169; font-style: normal; font-size: 14px; }
.lecture-toggle { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; font: 400 20px var(--font-space), sans-serif; }
.lecture-detail { display: grid; grid-template-columns: 1.2fr 1fr; gap: 38px 70px; padding: 0 64px 32px 104px; animation: reveal .25s ease-out; }.lecture-detail > p { margin: 0; line-height: 1.8; color: #46564d; }.takeaways { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 7px; }.takeaways span { width: 100%; margin-bottom: 4px; font: 600 9px var(--font-space), sans-serif; letter-spacing: .15em; color: #7a887f; }.takeaways b { font-size: 11px; font-weight: 500; border: 1px solid #bcc3ba; border-radius: 3px; padding: 6px 9px; }
.resource-links { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 8px; }.resource-links a { padding: 9px 12px; background: var(--ink); color: white; border-radius: 3px; font-size: 11px; }.resource-links a:first-child { background: var(--orange); }.lec-labs{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:4px;padding:10px 12px;border:1px solid rgba(217,255,67,.35);background:rgba(217,255,67,.06);border-radius:3px}.lec-labs-label{font:700 9px var(--font-space);letter-spacing:.13em;color:#5c6b3a}.lec-lab-link{display:inline-flex;align-items:center;gap:8px;padding:6px 11px;background:var(--paper);border:1px solid var(--line);border-radius:3px;font-size:11px;color:var(--ink)}.lec-lab-link:hover{background:var(--acid);border-color:var(--acid)}.lab-due{font-size:9px;color:#7a887f;letter-spacing:.04em}.empty-state { padding: 70px 20px; color: #69766e; }
@keyframes reveal { from { opacity: 0; transform: translateY(-5px); } }

.labs-section { background: var(--ink); color: #f4f1e7; padding: 120px 0; position: relative; overflow: hidden; }.labs-section::before { content: "LAB"; position: absolute; top: -80px; right: -40px; font: 700 300px var(--font-space), sans-serif; color: rgba(255,255,255,.025); letter-spacing: -.1em; }
.section-heading { display: grid; grid-template-columns: .75fr 1fr; gap: 30px; align-items: end; margin-bottom: 68px; }.section-heading .section-index { grid-column: 1 / -1; margin-bottom: -4px; }.section-heading.light .section-index { color: var(--acid); }.section-heading.light > p:last-child { color: rgba(244,241,231,.58); }
.lab-path { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; }
.lab-card { min-height: 290px; padding: 23px 22px; border: 1px solid rgba(255,255,255,.16); border-right: 0; display: flex; flex-direction: column; position: relative; transition: .22s; }.lab-card:last-child { border-right: 1px solid rgba(255,255,255,.16); }.lab-card:hover { background: var(--acid); color: var(--ink); transform: translateY(-7px); }.lab-card:hover p, .lab-card:hover footer, .lab-card:hover .lab-number { color: var(--ink); opacity: .7; }.lab-number { font: 600 10px var(--font-space), sans-serif; letter-spacing: .15em; color: var(--acid); }.lab-connector { height: 1px; background: rgba(255,255,255,.2); margin: 30px -22px; position: relative; }.lab-connector::after { content: ""; position: absolute; right: -1px; top: -3px; width: 7px; height: 7px; border-radius: 50%; background: var(--acid); }.lab-card strong { font: 600 23px var(--font-space), sans-serif; letter-spacing: -.04em; }.lab-card p { font-size: 12px; line-height: 1.7; color: rgba(255,255,255,.55); }.lab-card footer { margin-top: auto; display: flex; justify-content: space-between; font: 500 9px var(--font-space), sans-serif; color: rgba(255,255,255,.45); letter-spacing: .09em; }
.integrity-note { display: grid; grid-template-columns: 170px 1fr; gap: 25px; margin-top: 44px; border-top: 1px solid rgba(255,255,255,.16); padding-top: 24px; }.integrity-note span { color: var(--orange); font: 600 10px var(--font-space), sans-serif; letter-spacing: .14em; }.integrity-note p { margin: 0; max-width: 650px; color: rgba(255,255,255,.55); font-size: 12px; line-height: 1.8; }

.resources-section { padding: 130px 0; }.resources-section .section-heading { grid-template-columns: 1fr; }.resources-section .section-heading .section-index { grid-column: auto; }
.resource-board { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--ink); border-left: 1px solid var(--line); }.resource-board a { position: relative; display: grid; grid-template-columns: 45px 1fr 28px; gap: 15px; padding: 27px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .2s; }.resource-board a:hover { background: var(--acid); }.resource-board span { font: 500 11px var(--font-space), sans-serif; color: #7f8a83; }.resource-board strong { font: 600 20px var(--font-space), sans-serif; }.resource-board p { grid-column: 2; margin: 0; color: #6c786f; font-size: 12px; }.resource-board a > span:last-child { grid-column: 3; grid-row: 1 / 3; justify-self: end; font-size: 18px; color: var(--ink); }
.availability { margin-top: 42px; padding: 24px 27px; display: grid; grid-template-columns: 220px 1fr; gap: 24px; align-items: start; background: #e6e2d6; }.availability i { background: #52a36a; box-shadow: 0 0 0 4px rgba(82,163,106,.13); }.availability strong { font-size: 13px; }.availability p { margin: 0; color: #5e6b63; font-size: 12px; line-height: 1.8; }
.footer { background: #09110d; color: #eae8de; padding: 54px 0; }.footer .shell { display: grid; grid-template-columns: 1fr 2fr auto; gap: 50px; align-items: center; }.footer p { font-size: 11px; line-height: 1.7; color: rgba(255,255,255,.45); }.footer > div > a { font: 600 11px var(--font-space), sans-serif; letter-spacing: .08em; }

@media (max-width: 900px) {
  .hero { min-height: 860px; }.hero::after { width: 450px; height: 450px; }
  .signal { grid-template-columns: repeat(3, 1fr); }.signal-note { display: none !important; }
  .course-intro, .section-heading { grid-template-columns: 1fr; gap: 30px; }.toolbar { align-items: stretch; flex-direction: column; }.search { width: 100%; }
  .lecture-title { grid-template-columns: 1fr; gap: 7px; }.lecture-title small { margin-bottom: 2px; }.lecture-detail { grid-template-columns: 1fr; padding-left: 80px; }.resource-links { grid-column: auto; }
  .lab-path { grid-template-columns: repeat(2, 1fr); }.lab-card { border-right: 1px solid rgba(255,255,255,.16); }
}

@media (max-width: 620px) {
  .shell { width: min(100% - 30px, 1180px); }.nav { height: 82px; }.nav-links { display: none; }.official-button { gap: 8px; padding: 10px; }
  .hero { min-height: 780px; }.hero-content { padding-top: 80px; }.hero-lede { font-size: 14px; }.hero-actions { align-items: flex-start; flex-direction: column; gap: 20px; }
  .signal { bottom: 25px; gap: 12px; }.signal strong { font-size: 31px; }.signal span { font-size: 7px; }
  .course-intro { padding: 85px 0 60px; }.lectures { padding-bottom: 85px; }.phase-tabs { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; }.phase-tabs button { white-space: nowrap; }
  .lecture-summary { grid-template-columns: 38px 1fr 32px; gap: 10px; padding: 22px 0; }.lecture-title strong { font-size: 21px; }.lecture-detail { padding: 0 0 28px 48px; gap: 22px; }.takeaways b { font-size: 10px; }
  .labs-section, .resources-section { padding: 85px 0; }.lab-path { grid-template-columns: 1fr; }.lab-card { min-height: 230px; }.resource-board { grid-template-columns: 1fr; }.availability, .integrity-note { grid-template-columns: 1fr; }
  .footer .shell { grid-template-columns: 1fr; gap: 18px; }.footer > div > a { justify-self: start; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }

/* Static Field Notes extensions */
:root{--font-noto:"Microsoft YaHei","PingFang SC","Noto Sans SC",sans-serif;--font-space:"Segoe UI",Arial,sans-serif}
body{font-family:var(--font-noto)}
.pb-coursebar,.pb-reading-progress,.pb-pager,.pb-toc,.pb-comments-drawer{display:none!important}body.pb-ready{padding-top:0!important}
.brand,.nav-links,.eyebrow,.section-index,h1,h2,.signal strong,.signal span,.lecture-number,.lecture-title small,.lecture-title strong,.lesson-title-en,.lesson-meta,.section-label,.reading-toc,.reading-note,.lesson-pager,.source-vault summary,.archive-actions,.lesson-footer{font-family:var(--font-space)}
.lecture-detail[hidden],.empty-state[hidden]{display:none}
.lecture-row[hidden]{display:none}
.resource-links a:first-child{background:var(--orange)}
.lesson-page{background:var(--paper)}
.reading-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:20;background:rgba(217,255,67,.12)}.reading-progress span{display:block;width:0;height:100%;background:var(--acid)}
.lesson-hero{min-height:620px;position:relative;overflow:hidden;background:var(--ink);color:#f8f5ea}.lesson-hero::after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-120px;bottom:-270px;background:var(--orange)}.lab-hero::after{background:var(--acid)}.resource-hero::after{background:#6f8f7f}
.lesson-hero-content{position:relative;z-index:1;padding-top:78px;padding-bottom:82px}.lesson-hero h1{max-width:920px;margin:20px 0 8px;font-size:clamp(52px,7vw,96px)}.lesson-title-en{margin:0;color:var(--acid);font-size:13px;letter-spacing:.12em;text-transform:uppercase}.lesson-hero .hero-lede{margin-top:32px}.lesson-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.lesson-meta span{padding:8px 11px;border:1px solid rgba(255,255,255,.22);font-size:10px;letter-spacing:.12em}
.reading-shell{width:min(1440px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:210px minmax(0,760px) 190px;gap:70px;align-items:start}.reading-toc,.reading-note{position:sticky;top:34px;margin-top:86px}.reading-toc>p,.reading-note>span{font-size:9px;letter-spacing:.18em;color:#7b887f}.reading-toc a{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);color:#65736b;font-size:11px;line-height:1.4}.reading-toc a span{color:#98a198}.reading-toc a.active{color:var(--ink);font-weight:700}.reading-toc .toc-back{margin-top:25px;border:0;color:var(--ink)}
.reading-article,.reading-article.page{min-width:0;width:auto;max-width:none;margin:0;padding:90px 0 130px;background:transparent;box-shadow:none}.reading-section{padding:0 0 78px;margin-bottom:72px;border-bottom:1px solid var(--line);scroll-margin-top:26px}.section-label{font-size:10px;letter-spacing:.18em;color:#78857e}.reading-section h2,.source-vault h2,.resource-library h2{margin:18px 0 30px!important;font-size:clamp(37px,4vw,58px)!important;letter-spacing:-.055em!important}.reading-article h2::before,.resource-library h2::before{display:none!important}.reading-section>p,.reading-section li,.section-lede{font-size:16px;line-height:1.95;color:#46564d}.reading-section>p{margin:0 0 22px}.objectives ol{counter-reset:goal;list-style:none;padding:0;margin:30px 0}.objectives li{counter-increment:goal;display:grid;grid-template-columns:42px 1fr;gap:10px;padding:18px 0;border-bottom:1px solid var(--line)}.objectives li::before{content:counter(goal,decimal-leading-zero);font:600 11px var(--font-space);color:#7e8c84}
.prerequisite-block{margin:26px 0 34px;padding:22px 24px;background:#e7e3d7;border-left:4px solid var(--acid)}.prerequisite-block strong{font:700 10px var(--font-space);letter-spacing:.15em}.prerequisite-block ul{margin:12px 0 0;padding-left:18px}.prerequisite-block li{display:list-item;padding:5px 0;border:0;font-size:13px}.prerequisite-block li::before{content:none}.recap-block{margin-top:58px;padding-top:28px;border-top:2px solid var(--ink)}.recap-block h3{font:600 25px var(--font-space)}.recap-block li{margin:10px 0;line-height:1.75;color:#46564d}
.source-ribbon{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:42px;border-top:1px solid var(--ink);border-left:1px solid var(--line)}.source-ribbon a{display:grid;grid-template-columns:1fr auto;gap:6px;padding:18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.source-ribbon span{grid-column:1/-1;font:600 9px var(--font-space);letter-spacing:.13em;color:#7c8981}.source-ribbon strong{font-size:12px;overflow-wrap:anywhere}.source-ribbon b{font-weight:400}
.field-callout{margin:34px 0 0;padding:24px 27px;border-left:4px solid var(--orange);background:#e8e4d8}.field-callout>span{display:block;margin-bottom:12px;font:700 9px var(--font-space);letter-spacing:.17em;color:#7a4c36}.field-callout p{margin:0;color:#3f4e46;line-height:1.8}.code-block,.archive pre{overflow:auto;background:#0b1812;color:#dfeadd;border-radius:3px;padding:22px;font:12px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.misconception-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.misconception-grid article{background:#ebe7dc;padding:24px}.misconception-grid span{font:700 9px var(--font-space);letter-spacing:.15em;color:var(--orange)}.misconception-grid h3{font:600 20px/1.4 var(--font-space);margin:12px 0}.misconception-grid p{font-size:13px;line-height:1.75;color:#59675f}
.quiz-stack{margin-top:55px}.quiz-stack>h3{font:600 28px var(--font-space)}.quiz{padding:26px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.quiz>p{margin:0 0 16px}.quiz-options{display:grid;gap:8px}.quiz-options button{display:grid;grid-template-columns:30px 1fr;text-align:left;align-items:center;padding:12px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);box-shadow:none;cursor:pointer}.quiz-options button span{font:700 10px var(--font-space)}.quiz-options button:hover,.quiz-options button:focus-visible{border-color:var(--ink)}.quiz-options button.correct{background:var(--acid)}.quiz-options button.incorrect{background:#ffd4c8}.quiz-feedback{min-height:1.4em;margin:12px 0 0!important;font-size:12px!important}
.source-vault{scroll-margin-top:26px}.source-vault>.section-label{margin-bottom:18px}.source-vault h2{margin-bottom:18px}.section-lede{margin:0 0 34px}.archive{border-top:1px solid var(--ink)}.archive:last-child{border-bottom:1px solid var(--ink)}.archive summary{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:20px 0;cursor:pointer}.archive summary span{display:grid;gap:5px}.archive summary b{font-size:9px;letter-spacing:.14em;color:#78857e}.archive summary small{font-size:9px;color:#7c8880}.archive[open] summary{color:#fff;background:var(--ink);margin:0 -18px;padding-left:18px;padding-right:18px}.archive-actions{display:flex;gap:8px;padding:16px 0}.archive-actions a,.archive-actions button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:8px 10px;font-size:10px;cursor:pointer}.archive pre{max-height:680px;margin:0 0 30px}.source-record{display:flex;justify-content:space-between;gap:25px;padding:20px 0;border-top:1px solid var(--ink)}.source-record div{display:grid}.source-record span{font-size:9px;color:#78857e}.source-record a{font-size:11px}
.source-search{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:18px;margin:0 0 26px;padding:17px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.source-search span{font:700 9px var(--font-space);letter-spacing:.15em;color:#79867e}.source-search input{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:9px 2px;outline:0;color:var(--ink)}
.reading-note{padding:20px;border-top:2px solid var(--ink);background:#e7e3d7}.reading-note strong{display:block;margin:16px 0;font-size:36px}.reading-note p{font-size:11px;line-height:1.7;color:#607067}.reading-note a{display:block;margin-top:20px;font-size:10px;font-weight:700}.lesson-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:90px;background:var(--line);border:1px solid var(--line)}.lesson-pager a{display:grid;gap:9px;padding:24px;background:var(--paper)}.lesson-pager a:last-child{text-align:right}.lesson-pager span{font-size:9px;letter-spacing:.14em;color:#7c8981}.lesson-pager strong{font-size:15px}.lesson-footer{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:48px max(24px,calc((100vw - 1180px)/2));background:#09110d;color:#eae8de}.lesson-footer strong{font-size:13px}.lesson-footer p,.lesson-footer a{font-size:10px;color:rgba(255,255,255,.5)}
.dependency-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:30px 0}.dependency-links span{font-size:10px;color:#78857e}.dependency-links a{padding:8px 10px;background:var(--ink);color:#fff;font-size:10px}.lab-bridge{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:34px;padding:14px 18px;border:1px solid var(--orange);background:rgba(255,90,47,.05)}.lab-bridge-tag{font:700 9px var(--font-space);letter-spacing:.14em;color:var(--orange)}.lab-bridge a{padding:9px 13px;background:var(--ink);color:#f8f5ea;font-size:11px;font-weight:600;border-radius:3px}.lab-bridge a:hover{background:var(--orange);color:var(--ink)}.integrity-box{margin-top:38px;padding:22px;border:1px solid var(--orange)}.integrity-box strong{color:#b74020}.integrity-box p{margin:8px 0 0;font-size:12px;color:#5e6c64}.problem-row{border:0}.problem-row summary{list-style:none;cursor:pointer}.problem-row summary::-webkit-details-marker{display:none}.problem-row summary strong{display:block;margin:18px 0 22px;font:700 clamp(34px,4vw,54px)/1.05 var(--font-space);letter-spacing:-.055em}.problem-source-note{font:600 9px var(--font-space);letter-spacing:.12em;color:#7a887f}.problem-row>p{font-size:16px;line-height:1.95;color:#46564d}.resource-library,.resource-library.page{width:min(1180px,calc(100% - 48px));max-width:1180px;margin:0 auto;padding:100px 0 130px;background:transparent;box-shadow:none}.resource-library>section{margin-bottom:90px}.coverage-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--line)}.coverage-grid article{padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.coverage-grid strong{font:600 18px var(--font-space)}.coverage-grid p{font-size:12px;line-height:1.75;color:#65736b}
.coverage-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--ink);background:var(--ink);gap:1px}.coverage-summary article{display:grid;gap:6px;padding:20px;background:var(--paper)}.coverage-summary strong{font:700 30px var(--font-space);color:var(--orange)}.coverage-summary span{font:700 9px var(--font-space);letter-spacing:.12em;color:#6b786f}.coverage-statement{margin:26px 0!important;padding:22px;border-left:4px solid var(--acid);background:#e6e2d6;font-size:13px!important}.coverage-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--line)}.coverage-files article{display:grid;gap:6px;padding:18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.coverage-files span,.paper-source span,.paper-guide-grid span{font:700 9px var(--font-space);letter-spacing:.12em;color:#78857e}.coverage-files strong{font:600 12px var(--font-space);overflow-wrap:anywhere}.coverage-files p{margin:0;font-size:10px;color:#718077}.coverage-units{margin-top:24px;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.coverage-units summary{padding:16px 0;font:700 11px var(--font-space);cursor:pointer}.coverage-units ol{list-style:none;padding:0;margin:0}.coverage-units li{display:grid;grid-template-columns:42px 1fr;gap:10px;padding:10px 0;border-top:1px solid var(--line);font-size:12px}.coverage-units li span{font:700 9px var(--font-space);color:#8a968f}
.coverage-index{border-top:1px solid var(--ink)}.coverage-index-row{display:grid;grid-template-columns:65px minmax(170px,1fr) minmax(250px,1.5fr) 110px;gap:16px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.coverage-index-row span,.coverage-index-row small,.coverage-index-row b{font:700 9px var(--font-space);letter-spacing:.08em}.coverage-index-row span{color:var(--orange)}.coverage-index-row strong{font:600 14px var(--font-space)}.coverage-index-row small{color:#718077}.coverage-index-row b{text-align:right;color:var(--ink)}
.paper-source{display:grid;gap:6px;margin-bottom:20px;padding:18px 20px;background:var(--ink);color:#fff}.paper-source strong{font:600 14px var(--font-space);overflow-wrap:anywhere}.paper-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}.paper-guide-grid article{padding:24px;background:#ebe7dc}.paper-guide-grid p{margin:12px 0 0;font-size:14px;line-height:1.8;color:#46564d}
.lecture-visual{margin:34px 0 0;border:1px solid var(--ink);background:#0b1812;color:#f1efe7}.lecture-visual figcaption{display:grid;gap:8px;padding:20px 22px;border-bottom:1px solid rgba(255,255,255,.17)}.lecture-visual figcaption strong{font:700 18px var(--font-space);color:var(--acid)}.lecture-visual figcaption span{font-size:12px;line-height:1.7;color:rgba(255,255,255,.62)}.visual-flow{display:flex;align-items:stretch;gap:8px;padding:18px;overflow-x:auto}.visual-node{flex:1 0 108px;min-width:0;padding:14px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.04)}.visual-node b{font:700 12px var(--font-space);color:#fff}.visual-node p{margin:9px 0 0;font-size:11px;line-height:1.6;color:rgba(255,255,255,.58)}.visual-arrow{align-self:center;flex:0 0 auto;color:var(--orange);font:700 18px var(--font-space)}.visual-sequence{display:grid;gap:1px;padding:22px;background:rgba(255,255,255,.08)}.sequence-step{display:grid;grid-template-columns:minmax(80px,140px) minmax(170px,1fr) minmax(80px,140px);align-items:center;gap:14px;padding:13px 15px;background:#0b1812}.sequence-step>b{font:700 11px var(--font-space);color:#fff}.sequence-step>b:last-child{text-align:right}.sequence-step span{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;text-align:center;font-size:10px;color:var(--acid)}.sequence-step i{height:1px;background:rgba(217,255,67,.5)}
.inline-visuals{margin:42px 0 8px;padding-top:20px;border-top:1px solid var(--line)}.inline-visual-label{display:flex;align-items:baseline;justify-content:space-between;gap:24px}.inline-visual-label span{font:700 10px var(--font-space);letter-spacing:.18em;color:var(--orange)}.inline-visual-label p{margin:0;font-size:12px;color:var(--muted)}
.textbook-section{position:relative}.textbook-section>.section-label{color:var(--orange)}.textbook-section>p:first-of-type::first-letter{font-size:1.45em;font-weight:800;color:var(--ink)}
.reading-toc{max-height:calc(100vh - 68px);overflow-y:auto;scrollbar-width:thin;padding-right:8px}
.lab-course-map{margin-bottom:38px;border-top:1px solid rgba(255,255,255,.25)}.timeline-legend{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.16)}.timeline-legend span{font:700 10px var(--font-space);letter-spacing:.14em;color:var(--acid)}.timeline-legend p{margin:0;font-size:12px;color:rgba(255,255,255,.58)}.lab-course-row{display:grid;grid-template-columns:260px 1fr;gap:30px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.16)}.lab-course-row header{display:grid;gap:5px}.lab-course-row header span{font:700 9px var(--font-space);letter-spacing:.14em;color:var(--orange)}.lab-course-row header strong{font:600 17px var(--font-space)}.lab-course-row header p{margin:0;font-size:10px;color:rgba(255,255,255,.5)}.lab-course-row>div{display:flex;align-items:center;gap:6px;overflow-x:auto}.lab-course-row a{display:grid;flex:0 0 auto;padding:9px 11px;border:1px solid rgba(255,255,255,.2);font:700 9px var(--font-space)}.lab-course-row a small{margin-top:4px;color:rgba(255,255,255,.45)}
.lab-path{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lab-card{min-height:250px;border-right:1px solid rgba(255,255,255,.16)}.lab-card strong{font-size:28px;line-height:1.2;writing-mode:horizontal-tb;word-break:normal;overflow-wrap:anywhere}.lab-card footer{gap:15px;flex-wrap:wrap;line-height:1.5}
.lab-timeline{position:relative;display:grid;gap:0;margin:34px 0 10px;border-left:2px solid var(--ink)}.lab-timeline article{position:relative;display:grid;grid-template-columns:78px 130px 1fr;gap:18px;padding:16px 20px;border-bottom:1px solid var(--line)}.lab-timeline article::before{content:"";position:absolute;left:-7px;top:23px;width:12px;height:12px;border-radius:50%;background:var(--acid);border:2px solid var(--ink)}.lab-timeline time,.lab-timeline strong{font:700 10px var(--font-space);letter-spacing:.08em}.lab-timeline p{margin:0;font-size:12px;line-height:1.6;color:#65736b}
.lab-page .reading-shell{grid-template-columns:minmax(0,900px);justify-content:center;gap:0}.lab-page .reading-toc{position:sticky;top:0;z-index:12;display:flex;gap:8px;overflow-x:auto;margin:0;padding:12px 0;background:var(--paper);border-bottom:1px solid var(--ink)}.lab-page .reading-toc>p,.lab-page .reading-toc .toc-back{display:none}.lab-page .reading-toc a{flex:0 0 auto;white-space:nowrap;padding:9px 12px;border:1px solid var(--line)}.lab-page .reading-note{display:none}.lab-page .reading-article{padding-top:55px}.lab-page .problem-row>summary{grid-template-columns:1fr auto;align-items:center}.lab-page .problem-row summary strong{writing-mode:horizontal-tb;word-break:normal;overflow-wrap:anywhere;line-height:1.18;grid-column:1}.lab-page .problem-row>summary::after{grid-column:2}
@media(max-width:1180px){.reading-shell{grid-template-columns:180px minmax(0,760px);justify-content:center}.reading-note{display:none}}
@media(max-width:900px){.reading-shell{grid-template-columns:1fr;width:min(760px,calc(100% - 36px))}.reading-toc{position:static;margin:36px 0 0;display:flex;max-height:none;overflow-x:auto;overflow-y:hidden;gap:8px;padding-right:0}.reading-toc>p,.reading-toc .toc-back{display:none}.reading-toc a{white-space:nowrap;border:1px solid var(--line);padding:9px 12px}.reading-article{padding-top:50px}.coverage-grid{grid-template-columns:1fr}.lesson-hero{min-height:580px}.lesson-hero-content{padding-top:60px}.archive summary{grid-template-columns:1fr}.archive summary small{justify-self:start}.lab-course-row{grid-template-columns:1fr}.lab-path{grid-template-columns:1fr}.lab-page .reading-toc{position:sticky;margin:0}.lab-page .reading-shell{width:min(900px,calc(100% - 36px))}}
@media(max-width:620px){.lesson-hero{min-height:630px}.lesson-hero h1{font-size:48px}.lesson-hero .nav-links{display:none}.lesson-hero-content{padding-top:54px}.reading-shell{width:min(100% - 30px,760px)}.reading-section{padding-bottom:58px;margin-bottom:55px}.reading-section h2,.source-vault h2,.resource-library h2{font-size:38px}.source-ribbon,.misconception-grid,.coverage-files,.paper-guide-grid{grid-template-columns:1fr}.coverage-summary{grid-template-columns:repeat(2,1fr)}.coverage-index-row{grid-template-columns:54px 1fr}.coverage-index-row small{grid-column:2}.coverage-index-row b{grid-column:2;text-align:left}.visual-flow{display:grid;grid-template-columns:1fr}.visual-arrow{transform:rotate(90deg);justify-self:center}.sequence-step{grid-template-columns:70px 1fr 70px;gap:8px}.timeline-legend{grid-template-columns:1fr}.lab-timeline article{grid-template-columns:62px 1fr}.lab-timeline p{grid-column:2}.lesson-pager{grid-template-columns:1fr}.lesson-pager a:last-child{text-align:left}.lesson-footer{align-items:flex-start;flex-direction:column}.archive pre{max-height:540px;font-size:11px}.resource-library{padding-top:70px}}
