.course-shell{--course-accent-fill:var(--primary);--course-accent-ink:#04231a;--course-radius:14px;--course-radius-sm:10px;--course-mono:"Cascadia Code",ui-monospace,SFMono-Regular,Menlo,monospace;counter-reset:chapter-section;max-width:72ch;margin:0 auto;padding:2rem 1.25rem 5rem;color:var(--text-secondary);line-height:1.75}[data-theme=light] .course-shell{--course-accent-fill:var(--btn-primary-to);--course-accent-ink:#fff}.course-shell>.lesson-runner{width:100%;margin-inline:0}.course-shell h1{color:var(--text);font-size:clamp(2rem,1.5rem + 1.8vw,2.7rem);font-weight:800;line-height:1.08;letter-spacing:-.03em;margin:0 0 .85rem}.course-shell h2{color:var(--text);font-size:1.3rem;line-height:1.3;letter-spacing:-.01em;margin:3rem 0 1rem;padding-top:1.75rem;border-top:1px solid var(--surface-border);scroll-margin-top:6rem}.course-shell h2:first-of-type{margin-top:2.25rem}.course-shell h3{color:var(--text);font-size:1.08rem;margin:2rem 0 .6rem}.course-shell h1,.course-shell h2,.course-shell h3{text-wrap:balance}.course-shell p{margin:0 0 1.1rem;text-wrap:pretty}.course-shell h2:not(.course-section-title):before{counter-increment:chapter-section;content:counter(chapter-section,decimal-leading-zero);-webkit-margin-end:.6rem;margin-inline-end:.6rem;font-family:var(--course-mono);font-size:.72em;font-weight:500;letter-spacing:.08em;color:var(--primary-text)}.course-shell ::selection{background:color-mix(in srgb,var(--primary) 30%,transparent)}.course-shell em,.course-shell strong{color:var(--text)}.course-shell em{font-style:italic}:where(.course-shell) :where(p,li,figcaption) a{color:var(--primary-text);-webkit-text-decoration-color:color-mix(in srgb,var(--primary) 45%,transparent);text-decoration-color:color-mix(in srgb,var(--primary) 45%,transparent);text-underline-offset:.2em}:where(.course-shell) :where(p,li,figcaption) a:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.course-shell ol,.course-shell ul{margin:0 0 1.35rem;-webkit-padding-start:1.35rem;padding-inline-start:1.35rem}.course-shell li{margin-bottom:.5rem}.course-shell li::marker{color:var(--primary-text)}.course-shell code{font-family:var(--course-mono);font-size:.86em;background:var(--surface-strong);border:1px solid var(--surface-border);border-radius:6px;padding:.1rem .35rem}.course-shell pre{margin:0 0 1.5rem;padding:1rem 1.15rem;overflow-x:auto;border-radius:var(--course-radius);border:1px solid var(--surface-border);background:var(--code-bg,var(--surface));color:var(--text);font-size:.85rem;line-height:1.6}.course-shell pre code{background:none;border:none;padding:0;font-size:inherit}.course-snippet{margin:0 0 1.5rem;border:1px solid var(--surface-border);border-radius:var(--course-radius);background:var(--code-bg,var(--surface));overflow:hidden}.course-snippet__bar{display:flex;align-items:center;gap:.5rem;padding:.45rem .85rem;border-bottom:1px solid var(--surface-border);background:var(--surface-strong)}.course-snippet__dots{display:inline-flex;gap:4px}.course-snippet__dots span{width:6px;height:6px;border-radius:50%;background:color-mix(in srgb,var(--muted) 40%,transparent)}.course-snippet__lang{font-family:var(--course-mono);font-size:.66rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.course-snippet pre{margin:0;border:0;border-radius:0;background:none}.course-note{margin:0 0 1.5rem;padding:.85rem 1rem;border-radius:var(--course-radius-sm);-webkit-border-start:3px solid var(--primary);border-inline-start:3px solid var(--primary);background:var(--primary-soft);color:var(--text-secondary)}.course-note--warning{border-inline-start-color:var(--warning);background:color-mix(in srgb,var(--warning) 12%,transparent)}.course-eyebrow{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--course-mono);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--primary-text);margin:0 0 .9rem}.course-eyebrow i{font-size:.7rem}.course-eyebrow a{color:inherit;text-decoration:none}.course-eyebrow a:hover{text-decoration:underline}.course-hero{position:relative;margin:0 0 2.5rem;padding:0 0 2rem;border-bottom:1px solid var(--surface-border);background-image:radial-gradient(38rem 15rem at 6% -30%,var(--primary-soft),transparent 72%),radial-gradient(30rem 13rem at 98% -10%,var(--accent-soft),transparent 72%);background-repeat:no-repeat}.course-hero:before{content:"";display:block;width:2.25rem;height:3px;border-radius:2px;background:var(--primary);margin:0 0 1.5rem}.course-hero h1{max-width:24ch}.course-hero__lead{margin:0 0 1.25rem;max-width:58ch;font-size:1.06rem;color:var(--text-secondary)}.course-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;margin:0 0 1.5rem;padding:0;list-style:none}.course-chip{display:inline-flex;align-items:center;font-family:var(--course-mono);font-size:.72rem;letter-spacing:.04em;color:var(--muted)}.course-chip:not(:last-child):after{content:"·";-webkit-margin-start:.75rem;margin-inline-start:.75rem;opacity:.6}.course-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:1.5rem}.course-hero__actions .course-progress{flex:0 1 auto;width:-moz-fit-content;width:fit-content;min-width:12rem;max-width:26rem}.course-hero__actions .course-progress__label{margin-top:.4rem}.course-shell h2.course-section-title{margin:2.75rem 0 1.25rem;padding-top:1.75rem;border-top:1px solid var(--surface-border);font-family:var(--course-mono);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.course-shell ul.course-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));grid-gap:.15rem 1.5rem;gap:.15rem 1.5rem;margin:0 0 1.5rem;padding:0;list-style:none}.course-facts li{position:relative;-webkit-padding-start:1.4rem;padding-inline-start:1.4rem;margin-bottom:.55rem}.course-facts li:before{content:"";position:absolute;inset-inline-start:0;top:.68em;width:7px;height:7px;border-radius:2px;background:var(--primary)}.course-prereqs li:before{background:color-mix(in srgb,var(--muted) 65%,transparent)}.course-parts{display:flex;align-items:center;gap:.75rem;margin:0 0 .75rem;flex-wrap:wrap}.course-parts__track{display:flex;gap:.25rem;flex:1 1 12rem;min-width:8rem}.course-parts__track span{height:3px;flex:1 1;border-radius:999px;background:var(--surface-strong)}.course-parts__track span.is-done{background:var(--primary)}.course-parts__track span.is-current{background:color-mix(in srgb,var(--primary) 55%,var(--surface-strong))}.course-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .65rem;margin:0;font-family:var(--course-mono);font-size:.72rem;letter-spacing:.03em;color:var(--muted)}.course-meta>:not(:last-child):after{content:"·";-webkit-margin-start:.65rem;margin-inline-start:.65rem;opacity:.6}.course-meta a{color:var(--primary-text);text-decoration:none}.course-meta a:hover{text-decoration:underline}.course-lead{margin:0 0 1.25rem;font-size:1.06rem;color:var(--text-secondary)}.course-shell .course-grid,.course-shell .course-roadmap{width:min(66rem,calc(100vw - 2.5rem));margin-left:calc(50% - min(33rem, 50vw - 1.25rem))}.course-shell .course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));grid-gap:1.25rem;gap:1.25rem;margin-bottom:2rem;padding:0;list-style:none}.course-shell .course-grid>.course-ad{grid-column:1/-1;display:block;list-style:none}.course-ad .ad-slot{margin:.25rem auto .75rem}.course-shell .course-grid>:only-child{grid-column:1/-1}.course-shell .course-roadmap{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:2rem;padding:0;list-style:none}.course-roadmap li{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .5rem;padding:.8rem .9rem;border:1px dashed color-mix(in srgb,var(--text) 18%,transparent);border-radius:var(--course-radius-sm);background:var(--surface);color:var(--text-secondary);font-size:.85rem;margin-bottom:0}.course-roadmap__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex:1 0 100%}.course-roadmap__title{flex:1 0 100%;color:var(--text-secondary);line-height:1.35}.course-roadmap__glyph{font-family:var(--course-mono);font-size:.8rem;font-weight:600;color:var(--primary-text);opacity:.85}.course-roadmap__soon{margin-left:auto;font-family:var(--course-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.course-card{display:flex;flex-direction:column;border:1px solid var(--surface-border);border-radius:var(--course-radius);background:var(--surface);overflow:hidden;transition:border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.course-card:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--surface-border));box-shadow:var(--shadow);transform:translateY(-2px)}.course-card:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.course-card__cover{flex-direction:column;background:var(--code-bg,var(--surface))}.course-card__cover,.course-card__cover-bar{display:flex;border-bottom:1px solid var(--surface-border)}.course-card__cover-bar{align-items:center;gap:.6rem;padding:.55rem .8rem;background:var(--surface-strong)}.course-card__dots{display:inline-flex;gap:4px}.course-card__dots span{width:6px;height:6px;border-radius:50%;background:color-mix(in srgb,var(--muted) 40%,transparent)}.course-card__slug{font-family:var(--course-mono);font-size:.7rem;color:var(--muted)}.course-card__glyph{flex:1 1;display:grid;place-items:center;min-height:6.5rem;padding:1.6rem 1rem;font-family:var(--course-mono);font-size:2.1rem;font-weight:600;letter-spacing:-.02em;color:var(--primary-text);background-image:radial-gradient(55% 70% at 50% 48%,var(--primary-soft),transparent 75%),radial-gradient(color-mix(in srgb,var(--muted) 22%,transparent) 1px,transparent 1px);background-size:auto,12px 12px;background-position:50%,50%}.course-card__body{display:flex;flex-direction:column;flex:1 1;gap:.55rem;padding:1.1rem 1.15rem 1.15rem}.course-card__title{margin:0;font-size:1.12rem;line-height:1.3;letter-spacing:-.01em}.course-card__title a{color:var(--text);text-decoration:none}.course-card__title a:hover{color:var(--primary-text)}.course-card__tagline{margin:0;font-size:.9rem;line-height:1.5;color:var(--text-secondary);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.course-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .7rem;margin:0;font-family:var(--course-mono);font-size:.72rem;color:var(--muted)}.course-card__meta span:not(:last-child):after{content:"·";-webkit-margin-start:.7rem;margin-inline-start:.7rem;opacity:.6}.course-card__foot{display:flex;align-items:center;gap:.75rem;margin-top:auto;padding-top:.75rem}.course-card__foot .lesson-btn{flex:1 1;justify-content:center}.course-card__progress{flex:1 1;min-width:0}.course-card__progress .course-progress{margin:0}@media (min-width:900px){.course-shell .course-grid>:only-child{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.course-shell .course-grid>:only-child>.course-card__cover{order:2;border-bottom:0;-webkit-border-start:1px solid var(--surface-border);border-inline-start:1px solid var(--surface-border)}.course-shell .course-grid>:only-child>.course-card__body{order:1;gap:.7rem;padding:1.9rem 2rem 1.75rem}.course-shell .course-grid>:only-child .course-card__glyph{font-size:3.4rem}.course-shell .course-grid>:only-child .course-card__title{font-size:1.55rem;letter-spacing:-.02em}.course-shell .course-grid>:only-child .course-card__tagline{font-size:.98rem;max-width:46ch}.course-shell .course-grid>:only-child .course-card__foot .lesson-btn{flex:0 1 auto;min-width:12rem}}.chapter-list{list-style:none;padding:0;margin:0 0 1.5rem}.chapter-row{position:relative;display:grid;grid-template-columns:2.5rem 1fr auto;align-items:center;grid-gap:.35rem 1rem;gap:.35rem 1rem;padding:1.05rem .25rem;border-top:1px solid var(--surface-border)}.chapter-list--steps .chapter-row:first-child{border-top:0}.chapter-row__number{font-family:var(--course-mono);font-size:1rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted);padding-top:.1rem}.chapter-row:has(.chapter-mark.is-done) .chapter-row__number{color:var(--primary-text)}.chapter-row:has(.chapter-mark.is-started) .chapter-row__number{color:var(--warning-text)}.chapter-row:has(.chapter-mark.is-wrong) .chapter-row__number{color:var(--error-text)}.chapter-row__body{display:flex;flex-direction:column;gap:.2rem;min-width:0}.chapter-row__title{color:var(--text);font-weight:600;font-size:1.02rem;letter-spacing:-.01em;margin:0}a.chapter-row__title:after{content:"";position:absolute;inset:0}.chapter-row__summary{font-size:.88rem;line-height:1.55;color:var(--text-secondary);margin:0}.chapter-row__meta{font-family:var(--course-mono);font-size:.7rem;letter-spacing:.03em;color:var(--muted);margin:0}.chapter-row__end{display:flex;align-items:center;gap:.6rem;justify-self:end}.chapter-row__chevron{color:var(--muted);font-size:.8rem;-webkit-padding-start:.25rem;padding-inline-start:.25rem}.chapter-row:hover{background:color-mix(in srgb,var(--primary) 5%,transparent);border-radius:var(--course-radius-sm)}.chapter-row:hover .chapter-row__chevron,.chapter-row:hover .chapter-row__title{color:var(--primary-text)}.chapter-row.is-soon{opacity:.6}.chapter-row.is-soon .chapter-row__title{color:var(--text-secondary);text-decoration:none;cursor:default}.course-progress{margin:0}.course-progress__head{display:flex;align-items:center;gap:.6rem}.course-progress__head .course-progress__bar{flex:1 1;min-width:4rem}.course-progress__bar{height:4px;border-radius:999px;background:var(--surface-strong);overflow:hidden}.course-progress__bar span{display:block;height:100%;border-radius:999px;background:var(--primary);transition:width var(--transition-slow)}.course-progress__label{margin:.5rem 0 0;font-family:var(--course-mono);font-size:.72rem;color:var(--muted)}.course-progress__work{display:flex;align-items:center;gap:.35rem;margin:.45rem 0 0;font-size:.82rem;color:var(--error-text)}.status-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .5rem;border-radius:6px;border:1px solid var(--surface-border);background:var(--surface-strong);color:var(--muted);font-family:var(--course-mono);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.chapter-mark.is-started,.status-chip.is-started{color:var(--warning-text)}.status-chip.is-started{border-color:color-mix(in srgb,var(--warning) 45%,var(--surface-border));background:color-mix(in srgb,var(--warning) 12%,transparent)}.chapter-mark.is-wrong,.status-chip.is-wrong{color:var(--error-text)}.status-chip.is-wrong{border-color:color-mix(in srgb,var(--error) 45%,var(--surface-border));background:color-mix(in srgb,var(--error) 12%,transparent)}.chapter-mark.is-done,.status-chip.is-done{color:var(--primary-text)}.status-chip.is-done{border-color:color-mix(in srgb,var(--primary) 45%,var(--surface-border));background:var(--primary-soft)}.chapter-mark{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--course-mono);font-size:.7rem;letter-spacing:.03em;color:var(--muted);white-space:nowrap}.lesson-runner{margin:1.75rem 0 2.75rem;border:1px solid var(--surface-border);border-radius:var(--course-radius);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.lesson-runner__head{display:flex;flex-direction:column;gap:.3rem;padding:1rem 1.15rem .9rem}.lesson-runner__title{margin:0;font-size:1.05rem;letter-spacing:-.01em;color:var(--text)}.lesson-runner__task{margin:0;font-size:.9rem;color:var(--text-secondary);max-width:60ch}.lesson-runner__bar{display:flex;align-items:center;gap:.5rem;padding:0 .6rem 0 .85rem;border-top:1px solid var(--surface-border);border-bottom:1px solid var(--surface-border);background:var(--surface-strong);flex-wrap:wrap}.lesson-runner__dots{display:inline-flex;gap:4px;-webkit-margin-end:.15rem;margin-inline-end:.15rem}.lesson-runner__dots span{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--muted) 40%,transparent)}.lesson-runner__tabs{display:flex;align-items:center;gap:.15rem;flex-wrap:wrap}.lesson-runner__tab{background:none;min-height:44px;padding:.5rem .6rem;font:inherit;font-family:var(--course-mono);font-size:.78rem;color:var(--muted);border:none;border-bottom:2px solid transparent;cursor:pointer}.lesson-runner__tab:hover{color:var(--text)}.lesson-runner__tab.is-active{color:var(--text);border-bottom-color:var(--primary)}.lesson-runner__actions{display:flex;gap:.5rem;-webkit-margin-start:auto;margin-inline-start:auto;padding:.35rem 0}.lesson-btn{min-height:44px;padding:.55rem 1.05rem;font:inherit;font-size:.85rem;font-weight:500;border-radius:var(--course-radius-sm);border:1px solid var(--surface-border);background:transparent;color:var(--text);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.lesson-btn:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--surface-border));color:var(--primary-text)}.lesson-btn--primary{background:var(--course-accent-fill,var(--primary));border-color:transparent;color:var(--course-accent-ink,#04231a);font-weight:650;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.18)}.lesson-btn--primary:hover{color:var(--course-accent-ink,#04231a);filter:brightness(1.06)}.lesson-runner__panes{display:grid;grid-template-rows:minmax(15rem,32vh) minmax(14rem,30vh)}.lesson-runner__editor{min-width:0;overflow:hidden;border-bottom:1px solid var(--surface-border)}.lesson-runner__stage{display:grid;grid-template-rows:auto 1fr;min-height:0;background:var(--surface)}.lesson-runner__stage-label{display:flex;align-items:center;gap:.4rem;padding:.4rem .85rem;border-bottom:1px solid var(--surface-border);background:transparent;color:var(--muted);font-family:var(--course-mono);font-size:.66rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.lesson-editor-skeleton{height:100%;background:var(--surface-strong);opacity:.5}.lesson-runner__preview{width:100%;height:100%;border:none;background:#fff;display:block}.lesson-runner__console{max-height:7rem;overflow-y:auto;padding:.6rem 1rem;border-top:1px solid var(--surface-border);font-family:var(--course-mono);font-size:.78rem;color:var(--text-secondary)}.lesson-runner__console .is-error{color:var(--error-text)}.lesson-runner__output{overflow:auto;padding:.7rem 1rem;background:var(--code-bg,var(--surface));color:var(--text-secondary);font-family:var(--course-mono);font-size:.78rem;line-height:1.6}.lesson-runner__output .is-hint{color:var(--muted)}.lesson-runner__output .is-error{color:var(--error-text)}.lesson-runner__console-empty{color:var(--muted)}.lesson-checks{border-top:1px solid var(--surface-border);padding:.9rem 1.15rem 1.1rem}.lesson-checks__summary{margin:0 0 .6rem;font-size:.85rem;font-weight:600;color:var(--text)}.lesson-checks__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.lesson-checks__list li{display:flex;align-items:baseline;gap:.5rem;font-size:.88rem;color:var(--text-secondary);margin-bottom:0}.lesson-checks__list li i{color:var(--muted)}.lesson-checks__list li.is-done{color:var(--text)}.lesson-checks__list li.is-done i{color:var(--primary-text)}.lesson-checks__hint{margin:.75rem 0 0;-webkit-padding-start:.75rem;padding-inline-start:.75rem;-webkit-border-start:2px solid var(--surface-border);border-inline-start:2px solid var(--surface-border);font-size:.85rem;color:var(--muted)}.lesson-quiz{margin:3rem 0 0;padding:1.5rem 1.5rem 1.75rem;border:1px solid var(--surface-border);border-radius:var(--course-radius);background:var(--surface)}.lesson-quiz__title{margin:0 0 .35rem;font-size:1.15rem;letter-spacing:-.01em;color:var(--text)}.lesson-quiz__intro,.lesson-quiz__progress{margin:0;font-size:.85rem;color:var(--muted)}.lesson-quiz__progress{margin-top:.6rem;font-family:var(--course-mono);font-size:.72rem}.lesson-quiz__dots{display:flex;gap:.35rem;margin:.5rem 0 0;padding:0;list-style:none}.lesson-quiz__dots span{display:block;width:1.6rem;height:4px;border-radius:999px;background:var(--surface-strong)}.lesson-quiz__dots span.is-done{background:var(--primary)}.lesson-quiz__dots span.is-current{background:color-mix(in srgb,var(--primary) 55%,var(--surface-strong))}.lesson-quiz__question{margin:1.5rem 0 .9rem;color:var(--text);font-size:1.02rem;font-weight:600}.lesson-quiz__options{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-direction:column;gap:.55rem}.lesson-quiz__option{display:flex;align-items:center;gap:.75rem;width:100%;min-height:48px;text-align:start;padding:.7rem .9rem;font:inherit;font-size:.92rem;border-radius:var(--course-radius-sm);border:1px solid var(--surface-border);background:var(--surface-strong);color:var(--text-secondary);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.lesson-quiz__option-letter{display:grid;place-items:center;width:1.5rem;height:1.5rem;flex:0 0 auto;border-radius:6px;border:1px solid var(--surface-border);background:var(--surface);font-family:var(--course-mono);font-size:.72rem;font-weight:600;color:var(--muted)}.lesson-quiz__option:hover{border-color:color-mix(in srgb,var(--primary) 55%,var(--surface-border));background:color-mix(in srgb,var(--primary) 6%,var(--surface-strong));color:var(--text)}.lesson-quiz__option.is-correct{border-color:var(--primary);background:var(--primary-soft);color:var(--text)}.lesson-quiz__option.is-correct .lesson-quiz__option-letter{border-color:transparent;background:var(--course-accent-fill,var(--primary));color:var(--course-accent-ink,#04231a)}.lesson-quiz__option.is-wrong{border-color:var(--error);background:color-mix(in srgb,var(--error) 12%,transparent);color:var(--text)}.lesson-quiz__option.is-wrong .lesson-quiz__option-letter{border-color:var(--error);color:var(--error-text)}.lesson-quiz__feedback{padding:1rem 1.1rem;border-radius:var(--course-radius-sm);background:var(--surface-strong);font-size:.92rem}.lesson-quiz__feedback p:last-of-type{margin-bottom:.75rem}.lesson-quiz__feedback.is-correct{-webkit-border-start:3px solid var(--primary);border-inline-start:3px solid var(--primary)}.lesson-quiz__feedback.is-wrong{-webkit-border-start:3px solid var(--error);border-inline-start:3px solid var(--error)}.lesson-quiz__verdict{margin:0 0 .4rem;font-weight:600;color:var(--text)}.lesson-quiz__verdict i{-webkit-margin-end:.35rem;margin-inline-end:.35rem}.lesson-quiz__feedback.is-correct .lesson-quiz__verdict i{color:var(--primary-text)}.lesson-quiz__feedback.is-wrong .lesson-quiz__verdict i{color:var(--error-text)}.lesson-quiz__complete{margin-top:1rem;padding:1.25rem;border-radius:var(--course-radius-sm);border:1px solid color-mix(in srgb,var(--primary) 35%,var(--surface-border));background:var(--primary-soft)}.lesson-quiz__complete-title{margin:0 0 .4rem;font-weight:600;color:var(--primary-text)}.lesson-quiz__complete p{margin:0 0 1rem}.lesson-quiz__complete p:last-child{margin-bottom:0}.lesson-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));grid-gap:1rem;gap:1rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--surface-border)}.lesson-nav__card{display:flex;flex-direction:column;gap:.2rem;min-height:44px;padding:.9rem 1.1rem;border:1px solid var(--surface-border);border-radius:var(--course-radius-sm);background:var(--surface);text-decoration:none;color:inherit;transition:border-color var(--transition-fast),transform var(--transition-fast)}.lesson-nav__card:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--surface-border));transform:translateY(-1px)}.lesson-nav__card--next{text-align:end}.lesson-nav__label{font-family:var(--course-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.lesson-nav__title{color:var(--text);font-weight:600}.course-shell :is(a,button,[tabindex]):focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}@keyframes course-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes course-pop{0%{opacity:.4;transform:scale(.86)}60%{transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes course-line-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes course-shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.course-hero,.lesson-quiz,.lesson-runner{animation:course-rise .5s cubic-bezier(.22,1,.36,1) both}.chapter-list--steps>*,.course-grid>*,.lesson-nav>*{animation:course-rise .45s cubic-bezier(.22,1,.36,1) both}.chapter-list--steps>:nth-child(2),.course-grid>:nth-child(2),.lesson-nav>:nth-child(2){animation-delay:45ms}.chapter-list--steps>:nth-child(3),.course-grid>:nth-child(3){animation-delay:90ms}.chapter-list--steps>:nth-child(4),.course-grid>:nth-child(4){animation-delay:135ms}.chapter-list--steps>:nth-child(5),.course-grid>:nth-child(5){animation-delay:.18s}.chapter-list--steps>:nth-child(n+6),.course-grid>:nth-child(n+6){animation-delay:225ms}.lesson-btn{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease}.lesson-btn:active{transform:translateY(0) scale(.98)}.chapter-row{transition:background-color .2s ease}.lesson-runner__tab{transition:color .18s ease,border-color .18s ease}.lesson-nav__title{transition:color .18s ease}.lesson-nav__card:hover .lesson-nav__title{color:var(--primary-text)}@media (hover:hover){.lesson-btn:hover{transform:translateY(-1px)}.course-card__foot .lesson-btn i:last-child{transition:transform .2s ease}.course-card__foot .lesson-btn:hover i:last-child{transform:translateX(3px)}}.lesson-checks__list li.is-done i,.lesson-quiz__option.is-correct .lesson-quiz__option-letter{animation:course-pop .45s cubic-bezier(.22,1,.36,1) both}.lesson-quiz__feedback{animation:course-line-in .28s ease-out both}.lesson-quiz__feedback.is-wrong{animation:course-line-in .28s ease-out both,course-shake .34s ease-in-out .06s}.lesson-runner__console>div{animation:course-line-in .22s ease-out both}.lesson-runner__preview,.lesson-runner__stage{animation:course-line-in .4s ease-out both}@media (max-width:720px){.course-shell{padding:1.5rem 1rem 3.5rem}.course-hero{padding-bottom:1.5rem}.lesson-runner__panes{grid-template-rows:minmax(13rem,38vh) minmax(12rem,34vh)}.lesson-nav__card--next{text-align:start}.chapter-row{grid-template-columns:2rem 1fr;gap:.25rem .75rem}.chapter-row__end{grid-column:2;justify-self:start}.chapter-row__chevron{display:none}}[dir=rtl] .course-shell .fa-arrow-left,[dir=rtl] .course-shell .fa-arrow-right,[dir=rtl] .course-shell .fa-chevron-right{transform:scaleX(-1)}@media (prefers-reduced-motion:reduce){.chapter-row,.course-card,.course-progress__bar span,.lesson-btn,.lesson-nav__card,.lesson-nav__title,.lesson-quiz__option,.lesson-runner__tab{transition:none}.course-card:hover,.lesson-btn:active,.lesson-btn:hover,.lesson-nav__card:hover{transform:none}.chapter-list--steps>*,.course-grid>*,.course-hero,.lesson-checks__list li.is-done i,.lesson-nav>*,.lesson-quiz,.lesson-quiz__feedback,.lesson-quiz__option.is-correct .lesson-quiz__option-letter,.lesson-runner,.lesson-runner__console>div,.lesson-runner__preview,.lesson-runner__stage{animation:none}}.course-certificate-page{padding-bottom:4rem}.course-certificate{position:relative;max-width:820px;margin:0 auto;padding:clamp(2rem,5vw,3.5rem);border:1px solid var(--surface-border);border-radius:20px;background:radial-gradient(120% 90% at 50% 0,color-mix(in srgb,var(--primary) 12%,transparent),transparent 60%),var(--surface);text-align:center}.course-certificate:before{content:"";position:absolute;inset:14px;border:1px solid color-mix(in srgb,var(--primary) 35%,transparent);border-radius:14px;pointer-events:none}.course-certificate__eyebrow{margin:0 0 1.25rem;color:var(--primary);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.course-certificate__title{margin:0 0 1.75rem;font-size:clamp(1.6rem,4vw,2.4rem);line-height:1.2}.course-certificate__awarded{margin:0 0 .35rem;color:var(--muted);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}.course-certificate__name-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.course-certificate__name{display:block;width:min(100%,460px);margin:0 auto 1.5rem;padding:.25rem .5rem;border:0;border-bottom:1px dashed color-mix(in srgb,var(--primary) 55%,transparent);background:transparent;color:var(--text);font-family:inherit;font-size:clamp(1.4rem,3.4vw,2rem);font-weight:600;text-align:center}.course-certificate__name:focus{outline:2px solid var(--primary);outline-offset:4px;border-radius:6px}.course-certificate__meta{margin:0 0 .5rem;color:var(--text-secondary);line-height:1.6}.course-certificate__date{margin:0;color:var(--muted);font-size:.9rem}.course-certificate__rule{width:72px;height:2px;margin:2rem auto 1.5rem;background:var(--primary);border-radius:2px}.course-certificate__issuer{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.4rem;margin:0;font-size:.9rem;color:var(--text-secondary)}.course-certificate__issuer span{color:var(--muted);font-size:.8rem}.course-certificate__ref{margin:.5rem 0 0;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;letter-spacing:.04em}.course-certificate__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin:1.75rem auto 0}.course-certificate__note{max-width:620px;margin:1.5rem auto 0;color:var(--muted);font-size:.82rem;line-height:1.6;text-align:center}.course-certificate-link{margin-left:.5rem}@media print{@page{margin:16mm}body *{visibility:hidden}.course-certificate,.course-certificate *{visibility:visible}.course-certificate{position:absolute;left:0;top:0;width:100%;max-width:none;border-color:#000;background:#fff;color:#000}.course-certificate:before{border-color:#000}.course-certificate__name{border-bottom-color:#000;color:#000}.course-certificate__eyebrow{color:#000}.course-certificate__rule{background:#000}.course-certificate__awarded,.course-certificate__date,.course-certificate__issuer,.course-certificate__issuer span,.course-certificate__meta,.course-certificate__ref{color:#000}.course-certificate__actions,.course-certificate__note{display:none}}.course-glossary-button{display:inline-flex;align-items:center;gap:.4rem;padding:.15rem .55rem;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);color:var(--text-secondary);font:inherit;font-size:.8rem;cursor:pointer}.course-glossary-button:hover{color:var(--text);border-color:var(--primary)}.course-glossary-button i{color:var(--primary)}.course-glossary-dialog{width:min(720px,calc(100vw - 2rem));max-height:min(80vh,760px);padding:0;border:1px solid var(--surface-border);border-radius:16px;background:var(--bg);color:var(--text);overflow:auto;overscroll-behavior:contain}.course-glossary-dialog::-webkit-backdrop{background:rgba(2,6,23,.62)}.course-glossary-dialog::backdrop{background:rgba(2,6,23,.62)}.course-glossary-dialog__body{padding:1.5rem 1.5rem 1.75rem}.course-glossary-dialog__close{float:right;margin:0 0 .5rem .75rem}.course-glossary-dialog__close button{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);color:var(--muted);cursor:pointer}.course-glossary-dialog__close button:hover{color:var(--text)}.course-glossary-dialog__title{margin:0 0 .4rem;font-size:1.3rem}.course-glossary-dialog__lead,.course-vocabulary>p{margin:0 0 1.25rem;color:var(--muted);font-size:.9rem}.course-glossary{display:grid;grid-gap:.9rem;gap:.9rem;margin:0}.course-glossary__entry{padding-top:.9rem;border-top:1px solid var(--surface-border)}.course-glossary__entry:first-child{padding-top:0;border-top:0}.course-glossary dt{color:var(--text);font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem}.course-glossary dd{margin:.2rem 0 0;color:var(--text-secondary);line-height:1.6}.course-vocabulary{margin:2.25rem 0 1rem}@media print{.course-glossary-dialog{display:none}}