:root{--module-color:#674bbc;--ink:#242836;--muted:#565e6b;--line:#dce0e6}html{scroll-behavior:auto}body{font-size:17px}.account-bar{max-width:1380px;margin:auto;padding:10px 36px;display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}#account-label{font-weight:650;margin-right:auto}.save-error{color:#9a2828;background:#fff3f1;padding:10px;border-radius:5px}#retry-save{font-size:14px;padding:5px 12px}.course-page{max-width:1240px;margin:0 auto;padding:40px 36px 80px}.page-head{max-width:900px;margin-bottom:30px}.page-head h1{font-size:clamp(2rem,4vw,3.1rem);line-height:1.14;margin:12px 0 18px;max-width:900px}.page-head .lead{max-width:780px}.dashboard-summary{display:flex;justify-content:space-between;align-items:center;gap:24px;border:1px solid var(--line);border-left:5px solid #674bbc;padding:22px 26px;margin-bottom:24px;background:#fff}.dashboard-summary p{margin:4px 0 0}.course-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:28px 0 40px}.tool-card{border:1px solid var(--line);border-radius:9px;padding:20px;text-decoration:none!important;color:var(--ink)}.tool-card h3{font-size:18px;margin:0 0 10px}.tool-card p{font-size:15px;line-height:1.5;margin:0;color:var(--muted)}.tool-card:hover{border-color:#674bbc;background:#faf9ff}.module-body>p{font-size:15px;color:var(--muted);line-height:1.6}.module-body h3{min-height:60px}.module-card{border-radius:9px;overflow:hidden}.module-band{font-size:22px;padding:14px 20px}.module-body progress{margin-top:auto}.module-body{display:flex;flex-direction:column;height:100%}.module-body .button{align-self:flex-start}.module-download-link{display:block;margin-top:12px;font-size:14px}progress{display:block;width:100%;height:8px;border:0;border-radius:5px;overflow:hidden;background:#e8ebef;accent-color:var(--color,var(--module-color))}progress::-webkit-progress-bar{background:#e8ebef}progress::-webkit-progress-value{background:var(--color,var(--module-color))}progress::-moz-progress-bar{background:var(--color,var(--module-color))}.finish-grid{margin-top:52px}.finish-grid>p{display:flex;gap:12px;flex-wrap:wrap}.course-page .three{align-items:stretch}.course-page .panel{padding:24px}.course-page .panel h2{font-size:23px;margin-top:0}.course-page .panel h3{margin-top:0}.course-page h2{margin-top:34px}.course-page .panel h2,.course-page .panel h3{margin-top:0}.full-lesson .section-number{color:var(--module-color);background:#f3f5f7}.full-lesson .eyebrow{color:var(--module-color)}.full-lesson .lesson-head{border-top:5px solid var(--module-color);padding-top:28px}.full-lesson .lesson-section>p{line-height:1.8}.full-lesson .lesson-section{padding-top:42px;padding-bottom:36px}.full-lesson .course-photo,.full-lesson .course-figure{margin:26px 0}.course-photo img,.course-figure img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:6px;margin:auto}.course-figure{border:1px solid var(--line);padding:14px;border-radius:8px;background:#fff}.course-figure figcaption,.course-photo figcaption{font-size:14px;line-height:1.6;color:var(--muted);margin-top:10px}.course-photo figcaption span{display:block;margin-top:6px}.visual-reveal{background:#f7f8fa;border:1px solid var(--line);border-radius:8px;margin:16px 0;padding:15px 18px}.visual-reveal summary{font-weight:600;cursor:pointer}.visual-reveal[open]>summary{margin-bottom:16px}.visual-reveal .course-figure{margin-bottom:0}.table-scroll{overflow-x:auto;max-width:100%;margin:24px 0}.table-scroll table{border-collapse:collapse;width:100%;font-size:15px;min-width:500px}.table-scroll th,.table-scroll td{border:1px solid var(--line);padding:13px;text-align:left;vertical-align:top}.table-scroll th{background:#f2f5f7;font-weight:650}.table-scroll th small{display:block;font-weight:400;margin-top:5px;overflow-wrap:anywhere}.interactive{border:1px solid #c9d5dd;background:#f7f9fb;border-radius:10px;padding:26px;margin:30px 0}.interactive>h3{font-size:23px;margin-top:4px}.control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.control-grid label:has(textarea){grid-column:1/-1}.control-grid .wide{grid-column:1/-1}.interactive-result{border-top:1px solid #cdd8df;padding-top:18px;margin-top:20px;line-height:1.7}.interactive-result svg{max-width:520px;display:block;margin-top:20px}.schematic-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:15px;max-width:520px}.schematic-pair figure{margin:0}.schematic-pair svg{width:100%;max-height:150px}.schematic-pair figcaption{font-size:14px}label.field-label,.control-grid label,.course-page form>label,.course-page .panel>label{display:block;font-weight:600;margin:18px 0 8px}.control-grid label{margin:0}.course-page input:not([type=radio]):not([type=checkbox]),.course-page textarea,.course-page select,.full-lesson input:not([type=radio]):not([type=checkbox]),.full-lesson textarea,.full-lesson select{display:block;width:100%;max-width:100%;padding:12px;font:inherit;color:var(--ink);border:1px solid #aeb7c1;border-radius:5px;background:#fff;margin-top:8px;box-sizing:border-box}.course-page textarea,.full-lesson textarea{resize:vertical;line-height:1.65;font-weight:400}.full-lesson input[type=number]{max-width:230px}.course-page select{max-width:100%}.course-page .option,.full-lesson .option{font-weight:400;align-items:flex-start;font-size:16px;line-height:1.55}.course-page .option input,.full-lesson .option input{flex:none;margin-top:5px}.course-page .quiz-question legend{font-size:19px;font-weight:600;line-height:1.55;margin-bottom:12px}.course-page .quiz-question{padding:24px 0;border-bottom:1px solid var(--line);margin-bottom:20px}.course-page fieldset{border:0;padding:0;min-width:0}.course-page legend{font-weight:600;padding:0}.course-page button,.full-lesson button{margin-top:8px}.micro-check{margin-top:32px}.text-button{border:0;background:none;text-align:left;padding-left:0;color:#59438d}.next-module{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:34px 0}.download-links{display:flex;gap:12px 28px;flex-wrap:wrap;padding:10px 0}.download-links a{display:block;padding:7px 0;font-size:16px}.download-section{border-left:4px solid var(--module-color);padding:10px 25px;margin:32px 0}.download-section h2{margin-top:8px}.filter-label{display:block;max-width:540px;margin:24px 0;font-weight:600}.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.resource-grid .panel h3{font-size:18px}.credit-row{padding:22px 0;border-bottom:1px solid var(--line)}.credit-row h2{font-size:23px}.video-module{padding:25px 0;border-bottom:1px solid var(--line)}.video-card{overflow:hidden}.video-card .video-slot:empty{display:none}.video-slot iframe{width:100%;aspect-ratio:16/9;border:0}.video-slot{margin-top:18px}.class-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:28px}.join-code{font-size:17px;margin:0 18px}.assignment{margin:22px 0}.submission{padding:16px;margin:16px 0;background:#f4f6f8;border-radius:6px}.submission summary{font-weight:600;cursor:pointer}.submitted-work{white-space:normal;overflow-wrap:anywhere;max-height:600px;overflow-y:auto;padding:20px 0}.discussion{margin:28px 0}.discussion article{margin-top:16px}.attachment-picker{border:1px solid var(--line)!important;padding:20px!important;border-radius:7px;margin:28px 0}.attachment-picker legend{padding:0 8px!important;font-size:15px}.attachment-picker input[type=file]{font-size:14px!important}.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.form-status{margin-top:12px}.completion-list{list-style:none;padding:0}.completion-list li{padding:16px;border-bottom:1px solid var(--line)}.completion-list a{float:right}.certificate{border:2px solid #674bbc;padding:64px 35px;text-align:center;max-width:960px;margin:35px auto;background:#fff}.certificate h2{font-size:35px}.certificate h3{font-size:28px;line-height:1.4}.certificate small{display:block;margin-top:36px}.classroom .account-bar,.classroom footer{display:none}.classroom .full-lesson{max-width:1100px;font-size:22px}.classroom .full-lesson p{font-size:22px}.classroom .full-lesson h1{font-size:46px}.classroom .full-lesson h2{font-size:34px}.classroom .interactive{font-size:20px}.classroom .full-lesson .small,.classroom .source,.classroom figcaption{font-size:17px}.classroom .next-module{display:none}button:disabled{opacity:.55;cursor:not-allowed}a,button,summary,input,select,textarea{scroll-margin-top:130px}:focus-visible{outline:3px solid #176eaa;outline-offset:4px}h1,h2,h3,legend{overflow-wrap:break-word}.small{font-size:14px}.global-nav{overflow-x:auto}.global-nav a{white-space:nowrap}.course-page .two{align-items:start}.course-page blockquote{border-left:4px solid #8c96a3;padding:12px 18px;margin:15px 0;background:#f4f6f8}#account-status{max-width:600px}.course-page>section{margin-bottom:32px}main{min-height:60vh}header .prototype{display:none}
@media(max-width:900px){.course-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.course-page{padding:30px 24px 60px}.account-bar{padding:10px 24px;flex-wrap:wrap;gap:6px 16px}.resource-grid{grid-template-columns:1fr}.class-list{grid-template-columns:1fr}.page-head h1{font-size:2.3rem}.dashboard-summary{align-items:flex-start}.course-page .three{grid-template-columns:1fr}.course-page .two{grid-template-columns:1fr}.module-body h3{min-height:0}.classroom .full-lesson{padding:20px}}
@media(max-width:600px){.course-page{padding:25px 18px 50px}.course-tools{grid-template-columns:1fr 1fr;gap:10px}.tool-card{padding:15px}.tool-card h3{font-size:16px}.tool-card p{font-size:14px}.dashboard-summary{display:block;padding:20px}.dashboard-summary .button{margin-top:15px}.account-bar{padding:10px 18px;font-size:13px}#account-status{width:100%}.control-grid{grid-template-columns:1fr}.interactive{padding:18px}.page-head h1{font-size:2rem}.course-figure{padding:6px}.completion-list a{float:none;display:block;margin-top:8px}.certificate{padding:35px 18px}.certificate h2{font-size:28px}.certificate h3{font-size:24px}.classroom .full-lesson p{font-size:19px}.full-lesson .lesson-head{padding-top:20px}.full-lesson .lesson-section{padding-top:30px}.join-code{display:block;margin:15px 0}.table-scroll table{font-size:14px}}
@media print{header,.global-nav,.account-bar,.sidebar,footer,.video-actions,.form-actions,button,.next-module{display:none!important}.layout,.lesson,.course-page{display:block!important;width:auto!important;max-width:none!important;padding:0!important;margin:0!important}.course-page,.lesson{font-size:11pt}.lesson-section{break-before:auto;break-inside:auto}.course-figure,.course-photo,.interactive,.micro-check{break-inside:avoid}.visual-reveal:not([open]){display:none}.video-slot{display:none}.printing-certificate #main .course-page>*{display:none!important}.printing-certificate #main .course-page>#certificate-print{display:block!important;border:2px solid #674bbc;padding:45px 25px}.printing-certificate .certificate h2{font-size:28pt}.printing-certificate .certificate h3{font-size:24pt}a{color:inherit!important}.table-scroll{overflow:visible}textarea{border:1px solid #999;overflow:visible}.course-page .option{font-size:11pt}}

.draft-recovery{max-width:1328px;margin:15px auto;padding:20px;background:#fff7de;border:1px solid #dfc774;border-radius:7px}.draft-recovery p{margin-bottom:10px}.draft-recovery button{margin-right:12px}

.mobile-toc-button{display:none}@media(max-width:760px){.sidebar nav,.sidebar>a:not(.back),.sidebar>button:not(.mobile-toc-button){display:none}.sidebar.toc-open nav{display:grid}.sidebar.toc-open>a,.sidebar.toc-open>button{display:flex}.sidebar .mobile-toc-button{display:flex;margin-top:16px;width:100%;justify-content:space-between}.layout{gap:26px}.sidebar .progress-label{margin-top:15px}.sidebar{border-bottom:1px solid var(--line);padding-bottom:22px}}
