@charset "UTF-8";:root{color-scheme:light;--paper:#f5f3ed;--surface:#fdfcf9;--ink:#242c28;--muted:#656b65;--line:#dedfd5;--green:#28634b;--orange:#a45828;--blue:#465eac;--soft:#e8ede5;--focus:#3157ab;font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink)}a{color:inherit;text-underline-offset:4px}button,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:4px}button{touch-action:manipulation}h1,h2,h3,p{margin-top:0}button,a,select{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:20;top:12px;left:12px;padding:12px;background:var(--surface);left:-10000px}.skip-link:focus{left:12px}.site-header,main,footer{max-width:1680px;margin:auto}.site-header{height:80px;padding:0 44px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);font-size:12px}.home-link{text-decoration:none;font-size:14px;font-weight:600}.home-link span{margin-right:8px}.course-label{color:var(--muted)}.about-link{text-decoration:none}.about-link span{margin-left:10px}main{padding:0 44px}.intro{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:44px 0 38px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:1.8px;font-weight:650;margin-bottom:15px;color:var(--muted)}.atlas-symbol{color:var(--orange);font-size:20px;line-height:10px;vertical-align:middle;margin-right:9px}h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,4.2vw,66px);line-height:1.08;letter-spacing:-2.4px;font-weight:400;margin-bottom:18px}h1 em{font-weight:400;color:var(--green)}.title-dot{color:var(--orange)}.intro-copy{font-size:14px;line-height:1.85;color:var(--muted);margin-bottom:0}.progress-card{min-width:240px;border-left:1px solid var(--line);padding:5px 0 0 32px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.progress-card .eyebrow{margin-bottom:10px}.progress-number{font-family:Georgia,serif;font-size:43px;line-height:1;margin-bottom:7px}.progress-denominator{font-family:inherit;font-size:25px;color:#91988e}.progress-caption{font-size:11px;color:var(--muted);margin-bottom:14px}.progress-track{height:4px;max-width:210px;background:#dfe3d9;overflow:hidden}.progress-track span{display:block;height:100%;width:0;background:var(--green);transition:width .5s}.current-caption{font-size:11px;line-height:1.5;margin:9px 0 0;color:var(--muted);max-width:240px}.atlas-shell{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:clip;box-shadow:0 6px 24px #25342804}.toolbar{padding:18px 22px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line);flex-wrap:wrap}.checkpoint-controls{display:flex;align-items:center;gap:12px}.checkpoint-controls label{font-size:11px;color:var(--muted)}.checkpoint-picker{display:flex;align-items:center;gap:5px}select{max-width:270px;min-height:36px;padding:6px 28px 6px 9px;background:var(--surface);border:1px solid var(--line);border-radius:5px;font-size:12px}.square-button{width:34px;height:34px;border:1px solid var(--line);border-radius:5px;background:transparent;font-size:17px;flex-shrink:0}.square-button:hover:not(:disabled),.fit-button:hover{background:var(--soft)}.replay-button{border:0;background:var(--green);color:#fff;border-radius:5px;min-height:36px;padding:8px 13px;font-size:11px}.replay-button>span:first-child{font-size:17px;vertical-align:-1px;margin-right:6px}.replay-button:hover{background:#204f3d}.view-switch{margin-left:auto;display:flex;padding:3px;gap:3px;background:#eceee7;border-radius:6px}.view-switch button{background:transparent;border:0;border-radius:4px;padding:7px 12px;font-size:11px}.view-switch button[aria-pressed=true]{background:var(--surface);box-shadow:0 1px 3px #27332a14}.lesson-story{display:flex;align-items:center;gap:10px;padding:13px 22px;background:#eff2e9;border-bottom:1px solid var(--line)}.story-marker{width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0}.lesson-story p{margin:0;font-size:12px;line-height:1.6}.lesson-position{margin-left:auto;white-space:nowrap;font-size:10px;color:var(--muted);padding-left:16px}.atlas-columns{display:grid;grid-template-columns:minmax(0,1fr) 350px;align-items:start}.map-column{min-width:0;border-right:1px solid var(--line)}.map-heading{display:flex;align-items:center;justify-content:space-between;padding:24px 23px 12px;gap:12px}.map-heading .eyebrow{margin:0 0 8px}.map-instructions{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.zoom-controls{display:flex;gap:4px;flex-shrink:0}.zoom-controls .square-button{width:29px;height:29px;font-size:15px}.fit-button{border:1px solid var(--line);border-radius:5px;background:transparent;font-size:10px;padding:4px 8px}.map-scroll{width:100%;overflow-x:auto;overscroll-behavior-x:contain;background-image:radial-gradient(#69796522 .7px,transparent .7px);background-size:16px 16px;scrollbar-width:thin}.map-scroll svg{display:block;min-width:1020px;width:100%;touch-action:pan-y}.map-scroll svg.is-dragging{cursor:grabbing}.axis text{font-size:11px;font-family:"Segoe UI",sans-serif;fill:#70796f}.axis path{stroke:#ccd2c7}.axis line{stroke:#d4d9cf}.grid-line{stroke:#dbe1d5;stroke-dasharray:2 5;opacity:.7}.lane-bg{fill:var(--surface);opacity:.84}.lane-gutter{fill:var(--surface)}.lane-label{font-size:12px;font-weight:650;letter-spacing:.1px}.lane-index{font-size:10px;fill:#828b7e;letter-spacing:1.4px}.lane-question{fill:#747c70;font-size:10px}.lane-rule{stroke:#dfe3da;stroke-width:1}.edge{fill:none;stroke:#9ca99c;stroke-width:1.25;opacity:.55;transition:opacity .2s,stroke .2s;pointer-events:none}.edge.is-connected{stroke:var(--selected-color);stroke-width:2;opacity:.8}.edge.is-muted{opacity:.35}.node{cursor:pointer;outline:0}.node-card{fill:#fdfcf9;stroke:#d4dbce;stroke-width:1;transition:fill .2s,stroke .2s}.node-title{font-size:12px;font-weight:550;fill:#334136;pointer-events:none}.node-date{fill:#727e6d;font-size:10px;pointer-events:none}.node-mark{fill:var(--node-color);stroke:none;pointer-events:none}.node.is-selected .node-card{fill:var(--node-wash);stroke:var(--node-color);stroke-width:1.8}.node.is-selected .node-title{fill:var(--node-color)}.node:hover .node-card,.node:focus-visible .node-card{stroke:var(--node-color);stroke-width:2}.node:focus-visible .focus-ring{stroke:var(--focus);stroke-width:2;fill:none}.focus-ring{fill:none;stroke:none}.node.is-connected .node-card{stroke:var(--node-color);stroke-width:1.4}.node.is-muted{opacity:1}.node.is-muted .node-card{stroke:#dce0d8;fill:#f9faf5}.node.is-locked{cursor:default;opacity:.65}.node.is-locked .node-card{fill:#f0f1ea;stroke:#cdd4c4;stroke-dasharray:4 4}.node.is-locked .node-title{font-size:10px;font-weight:400;fill:#76836c;letter-spacing:.4px}.node.is-locked .node-mark{fill:#98a28e}.range-mark{stroke:var(--node-color);stroke-width:3;opacity:.28}.node.is-new .node-card{animation:discover 1.4s ease-out 1}.node.is-new .node-mark{animation:mark-pop .7s ease-out 1}.map-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:10px;padding:18px 23px 10px;border-top:1px solid var(--line);color:var(--muted)}.map-legend>span{display:flex;align-items:center;gap:7px}.legend-line{display:inline-block;width:23px;border-top:1.5px solid #677867;position:relative}.legend-line:not(.comparison):after{content:"";position:absolute;right:-1px;top:-3px;width:4px;height:4px;border-top:1px solid #677867;border-right:1px solid #677867;transform:rotate(45deg)}.legend-line.technical{border-top-style:dashed}.legend-line.comparison{border-top-style:dotted}.legend-diamond{display:inline-block;width:7px;height:7px;background:#778c76;transform:rotate(45deg)}.map-footnote{padding:0 23px 17px;margin:0;font-size:10px;line-height:1.6;color:var(--muted)}.detail-panel{padding:24px;min-width:0;position:sticky;top:12px;max-height:calc(100vh - 24px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#cfd6c9 transparent}.detail-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.detail-topline .eyebrow{margin:0}.text-button{padding:0;border:0;background:transparent;color:var(--muted);font-size:10px;text-align:right}.detail-kicker{color:var(--selected-color,var(--green));font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-bottom:11px}.detail-title{font-family:Georgia,serif;font-weight:400;font-size:31px;line-height:1.13;letter-spacing:-.6px;margin-bottom:11px}.detail-tagline{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:17px}.date-badge{display:flex;align-items:center;gap:9px;padding:11px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:20px}.date-badge strong{font-family:Georgia,serif;font-size:23px;font-weight:400;white-space:nowrap}.date-badge span{font-size:10px;line-height:1.5;color:var(--muted)}.detail-section{margin-bottom:21px}.detail-section h3,.detail-section summary{font-size:11px;font-weight:650;color:var(--ink);margin:0 0 9px;letter-spacing:.1px}.detail-section p,.detail-section li{font-size:12px;line-height:1.8;color:#596259;margin:0 0 9px}.detail-section strong{font-weight:600;color:var(--ink)}.example{padding:15px;background:#edf1e9;border-radius:6px;border-left:2px solid var(--selected-color,var(--green))}.example pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:Consolas,"Liberation Mono",monospace;font-size:11px;line-height:1.7;color:#2d4434;margin:10px 0}.example p{font-size:10px;line-height:1.6;margin:0}.contributors{list-style:none;padding:0;margin:0}.contributors li{border-bottom:1px solid #e7e9e1;padding:9px 0}.contributors li:first-child{padding-top:0}.contributors strong{display:block;font-size:12px}.contributors span{display:block;font-size:11px}.detail-section details{padding:11px 0;border-top:1px solid var(--line)}.detail-section summary{cursor:pointer;line-height:1.5;margin-bottom:0}.detail-section details[open] summary{margin-bottom:12px}.milestone-list{list-style:none;padding:0 0 0 13px;margin:0;border-left:1px solid #cfd7c8}.milestone-list li{position:relative}.milestone-list li:before{content:"";position:absolute;top:8px;left:-17px;width:6px;height:6px;border-radius:50%;background:#7e9675}.milestone-list strong{font-size:11px}.milestone-list p{font-size:11px;margin-top:3px}.citation-inline{font-size:10px!important;white-space:nowrap;color:var(--selected-color,var(--green))!important}.connection-card{border-top:1px solid var(--line);padding:13px 0}.connection-kind{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);display:flex;gap:8px;align-items:center;margin-bottom:7px}.connection-topic{display:block;border:0;background:transparent;padding:0;color:var(--selected-color,var(--green));font-size:12px;font-weight:600;text-align:left;line-height:1.5;margin-bottom:5px}.connection-label{font-size:11px!important;font-weight:600;margin-bottom:5px!important}.connection-card p{font-size:11px;line-height:1.7}.source-list{padding-left:16px}.source-list li{font-size:10px;line-height:1.7;margin-bottom:12px;overflow-wrap:anywhere}.source-list a{font-weight:600;color:var(--selected-color,var(--green))}.source-list span{display:block;color:var(--muted)}.connection-card .source-note{font-size:10px}.no-connections{font-style:italic}.empty-notes{padding:35px 0}.empty-notes p{font-size:13px;line-height:1.8;color:var(--muted)}.topic-list{padding:10px 23px 25px}.list-row{display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.list-year{font-family:Georgia,serif;font-size:22px;color:var(--muted)}.list-row button{background:transparent;border:0;text-align:left;padding:5px 0;color:var(--node-color);font-size:14px;font-weight:600}.list-row[aria-current=true]{background:#eff2e9;margin:0 -10px;padding:16px 10px;border-radius:6px}.list-row p{font-size:11px;line-height:1.6;color:var(--muted);margin:2px 0 0}.list-kind{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.8px}.locked-list{font-size:12px;color:var(--muted)}.reading-guide{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:47px 0 44px;max-width:1060px}.reading-guide h2{font-family:Georgia,serif;font-size:28px;font-weight:400;line-height:1.35;letter-spacing:-.4px;margin:0}.reading-guide p:not(.eyebrow){font-size:12px;line-height:1.9;color:var(--muted);margin-bottom:12px}footer{border-top:1px solid var(--line);padding:22px 44px 28px;display:flex;gap:24px;font-size:10px;color:var(--muted)}footer a{margin-left:auto}.error-box{padding:20px;border:1px solid #b96c56;background:#fff5ef;border-radius:6px;line-height:1.7;font-size:14px;margin-bottom:30px}.error-box button{margin-top:12px;padding:8px 15px;border:1px solid var(--line);background:var(--surface);border-radius:4px}@keyframes discover{0%{stroke-width:3;fill:#d4e6bc}100%{stroke-width:1}}@keyframes mark-pop{0%{opacity:0}100%{opacity:1}}@media(min-width:1500px){.atlas-columns{grid-template-columns:minmax(0,1fr) 375px}.detail-panel{padding:28px}}@media(max-width:1150px){.site-header{padding:0 24px}main{padding:0 24px}.atlas-columns{grid-template-columns:minmax(0,1fr) 320px}.checkpoint-controls{gap:8px}.toolbar{gap:12px}.checkpoint-controls label{display:none}.map-heading{flex-wrap:wrap}.progress-card{min-width:210px;padding-left:24px}.detail-panel{padding:20px}.course-label{max-width:230px;line-height:1.6;text-align:center}.intro-copy{font-size:13px}footer{padding-left:24px;padding-right:24px}}@media(max-width:900px){.atlas-columns{grid-template-columns:1fr}.map-column{border-right:0}.detail-panel{position:static;max-height:none;border-top:1px solid var(--line);padding:28px}.detail-section{max-width:680px}.detail-title{font-size:34px}.detail-tagline{max-width:600px}.map-heading{flex-wrap:nowrap}.intro{padding-top:32px}.progress-card{min-width:190px}.desktop-break{display:none}.view-switch{margin-left:auto}.replay-button{font-size:10px}.reading-guide{gap:28px}.detail-section p,.detail-section li{font-size:13px}}@media(max-width:600px){.site-header{padding:0 18px;height:61px}.course-label{display:none}.home-link{font-size:12px}.about-link{font-size:10px}main{padding:0 14px}.intro{display:block;padding:29px 4px 25px}.intro .eyebrow{font-size:9px;letter-spacing:1.3px}h1{font-size:39px;letter-spacing:-1.8px}.intro-copy{font-size:12px;line-height:1.75}.progress-card{display:grid;grid-template-columns:auto 1fr;column-gap:18px;padding:18px 0 0;margin-top:18px;border-left:0;border-top:1px solid var(--line)}.progress-card .eyebrow{grid-column:2;margin:1px 0 4px}.progress-number{grid-column:1;grid-row:1/4;font-size:36px;margin:0;align-self:center}.progress-denominator{font-size:23px}.progress-caption{grid-column:2;margin:0 0 7px;font-size:10px}.progress-track{grid-column:2;max-width:none}.current-caption{grid-column:2;max-width:none;font-size:10px;margin:7px 0 0}.toolbar{padding:14px 12px;gap:10px}.checkpoint-controls{width:100%}.checkpoint-picker{width:100%;justify-content:space-between}select{flex:1;max-width:none;font-size:11px;min-height:40px}.square-button{height:40px;width:40px}.replay-button{font-size:10px;padding:6px 9px;min-height:37px}.view-switch button{padding:8px;font-size:10px}.lesson-story{padding:12px;align-items:flex-start}.lesson-story p{font-size:11px}.story-marker{margin-top:6px}.lesson-position{display:none}.map-heading{padding:19px 15px 12px;gap:6px;align-items:flex-start}.map-heading .eyebrow{font-size:9px;letter-spacing:1px;line-height:1.5}.map-instructions{font-size:10px;max-width:180px}.zoom-controls{gap:3px}.zoom-controls .square-button{width:32px;height:34px}.fit-button{font-size:9px}.map-legend{padding:15px;gap:12px;font-size:9px}.map-footnote{padding:0 15px 16px}.detail-panel{padding:24px 20px}.detail-title{font-size:32px}.detail-section p{font-size:12px}.reading-guide{display:block;padding:33px 5px 25px}.reading-guide h2{font-size:27px;margin-bottom:23px}.reading-guide p:not(.eyebrow){font-size:12px}footer{padding:19px 18px;flex-wrap:wrap;gap:12px}footer span:nth-child(2){display:none}.topic-list{padding:5px 15px 20px}.list-row{grid-template-columns:70px 1fr;gap:10px}.list-year{font-size:19px}.list-kind{grid-column:2}.list-row button{font-size:13px}.list-row p{font-size:10px}.progress-number{white-space:nowrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}