/* The course is the primary journey; the original chart remains the evidence. */
:root{--course-gold:#ad8548;--course-deep:#452c20;--course-soft:#f1e9d8}
.workspace{max-width:1600px;padding-top:25px}
.site-header{padding-inline:max(24px,calc((100vw - 1552px)/2));background:#fcf9f0f5;border-bottom-color:#d6c7ab}
.brand-name{font-size:25px}
.header-course-button{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600}
.header-course-button svg{width:17px;height:17px}
.course-introduction{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 19px}
.course-introduction .eyebrow{font-size:9px;letter-spacing:.15em}
.course-introduction h1{font-size:clamp(27px,2.6vw,40px);margin:5px 0 7px;font-weight:500;line-height:1.1;letter-spacing:-.035em}
.course-introduction p{font:13px/1.6 var(--ui);color:var(--muted)}
.course-catalog-button{display:flex;align-items:center;gap:18px;flex:none;border:1px solid #cdb995;border-radius:5px;background:#fbf7ed;box-shadow:0 2px 0 #b2915920;font:600 12px/1.4 var(--ui);padding:12px 17px}
.course-catalog-button span{font-size:18px;color:var(--rust)}
.course-navigation{display:flex;align-items:center;gap:10px;padding:7px 0 12px;border-block:1px solid #d6c7ab;margin-bottom:20px}
.course-arrow{display:flex;align-items:center;justify-content:center;flex:none;border:1px solid #d6c7ab;background:#fffdf7;border-radius:5px;width:42px;height:44px;padding:9px}
.course-panel-strip{display:flex;align-items:center;gap:4px;flex:1;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#cfbea0 transparent;padding:2px 2px 5px;scroll-behavior:smooth}
.course-panel-strip button{position:relative;flex:1 0 42px;min-width:42px;max-width:70px;min-height:44px;padding:7px 4px 8px;border-radius:4px;font:400 18px/1.4 var(--text);color:#796a54;font-variant-numeric:tabular-nums;border:1px solid transparent}
.course-panel-strip button:after{content:'';position:absolute;bottom:1px;left:35%;right:35%;height:2px;background:transparent;transition:left .2s,right .2s,background .2s}
.course-panel-strip button[aria-current=true]{color:var(--course-deep);background:#e9dcc3;border-color:#c4a46d;box-shadow:inset 0 0 0 2px #fff7e5}
.course-panel-strip button[aria-current=true]:after{background:#8b5c31;left:23%;right:23%}
.course-panel-strip button:hover:not([aria-current=true]){background:#eee6d6;border-color:#ddcba9}
.course-loading{font:12px var(--ui);color:var(--muted);padding:12px}
.viewer-layout{grid-template-columns:minmax(0,1fr) minmax(345px,405px);gap:24px}
.map-column{top:82px}
.map-frame{border-color:#c6b28d;border-radius:7px;box-shadow:0 4px 20px #49321f0b,0 1px 0 #fff inset}
.map-toolbar{padding:8px 13px;min-height:59px;background:#fffdf7}
.map-toolbar h2{font-family:var(--text);font-size:18px;font-weight:600}
.map-controls{justify-content:flex-end;gap:12px}
.map-navigation button[data-course-action=focus]{border:1px solid #d5c09a;background:#f2ead8;color:var(--brown);font-weight:600}
.chart-navigation{background:#f0e8d6}
.chart-dock{padding-inline:14px;background:transparent}
.chart-dock>summary{font-size:11px}
.navigator-content{padding-bottom:13px}
#overview-track{box-shadow:0 0 0 3px #fff9e965;border-radius:1px}
#chart-viewer{height:clamp(360px,calc(100dvh - 395px),680px)}
.course-map-footer{padding:5px 13px}
.course-map-footer>div:first-child{display:flex;align-items:center;gap:7px;min-width:0;flex:1;font:11px/1.6 var(--ui);color:var(--muted)}
.course-map-footer>button{font-size:11px;font-weight:650;color:var(--rust);padding-inline:5px;white-space:nowrap}
.course-map-footer .map-status{margin-top:2px}
.course-tracking-dot{width:5px;height:5px;flex:none;border-radius:50%;background:#8c7344}
.course-sidebar{position:relative;border:1px solid #d4c4a6;border-radius:7px;background:#fffdf7;box-shadow:0 4px 20px #49321f0b;overflow:hidden}
.course-panel-heading{min-height:224px;padding:23px 126px 19px 23px;background:linear-gradient(120deg,#fffdf7,#f6f0e3);border-bottom:1px solid #e4d7be}
.course-panel-heading>div{display:flex;flex-wrap:wrap;gap:5px 12px;margin-bottom:10px}
#course-panel-number{font-size:9px;letter-spacing:.13em}
.course-follow-label{font:10px/1.6 var(--ui);color:#746950}
.course-follow-label:before{content:'·';margin-right:6px;color:var(--course-gold)}
.course-panel-heading h2{font:500 28px/1.13 var(--text);letter-spacing:-.025em;margin-bottom:12px;text-wrap:pretty;overflow-wrap:break-word}
.course-panel-heading h2:focus{outline:none}
.course-panel-heading p{font:12px/1.65 var(--ui);color:var(--muted)}
.course-panel-overview{position:absolute;right:18px;top:24px;width:85px;padding:5px 5px 0;background:#e7d7b5;border:1px solid #b89a65;border-radius:2px;box-shadow:2px 3px 0 #c8b48c30;transition:transform .2s,box-shadow .2s}
.course-panel-overview:hover{transform:translateY(-2px);box-shadow:2px 5px 8px #6c4b2220;background:#eadabd!important}
.course-panel-overview img{display:block;width:100%;height:147px;object-fit:contain;filter:sepia(.06);background:#e8d5a6}
.panel-overview-caption{display:block;text-align:center;font:600 9px/1.5 var(--ui);padding:5px 0;color:var(--course-deep)}
.panel-overview-caption>span:last-child{display:none}
.course-follow-notice{margin:15px 20px 0;padding:11px 13px;background:#f4eedf;border:1px solid #dfc99f;border-radius:5px;font:12px/1.6 var(--ui)}
.course-follow-notice button{font-size:12px;color:var(--rust);padding:5px 0;min-height:36px;font-weight:650}
.course-video-section{padding:19px 23px 21px;border-bottom:1px solid #e4d7be}
.course-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:26px;margin-bottom:10px}
.course-section-heading h3{font:600 18px/1.3 var(--text);letter-spacing:-.015em}
.course-video-status{padding:4px 7px;background:#eee7d9;border:1px solid #e1d5bd;border-radius:3px;color:#776950;font:500 9px/1.3 var(--ui);white-space:nowrap}
.course-video-status[data-ready=true]{background:#eef2e6;border-color:#d4dfc8;color:#486045}
.course-video-placeholder{display:flex;align-items:center;gap:12px;padding:14px 13px;border:1px solid #dfd1b5;background:linear-gradient(125deg,#f5efdf,#f9f5eb);border-radius:5px;min-height:88px}
.film-seal{display:flex;justify-content:center;align-items:center;width:38px;height:38px;flex:none;border:1px solid #c6ad7d;border-radius:50%;color:#8c6c3b}
.film-seal svg{width:19px;height:19px}
.course-video-placeholder strong{display:block;font:600 13px/1.4 var(--text);color:var(--brown);margin-bottom:4px}
.course-video-placeholder p{font:11px/1.6 var(--ui);color:#7b6d57}
.course-video-slot video{display:block;width:100%;aspect-ratio:16/9;background:#211b15;border-radius:4px;object-fit:contain}
.course-video-help{font:11px/1.6 var(--ui);margin-top:8px;color:var(--muted)}
.course-video-help a{overflow-wrap:anywhere}
.course-reading{padding:20px 23px 5px}
.course-copy-link{display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:32px;padding:7px;color:#8d7653}
.course-copy-link svg{width:16px;height:16px}
.course-explanation p{font-size:15px;line-height:1.75;color:#554b3e}
.course-explanation p+p{margin-top:12px}
.course-explanation{animation:course-reveal .24s ease-out}
.course-questions{margin-top:22px;padding-top:18px;border-top:1px solid #e6dac4}
.course-question-count{font:10px/1.4 var(--ui);color:#85765e}
.course-question-hint{font:11px/1.6 var(--ui);color:var(--muted);margin:-2px 0 12px}
.course-question{border-top:1px solid #e7ddc9}
.course-question:last-child{border-bottom:1px solid #e7ddc9}
.course-question summary{cursor:pointer;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;list-style:none;padding:14px 0;min-height:48px;font:600 12px/1.6 var(--ui);color:#5f4430}
.course-question summary::-webkit-details-marker{display:none}
.course-question summary:after{content:'+';font:400 19px/1.1 var(--text);color:var(--course-gold);flex:none;margin-top:1px}
.course-question[open] summary:after{content:'−'}
.course-question[open] summary{padding-bottom:8px}
.course-question p{font:14px/1.75 var(--text);padding:0 9px 16px 0;color:#625746}
.course-lesson-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 18px 18px}
.course-lesson-pagination button{font-size:11px;font-weight:600;min-height:42px;padding:8px;color:var(--rust)}
.course-lesson-pagination button:last-child{background:#eee3ce;border:1px solid #d9c49a;border-radius:4px}
.related-studies{border-top:1px solid #ddcfb5;background:#f9f5ec}
.related-studies>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;padding:17px 21px;min-height:65px;color:#77684f;font:600 11px/1.5 var(--ui)}
.related-studies>summary::-webkit-details-marker{display:none}
.related-studies>summary>span{display:flex;align-items:center;gap:12px}
.related-studies>summary>span>svg{width:21px;height:21px;color:#9a7b4b}
.related-studies summary small{display:block;font-size:10px;font-weight:400;margin-top:3px;color:#8b7d66}
.related-studies[open]>summary .chevron{transform:rotate(180deg)}
.related-study-body{border-top:1px solid #ddcfb5;background:var(--page)}
.related-study-body .learning-context{display:block;min-height:0;padding:20px;margin:0}
.related-study-body .learning-context h3{font-size:24px;margin:7px 0 8px}
.related-study-body .study-heading-top{flex-wrap:wrap}
.related-study-body .context-actions{margin-top:14px;flex-wrap:wrap}
.related-study-body .tool-tabs{border-radius:0}
.related-study-body #tool-content{padding:20px;min-height:0}
.related-study-body #tool-content h2{font-size:23px;line-height:1.25;margin-bottom:12px}
.related-study-body #tool-content p{font-size:15px}
.related-study-body .lesson-extras{display:block}
.related-study-body .lesson-extras .transcript{border:0}
.legacy-map-tools{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);padding:12px 20px;font:11px/1.6 var(--ui)}
.legacy-map-tools .study-map-context{font-size:11px}
.legacy-map-tools+button{margin:0 20px 15px;font-size:11px;color:var(--rust)}
.course-error{padding:20px;font:13px/1.7 var(--ui);color:var(--rust)}
.course-error button{display:block;margin-top:10px;background:var(--soft);border:1px solid var(--line)}
.course-dialog{width:min(980px,calc(100vw - 32px));max-height:88dvh;margin:auto;padding:0;border:1px solid #cbb38b;border-radius:9px;background:var(--page);color:var(--ink);box-shadow:0 20px 100px #23110440}
.course-dialog-header{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:25px 28px 22px;background:#faf6ecef;border-bottom:1px solid #dacbad;backdrop-filter:blur(12px)}
.course-dialog-header h2{font-size:34px;font-weight:500;margin:6px 0 8px}
.course-dialog-header p{font:12px/1.6 var(--ui);color:var(--muted)}
.course-dialog-header .eyebrow{font-size:9px}
.course-dialog-body{padding:0 28px 28px}
.course-dialog-body .field-label{margin-top:20px}
.course-dialog-body input{background:#fffdf8;font-size:15px;border-radius:5px}
.course-catalog-count{font:11px/1.6 var(--ui);color:var(--muted);margin:10px 0 17px}
.course-catalog{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.course-catalog-card{display:grid;grid-template-columns:54px minmax(0,1fr);gap:15px;align-items:center;text-align:left;min-height:124px;width:100%;padding:13px;border:1px solid #ddcfb5;background:#fcf9f1;border-radius:5px}
.course-catalog-card img{width:54px;height:94px;object-fit:contain;background:#e5d3af;border:1px solid #c7ac7d}
.course-catalog-card .eyebrow{font-size:9px;letter-spacing:.08em}
.course-catalog-card strong{display:block;font:500 20px/1.16 var(--text);color:var(--brown);margin:5px 0 8px;overflow-wrap:break-word}
.course-catalog-card small{display:block;font:10px/1.5 var(--ui);color:var(--muted)}
.course-catalog-card[aria-current=true]{border-color:#a77b3e;background:#f0e4cb;box-shadow:inset 0 0 0 2px #fff8e8}
.course-catalog-empty{grid-column:1/-1;padding:35px 15px;text-align:center;font:14px/1.7 var(--ui);color:var(--muted)}
.course-art-dialog{width:min(1000px,calc(100vw - 24px))}
.course-art-dialog img{display:block;width:100%;height:auto;background:#e4d2ac}
.course-link-fallback{margin-top:10px;font-size:12px}
.course-link-fallback input{font-size:12px;margin-top:7px}
@keyframes course-reveal{from{opacity:.45;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(min-width:1250px){.map-controls{flex:1;justify-content:flex-end}.map-navigation svg{display:block}}
@media(max-width:1249px){.viewer-layout{grid-template-columns:minmax(0,1fr) 355px;gap:17px}.map-toolbar h2{font-size:17px}.course-panel-heading{padding-left:20px;padding-right:120px}.course-panel-heading h2{font-size:25px}.course-panel-overview{right:16px;width:80px}.course-video-section,.course-reading{padding-inline:20px}}
@media(max-width:979px){.workspace{max-width:880px;padding:0 20px 12px}.course-introduction{margin:18px 0 16px}.course-introduction h1{font-size:30px}.course-catalog-button{font-size:11px;padding:10px 12px;gap:8px}.course-navigation{margin-bottom:16px;padding-block:5px 8px;gap:8px}.course-panel-strip button{flex:0 0 43px}.viewer-layout{display:block}.course-sidebar{max-width:640px;margin:auto}.course-panel-heading{padding:23px 142px 21px 25px;min-height:217px}.course-panel-heading h2{font-size:31px}.course-panel-overview{right:25px;width:86px}.course-video-section,.course-reading{padding-inline:25px}.map-column{position:static}#chart-viewer{height:clamp(330px,52dvh,620px)}.map-controls{order:0;flex-basis:auto;border:0;padding:0;justify-content:center}.map-toolbar{flex-wrap:nowrap}.map-toolbar>div:first-child{min-width:0}.course-map-footer>button{background:#eee2c9;border:1px solid #d9c49a;min-height:38px;margin-block:3px;padding:7px 10px}.switch-detail{display:inline}.workspace-switch{margin-bottom:0}.course-panel-strip{scroll-padding-inline:4px}.site-header{padding-inline:20px}.header-course-button{font-size:11px}}
@media(max-width:640px){.brand-name{font-size:21px}.brand-publisher{font-size:7px}.brand-seal{width:33px;height:33px}.site-header{padding-inline:14px;gap:5px}.header-actions{gap:2px}.header-course-button{padding:8px;min-width:40px}.header-course-button>span{display:none}.header-course-button svg{width:19px;height:19px}.workspace{padding-inline:14px}.workspace-switch{margin-inline:-14px}.workspace-switch button{gap:8px}.course-introduction{margin:16px 0}.course-introduction .eyebrow{font-size:8px;letter-spacing:.1em}.course-introduction h1{font-size:28px;max-width:350px;line-height:1.1}.course-introduction p{font-size:11px;margin-top:7px}.course-catalog-button{display:none}.course-navigation{gap:6px;margin-bottom:14px}.course-arrow{width:35px;min-height:42px;height:42px;padding:8px}.course-panel-strip button{min-height:42px;flex-basis:41px;font-size:17px}.map-toolbar{flex-wrap:wrap;padding:8px 9px;gap:5px}.map-toolbar>div:first-child{flex:1}.map-toolbar h2{font-size:17px}.map-controls{order:3;flex:1 0 100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:7px;margin-top:2px}.map-navigation button{font-size:11px}.zoom-controls .icon-button{width:38px;height:38px;min-height:38px}.map-controls .zoom-label{display:inline;font-size:10px}.map-navigation svg{display:none}.expand-button{font-size:11px;min-height:38px;padding:7px 9px}.expand-button svg{width:17px;height:17px}.chart-dock{padding-inline:9px}.chart-dock>summary{font-size:10px}.navigator-content{padding-bottom:9px}#chart-viewer{height:clamp(310px,49dvh,530px)}.course-map-footer{padding-inline:9px}.course-map-footer>div:first-child{font-size:10px}.course-map-footer>button{font-size:10px}.course-panel-heading{padding:21px 120px 19px 21px;min-height:225px}.course-panel-heading h2{font-size:27px}.course-panel-heading p{font-size:12px}.course-panel-overview{right:17px;top:22px;width:80px}.course-panel-overview img{height:146px}.course-video-section,.course-reading{padding-inline:21px}.course-dialog{width:calc(100vw - 20px);max-height:91dvh}.course-dialog-header{padding:20px 19px 17px}.course-dialog-header h2{font-size:30px}.course-dialog-body{padding-inline:19px;padding-bottom:20px}.course-catalog{grid-template-columns:1fr;gap:10px}.course-catalog-card{min-height:109px;grid-template-columns:45px minmax(0,1fr);gap:13px;padding:12px}.course-catalog-card img{width:45px;height:84px}.course-catalog-card strong{font-size:21px}.course-catalog-card small{font-size:10px}.footer{margin-top:18px}.course-follow-label{font-size:9px}}
@media(max-height:540px) and (max-width:1100px){.course-introduction{margin-block:12px}.course-introduction h1{font-size:27px}.course-navigation{margin-bottom:12px}.course-panel-heading{min-height:200px}#chart-viewer{height:max(260px,66dvh)}.map-controls{order:0;flex-basis:auto;border:0;margin:0;padding:0;justify-content:center}.map-toolbar{flex-wrap:nowrap}.course-dialog{max-height:94dvh}}
body.map-expanded .course-map-footer{flex:none}
body.map-expanded .course-map-footer>button{display:none}
body.map-expanded .map-controls{order:0;flex-basis:auto;border:0;margin:0;padding:0}
@media(prefers-reduced-motion:reduce){.course-panel-strip{scroll-behavior:auto}.course-explanation{animation:none}.course-panel-overview{transition:none}.course-panel-strip button:after{transition:none}}
@media(max-width:640px){.brand-name{font-size:clamp(16px,4.9vw,20px)}.brand{gap:7px}.brand-seal{width:28px;height:32px}.header-course-button{width:36px;min-width:36px;padding:8px}.utility-menu>summary{width:40px}.header-actions .chart-search-launch{width:40px;min-width:40px;padding:9px}}
@media(max-width:359px){.brand-seal{display:none}.brand-name{font-size:18px}.site-header{padding-inline:12px}.brand{gap:0}}
@media print{.course-introduction,.course-navigation,.course-sidebar,.course-dialog{display:none!important}}
