.lesson-main{padding-bottom:64px}.lesson-main .btn{min-height:46px;height:auto;padding-block:12px;white-space:normal;text-align:center}.lesson-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);align-items:start;gap:56px;padding-top:calc(var(--nav-h) + 80px);padding-bottom:64px}.lesson-hero-copy h1{margin-top:24px;font-size:var(--fs-h1);line-height:1.06;letter-spacing:-.035em;font-weight:700}.lesson-hero-copy h1 span{color:var(--accent-text)}.lesson-lead{margin:22px 0 30px;color:var(--text-2);font-size:var(--fs-lead);line-height:1.65}.lesson-note{margin-top:20px;color:var(--text-3);font-size:var(--fs-caption);line-height:1.65}.lesson-demo{min-width:0}.lesson-demo [hidden]{display:none}.lesson-demo .chrome-tab{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-demo-count{flex-shrink:0;font:var(--fs-mono-2xs) var(--mono);color:var(--text-3)}.lesson-demo-theory{padding:20px}.lesson-demo-theory .label{color:var(--accent-text);font-size:var(--fs-mono-xs)}.lesson-demo-theory h2{margin-top:8px;font-size:var(--fs-h3-sm);line-height:1.4}.lesson-demo-theory p:not(.label){margin-top:12px;font-size:var(--fs-body-sm);line-height:1.65;color:var(--text-2)}.lesson-demo code{font-family:var(--mono);font-size:.9em;color:var(--text)}.lesson-example{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:14px 0 20px;padding:12px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--well);color:var(--text-2);font:var(--fs-mono-xs)/1.7 var(--mono)}.lesson-example code{overflow-wrap:anywhere}.lesson-editor{padding:16px;background:var(--well);border-top:1px solid var(--border-subtle)}.lesson-editor-label{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:10px;color:var(--text-3);font:var(--fs-mono-xs)/1.5 var(--mono)}.lesson-editor-label>span{color:var(--syn-cyan)}.lesson-code-editor{position:relative;min-width:0;border-radius:var(--radius);background:var(--bg-panel)}.lesson-code-highlight{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:14px;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--text);overflow:hidden;pointer-events:none;visibility:hidden}.lesson-code-highlight code{display:block;min-width:max-content;margin:0;padding:0;border:0;background:transparent;color:var(--text)}.lesson-editor textarea{position:relative;z-index:1;display:block;width:100%;min-height:136px;resize:vertical;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-panel);color:var(--text);-webkit-text-fill-color:var(--text);caret-color:var(--accent);overflow:auto}.lesson-code-highlight,.lesson-code-highlight code,.lesson-editor textarea{box-sizing:border-box;font:16px/1.75 var(--mono);font-variant-ligatures:none;letter-spacing:normal;tab-size:4;white-space:pre;overflow-wrap:normal;word-break:normal}.lesson-code-editor[data-highlight-ready=true] textarea{background:transparent;color:transparent;-webkit-text-fill-color:transparent}.lesson-code-editor[data-highlight-ready=true] .lesson-code-highlight{visibility:visible}.lesson-editor textarea::placeholder{color:var(--text-faint);-webkit-text-fill-color:var(--text-faint);opacity:1}.lesson-editor textarea::selection{background:var(--accent-soft)}.lesson-editor textarea:focus-visible{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.lesson-editor textarea:disabled{opacity:1}.lesson-code-editor .hljs-keyword,.lesson-code-editor .hljs-operator{color:var(--syn-plum)}.lesson-code-editor .hljs-string{color:var(--syn-green)}.lesson-code-editor .hljs-comment{color:var(--text-3)}.lesson-code-editor .hljs-number,.lesson-code-editor .hljs-literal{color:var(--syn-amber)}.lesson-code-editor .hljs-title,.lesson-code-editor .hljs-built_in,.lesson-code-editor .hljs-meta{color:var(--accent-text)}.lesson-code-editor .hljs-title.class_,.lesson-code-editor .hljs-type{color:var(--syn-cyan)}.lesson-code-editor .hljs-params,.lesson-code-editor .hljs-subst{color:var(--text)}.lesson-completions{margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.lesson-completions>p{margin-bottom:8px;color:var(--text-3);font-size:var(--fs-caption);line-height:1.6;overflow-wrap:anywhere}.lesson-completions [role=listbox]{display:grid;gap:4px}.lesson-completions button[role=option]{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 16px;width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.lesson-completions button[role=option][hidden]{display:none}.lesson-completions button[role=option]:hover{background:var(--surface-hover)}.lesson-completions button[aria-selected=true]{border-color:var(--accent);background:var(--accent-soft)}.lesson-completions button[role=option]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lesson-completions button code{font:500 var(--fs-mono)/1.5 var(--mono);font-variant-ligatures:none;letter-spacing:normal;text-transform:none;overflow-wrap:anywhere}.lesson-completions button>span{flex:1 1 160px;color:var(--text-2);font-size:var(--fs-caption);line-height:1.6;overflow-wrap:anywhere}.lesson-demo-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-top:1px solid var(--border-subtle);background:var(--bg-panel)}.lesson-demo-actions>span{color:var(--text-3);font:var(--fs-mono-xs)/1.6 var(--mono);text-align:right}.lesson-demo-hint{border-top:1px solid var(--border);padding:16px;background:var(--surface-raised);color:var(--amber-text);font-size:var(--fs-body-sm);line-height:1.65;overflow-wrap:anywhere}.lesson-demo-hint[data-feedback=live]{color:var(--text-2)}.lesson-demo-success{padding:16px;border-top:1px solid var(--border);background:var(--surface-raised)}.lesson-success-title,.lesson-demo[data-state=success] [data-demo-status]{color:var(--syn-green)}.lesson-success-title{font:500 var(--fs-mono)/1.7 var(--mono)}.lesson-demo-success pre{margin:14px 0;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--well);color:var(--text);font:var(--fs-mono)/1.7 var(--mono);white-space:pre-wrap}.lesson-demo-success .btn{width:100%;margin-top:14px}.lesson-demo table{width:100%;margin-top:14px;border-collapse:collapse;background:var(--well);text-align:left;font:var(--fs-mono-xs)/1.6 var(--mono)}.lesson-demo caption{padding-bottom:8px;text-align:left;color:var(--text-3)}.lesson-demo :is(th,td){border:1px solid var(--border);padding:6px 10px}.lesson-demo td{color:var(--text-2)}.lesson-section{padding-top:64px;padding-bottom:64px}.lesson-section+.lesson-section{border-top:1px solid var(--border-subtle)}.lesson-section-heading{max-width:800px}.lesson-section-heading h2{margin-top:16px;font-size:var(--fs-h2);line-height:1.12;letter-spacing:-.03em}.lesson-section-heading>p:not(.label){margin-top:20px;color:var(--text-2);font-size:var(--fs-body-lg);line-height:1.7}.lesson-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:36px;border-block:1px solid var(--border)}.lesson-outcomes article{padding:26px 28px}.lesson-outcomes article:first-child{padding-left:0}.lesson-outcomes article:last-child{padding-right:0}.lesson-outcomes article+article{border-left:1px solid var(--border)}.lesson-main h3{font-size:var(--fs-h3-sm);font-weight:500;line-height:1.4}.lesson-outcomes h3,.lesson-how h3{margin-top:14px}.lesson-outcomes article p,.lesson-how li p,.lesson-group>p,.lesson-reassurances p{margin-top:10px;color:var(--text-2);font-size:var(--fs-body-sm);line-height:1.7}.lesson-number{color:var(--accent-text);font:var(--fs-mono)/1.6 var(--mono)}.lesson-outcomes article:nth-child(2) .lesson-number,.lesson-how li:nth-child(2) .lesson-number{color:var(--syn-cyan)}.lesson-outcomes article:nth-child(3) .lesson-number,.lesson-how li:nth-child(4) .lesson-number{color:var(--syn-green)}.lesson-how{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;margin-top:40px}.lesson-how li{border-top:1px solid var(--border-strong);padding-top:20px}.lesson-split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:start}.lesson-group{padding:26px 0;border-top:1px solid var(--border)}.lesson-group:first-child{padding-top:0;border-top:0}.lesson-group h3{margin-top:10px}.lesson-group .btn{margin-top:20px}.lesson-curriculum{margin-top:18px}.lesson-curriculum summary{display:list-item;min-height:44px;padding-block:10px;color:var(--accent-text);font-size:var(--fs-body-sm);cursor:pointer}.lesson-curriculum summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--radius-sm)}.lesson-curriculum ol{list-style:none}.lesson-curriculum li{display:flex;gap:16px;padding:14px 0;border-top:1px solid var(--border-subtle);font-size:var(--fs-body-sm);line-height:1.55}.lesson-curriculum small{display:block;margin-top:5px;color:var(--text-3);font-size:var(--fs-caption)}.lesson-free,.lesson-check{color:var(--syn-green)}.lesson-reassurances{display:grid;gap:28px}.lesson-reassurances article{display:flex;align-items:start;gap:16px}.lesson-check{font-size:22px;line-height:1.3}.lesson-next{display:flex;align-items:center;justify-content:space-between;gap:40px}.lesson-next h2{font-size:var(--fs-h2-sm)}.lesson-next .btn{flex-shrink:0;max-width:340px}.lesson-faq{width:100%;gap:0}.lesson-faq .fitem{background:transparent;border:0;border-radius:0;border-bottom:1px solid var(--border)}.lesson-faq .fq{padding:20px 0;min-height:68px}.lesson-faq .fa,.lesson-faq .fitem.open .fa{padding-left:0;padding-right:0}.lesson-faq .fa p+p{margin-top:12px}.lesson-faq .fa a{color:var(--accent-text);text-decoration:underline;text-underline-offset:3px}.lesson-final{padding-top:16px}.lesson-final-inner{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:40px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.lesson-final h2{font-size:var(--fs-h2-sm)}.lesson-final .btn{flex-shrink:0}@media(max-width:1040px){.lesson-hero{gap:28px}.lesson-hero h1{font-size:42px}.lesson-split{gap:36px}.lesson-next,.lesson-final-inner{align-items:start;flex-direction:column}}@media(max-width:760px){.lesson-hero,.lesson-split{grid-template-columns:minmax(0,1fr)}.lesson-hero{padding-top:calc(var(--nav-h) + 40px);gap:36px;padding-bottom:36px}.lesson-hero-copy{max-width:600px}.lesson-hero h1{font-size:clamp(36px,8vw,48px)}.lesson-section{padding-block:52px}.lesson-outcomes{grid-template-columns:minmax(0,1fr)}.lesson-outcomes article{padding:24px 0}.lesson-outcomes article+article{border-left:0;border-top:1px solid var(--border)}.lesson-how{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-final-inner{padding:28px}}@media(max-width:480px){.lesson-main .wrap{padding-inline:18px}.lesson-main .btn{width:100%;max-width:none}.lesson-demo .chrome-dots{display:none}.lesson-demo-theory{padding:16px}.lesson-demo-actions{align-items:stretch;flex-direction:column;gap:10px}.lesson-demo-actions>span{text-align:left}.lesson-how{grid-template-columns:minmax(0,1fr)}.lesson-next,.lesson-final-inner{gap:24px}.lesson-final-inner{padding:24px 20px}}
