/* Shared lesson-content foundation. Shared chrome has separate stylesheets. */
.sah-lesson-main{min-width:0}
.lesson1-content,.lesson2-content,.lesson3-content,.lesson4-content{min-width:0}
.lesson1-content h1,.lesson2-content h1,.lesson3-content h1,.lesson4-content h1{color:#171526}
.lesson1-content p,.lesson2-content p,.lesson3-content p,.lesson4-content p,
.lesson1-content li,.lesson2-content li,.lesson3-content li,.lesson4-content li{color:#3f3a48}

/* Lesson 1 */
.lesson1-content{padding:24px 0 50px}
.lesson1-content .sah-lesson-hero h1{margin:0 0 12px}
.lesson1-content .sah-lesson-section h2{color:#1d1930}

/* Lessons 2–3 */
.lesson2-content,.lesson3-content{padding:24px 0 50px}
.lesson2-content .breadcrumbs,.lesson3-content .breadcrumbs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 16px;color:#7b7390;font-size: 14px}
.lesson2-content .breadcrumbs a,.lesson3-content .breadcrumbs a{color:#675f79;text-decoration:none}
.lesson2-content .lesson-kicker,.lesson3-content .lesson-kicker{margin:0 0 5px;color:#651fff;font-size: 14px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.lesson2-content .lead,.lesson3-content .lead{max-width:820px;margin:0 0 22px;color:#4b4655;font-size:18px;line-height:1.72}
.lesson2-content h2,.lesson3-content h2{margin:30px 0 10px;font-size:27px;line-height:1.28;letter-spacing:-.02em}
.lesson2-content h3,.lesson3-content h3{margin:20px 0 8px;font-size:19px;line-height:1.35}
.lesson2-content p,.lesson3-content p{margin:0 0 15px;font-size:16px;line-height:1.72}
.lesson2-content ul,.lesson3-content ul,.lesson2-content ol,.lesson3-content ol{margin:8px 0 18px;padding-left:22px}
.lesson2-content li,.lesson3-content li{margin:5px 0;font-size:16px;line-height:1.65}
.lesson2-content .callout,.lesson3-content .callout{margin:20px 0;padding:16px 17px;border:1px solid #dfc7fa;border-left:4px solid #651fff;border-radius:8px;background:#faf5ff;color:#3f2856}
.lesson2-content .callout strong,.lesson3-content .callout strong{color:#5f00dc}
.lesson2-content .callout p,.lesson3-content .callout p{margin:6px 0}
.lesson2-content .example-card,.lesson3-content .example-card{margin:18px 0;padding:18px;border:1px solid #e1dbe8;border-radius:9px;background:#fff}
.lesson2-content .example-card__label,.lesson3-content .example-card__label{display:inline-flex;margin-bottom:8px;padding:4px 7px;border-radius:5px;background:#f0e8ff;color:#651fff;font-size: 14px;font-weight:900;letter-spacing:.04em}
.lesson2-content .example-card h3,.lesson3-content .example-card h3{margin:3px 0 8px}
.lesson2-content .diagram,.lesson3-content .diagram{margin:20px 0;padding:18px;overflow-x:auto;border:1px solid #e1dbe8;border-radius:9px;background:#fff}
.lesson2-content .ai-flow{min-width:650px;display:grid;grid-template-columns:1fr 36px 1fr 36px 1fr 36px 1fr;align-items:center;gap:8px}
.lesson2-content .ai-flow__box{min-height:95px;padding:13px;border:1px solid #ded7e7;border-radius:8px;background:#faf9fc;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.lesson2-content .ai-flow__box strong{font-size:16px}
.lesson2-content .ai-flow__box span{margin-top:4px;color:#6c6575;font-size:14px}
.lesson2-content .ai-flow__arrow{text-align:center;color:#651fff;font-size:22px;font-weight:800}
.lesson2-content .code-block,.lesson3-content .code-block{margin:20px 0 14px;overflow:hidden;border:1px solid #d9dce5;border-radius:9px;background:#fff}
.lesson2-content .code-block__bar,.lesson3-content .code-block__bar{min-height:48px;padding:7px 12px;border-bottom:1px solid #d9dce5;background:#f5f7f9;display:flex;align-items:center;justify-content:space-between;gap:10px}
.lesson2-content .code-block__language,.lesson3-content .code-block__language{color:#172033;font-size:14px;font-weight:800}
.lesson2-content .code-block__actions{display:flex;gap:7px}
.lesson2-content .code-block__button,.lesson3-content .code-block__button,.lesson2-content .colab-link,.lesson3-content .colab-link{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 10px;border:1px solid #cfd5df;border-radius:6px;background:#fff;color:#273044;font-size: 14px;font-weight:700;text-decoration:none;cursor:pointer}
.lesson2-content .code-block pre,.lesson3-content .code-block pre{margin:0;padding:18px;overflow-x:auto;background:#fff;color:#27364d;font:15px/1.7 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}
.lesson2-content .code-comment,.lesson3-content .code-comment{color:#607aa5}
.lesson2-content .code-keyword,.lesson3-content .code-keyword{color:#a000d6;font-weight:600}
.lesson2-content .code-string,.lesson3-content .code-string{color:#008c8c}
.lesson2-content .code-function,.lesson3-content .code-function{color:#1455c0}
.lesson3-content .code-number{color:#d97706}
.lesson2-content .output,.lesson3-content .output{display:flex;align-items:baseline;gap:12px;margin:10px 0 18px;padding:11px 14px;border:1px solid #e1dbe8;border-radius:8px;background:#faf9fc}
.lesson2-content .output__label,.lesson3-content .output__label{color:#7a7283;font-size: 14px;font-weight:900;letter-spacing:.06em}
.lesson2-content .practice-card,.lesson3-content .practice-card{margin:18px 0;padding:18px;border:1px solid #ded4ea;border-radius:9px;background:#fbf7ff}
.lesson2-content .practice-card__tag,.lesson3-content .practice-card__tag{color:#651fff;font-size: 14px;font-weight:900;letter-spacing:.06em}
.lesson2-content .practice-card h3,.lesson3-content .practice-card h3{margin:4px 0 8px}
.lesson2-content .quiz,.lesson3-content .quiz{margin:20px 0;padding:18px;border:1px solid #dfd8e7;border-radius:9px;background:#fff}
.lesson2-content .quiz__question,.lesson3-content .quiz__question{margin-bottom:12px;color:#1d1930;font-weight:800}
.lesson2-content .quiz label,.lesson3-content .quiz label{display:block;margin:8px 0;padding:10px 12px;border:1px solid #e3dce8;border-radius:7px;background:#faf9fc;font-size:14px;line-height:1.5}
.lesson2-content .lesson-nav,.lesson3-content .lesson-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}
.lesson2-content .lesson-nav a,.lesson3-content .lesson-nav a{min-width:0;padding:14px 15px;border:1px solid #ddd5e5;border-radius:8px;background:#fff;color:#3d3548;text-decoration:none}
.lesson2-content .lesson-nav small,.lesson3-content .lesson-nav small{display:block;margin-bottom:3px;color:#651fff;font-size: 14px;font-weight:800}

@media(max-width:760px){
 .lesson1-content .sah-lesson-hero h1{font-size:32px}
 .lesson1-content .sah-lesson-hero p{font-size:16px}
 .lesson1-content .sah-ai-flow{grid-template-columns:1fr;gap:8px}
 .lesson1-content .sah-ai-flow__arrow{transform:rotate(90deg)}
 .lesson1-content .sah-example-grid,.lesson1-content .sah-usecases{grid-template-columns:1fr}
 .lesson1-content .sah-stack__item{grid-template-columns:1fr;gap:4px}
 .lesson1-content .sah-code-header{flex-wrap:wrap;padding:8px 10px}
 .lesson1-content .sah-code-actions{margin-left:auto}
 .lesson1-content .sah-practice-card{align-items:flex-start;flex-direction:column}
 .lesson1-content .sah-practice-card__hint{white-space:normal}
 .lesson2-content .lesson-nav,.lesson3-content .lesson-nav{grid-template-columns:1fr}
}
