/* Quiet reading surfaces, shared by public courses and assigned learning. */
.course-reader{font-family:TILInter,system-ui,sans-serif;color:#152033;background:#f5f7fb;padding:96px max(24px,calc((100% - 1240px)/2)) 72px;overflow-wrap:anywhere}
.reader-trail{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px;font-size:14px}
.course-reader a{color:#304ec7;text-underline-offset:3px}.course-reader :focus-visible{outline:3px solid #3f5bf6;outline-offset:4px}
.reader-trail a:first-child{font-weight:650;max-width:75%}.reader-trail a:last-child{white-space:nowrap}
.reader-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:36px;align-items:start}
.reader-sidebar{position:sticky;top:88px;min-width:0}.reader-outline{border:1px solid #dce4ed;border-radius:16px;background:#fff;overflow:hidden}
.reader-outline>summary{padding:24px;cursor:pointer;list-style:none;background:#101e32;color:#fff}.reader-outline>summary::-webkit-details-marker{display:none}
.reader-outline>summary strong{display:block;font-size:21px;letter-spacing:-.04em;margin:8px 0}.reader-outline-hint{font-size:12px;color:#b9c9df}
.reader-eyebrow{font-family:TILMono,ui-monospace,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;line-height:1.6;margin:0 0 12px;color:#3851a0}.reader-outline .reader-eyebrow{color:#83dfc2}
.reader-modules{max-height:calc(100svh - 280px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.reader-module{border-top:1px solid #e2e8f0}.reader-module>summary{display:flex;gap:12px;align-items:start;padding:18px 16px;cursor:pointer;font-size:14px;font-weight:650;line-height:1.5;list-style:none}.reader-module>summary::-webkit-details-marker{display:none}
.reader-module>summary:after{content:'+';margin-left:auto;color:#304ec7}.reader-module[open]>summary:after{content:'−'}
.reader-module-number{display:grid;place-items:center;flex:0 0 26px;height:26px;border:1px solid #dce4ed;border-radius:7px;font-family:TILMono,monospace;font-size:12px}.reader-module summary small{display:block;font-size:12px;font-weight:400;color:#637086;margin-top:4px}
.reader-module ol{list-style:none;padding:0 8px 10px;margin:0}.reader-module li a{display:flex;gap:10px;min-height:44px;padding:12px 10px;font-size:13px;line-height:1.55;border-radius:8px;text-decoration:none;color:#43516a}.reader-module li a:hover{background:#f0f4fa}.reader-module a[aria-current]{background:#eaf0ff;color:#263e9e;font-weight:650;box-shadow:inset 3px 0 #3f5bf6}.reader-lesson-number{font-family:TILMono,monospace;font-size:12px;flex-shrink:0;padding-top:1px}.reader-module a small{display:block;font-size:11px;margin-top:4px}
.reader-sidebar-note{font-size:13px;color:#637086;line-height:1.65;padding:16px 6px}.reader-main{min-width:0}.reader-paper{background:#fff;border:1px solid #e0e6ee;border-radius:20px;padding:48px clamp(24px,4vw,56px);box-shadow:0 8px 30px #182a4110}
.reader-heading{padding-bottom:30px;border-bottom:1px solid #e2e8f0;margin-bottom:32px}.reader-heading h1{font-size:clamp(30px,3.1vw,43px);line-height:1.15;letter-spacing:-.045em;font-weight:750;margin:0 0 20px}.reader-excerpt{font-size:18px;line-height:1.7;color:#526179;margin-bottom:20px}.reader-time{font-size:13px;line-height:1.7;color:#637086}.reader-time span{font-weight:650;color:#364a68}.reader-start-link{display:inline-block;font-size:14px;font-weight:650;padding:8px 0}
.reader-objectives{padding:26px 28px;border:1px solid #d9e3fa;border-radius:12px;background:#f3f6ff;margin:32px 0 40px}.reader-objectives h2,.reader-reflection h2,.reader-guest h2{font-size:22px;font-weight:700;letter-spacing:-.025em;margin:0 0 16px}.reader-objectives ul{padding-left:20px;margin:0}.reader-objectives li{font-size:15px;line-height:1.75;margin:8px 0}
.course-reader .lesson-content{font-size:18px;line-height:1.85;color:#25344b;max-width:72ch;scroll-margin-top:100px}.lesson-content>:first-child{margin-top:0}.course-reader .lesson-content h1,.course-reader .lesson-content h2{font-size:29px;letter-spacing:-.035em;line-height:1.3;margin:44px 0 20px;color:#152033}.course-reader .lesson-content h3{font-size:23px;line-height:1.4;margin:32px 0 16px;color:#152033}.course-reader .lesson-content h4{font-size:20px;line-height:1.4;margin:28px 0 14px}.lesson-content p,.lesson-content ul,.lesson-content ol{margin-bottom:24px}.lesson-content li{margin:8px 0}.lesson-content blockquote{border-left:3px solid #3f5bf6;background:#f5f7fc;padding:18px 22px;margin:28px 0;color:#41546f}.lesson-content blockquote>:last-child{margin-bottom:0}
.lesson-content pre{max-width:100%;overflow-x:auto;padding:22px;background:#101e32;color:#e2edf9;border-radius:10px;font:14px/1.75 TILMono,monospace;white-space:pre;overflow-wrap:normal}.lesson-content :not(pre)>code{font-family:TILMono,monospace;font-size:.85em;background:#edf1f8;padding:2px 5px;border-radius:4px;color:#314574}
.course-reader .lesson-content table{display:block;width:100%;max-width:100%;overflow-x:auto;font-size:14px;line-height:1.65;margin:28px 0}.course-reader .lesson-content th,.course-reader .lesson-content td{min-width:120px;padding:14px;border:1px solid #dce4ed}.course-reader .lesson-content thead th{background:#edf2fa;color:#233854}
.lesson-content figure{margin:32px 0;text-align:center}.lesson-content img,.lesson-content svg{max-width:100%;height:auto;border-radius:10px;background:#f7f9fc;padding:12px}.lesson-content figcaption{font-size:13px;line-height:1.6;color:#637086;margin-top:12px}.lesson-content hr{border:0;border-top:1px solid #dce4ed;margin:40px 0}
.reader-reflection,.reader-guest{border:1px solid #dce4ed;border-radius:12px;padding:28px;margin-top:36px;background:#f8fafc;font-size:15px;line-height:1.75}.reader-reflection p:last-child,.reader-guest p:last-child{margin:0}.reader-reflection a{font-weight:650}.reader-guest h2{font-size:20px;margin-bottom:8px}
.reader-editorial{font-size:13px;color:#526179;margin-bottom:28px}.reader-editorial summary{cursor:pointer;padding:10px 0;min-height:44px}.reader-editorial .alert{background:#f5f7fb;border:1px solid #dce4ed;color:#526179;margin-top:8px;line-height:1.75}
.course-reader .lesson-progress-control{scroll-margin-top:100px;font-size:14px}.course-reader .lesson-progress-control .btn{font:600 14px/1.5 TILInter,system-ui,sans-serif;min-height:44px;border-radius:8px}.course-reader .progress{height:8px;background:#e5ebf5}.course-reader .progress-bar{background:#3f5bf6}
.reader-pagination{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.reader-pagination a{border:1px solid #dce4ed;border-radius:12px;padding:22px;background:#fff;text-decoration:none;transition:border-color .18s,background .18s;min-width:0}.reader-pagination a:hover{border-color:#3f5bf6;background:#edf2ff}.reader-pagination span{display:block;font-size:12px;margin-bottom:10px}.reader-pagination strong{display:block;font-size:15px;font-weight:650;line-height:1.5}.reader-pagination .reader-next{background:#263fba;color:#fff;border-color:#263fba}.reader-pagination .reader-next:hover{background:#20359d;color:#fff}
@media(min-width:1500px){.reader-layout{gap:48px}}
@media(max-width:1000px){.reader-layout{grid-template-columns:230px minmax(0,1fr);gap:22px}.reader-paper{padding:32px 28px}}
@media(max-width:780px){.course-reader{padding:88px 22px 48px}.reader-layout{grid-template-columns:1fr;gap:20px}.reader-sidebar{position:static}.reader-outline>summary{padding:18px 22px}.reader-outline>summary strong{font-size:19px;display:inline;margin-right:16px}.reader-outline>summary .reader-eyebrow{display:block;margin-bottom:6px}.reader-modules{max-height:240px}.reader-sidebar-note{margin:0;padding:10px 4px}.reader-trail{font-size:13px;gap:16px;margin-bottom:20px}.reader-trail a:first-child{max-width:68%}.reader-paper{padding:30px 24px}.reader-heading h1{font-size:32px}.reader-excerpt{font-size:17px}.course-reader .lesson-content{font-size:17px;line-height:1.8}.course-reader .lesson-content h2{font-size:26px}.reader-objectives,.reader-reflection,.reader-guest{padding:22px}.reader-pagination a{padding:18px}}
@media(max-width:400px){.course-reader{padding-inline:14px}.reader-paper{padding:26px 18px}.reader-heading h1{font-size:29px}.reader-pagination{grid-template-columns:1fr}.reader-outline-hint{display:block;margin-top:6px}.reader-trail{align-items:start}.reader-trail a:last-child{white-space:normal;max-width:28%}}
@media(prefers-reduced-motion:reduce){.reader-pagination a{transition:none}}
@media print{.reader-sidebar,.reader-trail,.reader-pagination,.lesson-progress-control,.reader-guest{display:none}.course-reader{padding:0;background:#fff}.reader-layout{display:block}.reader-paper{padding:0;border:0;box-shadow:none}.reader-main{width:100%}}
