.learning-site{background:var(--paper);min-height:100svh}.learning-site :is(h1,h2,h3){color:var(--ink);letter-spacing:-.035em;overflow-wrap:anywhere;font-weight:550}.learning-site :is(a,button,summary):focus-visible{outline:2px solid var(--green);outline-offset:4px}.learning-site .button{border-radius:var(--radius-button);min-height:46px;font:550 14px/1.45 var(--font-editorial), Arial, sans-serif;padding:12px 22px}.learning-site .button-primary{background:var(--green);color:var(--surface)}.learning-site .button-primary:hover{background:var(--green-hover)}.learning-site .button-outline{border-color:var(--line)}.learning-site .button-outline:hover,.learning-site .button-ghost:hover{background:var(--surface-subtle)}.learning-site .button:disabled{opacity:.6}.learning-site .eyebrow{font:550 12px/1.6 var(--font-editorial), Arial, sans-serif;letter-spacing:.045em;color:var(--muted)}.learning-site .learning-header{background:var(--paper);z-index:20;flex-wrap:nowrap;gap:32px;height:72px;padding:0 32px;position:sticky;top:0}.learning-site .learning-header .wordmark{letter-spacing:-.065em;color:var(--green);font-family:inherit;font-size:30px;line-height:1}.learning-site .learning-header .brand-dot{margin:0}.learning-site .learning-header-title{white-space:nowrap;text-overflow:ellipsis;order:0;min-width:0;max-width:760px;font-size:14px;font-weight:500;overflow:hidden}.learning-site .learning-exit{order:2;min-height:44px;font-size:13px}.learning-site .learning-program-toggle{display:none}.learning-site .learning-layout{grid-template-columns:304px minmax(0,1fr);align-items:start;max-width:1600px}.learning-site .learning-content-area{min-width:0}.learning-site .learning-sidebar{background:var(--surface);height:calc(100dvh - 72px);padding:0;position:sticky;top:72px}.learning-site .learning-program-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;height:100%;overflow-y:auto}.learning-site .learning-sidebar .learning-program{max-height:none;position:static;overflow:visible}.learning-site .learning-program{padding:0 20px 32px}.learning-site .learning-program-intro{background:var(--surface);z-index:2;padding:24px 0 4px;position:sticky;top:0}.learning-site .learning-program-heading h2{letter-spacing:0;margin:0;font-size:14px;font-weight:600}.learning-site .learning-program-heading .button{width:40px;min-height:40px;padding:8px}.learning-site .learning-program-course{overflow-wrap:anywhere;color:var(--muted);margin:16px 0;font-size:14px;line-height:1.55}.learning-site .learning-progress,.public-site .learning-card .learning-progress{margin:16px 0 20px}.learning-site .learning-progress>div:first-child,.public-site .learning-card .learning-progress>div:first-child{color:var(--muted);font-size:12px}.learning-site .learning-progress .progress-bar,.public-site .learning-card .progress-bar{background:var(--line);border-radius:4px;height:3px;margin-top:10px}.learning-site .learning-progress .progress-bar span,.public-site .learning-card .progress-bar span{background:var(--green);transition:width .22s}.learning-site .learning-program-section h3{letter-spacing:0;align-items:baseline;gap:12px;margin:24px 8px 8px;font-size:13px;font-weight:600;line-height:1.65}.learning-site .learning-program-section h3>span{color:var(--muted);font-size:11px;font-weight:400}.learning-site .learning-program li a{border-radius:var(--radius-control);transition:background var(--motion), color var(--motion);gap:10px;padding:11px 10px;font-size:13px;font-weight:400;line-height:1.6}.learning-site .learning-program li a:hover{background:var(--paper)}.learning-site .learning-program li a[aria-current]{background:var(--mint);color:var(--green);box-shadow:none;font-weight:550}.learning-site .learning-lesson-state{width:15px;color:var(--green);font-size:13px}.learning-site .learning-program small{color:var(--muted);margin-top:3px;font-size:11px}.learning-site .learning-article{max-width:960px;padding:56px 64px 80px}.learning-site .learning-article>.eyebrow{max-width:var(--reading-width);margin:0 auto 16px;display:block}.learning-site .learning-article>h1{max-width:var(--reading-width);text-wrap:balance;outline:none;margin:0 auto 36px;scroll-margin-top:96px;font-size:clamp(30px,3.1vw,44px);line-height:1.15}.learning-site .learning-preview-note{max-width:var(--reading-width);margin:0 auto 24px;font-size:13px;line-height:1.6}.learning-site .lesson-reading{max-width:var(--reading-width);color:var(--text);overflow-wrap:anywhere;margin:0 auto;font-family:inherit;font-size:18px;line-height:1.85}.learning-site .lesson-reading>:first-child{margin-top:0}.learning-site .lesson-reading p{margin:0 0 24px}.learning-site .lesson-reading :is(h2,h3){text-wrap:balance;scroll-margin-top:96px;line-height:1.25}.learning-site .lesson-reading h2{margin:48px 0 20px;font-size:28px}.learning-site .lesson-reading h3{margin:32px 0 16px;font-size:23px}.learning-site .lesson-reading strong{font-weight:650}.learning-site .lesson-reading :is(ul,ol){margin:24px 0 32px;padding-left:26px}.learning-site .lesson-reading li{margin:10px 0;padding-left:5px}.learning-site .lesson-reading li>p{margin-bottom:10px}.learning-site .lesson-reading blockquote{border-left:3px solid var(--green);font-family:inherit;font-style:normal;font-size:inherit;color:var(--text);background:0 0;margin:32px 0;padding:4px 0 4px 24px}.learning-site .lesson-reading blockquote p:last-child{margin-bottom:0}.learning-site .lesson-reading a{color:var(--green);text-underline-offset:4px;text-decoration:underline}.learning-site .lesson-reading code{background:var(--surface-subtle);border-radius:4px;padding:2px 5px;font-size:.88em}.learning-site .lesson-reading pre{background:var(--surface-subtle);max-width:100%;color:var(--text);border-radius:var(--radius-control);margin:32px 0;padding:24px;line-height:1.6;overflow-x:auto}.learning-site .lesson-reading pre code{white-space:pre;background:0 0;padding:0}.learning-site .lesson-reading table{max-width:100%;margin-block:32px;font-size:15px;display:block;overflow-x:auto}.learning-site .lesson-reading :is(th,td){border-color:var(--line);min-width:110px;padding:12px 16px}.learning-site .lesson-reading figure{max-width:calc(100% + 64px);margin:32px -32px}.learning-site .lesson-reading img{border-radius:var(--radius-media);width:auto;max-width:100%;height:auto;margin:auto;display:block}.learning-site .lesson-reading figcaption{color:var(--muted);text-align:left;margin:12px 32px 0;font-size:13px;line-height:1.6}.learning-site .video-frame{aspect-ratio:16/9;border-radius:var(--radius-media);background:var(--ink);border:0;width:100%;height:auto;margin:40px 0;display:block}.learning-site .learning-lesson-actions{max-width:var(--reading-width);margin:48px auto 0;padding-top:32px}.learning-site .learning-finish-heading h2{margin:0 0 8px;font-size:26px;line-height:1.25}.learning-site .learning-finish-heading p{color:var(--muted);margin:0 0 24px;font-size:14px}.learning-site .learning-saved{color:var(--green);margin:0 0 12px;font-size:13px}.learning-site .learning-done{margin:0 0 12px;font-size:18px;font-weight:550;display:inline-block}.learning-site .learning-lesson-navigation{border-top:1px solid var(--line);gap:24px;margin-top:32px;padding-top:20px}.learning-site .learning-lesson-navigation a{min-width:0;padding:8px 0;font-size:13px;font-weight:500}.learning-site .learning-lesson-navigation small{color:var(--text);margin-top:8px;font-size:14px;font-weight:400;line-height:1.55}.learning-site .learning-lesson-navigation a:hover small{color:var(--green);text-underline-offset:4px;text-decoration:underline}.learning-site .learning-lesson-navigation .next-lesson.completed{font-weight:600}.learning-site .learning-lesson-navigation .next-lesson.completed small{color:var(--green)}.learning-site .learning-completion{background:var(--surface-subtle);border-radius:var(--radius-surface);margin-top:20px;padding:32px}.learning-site .learning-completion-mark{background:var(--paper);width:44px;height:44px;margin-bottom:20px}.learning-site .learning-completion h2{font-size:30px}.learning-site .learning-completion>strong{color:var(--green);font-size:14px;font-weight:500}.learning-site .learning-completion>div{gap:12px;margin-top:24px}.learning-site .learning-completion p{font-size:16px}.learning-site .learning-overview{max-width:900px;padding:48px 48px 80px}.learning-site .learning-overview>h1{margin:16px 0 24px;font-size:clamp(32px,4vw,48px);line-height:1.15}.learning-site .learning-overview .creator-back{font-size:13px}.learning-site .learning-overview>.eyebrow{margin-top:32px}.learning-site .learning-overview-start>p{max-width:660px;margin:0 0 24px;font-size:18px;line-height:1.7}.learning-site .learning-overview-start .learning-progress{max-width:380px;margin-bottom:24px}.learning-site .learning-overview-start>.button{gap:12px;margin-bottom:0;display:inline-flex}.learning-site .learning-overview-program-title{margin:48px 0 0;padding-top:40px;font-size:30px}.learning-site .learning-program-overview{padding:0}.learning-site .learning-program-overview h3{gap:16px;margin:32px 0 16px;font-size:18px}.learning-site .learning-program-overview h3>span{color:var(--green);font-size:20px}.learning-site .learning-program-overview li a{padding:14px 16px;font-size:16px}.learning-site .learning-unavailable{max-width:800px;padding:64px 32px}.learning-site .learning-unavailable h1{margin:16px 0 20px;font-size:clamp(28px,3.5vw,40px);line-height:1.2}.learning-site .learning-unavailable p{color:var(--muted);margin:0 0 28px;font-size:16px;line-height:1.75}.learning-site .learning-load-error>p{color:var(--muted);margin-bottom:24px;font-size:16px}.learning-site .learning-load-error>h1{margin-left:0}.learning-site .learning-loading>div{max-width:700px;margin:32px auto}.learning-site .learning-loading i{background:var(--line);border-radius:4px;height:12px;margin-bottom:18px;display:block}.learning-site .learning-loading i:first-child{width:75%;height:36px;margin-bottom:48px}.learning-site .learning-loading i:last-child{width:60%}.learning-site .learning-drawer{background:var(--surface);width:min(90vw,400px);max-width:none;height:100dvh;max-height:100dvh;color:var(--text);border:0;margin:0;padding:0;inset:0 auto 0 0;overflow:hidden}.learning-site .learning-drawer::backdrop{background:var(--overlay)}.learning-site .learning-drawer .learning-program{padding-bottom:max(24px, env(safe-area-inset-bottom))}.learning-site .learning-drawer .learning-program-intro{padding-top:max(12px, env(safe-area-inset-top))}.learning-site .learning-drawer .learning-program-scroll{scrollbar-gutter:auto}.public-site .profile-learning .profile-columns{display:block}.public-site .profile-learning .profile-tabs{margin-bottom:32px}.public-site .profile-learning .profile-details[hidden]{display:none}.public-site .learning-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:32px;display:grid}.public-site .learning-card{border-radius:var(--radius-card);background:var(--surface);border:0;min-width:0;padding:0;display:block;overflow:hidden}.public-site .learning-card .course-cover{border-radius:0}.public-site .learning-card-copy{padding:28px}.public-site .learning-card h2{margin:12px 0 24px;font-size:28px}.public-site .learning-card .eyebrow{color:var(--muted);font-size:11px}.public-site .learning-card .learning-done{color:var(--green);margin:16px 0;font-size:14px;font-weight:550}.public-site .learning-card .button{margin-top:8px}.public-site .learning-card.is-complete .button{color:var(--green);border-color:var(--line);background:0 0}.public-site .learning-card.is-complete .button:hover{background:var(--surface-subtle)}.public-site .learning-library-empty{text-align:left;background:var(--surface-subtle);border-radius:var(--radius-surface);margin:0 0 32px;padding:40px}.public-site .learning-library-empty h2{margin:0 0 16px}.public-site .learning-library-empty p{margin:0 0 24px}.public-site .learning-library-error{padding:40px 0}.public-site .learning-library-error h2{font-size:28px}.public-site .learning-library-error p{margin:16px 0 24px}.public-site .learning-library-loading{color:var(--muted);padding-block:12px 40px}.public-site .learning-library-loading>div{aspect-ratio:3/2;background:var(--surface-subtle);border-radius:var(--radius-media);width:min(100%,560px);margin-bottom:20px}@media (min-width:1600px){.learning-site .learning-layout{border-inline:1px solid var(--line)}}@media (max-width:1100px){.learning-site .learning-layout{grid-template-columns:280px minmax(0,1fr)}.learning-site .learning-article{padding:40px 40px 64px}.learning-site .lesson-reading figure{max-width:calc(100% + 32px);margin-inline:-16px}}@media (max-width:900px){.learning-site .learning-header{gap:12px;height:64px;padding:0 16px}.learning-site .learning-header .wordmark{display:none}.learning-site .learning-exit{order:0;justify-content:center;min-width:36px;margin:0}.learning-site .learning-exit>span{display:none}.learning-site .learning-header-title{flex:1;order:1;font-size:13px}.learning-site .learning-program-toggle{flex-shrink:0;order:2;align-items:center;gap:6px;min-height:44px;padding:8px 0 8px 8px;font-size:12px;display:inline-flex}.learning-site .learning-program-toggle svg{width:16px}.learning-site .learning-layout{display:block}.learning-site .learning-sidebar{display:none}.learning-site .learning-article{max-width:800px;padding:32px 24px 56px}.learning-site .learning-article>h1{margin-bottom:28px;scroll-margin-top:88px;font-size:clamp(28px,5vw,38px)}.learning-site .lesson-reading{font-size:17px;line-height:1.8}.learning-site .lesson-reading h2{margin-top:36px;font-size:25px}.learning-site .lesson-reading h3{margin-top:28px;font-size:21px}.learning-site .lesson-reading figure{max-width:100%;margin:28px 0}.learning-site .lesson-reading figcaption{margin-inline:0}.learning-site .video-frame{border-radius:var(--radius-control);margin:28px 0}.learning-site .learning-lesson-actions{margin-top:36px}.learning-site .learning-finish-heading h2{font-size:24px}.learning-site .learning-overview{padding:32px 24px 56px}.learning-site .learning-overview>.eyebrow{margin-top:24px}.learning-site .learning-overview>h1{font-size:34px}.learning-site .learning-completion{padding:24px}.learning-site .learning-unavailable{padding:40px 24px}}@media (max-width:760px){.public-site .learning-list{grid-template-columns:minmax(0,1fr);gap:28px}.public-site .learning-card-copy{padding:24px}.public-site .learning-card h2{font-size:26px}.public-site .learning-library-empty{padding:32px 24px}}@media (max-width:420px){.learning-site .learning-article{padding-inline:20px}.learning-site .learning-lesson-navigation{flex-direction:column;gap:20px}.learning-site .learning-lesson-navigation a{max-width:100%}.learning-site .learning-lesson-navigation .next-lesson{align-self:flex-end;max-width:90%}.learning-site .learning-completion{padding:24px 20px}}@media (prefers-reduced-motion:reduce){.learning-site *,.public-site .learning-card *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.course-onboarding{margin:24px 0}.launch-checklist{border-block:1px solid var(--line);padding:14px 0}.launch-heading,.launch-heading>div{align-items:center;gap:12px;display:flex}.launch-heading{justify-content:space-between}.launch-heading h2{letter-spacing:-.02em;margin:0;font-size:15px;font-weight:600}.launch-heading span{color:var(--muted);white-space:nowrap;font-size:12px}.launch-heading button{cursor:pointer;align-items:center;gap:6px;min-height:36px;padding:4px 8px;font-size:12px;display:flex}.launch-heading button:hover{background:var(--surface-subtle)}.launch-steps{grid-template-columns:1fr 1fr;gap:4px 16px;margin:12px 0 0;padding:0;list-style:none;display:grid}.launch-steps[hidden]{display:none}.launch-steps li>a,.launch-steps li>span{border-radius:5px;align-items:center;gap:9px;min-height:42px;padding:9px 10px;font-size:13px;line-height:1.4;display:flex}.launch-steps li.is-done>span{color:var(--muted)}.launch-steps li.is-done svg{color:var(--green);flex-shrink:0}.launch-steps a{color:var(--text);text-decoration:none}.launch-steps a:hover{background:var(--surface-hover)}.launch-steps li.is-next a{background:var(--surface);color:var(--green);box-shadow:inset 2px 0 var(--green);font-weight:600}.launch-steps small{color:var(--muted);margin-top:3px;font-size:11px;font-weight:400;display:block}.launch-step-mark{flex-shrink:0;justify-content:center;width:16px;display:flex}.context-hint{background:var(--surface);border-left:2px solid var(--green);border-radius:0 6px 6px 0;justify-content:space-between;align-items:flex-start;gap:20px;margin-top:16px;padding:16px 18px;display:flex}.context-hint h3{letter-spacing:0;margin:0 0 5px;font-size:14px;font-weight:600}.context-hint p{color:var(--muted);max-width:62ch;margin:0;font-size:13px;line-height:1.6}.context-hint button{color:var(--green);white-space:nowrap;cursor:pointer;min-height:36px;padding:6px 10px;font-size:13px;font-weight:600}.context-hint button:hover{background:var(--surface-subtle)}.course-onboarding button:disabled{cursor:wait;opacity:.65}.course-onboarding :is(button,a):focus-visible,.profile-hints button:focus-visible,.publication-help a:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:3px}.onboarding-error{color:var(--danger);margin:12px 0;font-size:13px}.onboarding-error button{cursor:pointer;text-decoration:underline}.program-empty-section h4{color:var(--ink);margin:0 0 6px;font-size:15px;font-weight:600}.program-empty-section p{margin:0}.profile-hints{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.profile-hints button{text-align:left;cursor:pointer;text-underline-offset:4px;font-size:12px;text-decoration:underline}.profile-hints p{margin-top:12px;font-size:12px;line-height:1.5}.publication-help{background:var(--surface-subtle);margin:16px 0;padding:16px}.publication-help h3{margin:12px 0 8px;font-size:14px}.publication-help ul{padding:0;font-size:13px;line-height:1.8;list-style:none}.publication-help>div{flex-wrap:wrap;gap:12px 20px;margin-top:12px;display:flex}.publication-help a{color:var(--green);text-underline-offset:3px;font-size:13px;text-decoration:underline}:is(#program,#course-page-fields,#course-publishing,#course-students-heading){scroll-margin-top:110px}@media (max-width:600px){.launch-steps{grid-template-columns:1fr;gap:2px}.launch-heading{gap:8px}.launch-heading>div{display:block}.launch-heading h2{margin-bottom:4px}.context-hint{padding:14px;display:block}.context-hint button{margin-top:6px;padding-left:0}}
